1 | import * as ts from 'typescript';
|
2 | import typescript from 'rollup-plugin-typescript2';
|
3 | import commonjs from 'rollup-plugin-commonjs';
|
4 | import resolve from 'rollup-plugin-node-resolve';
|
5 | import uglify from 'rollup-plugin-uglify';
|
6 | import json from 'rollup-plugin-json';
|
7 |
|
8 | import pkg from './package.json';
|
9 |
|
10 | const basicOptions = {
|
11 | input: './index.ts',
|
12 |
|
13 | context: 'window',
|
14 |
|
15 | plugins: [
|
16 | typescript({
|
17 | typescript: ts,
|
18 | useTsconfigDeclarationDir: true,
|
19 | }),
|
20 | json(),
|
21 | commonjs({}),
|
22 | ],
|
23 | };
|
24 |
|
25 | const umdOptions = {
|
26 | ...basicOptions,
|
27 | output: [
|
28 | {
|
29 | format: 'umd',
|
30 | name: 'BuilderShopify',
|
31 | file: 'dist/index.umd.js',
|
32 | sourcemap: true,
|
33 | amd: {
|
34 | id: '@builder.io/shopify',
|
35 | },
|
36 | },
|
37 | ],
|
38 | plugins: basicOptions.plugins.concat([resolve()]),
|
39 | };
|
40 |
|
41 | const umdMinOptions = {
|
42 | ...basicOptions,
|
43 | output: [
|
44 | {
|
45 | format: 'umd',
|
46 | name: 'BuilderShopify',
|
47 | file: pkg.browser,
|
48 | sourcemap: true,
|
49 | amd: {
|
50 | id: '@builder.io/shopify',
|
51 | },
|
52 | },
|
53 | ],
|
54 | plugins: basicOptions.plugins.concat([resolve(), uglify()]),
|
55 | };
|
56 |
|
57 | const externalModuleOptions = {
|
58 | ...basicOptions,
|
59 | output: [
|
60 | {
|
61 | format: 'cjs',
|
62 | file: pkg.main,
|
63 | sourcemap: true,
|
64 | },
|
65 | {
|
66 | format: 'es',
|
67 | file: pkg.module,
|
68 | sourcemap: true,
|
69 | },
|
70 | ],
|
71 | external: Object.keys(pkg.dependencies || {}),
|
72 | plugins: basicOptions.plugins.concat([
|
73 | resolve({
|
74 | only: [/^\.{0,2}\//],
|
75 | }),
|
76 | ]),
|
77 | };
|
78 |
|
79 | export default [umdOptions, umdMinOptions, externalModuleOptions];
|