рдлрд╛рдЗрд▓рд╕рд┐рд╕реНрдЯрдо рд╕рд┐рдореНрд▓рд┐рдВрдХ? рдХреНрдпрд╛ рдУрдПрд╕, рд╕реЙрдлреНрдЯ рдпрд╛ рд╣рд╛рд░реНрдб рд▓рд┐рдВрдХ? рдХреЛрдИ рднреА рдкрд░рд┐рд╡рд░реНрддрди рдЖрдк рдкреНрд░рдЬрдирди рдХреЗ рд╕рд╛рде рд░реЗрдкреЛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?
рд╡рд┐рдВрдбреЛрдЬ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдоред рдмрд╛рд╣рд░реА рдореЙрдбреНрдпреВрд▓ рдХреЗ рд▓рд┐рдП "рдПрдирдкреАрдПрдо рд▓рд┐рдВрдХ" рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рд┐рдорд▓рд┐рдВрдХ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ред рдпрджрд┐ рдореЙрдбреНрдпреВрд▓ рд╕реНрдерд╛рдкрд┐рдд рд╣реИ рддреЛ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИред рд▓реЗрдХрд┐рди рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рд╕рд┐рдореНрд▓рд┐рдВрдХ рдмрдирд╛рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдФрд░ рдпрд╣ рдХреЗрд╡рд▓ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ 2 рдкреНрд▓рдЧрдЗрди рдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ 1 рдкреНрд▓рдЧрдЗрди рдХреЗ рд╕рд╛рде рд╕рд┐рдореНрд▓рд┐рдВрдХ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ рд▓реЗрдХрд┐рди рдПрдирдо рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВред
рдПрдХ рд╣реА рдореБрджреНрджрд╛, рд▓реЗрдХрд┐рди рдореИрдВ рдкреИрдХреЗрдЬреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд░реНрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ, рдФрд░ рд░реЛрд▓рдЕрдк рд▓рд┐рдВрдХ рдХрд┐рдП рдЧрдП рдкреИрдХреЗрдЬреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рдЯреЛрдХрди рдХреА рд╢рд┐рдХрд╛рдпрдд рдХрд░рддрд╛ рд╣реИред
рд▓рд░реНрди рдХреЗ рд╕рд╛рде рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рдмрд┐рд▓реНрдХреБрд▓ рд╡рд╣реА рдореБрджреНрджрд╛
рдЕрдЧрд░ рдореИрдВ рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рд╕реАрдзреЗ node_modules рдореЗрдВ рдХреЙрдкреА рдХрд░рддрд╛ рд╣реВрдВ рддреЛ рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рд╕рд┐рдореНрд▓рд┐рдВрдХ рдХреЗ рд╕рд╛рде рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ
@PavaniVaka @TerenceZ @thealjey рдкреНрд░рдЬрдирди рдХреЗ рд╕рд╛рде рдПрдХ рдЫреЛрдЯреЗ рд╕реЗ рд░реЗрдкреЛ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдореМрдХрд╛?
@ezolenko рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдирд╣реАрдВред рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдереЛрдбрд╝рд╛ рдХрдо рдХрд░ рджрд┐рдпрд╛ред рдореИрдВрдиреЗ рджреЗрдЦрд╛ рдХрд┐ рдпрджрд┐ рдмрд╛рд╣рд░реА рдореЙрдбреНрдпреВрд▓ рдХреЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдХреЙрдкреА рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдпрд╣ рд╕рд┐рд░реНрдл рд╕рд┐рдореНрд▓рд┐рдВрдХ рд╣реИ рддреЛ рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: рдпрд╛рд▓реНрдХ рдХреЗ рд╕рд╛рде рд╣рдо рдмрд╛рд╣рд░реА рдирд┐рд░реНрднрд░рддрд╛ рдХрд╛ рдЖрд╕рд╛рдиреА рд╕реЗ рдкрд░реАрдХреНрд╖рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ yalc рдлреЛрд▓реНрдбрд░ рдмрдирд╛рддрд╛ рд╣реИ рдФрд░ рдмрд╛рд╣рд░реА рдореЙрдбреНрдпреВрд▓ рдХреЛ рдЙрд╕ рдлреЛрд▓реНрдбрд░ рдореЗрдВ рдХреЙрдкреА рдХрд░рддрд╛ рд╣реИ рдФрд░ рдлрд┐рд░ yalc рдлреЛрд▓реНрдбрд░ рд╕реЗ node_modules рдореЗрдВ рд╕рд┐рдорд▓рд┐рдВрдХ рдмрдирд╛рддрд╛ рд╣реИред рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХреБрдЫ рд╕реБрд░рд╛рдЧ рджреЗрддрд╛ рд╣реИред
@ezolenko рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдХреНрдпрд╛ рдереА рдФрд░ рдЗрд╕рдХрд╛ рдЗрд╕ рдкреНрд▓рдЧрдЗрди рд╕реЗ рдХреЛрдИ рд▓реЗрдирд╛-рджреЗрдирд╛ рдирд╣реАрдВ рд╣реИ (рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ) рдпрд╛ рдЙрд╕ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рд╕рд┐рдореНрд▓рд┐рдВрдХред
рдпрд╣ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреА рд╣реА рдХрдореА рд╣реИ, рдпрд╛ рдЗрд╕рдХреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЬреЛрд╕рди рдлрд╛рдЗрд▓реЛрдВ рдкрд░ рдирд┐рд░реНрднрд░ рд╣реИред
рд╕рдорд╕реНрдпрд╛ рдпрд╣ рдереА рдХрд┐ рд╕рд┐рдореНрд▓рд┐рдВрдХ рд╕реАрдбрдмреНрд▓реНрдпреВрдбреА рдХреЗ рдмрд╛рд╣рд░ рдПрдХ рдлрд╛рдЗрд▓ рдХреЛ рд╣рд▓ рдХрд░ рд░рд╣рд╛ рдерд╛ред
рдореИрдВрдиреЗ рдмрд╕ рдЕрдкрдиреА рдмрд┐рд▓реНрдб рдХрдорд╛рдВрдб рдХреЛ рд╢реАрд░реНрд╖ рд╕реНрддрд░ рдХреА package.json рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рджрд┐рдпрд╛ рдФрд░ рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдпрд╣рд╛рдВ рдПрдХ рд╣реА рдкреГрд╖реНрда рдкрд░ рд╣реИрдВред
@PavaniVaka @TerenceZ @thealjey рдкреНрд░рдЬрдирди рдХреЗ рд╕рд╛рде рдПрдХ рдЫреЛрдЯреЗ рд╕реЗ рд░реЗрдкреЛ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдореМрдХрд╛?
@ezolenko https://github.com/moki/mokui рдПрдХ рд╣реИред
рдореИрдВрдиреЗ #194 рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░ рд▓рд┐рдпрд╛ рд╣реИ, рдЕрдЧрд░ рдХрд┐рд╕реА рдХреЛ рднреА рдЗрд╕реА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИ, рддреЛ рдореИрдВ рдиреАрдЪреЗ рд╕рдорд╛рдзрд╛рди рдкреНрд░рджрд╛рди рдХрд░ рд░рд╣рд╛ рд╣реВрдВ:
рдЬрдм рдХреЛрдИ рдореЛрдиреЛрд░реЗрдкреЛ рдХреЗ рдЕрдВрджрд░ рдкреНрд░рддреНрдпреЗрдХ рдЕрд▓рдЧ рдкреИрдХреЗрдЬ рдХреЛ рдмрдирд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИ, рддреЛ рд░реЛрд▓рдЕрдк @organization/package-name
рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдмрд┐рд▓реНрдб рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд░рддрд╛ рд╣реИред рдЖрдк рдРрд╕рд╛ рдирд╣реАрдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдкреНрд░рддреНрдпреЗрдХ рдкреИрдХреЗрдЬ рдХреЗ рдирд┐рд░реНрдорд╛рдг рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдореИрдВ package.json
рдкрд╛рд░реНрд╕ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, dependencies
рдлрд╝реАрд▓реНрдб рдХреА рдЪрд╛рдмрд┐рдпрд╛рдБ рдирд┐рдХрд╛рд▓ рд░рд╣рд╛ рд╣реВрдВ, рдлрд┐рд░ рдЙрдирдХреЗ рдЦрд┐рд▓рд╛рдл callback
рдПрдХ рдХреЗ рдЕрдВрджрд░ рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд░реЛрд▓рдЕрдк рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ external
рдлрд╝реАрд▓реНрдб рдХреЗ рдЕрдВрджрд░ рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рд╡рд╛рдВрдЫрд┐рдд рдкрд░рд┐рдгрд╛рдо рджреЗрдЧрд╛ред
import json from "rollup-plugin-json";
const pkg = process.env.LERNA_PACKAGE_NAME &&
require(`${process.env.LERNA_PACKAGE_NAME}/package.json`);
const dependencies = ({ dependencies }) => Object.keys(dependencies || {});
const pkgdependencies = dependencies(pkg);
/* exported rollup configuration */
const config = {
/* your config goes here... */
/* id is the source name if list of dependencies includes
* id source name, then mark it as external,
*/
external: id => pkgdependencies.includes(id)
};
export default config;
рдПрдХ рд╣реА рдореБрджреНрджрд╛ рдФрд░ rollup-plugin-typescript
рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ
рд╕рдорд╕реНрдпрд╛ рддрдм рднреА рд╣реЛрддреА рд╣реИ рдЬрдм рд╕реНрд░реЛрдд рдХреЗ рдЕрдВрддрд░реНрдЧрдд рдХреЛрдИ рдлрд╝рд╛рдЗрд▓ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рдмрд╛рд╣рд░ рдХрд┐рд╕реА рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рдкреНрд░рддреАрдХрд╛рддреНрдордХ рд▓рд┐рдВрдХ рд╣реЛрддреА рд╣реИред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдиреАрдЪреЗ рдХреЗ рд░реВрдк рдореЗрдВ рдлрд╝рд╛рдЗрд▓ рд╕рдВрд░рдЪрдирд╛:
core/core-client/src/api.ts
myapp/myapp-client/src/api.ts
myapp/myapp-app/src/domain/api.ts -> ../../../myapp-client/src/domain/api.ts
myapp/myapp-app/src/domain/core -> ../../../../core/core-client/src/domain/
...
рдЬрдм рдореИрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ myapp/myapp-app рдкрд░ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддрд╛ рд╣реВрдВ,
рдиреАрдЪреЗ рддреНрд░реБрдЯрд┐ рдХреЗ рд╕рд╛рде рд░реЛрд▓рдЕрдк рд╢рд┐рдХрд╛рдпрдд:
[ ERROR ] Rollup: Parse Error: ../myapp-client/src/domain/api.ts:28:7
Unexpected token (Note that you need plugins to import files that are not JavaScript)
L28: export interface IPrimus extends Primus {
interface
рд╢рдмреНрдж рдХреЗ рд╕рд╛рде рд▓рд╛рд▓ рд░рдВрдЧ рдореЗрдВ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛
рдореЗрд░рд╛ рдХрд╛рдордХрд╛рдЬ рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдЕрдирд▓рд┐рдВрдХ рдХрд░рдиреЗ рдФрд░ рд▓рд┐рдВрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдирдкреАрдПрдо рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдкреНрд░реА/рдкреЛрд╕реНрдЯ рд╣реБрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИ ...
рддреЛ рдореЗрд░рд╛ рдЖрдИрдбреАрдИ рджреЗрд╡ рдХреЗ рджреМрд░рд╛рди рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдХреА рдЬрд╛рдВрдЪ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдпрд╣ рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЗ рд╕рдордп рд╕рдВрдХрд▓рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдПрдХ рд╣реА рдореБрджреНрджрд╛, рд▓реЗрдХрд┐рди рдореИрдВ рдкреИрдХреЗрдЬреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд░реНрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ, рдФрд░ рд░реЛрд▓рдЕрдк рд▓рд┐рдВрдХ рдХрд┐рдП рдЧрдП рдкреИрдХреЗрдЬреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рдЯреЛрдХрди рдХреА рд╢рд┐рдХрд╛рдпрдд рдХрд░рддрд╛ рд╣реИред