1 | ;
|
2 | var __importStar = (this && this.__importStar) || function (mod) {
|
3 | if (mod && mod.__esModule) return mod;
|
4 | var result = {};
|
5 | if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
|
6 | result["default"] = mod;
|
7 | return result;
|
8 | };
|
9 | Object.defineProperty(exports, "__esModule", { value: true });
|
10 | const plugins = __importStar(require("./tsbundle.plugins"));
|
11 | const tsbundle_logging_1 = require("./tsbundle.logging");
|
12 | class TsBundle {
|
13 | /**
|
14 | * the basic default options for rollup
|
15 | */
|
16 | getBaseOptions(fromArg = `ts_web/index.ts`, toArg = 'dist_web/bundle.js') {
|
17 | tsbundle_logging_1.logger.log('info', `from: ${fromArg}`);
|
18 | tsbundle_logging_1.logger.log('info', `to: ${toArg}`);
|
19 | const baseOptions = {
|
20 | input: fromArg,
|
21 | output: {
|
22 | name: 'tsbundle',
|
23 | file: toArg,
|
24 | format: 'iife',
|
25 | sourcemap: true
|
26 | },
|
27 | // Indicate here external modules you don't wanna include in your bundle (i.e.: 'lodash')
|
28 | external: [],
|
29 | watch: {
|
30 | include: ['src/**']
|
31 | },
|
32 | plugins: [
|
33 | // Compile TypeScript files
|
34 | plugins.rollupTypescript({
|
35 | useTsconfigDeclarationDir: true,
|
36 | tsconfigOverride: {
|
37 | compilerOptions: {
|
38 | declaration: true,
|
39 | emitDecoratorMetadata: true,
|
40 | experimentalDecorators: true,
|
41 | inlineSourceMap: true,
|
42 | noEmitOnError: true,
|
43 | lib: ['esnext', 'dom'],
|
44 | target: 'es2018',
|
45 | noImplicitAny: false
|
46 | }
|
47 | }
|
48 | }),
|
49 | // Allow node_modules resolution, so you can use 'external' to control
|
50 | // which external modules to include in the bundle
|
51 | // https://github.com/rollup/rollup-plugin-node-resolve#usage
|
52 | plugins.rollupResolve(),
|
53 | plugins.rollupCommonjs({
|
54 | namedExports: {
|
55 | 'node_modules/@pushrocks/smartstate/dist/index.js': ['Smartstate']
|
56 | }
|
57 | }),
|
58 | // Resolve source maps to the original source
|
59 | plugins.rollupSourceMaps()
|
60 | /*plugins.rollupBabel({
|
61 | runtimeHelpers: true,
|
62 | extensions: ['.js', '.jsx', '.ts', '.tsx'],
|
63 | babelrc: false,
|
64 | presets: [
|
65 | [
|
66 | '@babel/preset-env',
|
67 | {
|
68 | modules: false,
|
69 | targets: {
|
70 | chrome: '41'
|
71 | }
|
72 | }
|
73 | ]
|
74 | ],
|
75 | plugins: [
|
76 | [
|
77 | '@babel/plugin-transform-runtime',
|
78 | {
|
79 | regenerator: true
|
80 | }
|
81 | ]
|
82 | ]
|
83 | })*/
|
84 | ]
|
85 | };
|
86 | return baseOptions;
|
87 | }
|
88 | getOptionsTest(fromArg, toArg) {
|
89 | return this.getBaseOptions(fromArg, toArg);
|
90 | }
|
91 | getOptionsProduction(fromArg, toArg) {
|
92 | const productionOptions = this.getBaseOptions(fromArg, toArg);
|
93 | productionOptions.plugins.push(plugins.rollupTerser({
|
94 | compress: true,
|
95 | mangle: true,
|
96 | sourcemap: true
|
97 | }));
|
98 | return productionOptions;
|
99 | }
|
100 | constructor() {
|
101 | // Nothing here
|
102 | }
|
103 | /**
|
104 | * creates a bundle for the test enviroment
|
105 | */
|
106 | async buildTest(fromArg, toArg) {
|
107 | // create a bundle
|
108 | tsbundle_logging_1.logger.log('info', `bundling for TEST!`);
|
109 | const buildOptions = this.getOptionsTest(fromArg, toArg);
|
110 | const bundle = await plugins.rollup.rollup(buildOptions);
|
111 | bundle.generate(buildOptions.output);
|
112 | await bundle.write(buildOptions.output);
|
113 | tsbundle_logging_1.logger.log('ok', `Successfully bundled files!`);
|
114 | }
|
115 | /**
|
116 | * creates a bundle for the production environment
|
117 | */
|
118 | async buildProduction(fromArg, toArg) {
|
119 | // create a bundle
|
120 | tsbundle_logging_1.logger.log('info', `bundling for PRODUCTION!`);
|
121 | const buildOptions = this.getOptionsProduction(fromArg, toArg);
|
122 | const bundle = await plugins.rollup.rollup(buildOptions);
|
123 | bundle.generate(buildOptions.output);
|
124 | await bundle.write(buildOptions.output);
|
125 | tsbundle_logging_1.logger.log('ok', `Successfully bundled files!`);
|
126 | }
|
127 | }
|
128 | exports.TsBundle = TsBundle;
|
129 | //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHNidW5kbGUuY2xhc3MudHNidW5kbGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy90c2J1bmRsZS5jbGFzcy50c2J1bmRsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSw0REFBOEM7QUFDOUMseURBQTRDO0FBRTVDLE1BQWEsUUFBUTtJQUNuQjs7T0FFRztJQUNJLGNBQWMsQ0FBQyxVQUFrQixpQkFBaUIsRUFBRSxRQUFnQixvQkFBb0I7UUFDN0YseUJBQU0sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLFNBQVMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUN2Qyx5QkFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsT0FBTyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBRW5DLE1BQU0sV0FBVyxHQUFpQztZQUNoRCxLQUFLLEVBQUUsT0FBTztZQUNkLE1BQU0sRUFBRTtnQkFDTixJQUFJLEVBQUUsVUFBVTtnQkFDaEIsSUFBSSxFQUFFLEtBQUs7Z0JBQ1gsTUFBTSxFQUFFLE1BQU07Z0JBQ2QsU0FBUyxFQUFFLElBQUk7YUFDaEI7WUFDRCx5RkFBeUY7WUFDekYsUUFBUSxFQUFFLEVBQUU7WUFDWixLQUFLLEVBQUU7Z0JBQ0wsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDO2FBQ3BCO1lBQ0QsT0FBTyxFQUFFO2dCQUNQLDJCQUEyQjtnQkFDM0IsT0FBTyxDQUFDLGdCQUFnQixDQUFDO29CQUN2Qix5QkFBeUIsRUFBRSxJQUFJO29CQUMvQixnQkFBZ0IsRUFBRTt3QkFDaEIsZUFBZSxFQUFFOzRCQUNmLFdBQVcsRUFBRSxJQUFJOzRCQUNqQixxQkFBcUIsRUFBRSxJQUFJOzRCQUMzQixzQkFBc0IsRUFBRSxJQUFJOzRCQUM1QixlQUFlLEVBQUUsSUFBSTs0QkFDckIsYUFBYSxFQUFFLElBQUk7NEJBQ25CLEdBQUcsRUFBRSxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUM7NEJBQ3RCLE1BQU0sRUFBRSxRQUFROzRCQUNo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 |
\ | No newline at end of file |