Rollup-plugin-typescript2: рд░реЛрд▓рдЕрдк рд╕рдВрдХрд▓рди рддреНрд░реБрдЯрд┐ рдЬрдм рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдмрд╛рд╣рд░реА рдЯреАрдПрд╕ рдлрд╛рдЗрд▓реЗрдВ рдФрд░ рдШреЛрд╖рдгрд╛ рдлрд╛рдЗрд▓реЗрдВ рдЙрддреНрдкрдиреНрди рд╣реЛрддреА рд╣реИрдВ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 29 рдЬреВрди 2018  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: ezolenko/rollup-plugin-typescript2

рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдХреНрдпреЛрдВ рдЧрд▓рдд рд╣реИ

рд░реЛрд▓рдЕрдк-рдкреНрд▓рдЧрдЗрди-рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ 2 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рдПрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВред

  • рдкрд░рд┐рдпреЛрдЬрдирд╛ рдПрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдЙрддреНрдкрдиреНрди рдХрд░рддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдЗрд╕реЗ рдкреНрд░рдХрд╛рд░ рдХреА рдШреЛрд╖рдгрд╛рдУрдВ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдЬреЗрдПрд╕ рдмрдВрдбрд▓ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
  • рдореЗрд░реЗ рдкрд╛рд╕ рдЯрд╛рдЗрдкрдкреНрд░рддрд┐ рдлрд╝рд╛рдЗрд▓реЗрдВ рд╣реИрдВ рдЬреЛ рдореБрдЦреНрдп рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдирд╣реАрдВ рдмрдирд╛рдИ рдЧрдИ рд╣реИрдВред

рдореЗрдВ рдкрд░рд┐рдгрд╛рдо рд╕рдВрдХрд▓рд┐рдд рдХрд░рдирд╛

https://github.com/ezolenko/rollup-plugin-typescript2/commit/ffe3b6cd9fc03611460aac15d2b880fab7a7d093 рдХреЛ рд╡рд╛рдкрд╕ рд░реЛрд▓ рдХрд░рдиреЗ рд╕реЗ рдпрд╣ рддреНрд░реБрдЯрд┐ рдареАрдХ рд╣реЛ рдЬрд╛рддреА рд╣реИред

рд╡рд╛рддрд╛рд╡рд░рдг

рдкреНрд░рдЬрдирди рд░реЗрдкреЛ рд╕реЗ рд╕рднреА рдлрд╛рдЗрд▓реЛрдВ рдХрд╛ рд╕реЗрдЯ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╣реИ:
$ for f in $(git ls-files); do echo -e "\n// $f"; cat $f; done

рд╕рдВрд╕реНрдХрд░рдгреЛрдВ

  • рдЯрд╛рдЗрдкрдкреНрд░рддрд┐: 2.9.2
  • рд░реЛрд▓рдЕрдк: 0.62.0
  • рд░реЛрд▓рдЕрдк-рдкреНрд▓рдЧрдЗрди-рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ2: 0.15.1

рд░реЛрд▓рдЕрдк.config.js

// rollup.config.js  
import typescript from 'rollup-plugin-typescript2';

export default {   
  input: 'index.ts',   
  output: [{ file: 'dist/index.js', format: 'es' }],    
  plugins: [    
    typescript({ verbosity: 3 }),     
  ],   
};   

tsconfig.json

// tsconfig.json     
{    
  "compilerOptions": {
    "declaration": true
  }    
}

рдкреИрдХреЗрдЬ.рдЬреЗрд╕рди

// package.json
{    
  "name": "@cht/demo-rollup-issue",
  "private": true,     
  "engines": {
    "node": ">=8"     
  },
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"     
  },    
  "devDependencies": { 
    "rollup": "0.62.0", 
    "rollup-plugin-typescript2": "0.15.1",   
    "ts-node": "7.0.0",    
    "typescript": "2.9.2"
  }   
}

рдмрд╛рдХреА рдХреЛрдб

// extra/extra.ts
console.log('read all about it');   
// index.ts   
module.exports = 1;

рд╡рд░реНрдмреЛрд╕рд┐рдЯреА рдХреЗ рд╕рд╛рде рдкреНрд▓рдЧрдЗрди рдЖрдЙрдЯрдкреБрдЯ 3

