tnp-config 1.0.9 → 1.0.14
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/browser/config.d.ts +0 -1
- package/browser/config.js +374 -0
- package/browser/config.js.map +1 -0
- package/browser/index.d.ts +1 -0
- package/browser/index.js +2 -0
- package/browser/index.js.map +1 -0
- package/browser/public-api.js +2 -0
- package/browser/public-api.js.map +1 -0
- package/client/config.d.ts +0 -1
- package/client/config.js +374 -0
- package/client/config.js.map +1 -0
- package/client/index.d.ts +1 -0
- package/client/index.js +2 -0
- package/client/index.js.map +1 -0
- package/client/package.json +8 -10
- package/client/public-api.js +2 -0
- package/client/public-api.js.map +1 -0
- package/config.js +3 -6
- package/config.js.map +1 -1
- package/package.json +5 -11
- package/package.json_devDependencies.json +4 -4
- package/tmp-environment.json +11 -16
- package/browser/README.md +0 -24
- package/browser/esm2015/config.js +0 -380
- package/browser/esm2015/config.ngsummary.json +0 -1
- package/browser/esm2015/public-api.js +0 -2
- package/browser/esm2015/public-api.ngsummary.json +0 -1
- package/browser/esm2015/tnp-config.js +0 -5
- package/browser/esm2015/tnp-config.ngsummary.json +0 -1
- package/browser/esm5/config.js +0 -380
- package/browser/esm5/public-api.js +0 -2
- package/browser/esm5/tnp-config.js +0 -5
- package/browser/package.json +0 -13
- package/browser/tnp-config.d.ts +0 -4
- package/browser/tnp-config.metadata.json +0 -1
- package/client/README.md +0 -24
- package/client/esm2015/config.js +0 -380
- package/client/esm2015/config.ngsummary.json +0 -1
- package/client/esm2015/public-api.js +0 -2
- package/client/esm2015/public-api.ngsummary.json +0 -1
- package/client/esm2015/tnp-config.js +0 -5
- package/client/esm2015/tnp-config.ngsummary.json +0 -1
- package/client/esm5/config.js +0 -380
- package/client/esm5/public-api.js +0 -2
- package/client/esm5/tnp-config.js +0 -5
- package/client/tnp-config.d.ts +0 -4
- package/client/tnp-config.metadata.json +0 -1
package/browser/README.md
DELETED
@@ -1,24 +0,0 @@
|
|
1
|
-
# MyLib
|
2
|
-
|
3
|
-
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 12.2.0.
|
4
|
-
|
5
|
-
## Code scaffolding
|
6
|
-
|
7
|
-
Run `ng generate component component-name --project my-lib` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project my-lib`.
|
8
|
-
> Note: Don't forget to add `--project my-lib` or else it will be added to the default project in your `angular.json` file.
|
9
|
-
|
10
|
-
## Build
|
11
|
-
|
12
|
-
Run `ng build my-lib` to build the project. The build artifacts will be stored in the `dist/` directory.
|
13
|
-
|
14
|
-
## Publishing
|
15
|
-
|
16
|
-
After building your library with `ng build my-lib`, go to the dist folder `cd dist/my-lib` and run `npm publish`.
|
17
|
-
|
18
|
-
## Running unit tests
|
19
|
-
|
20
|
-
Run `ng test my-lib` to execute the unit tests via [Karma](https://karma-runner.github.io).
|
21
|
-
|
22
|
-
## Further help
|
23
|
-
|
24
|
-
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
|
@@ -1,380 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
* Dariusz Filipiak
|
3
|
-
* @author darekf77@gmail.com
|
4
|
-
* Recommended config for all isomorphic libs *
|
5
|
-
*/
|
6
|
-
if (global && !global['ENV']) {
|
7
|
-
global['ENV'] = {};
|
8
|
-
}
|
9
|
-
export { CoreHelpers as Helpers } from 'tnp-core/browser';
|
10
|
-
export const GlobalIsomorphicDependencies = {
|
11
|
-
npm: [
|
12
|
-
{ name: 'rimraf' },
|
13
|
-
{ name: 'npm-run', version: '4.1.2' },
|
14
|
-
{ name: 'cpr' },
|
15
|
-
{ name: 'check-node-version' },
|
16
|
-
{ name: 'vsce' },
|
17
|
-
],
|
18
|
-
programs: [
|
19
|
-
// {
|
20
|
-
// name: 'code',
|
21
|
-
// website: 'https://code.visualstudio.com/'
|
22
|
-
// }
|
23
|
-
]
|
24
|
-
};
|
25
|
-
export const GlobalLibTypeName = {
|
26
|
-
isomorphicLib: 'isomorphic-lib',
|
27
|
-
angularLib: 'angular-lib',
|
28
|
-
electronClient: 'electron-client',
|
29
|
-
ionicLib: 'ionic-lib',
|
30
|
-
angularClient: 'angular-client',
|
31
|
-
ionicClient: 'ionic-client',
|
32
|
-
workspace: 'workspace',
|
33
|
-
container: 'container',
|
34
|
-
docker: 'docker',
|
35
|
-
unknowNpmProject: 'unknow-npm-project',
|
36
|
-
vscodeExt: 'vscode-ext',
|
37
|
-
chromeExt: 'chrome-ext',
|
38
|
-
singleFileProject: 'single-file-project',
|
39
|
-
navi: 'navi',
|
40
|
-
scenario: 'scenario'
|
41
|
-
};
|
42
|
-
export const LibTypeArr = [
|
43
|
-
GlobalLibTypeName.angularLib,
|
44
|
-
GlobalLibTypeName.isomorphicLib,
|
45
|
-
GlobalLibTypeName.angularClient,
|
46
|
-
GlobalLibTypeName.ionicClient,
|
47
|
-
GlobalLibTypeName.electronClient,
|
48
|
-
GlobalLibTypeName.workspace,
|
49
|
-
GlobalLibTypeName.container,
|
50
|
-
GlobalLibTypeName.docker,
|
51
|
-
GlobalLibTypeName.unknowNpmProject,
|
52
|
-
GlobalLibTypeName.vscodeExt,
|
53
|
-
GlobalLibTypeName.chromeExt,
|
54
|
-
GlobalLibTypeName.navi,
|
55
|
-
GlobalLibTypeName.scenario,
|
56
|
-
];
|
57
|
-
export const CoreLibCategoryArr = [
|
58
|
-
GlobalLibTypeName.angularLib,
|
59
|
-
GlobalLibTypeName.isomorphicLib,
|
60
|
-
GlobalLibTypeName.angularClient,
|
61
|
-
GlobalLibTypeName.electronClient,
|
62
|
-
GlobalLibTypeName.ionicClient,
|
63
|
-
GlobalLibTypeName.docker,
|
64
|
-
'common'
|
65
|
-
];
|
66
|
-
//#endregion
|
67
|
-
const allowedEnvironments = ['static', 'dev', 'prod', 'stage', 'online', 'test', 'qa', 'custom'];
|
68
|
-
const allowedEnvironmentsObj = {};
|
69
|
-
allowedEnvironments.forEach(s => {
|
70
|
-
allowedEnvironmentsObj[s] = s;
|
71
|
-
});
|
72
|
-
const firedev = 'firedev';
|
73
|
-
const morphi = 'morphi';
|
74
|
-
const urlMorphi = 'https://github.com/darekf77/morphi.git';
|
75
|
-
const filesNotAllowedToClean = {
|
76
|
-
_gitignore: '.gitignore',
|
77
|
-
_npmrc: '.npmrc',
|
78
|
-
_npmignore: '.npmignore',
|
79
|
-
tslint_json: 'tslint.json',
|
80
|
-
_editorconfig: '.editorconfig',
|
81
|
-
_angularCli_json: '.angular-cli.json',
|
82
|
-
_vscode_launch_json: '.vscode/launch.json',
|
83
|
-
};
|
84
|
-
const file = Object.assign({ _bowerrc: '.bowerrc', bower_json: 'bower.json', controllers_ts: 'controllers.ts', entities_ts: 'entities.ts', angular_json: 'angular.json', autob_actions_js: 'auto-actions.js', local_config_js: 'local-config.js', build_config_js: 'build-config.js', local_config: 'local-config', start_backend_ts: 'start.backend.ts', package_json: 'package.json', result_packages_json: 'result-packages.json', package_json5: 'package.json5', package_json__tnp_json: 'package.json_tnp.json', package_json__tnp_json5: 'package.json_tnp.json5', package_json__devDependencies_json: 'package.json_devDependencies.json', yarn_lock: 'yarn.lock', package_lock_json: 'package-lock.json', tnpEnvironment_json: 'tmp-environment.json', environment: 'environment', environment_js: 'environment.js', tmp_transaction_pid_txt: 'tmp-transaction-pid.txt', manifest_webmanifest: 'manifest.webmanifest', publicApi_ts: 'public_api.ts', publicApi_d_ts: 'public_api.d.ts', publicapi_ts: 'public-api.ts', _babelrc: '.babelrc', index_d_ts: 'index.d.ts', index_ts: 'index.ts', index_js: 'index.js', index_js_map: 'index.js.map', db_json: 'db.json', db_for_tests_json: 'db-for-tests.json', tmpDockerImageId: 'tmp-docker-image-id', tmp_recent_json: 'recent.json', tmpIsomorphicPackagesJson: 'tmp-isomorphic-packages.json', tsconfig_json: 'tsconfig.json', README_MD: 'README.md', server_key: 'server.key', server_cert: 'server.cert', server_chain_cert: 'server-chain.cert', meta_config_md: 'meta-content.md' }, filesNotAllowedToClean);
|
85
|
-
const packageJsonSplit = [
|
86
|
-
file.package_json__tnp_json,
|
87
|
-
file.package_json__tnp_json5,
|
88
|
-
file.package_json__devDependencies_json,
|
89
|
-
];
|
90
|
-
const tempFolders = {
|
91
|
-
bundle: 'bundle',
|
92
|
-
vendor: 'vendor',
|
93
|
-
docs: 'docs',
|
94
|
-
dist: 'dist',
|
95
|
-
tmp: 'tmp',
|
96
|
-
tmpBundleRelease: 'tmp-bundle-release',
|
97
|
-
tempSrc: 'tmp-src',
|
98
|
-
tempSrcDist: 'tmp-src-dist',
|
99
|
-
previewDistApp: 'dist-app',
|
100
|
-
preview: 'preview',
|
101
|
-
browser: 'browser',
|
102
|
-
_browser: '.browser',
|
103
|
-
module: 'module',
|
104
|
-
backup: 'backup',
|
105
|
-
node_modules: 'node_modules',
|
106
|
-
client: 'client',
|
107
|
-
tnp_tests_context: 'tmp-tests-context',
|
108
|
-
tmpPackage: 'tmp-package',
|
109
|
-
tmpScenarios: 'tmp-scenarios',
|
110
|
-
tmpTestsEnvironments: 'tmp-tests-environments',
|
111
|
-
testsEnvironments: 'tests-environments',
|
112
|
-
};
|
113
|
-
const stylesFilesExtension = [
|
114
|
-
'css',
|
115
|
-
'sass',
|
116
|
-
'scss',
|
117
|
-
'less',
|
118
|
-
];
|
119
|
-
const folder = Object.assign({ scripts: 'scripts', scenarios: 'scenarios', bower: 'bower', src: 'src', out: 'out', custom: 'custom', components: 'components', assets: 'assets', apps: 'apps',
|
120
|
-
// entities: 'entities',
|
121
|
-
// controllers: 'controllers',
|
122
|
-
// projects: 'projects',
|
123
|
-
workspace: 'workspace', container: 'container', bin: 'bin', _bin: '.bin', _vscode: '.vscode', project: 'project', external: 'external', tmpDist: 'tmp-dist', tmpFor(d) {
|
124
|
-
return `tmp-src-${d}`;
|
125
|
-
} }, tempFolders);
|
126
|
-
// @LAST RESOLVE TNP LOCATION !!! for each context and RELEASE TNP-CONFIG
|
127
|
-
let dirnameForTnp;
|
128
|
-
let firedevProjectsRelative = `../firedev-projects`;
|
129
|
-
const moduleNameAngularLib = [
|
130
|
-
folder.components,
|
131
|
-
folder.module,
|
132
|
-
folder.dist,
|
133
|
-
folder.browser,
|
134
|
-
];
|
135
|
-
const moduleNameIsomorphicLib = [
|
136
|
-
folder.src,
|
137
|
-
folder.dist,
|
138
|
-
folder.browser,
|
139
|
-
];
|
140
|
-
const argsReplacementsBuild = {
|
141
|
-
'baw': 'build:app:watch',
|
142
|
-
'ba': 'build:app',
|
143
|
-
'bap': 'build:app:prod',
|
144
|
-
'bdw': 'build:dist:watch',
|
145
|
-
'bw': 'build:watch',
|
146
|
-
'bng': 'build:ng',
|
147
|
-
'bngw': 'build:ng:watch',
|
148
|
-
'bdpw': 'build:dist:prod:watch',
|
149
|
-
'bd': 'build:dist',
|
150
|
-
'bb': 'build:bundle',
|
151
|
-
'bbp': 'build:bundle:prod',
|
152
|
-
'bbpw': 'build:bundle:prod:watch',
|
153
|
-
'bbw': 'build:bundle:watch',
|
154
|
-
'sb': 'static:build',
|
155
|
-
'sbp': 'static:build:prod',
|
156
|
-
'sbd': 'static:build:dist',
|
157
|
-
'sbl': 'static:build:lib',
|
158
|
-
'sba': 'static:build:app',
|
159
|
-
'cb': 'clean:build'
|
160
|
-
};
|
161
|
-
const ɵ0 = key => filesNotAllowedToClean[key];
|
162
|
-
export const config = {
|
163
|
-
coreProjectVersions: ['v1', 'v2', 'v3'],
|
164
|
-
quickFixes: {
|
165
|
-
missingLibs: [
|
166
|
-
'react-native-sqlite-storage'
|
167
|
-
]
|
168
|
-
},
|
169
|
-
packageJsonSplit,
|
170
|
-
regexString: {
|
171
|
-
pathPartStringRegex: `(\/([a-zA-Z0-9]|\\-|\\_|\\+|\\.)*)`
|
172
|
-
},
|
173
|
-
placeholders: {
|
174
|
-
forProjectsInEnvironmentFile: '//<PLACEHOLDER_FOR_PROJECTS>'
|
175
|
-
},
|
176
|
-
array: {
|
177
|
-
isomorphicPackages: 'isomorphicPackages'
|
178
|
-
},
|
179
|
-
defaultFrameworkVersion: 'v3',
|
180
|
-
CONST: {
|
181
|
-
UNIT_TEST_TIMEOUT: 30000,
|
182
|
-
INTEGRATION_TEST: 30000,
|
183
|
-
BACKEND_HTTP_REQUEST_TIMEOUT: 3000,
|
184
|
-
},
|
185
|
-
debug: {
|
186
|
-
sourceModifier: [],
|
187
|
-
baselineSiteJoin: {
|
188
|
-
DEBUG_PATHES: [
|
189
|
-
// "src/apps/auth/AuthController.ts",
|
190
|
-
// '/src/app/+preview-components/preview-components.component.ts',
|
191
|
-
// '/src/controllers.ts',
|
192
|
-
// '/src/app/+preview-components/components/+preview-buildtnpprocess/preview-buildtnpprocess.component.ts'
|
193
|
-
],
|
194
|
-
DEBUG_MERGE_PATHES: [
|
195
|
-
// "src/apps/auth/AuthController.ts",
|
196
|
-
// '/src/app/+preview-components/components/+preview-buildtnpprocess/preview-buildtnpprocess.component.ts'
|
197
|
-
// '/components/formly/base-components/editor/editor-wrapper.component.ts'
|
198
|
-
// '/src/app/+preview-components/components/+preview-buildtnpprocess/preview-buildtnpprocess.component.ts'
|
199
|
-
]
|
200
|
-
}
|
201
|
-
},
|
202
|
-
frameworkName: (global['frameworkName'] ? global['frameworkName'] : 'tnp'),
|
203
|
-
startPort: 6001,
|
204
|
-
frameworks: ['bootstrap', 'ionic', 'material'],
|
205
|
-
allowedEnvironments,
|
206
|
-
folder,
|
207
|
-
tempFolders,
|
208
|
-
filesNotAllowedToClean: Object.keys(filesNotAllowedToClean).map(ɵ0),
|
209
|
-
file,
|
210
|
-
default: {
|
211
|
-
cloud: {
|
212
|
-
environment: {
|
213
|
-
name: 'online'
|
214
|
-
}
|
215
|
-
}
|
216
|
-
},
|
217
|
-
SUBERIZED_PREFIX: `---stuberized`,
|
218
|
-
names: {
|
219
|
-
env: allowedEnvironmentsObj,
|
220
|
-
baseline: 'baseline',
|
221
|
-
defaultServer: 'default server',
|
222
|
-
},
|
223
|
-
reservedArgumentsNamesUglify: [
|
224
|
-
'reservedExpOne',
|
225
|
-
'reservedExpSec'
|
226
|
-
],
|
227
|
-
extensions: {
|
228
|
-
/**
|
229
|
-
* Modify source: import,export, requires
|
230
|
-
*/
|
231
|
-
get modificableByReplaceFn() {
|
232
|
-
return [
|
233
|
-
'ts',
|
234
|
-
'js',
|
235
|
-
...stylesFilesExtension,
|
236
|
-
].map(f => `.${f}`);
|
237
|
-
},
|
238
|
-
},
|
239
|
-
notFiredevProjects: [
|
240
|
-
'unknow', 'unknow-npm-project', 'scenario', 'navi'
|
241
|
-
],
|
242
|
-
/**
|
243
|
-
* Build allowed types
|
244
|
-
*/
|
245
|
-
allowedTypes: {
|
246
|
-
/**
|
247
|
-
* Projects for build:app:watch command
|
248
|
-
*/
|
249
|
-
app: [
|
250
|
-
GlobalLibTypeName.angularClient,
|
251
|
-
GlobalLibTypeName.angularLib,
|
252
|
-
GlobalLibTypeName.isomorphicLib,
|
253
|
-
GlobalLibTypeName.ionicClient,
|
254
|
-
GlobalLibTypeName.docker,
|
255
|
-
GlobalLibTypeName.container,
|
256
|
-
GlobalLibTypeName.vscodeExt,
|
257
|
-
],
|
258
|
-
/**
|
259
|
-
* Projects for build:(dist|bundle):(watch) command
|
260
|
-
*/
|
261
|
-
libs: [
|
262
|
-
GlobalLibTypeName.angularLib,
|
263
|
-
GlobalLibTypeName.isomorphicLib,
|
264
|
-
GlobalLibTypeName.workspace,
|
265
|
-
GlobalLibTypeName.container,
|
266
|
-
GlobalLibTypeName.docker,
|
267
|
-
GlobalLibTypeName.vscodeExt,
|
268
|
-
]
|
269
|
-
},
|
270
|
-
moduleNameAngularLib,
|
271
|
-
moduleNameIsomorphicLib,
|
272
|
-
filesExtensions: {
|
273
|
-
filetemplate: 'filetemplate',
|
274
|
-
styles: stylesFilesExtension,
|
275
|
-
},
|
276
|
-
projectTypes: {
|
277
|
-
forNpmLibs: [
|
278
|
-
GlobalLibTypeName.angularLib,
|
279
|
-
GlobalLibTypeName.isomorphicLib,
|
280
|
-
],
|
281
|
-
with: {
|
282
|
-
angularAsCore: [
|
283
|
-
GlobalLibTypeName.angularClient,
|
284
|
-
GlobalLibTypeName.angularLib,
|
285
|
-
GlobalLibTypeName.ionicClient,
|
286
|
-
],
|
287
|
-
componetsAsSrc: [
|
288
|
-
GlobalLibTypeName.angularLib,
|
289
|
-
],
|
290
|
-
}
|
291
|
-
},
|
292
|
-
// environmentName,
|
293
|
-
localLibs: [
|
294
|
-
'eslint',
|
295
|
-
'mkdirp',
|
296
|
-
'gulp',
|
297
|
-
'npm-run',
|
298
|
-
'rimraf',
|
299
|
-
'nodemon',
|
300
|
-
'release-it',
|
301
|
-
'tsc',
|
302
|
-
'watch',
|
303
|
-
'http-server',
|
304
|
-
'ts-node',
|
305
|
-
'sort-package-json',
|
306
|
-
'concurrently',
|
307
|
-
'sloc',
|
308
|
-
'morphi'
|
309
|
-
],
|
310
|
-
helpAlias: [
|
311
|
-
'-h',
|
312
|
-
'--help',
|
313
|
-
'-help',
|
314
|
-
'help'
|
315
|
-
],
|
316
|
-
required: {
|
317
|
-
npm: [
|
318
|
-
{ name: 'extract-zip', version: '1.6.7' },
|
319
|
-
{ name: 'watch', version: '1.0.2' },
|
320
|
-
{ name: 'cpr' },
|
321
|
-
{ name: 'check-node-version' },
|
322
|
-
{ name: 'npm-run', version: '4.1.2' },
|
323
|
-
{ name: 'rimraf' },
|
324
|
-
{ name: 'mkdirp' },
|
325
|
-
{ name: 'renamer', version: '2.0.1' },
|
326
|
-
{ name: 'nodemon' },
|
327
|
-
{ name: 'madge' },
|
328
|
-
{ name: 'yarn' },
|
329
|
-
{ name: 'http-server' },
|
330
|
-
{ name: 'increase-memory-limit' },
|
331
|
-
{ name: 'bower' },
|
332
|
-
{ name: 'fkill', installName: 'fkill-cli' },
|
333
|
-
// { name: 'yo' },
|
334
|
-
{ name: 'mocha' },
|
335
|
-
// { name: 'chai' },
|
336
|
-
{ name: 'ts-node' },
|
337
|
-
{ name: 'vsce' },
|
338
|
-
// { name: 'stmux' },
|
339
|
-
{ name: 'webpack-bundle-analyzer' },
|
340
|
-
// { name: 'ng', installName: '@angular/cli' },
|
341
|
-
// { name: 'ngx-pwa-icons', version: '0.1.2' },
|
342
|
-
// { name: 'real-favicon', installName: 'cli-real-favicon' },
|
343
|
-
{ name: 'babel', installName: 'babel-cli' },
|
344
|
-
{ name: 'javascript-obfuscator' },
|
345
|
-
{ name: 'uglifyjs', installName: 'uglify-js' },
|
346
|
-
],
|
347
|
-
niceTools: [
|
348
|
-
{ name: 'speed-test' },
|
349
|
-
{ name: 'npm-name' },
|
350
|
-
{ name: 'vantage', platform: 'linux' },
|
351
|
-
{ name: 'clinic', platform: 'linux' },
|
352
|
-
{ name: 'vtop', platform: 'linux' },
|
353
|
-
{ name: 'public-ip' },
|
354
|
-
{ name: 'empty-trash' },
|
355
|
-
{ name: 'is-up' },
|
356
|
-
{ name: 'is-online' },
|
357
|
-
{ name: 'ttystudio' },
|
358
|
-
{ name: 'bcat' },
|
359
|
-
{ name: 'wifi-password', installName: 'wifi-password-cli' },
|
360
|
-
{ name: 'wallpaper', installName: 'wallpaper-cli' },
|
361
|
-
{ name: 'brightness', installName: 'brightness-cli' },
|
362
|
-
{ name: 'subdownloader' },
|
363
|
-
{ name: 'rtail' },
|
364
|
-
{ name: 'iponmap' },
|
365
|
-
{ name: 'jsome' },
|
366
|
-
{ name: 'drawille', isNotCli: true },
|
367
|
-
{ name: 'columnify', isNotCli: true },
|
368
|
-
{ name: 'multispinner', isNotCli: true },
|
369
|
-
{ name: 'cfonts' }, // draw super nice fonts in console
|
370
|
-
],
|
371
|
-
programs: [,
|
372
|
-
{
|
373
|
-
name: 'code',
|
374
|
-
website: 'https://code.visualstudio.com/'
|
375
|
-
}
|
376
|
-
]
|
377
|
-
}
|
378
|
-
};
|
379
|
-
export { ɵ0 };
|
380
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6Im5nOi8vdG5wLWNvbmZpZy8iLCJzb3VyY2VzIjpbImNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTs7OztHQUlHO0FBSUgsSUFBSSxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUU7SUFDNUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQztDQUNwQjtBQUVELE9BQU8sRUFBRSxXQUFXLElBQUksT0FBTyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFxRTFELE1BQU0sQ0FBQyxNQUFNLDRCQUE0QixHQUFvQztJQUMzRSxHQUFHLEVBQUU7UUFDSCxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUU7UUFDbEIsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUU7UUFDckMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFO1FBQ2YsRUFBRSxJQUFJLEVBQUUsb0JBQW9CLEVBQUU7UUFDOUIsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFO0tBQ2pCO0lBQ0QsUUFBUSxFQUFFO0lBQ1IsSUFBSTtJQUNKLGtCQUFrQjtJQUNsQiw4Q0FBOEM7SUFDOUMsSUFBSTtLQUNrQztDQUN6QyxDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUc7SUFDL0IsYUFBYSxFQUFFLGdCQUFnQjtJQUMvQixVQUFVLEVBQUUsYUFBYTtJQUN6QixjQUFjLEVBQUUsaUJBQWlCO0lBQ2pDLFFBQVEsRUFBRSxXQUFXO0lBQ3JCLGFBQWEsRUFBRSxnQkFBZ0I7SUFDL0IsV0FBVyxFQUFFLGNBQWM7SUFDM0IsU0FBUyxFQUFFLFdBQVc7SUFDdEIsU0FBUyxFQUFFLFdBQVc7SUFDdEIsTUFBTSxFQUFFLFFBQVE7SUFDaEIsZ0JBQWdCLEVBQUUsb0JBQW9CO0lBQ3RDLFNBQVMsRUFBRSxZQUFZO0lBQ3ZCLFNBQVMsRUFBRSxZQUFZO0lBQ3ZCLGlCQUFpQixFQUFFLHFCQUFx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RUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7WUFDckMsRUFBRSxJQUFJLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7WUFDeEMsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLEVBQUUsbUNBQW1DO1NBQ3hEO1FBQ0QsUUFBUSxFQUFFLENBQUM7WUFDVDtnQkFDRSxJQUFJLEVBQUUsTUFBTTtnQkFDWixPQUFPLEVBQUUsZ0NBQWdDO2FBQzFDO1NBQ0Y7S0FDRjtDQUNGLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuLyoqXG4gKiBEYXJpdXN6IEZpbGlwaWFrXG4gKiBAYXV0aG9yIGRhcmVrZjc3QGdtYWlsLmNvbVxuICogUmVjb21tZW5kZWQgY29uZmlnIGZvciBhbGwgaXNvbW9ycGhpYyBsaWJzICpcbiAqL1xuXG5cbmRlY2xhcmUgY29uc3QgZ2xvYmFsOiBhbnk7XG5pZiAoZ2xvYmFsICYmICFnbG9iYWxbJ0VOViddKSB7XG4gIGdsb2JhbFsnRU5WJ10gPSB7fTtcbn1cblxuZXhwb3J0IHsgQ29yZUhlbHBlcnMgYXMgSGVscGVycyB9IGZyb20gJ3RucC1jb3JlL2Jyb3dzZXInO1xuXG4vLyNyZWdpb24gY29uZmlnIG1vZGVsc1xuXG5leHBvcnQgbmFtZXNwYWNlIENvbmZpZ01vZGVscyB7XG4gIGV4cG9ydCB0eXBlIEVudmlyb25tZW50TmFtZSA9ICdsb2NhbCcgfCAnc3RhdGljJyB8ICdkZXYnIHwgJ3N0YWdlJyB8ICdwcm9kJyB8ICdvbmxpbmUnIHwgJ3Rlc3QnIHwgJ3FhJyB8ICdjdXN0b20nO1xuICBleHBvcnQgdHlwZSBVSUZyYW1ld29yayA9ICdib290c3RyYXAnIHwgJ21hdGVyaWFsJyB8ICdpb25pYyc7XG4gIGV4cG9ydCB0eXBlIEZyYW1ld29ya1ZlcnNpb24gPSAndjEnIHwgJ3YyJyB8ICd2Myc7XG4gIGV4cG9ydCB0eXBlIEN1dGFibGVGaWxlRXh0ID0gJ3Njc3MnIHwgJ2NzcycgfCAnc2FzcycgfCAnaHRtbCcgfCAndHMnO1xuXG4gIGV4cG9ydCB0eXBlIEZpbGVFeHRlbnNpb24gPSAndHMnIHwgJ2pzJyB8ICdqc29uJyB8ICdodG1sJyB8ICdqcGcnIHwgJ3BuZycgfCAndHh0JyB8IEN1dGFibGVGaWxlRXh0O1xuXG4gIGV4cG9ydCB0eXBlIEh0dHBNZXRob2QgPSAnZ2V0JyB8ICdwb3N0JyB8ICdwdXQnIHwgJ2RlbGV0ZScgfCAncGF0Y2gnIHwgJ2hlYWQnIHwgJ2pzb25wJztcbiAgZXhwb3J0IHR5cGUgUGFyYW1UeXBlID0gJ1BhdGgnIHwgJ1F1ZXJ5JyB8ICdDb29raWUnIHwgJ0hlYWRlcicgfCAnQm9keSc7XG4gIGV4cG9ydCB0eXBlIFRzVXNhZ2UgPSAnaW1wb3J0JyB8ICdleHBvcnQnO1xuXG4gIGV4cG9ydCB0eXBlIExpYlR5cGUgPSAndW5rbm93J1xuICAgIHwgJ2lzb21vcnBoaWMtbGliJ1xuICAgIHwgJ2FuZ3VsYXItbGliJyAvLyBodHRwczovL2NsaS5hbmd1bGFyLmlvL1xuICAgIHwgJ2VsZWN0cm9uLWNsaWVudCcgLy8gaHR0cHM6Ly9naXRodWIuY29tL21heGltZWdyaXMvYW5ndWxhci1lbGVjdHJvblxuICAgIHwgJ2lvbmljLWxpYidcbiAgICB8ICdhbmd1bGFyLWNsaWVudCdcbiAgICB8ICdpb25pYy1jbGllbnQnXG4gICAgfCAnd29ya3NwYWNlJ1xuICAgIHwgJ2NvbnRhaW5lcidcbiAgICB8ICdkb2NrZXInXG4gICAgfCAndnNjb2RlLWV4dCdcbiAgICB8ICdjaHJvbWUtZXh0J1xuICAgIHwgJ3Vua25vdy1ucG0tcHJvamVjdCdcbiAgICB8ICdzY2VuYXJpbydcbiAgICB8ICduYXZpJ1xuICAgIHwgJ2dhbWUtZW5naW5lLWxpYi1waXhpJyAvLyBodHRwczovL2dpdGh1Yi5jb20vcGl4aWpzL3BpeGkuanNcbiAgICB8ICdnYW1lLWVuZ2luZS1saWItcGhhc2VyJyAvLyBodHRwczovL2dpdGh1Yi5jb20vcGhvdG9uc3Rvcm0vcGhhc2VyXG4gICAgfCAnZ2FtZS1lbmdpbmUtbGliLWV4Y2FsaWJ1cicgLy8gaHR0cHM6Ly9naXRodWIuY29tL2V4Y2FsaWJ1cmpzL0V4Y2FsaWJ1clxuICAgIHwgJ2dhbWUtZW5naW5lLWxpYi1iYWJ5bG9uJyAvLyBodHRwczovL2dpdGh1Yi5jb20vQmFieWxvbkpTL0JhYnlsb24uanNcbiAgICA7XG5cbiAgZXhwb3J0IHR5cGUgTmV3RmFjdG9yeVR5cGUgPSBMaWJUeXBlIHwgJ21vZGVsJyB8ICdzaW5nbGUtZmlsZS1wcm9qZWN0JztcbiAgZXhwb3J0IHR5cGUgQ29yZUxpYkNhdGVnb3J5ID0gTGliVHlwZSB8ICdjb21tb24nO1xuICBleHBvcnQgdHlwZSBQb3NpdGlvbiA9IHtcbiAgICB4OiBudW1iZXI7XG4gICAgeTogbnVtYmVyO1xuICB9XG5cbiAgZXhwb3J0IHR5cGUgU2l6ZSA9IHtcbiAgICB3OiBudW1iZXI7XG4gICAgaDogbnVtYmVyO1xuICB9XG5cblxuICBleHBvcnQgaW50ZXJmYWNlIEdsb2JhbE5wbURlcGVuZGVuY3kge1xuICAgIG5hbWU6IHN0cmluZzsgaW5zdGFsbE5hbWU/OiBzdHJpbmc7IHZlcnNpb24/OiBzdHJpbmcgfCBudW1iZXI7XG4gIH1cblxuICBleHBvcnQgaW50ZXJmYWNlIEdsb2JhbENvbW1hbmRMaW5lUHJvZ3JhbURlcGVuZGVuY3kge1xuICAgIG5hbWU6IHN0cmluZzsgd2Vic2l0ZTogc3RyaW5nOyB2ZXJzaW9uPzogc3RyaW5nO1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgR2xvYmFsRGVwZW5kZW5jaWVzIHtcbiAgICBucG0/OiBHbG9iYWxOcG1EZXBlbmRlbmN5W107XG4gICAgcHJvZ3JhbXM/OiBHbG9iYWxDb21tYW5kTGluZVByb2dyYW1EZXBlbmRlbmN5W107XG4gIH1cblxuICBleHBvcnQgdHlwZSBGaWxlRXZlbnQgPSAnY3JlYXRlZCcgfCAnY2hhbmdlZCcgfCAncmVtb3ZlZCcgfCAncmVuYW1lJztcbiAgZXhwb3J0IHR5cGUgT3V0Rm9sZGVyID0gJ2Rpc3QnIHwgJ2J1bmRsZScgfCAnYnJvd3Nlcic7XG4gIGV4cG9ydCB0eXBlIEZvcm1seUlucHV0VHlwZSA9ICdpbnB1dCcgfCAnc3dpdGNoJyB8ICdkYXRlcGlja2VyJyB8ICdyZXBlYXQnIHwgJ2dyb3VwJztcbiAgZXhwb3J0IHR5cGUgRGF0YWJhc2VUeXBlID0gJ3NxbGl0ZScgfCAnbXlzcWwnO1xuXG59XG5cbmV4cG9ydCBjb25zdCBHbG9iYWxJc29tb3JwaGljRGVwZW5kZW5jaWVzOiBDb25maWdNb2RlbHMuR2xvYmFsRGVwZW5kZW5jaWVzID0ge1xuICBucG06IFtcbiAgICB7IG5hbWU6ICdyaW1yYWYnIH0sXG4gICAgeyBuYW1lOiAnbnBtLXJ1bicsIHZlcnNpb246ICc0LjEuMicgfSxcbiAgICB7IG5hbWU6ICdjcHInIH0sXG4gICAgeyBuYW1lOiAnY2hlY2stbm9kZS12ZXJzaW9uJyB9LFxuICAgIHsgbmFtZTogJ3ZzY2UnIH0sXG4gIF0sXG4gIHByb2dyYW1zOiBbXG4gICAgLy8ge1xuICAgIC8vICAgbmFtZTogJ2NvZGUnLFxuICAgIC8vICAgd2Vic2l0ZTogJ2h0dHBzOi8vY29kZS52aXN1YWxzdHVkaW8uY29tLydcbiAgICAvLyB9XG4gIF0gYXMgeyBuYW1lOiBzdHJpbmc7IHdlYnNpdGU6IHN0cmluZyB9W11cbn1cblxuZXhwb3J0IGNvbnN0IEdsb2JhbExpYlR5cGVOYW1lID0ge1xuICBpc29tb3JwaGljTGliOiAnaXNvbW9ycGhpYy1saWInLFxuICBhbmd1bGFyTGliOiAnYW5ndWxhci1saWInLFxuICBlbGVjdHJvbkNsaWVudDogJ2VsZWN0cm9uLWNsaWVudCcsXG4gIGlvbmljTGliOiAnaW9uaWMtbGliJyxcbiAgYW5ndWxhckNsaWVudDogJ2FuZ3VsYXItY2xpZW50JyxcbiAgaW9uaWNDbGllbnQ6ICdpb25pYy1jbGllbnQnLFxuICB3b3Jrc3BhY2U6ICd3b3Jrc3BhY2UnLFxuICBjb250YWluZXI6ICdjb250YWluZXInLFxuICBkb2NrZXI6ICdkb2NrZXInLFxuICB1bmtub3dOcG1Qcm9qZWN0OiAndW5rbm93LW5wbS1wcm9qZWN0JyxcbiAgdnNjb2RlRXh0OiAndnNjb2RlLWV4dCcsXG4gIGNocm9tZUV4dDogJ2Nocm9tZS1leHQnLFxuICBzaW5nbGVGaWxlUHJvamVjdDogJ3NpbmdsZS1maWxlLXByb2plY3QnLFxuICBuYXZpOiAnbmF2aScsXG4gIHNjZW5hcmlvOiAnc2NlbmFyaW8nXG59O1xuXG5leHBvcnQgY29uc3QgTGliVHlwZUFycjogQ29uZmlnTW9kZWxzLkxpYlR5cGVbXSA9IFtcbiAgR2xvYmFsTGliVHlwZU5hbWUuYW5ndWxhckxpYixcbiAgR2xvYmFsTGliVHlwZU5hbWUuaXNvbW9ycGhpY0xpYixcbiAgR2xvYmFsTGliVHlwZU5hbWUuYW5ndWxhckNsaWVudCxcbiAgR2xvYmFsTGliVHlwZU5hbWUuaW9uaWNDbGllbnQsXG4gIEdsb2JhbExpYlR5cGVOYW1lLmVsZWN0cm9uQ2xpZW50LFxuICBHbG9iYWxMaWJUeXBlTmFtZS53b3Jrc3BhY2UsXG4gIEdsb2JhbExpYlR5cGVOYW1lLmNvbnRhaW5lcixcbiAgR2xvYmFsTGliVHlwZU5hbWUuZG9ja2VyLFxuICBHbG9iYWxMaWJUeXBlTmFtZS51bmtub3dOcG1Qcm9qZWN0LFxuICBHbG9iYWxMaWJUeXBlTmFtZS52c2NvZGVFeHQsXG4gIEdsb2JhbExpYlR5cGVOYW1lLmNocm9tZUV4dCxcbiAgR2xvYmFsTGliVHlwZU5hbWUubmF2aSxcbiAgR2xvYmFsTGliVHlwZU5hbWUuc2NlbmFyaW8sXG5dIGFzIENvbmZpZ01vZGVscy5MaWJUeXBlW107XG5cblxuZXhwb3J0IGNvbnN0IENvcmVMaWJDYXRlZ29yeUFycjogQ29uZmlnTW9kZWxzLkNvcmVMaWJDYXRlZ29yeVtdID0gWyAvLyBUT0RPIHRoaXMgaXMgZm9yIHdoYXQgP1xuICBHbG9iYWxMaWJUeXBlTmFtZS5hbmd1bGFyTGliLFxuICBHbG9iYWxMaWJUeXBlTmFtZS5pc29tb3JwaGljTGliLFxuICBHbG9iYWxMaWJUeXBlTmFtZS5hbmd1bGFyQ2xpZW50LFxuICBHbG9iYWxMaWJUeXBlTmFtZS5lbGVjdHJvbkNsaWVudCxcbiAgR2xvYmFsTGliVHlwZU5hbWUuaW9uaWNDbGllbnQsXG4gIEdsb2JhbExpYlR5cGVOYW1lLmRvY2tlcixcbiAgJ2NvbW1vbidcbl0gYXMgQ29uZmlnTW9kZWxzLkNvcmVMaWJDYXRlZ29yeVtdO1xuXG4vLyNlbmRyZWdpb25cblxuXG5cbmNvbnN0IGFsbG93ZWRFbnZpcm9ubWVudHM6IENvbmZpZ01vZGVscy5FbnZpcm9ubWVudE5hbWVbXSA9IFsnc3RhdGljJywgJ2RldicsICdwcm9kJywgJ3N0YWdlJywgJ29ubGluZScsICd0ZXN0JywgJ3FhJywgJ2N1c3RvbSddO1xuY29uc3QgYWxsb3dlZEVudmlyb25tZW50c09iaiA9IHt9O1xuYWxsb3dlZEVudmlyb25tZW50cy5mb3JFYWNoKHMgPT4ge1xuICBhbGxvd2VkRW52aXJvbm1lbnRzT2JqW3NdID0gc1xufSk7XG5cbmNvbnN0IGZpcmVkZXYgPSAnZmlyZWRldic7XG5jb25zdCBtb3JwaGkgPSAnbW9ycGhpJztcblxuY29uc3QgdXJsTW9ycGhpID0gJ2h0dHBzOi8vZ2l0aHViLmNvbS9kYXJla2Y3Ny9tb3JwaGkuZ2l0JztcblxuY29uc3QgZmlsZXNOb3RBbGxvd2VkVG9DbGVhbiA9IHtcbiAgX2dpdGlnbm9yZTogJy5naXRpZ25vcmUnLFxuICBfbnBtcmM6ICcubnBtcmMnLFxuICBfbnBtaWdub3JlOiAnLm5wbWlnbm9yZScsXG4gIHRzbGludF9qc29uOiAndHNsaW50Lmpzb24nLFxuICBfZWRpdG9yY29uZmlnOiAnLmVkaXRvcmNvbmZpZycsXG4gIF9hbmd1bGFyQ2xpX2pzb246ICcuYW5ndWxhci1jbGkuanNvbicsXG4gIF92c2NvZGVfbGF1bmNoX2pzb246ICcudnNjb2RlL2xhdW5jaC5qc29uJyxcbn1cblxuY29uc3QgZmlsZSA9IHtcbiAgX2Jvd2VycmM6ICcuYm93ZXJyYycsXG4gIGJvd2VyX2pzb246ICdib3dlci5qc29uJyxcbiAgY29udHJvbGxlcnNfdHM6ICdjb250cm9sbGVycy50cycsXG4gIGVudGl0aWVzX3RzOiAnZW50aXRpZXMudHMnLFxuICBhbmd1bGFyX2pzb246ICdhbmd1bGFyLmpzb24nLFxuICBhdXRvYl9hY3Rpb25zX2pzOiAnYXV0by1hY3Rpb25zLmpzJyxcbiAgbG9jYWxfY29uZmlnX2pzOiAnbG9jYWwtY29uZmlnLmpzJyxcbiAgYnVpbGRfY29uZmlnX2pzOiAnYnVpbGQtY29uZmlnLmpzJyxcbiAgbG9jYWxfY29uZmlnOiAnbG9jYWwtY29uZmlnJyxcbiAgc3RhcnRfYmFja2VuZF90czogJ3N0YXJ0LmJhY2tlbmQudHMnLFxuICBwYWNrYWdlX2pzb246ICdwYWNrYWdlLmpzb24nLFxuICByZXN1bHRfcGFja2FnZXNfanNvbjogJ3Jlc3VsdC1wYWNrYWdlcy5qc29uJyxcbiAgcGFja2FnZV9qc29uNTogJ3BhY2thZ2UuanNvbjUnLFxuICBwYWNrYWdlX2pzb25fX3RucF9qc29uOiAncGFja2FnZS5qc29uX3RucC5qc29uJyxcbiAgcGFja2FnZV9qc29uX190bnBfanNvbjU6ICdwYWNrYWdlLmpzb25fdG5wLmpzb241JyxcbiAgcGFja2FnZV9qc29uX19kZXZEZXBlbmRlbmNpZXNfanNvbjogJ3BhY2thZ2UuanNvbl9kZXZEZXBlbmRlbmNpZXMuanNvbicsXG4gIHlhcm5fbG9jazogJ3lhcm4ubG9jaycsXG4gIHBhY2thZ2VfbG9ja19qc29uOiAncGFja2FnZS1sb2NrLmpzb24nLFxuICB0bnBFbnZpcm9ubWVudF9qc29uOiAndG1wLWVudmlyb25tZW50Lmpzb24nLFxuICBlbnZpcm9ubWVudDogJ2Vudmlyb25tZW50JyxcbiAgZW52aXJvbm1lbnRfanM6ICdlbnZpcm9ubWVudC5qcycsXG4gIHRtcF90cmFuc2FjdGlvbl9waWRfdHh0OiAndG1wLXRyYW5zYWN0aW9uLXBpZC50eHQnLFxuICBtYW5pZmVzdF93ZWJtYW5pZmVzdDogJ21hbmlmZXN0LndlYm1hbmlmZXN0JyxcbiAgcHVibGljQXBpX3RzOiAncHVibGljX2FwaS50cycsXG4gIHB1YmxpY0FwaV9kX3RzOiAncHVibGljX2FwaS5kLnRzJyxcbiAgcHVibGljYXBpX3RzOiAncHVibGljLWFwaS50cycsXG4gIF9iYWJlbHJjOiAnLmJhYmVscmMnLFxuICBpbmRleF9kX3RzOiAnaW5kZXguZC50cycsXG4gIGluZGV4X3RzOiAnaW5kZXgudHMnLFxuICBpbmRleF9qczogJ2luZGV4LmpzJyxcbiAgaW5kZXhfanNfbWFwOiAnaW5kZXguanMubWFwJyxcbiAgZGJfanNvbjogJ2RiLmpzb24nLFxuICBkYl9mb3JfdGVzdHNfanNvbjogJ2RiLWZvci10ZXN0cy5qc29uJyxcbiAgdG1wRG9ja2VySW1hZ2VJZDogJ3RtcC1kb2NrZXItaW1hZ2UtaWQnLFxuICB0bXBfcmVjZW50X2pzb246ICdyZWNlbnQuanNvbicsXG4gIHRtcElzb21vcnBoaWNQYWNrYWdlc0pzb246ICd0bXAtaXNvbW9ycGhpYy1wYWNrYWdlcy5qc29uJyxcbiAgdHNjb25maWdfanNvbjogJ3RzY29uZmlnLmpzb24nLFxuICBSRUFETUVfTUQ6ICdSRUFETUUubWQnLFxuICBzZXJ2ZXJfa2V5OiAnc2VydmVyLmtleScsXG4gIHNlcnZlcl9jZXJ0OiAnc2VydmVyLmNlcnQnLFxuICBzZXJ2ZXJfY2hhaW5fY2VydDogJ3NlcnZlci1jaGFpbi5jZXJ0JyxcbiAgbWV0YV9jb25maWdfbWQ6ICdtZXRhLWNvbnRlbnQubWQnLFxuICAuLi5maWxlc05vdEFsbG93ZWRUb0NsZWFuXG59O1xuXG5jb25zdCBwYWNrYWdlSnNvblNwbGl0ID0gW1xuICBmaWxlLnBhY2thZ2VfanNvbl9fdG5wX2pzb24sXG4gIGZpbGUucGFja2FnZV9qc29uX190bnBfanNvbjUsXG4gIGZpbGUucGFja2FnZV9qc29uX19kZXZEZXBlbmRlbmNpZXNfanNvbixcbl07XG5cbmNvbnN0IHRlbXBGb2xkZXJzID0ge1xuICBidW5kbGU6ICdidW5kbGUnLFxuICB2ZW5kb3I6ICd2ZW5kb3InLFxuICBkb2NzOiAnZG9jcycsXG4gIGRpc3Q6ICdkaXN0JyxcbiAgdG1wOiAndG1wJyxcbiAgdG1wQnVuZGxlUmVsZWFzZTogJ3RtcC1idW5kbGUtcmVsZWFzZScsXG4gIHRlbXBTcmM6ICd0bXAtc3JjJyxcbiAgdGVtcFNyY0Rpc3Q6ICd0bXAtc3JjLWRpc3QnLFxuICBwcmV2aWV3RGlzdEFwcDogJ2Rpc3QtYXBwJyxcbiAgcHJldmlldzogJ3ByZXZpZXcnLFxuICBicm93c2VyOiAnYnJvd3NlcicsXG4gIF9icm93c2VyOiAnLmJyb3dzZXInLFxuICBtb2R1bGU6ICdtb2R1bGUnLFxuICBiYWNrdXA6ICdiYWNrdXAnLFxuICBub2RlX21vZHVsZXM6ICdub2RlX21vZHVsZXMnLFxuICBjbGllbnQ6ICdjbGllbnQnLFxuICB0bnBfdGVzdHNfY29udGV4dDogJ3RtcC10ZXN0cy1jb250ZXh0JyxcbiAgdG1wUGFja2FnZTogJ3RtcC1wYWNrYWdlJyxcbiAgdG1wU2NlbmFyaW9zOiAndG1wLXNjZW5hcmlvcycsXG4gIHRtcFRlc3RzRW52aXJvbm1lbnRzOiAndG1wLXRlc3RzLWVudmlyb25tZW50cycsXG4gIHRlc3RzRW52aXJvbm1lbnRzOiAndGVzdHMtZW52aXJvbm1lbnRzJyxcbn1cblxuY29uc3Qgc3R5bGVzRmlsZXNFeHRlbnNpb24gPSBbXG4gICdjc3MnLFxuICAnc2FzcycsXG4gICdzY3NzJyxcbiAgJ2xlc3MnLFxuXTtcblxuY29uc3QgZm9sZGVyID0ge1xuICBzY3JpcHRzOiAnc2NyaXB0cycsXG4gIHNjZW5hcmlvczogJ3NjZW5hcmlvcycsXG4gIGJvd2VyOiAnYm93ZXInLFxuICBzcmM6ICdzcmMnLFxuICBvdXQ6ICdvdXQnLFxuICBjdXN0b206ICdjdXN0b20nLFxuICBjb21wb25lbnRzOiAnY29tcG9uZW50cycsXG4gIGFzc2V0czogJ2Fzc2V0cycsXG4gIGFwcHM6ICdhcHBzJyxcbiAgLy8gZW50aXRpZXM6ICdlbnRpdGllcycsXG4gIC8vIGNvbnRyb2xsZXJzOiAnY29udHJvbGxlcnMnLFxuICAvLyBwcm9qZWN0czogJ3Byb2plY3RzJyxcbiAgd29ya3NwYWNlOiAnd29ya3NwYWNlJyxcbiAgY29udGFpbmVyOiAnY29udGFpbmVyJyxcbiAgYmluOiAnYmluJyxcbiAgX2JpbjogJy5iaW4nLFxuICBfdnNjb2RlOiAnLnZzY29kZScsXG4gIHByb2plY3Q6ICdwcm9qZWN0JyxcbiAgZXh0ZXJuYWw6ICdleHRlcm5hbCcsXG4gIHRtcERpc3Q6ICd0bXAtZGlzdCcsXG4gIHRtcEZvcihkOiBDb25maWdNb2RlbHMuT3V0Rm9sZGVyKSB7XG4gICAgcmV0dXJuIGB0bXAtc3JjLSR7ZH1gO1xuICB9LFxuICAuLi50ZW1wRm9sZGVyc1xufTtcblxuLy8gQExBU1QgUkVTT0xWRSBUTlAgTE9DQVRJT04gISEhIGZvciBlYWNoIGNvbnRleHQgYW5kIFJFTEVBU0UgVE5QLUNPTkZJR1xubGV0IGRpcm5hbWVGb3JUbnA6IHN0cmluZztcblxubGV0IGZpcmVkZXZQcm9qZWN0c1JlbGF0aXZlID0gYC4uL2ZpcmVkZXYtcHJvamVjdHNgO1xuXG5cblxuXG5cbmNvbnN0IG1vZHVsZU5hbWVBbmd1bGFyTGliID0gW1xuICBmb2xkZXIuY29tcG9uZW50cyxcbiAgZm9sZGVyLm1vZHVsZSxcbiAgZm9sZGVyLmRpc3QsXG4gIGZvbGRlci5icm93c2VyLFxuXTtcblxuY29uc3QgbW9kdWxlTmFtZUlzb21vcnBoaWNMaWIgPSBbXG4gIGZvbGRlci5zcmMsXG4gIGZvbGRlci5kaXN0LFxuICBmb2xkZXIuYnJvd3Nlcixcbl07XG5cbmNvbnN0IGFyZ3NSZXBsYWNlbWVudHNCdWlsZCA9IHtcbiAgJ2Jhdyc6ICdidWlsZDphcHA6d2F0Y2gnLFxuICAnYmEnOiAnYnVpbGQ6YXBwJyxcbiAgJ2JhcCc6ICdidWlsZDphcHA6cHJvZCcsXG4gICdiZHcnOiAnYnVpbGQ6ZGlzdDp3YXRjaCcsXG4gICdidyc6ICdidWlsZDp3YXRjaCcsXG4gICdibmcnOiAnYnVpbGQ6bmcnLFxuICAnYm5ndyc6ICdidWlsZDpuZzp3YXRjaCcsXG4gICdiZHB3JzogJ2J1aWxkOmRpc3Q6cHJvZDp3YXRjaCcsXG4gICdiZCc6ICdidWlsZDpkaXN0JyxcbiAgJ2JiJzogJ2J1aWxkOmJ1bmRsZScsXG4gICdiYnAnOiAnYnVpbGQ6YnVuZGxlOnByb2QnLFxuICAnYmJwdyc6ICdidWlsZDpidW5kbGU6cHJvZDp3YXRjaCcsXG4gICdiYncnOiAnYnVpbGQ6YnVuZGxlOndhdGNoJyxcbiAgJ3NiJzogJ3N0YXRpYzpidWlsZCcsXG4gICdzYnAnOiAnc3RhdGljOmJ1aWxkOnByb2QnLFxuICAnc2JkJzogJ3N0YXRpYzpidWlsZDpkaXN0JyxcbiAgJ3NibCc6ICdzdGF0aWM6YnVpbGQ6bGliJyxcbiAgJ3NiYSc6ICdzdGF0aWM6YnVpbGQ6YXBwJyxcbiAgJ2NiJzogJ2NsZWFuOmJ1aWxkJ1xufTtcblxuZXhwb3J0IGNvbnN0IGNvbmZpZyA9IHtcblxuICBjb3JlUHJvamVjdFZlcnNpb25zOiBbJ3YxJywgJ3YyJywgJ3YzJ10sXG4gIHF1aWNrRml4ZXM6IHtcbiAgICBtaXNzaW5nTGliczogW1xuICAgICAgJ3JlYWN0LW5hdGl2ZS1zcWxpdGUtc3RvcmFnZSdcbiAgICBdXG4gIH0sXG4gIHBhY2thZ2VKc29uU3BsaXQsXG4gIHJlZ2V4U3RyaW5nOiB7XG4gICAgcGF0aFBhcnRTdHJpbmdSZWdleDogYChcXC8oW2EtekEtWjAtOV18XFxcXC18XFxcXF98XFxcXCt8XFxcXC4pKilgXG4gIH0sXG4gIHBsYWNlaG9sZGVyczoge1xuICAgIGZvclByb2plY3RzSW5FbnZpcm9ubWVudEZpbGU6ICcvLzxQTEFDRUhPTERFUl9GT1JfUFJPSkVDVFM+J1xuICB9LFxuICBhcnJheToge1xuICAgIGlzb21vcnBoaWNQYWNrYWdlczogJ2lzb21vcnBoaWNQYWNrYWdlcydcbiAgfSxcbiAgZGVmYXVsdEZyYW1ld29ya1ZlcnNpb246ICd2MycgYXMgQ29uZmlnTW9kZWxzLkZyYW1ld29ya1ZlcnNpb24sXG4gIENPTlNUOiB7XG4gICAgVU5JVF9URVNUX1RJTUVPVVQ6IDMwMDAwLFxuICAgIElOVEVHUkFUSU9OX1RFU1Q6IDMwMDAwLFxuICAgIEJBQ0tFTkRfSFRUUF9SRVFVRVNUX1RJTUVPVVQ6IDMwMDAsXG4gIH0sXG4gIGRlYnVnOiB7XG4gICAgc291cmNlTW9kaWZpZXI6IFtcblxuICAgIF0sXG4gICAgYmFzZWxpbmVTaXRlSm9pbjoge1xuICAgICAgREVCVUdfUEFUSEVTOiBbXG4gICAgICAgIC8vIFwic3JjL2FwcHMvYXV0aC9BdXRoQ29udHJvbGxlci50c1wiLFxuICAgICAgICAvLyAnL3NyYy9hcHAvK3ByZXZpZXctY29tcG9uZW50cy9wcmV2aWV3LWNvbXBvbmVudHMuY29tcG9uZW50LnRzJyxcbiAgICAgICAgLy8gJy9zcmMvY29udHJvbGxlcnMudHMnLFxuICAgICAgICAvLyAnL3NyYy9hcHAvK3ByZXZpZXctY29tcG9uZW50cy9jb21wb25lbnRzLytwcmV2aWV3LWJ1aWxkdG5wcHJvY2Vzcy9wcmV2aWV3LWJ1aWxkdG5wcHJvY2Vzcy5jb21wb25lbnQudHMnXG4gICAgICBdLFxuICAgICAgREVCVUdfTUVSR0VfUEFUSEVTOiBbXG4gICAgICAgIC8vIFwic3JjL2FwcHMvYXV0aC9BdXRoQ29udHJvbGxlci50c1wiLFxuICAgICAgICAvLyAnL3NyYy9hcHAvK3ByZXZpZXctY29tcG9uZW50cy9jb21wb25lbnRzLytwcmV2aWV3LWJ1aWxkdG5wcHJvY2Vzcy9wcmV2aWV3LWJ1aWxkdG5wcHJvY2Vzcy5jb21wb25lbnQudHMnXG4gICAgICAgIC8vICcvY29tcG9uZW50cy9mb3JtbHkvYmFzZS1jb21wb25lbnRzL2VkaXRvci9lZGl0b3Itd3JhcHBlci5jb21wb25lbnQudHMnXG4gICAgICAgIC8vICcvc3JjL2FwcC8rcHJldmlldy1jb21wb25lbnRzL2NvbXBvbmVudHMvK3ByZXZpZXctYnVpbGR0bnBwcm9jZXNzL3ByZXZpZXctYnVpbGR0bnBwcm9jZXNzLmNvbXBvbmVudC50cydcbiAgICAgIF1cbiAgICB9XG4gIH0sXG4gIGZyYW1ld29ya05hbWU6IChnbG9iYWxbJ2ZyYW1ld29ya05hbWUnXSA/IGdsb2JhbFsnZnJhbWV3b3JrTmFtZSddIDogJ3RucCcpIGFzICdmaXJlZGV2JyB8ICd0bnAnLFxuICBzdGFydFBvcnQ6IDYwMDEsXG4gIGZyYW1ld29ya3M6IFsnYm9vdHN0cmFwJywgJ2lvbmljJywgJ21hdGVyaWFsJ10gYXMgQ29uZmlnTW9kZWxzLlVJRnJhbWV3b3JrW10sXG5cbiAgYWxsb3dlZEVudmlyb25tZW50cyxcbiAgZm9sZGVyLFxuICB0ZW1wRm9sZGVycyxcbiAgZmlsZXNOb3RBbGxvd2VkVG9DbGVhbjogT2JqZWN0LmtleXMoZmlsZXNOb3RBbGxvd2VkVG9DbGVhbikubWFwKGtleSA9PiBmaWxlc05vdEFsbG93ZWRUb0NsZWFuW2tleV0pIGFzIHN0cmluZ1tdLFxuICBmaWxlLFxuICBkZWZhdWx0OiB7XG4gICAgY2xvdWQ6IHtcbiAgICAgIGVudmlyb25tZW50OiB7XG4gICAgICAgIG5hbWU6ICdvbmxpbmUnIGFzIENvbmZpZ01vZGVscy5FbnZpcm9ubWVudE5hbWVcbiAgICAgIH1cbiAgICB9XG4gIH0sXG4gIFNVQkVSSVpFRF9QUkVGSVg6IGAtLS1zdHViZXJpemVkYCxcbiAgbmFtZXM6IHtcbiAgICBlbnY6IGFsbG93ZWRFbnZpcm9ubWVudHNPYmosXG4gICAgYmFzZWxpbmU6ICdiYXNlbGluZScsXG4gICAgZGVmYXVsdFNlcnZlcjogJ2RlZmF1bHQgc2VydmVyJyxcbiAgfSxcbiAgcmVzZXJ2ZWRBcmd1bWVudHNOYW1lc1VnbGlmeTogW1xuICAgICdyZXNlcnZlZEV4cE9uZScsXG4gICAgJ3Jlc2VydmVkRXhwU2VjJ1xuICBdLFxuICBleHRlbnNpb25zOiB7XG4gICAgLyoqXG4gICAgICAgKiBNb2RpZnkgc291cmNlOiBpbXBvcnQsZXhwb3J0LCByZXF1aXJlc1xuICAgICAgICovXG4gICAgZ2V0IG1vZGlmaWNhYmxlQnlSZXBsYWNlRm4oKSB7XG4gICAgICByZXR1cm4gW1xuICAgICAgICAndHMnLFxuICAgICAgICAnanMnLFxuICAgICAgICAuLi5zdHlsZXNGaWxlc0V4dGVuc2lvbixcbiAgICAgIF0ubWFwKGYgPT4gYC4ke2Z9YClcbiAgICB9LFxuICB9LFxuICBub3RGaXJlZGV2UHJvamVjdHM6IFtcbiAgICAndW5rbm93JywgJ3Vua25vdy1ucG0tcHJvamVjdCcsICdzY2VuYXJpbycsICduYXZpJ1xuICBdIGFzIENvbmZpZ01vZGVscy5MaWJUeXBlW10sXG4gIC8qKlxuICAgKiBCdWlsZCBhbGxvd2VkIHR5cGVzXG4gICAqL1xuICBhbGxvd2VkVHlwZXM6IHtcbiAgICAvKipcbiAgICAgKiBQcm9qZWN0cyBmb3IgYnVpbGQ6YXBwOndhdGNoIGNvbW1hbmRcbiAgICAgKi9cbiAgICBhcHA6IFtcbiAgICAgIEdsb2JhbExpYlR5cGVOYW1lLmFuZ3VsYXJDbGllbnQsXG4gICAgICBHbG9iYWxMaWJUeXBlTmFtZS5hbmd1bGFyTGliLFxuICAgICAgR2xvYmFsTGliVHlwZU5hbWUuaXNvbW9ycGhpY0xpYixcbiAgICAgIEdsb2JhbExpYlR5cGVOYW1lLmlvbmljQ2xpZW50LFxuICAgICAgR2xvYmFsTGliVHlwZU5hbWUuZG9ja2VyLFxuICAgICAgR2xvYmFsTGliVHlwZU5hbWUuY29udGFpbmVyLFxuICAgICAgR2xvYmFsTGliVHlwZU5hbWUudnNjb2RlRXh0LFxuICAgIF0gYXMgQ29uZmlnTW9kZWxzLkxpYlR5cGVbXSxcbiAgICAvKipcbiAgICAgKiBQcm9qZWN0cyBmb3IgYnVpbGQ6KGRpc3R8YnVuZGxlKTood2F0Y2gpIGNvbW1hbmRcbiAgICAgKi9cbiAgICBsaWJzOiBbXG4gICAgICBHbG9iYWxMaWJUeXBlTmFtZS5hbmd1bGFyTGliLFxuICAgICAgR2xvYmFsTGliVHlwZU5hbWUuaXNvbW9ycGhpY0xpYixcbiAgICAgIEdsb2JhbExpYlR5cGVOYW1lLndvcmtzcGFjZSxcbiAgICAgIEdsb2JhbExpYlR5cGVOYW1lLmNvbnRhaW5lcixcbiAgICAgIEdsb2JhbExpYlR5cGVOYW1lLmRvY2tlcixcbiAgICAgIEdsb2JhbExpYlR5cGVOYW1lLnZzY29kZUV4dCxcbiAgICBdIGFzIENvbmZpZ01vZGVscy5MaWJUeXBlW11cbiAgfSxcbiAgbW9kdWxlTmFtZUFuZ3VsYXJMaWIsXG4gIG1vZHVsZU5hbWVJc29tb3JwaGljTGliLFxuICBmaWxlc0V4dGVuc2lvbnM6IHtcbiAgICBmaWxldGVtcGxhdGU6ICdmaWxldGVtcGxhdGUnLFxuICAgIHN0eWxlczogc3R5bGVzRmlsZXNFeHRlbnNpb24sXG4gIH0sXG4gIHByb2plY3RUeXBlczoge1xuICAgIGZvck5wbUxpYnM6IFtcbiAgICAgIEdsb2JhbExpYlR5cGVOYW1lLmFuZ3VsYXJMaWIsXG4gICAgICBHbG9iYWxMaWJUeXBlTmFtZS5pc29tb3JwaGljTGliLFxuICAgIF0sXG4gICAgd2l0aDoge1xuICAgICAgYW5ndWxhckFzQ29yZTogW1xuICAgICAgICBHbG9iYWxMaWJUeXBlTmFtZS5hbmd1bGFyQ2xpZW50LFxuICAgICAgICBHbG9iYWxMaWJUeXBlTmFtZS5hbmd1bGFyTGliLFxuICAgICAgICBHbG9iYWxMaWJUeXBlTmFtZS5pb25pY0NsaWVudCxcbiAgICAgIF0sXG4gICAgICBjb21wb25ldHNBc1NyYzogW1xuICAgICAgICBHbG9iYWxMaWJUeXBlTmFtZS5hbmd1bGFyTGliLFxuICAgICAgXSxcbiAgICB9XG4gIH0sXG4gIC8vIGVudmlyb25tZW50TmFtZSxcbiAgbG9jYWxMaWJzOiBbXG4gICAgJ2VzbGludCcsXG4gICAgJ21rZGlycCcsXG4gICAgJ2d1bHAnLFxuICAgICducG0tcnVuJyxcbiAgICAncmltcmFmJyxcbiAgICAnbm9kZW1vbicsXG4gICAgJ3JlbGVhc2UtaXQnLFxuICAgICd0c2MnLFxuICAgICd3YXRjaCcsXG4gICAgJ2h0dHAtc2VydmVyJyxcbiAgICAndHMtbm9kZScsXG4gICAgJ3NvcnQtcGFja2FnZS1qc29uJyxcbiAgICAnY29uY3VycmVudGx5JyxcbiAgICAnc2xvYycsXG4gICAgJ21vcnBoaSdcbiAgXSxcbiAgaGVscEFsaWFzOiBbXG4gICAgJy1oJyxcbiAgICAnLS1oZWxwJyxcbiAgICAnLWhlbHAnLFxuICAgICdoZWxwJ1xuICBdLFxuICByZXF1aXJlZDoge1xuICAgIG5wbTogW1xuICAgICAgeyBuYW1lOiAnZXh0cmFjdC16aXAnLCB2ZXJzaW9uOiAnMS42LjcnIH0sXG4gICAgICB7IG5hbWU6ICd3YXRjaCcsIHZlcnNpb246ICcxLjAuMicgfSxcbiAgICAgIHsgbmFtZTogJ2NwcicgfSxcbiAgICAgIHsgbmFtZTogJ2NoZWNrLW5vZGUtdmVyc2lvbicgfSxcbiAgICAgIHsgbmFtZTogJ25wbS1ydW4nLCB2ZXJzaW9uOiAnNC4xLjInIH0sXG4gICAgICB7IG5hbWU6ICdyaW1yYWYnIH0sXG4gICAgICB7IG5hbWU6ICdta2RpcnAnIH0sXG4gICAgICB7IG5hbWU6ICdyZW5hbWVyJywgdmVyc2lvbjogJzIuMC4xJyB9LFxuICAgICAgeyBuYW1lOiAnbm9kZW1vbicgfSxcbiAgICAgIHsgbmFtZTogJ21hZGdlJyB9LFxuICAgICAgeyBuYW1lOiAneWFybicgfSxcbiAgICAgIHsgbmFtZTogJ2h0dHAtc2VydmVyJyB9LFxuICAgICAgeyBuYW1lOiAnaW5jcmVhc2UtbWVtb3J5LWxpbWl0JyB9LFxuICAgICAgeyBuYW1lOiAnYm93ZXInIH0sXG4gICAgICB7IG5hbWU6ICdma2lsbCcsIGluc3RhbGxOYW1lOiAnZmtpbGwtY2xpJyB9LFxuICAgICAgLy8geyBuYW1lOiAneW8nIH0sXG4gICAgICB7IG5hbWU6ICdtb2NoYScgfSxcbiAgICAgIC8vIHsgbmFtZTogJ2NoYWknIH0sXG4gICAgICB7IG5hbWU6ICd0cy1ub2RlJyB9LFxuICAgICAgeyBuYW1lOiAndnNjZScgfSxcbiAgICAgIC8vIHsgbmFtZTogJ3N0bXV4JyB9LFxuICAgICAgeyBuYW1lOiAnd2VicGFjay1idW5kbGUtYW5hbHl6ZXInIH0sXG4gICAgICAvLyB7IG5hbWU6ICduZycsIGluc3RhbGxOYW1lOiAnQGFuZ3VsYXIvY2xpJyB9LFxuICAgICAgLy8geyBuYW1lOiAnbmd4LXB3YS1pY29ucycsIHZlcnNpb246ICcwLjEuMicgfSxcbiAgICAgIC8vIHsgbmFtZTogJ3JlYWwtZmF2aWNvbicsIGluc3RhbGxOYW1lOiAnY2xpLXJlYWwtZmF2aWNvbicgfSxcbiAgICAgIHsgbmFtZTogJ2JhYmVsJywgaW5zdGFsbE5hbWU6ICdiYWJlbC1jbGknIH0sXG4gICAgICB7IG5hbWU6ICdqYXZhc2NyaXB0LW9iZnVzY2F0b3InIH0sXG4gICAgICB7IG5hbWU6ICd1Z2xpZnlqcycsIGluc3RhbGxOYW1lOiAndWdsaWZ5LWpzJyB9LFxuICAgIF0sXG4gICAgbmljZVRvb2xzOiBbXG4gICAgICB7IG5hbWU6ICdzcGVlZC10ZXN0JyB9LFxuICAgICAgeyBuYW1lOiAnbnBtLW5hbWUnIH0sIC8vIGNoZWNrIGlmIG5hbWUgaXMgYXZhaWxhYmxlIG9uIG5wbVxuICAgICAgeyBuYW1lOiAndmFudGFnZScsIHBsYXRmb3JtOiAnbGludXgnIH0sIC8vIGluc3BlY3QgeW91IGxpdmUgYXBwbGljYWl0b25cbiAgICAgIHsgbmFtZTogJ2NsaW5pYycsIHBsYXRmb3JtOiAnbGludXgnIH0sIC8vIGNoZWNrIHdoeSBub2RlanMgaXMgc2xvd1xuICAgICAgeyBuYW1lOiAndnRvcCcsIHBsYXRmb3JtOiAnbGludXgnIH0sIC8vIGluc3BlY3QgeW91IGxpdmUgYXBwbGljYWl0b24sXG4gICAgICB7IG5hbWU6ICdwdWJsaWMtaXAnIH0sXG4gICAgICB7IG5hbWU6ICdlbXB0eS10cmFzaCcgfSxcbiAgICAgIHsgbmFtZTogJ2lzLXVwJyB9LCAvLyBjaGVjayBpZiB3ZWJzaXRlIGlzIG9rXG4gICAgICB7IG5hbWU6ICdpcy1vbmxpbmUnIH0sIC8vIGNoZWNrIGlmIGludGVybmV0IGlzIG9rLFxuICAgICAgeyBuYW1lOiAndHR5c3R1ZGlvJyB9LCAvLyByZWNvcmQgdGVybWluYWwgYWN0aW9ucyxcbiAgICAgIHsgbmFtZTogJ2JjYXQnIH0sIC8vIHJlZGlyZWN0IGFueSBzdHJlYW0gdG8gYnJvd3NlcixcbiAgICAgIHsgbmFtZTogJ3dpZmktcGFzc3dvcmQnLCBpbnN0YWxsTmFtZTogJ3dpZmktcGFzc3dvcmQtY2xpJyB9LFxuICAgICAgeyBuYW1lOiAnd2FsbHBhcGVyJywgaW5zdGFsbE5hbWU6ICd3YWxscGFwZXItY2xpJyB9LFxuICAgICAgeyBuYW1lOiAnYnJpZ2h0bmVzcycsIGluc3RhbGxOYW1lOiAnYnJpZ2h0bmVzcy1jbGknIH0sXG4gICAgICB7IG5hbWU6ICdzdWJkb3dubG9hZGVyJyB9LFxuICAgICAgeyBuYW1lOiAncnRhaWwnIH0sIC8vIG1vbml0b3IgbXVsdGlwbGUgc2VydmVyXG4gICAgICB7IG5hbWU6ICdpcG9ubWFwJyB9LCAvLyBzaG93IGlwIGluIHRlcm1pbmFsIG1hcCxcbiAgICAgIHsgbmFtZTogJ2pzb21lJyB9LCAvLyBkaXNwbGF5IGNvbG9yZWQganNvbnMsXG4gICAgICB7IG5hbWU6ICdkcmF3aWxsZScsIGlzTm90Q2xpOiB0cnVlIH0sIC8vIDNkIGRyd2EgaW4gdGVtcmluYWxcbiAgICAgIHsgbmFtZTogJ2NvbHVtbmlmeScsIGlzTm90Q2xpOiB0cnVlIH0sIC8vIGRyYXcgbmljZSBjb2x1bW5zIGluIG5vZGUsXG4gICAgICB7IG5hbWU6ICdtdWx0aXNwaW5uZXInLCBpc05vdENsaTogdHJ1ZSB9LCAvLyBwcm9ncmVzIGZvciBtdWx0aXBsZSBhc3luYyBhY3Rpb25zXG4gICAgICB7IG5hbWU6ICdjZm9udHMnIH0sIC8vIGRyYXcgc3VwZXIgbmljZSBmb250cyBpbiBjb25zb2xlXG4gICAgXSxcbiAgICBwcm9ncmFtczogWyxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2NvZGUnLFxuICAgICAgICB3ZWJzaXRlOiAnaHR0cHM6Ly9jb2RlLnZpc3VhbHN0dWRpby5jb20vJ1xuICAgICAgfVxuICAgIF1cbiAgfVxufVxuIl19
|
@@ -1 +0,0 @@
|
|
1
|
-
{"moduleName":null,"summaries":[{"symbol":{"__symbol":0,"members":[]},"metadata":{"__symbol":1,"members":[]}},{"symbol":{"__symbol":2,"members":[]},"metadata":{"npm":[{"name":"rimraf"},{"name":"npm-run","version":"4.1.2"},{"name":"cpr"},{"name":"check-node-version"},{"name":"vsce"}],"programs":[]}},{"symbol":{"__symbol":3,"members":[]},"metadata":{"isomorphicLib":"isomorphic-lib","angularLib":"angular-lib","electronClient":"electron-client","ionicLib":"ionic-lib","angularClient":"angular-client","ionicClient":"ionic-client","workspace":"workspace","container":"container","docker":"docker","unknowNpmProject":"unknow-npm-project","vscodeExt":"vscode-ext","chromeExt":"chrome-ext","singleFileProject":"single-file-project","navi":"navi","scenario":"scenario"}},{"symbol":{"__symbol":4,"members":[]},"metadata":[{"__symbolic":"select","expression":{"__symbol":3,"members":[]},"member":"angularLib"},{"__symbolic":"select","expression":{"__symbol":3,"members":[]},"member":"isomorphicLib"},{"__symbolic":"select","expression":{"__symbol":3,"members":[]},"member":"angularClient"},{"__symbolic":"select","expression":{"__symbol":3,"members":[]},"member":"ionicClient"},{"__symbolic":"select","expression":{"__symbol":3,"members":[]},"member":"electronClient"},{"__symbolic":"select","expression":{"__symbol":3,"members":[]},"member":"workspace"},{"__symbolic":"select","expression":{"__symbol":3,"members":[]},"member":"container"},{"__symbolic":"select","expression":{"__symbol":3,"members":[]},"member":"docker"},{"__symbolic":"select","expression":{"__symbol":3,"members":[]},"member":"unknowNpmProject"},{"__symbolic":"select","expression":{"__symbol":3,"members":[]},"member":"vscodeExt"},{"__symbolic":"select","expression":{"__symbol":3,"members":[]},"member":"chromeExt"},{"__symbolic":"select","expression":{"__symbol":3,"members":[]},"member":"navi"},{"__symbolic":"select","expression":{"__symbol":3,"members":[]},"member":"scenario"}]},{"symbol":{"__symbol":5,"members":[]},"metadata":[{"__symbolic":"select","expression":{"__symbol":3,"members":[]},"member":"angularLib"},{"__symbolic":"select","expression":{"__symbol":3,"members":[]},"member":"isomorphicLib"},{"__symbolic":"select","expression":{"__symbol":3,"members":[]},"member":"angularClient"},{"__symbolic":"select","expression":{"__symbol":3,"members":[]},"member":"electronClient"},{"__symbolic":"select","expression":{"__symbol":3,"members":[]},"member":"ionicClient"},{"__symbolic":"select","expression":{"__symbol":3,"members":[]},"member":"docker"},"common"]},{"symbol":{"__symbol":6,"members":[]},"metadata":{"__symbolic":"error","message":"Lambda not supported","fileName":"tmp-projects-for-bundle/tnp-config/src/config.ts"}},{"symbol":{"__symbol":7,"members":[]},"metadata":{"__symbolic":"error","message":"Expression form not supported","fileName":"tmp-projects-for-bundle/tnp-config/src/config.ts"}}],"symbols":[{"__symbol":0,"name":"Helpers","filePath":"./config"},{"__symbol":1,"name":"CoreHelpers","filePath":"tnp-core/browser/index"},{"__symbol":2,"name":"GlobalIsomorphicDependencies","filePath":"./config"},{"__symbol":3,"name":"GlobalLibTypeName","filePath":"./config"},{"__symbol":4,"name":"LibTypeArr","filePath":"./config"},{"__symbol":5,"name":"CoreLibCategoryArr","filePath":"./config"},{"__symbol":6,"name":"ɵ0","filePath":"./config"},{"__symbol":7,"name":"config","filePath":"./config"}]}
|
@@ -1,2 +0,0 @@
|
|
1
|
-
export * from './config';
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL3RucC1jb25maWcvIiwic291cmNlcyI6WyJwdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLGNBQWMsVUFBVSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmV4cG9ydCAqIGZyb20gJy4vY29uZmlnJzsiXX0=
|
@@ -1 +0,0 @@
|
|
1
|
-
{"moduleName":null,"summaries":[{"symbol":{"__symbol":0,"members":[]},"metadata":{"__symbol":1,"members":[]}},{"symbol":{"__symbol":2,"members":[]},"metadata":{"__symbol":3,"members":[]}},{"symbol":{"__symbol":4,"members":[]},"metadata":{"__symbol":5,"members":[]}},{"symbol":{"__symbol":6,"members":[]},"metadata":{"__symbol":7,"members":[]}},{"symbol":{"__symbol":8,"members":[]},"metadata":{"__symbol":9,"members":[]}},{"symbol":{"__symbol":10,"members":[]},"metadata":{"__symbol":11,"members":[]}},{"symbol":{"__symbol":12,"members":[]},"metadata":{"__symbol":13,"members":[]}}],"symbols":[{"__symbol":0,"name":"Helpers","filePath":"./public-api"},{"__symbol":1,"name":"Helpers","filePath":"./config"},{"__symbol":2,"name":"GlobalIsomorphicDependencies","filePath":"./public-api"},{"__symbol":3,"name":"GlobalIsomorphicDependencies","filePath":"./config"},{"__symbol":4,"name":"GlobalLibTypeName","filePath":"./public-api"},{"__symbol":5,"name":"GlobalLibTypeName","filePath":"./config"},{"__symbol":6,"name":"LibTypeArr","filePath":"./public-api"},{"__symbol":7,"name":"LibTypeArr","filePath":"./config"},{"__symbol":8,"name":"CoreLibCategoryArr","filePath":"./public-api"},{"__symbol":9,"name":"CoreLibCategoryArr","filePath":"./config"},{"__symbol":10,"name":"ɵ0","filePath":"./public-api"},{"__symbol":11,"name":"ɵ0","filePath":"./config"},{"__symbol":12,"name":"config","filePath":"./public-api"},{"__symbol":13,"name":"config","filePath":"./config"}]}
|
@@ -1,5 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
* Generated bundle index. Do not edit.
|
3
|
-
*/
|
4
|
-
export * from './public-api';
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG5wLWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL3RucC1jb25maWcvIiwic291cmNlcyI6WyJ0bnAtY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
|
@@ -1 +0,0 @@
|
|
1
|
-
{"moduleName":null,"summaries":[{"symbol":{"__symbol":0,"members":[]},"metadata":{"__symbol":1,"members":[]}},{"symbol":{"__symbol":2,"members":[]},"metadata":{"__symbol":3,"members":[]}},{"symbol":{"__symbol":4,"members":[]},"metadata":{"__symbol":5,"members":[]}},{"symbol":{"__symbol":6,"members":[]},"metadata":{"__symbol":7,"members":[]}},{"symbol":{"__symbol":8,"members":[]},"metadata":{"__symbol":9,"members":[]}},{"symbol":{"__symbol":10,"members":[]},"metadata":{"__symbol":11,"members":[]}},{"symbol":{"__symbol":12,"members":[]},"metadata":{"__symbol":13,"members":[]}}],"symbols":[{"__symbol":0,"name":"Helpers","filePath":"./tnp-config"},{"__symbol":1,"name":"Helpers","filePath":"./public-api"},{"__symbol":2,"name":"GlobalIsomorphicDependencies","filePath":"./tnp-config"},{"__symbol":3,"name":"GlobalIsomorphicDependencies","filePath":"./public-api"},{"__symbol":4,"name":"GlobalLibTypeName","filePath":"./tnp-config"},{"__symbol":5,"name":"GlobalLibTypeName","filePath":"./public-api"},{"__symbol":6,"name":"LibTypeArr","filePath":"./tnp-config"},{"__symbol":7,"name":"LibTypeArr","filePath":"./public-api"},{"__symbol":8,"name":"CoreLibCategoryArr","filePath":"./tnp-config"},{"__symbol":9,"name":"CoreLibCategoryArr","filePath":"./public-api"},{"__symbol":10,"name":"ɵ0","filePath":"./tnp-config"},{"__symbol":11,"name":"ɵ0","filePath":"./public-api"},{"__symbol":12,"name":"config","filePath":"./tnp-config"},{"__symbol":13,"name":"config","filePath":"./public-api"}]}
|