tnp-core 16.444.14 → 16.444.15
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/assets/shared/shared_folder_info.txt +1 -1
- package/browser/esm2022/lib/core-imports.mjs +27 -12
- package/browser/esm2022/lib/helpers.mjs +16 -13
- package/browser/fesm2022/tnp-core.mjs +41 -23
- package/browser/fesm2022/tnp-core.mjs.map +1 -1
- package/browser/lib/helpers.d.ts +0 -1
- package/cli.backend.js +3 -3
- package/client/esm2022/lib/core-imports.mjs +27 -12
- package/client/esm2022/lib/helpers.mjs +16 -13
- package/client/fesm2022/tnp-core.mjs +41 -23
- package/client/fesm2022/tnp-core.mjs.map +1 -1
- package/client/lib/helpers.d.ts +0 -1
- package/client/package.json +25 -25
- package/lib/core-imports.js +37 -13
- package/lib/core-imports.js.map +1 -1
- package/lib/helpers.d.ts +3 -2
- package/lib/helpers.js +15 -18
- package/lib/helpers.js.map +1 -1
- package/lib/node-chalk-mock.js +3 -3
- package/lib/node-path-mock.js +3 -3
- package/package.json +2 -2
- package/tmp-environment.json +30 -30
- package/websql/esm2022/lib/core-imports.mjs +27 -12
- package/websql/esm2022/lib/helpers.mjs +16 -13
- package/websql/fesm2022/tnp-core.mjs +41 -23
- package/websql/fesm2022/tnp-core.mjs.map +1 -1
- package/websql/lib/helpers.d.ts +0 -1
package/tmp-environment.json
CHANGED
@@ -175,7 +175,7 @@
|
|
175
175
|
"angular-material-css-vars": "5.0.2",
|
176
176
|
"angular-resize-event": "3.2.0",
|
177
177
|
"animate.css": "4.1.1 ",
|
178
|
-
"any-project-cli": "
|
178
|
+
"any-project-cli": "16.444.12",
|
179
179
|
"app-root-path": "3.0.0",
|
180
180
|
"background-worker-process": "~16.100.10",
|
181
181
|
"base32": "0.0.7",
|
@@ -225,13 +225,13 @@
|
|
225
225
|
"file-saver": "2.0.5",
|
226
226
|
"file-type": "18.5.0",
|
227
227
|
"firedev": "^16",
|
228
|
-
"firedev-crud": "~16.444.
|
229
|
-
"firedev-crud-deamon": "~16.444.
|
230
|
-
"firedev-ports": "~16.444.
|
231
|
-
"firedev-storage": "~16.444.
|
232
|
-
"firedev-type-sql": "~16.444.
|
233
|
-
"firedev-typeorm": "~16.444.
|
234
|
-
"firedev-ui": "
|
228
|
+
"firedev-crud": "~16.444.12",
|
229
|
+
"firedev-crud-deamon": "~16.444.12",
|
230
|
+
"firedev-ports": "~16.444.12",
|
231
|
+
"firedev-storage": "~16.444.8",
|
232
|
+
"firedev-type-sql": "~16.444.12",
|
233
|
+
"firedev-typeorm": "~16.444.8",
|
234
|
+
"firedev-ui": "16.444.1",
|
235
235
|
"font-awesome": "4.7.0",
|
236
236
|
"form-data": "4.0.0",
|
237
237
|
"fuzzy": "0.1.3",
|
@@ -246,10 +246,10 @@
|
|
246
246
|
"image-focus": "1.2.1",
|
247
247
|
"immer": "10.0.2",
|
248
248
|
"immutable": "4.3.0",
|
249
|
-
"incremental-compiler": "~16.444.
|
249
|
+
"incremental-compiler": "~16.444.13",
|
250
250
|
"inquirer": "7.3.3",
|
251
251
|
"inquirer-autocomplete-prompt": "1.3.0",
|
252
|
-
"isomorphic-region-loader": "~16.444.
|
252
|
+
"isomorphic-region-loader": "~16.444.12",
|
253
253
|
"istanbul-instrumenter-loader": "2.0.0",
|
254
254
|
"jest": "29.5.0",
|
255
255
|
"jest-date-mock": "1.0.8",
|
@@ -260,17 +260,17 @@
|
|
260
260
|
"joi": "17.9.2",
|
261
261
|
"jscodeshift": "0.6.3",
|
262
262
|
"json-stringify-safe": "5.0.1",
|
263
|
-
"json10": "~16.444.
|
264
|
-
"json10-writer": "~16.444.
|
263
|
+
"json10": "~16.444.12",
|
264
|
+
"json10-writer": "~16.444.12",
|
265
265
|
"json5-writer": "0.2.0",
|
266
266
|
"jszip": "3.10.1",
|
267
267
|
"karma-cli": "1.0.1",
|
268
268
|
"lnk": "1.0.1",
|
269
269
|
"localforage": "1.10.0",
|
270
270
|
"lockfile": "1.0.4",
|
271
|
-
"lodash-walk-object": "~16.444.
|
271
|
+
"lodash-walk-object": "~16.444.11",
|
272
272
|
"lowdb": "7.0.1",
|
273
|
-
"magic-renamer": "~16.444.
|
273
|
+
"magic-renamer": "~16.444.11",
|
274
274
|
"material-design-icons": "3.0.1",
|
275
275
|
"method-override": "2.3.10",
|
276
276
|
"minimist": "1.2.0",
|
@@ -280,9 +280,9 @@
|
|
280
280
|
"ng-lock": "16.0.1",
|
281
281
|
"ng-packagr": "16.0.1",
|
282
282
|
"ng-talkback": "~16.444.1",
|
283
|
-
"ng2-logger": "~16.444.
|
283
|
+
"ng2-logger": "~16.444.12",
|
284
284
|
"ng2-pdfjs-viewer": "16.0.4",
|
285
|
-
"ng2-rest": "~16.444.
|
285
|
+
"ng2-rest": "~16.444.11",
|
286
286
|
"ngx-ace-wrapper": "14.0.0",
|
287
287
|
"ngx-editor": "15.3.0",
|
288
288
|
"ngx-highlightjs": "9.0.0",
|
@@ -331,7 +331,7 @@
|
|
331
331
|
"socket.io-client": "4.7.5",
|
332
332
|
"sort-package-json": "1.11.0",
|
333
333
|
"sql.js": "1.8.0",
|
334
|
-
"static-columns": "~16.444.
|
334
|
+
"static-columns": "~16.444.7",
|
335
335
|
"string-similarity": "4.0.2",
|
336
336
|
"sudo-block": "3.0.0",
|
337
337
|
"supertest": "6.3.3",
|
@@ -340,11 +340,11 @@
|
|
340
340
|
"task.js": "0.1.5",
|
341
341
|
"threads": "1.7.0",
|
342
342
|
"tnp-cli": "~16.444.1",
|
343
|
-
"tnp-config": "~16.444.
|
344
|
-
"tnp-core": "~16.444.
|
345
|
-
"tnp-db": "~16.444.
|
346
|
-
"tnp-helpers": "~16.444.
|
347
|
-
"tnp-models": "~16.444.
|
343
|
+
"tnp-config": "~16.444.12",
|
344
|
+
"tnp-core": "~16.444.14",
|
345
|
+
"tnp-db": "~16.444.11",
|
346
|
+
"tnp-helpers": "~16.444.19",
|
347
|
+
"tnp-models": "~16.444.12",
|
348
348
|
"ts-debug": "1.3.0",
|
349
349
|
"ts-json-schema-generator": "2.1.1",
|
350
350
|
"ts-loader": "2.3.1",
|
@@ -355,7 +355,7 @@
|
|
355
355
|
"typedoc": "0.25.13",
|
356
356
|
"typedoc-plugin-markdown": "4.0.3",
|
357
357
|
"typescript": "~5.0.2",
|
358
|
-
"typescript-class-helpers": "~16.444.
|
358
|
+
"typescript-class-helpers": "~16.444.12",
|
359
359
|
"typescript-formatter": "~7.2.2",
|
360
360
|
"underscore": "1.9.1",
|
361
361
|
"uuid": "8.3.2",
|
@@ -374,22 +374,22 @@
|
|
374
374
|
"license": "MIT",
|
375
375
|
"private": false,
|
376
376
|
"name": "tnp-core",
|
377
|
-
"version": "16.444.
|
378
|
-
"lastBuildTagHash": "
|
377
|
+
"version": "16.444.15",
|
378
|
+
"lastBuildTagHash": "e3cf4d8a7ae6b6e361bf6ee1244390a3c2ddc498",
|
379
379
|
"main": "dist/app.electron.js"
|
380
380
|
},
|
381
381
|
"build": {
|
382
|
-
"number":
|
383
|
-
"date": "2024-07-
|
384
|
-
"hash": "
|
382
|
+
"number": 838,
|
383
|
+
"date": "2024-07-23T23:34:02.000Z",
|
384
|
+
"hash": "fc83c1f73e5d7a12562ae56cc244953e94cdf60a"
|
385
385
|
},
|
386
386
|
"currentProjectName": "tnp-core",
|
387
387
|
"currentProjectGenericName": "tnp-core",
|
388
388
|
"currentProjectType": "isomorphic-lib",
|
389
|
-
"currentFrameworkVersion": "16.444.
|
389
|
+
"currentFrameworkVersion": "16.444.14",
|
390
390
|
"isStandaloneProject": true,
|
391
391
|
"isSmartContainer": false,
|
392
392
|
"pathesTsconfig": "\"paths\": {\"tnp-core\":[\"./src/lib\"],\"tnp-core/*\":[\"./src/lib/*\"]},",
|
393
393
|
"customRootDir": "\"rootDir\": \"./src\",",
|
394
394
|
"currentLibProjectSourceFolder": "src"
|
395
|
-
}
|
395
|
+
}
|
@@ -67,23 +67,38 @@ const crossPlatformPath = (pathStringOrPathParts) => {
|
|
67
67
|
if (Array.isArray(pathStringOrPathParts)) {
|
68
68
|
pathStringOrPathParts = pathStringOrPathParts.join('/');
|
69
69
|
}
|
70
|
-
/* */
|
71
|
-
/* */
|
72
|
-
/* */
|
73
|
-
/* */
|
74
|
-
/* */
|
75
|
-
/* */
|
76
|
-
/* */
|
77
|
-
/* */
|
78
70
|
if (typeof pathStringOrPathParts !== 'string') {
|
79
71
|
return pathStringOrPathParts;
|
80
72
|
}
|
73
|
+
if (typeof pathStringOrPathParts === 'string' &&
|
74
|
+
/^[A-Z]\:/.test(pathStringOrPathParts)) {
|
75
|
+
pathStringOrPathParts = _.lowerFirst(pathStringOrPathParts);
|
76
|
+
}
|
81
77
|
const isExtendedLengthPath = /^\\\\\?\\/.test(pathStringOrPathParts);
|
82
78
|
const hasNonAscii = /[^\u0000-\u0080]+/.test(pathStringOrPathParts); // eslint-disable-line no-control-regex
|
83
|
-
if (isExtendedLengthPath
|
84
|
-
|
79
|
+
if (isExtendedLengthPath) {
|
80
|
+
console.warn(`[firedev-core][crossPlatformPath]: Path starts with \\\\,
|
81
|
+
this is not supported in crossPlatformPath`);
|
82
|
+
console.trace(`path: "${pathStringOrPathParts}"`);
|
83
|
+
}
|
84
|
+
if (hasNonAscii) {
|
85
|
+
console.warn(`[firedev-core][crossPlatformPath]: Path contains non-ascii characters`);
|
86
|
+
console.trace(`path: "${pathStringOrPathParts}"`);
|
87
|
+
}
|
88
|
+
pathStringOrPathParts = (pathStringOrPathParts || '')
|
89
|
+
.replace(/\\/g, '/')
|
90
|
+
.replace(/\/\//g, '/')
|
91
|
+
.replace(/\/\//g, '/'); // TODO probably not needed
|
92
|
+
let isWindows = false;
|
93
|
+
/* */
|
94
|
+
/* */
|
95
|
+
/* */
|
96
|
+
/* */
|
97
|
+
const regexWinPath1 = /^(\/)[a-zA-Z]\:/;
|
98
|
+
if (isWindows && regexWinPath1.test(pathStringOrPathParts)) {
|
99
|
+
pathStringOrPathParts = pathStringOrPathParts.slice(1);
|
85
100
|
}
|
86
|
-
return pathStringOrPathParts
|
101
|
+
return pathStringOrPathParts;
|
87
102
|
};
|
88
103
|
export { _, q, moment, dateformat, crossPlatformPath, win32Path, path, chalk, json5, $, }; /* */
|
89
104
|
/* */
|
@@ -118,4 +133,4 @@ export { _, q, moment, dateformat, crossPlatformPath, win32Path, path, chalk, js
|
|
118
133
|
/* */
|
119
134
|
;
|
120
135
|
({}); // @--end-of-file-for-module=tnp-core lib/core-imports.ts
|
121
|
-
//# sourceMappingURL=data:application/json;base64,
|
136
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1pbXBvcnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3Qtd2Vic3FsL3RucC1jb3JlL3Byb2plY3RzL3RucC1jb3JlL3NyYy9saWIvY29yZS1pbXBvcnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBQzVCLE9BQU8sS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDO0FBQ3ZCLE9BQU8sS0FBSyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBQ2pDLE9BQU8sS0FBSyxVQUFVLE1BQU0sWUFBWSxDQUFDO0FBRXpDLE9BQU8sS0FBSyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBSS9CLE9BQU8sTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUc1QixLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFHTCxJQUFJLENBQWEsQ0FBQztBQUVsQixDQUFDLEdBQUcsTUFBTSxDQUFDO0FBRVgsS0FBSztBQUNMLEtBQUs7QUFLTCxPQUFPLEVBQUUsSUFBSSxJQUFJLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBR3BELElBQUksSUFBSSxHQUFHLEtBQUssQ0FBd0IsQ0FBQztBQUN6QyxLQUFLO0FBQ0wsS0FBSztBQUlMLGFBQWE7QUFDYixJQUFJLEdBQUcsUUFBUSxDQUFDO0FBTWhCLE9BQU8sRUFBRSxLQUFLLElBQUksU0FB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QUFDTCxLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztBQUdMLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFDTCxLQUFLO0FBR0osQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyx5REFBeUQiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0ICogYXMgcSBmcm9tICdxJztcbmltcG9ydCAqIGFzIG1vbWVudCBmcm9tICdtb21lbnQnO1xuaW1wb3J0ICogYXMgZGF0ZWZvcm1hdCBmcm9tICdkYXRlZm9ybWF0JztcbmltcG9ydCB7IENoYWxrIH0gZnJvbSAnY2hhbGsnO1xuaW1wb3J0ICogYXMganNvbjUgZnJvbSAnanNvbjUnO1xuaW1wb3J0IHR5cGUgalF1ZXJ5VHlwZSBmcm9tICdqcXVlcnknO1xuaW1wb3J0IHR5cGUgY2hhbGtCYXNlVHlwZSBmcm9tICdjaGFsayc7XG5cbmltcG9ydCBqUXVlcnkgZnJvbSAnanF1ZXJ5JztcblxuaW1wb3J0IHR5cGUgKiBhcyBwYXRoQmFzZVR5cGUgZnJvbSAncGF0aCc7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gIFxuXG5sZXQgJDogalF1ZXJ5VHlwZTtcblxuJCA9IGpRdWVyeTtcblxuLyogKi9cbi8qICovXG4gIFxuXG5cblxuaW1wb3J0IHsgcGF0aCBhcyBwYXRoTW9jayB9IGZyb20gJy4vbm9kZS1wYXRoLW1vY2snO1xuXG5cbmxldCBwYXRoID0gdm9pZCAwIGFzIHR5cGVvZiBwYXRoQmFzZVR5cGU7XG4vKiAqL1xuLyogKi9cbiAgXG5cblxuLy8gQHRzLWlnbm9yZVxucGF0aCA9IHBhdGhNb2NrO1xuXG5cblxuXG5cbmltcG9ydCB7IGNoYWxrIGFzIGNoYWxrTW9jayB9IGZyb20gJy4vbm9kZS1jaGFsay1tb2NrJztcblxubGV0IGNoYWxrOiBDaGFsayA9IHZvaWQgMCBhcyB0eXBlb2YgY2hhbGtCYXNlVHlwZTtcbi8qICovXG4vKiAqL1xuICBcblxuXG4vLyBAdHMtaWdub3JlXG5jaGFsayA9IGNoYWxrTW9jaztcblxuXG5cbi8qKlxuICogdHJhbnNmb3JtIHVuaXggcGF0aCB0byB3aW4zMiBwYXRoXG4gKi9cbmNvbnN0IHdpbjMyUGF0aCA9IChwOiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgXG4gIGlmICgvXlxcL1thLXpdXFwvLy50ZXN0KHApKSB7XG4gICAgcCA9IHAucmVwbGFjZSgvXlxcL1thLXpdXFwvLywgYCR7cC5jaGFyQXQoMSkudG9VcHBlckNhc2UoKX06L2ApO1xuICB9XG4gIHJldHVybiBwYXRoLndpbjMyLm5vcm1hbGl6ZShwKTtcbn07XG5cbi8qKlxuICogVGhpcyBmdW5jaXRvbiB3aWxsIHJlcGxhY2UgLy8gdG8gL1xuICovXG5jb25zdCBjcm9zc1BsYXRmb3JtUGF0aCA9IChcbiAgcGF0aFN0cmluZ09yUGF0aFBhcnRzOiBzdHJpbmcgfCBzdHJpbmdbXSxcbik6IHN0cmluZyA9PiB7XG4gIGlmIChBcnJheS5pc0FycmF5KHBhdGhTdHJpbmdPclBhdGhQYXJ0cykpIHtcbiAgICBwYXRoU3RyaW5nT3JQYXRoUGFydHMgPSBwYXRoU3RyaW5nT3JQYXRoUGFydHMuam9pbignLycpO1xuICB9XG5cbiAgaWYgKHR5cGVvZiBwYXRoU3RyaW5nT3JQYXRoUGFydHMgIT09ICdzdHJpbmcnKSB7XG4gICAgcmV0dXJuIHBhdGhTdHJpbmdPclBhdGhQYXJ0cztcbiAgfVxuXG5cblxuICBpZiAoXG4gICAgdHlwZW9mIHBhdGhTdHJpbmdPclBhdGhQYXJ0cyA9PT0gJ3N0cmluZycgJiZcbiAgICAvXltBLVpdXFw6Ly50ZXN0KHBhdGhTdHJpbmdPclBhdGhQYXJ0cylcbiAgKSB7XG4gICAgcGF0aFN0cmluZ09yUGF0aFBhcnRzID0gXy5sb3dlckZpcnN0KHBhdGhTdHJpbmdPclBhdGhQYXJ0cyk7XG4gIH1cblxuICBjb25zdCBpc0V4dGVuZGVkTGVuZ3RoUGF0aCA9IC9eXFxcXFxcXFxcXD9cXFxcLy50ZXN0KHBhdGhTdHJpbmdPclBhdGhQYXJ0cyk7XG4gIGNvbnN0IGhhc05vbkFzY2lpID0gL1teXFx1MDAwMC1cXHUwMDgwXSsvLnRlc3QocGF0aFN0cmluZ09yUGF0aFBhcnRzKTsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby1jb250cm9sLXJlZ2V4XG4gIGlmIChpc0V4dGVuZGVkTGVuZ3RoUGF0aCkge1xuICAgIGNvbnNvbGUud2FybihgW2ZpcmVkZXYtY29yZV1bY3Jvc3NQbGF0Zm9ybVBhdGhdOiBQYXRoIHN0YXJ0cyB3aXRoIFxcXFxcXFxcLFxuICAgIHRoaXMgaXMgbm90IHN1cHBvcnRlZCBpbiBjcm9zc1BsYXRmb3JtUGF0aGApO1xuICAgIGNvbnNvbGUudHJhY2UoYHBhdGg6IFwiJHtwYXRoU3RyaW5nT3JQYXRoUGFydHN9XCJgKTtcbiAgfVxuXG4gIGlmIChoYXNOb25Bc2NpaSkge1xuICAgIGNvbnNvbGUud2FybihcbiAgICAgIGBbZmlyZWRldi1jb3JlXVtjcm9zc1BsYXRmb3JtUGF0aF06IFBhdGggY29udGFpbnMgbm9uLWFzY2lpIGNoYXJhY3RlcnNgLFxuICAgICk7XG4gICAgY29uc29sZS50cmFjZShgcGF0aDogXCIke3BhdGhTdHJpbmdPclBhdGhQYXJ0c31cImApO1xuICB9XG5cbiAgcGF0aFN0cmluZ09yUGF0aFBhcnRzID0gKHBhdGhTdHJpbmdPclBhdGhQYXJ0cyB8fCAnJylcbiAgICAucmVwbGFjZSgvXFxcXC9nLCAnLycpXG4gICAgLnJlcGxhY2UoL1xcL1xcLy9nLCAnLycpXG4gICAgLnJlcGxhY2UoL1xcL1xcLy9nLCAnLycpOyAvLyBUT0RPIHByb2JhYmx5IG5vdCBuZWVkZWRcblxuICBsZXQgaXNXaW5kb3dzID0gZmFsc2U7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICBcblxuICBjb25zdCByZWdleFdpblBhdGgxID0gL14oXFwvKVthLXpBLVpdXFw6LztcblxuXG4gIGlmIChpc1dpbmRvd3MgJiYgcmVnZXhXaW5QYXRoMS50ZXN0KHBhdGhTdHJpbmdPclBhdGhQYXJ0cykpIHtcbiAgICBwYXRoU3RyaW5nT3JQYXRoUGFydHMgPSBwYXRoU3RyaW5nT3JQYXRoUGFydHMuc2xpY2UoMSk7XG4gIH1cblxuXG5cblxuXG5cblxuXG5cblxuXG4gIHJldHVybiBwYXRoU3RyaW5nT3JQYXRoUGFydHM7XG59O1xuXG5leHBvcnQgeyAgIF8sICAgcSwgICBtb21lbnQsICAgZGF0ZWZvcm1hdCwgICBjcm9zc1BsYXRmb3JtUGF0aCwgICB3aW4zMlBhdGgsICAgcGF0aCwgICBjaGFsaywgICBqc29uNSwgICAkLCB9Oy8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuXG5cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICBcblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRucC1jb3JlIGxpYi9jb3JlLWltcG9ydHMudHMiXX0=
|