index.ts тЖТ dist/index.js...
rpt2: typescript version: 2.9.2
rpt2: tslib version: 1.9.2
rpt2: rollup-plugin-typescript2 version: 0.15.1
rpt2: plugin options:
{
    "verbosity": 3,
    "check": true,
    "clean": false,
    "cacheRoot": "/tmp/cht-demo-rollup-issue/.rpt2_cache",
    "include": [
        "*.ts+(|x)",
        "**/*.ts+(|x)"
    ],
    "exclude": [
        "*.d.ts",
        "**/*.d.ts"
    ],
    "abortOnError": true,
    "rollupCommonJSResolveHack": false,
    "typescript": "version 2.9.2",
    "useTsconfigDeclarationDir": false,
    "tsconfigOverride": {},
    "transformers": [],
    "tsconfigDefaults": {}
}
rpt2: rollup config:
{
    "external": [
        "",
        ""
    ],
    "inlineDynamicImports": false,
    "input": "index.ts",
    "chunkGroupingSize": 5000,
    "perf": false,
    "plugins": [
        {
            "name": "rpt2"
        }
    ],
    "entry": "index.ts"
}
rpt2: built-in options overrides: {
    "noEmitHelpers": false,
    "importHelpers": true,
    "noResolve": false,
    "noEmit": false,
    "inlineSourceMap": false,
    "outDir": "/tmp/cht-demo-rollup-issue/.rpt2_cache/placeholder",
    "moduleResolution": 2,
    "declarationDir": "/tmp/cht-demo-rollup-issue"
}
rpt2: parsed tsconfig: {
    "options": {
        "module": 5,
        "declaration": true,
        "configFilePath": "/tmp/cht-demo-rollup-issue/tsconfig.json",
        "noEmitHelpers": false,
        "importHelpers": true,
        "noResolve": false,
        "noEmit": false,
        "inlineSourceMap": false,
        "outDir": "/tmp/cht-demo-rollup-issue/.rpt2_cache/placeholder",
        "moduleResolution": 2,
        "declarationDir": "/tmp/cht-demo-rollup-issue"
    },
    "fileNames": [
        "/tmp/cht-demo-rollup-issue/index.ts",
        "/tmp/cht-demo-rollup-issue/dist/index.d.ts",
        "/tmp/cht-demo-rollup-issue/extra/extra.ts"
    ],
    "typeAcquisition": {
        "enable": false,
        "include": [],
        "exclude": []
    },
    "raw": {
        "compilerOptions": {
            "module": "ES2015",
            "declaration": true
        }
    },
    "errors": [],
    "wildcardDirectories": {
        "/tmp/cht-demo-rollup-issue": 1
    },
    "compileOnSave": false,
    "configFileSpecs": {
        "includeSpecs": [
            "**/*"
        ],
        "validatedIncludeSpecs": [
            "**/*"
        ],
        "wildcardDirectories": {
            "/tmp/cht-demo-rollup-issue": 1
        }
    }
}
rpt2: included:
'[
    "*.ts+(|x)",
    "**/*.ts+(|x)"
]'
rpt2: excluded:
'[
    "*.d.ts",
    "**/*.d.ts"
]'
rpt2: [34mAmbient types:[39m
rpt2:     /tmp/cht-demo-rollup-issue/dist/index.d.ts
rpt2:     /tmp/cht-demo-rollup-issue/node_modules/@types/estree/index.d.ts
rpt2:     /tmp/cht-demo-rollup-issue/node_modules/@types/node/index.d.ts
rpt2: [34mtranspiling[39m '/tmp/cht-demo-rollup-issue/index.ts'
rpt2:     cache: '/tmp/cht-demo-rollup-issue/.rpt2_cache/7b3a3d6d8e402a4daa2232186da14bc2c8ade022/code/cache/6c8ae48d14e85933ce1e764b61d335b2aa5420f9'
rpt2: [32m    cache hit[39m
rpt2:     cache: '/tmp/cht-demo-rollup-issue/.rpt2_cache/7b3a3d6d8e402a4daa2232186da14bc2c8ade022/syntacticDiagnostics/cache/6c8ae48d14e85933ce1e764b61d335b2aa5420f9'
rpt2: [32m    cache hit[39m
rpt2:     cache: '/tmp/cht-demo-rollup-issue/.rpt2_cache/7b3a3d6d8e402a4daa2232186da14bc2c8ade022/semanticDiagnostics/cache/6c8ae48d14e85933ce1e764b61d335b2aa5420f9'
rpt2: [32m    cache hit[39m
rpt2: [34mgenerated declarations[39m for '/tmp/cht-demo-rollup-issue/index.ts'
rpt2: generating target 1
rpt2: [34mrolling caches[39m
rpt2: generating missed declarations for '/tmp/cht-demo-rollup-issue/extra/extra.ts'
[!] Error: Could not find file: '/tmp/cht-demo-rollup-issue/extra/extra.ts'.
Error: Could not find file: '/tmp/cht-demo-rollup-issue/extra/extra.ts'.
    at getValidSourceFile (/tmp/cht-demo-rollup-issue/node_modules/typescript/lib/typescript.js:107554:23)
    at Object.getEmitOutput (/tmp/cht-demo-rollup-issue/node_modules/typescript/lib/typescript.js:108052:30)
    at /tmp/cht-demo-rollup-issue/node_modules/rollup-plugin-typescript2/src/index.ts:311:29
    at arrayEach (/tmp/cht-demo-rollup-issue/node_modules/rollup-plugin-typescript2/node_modules/lodash/lodash.js:516:11)
    at forEach (/tmp/cht-demo-rollup-issue/node_modules/rollup-plugin-typescript2/node_modules/lodash/lodash.js:9342:14)
    at Object.onwrite (/tmp/cht-demo-rollup-issue/node_modules/rollup-plugin-typescript2/src/index.ts:305:5)
    at /tmp/cht-demo-rollup-issue/node_modules/rollup/dist/rollup.js:22076:39
    at Array.map (<anonymous>)
    at /tmp/cht-demo-rollup-issue/node_modules/rollup/dist/rollup.js:22075:18
    at <anonymous>

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡рд░реНрдЪреБрдЕрд▓ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд▓рд┐рдП рдлрд┐рдХреНрд╕ рдиреЗ рдШреЛрд╖рдгрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╣реИрдХ рдХреЛ рддреЛрдбрд╝ рджрд┐рдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рд░реЛрд▓рдЕрдк рдХреЗ рд▓рд┐рдП рдЕрджреГрд╢реНрдп рд╣реИрдВ ...

рд╕рднреА 5 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдпрд╣рд╛рдВ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд░реЗрдкреЛ: https://github.com/amacleay/repro-rollup-plugin-ts2-declaration-issue (рдпрд╣ рд▓рдЧрднрдЧ рд╕рдорд╛рди рд╣реИ рдЬреЛ рдКрдкрд░ рдкреЛрд╕реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ)

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрд┐рд╕реА рднреА рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╣рд┐рдЯ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЖрдпрд╛рдд рдкрджрд╛рдиреБрдХреНрд░рдо рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИред рдореЗрд░рд╛ рдкрд░реАрдХреНрд╖рдг рдХреЛрдб, рдбреЗрдореЛ, рдФрд░ рдПрдХ рдЕрдкреНрд░рдпреБрдХреНрдд рдлрд╝рд╛рдЗрд▓ рдиреЗ рдЗрд╕реЗ рдорд╛рд░рд╛ред рдЬрд┐рди рдЪреАрдЬрд╝реЛрдВ рдХреЛ рдореИрдВ рдЫреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛, рдЙрдирдХреЗ рд▓рд┐рдП рд░реЛрд▓рдЕрдк рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рдХреБрдЫ рдмрд╣рд┐рд╖реНрдХрд░рдг рдЬреЛрдбрд╝рдХрд░ рдореИрдВрдиреЗ рдЕрднреА рдЗрд╕рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИред

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡рд░реНрдЪреБрдЕрд▓ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд▓рд┐рдП рдлрд┐рдХреНрд╕ рдиреЗ рдШреЛрд╖рдгрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╣реИрдХ рдХреЛ рддреЛрдбрд╝ рджрд┐рдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рд░реЛрд▓рдЕрдк рдХреЗ рд▓рд┐рдП рдЕрджреГрд╢реНрдп рд╣реИрдВ ...

рдЕрднреА рдареАрдХ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЗрд╕реЗ рдорд╛рд╕реНрдЯрд░ рдореЗрдВ рдЖрдЬрд╝рдорд╛рдПрдВред

рдореИрдВ рдЬрд▓реНрдж рд╣реА рд░рд┐рд▓реАрдЬ рдХрд░реВрдВрдЧрд╛ред

рдлрд┐рдХреНрд╕ рдХреА рдкреБрд╖реНрдЯрд┐ рдХреА, рдзрдиреНрдпрд╡рд╛рдж!

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

HelloDennis picture HelloDennis  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

yangwao picture yangwao  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

PavaniVaka picture PavaniVaka  ┬╖  12рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

mikob picture mikob  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

freeman picture freeman  ┬╖  6рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