rollup-plugin-vue
рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдпрд╣ рддреНрд░реБрдЯрд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ рдЬрдм declaration
рд╕реЗ true
рдореЗрдВ tsconfig.json
рд╕реЗрдЯ рдХрд░реЗрдВред
Error: ENOENT: no such file or directory, open '<path to project directory>\dist\components\Hello.vue?rollup-plugin-vue=script.d.ts'
рд░реЗрдкреЛ рдХреЛ рд░реЗрдкреЛ: https://github.com/gluons/rollup-plugin-typescript2-issue-97
рдУрдПрд╕: рд╡рд┐рдВрдбреЛрдЬ 10
рдиреЛрдб: v10.4.1
рдпрд╛рд░реНрди: 1.7.0
import { resolve } from 'path';
import ts from 'rollup-plugin-typescript2';
import vue from 'rollup-plugin-vue';
export default {
input: resolve(__dirname, './src/index.ts'),
output: [
{
file: resolve(__dirname, './dist/hello-plugin.umd.js'),
format: 'umd',
sourcemap: true,
name: 'HelloPlugin',
globals: {
vue: 'Vue'
}
},
{
file: resolve(__dirname, './dist/hello-plugin.es.js'),
format: 'es',
sourcemap: true
}
],
plugins: [
ts({
verbosity: 3 // Debug
}),
vue()
],
external: ['vue']
};
{
"compilerOptions": {
"module": "es2015",
"moduleResolution": "node",
"target": "es5",
"lib": [
"dom",
"es2015"
],
"esModuleInterop": true,
"sourceMap": true,
"declaration": true
},
"include": [
"src"
]
}
{
"name": "rolup-vue-ts-issue",
"version": "0.0.0",
"description": "A repo to repro Rollup + Vue + TypeScript with declaration bundling issue.",
"private": true,
"scripts": {
"prebuild": "rimraf dist/*",
"build": "rollup -c rollup.config.ts"
},
"author": "Saran Tanpituckpong <[email protected]>",
"license": "UNLICENSED",
"devDependencies": {
"@types/node": "8",
"postcss": "^6.0.23",
"rimraf": "^2.6.2",
"rollup": "^0.62.0",
"rollup-plugin-typescript2": "^0.15.1",
"rollup-plugin-vue": "^4.3.0",
"typescript": "~2.8",
"vue-template-compiler": "^2.5.16"
},
"dependencies": {
"vue": "^2.5.16"
}
}
rpt2: typescript version: 2.8.4
rpt2: tslib version: 1.9.2
rpt2: rollup-plugin-typescript2 version: 0.15.1
rpt2: plugin options:
{
"verbosity": 3,
"check": true,
"clean": false,
"cacheRoot": "C:\\Users\\Saran\\my-projects\\rolup-vue-ts-issue/.rpt2_cache",
"include": [
"*.ts+(|x)",
"**/*.ts+(|x)"
],
"exclude": [
"*.d.ts",
"**/*.d.ts"
],
"abortOnError": true,
"rollupCommonJSResolveHack": false,
"typescript": "version 2.8.4",
"useTsconfigDeclarationDir": false,
"tsconfigOverride": {},
"transformers": [],
"tsconfigDefaults": {}
}
rpt2: rollup config:
{
"external": [
"vue",
"",
""
],
"inlineDynamicImports": false,
"input": "C:\\Users\\Saran\\my-projects\\rolup-vue-ts-issue\\src\\index.ts",
"chunkGroupingSize": 5000,
"perf": false,
"plugins": [
{
"name": "rpt2"
},
{
"name": "VuePlugin"
}
],
"entry": "C:\\Users\\Saran\\my-projects\\rolup-vue-ts-issue\\src\\index.ts"
}
rpt2: built-in options overrides: {
"noEmitHelpers": false,
"importHelpers": true,
"noResolve": false,
"noEmit": false,
"inlineSourceMap": false,
"outDir": "C:\\Users\\Saran\\my-projects\\rolup-vue-ts-issue/.rpt2_cache/placeholder",
"moduleResolution": 2,
"declarationDir": "C:\\Users\\Saran\\my-projects\\rolup-vue-ts-issue"
}
rpt2: parsed tsconfig: {
"options": {
"module": 5,
"moduleResolution": 2,
"target": 1,
"lib": [
"lib.dom.d.ts",
"lib.es2015.d.ts"
],
"esModuleInterop": true,
"sourceMap": true,
"declaration": true,
"noEmitHelpers": false,
"importHelpers": true,
"noResolve": false,
"noEmit": false,
"inlineSourceMap": false,
"outDir": "C:\\Users\\Saran\\my-projects\\rolup-vue-ts-issue/.rpt2_cache/placeholder",
"declarationDir": "C:\\Users\\Saran\\my-projects\\rolup-vue-ts-issue",
"configFilePath": "C:\\Users\\Saran\\my-projects\\rolup-vue-ts-issue/tsconfig.json"
},
"fileNames": [
"C:/Users/Saran/my-projects/rolup-vue-ts-issue/src/index.ts",
"C:/Users/Saran/my-projects/rolup-vue-ts-issue/src/sfc.d.ts"
],
"typeAcquisition": {
"enable": false,
"include": [],
"exclude": []
},
"raw": {
"compilerOptions": {
"module": "es2015",
"moduleResolution": "node",
"target": "es5",
"lib": [
"dom",
"es2015"
],
"esModuleInterop": true,
"sourceMap": true,
"declaration": true
},
"include": [
"src"
]
},
"errors": [],
"wildcardDirectories": {
"C:/Users/Saran/my-projects/rolup-vue-ts-issue/src": 1
},
"compileOnSave": false,
"configFileSpecs": {
"includeSpecs": [
"src"
],
"validatedIncludeSpecs": [
"src"
],
"wildcardDirectories": {
"C:/Users/Saran/my-projects/rolup-vue-ts-issue/src": 1
}
}
}
rpt2: included:
'[
"*.ts+(|x)",
"**/*.ts+(|x)"
]'
rpt2: excluded:
'[
"*.d.ts",
"**/*.d.ts"
]'
rpt2: Ambient types:
rpt2: C:/Users/Saran/my-projects/rolup-vue-ts-issue/src/sfc.d.ts
rpt2: C:/Users/Saran/my-projects/rolup-vue-ts-issue/node_modules/@types/estree/index.d.ts
rpt2: C:/Users/Saran/my-projects/rolup-vue-ts-issue/node_modules/@types/node/index.d.ts
rpt2: ambient types changed, redoing all semantic diagnostics
rpt2: transpiling 'C:\Users\Saran\my-projects\rolup-vue-ts-issue\src\index.ts'
rpt2: cache: 'C:\Users\Saran\my-projects\rolup-vue-ts-issue/.rpt2_cache/022f423b186edc509d0bfc04874ea603a25c1eb2/code/cache/9d9555d93b34027372939bd4a0a4dc41c41e13ac'
rpt2: cache miss
rpt2: cache: 'C:\Users\Saran\my-projects\rolup-vue-ts-issue/.rpt2_cache/022f423b186edc509d0bfc04874ea603a25c1eb2/syntacticDiagnostics/cache/9d9555d93b34027372939bd4a0a4dc41c41e13ac'
rpt2: cache miss
rpt2: cache: 'C:\Users\Saran\my-projects\rolup-vue-ts-issue/.rpt2_cache/022f423b186edc509d0bfc04874ea603a25c1eb2/semanticDiagnostics/cache/9d9555d93b34027372939bd4a0a4dc41c41e13ac'
rpt2: cache miss
rpt2: generated declarations for 'C:/Users/Saran/my-projects/rolup-vue-ts-issue/src/index.ts'
rpt2: transpiling 'C:\Users\Saran\my-projects\rolup-vue-ts-issue\src\components\Hello.vue?rollup-plugin-vue=script.ts'
rpt2: cache: 'C:\Users\Saran\my-projects\rolup-vue-ts-issue/.rpt2_cache/022f423b186edc509d0bfc04874ea603a25c1eb2/code/cache/53ea992621b40f9ced3a2ea5f2f0b86e2cb028b1'
rpt2: cache miss
rpt2: cache: 'C:\Users\Saran\my-projects\rolup-vue-ts-issue/.rpt2_cache/022f423b186edc509d0bfc04874ea603a25c1eb2/syntacticDiagnostics/cache/53ea992621b40f9ced3a2ea5f2f0b86e2cb028b1'
rpt2: cache miss
rpt2: cache: 'C:\Users\Saran\my-projects\rolup-vue-ts-issue/.rpt2_cache/022f423b186edc509d0bfc04874ea603a25c1eb2/semanticDiagnostics/cache/53ea992621b40f9ced3a2ea5f2f0b86e2cb028b1'
rpt2: cache miss
rpt2: generated declarations for 'C:/Users/Saran/my-projects/rolup-vue-ts-issue/src/components/Hello.vue?rollup-plugin-vue=script.ts'
rpt2: generating target 1
rpt2: rolling caches
rpt2: writing declarations for 'C:/Users/Saran/my-projects/rolup-vue-ts-issue/src/index.ts' to 'C:\Users\Saran\my-projects\rolup-vue-ts-issue\dist\index.d.ts'
rpt2: writing declarations for 'C:/Users/Saran/my-projects/rolup-vue-ts-issue/src/components/Hello.vue?rollup-plugin-vue=script.ts' to 'C:\Users\Saran\my-projects\rolup-vue-ts-issue\dist\components\Hello.vue?rollup-plugin-vue=script.d.ts'
рдЕрдм рдорд╛рд╕реНрдЯрд░ рдореЗрдВ рддрдп рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП - рдореИрдВ рдЕрднреА рдХреЗ рд▓рд┐рдП рд╡реВ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд▓рд┐рдП рдШреЛрд╖рдгрд╛рдУрдВ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдПрдХ рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдк рдХреЗ рдмрд╛рдж рд╕рдм рдХреБрдЫ рдХрд╛рдЯ рджреЗрдирд╛ рд╣реИ? рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ *.vue.d.ts
ред
рдареАрдХред рдзрдиреНрдпрд╡рд╛рджред тАН
ENOENT рддреНрд░реБрдЯрд┐ рдЕрдм рдЪрд▓реА рдЧрдИ рд╣реИред
рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ Vue рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдШреЛрд╖рдгрд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдпрд╛ рдирд╣реАрдВред
рд╢рд╛рдпрдж @znck рдХреЛрдИ рд░рд╛рдп рджреЗ рд╕рдХрддрд╛ рд╣реИ?
рдпрд╛ рдХреЛрдИ Vue + рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдбреЗрд╡рд▓рдкрд░ рдЬреЛ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рджреЗрдЦрддрд╛ рд╣реИ?
рдореБрдЭреЗ рдпрд╣ рднреА рдШреЛрд╖рдгрд╛ рдХреЗ рд╕рд╛рде рд╕рддреНрдп рдкрд░ рд╕реЗрдЯ рдорд┐рд▓рддрд╛ рд╣реИред рдореИрдВ рд╣рд╛рд▓рд╛рдВрдХрд┐ vue рдкреНрд▓рдЧрдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реВрдБред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдореЗрд░реЗ рдлрд╝рд╛рдЗрд▓ рдкрде рдореЗрдВ рдЖрдкрдХреЗ рдкрд┐рдЫрд▓реЗ рд╕реБрдзрд╛рд░ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдХ рд╕реНрдерд╛рди рд╣реИред
@hollyleaves рдХреНрдпрд╛ рдЖрдк рд╡рд┐рд╡рд░рдг рдкреЛрд╕реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдПрдХ рдЕрд▓рдЧ рдорд╛рдорд▓рд╛ рдЦреЛрд▓ рд╕рдХрддреЗ рд╣реИрдВ? рд╕реНрдерд╛рди рдПрдХ рдорд╛рдиреНрдп рд╡рд░реНрдг рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
рдШреЛрд╖рдгрд╛ рдкрддреНрд░ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИрдВред
@ezolenko @gluons рдХреНрдпрд╛ рдЖрдк рдореБрдЭреЗ рдмрддрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдШреЛрд╖рдгрд╛ рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЛ рдХреНрдпрд╛ рд░реЛрдХ рд░рд╣рд╛ рд╣реИ?
@znck
@ezolenko рдиреЗ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдЕрд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ f0e466c89f288f5b7434a513370201ef9da56aff рдореЗрдВ рдареАрдХ рдХрд░ рджрд┐рдпрд╛ рд╣реИ рдФрд░ Vue рдлрд╝рд╛рдЗрд▓ рдХреА рдШреЛрд╖рдгрд╛ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рдпрд╣ рдЕрднреА рдХреЗ рд▓рд┐рдП рдЬрд┐рд▓рд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдирд╣реАрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИред
@znck рдХреЛ Hello.vue
рдХреЗ рд▓рд┐рдП рдШреЛрд╖рдгрд╛ рдХрд╛ рдирд╛рдо Hello.vue.d.ts
рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП? рдХреНрдпрд╛ рд╕рднреА рдЙрдкрдХрд░рдг рдЙрд╕ рдкрд░ рдЗрд╕реЗ рдареАрдХ рд╕реЗ рдЙрдард╛ рд▓реЗрдВрдЧреЗ?
рдореИрдВ рдЙрдиреНрд╣реЗрдВ Hello.vue?rollup-plugin-vue=script.d.ts
рдХреЗ рд░реВрдк рдореЗрдВ рдирд╣реАрдВ рд▓рд┐рдЦ рд╕рдХрддрд╛ рдХреНрдпреЛрдВрдХрд┐ ?
рд╡рд┐рдВрдбреЛрдЬрд╝ рдлрд╝рд╛рдЗрд▓ рдкрдереЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдорд╛рдиреНрдп рдЪрд╛рд░ рд╣реИред
?
рдХреЗ рдмрд╛рдж рдХрд╛ рднрд╛рдЧ vue рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХрд┐рд╕реА рдмреНрд▓реЙрдХ рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИ, рдЖрдкрдХреЛ рдЗрд╕реЗ рд╣рдЯрд╛ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдШреЛрд╖рдгрд╛ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо Hello.d.ts
рдпрд╛ Hello.vue.d.ts
рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред ( @ktsn WDYT?)
рд╢рд╛рдпрдж Hello.vue.d.ts
?
рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЕрдВрддрд┐рдо d.ts
рдЖрдЙрдЯрдкреБрдЯ рдХреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЬреИрд╕рд╛ рдХрд┐ рдЕрдзрд┐рдХрд╛рдВрд╢ TS рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ SFC рдХреЗ рд▓рд┐рдП рдПрдХреНрд╕рдЯреЗрдВрд╢рди ( .vue
) рдХреЗ рд╕рд╛рде рдЖрдпрд╛рдд рд╡рд┐рд╡рд░рдг рд▓рд┐рдЦрддреЗ рд╣реИрдВ, рдШреЛрд╖рдгрд╛ рдлрд╝рд╛рдЗрд▓ рдХреЛ рднреА .vue
рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ
рдареАрдХ рд╣реИ, рдЕрднреА рдЧреБрд░реБ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЛред рдЕрднреА рднреА //# sourceMappingURL=
рдФрд░ .d.ts.map рдореИрдк рдХреА рд╕рдорд╕реНрдпрд╛ рд╣реИ рдЬреЛ рдкреВрд░реНрдг рдмреНрд▓реЙрдХ рдирд╛рдо рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рд╕рдВрднрд╡рддрдГ рдХреБрдЫ рдЯреВрд▓ рдХреЛ рднреНрд░рдорд┐рдд рдХрд░реЗрдЧрд╛ред
@znck рдХреНрдпрд╛ рдПрдХ рдПрдХрд▓ Vue рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХрдИ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмреНрд▓реЙрдХ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХреНрдпрд╛ Vue рдкреНрд▓рдЧрдЗрди рдЙрдиреНрд╣реЗрдВ рдЕрд▓рдЧ рд╡рд░реНрдЪреБрдЕрд▓ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдмрджрд▓ рджреЗрдЧрд╛?
рдкреНрд░рддрд┐ рдлрд╝рд╛рдЗрд▓ рдХреЗрд╡рд▓ рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ (рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ) рдмреНрд▓реЙрдХ рд╣реЛрдЧреАред
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдареАрдХ рд╣реИ, рдЕрднреА рдЧреБрд░реБ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЛред рдЕрднреА рднреА
//# sourceMappingURL=
рдФрд░ .d.ts.map рдореИрдк рдХреА рд╕рдорд╕реНрдпрд╛ рд╣реИ рдЬреЛ рдкреВрд░реНрдг рдмреНрд▓реЙрдХ рдирд╛рдо рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рд╕рдВрднрд╡рддрдГ рдХреБрдЫ рдЯреВрд▓ рдХреЛ рднреНрд░рдорд┐рдд рдХрд░реЗрдЧрд╛ред@znck рдХреНрдпрд╛ рдПрдХ рдПрдХрд▓ Vue рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХрдИ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмреНрд▓реЙрдХ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХреНрдпрд╛ Vue рдкреНрд▓рдЧрдЗрди рдЙрдиреНрд╣реЗрдВ рдЕрд▓рдЧ рд╡рд░реНрдЪреБрдЕрд▓ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдмрджрд▓ рджреЗрдЧрд╛?