рдирдорд╕реНрддреЗ,
рдореИрдВ рдПрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рд▓рд┐рдП рд╡реЗрдмрдкреИрдХ рд╕реЗ рд░реЛрд▓рдЕрдк рдореЗрдВ рдЬрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдореБрдЭреЗ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдШреЛрд╖рдгрд╛рдПрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдореЗрдВ рдкрд░реЗрд╢рд╛рдиреА рд╣реЛ рд░рд╣реА рд╣реИред
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрдВрдЯрд░рдлреЗрд╕ рдШреЛрд╖рдгрд╛рдПрдВ рдирд┐рд░реНрдпрд╛рдд рдирд╣реАрдВ рдХреА рдЬрд╛рддреА рд╣реИрдВ, рдпрд╣ рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реИ рдЬрдм рдореЗрд░реЗ рдкрд╛рд╕ рдЪреАрдЬреЗрдВ рд╣реИрдВ:
import { RenderedCell } from "../RenderedCell";
export default class MergedCell implements RenderedCell {
// ...
}
рдореБрдЭреЗ рддреНрд░реБрдЯрд┐ рдорд┐рд▓рддреА рд╣реИ рдХрд┐ RenderedCell рдирд╣реАрдВ рдорд┐рд▓рд╛ред
рдореИрдВрдиреЗ рд╡реЗрдмрдкреИрдХ рдореЗрдВ рдХрд╛рдо рдХрд┐рдпрд╛, рдФрд░ рдореИрдВ рдпрд╣ рдирд╣реАрдВ рд╕рдордЭ рд╕рдХрддрд╛ рдХрд┐ рдореЗрд░реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рдХреНрдпрд╛ рдЕрдВрддрд░ рд╣реИ рдЬрд┐рд╕рдиреЗ рдЗрд╕реЗ рддреЛрдбрд╝рд╛ред рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд░реЛрд▓рдЕрдк рдХреЗ рд╕рд╛рде рдпрд╣ рд╕рд╛рдорд╛рдиреНрдп рд╣реИред
рдмреАрдЯреАрдбрдмреНрд▓реНрдпреВред рдореИрдВ рдирд╡реАрдирддрдо рд░реЛрд▓рдЕрдк, рд░реЛрд▓рдЕрдк-рдкреНрд▓рдЧрдЗрди-рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ2 рдФрд░ рд░реЛрд▓рдЕрдк-рдкреНрд▓рдЧрдЗрди-рдЕрдЧреНрд▓реАрдлрд╛рдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рдореИрдВ рдЕрдкрдиреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкреЛрд╕реНрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ
рдХреНрдпрд╛ рдпрд╣ рд░рдирдЯрд╛рдЗрдо рддреНрд░реБрдЯрд┐ рд╣реИ, рдпрд╛ рдЯрд╛рдЗрдкрдкреНрд░рддрд┐ рддреНрд░реБрдЯрд┐ рд╣реИ? рдХреНрдпрд╛ рдЖрдк рдкреЛрд╕реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЛ RenderedCell
рд╕реЗ рдХреИрд╕реЗ рдирд┐рд░реНрдпрд╛рдд рдХрд░рддреЗ рд╣реИрдВ?
рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдлрд╝рд╛рдЗрд▓ рдмрд┐рд▓реНрдХреБрд▓ рдЙрддреНрдкрдиреНрди рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ, рдФрд░ рдХрд┐рд╕реА рдЕрдиреНрдп рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдпрд╣ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддреА рд╣реИред
рд░реБрдХреЛ, рдХреНрдпрд╛ рдЖрдк RenderedCell
рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдЙрддреНрдкрдиреНрди рд╣реЛрдиреЗ рдХреА рдЙрдореНрдореАрдж рдХрд░ рд░рд╣реЗ рд╣реИрдВ? рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдкреЛрд╕реНрдЯ рдХрд┐рдП рдЧрдП рдХреЛрдб рд╕реЗ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╡рд░реНрддрдорд╛рди рдлрд╝рд╛рдЗрд▓ рдХреЗ рдКрдкрд░ рдПрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореМрдЬреВрдж рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП RenderedCell.ts
рдирд╛рдо рдХреА рдлрд╝рд╛рдЗрд▓ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░реЗрдЧрд╛ рдФрд░ рдЗрд╕рдореЗрдВ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рд╢рд╛рдорд┐рд▓ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП:
export interface RenderedCell
{
// ...
}
рдХреНрдпрд╛ рдЖрдк рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕рдВрд░рдЪрдирд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рджреЗ рд╕рдХрддреЗ рд╣реИрдВ? (рдлрд╝рд╛рдЗрд▓ рдЯреНрд░реА, tsconfig, рд░реЛрд▓рдЕрдк рдХреЙрдиреНрдлрд╝рд┐рдЧ, рдЖрджрд┐)
рд╣рд╛рдБ рдореИрдВ рдЗрд╕реЗ рдЙрддреНрдкрдиреНрди рд╣реЛрдиреЗ рдХреА рдЙрдореНрдореАрдж рдХрд░ рд░рд╣рд╛ рд╣реВрдБред
рдпрд╣рд╛рдБ рдореЗрд░реА рд╡рд┐рдиреНрдпрд╛рд╕ рд╣реИрдВ:
рдирд┐рд░реНрдорд╛рдг рдЪрд▓ рд░рд╣рд╛ рд╣реИ: rollup -c -f es -n sq-web-component-table -o dist/sq-web-component-table.es.min.js
рдореИрдВрдиреЗ рдкреВрд░рд╛ рдкреЗрдбрд╝ рдирд╣реАрдВ рд▓рдЧрд╛рдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдХрд╛рдлреА рдмрдбрд╝рд╛ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╣реИ рдФрд░ рдпрд╣ рд╕рд┐рдЧреНрдирд▓ рд╕реЗ рдЬреНрдпрд╛рджрд╛ рд╢реЛрд░ рд╣реИред рд▓реЗрдХрд┐рди рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЬрд┐рд▓реЗ рдореЗрдВ рдХрдИ рдлрд╛рдЗрд▓реЗрдВ рдЙрддреНрдкрдиреНрди рдирд╣реАрдВ рд╣реБрдИ рд╣реИрдВред
рд░реЛрд▓рдЕрдк.config.ts
import typescript from 'rollup-plugin-typescript2';
import uglify from 'rollup-plugin-uglify';
import { minify } from 'uglify-es';
export default {
entry: './src/index.ts',
dest: 'dist/sq-web-component-table.min.js',
sourceMap: true,
plugins: [
typescript(),
uglify({}, minify)
]
}
tsconfig.json
{
"compilerOptions": {
"target": "es5",
"module": "es2015",
"moduleResolution": "node",
"declaration": true,
"noImplicitAny": true,
"noImplicitReturns": true,
"outDir": "dist"
},
"include": [
"src/**/*.ts"
],
"exclude": [
"dist",
"node_modules",
"**/*-test.ts"
]
}
RenderedCell.ts
import {RenderedElement} from "./RenderedElement";
import {RenderedRow} from "./RenderedRow";
export interface RenderedCell extends RenderedElement {
isMergedCell(): boolean;
getColspan(): number;
setColspan(colspan: number): void;
getParent(): RenderedRow;
}
рдлрд╛рдЗрд▓ рдЯреНрд░реА
.
тФЬтФАтФА src
тФВ┬а┬а тФЬтФАтФА index.ts
тФВ┬а┬а тФФтФАтФА table
тФВ┬а┬а тФЬтФАтФА extensions
тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА base
тФВ┬а┬а тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА FirstTableExtension.ts
тФВ┬а┬а тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА LastTableExtension.ts
тФВ┬а┬а тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА SectionDispatcher.ts
тФВ┬а┬а тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА SectionManager.ts
тФВ┬а┬а тФВ┬а┬а тФВ┬а┬а тФФтФАтФА SizeChangeMonitor.ts
тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА InvalidateEvent.ts
тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА InvalidateSizesEvent.ts
тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА RenderedCell.ts
тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА RenderedElement.ts
тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА RenderedRow.ts
тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА RenderedSection.ts
тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА RenderedTable.ts
тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА SectionClickedEvent.ts
тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА support
тФВ┬а┬а тФВ┬а┬а тФВ┬а┬а тФФтФАтФА ...
тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА TableAttributes.ts
тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА TableExtensionChain.ts
тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА TableExtensionList.ts
тФВ┬а┬а тФВ┬а┬а тФФтФАтФА TableExtension.ts
тФВ┬а┬а тФЬтФАтФА model
тФВ┬а┬а тФВ┬а┬а тФФтФАтФА ...
тФВ┬а┬а тФЬтФАтФА TableRenderingOptions.ts
тФВ┬а┬а тФЬтФАтФА Table.ts
тФВ┬а┬а тФЬтФАтФА util
тФВ┬а┬а тФВ┬а┬а тФФтФАтФА ...
тФВ┬а┬а тФФтФАтФА view
тФВ┬а┬а тФФтФАтФА ...
тФЬтФАтФА dist
тФВ┬а┬а тФЬтФАтФА index.d.ts
тФВ┬а┬а тФЬтФАтФА sq-web-component-table.es.min.js
тФВ┬а┬а тФЬтФАтФА sq-web-component-table.es.min.js.map
тФВ┬а┬а тФЬтФАтФА sq-web-component-table.min.js
тФВ┬а┬а тФЬтФАтФА sq-web-component-table.min.js.map
тФВ┬а┬а тФФтФАтФА table
тФВ┬а┬а тФЬтФАтФА extensions
тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА base
тФВ┬а┬а тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА FirstTableExtension.d.ts
тФВ┬а┬а тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА LastTableExtension.d.ts
тФВ┬а┬а тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА SectionDispatcher.d.ts
тФВ┬а┬а тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА SectionManager.d.ts
тФВ┬а┬а тФВ┬а┬а тФВ┬а┬а тФФтФАтФА SizeChangeMonitor.d.ts
тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА InvalidateEvent.d.ts
тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА InvalidateSizesEvent.d.ts
тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА RenderedRow.d.ts
тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА SectionClickedEvent.d.ts
тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА support
тФВ┬а┬а тФВ┬а┬а тФВ┬а┬а тФФтФАтФА ...
тФВ┬а┬а тФВ┬а┬а тФЬтФАтФА TableAttributes.d.ts
тФВ┬а┬а тФВ┬а┬а тФФтФАтФА TableExtensionList.d.ts
тФВ┬а┬а тФЬтФАтФА model
тФВ┬а┬а тФВ┬а┬а тФФтФАтФА ...
тФВ┬а┬а тФЬтФАтФА Table.d.ts
тФВ┬а┬а тФЬтФАтФА util
тФВ┬а┬а тФВ┬а┬а тФФтФАтФА ...
тФВ┬а┬а тФФтФАтФА view
тФВ┬а┬а тФФтФАтФА ...
тФЬтФАтФА node_modules
тФВ┬а┬а тФФтФАтФА ...
тФЬтФАтФА __tests__
тФВ┬а┬а тФФтФАтФА ...
тФЬтФАтФА package.json
тФЬтФАтФА rollup.config.js
тФФтФАтФА tsconfig.json
рдУрд╣ рд╕рдордЭрд╛ред рдХреНрдпрд╛ рд▓рд┐рдм рдУрдкрдирд╕реЛрд░реНрд╕ рдХрд┐рд╕реА рднреА рдореМрдХреЗ рд╕реЗ рд╣реИ?
рдЙрди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рд╕рд╛рде рдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ:
typescript({ verbosity: 2, clean: true }),
рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдЕрдкреЗрдХреНрд╖рд┐рдд рд╕рднреА рдлрд╛рдЗрд▓реЗрдВ рд╕рдВрд╕рд╛рдзрд┐рдд рдХреА рдЬрд╛ рд░рд╣реА рд╣реИрдВред рдЕрдЧрд░ рдЕрдирд╛рдпрд╛рд╕ рд╣реА рдбрд┐рдХреНрд▓реЗрд░реЗрд╢рди рдЬреЗрдирд░реЗрдЯ рд╣реЛрдиреЗ рд▓рдЧреЗрдВ рддреЛ рдХрд╣реАрдВ рди рдХрд╣реАрдВ рдХреИрд╢ рдХреА рд╕рдорд╕реНрдпрд╛ рд╣реИред
рдпрджрд┐ рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ RenderedCell.ts рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдирд╣реАрдВ рд╣реИ ( rpt2: transpiling '...'
), рд╡рд░реНрдмреЛрд╕рд┐рдЯреА рдХреЛ 3 рддрдХ рдмрдврд╝рд╛рдПрдВ рдФрд░ рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдлрд╝рд╛рдЗрд▓реЗрдВ рдЬреЛ рдЗрд╕реЗ рдЖрдпрд╛рдд рдХрд░рдиреЗ рд╡рд╛рд▓реА рд╣реИрдВ, рд╡реЗ рдРрд╕рд╛ рдХрд░ рд░рд╣реА рд╣реИрдВред рдЖрдкрдХреЛ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рд┐рдП
rpt2: resolving '../RenderedCell'
rpt2: to '...'
рдпрджрд┐ рд╕рдорд╕реНрдпрд╛ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ, рддреЛ рдореИрдВ рдХрд╣реАрдВ рдФрд░ рд▓реЙрдЧрд┐рдВрдЧ рдЬреЛрдбрд╝реВрдВрдЧрд╛ред
рдореБрдЭреЗ рдЕрдЪреНрдЫрд╛ рд▓рдЧреЗрдЧрд╛, рднрд╡рд┐рд╖реНрдп рдореЗрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ :)
рдЯреНрд░рд┐рдХреНрд╕ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдореИрдВ рдЗрд╕реЗ рд╕реЛрдорд╡рд╛рд░ рдХреЛ рдЖрдЬрдорд╛рдКрдВрдЧрд╛ред
рдпрджрд┐ рдЖрдк рдЕрдкрдиреЗ tsconfig рдХреЗ рдХрдВрдкрд╛рдЗрд▓рд░рдСрдкреНрд╢рди рд╕реЗрдХреНрд╢рди рдореЗрдВ declaration: false
рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рд╕реЗ рдХрдВрдкрд╛рдЗрд▓ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдХреНрдпрд╛ рд╕рдорд╕реНрдпрд╛ рджреВрд░ рд╣реЛ рдЬрд╛рддреА рд╣реИ? рдпрджрд┐ рд╣рд╛рдВ, рддреЛ рдХреНрдпрд╛ рдЯреАрдПрд╕рд╕реА рджреНрд╡рд╛рд░рд╛ рд░рд┐рдкреЛрд░реНрдЯ рдХреА рдЧрдИ рддреНрд░реБрдЯрд┐ рдЬрд┐рд▓рд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдХрд┐рд╕реА рдПрдХ рдлрд╛рдЗрд▓ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ? рдпрджрд┐ рдЖрдкрдХрд╛ рдЙрддреНрддрд░ рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рд╣рд╛рдБ рд╣реИ, рддреЛ рдХреНрдпрд╛ рддреНрд░реБрдЯрд┐ рджреВрд░ рд╣реЛ рдЬрд╛рддреА рд╣реИ рдпрджрд┐ рдЖрдк рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреБрдЫ рдЧреИрд░-рдкреНрд░рдХрд╛рд░ рдХреЗ рддрд░реНрдХ рдкреЗрд╢ рдХрд░рддреЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ RenderedCell
рдлрд╝рд╛рдЗрд▓ рд╣реЛрддреА рд╣реИ рдЬреИрд╕реЗ рдХрд┐ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдирд┐рд░реНрдпрд╛рдд? рдпрджрд┐ рд╣рд╛рдБ, рддреЛ рдЗрд╕рдХрд╛ рдХрд╛рд░рдг рдпрд╣ рд╣реИ рдХрд┐ RenderedCell
рд╡рд╛рд▓реА рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЕрдкреНрд░рдпреБрдХреНрдд рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЗрд╕рдХреЗ рд▓рд┐рдП рдХрднреА рднреА рдШреЛрд╖рдгрд╛рдПрдБ рддреИрдпрд╛рд░ рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред
рдпрджрд┐ рдпрд╣ рд╕рдм рдЖрдк рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдореБрдЭреЗ 2 рд╡рд┐рдХрд▓реНрдк рджрд┐рдЦрд╛рдИ рджреЗрддреЗ рд╣реИрдВ:
рдирдорд╕реНрддреЗ,
рд▓рдВрдмреА рджреЗрд░реА рдХреЗ рд▓рд┐рдП рдЦреЗрдж рд╣реИ, рдореИрдВрдиреЗ рдЖрдкрдХреА рдпреБрдХреНрддрд┐рдпреЛрдВ рдФрд░ рдпреБрдХреНрддрд┐рдпреЛрдВ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЕрднреА рднреА рдЙрддреНрдкрдиреНрди рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЗ рд▓рд┐рдП рдкреНрд░рдХрд╛рд░ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рдирд╣реАрдВ рдорд┐рд▓реАред
рдореИрдВрдиреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ typescript({ verbosity: 3, clean: true })
рдмрджрд▓ рджрд┐рдпрд╛ред
рдЙрддреНрдкрдиреНрди рдмрд┐рд▓реНрдб рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ RenderedCell
рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХрд╛ рдПрдХ рднреА рдЙрд▓реНрд▓реЗрдЦ рдирд╣реАрдВ рд╣реИред
рдореБрдЭреЗ 100% рдпрдХреАрди рд╣реИ рдХрд┐ рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ index.d.ts
рдХреЛ рд╕реАрдзреЗ рдЗрд╕рдХреА рдФрд░ рд╕рднреА рдлрд╛рдЗрд▓реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рд▓реЗрдХрд┐рди рдЗрдВрдЯрд░рдлреЗрд╕ рдЙрддреНрдкрдиреНрди рд╣реЛрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЗрдВрдЯрд░рдлреЗрд╕ рдЕрднреА рднреА index.d.ts
рдХреЗ рдЖрдпрд╛рдд рдореЗрдВ рд╣реИрдВ рдлрд╝рд╛рдЗрд▓ред
рдореИрдВ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдореЗрдВ рдЧреЛрддрд╛ рд▓рдЧрд╛рдКрдВрдЧрд╛ рдХрд┐ рдХреНрдпрд╛ рдХреЛрдИ рд╡рд┐рд╢реЗрд╖ рдХрд╛рд░рдг рд╣реИ рдХрд┐ рд╡реЗ рдлрд╛рдЗрд▓реЗрдВ рдХреНрдпреЛрдВ рдЙрддреНрдкрдиреНрди рдирд╣реАрдВ рд╣реЛрддреА рд╣реИрдВред
@wessberg рдореЗрд░реЗ рдмрдВрдбрд▓ рдХреЗ рд▓рд┐рдП рдШреЛрд╖рдгрд╛рдПрдВ рдЙрддреНрдкрдиреНрди рдХрд░рдирд╛ рдПрдХ рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╣реИ рдЬреЛ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд▓рд┐рдЦреА рдЧрдИ рдПрдХ рдмрдбрд╝реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рдЗрд╕рдореЗрдВ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдирд╣реАрдВ рд╣реИ рддреЛ рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
рдЗрд╕рд▓рд┐рдП, рдореИрдВрдиреЗ рдХреБрдЫ рдЬрд╛рдВрдЪ рдХреА рдФрд░ рдПрдХ рднрдВрдбрд╛рд░ рдмрдирд╛рдпрд╛ рдЬреЛ рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рдиреНрдпреВрдирддрдо рд╕реЗрдЯ рдХреЗ рд╕рд╛рде рдкреБрди: рдкреЗрд╢ рдХрд░рддрд╛ рд╣реИ: https://github.com/onigoetz/typescript-rollup-experiment
рд╡реЗрдмрдкреИрдХ рдЗрд╕реЗ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рдХреА рддреБрд▓рдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореИрдВрдиреЗ рдПрдХ рд╡реЗрдмрдкреИрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рднреА рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ред
рд╕рдорд╕реНрдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореЗрд░реА рд╕рдордЭ рдпрд╣ рд╣реИ рдХрд┐ рдЬрдм рд░реЛрд▓рдЕрдк-рдкреНрд▓рдЧрдЗрди-рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ 2 рдХреЛ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рдВрдХрд▓рд┐рдд рд╕рдВрд╕реНрдХрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ (рдорд╛рди рд▓реЗрдВ рдХрд┐ index.ts) рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдВрдХрд▓рд┐рдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдФрд░ рдЙрд╕рдХреЗ рдЖрдпрд╛рдд рдХреЛ рд╡рд╛рдкрд╕ рдХрд░ рджреЗрдЧрд╛, рд▓реЗрдХрд┐рди рдЖрдпрд╛рдд рдореЗрдВ рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЗ рдмрд┐рдирд╛ред
рдЗрд╕рд▓рд┐рдП рд░реЛрд▓рдЕрдк рдЙрдиреНрд╣реЗрдВ рдХрднреА рдЙрддреНрдкрдиреНрди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ: рдпрд╣ рдЙрдирдХреЗ рдЕрд╕реНрддрд┐рддреНрд╡ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдЧрд░реВрдХ рдирд╣реАрдВ рд╣реИред
рднрдВрдбрд╛рд░ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рдЕрдВрджрд░ npm install && npm run build
рдХрд░реЗрдВред
рдпрджрд┐ рдЖрдк рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ:
рдЖрдкрдХреА index.ts
рдлрд╝рд╛рдЗрд▓ рдореЗрдВ import "./SomeInterface";
(рдмрд┐рд▓реНрдХреБрд▓ рдЙрд╕реА рддрд░рд╣, - рдмрд┐рдирд╛ рдХрд┐рд╕реА рдирд╛рдо рдХреЗ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ), рдЗрд╕реЗ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдХреНрдпрд╛ рдпрд╣?
рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рд░реЛрд▓рдЕрдк рдХреЗрд╡рд▓ рдШреЛрд╖рдгрд╛-рдкрддреНрд░ рд╡рд╛рд▓реА рдлрд╛рдЗрд▓реЛрдВ рдЬреИрд╕реЗ рдХрд┐ рдХреЗрд╡рд▓ рдкреНрд░рдХрд╛рд░ рдХреА рдШреЛрд╖рдгрд╛рдУрдВ рд╡рд╛рд▓реА рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХреЗ рдЯреНрд░рд╛рдВрд╕рдлреЙрд░реНрдо рд╣реИрдВрдбрд▓рд░ рдХрд╛ рдЖрд╣реНрд╡рд╛рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдКрдкрд░ рджреА рдЧрдИ рдЪреАрдЬрд╝ рдХреЛ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдХреНрдпреЛрдВрдХрд┐ рд╡рд╣ рд░реЛрд▓рдЕрдк рдХреЛ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╛рдзреНрдп рдХрд░рддреА рд╣реИред рдпрд╣ рд╕рдорд╕реНрдпрд╛: https://github.com/rollup/rollup-plugin-typescript/issues/28 рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдХреИрд╕реЗ рдФрд░ рдХреНрдпреЛрдВ рдореМрдЬреВрдж рд╣реИред рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рд░реВрдк рд╕реЗ, рд╣рдо рдкреНрд░рд╡реЗрд╢ рдмрд┐рдВрджреБ рд╕реЗ рдЖрдкрдХреЗ рдЖрд╡реЗрджрди рдХреА рд╕рднреА рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд╣рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рдХреЗрд╡рд▓ рдкреНрд░рдХрд╛рд░ рдХреА рдШреЛрд╖рдгрд╛рдПрдВ рд╣реЛрддреА рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЯреНрд░рд╛рдВрд╕рдлреЙрд░реНрдо рд╣реБрдХ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд░реЛрд▓рдЕрдк рдХреЛ рдордЬрдмреВрд░ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИ (рдЕрдиреНрдп рд╕реНрдкрд╖реНрдЯ рдбрд╛рдЙрдирд╕рд╛рдЗрдбреНрд╕ рдЬреИрд╕реЗ рдХрд┐ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдмрд┐рд▓реНрдб-рд╕реНрдЯреЗрдк рдЬрдЯрд┐рд▓рддрд╛ )
рдореБрдЭреЗ рдбрд░ рд╣реИ рдХрд┐ рд╣рдо рд░реЛрд▓рдЕрдк рдХреЛ рдмрджрд▓реЗ рдмрд┐рдирд╛ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рдХреБрдЫ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред рдореИрдВрдиреЗ рд╡рд░реНрдгрд┐рдд "рд╣реИрдХ" рдХреЛ рдЕрднреА рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП ред
рд╣рд╛рдВ, рдЕрднреА рдЪреЗрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдкрд░реАрдХреНрд╖рдг рд░реЗрдкреЛ рдореЗрдВ import "./SomeInterface";
рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдЪреАрдЬреЗрдВ рдареАрдХ рд╣реЛ рдЬрд╛рддреА рд╣реИрдВред
рдХреЗрд╡рд▓ рдкреНрд░рдХрд╛рд░ рдЖрдпрд╛рдд рдХрд░рддреЗ рд╕рдордп, рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬреЗрдПрд╕ рдЖрдЙрдЯрдкреБрдЯ рд╕реЗ рдЖрдпрд╛рдд рд╡рд┐рд╡рд░рдг рдХреЛ рд╣рдЯрд╛ рджреЗрддрд╛ рд╣реИ рдФрд░ рд░реЛрд▓рдЕрдк рдЙрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдирд╣реАрдВ рджреЗрдЦрддрд╛ рд╣реИ рдФрд░ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдЙрдиреНрд╣реЗрдВ рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рднреЗрдЬрддрд╛ рд╣реИред
рдореИрдВ рдзреЛрдЦрд╛ рджреЗрдиреЗ рдФрд░ рдореЙрдирд┐рдЯрд░ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛ рдХрд┐ рдХреМрди рд╕реА рдлрд╛рдЗрд▓ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдбрд┐рд╕реНрдХ рд╕реЗ рдЕрдиреБрд░реЛрдз рдХреА рдЧрдИ рд╣реИ рдмрдирд╛рдо рдХреМрди рд╕реА рдлрд╛рдЗрд▓ рд░реЛрд▓рдЕрдк рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рднреЗрдЬреА рдЧрдИ рд╣реИред рдХреЗрд╡рд▓ рдзреНрд╡рдЬ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдЕрдВрддрд░ рдХреЛ рдмрд▓-рдкрд╛рд░рджрд░реНрд╢реА рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ d.ts рдлрд╛рдЗрд▓реЗрдВ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВ (рдЪреАрдЬреЛрдВ рдХреЗ рд▓рд┐рдП рд░реЛрд▓рдЕрдк рд╡реИрдз рд░реВрдк рд╕реЗ рдкреЗрдбрд╝ рд╕реЗ рд╣рд┐рд▓ рдЧрдпрд╛ рд╣реИ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП)
рдЗрд╕реЗ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдореИрдВ рдпрд╣ рднреА рдЬрд╛рдВрдЪреВрдВрдЧрд╛ рдХрд┐ рдХреНрдпрд╛ рдореИрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП рдпреЛрдЧрджрд╛рди рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред
@onigoetz , рдареАрдХ рд╣реИ, рдорд╛рд╕реНрдЯрд░ рдХреЗ рд╕рд╛рде рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдХреНрдпрд╛ рд╕рд╣реА рдШреЛрд╖рдгрд╛рдПрдВ рдЙрддреНрдкрдиреНрди рд╣реБрдИ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рднреА рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдХреЛрдИ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рдирд╣реАрдВ рд╣реИ :)
рдмрд╣реБрдд рдмрдврд╝рд┐рдпрд╛, рдЬрдм рдореИрдВ рд╕реЛ рд░рд╣рд╛ рдерд╛ рддрдм рдЖрдкрдиреЗ рдЗрд╕реЗ рдареАрдХ рдХрд░ рджрд┐рдпрд╛ :)
рдореИрдВрдиреЗ рдЗрд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдФрд░ рдпрд╣ рд▓рдЧрднрдЧ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдмрд╕ рдПрдХ рдЫреЛрдЯреА рд╕реА рд╕рдорд╕реНрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдРрд╕рд╛ рдХреБрдЫ рд╣реИ рдЬрд┐рд╕рдХреЗ рдЦрд┐рд▓рд╛рдл рд╣рдо рдХреБрдЫ рднреА рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд╡реЗрдмрдкреИрдХ рд▓реЛрдбрд░ рдмрд┐рд▓реНрдХреБрд▓ рд╡рд╣реА рдХрд░рддрд╛ рд╣реИ рдФрд░ рдлрд╝рд╛рдЗрд▓ рд╕реВрдЪреА рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рджреНрд╡рд╛рд░рд╛ рд╣реА рдЙрддреНрдкрдиреНрди рд╣реЛрддреА рд╣реИред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рддреМрд░ рдкреЗ; рдЕрдЧрд░ рдореЗрд░реЗ рд░реЗрдкреЛ рдореЗрдВ рддреАрди рдлрд╛рдЗрд▓реЗрдВ рд╣реИрдВ:
index.ts
рдЖрдпрд╛рдд рдХрд░ рд░рд╣рд╛ рд╣реИ SomeInterface.ts
SomeInterface.ts
nongenerated.ts
рдЖрдпрд╛рдд рдХрд░ рд░рд╣рд╛ рд╣реИ SomeInterface.ts
nongenerated.ts
рдХреЛ рдХрднреА рднреА рд╕рдВрджрд░реНрднрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдкреНрд░рдХрд╛рд░ рд╡реИрд╕реЗ рднреА рдЙрддреНрдкрдиреНрди рд╣реЛрддреЗ рд╣реИрдВред
рдХреВрд▓, рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдХрд┐рд╕реА рдЕрдиреНрдп рд╕рдорд╕реНрдпрд╛ рдХреА рдкреБрд╖реНрдЯрд┐ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдореИрдВ рдЗрд╕реЗ рдереЛрдбрд╝реА рджреЗрд░ рдмрд╛рдж рдЬрд╛рд░реА рдХрд░реВрдВрдЧрд╛ред
рд╣рд╛рдБ рд░реЛрд▓рдЕрдк рдХреЛ рджрд░рдХрд┐рдирд╛рд░ рдХрд░рддреЗ рд╣реБрдП рд╣рдо рдЗрддрдирд╛ рдХреБрдЫ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред рдЖрдк рдЙрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ exclude
рд╡рд┐рдХрд▓реНрдк рдореЗрдВ рдмрд╛рд╣рд░ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рдЦрд░рд╛рдм рд╕рдорд╛рдзрд╛рди рд╣реИред
рдареАрдХ рд╣реИ, рдЕрднреА 0.5.1 рдореЗрдВ
рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░реЗрдВ, рдмрд╕ tsconfig.json рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ
{
"compilerOptions": {
"module": "es2015",
"target": "es5",
"declaration":true,
"declarationDir": "lib",
"typeRoots": [
"node_modules/@six006",
"node_modules/@types"
],
"lib": [
"es2015",
"es2017",
"es5"
],
},
"include": [
"src/index.ts",
"src/module/**/*.ts"
],
"exclude": [
"node_modules"
]
}
include
рдЕрдиреБрднрд╛рдЧ рдЖрдкрдХреЛ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдЙрддреНрдкрдиреНрди рдХрд░рдирд╛ рд╣реИ
рд╡рд╛рдИрдПрдордПрдорд╡реА рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдпрд╣ рдЗрд╕ рддрд░рд╣ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд┐рд▓рд╛ ...
рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ
export type MyType = { ... };
рдмрд╛рдж рдореЗрдВ
type MyType = { ... };
export { MyType }
рдЗрд╕рдХреЗ рд▓рд╛рдпрдХ рдХреНрдпрд╛ рд╣реИ, рдореИрдВ рд░реЛрд▓рдЕрдк рдХреЗ рдмрд╛рдж рдмрд╕ tsc --emitDeclarationOnly
рдкрд░ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реВрдВ, рдЬреЛ рдШреЛрд╖рдгрд╛ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдмрд┐рд▓реНрдб рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рддрд╛ рд╣реИред
рдореЗрд░реЗ рдкреИрдХреЗрдЬ рдореЗрдВредjson
"scripts": {
"build": "rollup -c",
"postbuild: "tsc --emitDeclarationOnly"
}
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдЗрд╕рдХреЗ рд▓рд╛рдпрдХ рдХреНрдпрд╛ рд╣реИ, рдореИрдВ рд░реЛрд▓рдЕрдк рдХреЗ рдмрд╛рдж рдмрд╕
tsc --emitDeclarationOnly
рдкрд░ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реВрдВ, рдЬреЛ рдШреЛрд╖рдгрд╛ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдмрд┐рд▓реНрдб рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рддрд╛ рд╣реИредрдореЗрд░реЗ рдкреИрдХреЗрдЬ рдореЗрдВредjson