@twilio/flex-plugin-webpack5 0.0.1 → 7.1.4-alpha.202610140448
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +39 -3
- package/dist/compiler.d.ts +38 -0
- package/dist/compiler.js +252 -0
- package/dist/compiler.js.map +1 -0
- package/dist/devServer/ipcServer.d.ts +73 -0
- package/dist/devServer/ipcServer.js +253 -0
- package/dist/devServer/ipcServer.js.map +1 -0
- package/dist/devServer/pluginServer.d.ts +79 -0
- package/dist/devServer/pluginServer.js +313 -0
- package/dist/devServer/pluginServer.js.map +1 -0
- package/dist/devServer/webpackDevServer.d.ts +11 -0
- package/dist/devServer/webpackDevServer.js +110 -0
- package/dist/devServer/webpackDevServer.js.map +1 -0
- package/dist/index.d.ts +16 -0
- package/dist/index.js +42 -0
- package/dist/index.js.map +1 -0
- package/dist/plugins/DelayRenderStaticPlugin.d.ts +4 -0
- package/dist/plugins/DelayRenderStaticPlugin.js +64 -0
- package/dist/plugins/DelayRenderStaticPlugin.js.map +1 -0
- package/dist/prints/devServerSuccessful.d.ts +12 -0
- package/dist/prints/devServerSuccessful.js +48 -0
- package/dist/prints/devServerSuccessful.js.map +1 -0
- package/dist/prints/dotEnvIncorrectVariable.d.ts +2 -0
- package/dist/prints/dotEnvIncorrectVariable.js +11 -0
- package/dist/prints/dotEnvIncorrectVariable.js.map +1 -0
- package/dist/prints/index.d.ts +3 -0
- package/dist/prints/index.js +13 -0
- package/dist/prints/index.js.map +1 -0
- package/dist/prints/remotePluginNotFound.d.ts +9 -0
- package/dist/prints/remotePluginNotFound.js +57 -0
- package/dist/prints/remotePluginNotFound.js.map +1 -0
- package/dist/webpack/clientVariables.d.ts +25 -0
- package/dist/webpack/clientVariables.js +107 -0
- package/dist/webpack/clientVariables.js.map +1 -0
- package/dist/webpack/pnpTs.d.ts +10 -0
- package/dist/webpack/pnpTs.js +14 -0
- package/dist/webpack/pnpTs.js.map +1 -0
- package/dist/webpack/webpack.config.d.ts +74 -0
- package/dist/webpack/webpack.config.js +569 -0
- package/dist/webpack/webpack.config.js.map +1 -0
- package/dist/webpack/webpack.dev.d.ts +22 -0
- package/dist/webpack/webpack.dev.js +80 -0
- package/dist/webpack/webpack.dev.js.map +1 -0
- package/package.json +78 -2
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/// <reference types="src/module" />
|
|
2
|
+
import { Environment } from '@twilio/flex-dev-utils/dist/env';
|
|
3
|
+
import { Configuration, WebpackPluginInstance } from 'webpack5';
|
|
4
|
+
import { WebpackTypeWp5 } from '..';
|
|
5
|
+
/**
|
|
6
|
+
* Resolves the `typescript` module to use for type-checking a plugin project.
|
|
7
|
+
*
|
|
8
|
+
* `resolveModulePath('typescript')` resolves relative to this package's own installation
|
|
9
|
+
* (it only ever falls back to other paths if the bare `require.resolve` throws, which it
|
|
10
|
+
* never does here since this package always has some version of `typescript` available).
|
|
11
|
+
* That means, unpatched, every plugin gets type-checked against whatever TypeScript version
|
|
12
|
+
* this package happens to be built with, regardless of what the plugin itself declares and
|
|
13
|
+
* has installed - silently ignoring newer syntax the plugin's own TypeScript could parse fine.
|
|
14
|
+
* Prefer the plugin project's own installed `typescript`, and only fall back to this
|
|
15
|
+
* package's copy if the plugin has none.
|
|
16
|
+
* @private
|
|
17
|
+
*/
|
|
18
|
+
export declare const _resolveProjectTypescriptPath: () => string | false;
|
|
19
|
+
/**
|
|
20
|
+
* Returns the JS scripts to inject into the index.html file
|
|
21
|
+
* @param flexUIVersion the flex-ui version
|
|
22
|
+
* @param reactVersion the react version
|
|
23
|
+
* @param reactDOMVersion the react-dom version
|
|
24
|
+
*/
|
|
25
|
+
export declare const _getJSScripts: (flexUIVersion: string, reactVersion: string, reactDOMVersion: string) => string[];
|
|
26
|
+
/**
|
|
27
|
+
* Returns an array of {@link Plugin} for Webpack
|
|
28
|
+
* @param environment the environment
|
|
29
|
+
* @private
|
|
30
|
+
*/
|
|
31
|
+
export declare const _getBasePlugins: (environment: Environment) => WebpackPluginInstance[];
|
|
32
|
+
/**
|
|
33
|
+
* Returns an array of {@link Plugin} for Webpack Static
|
|
34
|
+
* @param environment
|
|
35
|
+
*/
|
|
36
|
+
export declare const _getStaticPlugins: (environment: Environment) => WebpackPluginInstance[];
|
|
37
|
+
/**
|
|
38
|
+
* Returns an array of {@link Plugin} for Webpack Javascript
|
|
39
|
+
* @param environment
|
|
40
|
+
*/
|
|
41
|
+
export declare const _getJSPlugins: (environment: Environment) => WebpackPluginInstance[];
|
|
42
|
+
/**
|
|
43
|
+
* Returns the `entry` key of the webpack
|
|
44
|
+
* @private
|
|
45
|
+
*/
|
|
46
|
+
export declare const _getJavaScriptEntries: () => string[];
|
|
47
|
+
/**
|
|
48
|
+
* Returns the `optimization` key of webpack
|
|
49
|
+
* @param environment the environment
|
|
50
|
+
* @private
|
|
51
|
+
*/
|
|
52
|
+
export declare const _getOptimization: (environment: Environment) => any;
|
|
53
|
+
/**
|
|
54
|
+
* Returns the base {@link Configuration}
|
|
55
|
+
* @private
|
|
56
|
+
*/
|
|
57
|
+
export declare const _getBase: (environment: Environment) => Configuration;
|
|
58
|
+
/**
|
|
59
|
+
* Returns the {@link Configuration} for static type
|
|
60
|
+
* @private
|
|
61
|
+
*/
|
|
62
|
+
export declare const _getStaticConfiguration: (config: Configuration, environment: Environment) => Configuration;
|
|
63
|
+
/**
|
|
64
|
+
* Returns the {@link Configuration} for JS type
|
|
65
|
+
* @private
|
|
66
|
+
*/
|
|
67
|
+
export declare const _getJavaScriptConfiguration: (config: Configuration, environment: Environment) => Configuration;
|
|
68
|
+
/**
|
|
69
|
+
* Main method for generating a webpack configuration
|
|
70
|
+
* @param environment
|
|
71
|
+
* @param type
|
|
72
|
+
*/
|
|
73
|
+
declare const _default: (environment: Environment, type: WebpackTypeWp5) => Configuration;
|
|
74
|
+
export default _default;
|
|
@@ -0,0 +1,569 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* eslint-disable global-require, @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires */
|
|
3
|
+
/// <reference path="../module.d.ts" />
|
|
4
|
+
var __assign = (this && this.__assign) || function () {
|
|
5
|
+
__assign = Object.assign || function(t) {
|
|
6
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
7
|
+
s = arguments[i];
|
|
8
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
9
|
+
t[p] = s[p];
|
|
10
|
+
}
|
|
11
|
+
return t;
|
|
12
|
+
};
|
|
13
|
+
return __assign.apply(this, arguments);
|
|
14
|
+
};
|
|
15
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
16
|
+
if (k2 === undefined) k2 = k;
|
|
17
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
18
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
19
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
20
|
+
}
|
|
21
|
+
Object.defineProperty(o, k2, desc);
|
|
22
|
+
}) : (function(o, m, k, k2) {
|
|
23
|
+
if (k2 === undefined) k2 = k;
|
|
24
|
+
o[k2] = m[k];
|
|
25
|
+
}));
|
|
26
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
27
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
28
|
+
}) : function(o, v) {
|
|
29
|
+
o["default"] = v;
|
|
30
|
+
});
|
|
31
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
32
|
+
if (mod && mod.__esModule) return mod;
|
|
33
|
+
var result = {};
|
|
34
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
35
|
+
__setModuleDefault(result, mod);
|
|
36
|
+
return result;
|
|
37
|
+
};
|
|
38
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
39
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
40
|
+
if (!m) return o;
|
|
41
|
+
var i = m.call(o), r, ar = [], e;
|
|
42
|
+
try {
|
|
43
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
44
|
+
}
|
|
45
|
+
catch (error) { e = { error: error }; }
|
|
46
|
+
finally {
|
|
47
|
+
try {
|
|
48
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
49
|
+
}
|
|
50
|
+
finally { if (e) throw e.error; }
|
|
51
|
+
}
|
|
52
|
+
return ar;
|
|
53
|
+
};
|
|
54
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
55
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
56
|
+
if (ar || !(i in from)) {
|
|
57
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
58
|
+
ar[i] = from[i];
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
62
|
+
};
|
|
63
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
64
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
65
|
+
};
|
|
66
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
67
|
+
exports._getJavaScriptConfiguration = exports._getStaticConfiguration = exports._getBase = exports._getOptimization = exports._getJavaScriptEntries = exports._getJSPlugins = exports._getStaticPlugins = exports._getBasePlugins = exports._getJSScripts = exports._resolveProjectTypescriptPath = void 0;
|
|
68
|
+
var module_scope_plugin_1 = __importDefault(require("@k88/module-scope-plugin"));
|
|
69
|
+
var flex_dev_utils_1 = require("@twilio/flex-dev-utils");
|
|
70
|
+
var env_1 = require("@twilio/flex-dev-utils/dist/env");
|
|
71
|
+
var fs_1 = __importStar(require("@twilio/flex-dev-utils/dist/fs"));
|
|
72
|
+
var fork_ts_checker_webpack_plugin_1 = __importDefault(require("fork-ts-checker-webpack-plugin"));
|
|
73
|
+
var html_webpack_plugin_wp5_1 = __importDefault(require("html-webpack-plugin-wp5"));
|
|
74
|
+
var pnp_webpack_plugin_1 = __importDefault(require("pnp-webpack-plugin"));
|
|
75
|
+
var terser_webpack_plugin_wp5_1 = __importDefault(require("terser-webpack-plugin-wp5"));
|
|
76
|
+
var webpack5_1 = require("webpack5");
|
|
77
|
+
var lodash_1 = require("lodash");
|
|
78
|
+
var clientVariables_1 = require("./clientVariables");
|
|
79
|
+
var __1 = require("..");
|
|
80
|
+
/*
|
|
81
|
+
* Self-import so internal calls between these exports go through the (spy-able) module
|
|
82
|
+
* namespace rather than a fixed local binding - lets jest.spyOn intercept same-module calls in tests.
|
|
83
|
+
*/
|
|
84
|
+
// eslint-disable-next-line import/no-self-import
|
|
85
|
+
var self = __importStar(require("./webpack.config"));
|
|
86
|
+
/**
|
|
87
|
+
* Resolves the `typescript` module to use for type-checking a plugin project.
|
|
88
|
+
*
|
|
89
|
+
* `resolveModulePath('typescript')` resolves relative to this package's own installation
|
|
90
|
+
* (it only ever falls back to other paths if the bare `require.resolve` throws, which it
|
|
91
|
+
* never does here since this package always has some version of `typescript` available).
|
|
92
|
+
* That means, unpatched, every plugin gets type-checked against whatever TypeScript version
|
|
93
|
+
* this package happens to be built with, regardless of what the plugin itself declares and
|
|
94
|
+
* has installed - silently ignoring newer syntax the plugin's own TypeScript could parse fine.
|
|
95
|
+
* Prefer the plugin project's own installed `typescript`, and only fall back to this
|
|
96
|
+
* package's copy if the plugin has none.
|
|
97
|
+
* @private
|
|
98
|
+
*/
|
|
99
|
+
var _resolveProjectTypescriptPath = function () {
|
|
100
|
+
try {
|
|
101
|
+
return require.resolve('typescript', { paths: [(0, fs_1.getPaths)().app.nodeModulesDir] });
|
|
102
|
+
}
|
|
103
|
+
catch (_a) {
|
|
104
|
+
return (0, fs_1.resolveModulePath)('typescript');
|
|
105
|
+
}
|
|
106
|
+
};
|
|
107
|
+
exports._resolveProjectTypescriptPath = _resolveProjectTypescriptPath;
|
|
108
|
+
/*
|
|
109
|
+
* interface Optimization {
|
|
110
|
+
* splitChunks?: false;
|
|
111
|
+
* runtimeChunk: boolean;
|
|
112
|
+
* minimize: boolean;
|
|
113
|
+
* minimizer: WebpackPluginInstance;
|
|
114
|
+
* }
|
|
115
|
+
*/
|
|
116
|
+
var IMAGE_SIZE_BYTE = 10 * 1024;
|
|
117
|
+
var FLEX_SHIM = '@twilio/flex-plugin-scripts/dev_assets/flex-shim.js';
|
|
118
|
+
var EXTERNALS = {
|
|
119
|
+
react: 'React',
|
|
120
|
+
'react-dom': 'ReactDOM',
|
|
121
|
+
redux: 'Redux',
|
|
122
|
+
'react-redux': 'ReactRedux',
|
|
123
|
+
};
|
|
124
|
+
/**
|
|
125
|
+
* Returns the JS scripts to inject into the index.html file
|
|
126
|
+
* @param flexUIVersion the flex-ui version
|
|
127
|
+
* @param reactVersion the react version
|
|
128
|
+
* @param reactDOMVersion the react-dom version
|
|
129
|
+
*/
|
|
130
|
+
var _getJSScripts = function (flexUIVersion, reactVersion, reactDOMVersion) {
|
|
131
|
+
var envSrc = flex_dev_utils_1.env.getFlexUISrc();
|
|
132
|
+
if (!flex_dev_utils_1.semver.satisfies(flexUIVersion, '>=1.19.0')) {
|
|
133
|
+
if (envSrc) {
|
|
134
|
+
return ["<script src=\"".concat(envSrc, "\"></script>")];
|
|
135
|
+
}
|
|
136
|
+
return [
|
|
137
|
+
"<script src=\"https://assets.flex.twilio.com/releases/flex-ui/".concat(flexUIVersion, "/twilio-flex.min.js\"></script>"),
|
|
138
|
+
];
|
|
139
|
+
}
|
|
140
|
+
var flexUISrc = envSrc || "https://assets.flex.twilio.com/releases/flex-ui/".concat(flexUIVersion, "/twilio-flex.unbundled-react.min.js");
|
|
141
|
+
return [
|
|
142
|
+
"<script crossorigin src=\"https://unpkg.com/react@".concat(reactVersion, "/umd/react.development.js\"></script>"),
|
|
143
|
+
"<script crossorigin src=\"https://unpkg.com/react-dom@".concat(reactDOMVersion, "/umd/react-dom.development.js\"></script>"),
|
|
144
|
+
"<script src=\"".concat(flexUISrc, "\"></script>"),
|
|
145
|
+
];
|
|
146
|
+
};
|
|
147
|
+
exports._getJSScripts = _getJSScripts;
|
|
148
|
+
/**
|
|
149
|
+
* Returns the Babel Loader configuration
|
|
150
|
+
* @param isProd whether this is a production build
|
|
151
|
+
*/
|
|
152
|
+
/* c8 ignore next */
|
|
153
|
+
var _getBabelLoader = function (isProd) { return ({
|
|
154
|
+
test: new RegExp(".(".concat((0, fs_1.getPaths)().extensions.join('|'), ")$")),
|
|
155
|
+
include: (0, fs_1.getPaths)().app.srcDir,
|
|
156
|
+
loader: require.resolve('babel-loader'),
|
|
157
|
+
options: {
|
|
158
|
+
customize: require.resolve('babel-preset-react-app/webpack-overrides'),
|
|
159
|
+
babelrc: false,
|
|
160
|
+
configFile: false,
|
|
161
|
+
presets: [
|
|
162
|
+
require.resolve('@babel/preset-react'),
|
|
163
|
+
require.resolve('@babel/preset-env'),
|
|
164
|
+
require.resolve('@babel/preset-typescript'),
|
|
165
|
+
],
|
|
166
|
+
plugins: [
|
|
167
|
+
[
|
|
168
|
+
require.resolve('babel-plugin-named-asset-import'),
|
|
169
|
+
{
|
|
170
|
+
loaderMap: {
|
|
171
|
+
svg: { ReactComponent: '@svgr/webpack?-svgo,+titleProp,+ref![path]' },
|
|
172
|
+
},
|
|
173
|
+
},
|
|
174
|
+
],
|
|
175
|
+
],
|
|
176
|
+
compact: isProd,
|
|
177
|
+
},
|
|
178
|
+
}); };
|
|
179
|
+
/**
|
|
180
|
+
* Gets the image loader
|
|
181
|
+
* @private
|
|
182
|
+
*/
|
|
183
|
+
/* c8 ignore next */
|
|
184
|
+
var _getImageLoader = function () { return ({
|
|
185
|
+
test: [/\.bmp$/, /\.gif$/, /\.jpe?g$/, /\.png$/],
|
|
186
|
+
loader: require.resolve('url-loader'),
|
|
187
|
+
options: {
|
|
188
|
+
limit: IMAGE_SIZE_BYTE,
|
|
189
|
+
},
|
|
190
|
+
}); };
|
|
191
|
+
/**
|
|
192
|
+
* Gets the styles loader
|
|
193
|
+
* @param isProd whether this is a production build
|
|
194
|
+
* @private
|
|
195
|
+
*/
|
|
196
|
+
var _getStyleLoaders = function (isProd) {
|
|
197
|
+
/**
|
|
198
|
+
* Gets the loader for the given style
|
|
199
|
+
* @param options the options
|
|
200
|
+
* @param preProcessor the pre-processor, for example scss-loader
|
|
201
|
+
* @param implementation the implementation for thr scss-loader
|
|
202
|
+
*/
|
|
203
|
+
var getStyleLoader = function (options, preProcessor, implementation) {
|
|
204
|
+
var loaders = [];
|
|
205
|
+
// Main style loader to work when compiled
|
|
206
|
+
loaders.push(require.resolve('style-loader'));
|
|
207
|
+
// All css loader
|
|
208
|
+
loaders.push({
|
|
209
|
+
loader: require.resolve('css-loader'),
|
|
210
|
+
options: options,
|
|
211
|
+
}, {
|
|
212
|
+
loader: require.resolve('postcss-loader'),
|
|
213
|
+
options: {
|
|
214
|
+
postcssOptions: {
|
|
215
|
+
plugins: function () { return [
|
|
216
|
+
require('postcss-flexbugs-fixes'),
|
|
217
|
+
require('postcss-preset-env')({
|
|
218
|
+
autoprefixer: {
|
|
219
|
+
flexbox: 'no-2009',
|
|
220
|
+
},
|
|
221
|
+
stage: 3,
|
|
222
|
+
}),
|
|
223
|
+
]; },
|
|
224
|
+
},
|
|
225
|
+
sourceMap: isProd,
|
|
226
|
+
},
|
|
227
|
+
});
|
|
228
|
+
// Add a pre-processor loader (converting SCSS to CSS)
|
|
229
|
+
if (preProcessor) {
|
|
230
|
+
var preProcessorOptions = {
|
|
231
|
+
sourceMap: isProd,
|
|
232
|
+
};
|
|
233
|
+
if (implementation) {
|
|
234
|
+
var nodePath = (0, fs_1.resolveModulePath)(implementation);
|
|
235
|
+
if (nodePath) {
|
|
236
|
+
preProcessorOptions.implementation = require(nodePath);
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
loaders.push({
|
|
240
|
+
loader: require.resolve('resolve-url-loader'),
|
|
241
|
+
options: {
|
|
242
|
+
sourceMap: isProd,
|
|
243
|
+
},
|
|
244
|
+
}, {
|
|
245
|
+
loader: require.resolve(preProcessor),
|
|
246
|
+
options: preProcessorOptions,
|
|
247
|
+
});
|
|
248
|
+
}
|
|
249
|
+
return loaders;
|
|
250
|
+
};
|
|
251
|
+
return [
|
|
252
|
+
{
|
|
253
|
+
test: /\.css$/,
|
|
254
|
+
exclude: /\.module\.css$/,
|
|
255
|
+
use: getStyleLoader({
|
|
256
|
+
importLoaders: 1,
|
|
257
|
+
sourceMap: isProd,
|
|
258
|
+
}),
|
|
259
|
+
sideEffects: true,
|
|
260
|
+
},
|
|
261
|
+
{
|
|
262
|
+
test: /\.module\.css$/,
|
|
263
|
+
use: getStyleLoader({
|
|
264
|
+
importLoaders: 1,
|
|
265
|
+
sourceMap: isProd,
|
|
266
|
+
modules: true,
|
|
267
|
+
}),
|
|
268
|
+
},
|
|
269
|
+
{
|
|
270
|
+
test: /\.(scss|sass)$/,
|
|
271
|
+
exclude: /\.module\.(scss|sass)$/,
|
|
272
|
+
use: getStyleLoader({
|
|
273
|
+
importLoaders: 3,
|
|
274
|
+
sourceMap: isProd,
|
|
275
|
+
}, 'sass-loader', 'node-sass'),
|
|
276
|
+
sideEffects: true,
|
|
277
|
+
},
|
|
278
|
+
{
|
|
279
|
+
test: /\.module\.(scss|sass)$/,
|
|
280
|
+
use: getStyleLoader({
|
|
281
|
+
importLoaders: 3,
|
|
282
|
+
sourceMap: isProd,
|
|
283
|
+
modules: true,
|
|
284
|
+
}, 'sass-loader', 'node-sass'),
|
|
285
|
+
},
|
|
286
|
+
];
|
|
287
|
+
};
|
|
288
|
+
/**
|
|
289
|
+
* Returns an array of {@link Plugin} for Webpack
|
|
290
|
+
* @param environment the environment
|
|
291
|
+
* @private
|
|
292
|
+
*/
|
|
293
|
+
var _getBasePlugins = function (environment) {
|
|
294
|
+
var plugins = [];
|
|
295
|
+
var flexUIVersion = (0, fs_1.getDependencyVersion)('@twilio/flex-ui');
|
|
296
|
+
var reactVersion = (0, fs_1.getDependencyVersion)('react');
|
|
297
|
+
var reactDOMVersion = (0, fs_1.getDependencyVersion)('react-dom');
|
|
298
|
+
var defined = {
|
|
299
|
+
__FPB_PLUGIN_UNIQUE_NAME: "'".concat((0, fs_1.getPaths)().app.name, "'"),
|
|
300
|
+
__FPB_PLUGIN_VERSION: "'".concat((0, fs_1.getPaths)().app.version, "'"),
|
|
301
|
+
__FPB_FLEX_PLUGIN_VERSION: "'".concat((0, fs_1.getDependencyVersion)('@twilio/flex-plugin'), "'"),
|
|
302
|
+
__FPB_FLEX_UI_VERSION: "'".concat(flexUIVersion, "'"),
|
|
303
|
+
__FPB_REACT_VERSION: "'".concat(reactVersion, "'"),
|
|
304
|
+
__FPB_REACT_DOM_VERSION: "'".concat(reactDOMVersion, "'"),
|
|
305
|
+
// backward compatibility with v3
|
|
306
|
+
__FPB_CRACO_CONFIG_FLEX_PLUGIN_VERSION: "'N/A'",
|
|
307
|
+
};
|
|
308
|
+
// The @k88/cra-webpack-hot-dev-client package requires these environment variables to be replaced
|
|
309
|
+
if (environment === env_1.Environment.Development) {
|
|
310
|
+
if (flex_dev_utils_1.env.getWDSSocketHost()) {
|
|
311
|
+
defined['process.env.WDS_SOCKET_HOST'] = flex_dev_utils_1.env.getWDSSocketHost();
|
|
312
|
+
}
|
|
313
|
+
if (flex_dev_utils_1.env.getWDSSocketPath()) {
|
|
314
|
+
defined['process.env.WDS_SOCKET_PATH'] = flex_dev_utils_1.env.getWDSSocketPath();
|
|
315
|
+
}
|
|
316
|
+
if (flex_dev_utils_1.env.getWDSSocketPort()) {
|
|
317
|
+
defined['process.env.WDS_SOCKET_PORT'] = flex_dev_utils_1.env.getWDSSocketPort();
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
plugins.push(new webpack5_1.DefinePlugin(__assign(__assign({}, defined), (0, clientVariables_1.getSanitizedProcessEnv)())));
|
|
321
|
+
return plugins;
|
|
322
|
+
};
|
|
323
|
+
exports._getBasePlugins = _getBasePlugins;
|
|
324
|
+
/**
|
|
325
|
+
* Returns an array of {@link Plugin} for Webpack Static
|
|
326
|
+
* @param environment
|
|
327
|
+
*/
|
|
328
|
+
var _getStaticPlugins = function (environment) {
|
|
329
|
+
var plugins = [];
|
|
330
|
+
var dependencies = (0, fs_1.getPaths)().app.dependencies;
|
|
331
|
+
// index.html entry point
|
|
332
|
+
if (environment === env_1.Environment.Development) {
|
|
333
|
+
plugins.push(new webpack5_1.HotModuleReplacementPlugin());
|
|
334
|
+
plugins.push(new html_webpack_plugin_wp5_1.default({
|
|
335
|
+
inject: false,
|
|
336
|
+
templateContent: function () {
|
|
337
|
+
var content = fs_1.default.readFileSync((0, fs_1.getPaths)().scripts.indexHTMLPath, 'utf8');
|
|
338
|
+
// Ensure Webpack 5 expected syntax is in place
|
|
339
|
+
content = content.replace('%__FPB_JS_SCRIPTS%', '<%= __FPB_JS_SCRIPTS %>');
|
|
340
|
+
// Manually process the EJS template using lodash.template
|
|
341
|
+
return (0, lodash_1.template)(content)({
|
|
342
|
+
__FPB_JS_SCRIPTS: (0, exports._getJSScripts)(dependencies.flexUI.version, dependencies.react.version, dependencies.reactDom.version).join('\n'),
|
|
343
|
+
});
|
|
344
|
+
},
|
|
345
|
+
}));
|
|
346
|
+
}
|
|
347
|
+
return plugins;
|
|
348
|
+
};
|
|
349
|
+
exports._getStaticPlugins = _getStaticPlugins;
|
|
350
|
+
/**
|
|
351
|
+
* Returns an array of {@link Plugin} for Webpack Javascript
|
|
352
|
+
* @param environment
|
|
353
|
+
*/
|
|
354
|
+
var _getJSPlugins = function (environment) {
|
|
355
|
+
var plugins = [];
|
|
356
|
+
var isDev = environment === env_1.Environment.Development;
|
|
357
|
+
var isProd = environment === env_1.Environment.Production;
|
|
358
|
+
if (isProd) {
|
|
359
|
+
plugins.push(new webpack5_1.SourceMapDevToolPlugin({
|
|
360
|
+
filename: "".concat((0, fs_1.getPaths)().app.name, ".js.map"),
|
|
361
|
+
module: false,
|
|
362
|
+
append: '\n//# sourceMappingURL=bundle.js.map',
|
|
363
|
+
}));
|
|
364
|
+
}
|
|
365
|
+
if ((0, fs_1.getPaths)().app.isTSProject()) {
|
|
366
|
+
var typescriptPath = (0, exports._resolveProjectTypescriptPath)();
|
|
367
|
+
var config = {
|
|
368
|
+
async: isDev,
|
|
369
|
+
typescript: {
|
|
370
|
+
typescriptPath: typescriptPath || undefined,
|
|
371
|
+
configFile: (0, fs_1.getPaths)().app.tsConfigPath,
|
|
372
|
+
diagnosticOptions: {
|
|
373
|
+
syntactic: true,
|
|
374
|
+
semantic: true,
|
|
375
|
+
declaration: false,
|
|
376
|
+
global: false,
|
|
377
|
+
},
|
|
378
|
+
},
|
|
379
|
+
issue: {
|
|
380
|
+
include: [{ file: '**' }],
|
|
381
|
+
exclude: [
|
|
382
|
+
{ file: '**/__tests__/**' },
|
|
383
|
+
{ file: '**/__mocks__/**' },
|
|
384
|
+
{ file: '**/?(*.)(spec|test).*' },
|
|
385
|
+
{ file: '**/src/setupProxy.*' },
|
|
386
|
+
{ file: '**/src/setupTests.*' },
|
|
387
|
+
],
|
|
388
|
+
},
|
|
389
|
+
formatter: isProd ? 'codeframe' : 'basic',
|
|
390
|
+
logger: 'webpack-infrastructure',
|
|
391
|
+
};
|
|
392
|
+
/*
|
|
393
|
+
* fork-ts-checker-webpack-plugin resolves its own nested copy of the `webpack` peer dependency,
|
|
394
|
+
* which TypeScript sees as a distinct (though compatible) Compiler type from our own webpack5 import.
|
|
395
|
+
*/
|
|
396
|
+
plugins.push(new fork_ts_checker_webpack_plugin_1.default(config));
|
|
397
|
+
}
|
|
398
|
+
return plugins;
|
|
399
|
+
};
|
|
400
|
+
exports._getJSPlugins = _getJSPlugins;
|
|
401
|
+
/**
|
|
402
|
+
* Returns the `entry` key of the webpack
|
|
403
|
+
* @private
|
|
404
|
+
*/
|
|
405
|
+
var _getJavaScriptEntries = function () {
|
|
406
|
+
var entry = [];
|
|
407
|
+
entry.push((0, fs_1.getPaths)().app.entryPath);
|
|
408
|
+
return entry;
|
|
409
|
+
};
|
|
410
|
+
exports._getJavaScriptEntries = _getJavaScriptEntries;
|
|
411
|
+
/**
|
|
412
|
+
* Returns the `optimization` key of webpack
|
|
413
|
+
* @param environment the environment
|
|
414
|
+
* @private
|
|
415
|
+
*/
|
|
416
|
+
/* c8 ignore next */
|
|
417
|
+
var _getOptimization = function (environment) {
|
|
418
|
+
var isProd = environment === env_1.Environment.Production;
|
|
419
|
+
return {
|
|
420
|
+
splitChunks: false,
|
|
421
|
+
runtimeChunk: false,
|
|
422
|
+
minimize: isProd,
|
|
423
|
+
minimizer: [
|
|
424
|
+
new terser_webpack_plugin_wp5_1.default({
|
|
425
|
+
terserOptions: {
|
|
426
|
+
parse: {
|
|
427
|
+
ecma: 2017,
|
|
428
|
+
},
|
|
429
|
+
compress: {
|
|
430
|
+
ecma: 5,
|
|
431
|
+
comparisons: false,
|
|
432
|
+
inline: 2,
|
|
433
|
+
},
|
|
434
|
+
mangle: {
|
|
435
|
+
safari10: true,
|
|
436
|
+
},
|
|
437
|
+
// eslint-disable-next-line camelcase
|
|
438
|
+
keep_classnames: isProd,
|
|
439
|
+
// eslint-disable-next-line camelcase
|
|
440
|
+
keep_fnames: isProd,
|
|
441
|
+
output: {
|
|
442
|
+
ecma: 5,
|
|
443
|
+
comments: false,
|
|
444
|
+
// eslint-disable-next-line camelcase
|
|
445
|
+
ascii_only: true,
|
|
446
|
+
},
|
|
447
|
+
sourceMap: isProd,
|
|
448
|
+
},
|
|
449
|
+
}),
|
|
450
|
+
],
|
|
451
|
+
};
|
|
452
|
+
};
|
|
453
|
+
exports._getOptimization = _getOptimization;
|
|
454
|
+
/**
|
|
455
|
+
* Returns the `resolve` key of webpack
|
|
456
|
+
* @param environment the environment
|
|
457
|
+
* @private
|
|
458
|
+
*/
|
|
459
|
+
var _getResolve = function (environment) {
|
|
460
|
+
var isProd = environment === env_1.Environment.Production;
|
|
461
|
+
var extensions = (0, fs_1.getPaths)().app.isTSProject()
|
|
462
|
+
? (0, fs_1.getPaths)().extensions
|
|
463
|
+
: (0, fs_1.getPaths)().extensions.filter(function (e) { return !e.includes('ts'); });
|
|
464
|
+
var paths = (0, fs_1.getPaths)();
|
|
465
|
+
var resolve = {
|
|
466
|
+
modules: [
|
|
467
|
+
'node_modules',
|
|
468
|
+
paths.app.nodeModulesDir,
|
|
469
|
+
paths.scripts.nodeModulesDir,
|
|
470
|
+
paths.webpack.nodeModulesDir,
|
|
471
|
+
paths.cli.nodeModulesDir,
|
|
472
|
+
],
|
|
473
|
+
extensions: extensions.map(function (e) { return ".".concat(e); }),
|
|
474
|
+
alias: {
|
|
475
|
+
'@twilio/flex-ui': FLEX_SHIM,
|
|
476
|
+
},
|
|
477
|
+
plugins: [pnp_webpack_plugin_1.default, new module_scope_plugin_1.default(paths.app.srcDir, [paths.app.pkgPath])],
|
|
478
|
+
};
|
|
479
|
+
if (isProd && resolve.alias) {
|
|
480
|
+
resolve.alias['scheduler/tracing'] = 'scheduler/tracing-profiling';
|
|
481
|
+
}
|
|
482
|
+
return resolve;
|
|
483
|
+
};
|
|
484
|
+
/**
|
|
485
|
+
* Returns the base {@link Configuration}
|
|
486
|
+
* @private
|
|
487
|
+
*/
|
|
488
|
+
var _getBase = function (environment) {
|
|
489
|
+
var isProd = environment === env_1.Environment.Production;
|
|
490
|
+
var config = {
|
|
491
|
+
resolve: _getResolve(environment),
|
|
492
|
+
resolveLoader: {
|
|
493
|
+
plugins: [pnp_webpack_plugin_1.default.moduleLoader(module)],
|
|
494
|
+
},
|
|
495
|
+
externals: EXTERNALS,
|
|
496
|
+
module: {
|
|
497
|
+
strictExportPresence: true,
|
|
498
|
+
rules: [
|
|
499
|
+
{
|
|
500
|
+
oneOf: __spreadArray([_getImageLoader(), _getBabelLoader(isProd)], __read(_getStyleLoaders(isProd)), false),
|
|
501
|
+
},
|
|
502
|
+
],
|
|
503
|
+
},
|
|
504
|
+
plugins: (0, exports._getBasePlugins)(environment),
|
|
505
|
+
};
|
|
506
|
+
config.mode = isProd ? env_1.Environment.Production : env_1.Environment.Development;
|
|
507
|
+
config.entry = [];
|
|
508
|
+
if (environment === env_1.Environment.Development) {
|
|
509
|
+
config.entry.push(require.resolve('@k88/cra-webpack-hot-dev-client/build'));
|
|
510
|
+
}
|
|
511
|
+
return config;
|
|
512
|
+
};
|
|
513
|
+
exports._getBase = _getBase;
|
|
514
|
+
/**
|
|
515
|
+
* Returns the {@link Configuration} for static type
|
|
516
|
+
* @private
|
|
517
|
+
*/
|
|
518
|
+
var _getStaticConfiguration = function (config, environment) {
|
|
519
|
+
var _a;
|
|
520
|
+
config.plugins = config.plugins ? config.plugins : [];
|
|
521
|
+
(_a = config.plugins).push.apply(_a, __spreadArray([], __read(self._getStaticPlugins(environment)), false));
|
|
522
|
+
return config;
|
|
523
|
+
};
|
|
524
|
+
exports._getStaticConfiguration = _getStaticConfiguration;
|
|
525
|
+
/**
|
|
526
|
+
* Returns the {@link Configuration} for JS type
|
|
527
|
+
* @private
|
|
528
|
+
*/
|
|
529
|
+
var _getJavaScriptConfiguration = function (config, environment) {
|
|
530
|
+
var _a, _b;
|
|
531
|
+
var isProd = environment === env_1.Environment.Production;
|
|
532
|
+
var filename = "".concat((0, fs_1.getPaths)().app.name);
|
|
533
|
+
var outputName = environment === env_1.Environment.Production ? filename : "plugins/".concat(filename);
|
|
534
|
+
config.entry = config.entry ? config.entry : [];
|
|
535
|
+
config.plugins = config.plugins ? config.plugins : [];
|
|
536
|
+
// @ts-ignore
|
|
537
|
+
(_a = config.entry).push.apply(_a, __spreadArray([], __read(self._getJavaScriptEntries()), false));
|
|
538
|
+
config.output = {
|
|
539
|
+
path: (0, fs_1.getPaths)().app.buildDir,
|
|
540
|
+
pathinfo: !isProd,
|
|
541
|
+
filename: "".concat(outputName, ".js"),
|
|
542
|
+
sourceMapFilename: "".concat(outputName, ".[contenthash].js.map"),
|
|
543
|
+
publicPath: '/',
|
|
544
|
+
globalObject: 'this',
|
|
545
|
+
};
|
|
546
|
+
config.bail = isProd;
|
|
547
|
+
config.devtool = isProd ? 'cheap-source-map' : 'source-map';
|
|
548
|
+
config.optimization = self._getOptimization(environment);
|
|
549
|
+
config.node = false;
|
|
550
|
+
(_b = config.plugins).push.apply(_b, __spreadArray([], __read(self._getJSPlugins(environment)), false));
|
|
551
|
+
return config;
|
|
552
|
+
};
|
|
553
|
+
exports._getJavaScriptConfiguration = _getJavaScriptConfiguration;
|
|
554
|
+
/**
|
|
555
|
+
* Main method for generating a webpack configuration
|
|
556
|
+
* @param environment
|
|
557
|
+
* @param type
|
|
558
|
+
*/
|
|
559
|
+
exports.default = (function (environment, type) {
|
|
560
|
+
var config = self._getBase(environment);
|
|
561
|
+
if (type === __1.WebpackTypeWp5.Static) {
|
|
562
|
+
return self._getStaticConfiguration(config, environment);
|
|
563
|
+
}
|
|
564
|
+
if (type === __1.WebpackTypeWp5.JavaScript) {
|
|
565
|
+
return self._getJavaScriptConfiguration(config, environment);
|
|
566
|
+
}
|
|
567
|
+
return self._getJavaScriptConfiguration(self._getStaticConfiguration(config, environment), environment);
|
|
568
|
+
});
|
|
569
|
+
//# sourceMappingURL=webpack.config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webpack.config.js","sourceRoot":"","sources":["../../src/webpack/webpack.config.ts"],"names":[],"mappings":";AAAA,8GAA8G;AAC9G,uCAAuC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEvC,iFAAyD;AACzD,yDAAqD;AACrD,uDAA8D;AAC9D,mEAAuG;AACvG,kGAAwE;AACxE,oFAAwD;AACxD,0EAAkD;AAClD,wFAAqD;AACrD,qCASkB;AAClB,iCAAkC;AAElC,qDAA2D;AAC3D,wBAAoC;AACpC;;;GAGG;AACH,iDAAiD;AACjD,qDAAyC;AAOzC;;;;;;;;;;;;GAYG;AACI,IAAM,6BAA6B,GAAG;IAC3C,IAAI;QACF,OAAO,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,CAAC,IAAA,aAAQ,GAAE,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;KAClF;IAAC,WAAM;QACN,OAAO,IAAA,sBAAiB,EAAC,YAAY,CAAC,CAAC;KACxC;AACH,CAAC,CAAC;AANW,QAAA,6BAA6B,iCAMxC;AAEF;;;;;;;GAOG;AAEH,IAAM,eAAe,GAAG,EAAE,GAAG,IAAI,CAAC;AAClC,IAAM,SAAS,GAAG,qDAAqD,CAAC;AACxE,IAAM,SAAS,GAAG;IAChB,KAAK,EAAE,OAAO;IACd,WAAW,EAAE,UAAU;IACvB,KAAK,EAAE,OAAO;IACd,aAAa,EAAE,YAAY;CAC5B,CAAC;AAEF;;;;;GAKG;AACI,IAAM,aAAa,GAAG,UAAC,aAAqB,EAAE,YAAoB,EAAE,eAAuB;IAChG,IAAM,MAAM,GAAG,oBAAG,CAAC,YAAY,EAAE,CAAC;IAClC,IAAI,CAAC,uBAAM,CAAC,SAAS,CAAC,aAAa,EAAE,UAAU,CAAC,EAAE;QAChD,IAAI,MAAM,EAAE;YACV,OAAO,CAAC,wBAAgB,MAAM,iBAAa,CAAC,CAAC;SAC9C;QAED,OAAO;YACL,wEAAgE,aAAa,oCAAgC;SAC9G,CAAC;KACH;IAED,IAAM,SAAS,GACb,MAAM,IAAI,0DAAmD,aAAa,wCAAqC,CAAC;IAElH,OAAO;QACL,4DAAoD,YAAY,0CAAsC;QACtG,gEAAwD,eAAe,8CAA0C;QACjH,wBAAgB,SAAS,iBAAa;KACvC,CAAC;AACJ,CAAC,CAAC;AApBW,QAAA,aAAa,iBAoBxB;AAEF;;;GAGG;AACH,oBAAoB;AACpB,IAAM,eAAe,GAAG,UAAC,MAAe,IAAK,OAAA,CAAC;IAC5C,IAAI,EAAE,IAAI,MAAM,CAAC,YAAM,IAAA,aAAQ,GAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAI,CAAC;IAC3D,OAAO,EAAE,IAAA,aAAQ,GAAE,CAAC,GAAG,CAAC,MAAM;IAC9B,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC;IACvC,OAAO,EAAE;QACP,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,0CAA0C,CAAC;QACtE,OAAO,EAAE,KAAK;QACd,UAAU,EAAE,KAAK;QACjB,OAAO,EAAE;YACP,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC;YACtC,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC;YACpC,OAAO,CAAC,OAAO,CAAC,0BAA0B,CAAC;SAC5C;QACD,OAAO,EAAE;YACP;gBACE,OAAO,CAAC,OAAO,CAAC,iCAAiC,CAAC;gBAClD;oBACE,SAAS,EAAE;wBACT,GAAG,EAAE,EAAE,cAAc,EAAE,4CAA4C,EAAE;qBACtE;iBACF;aACF;SACF;QACD,OAAO,EAAE,MAAM;KAChB;CACF,CAAC,EAzB2C,CAyB3C,CAAC;AAEH;;;GAGG;AACH,oBAAoB;AACpB,IAAM,eAAe,GAAG,cAAmB,OAAA,CAAC;IAC1C,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,CAAC;IAChD,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC;IACrC,OAAO,EAAE;QACP,KAAK,EAAE,eAAe;KACvB;CACF,CAAC,EANyC,CAMzC,CAAC;AAEH;;;;GAIG;AACH,IAAM,gBAAgB,GAAG,UAAC,MAAe;IACvC;;;;;OAKG;IACH,IAAM,cAAc,GAAG,UAAC,OAAqB,EAAE,YAAqB,EAAE,cAAuB;QAC3F,IAAM,OAAO,GAAqB,EAAE,CAAC;QAErC,0CAA0C;QAC1C,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC;QAE9C,iBAAiB;QACjB,OAAO,CAAC,IAAI,CACV;YACE,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC;YACrC,OAAO,SAAA;SACR,EACD;YACE,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC;YACzC,OAAO,EAAE;gBACP,cAAc,EAAE;oBACd,OAAO,EAAE,cAAM,OAAA;wBACb,OAAO,CAAC,wBAAwB,CAAC;wBACjC,OAAO,CAAC,oBAAoB,CAAC,CAAC;4BAC5B,YAAY,EAAE;gCACZ,OAAO,EAAE,SAAS;6BACnB;4BACD,KAAK,EAAE,CAAC;yBACT,CAAC;qBACH,EARc,CAQd;iBACF;gBACD,SAAS,EAAE,MAAM;aAClB;SACF,CACF,CAAC;QAEF,sDAAsD;QACtD,IAAI,YAAY,EAAE;YAChB,IAAM,mBAAmB,GAA4B;gBACnD,SAAS,EAAE,MAAM;aAClB,CAAC;YAEF,IAAI,cAAc,EAAE;gBAClB,IAAM,QAAQ,GAAG,IAAA,sBAAiB,EAAC,cAAc,CAAC,CAAC;gBACnD,IAAI,QAAQ,EAAE;oBACZ,mBAAmB,CAAC,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;iBACxD;aACF;YAED,OAAO,CAAC,IAAI,CACV;gBACE,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC;gBAC7C,OAAO,EAAE;oBACP,SAAS,EAAE,MAAM;iBAClB;aACF,EACD;gBACE,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC;gBACrC,OAAO,EAAE,mBAAmB;aAC7B,CACF,CAAC;SACH;QAED,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;IAEF,OAAO;QACL;YACE,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,gBAAgB;YACzB,GAAG,EAAE,cAAc,CAAC;gBAClB,aAAa,EAAE,CAAC;gBAChB,SAAS,EAAE,MAAM;aAClB,CAAC;YACF,WAAW,EAAE,IAAI;SAClB;QACD;YACE,IAAI,EAAE,gBAAgB;YACtB,GAAG,EAAE,cAAc,CAAC;gBAClB,aAAa,EAAE,CAAC;gBAChB,SAAS,EAAE,MAAM;gBACjB,OAAO,EAAE,IAAI;aACd,CAAC;SACH;QACD;YACE,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,wBAAwB;YACjC,GAAG,EAAE,cAAc,CACjB;gBACE,aAAa,EAAE,CAAC;gBAChB,SAAS,EAAE,MAAM;aAClB,EACD,aAAa,EACb,WAAW,CACZ;YACD,WAAW,EAAE,IAAI;SAClB;QACD;YACE,IAAI,EAAE,wBAAwB;YAC9B,GAAG,EAAE,cAAc,CACjB;gBACE,aAAa,EAAE,CAAC;gBAChB,SAAS,EAAE,MAAM;gBACjB,OAAO,EAAE,IAAI;aACd,EACD,aAAa,EACb,WAAW,CACZ;SACF;KACF,CAAC;AACJ,CAAC,CAAC;AAEF;;;;GAIG;AACI,IAAM,eAAe,GAAG,UAAC,WAAwB;IACtD,IAAM,OAAO,GAA4B,EAAE,CAAC;IAE5C,IAAM,aAAa,GAAG,IAAA,yBAAoB,EAAC,iBAAiB,CAAC,CAAC;IAC9D,IAAM,YAAY,GAAG,IAAA,yBAAoB,EAAC,OAAO,CAAC,CAAC;IACnD,IAAM,eAAe,GAAG,IAAA,yBAAoB,EAAC,WAAW,CAAC,CAAC;IAE1D,IAAM,OAAO,GAAG;QACd,wBAAwB,EAAE,WAAI,IAAA,aAAQ,GAAE,CAAC,GAAG,CAAC,IAAI,MAAG;QACpD,oBAAoB,EAAE,WAAI,IAAA,aAAQ,GAAE,CAAC,GAAG,CAAC,OAAO,MAAG;QACnD,yBAAyB,EAAE,WAAI,IAAA,yBAAoB,EAAC,qBAAqB,CAAC,MAAG;QAC7E,qBAAqB,EAAE,WAAI,aAAa,MAAG;QAC3C,mBAAmB,EAAE,WAAI,YAAY,MAAG;QACxC,uBAAuB,EAAE,WAAI,eAAe,MAAG;QAC/C,iCAAiC;QACjC,sCAAsC,EAAE,OAAO;KAChD,CAAC;IAEF,kGAAkG;IAClG,IAAI,WAAW,KAAK,iBAAW,CAAC,WAAW,EAAE;QAC3C,IAAI,oBAAG,CAAC,gBAAgB,EAAE,EAAE;YAC1B,OAAO,CAAC,6BAA6B,CAAC,GAAG,oBAAG,CAAC,gBAAgB,EAAE,CAAC;SACjE;QACD,IAAI,oBAAG,CAAC,gBAAgB,EAAE,EAAE;YAC1B,OAAO,CAAC,6BAA6B,CAAC,GAAG,oBAAG,CAAC,gBAAgB,EAAE,CAAC;SACjE;QACD,IAAI,oBAAG,CAAC,gBAAgB,EAAE,EAAE;YAC1B,OAAO,CAAC,6BAA6B,CAAC,GAAG,oBAAG,CAAC,gBAAgB,EAAE,CAAC;SACjE;KACF;IAED,OAAO,CAAC,IAAI,CAAC,IAAI,uBAAY,uBAAM,OAAO,GAAK,IAAA,wCAAsB,GAAE,EAAG,CAAC,CAAC;IAE5E,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAlCW,QAAA,eAAe,mBAkC1B;AAEF;;;GAGG;AACI,IAAM,iBAAiB,GAAG,UAAC,WAAwB;IACxD,IAAM,OAAO,GAA4B,EAAE,CAAC;IACpC,IAAA,YAAY,GAAK,IAAA,aAAQ,GAAE,CAAC,GAAG,aAAnB,CAAoB;IAExC,yBAAyB;IACzB,IAAI,WAAW,KAAK,iBAAW,CAAC,WAAW,EAAE;QAC3C,OAAO,CAAC,IAAI,CAAC,IAAI,qCAA0B,EAAE,CAAC,CAAC;QAC/C,OAAO,CAAC,IAAI,CACV,IAAI,iCAAiB,CAAC;YACpB,MAAM,EAAE,KAAK;YACb,eAAe,EAAE;gBACf,IAAI,OAAO,GAAG,YAAE,CAAC,YAAY,CAAC,IAAA,aAAQ,GAAE,CAAC,OAAO,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;gBACxE,+CAA+C;gBAC/C,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,oBAAoB,EAAE,yBAAyB,CAAC,CAAC;gBAC3E,0DAA0D;gBAC1D,OAAO,IAAA,iBAAQ,EAAC,OAAO,CAAC,CAAC;oBACvB,gBAAgB,EAAE,IAAA,qBAAa,EAC7B,YAAY,CAAC,MAAM,CAAC,OAAO,EAC3B,YAAY,CAAC,KAAK,CAAC,OAAO,EAC1B,YAAY,CAAC,QAAQ,CAAC,OAAO,CAC9B,CAAC,IAAI,CAAC,IAAI,CAAC;iBACb,CAAC,CAAC;YACL,CAAC;SACF,CAAqC,CACvC,CAAC;KACH;IAED,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AA5BW,QAAA,iBAAiB,qBA4B5B;AAEF;;;GAGG;AACI,IAAM,aAAa,GAAG,UAAC,WAAwB;IACpD,IAAM,OAAO,GAA4B,EAAE,CAAC;IAC5C,IAAM,KAAK,GAAG,WAAW,KAAK,iBAAW,CAAC,WAAW,CAAC;IACtD,IAAM,MAAM,GAAG,WAAW,KAAK,iBAAW,CAAC,UAAU,CAAC;IAEtD,IAAI,MAAM,EAAE;QACV,OAAO,CAAC,IAAI,CACV,IAAI,iCAAsB,CAAC;YACzB,QAAQ,EAAE,UAAG,IAAA,aAAQ,GAAE,CAAC,GAAG,CAAC,IAAI,YAAS;YACzC,MAAM,EAAE,KAAK;YACb,MAAM,EAAE,sCAAsC;SAC/C,CAAC,CACH,CAAC;KACH;IACD,IAAI,IAAA,aAAQ,GAAE,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE;QAChC,IAAM,cAAc,GAAG,IAAA,qCAA6B,GAAE,CAAC;QAMvD,IAAM,MAAM,GAAY;YACtB,KAAK,EAAE,KAAK;YACZ,UAAU,EAAE;gBACV,cAAc,EAAE,cAAc,IAAI,SAAS;gBAC3C,UAAU,EAAE,IAAA,aAAQ,GAAE,CAAC,GAAG,CAAC,YAAY;gBACvC,iBAAiB,EAAE;oBACjB,SAAS,EAAE,IAAI;oBACf,QAAQ,EAAE,IAAI;oBACd,WAAW,EAAE,KAAK;oBAClB,MAAM,EAAE,KAAK;iBACd;aACF;YACD,KAAK,EAAE;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;gBACzB,OAAO,EAAE;oBACP,EAAE,IAAI,EAAE,iBAAiB,EAAE;oBAC3B,EAAE,IAAI,EAAE,iBAAiB,EAAE;oBAC3B,EAAE,IAAI,EAAE,uBAAuB,EAAE;oBACjC,EAAE,IAAI,EAAE,qBAAqB,EAAE;oBAC/B,EAAE,IAAI,EAAE,qBAAqB,EAAE;iBAChC;aACF;YACD,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO;YACzC,MAAM,EAAE,wBAAwB;SACjC,CAAC;QAEF;;;WAGG;QACH,OAAO,CAAC,IAAI,CAAC,IAAI,wCAA0B,CAAC,MAAM,CAAqC,CAAC,CAAC;KAC1F;IAED,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAvDW,QAAA,aAAa,iBAuDxB;AAEF;;;GAGG;AACI,IAAM,qBAAqB,GAAG;IACnC,IAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,IAAA,aAAQ,GAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAErC,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AALW,QAAA,qBAAqB,yBAKhC;AAEF;;;;GAIG;AACH,oBAAoB;AACb,IAAM,gBAAgB,GAAG,UAAC,WAAwB;IACvD,IAAM,MAAM,GAAG,WAAW,KAAK,iBAAW,CAAC,UAAU,CAAC;IACtD,OAAO;QACL,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,KAAK;QACnB,QAAQ,EAAE,MAAM;QAChB,SAAS,EAAE;YACT,IAAI,mCAAY,CAAC;gBACf,aAAa,EAAE;oBACb,KAAK,EAAE;wBACL,IAAI,EAAE,IAAI;qBACX;oBACD,QAAQ,EAAE;wBACR,IAAI,EAAE,CAAC;wBACP,WAAW,EAAE,KAAK;wBAClB,MAAM,EAAE,CAAC;qBACV;oBACD,MAAM,EAAE;wBACN,QAAQ,EAAE,IAAI;qBACf;oBACD,qCAAqC;oBACrC,eAAe,EAAE,MAAM;oBACvB,qCAAqC;oBACrC,WAAW,EAAE,MAAM;oBACnB,MAAM,EAAE;wBACN,IAAI,EAAE,CAAC;wBACP,QAAQ,EAAE,KAAK;wBACf,qCAAqC;wBACrC,UAAU,EAAE,IAAI;qBACjB;oBACD,SAAS,EAAE,MAAM;iBAClB;aACF,CAAC;SACH;KACF,CAAC;AACJ,CAAC,CAAC;AAnCW,QAAA,gBAAgB,oBAmC3B;AAEF;;;;GAIG;AACH,IAAM,WAAW,GAAG,UAAC,WAAwB;IAC3C,IAAM,MAAM,GAAG,WAAW,KAAK,iBAAW,CAAC,UAAU,CAAC;IACtD,IAAM,UAAU,GAAG,IAAA,aAAQ,GAAE,CAAC,GAAG,CAAC,WAAW,EAAE;QAC7C,CAAC,CAAC,IAAA,aAAQ,GAAE,CAAC,UAAU;QACvB,CAAC,CAAC,IAAA,aAAQ,GAAE,CAAC,UAAU,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAjB,CAAiB,CAAC,CAAC;IAE3D,IAAM,KAAK,GAAG,IAAA,aAAQ,GAAE,CAAC;IAEzB,IAAM,OAAO,GAAmB;QAC9B,OAAO,EAAE;YACP,cAAc;YACd,KAAK,CAAC,GAAG,CAAC,cAAc;YACxB,KAAK,CAAC,OAAO,CAAC,cAAc;YAC5B,KAAK,CAAC,OAAO,CAAC,cAAc;YAC5B,KAAK,CAAC,GAAG,CAAC,cAAc;SACzB;QACD,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,WAAI,CAAC,CAAE,EAAP,CAAO,CAAC;QAC1C,KAAK,EAAE;YACL,iBAAiB,EAAE,SAAS;SAC7B;QACD,OAAO,EAAE,CAAC,4BAAgB,EAAE,IAAI,6BAAiB,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;KAC1F,CAAC;IAEF,IAAI,MAAM,IAAI,OAAO,CAAC,KAAK,EAAE;QAC3B,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,GAAG,6BAA6B,CAAC;KACpE;IAED,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF;;;GAGG;AACI,IAAM,QAAQ,GAAG,UAAC,WAAwB;IAC/C,IAAM,MAAM,GAAG,WAAW,KAAK,iBAAW,CAAC,UAAU,CAAC;IACtD,IAAM,MAAM,GAAkB;QAC5B,OAAO,EAAE,WAAW,CAAC,WAAW,CAAC;QACjC,aAAa,EAAE;YACb,OAAO,EAAE,CAAC,4BAAgB,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;SACjD;QACD,SAAS,EAAE,SAAS;QACpB,MAAM,EAAE;YACN,oBAAoB,EAAE,IAAI;YAC1B,KAAK,EAAE;gBACL;oBACE,KAAK,iBAAG,eAAe,EAAE,EAAE,eAAe,CAAC,MAAM,CAAC,UAAK,gBAAgB,CAAC,MAAM,CAAC,SAAC;iBACjF;aACF;SACF;QACD,OAAO,EAAE,IAAA,uBAAe,EAAC,WAAW,CAAC;KACtC,CAAC;IACF,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,iBAAW,CAAC,UAAU,CAAC,CAAC,CAAC,iBAAW,CAAC,WAAW,CAAC;IAExE,MAAM,CAAC,KAAK,GAAG,EAAE,CAAC;IAClB,IAAI,WAAW,KAAK,iBAAW,CAAC,WAAW,EAAE;QAC3C,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,uCAAuC,CAAC,CAAC,CAAC;KAC7E;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AA1BW,QAAA,QAAQ,YA0BnB;AAEF;;;GAGG;AACI,IAAM,uBAAuB,GAAG,UAAC,MAAqB,EAAE,WAAwB;;IACrF,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IACtD,CAAA,KAAA,MAAM,CAAC,OAAO,CAAA,CAAC,IAAI,oCAAI,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,WAAE;IAE5D,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AALW,QAAA,uBAAuB,2BAKlC;AAEF;;;GAGG;AACI,IAAM,2BAA2B,GAAG,UAAC,MAAqB,EAAE,WAAwB;;IACzF,IAAM,MAAM,GAAG,WAAW,KAAK,iBAAW,CAAC,UAAU,CAAC;IACtD,IAAM,QAAQ,GAAG,UAAG,IAAA,aAAQ,GAAE,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC;IAC1C,IAAM,UAAU,GAAG,WAAW,KAAK,iBAAW,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,kBAAW,QAAQ,CAAE,CAAC;IAE7F,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IAChD,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IAEtD,aAAa;IACb,CAAA,KAAA,MAAM,CAAC,KAAK,CAAA,CAAC,IAAI,oCAAI,IAAI,CAAC,qBAAqB,EAAE,WAAE;IACnD,MAAM,CAAC,MAAM,GAAG;QACd,IAAI,EAAE,IAAA,aAAQ,GAAE,CAAC,GAAG,CAAC,QAAQ;QAC7B,QAAQ,EAAE,CAAC,MAAM;QACjB,QAAQ,EAAE,UAAG,UAAU,QAAK;QAC5B,iBAAiB,EAAE,UAAG,UAAU,0BAAuB;QACvD,UAAU,EAAE,GAAG;QACf,YAAY,EAAE,MAAM;KACrB,CAAC;IACF,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC;IACrB,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,YAAY,CAAC;IAC5D,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;IACzD,MAAM,CAAC,IAAI,GAAG,KAAK,CAAC;IACpB,CAAA,KAAA,MAAM,CAAC,OAAO,CAAA,CAAC,IAAI,oCAAI,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,WAAE;IAExD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAzBW,QAAA,2BAA2B,+BAyBtC;AAEF;;;;GAIG;AACH,mBAAe,UAAC,WAAwB,EAAE,IAAoB;IAC5D,IAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAE1C,IAAI,IAAI,KAAK,kBAAc,CAAC,MAAM,EAAE;QAClC,OAAO,IAAI,CAAC,uBAAuB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;KAC1D;IACD,IAAI,IAAI,KAAK,kBAAc,CAAC,UAAU,EAAE;QACtC,OAAO,IAAI,CAAC,2BAA2B,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;KAC9D;IAED,OAAO,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,uBAAuB,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE,WAAW,CAAC,CAAC;AAC1G,CAAC,EAAC"}
|