ng2-rest 16.5.6 → 16.5.7
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/README.md +135 -135
- package/assets/shared/shared_folder_info.txt +1 -1
- package/browser/README.md +24 -24
- package/browser/esm2022/lib/models.mjs +9 -1
- package/browser/fesm2022/ng2-rest.mjs +8 -0
- package/browser/fesm2022/ng2-rest.mjs.map +1 -1
- package/browser/lib/models.d.ts +6 -2
- package/client/README.md +24 -24
- package/client/esm2022/lib/models.mjs +9 -1
- package/client/fesm2022/ng2-rest.mjs +8 -0
- package/client/fesm2022/ng2-rest.mjs.map +1 -1
- package/client/lib/models.d.ts +6 -2
- package/client/package.json +32 -32
- package/lib/models.d.ts +6 -2
- package/lib/models.js +13 -0
- package/lib/models.js.map +1 -1
- package/package.json +4 -4
- package/package.json_devDependencies.json +217 -217
- package/package.json_tnp.json5 +53 -53
- package/tmp-environment.json +36 -36
- package/websql/README.md +24 -24
- package/websql/esm2022/lib/models.mjs +9 -1
- package/websql/fesm2022/ng2-rest.mjs +8 -0
- package/websql/fesm2022/ng2-rest.mjs.map +1 -1
- package/websql/lib/models.d.ts +6 -2
package/tmp-environment.json
CHANGED
|
@@ -57,7 +57,7 @@
|
|
|
57
57
|
"workerPlugins": {}
|
|
58
58
|
},
|
|
59
59
|
"name": "ng2-rest",
|
|
60
|
-
"version": "16.5.
|
|
60
|
+
"version": "16.5.7",
|
|
61
61
|
"scripts": {
|
|
62
62
|
"build:watch": "npm-run watch \"morphi build\" src"
|
|
63
63
|
},
|
|
@@ -83,14 +83,14 @@
|
|
|
83
83
|
"@types/lodash": "4.14.92",
|
|
84
84
|
"axios": "1.3.5",
|
|
85
85
|
"diff": "3.2.0",
|
|
86
|
-
"json10": "~16.5.
|
|
86
|
+
"json10": "~16.5.7",
|
|
87
87
|
"json5": "2.2.1",
|
|
88
88
|
"lodash": "4.17.20",
|
|
89
|
-
"ng2-logger": "~16.5.
|
|
89
|
+
"ng2-logger": "~16.5.9"
|
|
90
90
|
},
|
|
91
91
|
"license": "MIT",
|
|
92
92
|
"private": false,
|
|
93
|
-
"lastBuildTagHash": "
|
|
93
|
+
"lastBuildTagHash": "a6a8a22456399ce57078f7167174d405c679d33e",
|
|
94
94
|
"devDependencies": {
|
|
95
95
|
"@angular-devkit/build-angular": "~16.0.5",
|
|
96
96
|
"@angular-devkit/core": "~16.0.5",
|
|
@@ -170,8 +170,8 @@
|
|
|
170
170
|
"angular-material-css-vars": "5.0.2",
|
|
171
171
|
"angular-resize-event": "3.2.0",
|
|
172
172
|
"animate.css": "4.1.1 ",
|
|
173
|
-
"any-project-cli": "~16.5.
|
|
174
|
-
"background-worker-process": "~16.5.
|
|
173
|
+
"any-project-cli": "~16.5.7",
|
|
174
|
+
"background-worker-process": "~16.5.7",
|
|
175
175
|
"base32": "0.0.7",
|
|
176
176
|
"bcryptjs": "2.4.3",
|
|
177
177
|
"better-sqlite3": "7.6.2",
|
|
@@ -217,13 +217,13 @@
|
|
|
217
217
|
"file-saver": "2.0.5",
|
|
218
218
|
"file-type": "18.5.0",
|
|
219
219
|
"firedev": "^16",
|
|
220
|
-
"firedev-crud": "~16.5.
|
|
221
|
-
"firedev-crud-deamon": "~16.5.
|
|
222
|
-
"firedev-ports": "~16.5.
|
|
223
|
-
"firedev-storage": "~16.5.
|
|
224
|
-
"firedev-type-sql": "~16.5.
|
|
225
|
-
"firedev-typeorm": "~16.5.
|
|
226
|
-
"firedev-ui": "~16.5.
|
|
220
|
+
"firedev-crud": "~16.5.7",
|
|
221
|
+
"firedev-crud-deamon": "~16.5.7",
|
|
222
|
+
"firedev-ports": "~16.5.7",
|
|
223
|
+
"firedev-storage": "~16.5.7",
|
|
224
|
+
"firedev-type-sql": "~16.5.7",
|
|
225
|
+
"firedev-typeorm": "~16.5.8",
|
|
226
|
+
"firedev-ui": "~16.5.7",
|
|
227
227
|
"fkill": "6.1.0",
|
|
228
228
|
"font-awesome": "4.7.0",
|
|
229
229
|
"form-data": "4.0.0",
|
|
@@ -240,11 +240,11 @@
|
|
|
240
240
|
"image-focus": "1.2.1",
|
|
241
241
|
"immer": "10.0.2",
|
|
242
242
|
"immutable": "4.3.0",
|
|
243
|
-
"incremental-compiler": "~16.5.
|
|
243
|
+
"incremental-compiler": "~16.5.17",
|
|
244
244
|
"inquirer": "7.3.3",
|
|
245
245
|
"inquirer-autocomplete-prompt": "1.3.0",
|
|
246
246
|
"is-elevated": "3.0.0",
|
|
247
|
-
"isomorphic-region-loader": "~16.5.
|
|
247
|
+
"isomorphic-region-loader": "~16.5.7",
|
|
248
248
|
"istanbul-instrumenter-loader": "2.0.0",
|
|
249
249
|
"jest": "29.5.0",
|
|
250
250
|
"jest-date-mock": "1.0.8",
|
|
@@ -255,29 +255,29 @@
|
|
|
255
255
|
"joi": "17.9.2",
|
|
256
256
|
"jscodeshift": "0.6.3",
|
|
257
257
|
"json-stringify-safe": "5.0.1",
|
|
258
|
-
"json10-writer": "~16.5.
|
|
258
|
+
"json10-writer": "~16.5.7",
|
|
259
259
|
"json5-writer": "0.2.0",
|
|
260
260
|
"jszip": "3.10.1",
|
|
261
261
|
"karma-cli": "1.0.1",
|
|
262
262
|
"lnk": "1.0.1",
|
|
263
263
|
"localforage": "1.10.0",
|
|
264
264
|
"lockfile": "1.0.4",
|
|
265
|
-
"lodash-walk-object": "~16.5.
|
|
265
|
+
"lodash-walk-object": "~16.5.7",
|
|
266
266
|
"lowdb": "1.0.0",
|
|
267
|
-
"magic-renamer": "~16.5.
|
|
267
|
+
"magic-renamer": "~16.5.7",
|
|
268
268
|
"material-design-icons": "3.0.1",
|
|
269
269
|
"method-override": "2.3.10",
|
|
270
270
|
"minimist": "1.2.0",
|
|
271
271
|
"mkdirp": "0.5.1",
|
|
272
272
|
"mocha": "10.2.0",
|
|
273
273
|
"moment": "2.29.3",
|
|
274
|
-
"morphi": "~16.5.
|
|
274
|
+
"morphi": "~16.5.6",
|
|
275
275
|
"ng-for-track-by-property": "16.0.1",
|
|
276
276
|
"ng-in-viewport": "15.0.2",
|
|
277
277
|
"ng-lock": "16.0.1",
|
|
278
278
|
"ng-packagr": "16.0.1",
|
|
279
|
-
"ng-talkback": "~16.5.
|
|
280
|
-
"ng2-rest": "~16.5.
|
|
279
|
+
"ng-talkback": "~16.5.6",
|
|
280
|
+
"ng2-rest": "~16.5.6",
|
|
281
281
|
"ngx-ace-wrapper": "14.0.0",
|
|
282
282
|
"ngx-editor": "15.3.0",
|
|
283
283
|
"ngx-highlightjs": "9.0.0",
|
|
@@ -290,7 +290,7 @@
|
|
|
290
290
|
"ngx-scrolltop": "6.0.0",
|
|
291
291
|
"ngx-store": "3.1.1",
|
|
292
292
|
"ngx-typed-js": "2.1.1",
|
|
293
|
-
"node-cli-tester": "~16.5.
|
|
293
|
+
"node-cli-tester": "~16.5.6",
|
|
294
294
|
"node-localstorage": "2.1.6",
|
|
295
295
|
"node-notifier": "6.0.0",
|
|
296
296
|
"node-polyfill-webpack-plugin": "2.0.1",
|
|
@@ -317,7 +317,7 @@
|
|
|
317
317
|
"q": "1.5.1",
|
|
318
318
|
"rallax.js": "2.0.4",
|
|
319
319
|
"randomcolor": "0.5.3",
|
|
320
|
-
"record-replay-req-res-scenario": "~16.5.
|
|
320
|
+
"record-replay-req-res-scenario": "~16.5.6",
|
|
321
321
|
"reflect-metadata": "0.1.10",
|
|
322
322
|
"rimraf": "2.6.2",
|
|
323
323
|
"rxjs": "~7.8.0",
|
|
@@ -328,7 +328,7 @@
|
|
|
328
328
|
"socket.io": "2.4.1",
|
|
329
329
|
"sort-package-json": "1.11.0",
|
|
330
330
|
"sql.js": "1.8.0",
|
|
331
|
-
"static-columns": "~16.5.
|
|
331
|
+
"static-columns": "~16.5.8",
|
|
332
332
|
"string-similarity": "4.0.2",
|
|
333
333
|
"sudo-block": "3.0.0",
|
|
334
334
|
"supertest": "6.3.3",
|
|
@@ -336,12 +336,12 @@
|
|
|
336
336
|
"systeminformation": "3.45.7",
|
|
337
337
|
"task.js": "0.1.5",
|
|
338
338
|
"threads": "1.7.0",
|
|
339
|
-
"tnp-cli": "~16.5.
|
|
340
|
-
"tnp-config": "~16.5.
|
|
341
|
-
"tnp-core": "~16.5.
|
|
342
|
-
"tnp-db": "~16.5.
|
|
343
|
-
"tnp-helpers": "~16.5.
|
|
344
|
-
"tnp-models": "~16.5.
|
|
339
|
+
"tnp-cli": "~16.5.6",
|
|
340
|
+
"tnp-config": "~16.5.8",
|
|
341
|
+
"tnp-core": "~16.5.13",
|
|
342
|
+
"tnp-db": "~16.5.7",
|
|
343
|
+
"tnp-helpers": "~16.5.8",
|
|
344
|
+
"tnp-models": "~16.5.7",
|
|
345
345
|
"ts-debug": "1.3.0",
|
|
346
346
|
"ts-loader": "2.3.1",
|
|
347
347
|
"ts-node": "10.9.1",
|
|
@@ -350,29 +350,29 @@
|
|
|
350
350
|
"turndown": "7.1.2",
|
|
351
351
|
"typeorm": "~0.3.10",
|
|
352
352
|
"typescript": "~5.0.2",
|
|
353
|
-
"typescript-class-helpers": "~16.5.
|
|
353
|
+
"typescript-class-helpers": "~16.5.8",
|
|
354
354
|
"typescript-formatter": "~7.2.2",
|
|
355
355
|
"underscore": "1.9.1",
|
|
356
356
|
"uuid": "8.3.2",
|
|
357
357
|
"validator": "9.2.0",
|
|
358
358
|
"video.js": "8.3.0",
|
|
359
|
-
"vpn-split": "~16.5.
|
|
359
|
+
"vpn-split": "~16.5.7",
|
|
360
360
|
"watch": "1.0.2",
|
|
361
361
|
"yup": "1.1.1",
|
|
362
362
|
"zone.js": "~0.13.0"
|
|
363
363
|
}
|
|
364
364
|
},
|
|
365
365
|
"build": {
|
|
366
|
-
"number":
|
|
367
|
-
"date": "2024-01-
|
|
368
|
-
"hash": "
|
|
366
|
+
"number": 882,
|
|
367
|
+
"date": "2024-01-21T12:23:59.000Z",
|
|
368
|
+
"hash": "32ddb686cd5e92f02b6182f073cc970cad13a6bd",
|
|
369
369
|
"options": {}
|
|
370
370
|
},
|
|
371
371
|
"currentProjectName": "ng2-rest",
|
|
372
372
|
"currentProjectGenericName": "ng2-rest",
|
|
373
373
|
"currentProjectTasksConfiguration": "{\"version\":\"2.0.0\",\"tasks\":[{\"label\":\"terminateall\",\"command\":\"echo ${input:terminate}\",\"type\":\"shell\",\"problemMatcher\":[]},{\"label\":\"Ng Serve\",\"type\":\"shell\",\"command\":\"tnp build\",\"isBackground\":true,\"presentation\":{\"reveal\":\"always\"},\"group\":{\"kind\":\"build\",\"isDefault\":true},\"problemMatcher\":{\"owner\":\"typescript\",\"source\":\"ts\",\"applyTo\":\"closedDocuments\",\"fileLocation\":[\"relative\",\"${cwd}\"],\"pattern\":\"$tsc\",\"background\":{\"activeOnStart\":true,\"beginsPattern\":{\"regexp\":\"(.*?)\"},\"endsPattern\":{\"regexp\":\"Compiled |Failed to compile.\"}}}}],\"inputs\":[{\"id\":\"terminate\",\"type\":\"command\",\"command\":\"workbench.action.tasks.terminate\",\"args\":\"terminateAll\"}]}",
|
|
374
374
|
"currentProjectType": "isomorphic-lib",
|
|
375
|
-
"currentFrameworkVersion": "16.5.
|
|
375
|
+
"currentFrameworkVersion": "16.5.17",
|
|
376
376
|
"isStandaloneProject": true,
|
|
377
377
|
"isSmartContainer": false,
|
|
378
378
|
"frameworks": [
|
package/websql/README.md
CHANGED
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
# MyLib
|
|
2
|
-
|
|
3
|
-
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 13.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
|
+
# MyLib
|
|
2
|
+
|
|
3
|
+
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 13.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.
|
|
@@ -47,6 +47,11 @@ export var Models;
|
|
|
47
47
|
return ['ok', 'true'].includes(this.responseText.trim());
|
|
48
48
|
}
|
|
49
49
|
}
|
|
50
|
+
get numericValue() {
|
|
51
|
+
if (!Helpers.isBlob(this.responseText)) {
|
|
52
|
+
return Number(this.responseText?.trim());
|
|
53
|
+
}
|
|
54
|
+
}
|
|
50
55
|
get rawJson() {
|
|
51
56
|
if (!Helpers.isBlob(this.responseText)) {
|
|
52
57
|
let res = this.toJSON(this.responseText, this.isArray);
|
|
@@ -72,6 +77,9 @@ export var Models;
|
|
|
72
77
|
return res;
|
|
73
78
|
}
|
|
74
79
|
}
|
|
80
|
+
/**
|
|
81
|
+
* undefined when blob
|
|
82
|
+
*/
|
|
75
83
|
get text() {
|
|
76
84
|
if (!Helpers.isBlob(this.responseText)) {
|
|
77
85
|
return this.responseText.replace(/^\"/, '').replace(/\"$/, '');
|
|
@@ -159,4 +167,4 @@ export var Models;
|
|
|
159
167
|
})(Models || (Models = {}));
|
|
160
168
|
;
|
|
161
169
|
({}); // @--end-of-file-for-module=ng2-rest lib/models.ts
|
|
162
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWJ1bmRsZS13ZWJzcWwvbmcyLXJlc3QvcHJvamVjdHMvbmcyLXJlc3Qvc3JjL2xpYi9tb2RlbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNsQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRXBDLE9BQU8sRUFBRSxNQUFNLElBQUksYUFBYSxFQUFFLE1BQU0saUNBQWlDLENBQUE7QUFDekUsT0FBTyxFQUFFLE1BQU0sRUFBUSxNQUFNLGVBQWUsQ0FBQztBQUM3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXBDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxLQUFLO0FBQ0wsS0FBSztBQUlMLE1BQU0sS0FBVyxNQUFNLENBNlJ0QjtBQTdSRCxXQUFpQixNQUFNO0lBS1AsbUJBQVksR0FBRyxhQUFhLENBQUMsWUFBWSxDQUFDO0lBQzFDLGtCQUFXLEdBQUcsYUFBYSxDQUFDLFdBQVcsQ0FBQztJQUN4QyxrQkFBVyxHQUFHLGFBQWEsQ0FBQyxXQUFXLENBQUE7SUE0RXBELENBQUM7SUFLRCxDQUFDO0lBV0QsRUFBRSxDQUFDO0lBRUosTUFBc0IsUUFBUTtRQUNsQixNQUFNLENBQUMsSUFBSSxFQUFFLFdBQVcsR0FBRyxLQUFLO1lBQ3hDLElBQUksQ0FBQyxHQUFHLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDOUIsSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRLEVBQUU7Z0JBQzVCLElBQUk7b0JBQ0YsQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFB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UUFBUSxDQUFRLENBQUM7UUFDL0YsQ0FBQztRQUVELElBQUksS0FBSztZQUNQLElBQUksQ0FBQyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUU7Z0JBQzFCLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDbEM7WUFDRCxPQUFPLElBQUksWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2hDLENBQUM7S0FFRjtJQW5EWSxtQkFBWSxlQW1EeEIsQ0FBQTtJQUVELE1BQWEsaUJBQWtCLFNBQVEsWUFBaUI7UUFLdEQsWUFDUyxPQUFlLEVBQ3RCLFlBQXFCLEVBQ3JCLE9BQXFCLEVBQ3JCLFVBQThCLEVBQ3ZCLEtBQWM7WUFFckIsS0FBSyxDQUFDLFlBQVksRUFBRSxPQUFPLEVBQUUsVUFBVSxDQUFDLENBQUM7WUFObEMsWUFBTyxHQUFQLE9BQU8sQ0FBUTtZQUlmLFVBQUssR0FBTCxLQUFLLENBQVM7WUFHckIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLFNBQVMsQ0FBQyxZQUFZLENBQUMsQ0FBQTtRQUN6QyxDQUFDO0tBQ0Y7SUFmWSx3QkFBaUIsb0JBZTdCLENBQUE7SUFZSCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7QUFFTCxDQUFDLEVBN1JnQixNQUFNLEtBQU4sTUFBTSxRQTZSdEI7QUFFQSxDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLG1EQUFtRCIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBMb2csIExldmVsIH0gZnJvbSAnbmcyLWxvZ2dlci93ZWJzcWwnO1xuaW1wb3J0IHsgUmVzdEhlYWRlcnMgfSBmcm9tICcuL3Jlc3QtaGVhZGVycyc7XG5pbXBvcnQgeyBSZXN0IH0gZnJvbSAnLi9yZXN0LmNsYXNzJztcbmltcG9ydCB7IENvb2tpZSB9IGZyb20gJy4vY29va2llJztcbmltcG9ydCB7IE1hcHBpbmcgfSBmcm9tICcuL21hcHBpbmcnO1xuaW1wb3J0IHsgQXhpb3NSZXNwb25zZSB9IGZyb20gJ2F4aW9zJztcbmltcG9ydCB7IE1vZGVscyBhcyBIZWxwZXJzTW9kZWxzIH0gZnJvbSAndHlwZXNjcmlwdC1jbGFzcy1oZWxwZXJzL3dlYnNxbCdcbmltcG9ydCB7IEpTT04xMCwgQ2lyYyB9IGZyb20gJ2pzb24xMC93ZWJzcWwnO1xuaW1wb3J0IHsgUmVxdWVzdENhY2hlIH0gZnJvbSAnLi9yZXF1ZXN0LWNhY2hlJztcbmltcG9ydCB7IF8gfSBmcm9tICd0bnAtY29yZS93ZWJzcWwnO1xuaW1wb3J0IHsgQ29uZmlnTW9kZWxzIH0gZnJvbSAndG5wLWNvbmZpZy93ZWJzcWwnO1xuaW1wb3J0IHsgSGVscGVycyB9IGZyb20gJ3RucC1jb3JlL3dlYnNxbCc7XG4vKiAqL1xuLyogKi9cbiAgXG5cblxuZXhwb3J0IG5hbWVzcGFjZSBNb2RlbHMge1xuXG4gIGV4cG9ydCBpbXBvcnQgSHR0cE1ldGhvZCA9IENvbmZpZ01vZGVscy5IdHRwTWV0aG9kO1xuICBleHBvcnQgaW1wb3J0IFBhcmFtVHlwZSA9IENvbmZpZ01vZGVscy5QYXJhbVR5cGU7XG5cbiAgZXhwb3J0IGltcG9ydCBNZXRob2RDb25maWcgPSBIZWxwZXJzTW9kZWxzLk1ldGhvZENvbmZpZztcbiAgZXhwb3J0IGltcG9ydCBDbGFzc0NvbmZpZyA9IEhlbHBlcnNNb2RlbHMuQ2xhc3NDb25maWc7XG4gIGV4cG9ydCBpbXBvcnQgUGFyYW1Db25maWcgPSBIZWxwZXJzTW9kZWxzLlBhcmFtQ29uZmlnXG5cblxuICBleHBvcnQgaW50ZXJmYWNlIEhhbmRsZVJlc3VsdE9wdGlvbnMge1xuICAgIHJlczogTW9kZWxzLk1vY2tSZXNwb25zZTtcbiAgICBtZXRob2Q6IE1vZGVscy5IdHRwTWV0aG9kO1xuICAgIGpvYmlkPzogbnVtYmVyO1xuICAgIGlzQXJyYXk/OiBib29sZWFuO1xuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBIYW5kbGVSZXN1bHRTb3VyY2VSZXF1ZXN0T3B0aW9ucyB7XG4gICAgdXJsOiBzdHJpbmcsXG4gICAgbWV0aG9kOiBNb2RlbHMuSHR0cE1ldGhvZCxcblxuICAgIGJvZHk6IGFueSxcbiAgICBpc0FycmF5OiBib29sZWFuLFxuICB9XG5cbiAgZXhwb3J0IHR5cGUgQmFja2VuZEVycm9yID0ge1xuICAgIG1zZz86IHN0cmluZztcbiAgICBzdGFjaz86IHN0cmluZ1tdO1xuICAgIGRhdGE6IGFueTtcbiAgfVxuXG4gIGV4cG9ydCB0eXBlIE1ldGFSZXF1ZXN0ID0ge1xuICAgIHBhdGg6IHN0cmluZyxcbiAgICBlbmRwb2ludDogc3RyaW5nO1xuICAgIGVudGl0eTogTWFwcGluZy5NYXBwaW5nO1xuICAgIGNpcmN1bGFyOiBDaXJjW107XG4gIH1cbiAgZXhwb3J0IHR5cGUgSHR0cENvZGUgPSAyMDAgfCA0MDAgfCA0MDEgfCA0MDQgfCA1MDA7XG5cbiAgZXhwb3J0IHR5cGUgUHJvbWlzZU9ic2VydmFibGVNaXg8VD4gPSBQcm9taXNlPFQ+ICYge1xuICAgIGNhY2hlPzogUmVxdWVzdENhY2hlLFxuICAgIG9ic2VydmFibGU6IE9ic2VydmFibGU8VD47XG4gIH1cblxuICBleHBvcnQgdHlwZSBNZXRob2RXaXRob3V0Qm9keTxFLCBULCBSID0gUHJvbWlzZU9ic2VydmFibGVNaXg8RT4+ID0gKHBhcmFtcz86IFVybFBhcmFtc1tdLCBkb05vdFNlcmlhbGl6ZVBhcmFtcz86IGJvb2xlYW4pID0+IFJcbiAgZXhwb3J0IHR5cGUgTWV0aG9kV2l0aEJvZHk8RSwgVCwgUiA9IFByb21pc2VPYnNlcnZhYmxlTWl4PEU+PiA9IChpdGVtPzogVCwgcGFyYW1zPzogVXJsUGFyYW1zW10sIGRvTm90U2VyaWFsaXplUGFyYW1zPzogYm9vbGVhbikgPT4gUlxuICBleHBvcnQgdHlwZSBSZXBsYXlEYXRhID0ge1xuICAgIHN1YmplY3Q6IFN1YmplY3Q8YW55PixcbiAgICBkYXRhOiB7IHVybDogc3RyaW5nLCBib2R5OiBzdHJpbmcsIGhlYWRlcnM6IFJlc3RIZWFkZXJzLCBpc0FycmF5OiBib29sZWFuOyB9LFxuICAgIC8qKlxuICAgICAqIGpvYmlkXG4gICAgICovXG4gICAgaWQ6IG51bWJlcjtcbiAgfTtcbiAgZXhwb3J0IHR5cGUgUmVxUGFyYW1zID0geyB1cmw6IHN0cmluZywgbWV0aG9kOiBDb25maWdNb2RlbHMuSHR0cE1ldGhvZCwgaGVhZGVycz86IFJlc3RIZWFkZXJzLCBib2R5PzogYW55LCBqb2JpZDogbnVtYmVyLCBpc0FycmF5OiBib29sZWFuIH07XG5cbiAgZXhwb3J0IGludGVyZmFjZSBSZXNvdXJjZU1vZGVsPEEsIFRBPiB7XG4gICAgbW9kZWw6IChwYXRoTW9kZWxzPzogT2JqZWN0LCByZXNwb25zZU9iamVjdFR5cGU/OiBGdW5jdGlvbikgPT4gUmVzdDxBLCBUQT4sXG4gICAgcmVwbGF5OiAobWV0aG9kOiBDb25maWdNb2RlbHMuSHR0cE1ldGhvZCkgPT4gdm9pZDtcbiAgICBoZWFkZXJzOiBSZXN0SGVhZGVycztcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgTmcyUmVzdE1ldGhvZHM8RSwgVD4ge1xuICAgIGdldDogTWV0aG9kV2l0aG91dEJvZHk8RSwgVD47XG4gICAgcG9zdDogTWV0aG9kV2l0aEJvZHk8RSwgVD47XG4gICAgcHV0OiBNZXRob2RXaXRoQm9keTxFLCBUPjtcbiAgICBwYXRjaDogTWV0aG9kV2l0aEJvZHk8RSwgVD47XG4gICAgaGVhZDogTWV0aG9kV2l0aG91dEJvZHk8RSwgVD47XG4gICAgZGVsZXRlOiBNZXRob2RXaXRob3V0Qm9keTxFLCBUPjtcbiAgICBqc29ucDogTWV0aG9kV2l0aG91dEJvZHk8RSwgVD47XG4gIH1cblxuICBleHBvcnQgdHlwZSBNb2NrQ29udHJvbGxlciA9IChcbiAgICB1cmw6IHN0cmluZyxcbiAgICBtZXRob2Q6IENvbmZpZ01vZGVscy5IdHRwTWV0aG9kLFxuICAgIGhlYWRlcnM/OiBSZXN0SGVhZGVycyxcbiAgICBib2R5PzogYW55XG4gICkgPT4gTW9ja1Jlc3BvbnNlO1xuXG4gIGV4cG9ydCB0eXBlIE1vY2tIdHRwID0gKE1vY2tSZXNwb25zZSB8IE1vY2tDb250cm9sbGVyKTtcblxuICBleHBvcnQgaW50ZXJmYWNlIEZuTWV0aG9kc0h0dHA8VCwgVEE+IGV4dGVuZHMgTmcyUmVzdE1ldGhvZHM8SHR0cFJlc3BvbnNlPFQ+LCBUPiB7XG4gICAgYXJyYXk6IE5nMlJlc3RNZXRob2RzPEh0dHBSZXNwb25zZTxUQT4sIFRBPjtcbiAgfTtcblxuICBleHBvcnQgaW50ZXJmYWNlIEZuTWV0aG9kc0h0dHBXaXRoTW9jazxULCBUQT4gZXh0ZW5kcyBOZzJSZXN0TWV0aG9kczxIdHRwUmVzcG9uc2U8VD4sIFQ+IHtcbiAgICBhcnJheTogTmcyUmVzdE1ldGhvZHM8SHR0cFJlc3BvbnNlPFRBPiwgVEE+O1xuICAgIG1vY2sobW9jazogTW9ja0h0dHAsIGNvZGU6IEh0dHBDb2RlKTogRm5NZXRob2RzSHR0cDxULCBUQT47XG4gIH07XG5cblxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgTmVzdGVkUGFyYW1zIHtcbiAgICBbcGFyYW1zOiBzdHJpbmddOiBzdHJpbmc7XG4gIH1cblxuICBleHBvcnQgaW50ZXJmYWNlIFVybFBhcmFtcyB7XG4gICAgW3VybE1vZGVsTmFtZTogc3RyaW5nXTogc3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbiB8IFJlZ0V4cCB8IE9iamVjdDtcbiAgICByZWdleD86IFJlZ0V4cDtcbiAgfVtdO1xuXG4gIGV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlQm9keSB7XG4gICAgcHJvdGVjdGVkIHRvSlNPTihkYXRhLCBpc0pTT05BcnJheSA9IGZhbHNlKSB7XG4gICAgICBsZXQgciA9IGlzSlNPTkFycmF5ID8gW10gOiB7fTtcbiAgICAgIGlmICh0eXBlb2YgZGF0YSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICByID0gSlNPTi5wYXJzZShkYXRhKTtcbiAgICAgICAgfSBjYXRjaCAoZSkgeyB9XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiBkYXRhID09PSAnb2JqZWN0Jykge1xuICAgICAgICByZXR1cm4gZGF0YTtcbiAgICAgIH1cbiAgICAgIHJldHVybiByIGFzIGFueTtcbiAgICB9XG4gIH1cblxuICBleHBvcnQgY2xhc3MgSHR0cEJvZHk8VD4gZXh0ZW5kcyBCYXNlQm9keSB7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlc3BvbnNlVGV4dDogc3RyaW5nIHwgQmxvYiwgcHJpdmF0ZSBpc0FycmF5ID0gZmFsc2UsXG4gICAgICBwcml2YXRlIGVudGl0eTogTWFwcGluZy5NYXBwaW5nLFxuICAgICAgcHJpdmF0ZSBjaXJjdWxhcjogQ2lyY1tdXG4gICAgKSB7XG4gICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgYmxvYigpOiBCbG9iIHtcbiAgICAgIHJldHVybiB0aGlzLnJlc3BvbnNlVGV4dCBhcyBCbG9iO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgYm9vbGVhblZhbHVlKCkge1xuICAgICAgaWYgKCFIZWxwZXJzLmlzQmxvYih0aGlzLnJlc3BvbnNlVGV4dCkpIHtcbiAgICAgICAgcmV0dXJuIFsnb2snLCAndHJ1ZSddLmluY2x1ZGVzKCh0aGlzLnJlc3BvbnNlVGV4dCBhcyBzdHJpbmcpLnRyaW0oKSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGdldCByYXdKc29uKCk6IFBhcnRpYWw8VD4ge1xuICAgICAgaWYgKCFIZWxwZXJzLmlzQmxvYih0aGlzLnJlc3BvbnNlVGV4dCkpIHtcbiAgICAgICAgbGV0IHJlcyA9IHRoaXMudG9KU09OKHRoaXMucmVzcG9uc2VUZXh0LCB0aGlzLmlzQXJyYXkpO1xuICAgICAgICBpZiAodGhpcy5jaXJjdWxhciAmJiBBcnJheS5pc0FycmF5KHRoaXMuY2lyY3VsYXIpKSB7XG4gICAgICAgICAgcmVzID0gSlNPTjEwLnBhcnNlKEpTT04uc3RyaW5naWZ5KHJlcyksIHRoaXMuY2lyY3VsYXIpXG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcmVzO1xuICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBnZXQganNvbigpOiBUIHtcbiAgICAgIGlmICghSGVscGVycy5pc0Jsb2IodGhpcy5yZXNwb25zZVRleHQpKSB7XG4gICAgICAgIGlmICh0aGlzLmVudGl0eSAmJiB0eXBlb2YgdGhpcy5lbnRpdHkgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5lbnRpdHkoKTsgLy8gQExBU1RcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5lbnRpdHkgJiYgdHlwZW9mIHRoaXMuZW50aXR5ID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgIGNvbnN0IGpzb24gPSB0aGlzLnRvSlNPTih0aGlzLnJlc3BvbnNlVGV4dCwgdGhpcy5pc0FycmF5KTtcbiAgICAgICAgICByZXR1cm4gTWFwcGluZy5lbmNvZGUoanNvbiwgdGhpcy5lbnRpdHksIHRoaXMuY2lyY3VsYXIpIGFzIGFueTtcbiAgICAgICAgfVxuICAgICAgICBsZXQgcmVzID0gdGhpcy50b0pTT04odGhpcy5yZXNwb25zZVRleHQsIHRoaXMuaXNBcnJheSk7XG4gICAgICAgIGlmICh0aGlzLmNpcmN1bGFyICYmIEFycmF5LmlzQXJyYXkodGhpcy5jaXJjdWxhcikpIHtcbiAgICAgICAgICByZXMgPSBKU09OMTAucGFyc2UoSlNPTi5zdHJpbmdpZnkocmVzKSwgdGhpcy5jaXJjdWxhcilcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVzO1xuICAgICAgfVxuICAgIH1cbiAgICBwdWJsaWMgZ2V0IHRleHQoKSB7XG4gICAgICBpZiAoIUhlbHBlcnMuaXNCbG9iKHRoaXMucmVzcG9uc2VUZXh0KSkge1xuXG4gICAgICAgIHJldHVybiAodGhpcy5yZXNwb25zZVRleHQgYXMgc3RyaW5nKS5yZXBsYWNlKC9eXFxcIi8sICcnKS5yZXBsYWNlKC9cXFwiJC8sICcnKVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGV4cG9ydCBjbGFzcyBFcnJvckJvZHkgZXh0ZW5kcyBCYXNlQm9keSB7XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBkYXRhKSB7XG4gICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQganNvbigpOiBPYmplY3Qge1xuICAgICAgcmV0dXJuIHRoaXMudG9KU09OKHRoaXMuZGF0YSk7XG4gICAgfVxuICAgIHB1YmxpYyBnZXQgdGV4dCgpIHtcbiAgICAgIHJldHVybiB0aGlzLmRhdGFcbiAgICB9XG4gIH1cblxuXG4gIGV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlUmVzcG9uc2U8VD4ge1xuICAgIHByb3RlY3RlZCBzdGF0aWMgcmVhZG9ubHkgY29va2llcyA9IENvb2tpZS5JbnN0YW5jZTtcblxuICAgIHB1YmxpYyBnZXQgY29va2llcygpIHtcbiAgICAgIHJldHVybiBCYXNlUmVzcG9uc2UuY29va2llcztcbiAgICB9XG4gICAgY29uc3RydWN0b3IoXG4gICAgICBwdWJsaWMgcmVzcG9uc2VUZXh0Pzogc3RyaW5nIHwgQmxvYixcbiAgICAgIHB1YmxpYyByZWFkb25seSBoZWFkZXJzPzogUmVzdEhlYWRlcnMsXG4gICAgICBwdWJsaWMgcmVhZG9ubHkgc3RhdHVzQ29kZT86IEh0dHBDb2RlIHwgbnVtYmVyLFxuICAgICAgcHVibGljIGlzQXJyYXkgPSBmYWxzZVxuICAgICkge1xuICAgIH1cbiAgfVxuXG4gIGV4cG9ydCBjbGFzcyBIdHRwUmVzcG9uc2U8VD4gZXh0ZW5kcyBCYXNlUmVzcG9uc2U8VD4ge1xuICAgIHB1YmxpYyBib2R5PzogSHR0cEJvZHk8VD47XG5cblxuXG5cbiAgICBycTogUmVxdWVzdENhY2hlO1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgcHVibGljIHNvdXJjZVJlcXVlc3Q6IE1vZGVscy5IYW5kbGVSZXN1bHRTb3VyY2VSZXF1ZXN0T3B0aW9ucyxcbiAgICAgIHB1YmxpYyByZXNwb25zZVRleHQ/OiBzdHJpbmcgfCBCbG9iLFxuICAgICAgcHVibGljIGhlYWRlcnM/OiBSZXN0SGVhZGVycyxcbiAgICAgIHB1YmxpYyBzdGF0dXNDb2RlPzogSHR0cENvZGUgfCBudW1iZXIsXG4gICAgICBwdWJsaWMgZW50aXR5PzogTWFwcGluZy5NYXBwaW5nIHwgRnVuY3Rpb24sXG4gICAgICBwdWJsaWMgY2lyY3VsYXI/OiBDaXJjW10sXG4gICAgICBwdWJsaWMgam9iaWQ/OiBudW1iZXIsXG4gICAgICBwdWJsaWMgaXNBcnJheSA9IGZhbHNlLFxuICAgICkge1xuXG5cblxuICAgICAgc3VwZXIocmVzcG9uc2VUZXh0LCBoZWFkZXJzLCBzdGF0dXNDb2RlLCBpc0FycmF5KTtcblxuICAgICAgdGhpcy5pbml0KClcbiAgICB9XG5cbiAgICBwdWJsaWMgaW5pdCgpIHtcbiAgICAgIGlmICh0eXBlb2YgdGhpcy5lbnRpdHkgPT09ICdzdHJpbmcnKSB7XG5cbiAgICAgICAgbGV0IGVudGl0eUpTT04gPSB0aGlzLmhlYWRlcnMuZ2V0QWxsKHRoaXMuZW50aXR5KVxuICAgICAgICBpZiAoISFlbnRpdHlKU09OKSB7XG4gICAgICAgICAgdGhpcy5lbnRpdHkgPSBKU09OLnBhcnNlKGVudGl0eUpTT04uam9pbigpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKHR5cGVvZiB0aGlzLmNpcmN1bGFyID09PSAnc3RyaW5nJykge1xuXG4gICAgICAgIGxldCBjaXJjdXJhbEpTT04gPSB0aGlzLmhlYWRlcnMuZ2V0QWxsKHRoaXMuY2lyY3VsYXIpO1xuICAgICAgICBpZiAoISFjaXJjdXJhbEpTT04pIHtcbiAgICAgICAgICB0aGlzLmNpcmN1bGFyID0gSlNPTi5wYXJzZShjaXJjdXJhbEpTT04uam9pbigpKTtcbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgICB0aGlzLmJvZHkgPSBuZXcgSHR0cEJvZHkodGhpcy5yZXNwb25zZVRleHQsIHRoaXMuaXNBcnJheSwgdGhpcy5lbnRpdHksIHRoaXMuY2lyY3VsYXIpIGFzIGFueTtcbiAgICB9XG5cbiAgICBnZXQgY2FjaGUoKSB7XG4gICAgICBpZiAoXy5pc1VuZGVmaW5lZCh0aGlzLnJxKSkge1xuICAgICAgICB0aGlzLnJxID0gbmV3IFJlcXVlc3RDYWNoZSh0aGlzKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBuZXcgUmVxdWVzdENhY2hlKHRoaXMpO1xuICAgIH1cblxuICB9XG5cbiAgZXhwb3J0IGNsYXNzIEh0dHBSZXNwb25zZUVycm9yIGV4dGVuZHMgQmFzZVJlc3BvbnNlPGFueT4ge1xuICAgIHByaXZhdGUgYm9keTogRXJyb3JCb2R5O1xuXG5cblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgcHVibGljIG1lc3NhZ2U6IHN0cmluZyxcbiAgICAgIHJlc3BvbnNlVGV4dD86IHN0cmluZyxcbiAgICAgIGhlYWRlcnM/OiBSZXN0SGVhZGVycyxcbiAgICAgIHN0YXR1c0NvZGU/OiBIdHRwQ29kZSB8IG51bWJlcixcbiAgICAgIHB1YmxpYyBqb2JpZD86IG51bWJlcixcbiAgICApIHtcbiAgICAgIHN1cGVyKHJlc3BvbnNlVGV4dCwgaGVhZGVycywgc3RhdHVzQ29kZSk7XG4gICAgICB0aGlzLmJvZHkgPSBuZXcgRXJyb3JCb2R5KHJlc3BvbnNlVGV4dClcbiAgICB9XG4gIH1cblxuICBleHBvcnQgaW50ZXJmYWNlIE1vY2tSZXNwb25zZSB7XG4gICAgZGF0YT86IGFueTtcbiAgICBjb2RlPzogSHR0cENvZGU7XG4gICAgZXJyb3I/OiBzdHJpbmc7XG4gICAgaGVhZGVycz86IFJlc3RIZWFkZXJzO1xuICAgIGpvYmlkPzogbnVtYmVyO1xuICAgIGlzQXJyYXk6IGJvb2xlYW47XG4gIH1cblxuICBleHBvcnQgdHlwZSBSZXNwb25zZVR5cGVBeGlvcyA9ICdibG9iJyB8ICd0ZXh0J1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICBcbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPW5nMi1yZXN0IGxpYi9tb2RlbHMudHMiXX0=
|
|
170
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWJ1bmRsZS13ZWJzcWwvbmcyLXJlc3QvcHJvamVjdHMvbmcyLXJlc3Qvc3JjL2xpYi9tb2RlbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNsQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRXBDLE9BQU8sRUFBRSxNQUFNLElBQUksYUFBYSxFQUFFLE1BQU0saUNBQWlDLENBQUE7QUFDekUsT0FBTyxFQUFFLE1BQU0sRUFBUSxNQUFNLGVBQWUsQ0FBQztBQUM3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXBDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxLQUFLO0FBQ0wsS0FBSztBQUlMLE1BQU0sS0FBVyxNQUFNLENBc1N0QjtBQXRTRCxXQUFpQixNQUFNO0lBS1AsbUJBQVksR0FBRyxhQUFhLENBQUMsWUFBWSxDQUFDO0lBQzFDLGtCQUFXLEdBQUcsYUFBYSxDQUFDLFdBQVcsQ0FBQztJQUN4QyxrQkFBVyxHQUFHLGFBQWEsQ0FBQyxXQUFXLENBQUE7SUE0RXBELENBQUM7SUFLRCxDQUFDO0lBV0QsRUFBRSxDQUFDO0lBRUosTUFBc0IsUUFBUTtRQUNsQixNQUFNLENBQUMsSUFBSSxFQUFFLFdBQVcsR0FBRyxLQUFLO1lBQ3hDLElBQUksQ0FBQyxHQUFHLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDOUIsSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRLEVBQUU7Z0JBQzVCLElBQUk7b0JBQ0YsQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFB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bXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBMb2csIExldmVsIH0gZnJvbSAnbmcyLWxvZ2dlci93ZWJzcWwnO1xuaW1wb3J0IHsgUmVzdEhlYWRlcnMgfSBmcm9tICcuL3Jlc3QtaGVhZGVycyc7XG5pbXBvcnQgeyBSZXN0IH0gZnJvbSAnLi9yZXN0LmNsYXNzJztcbmltcG9ydCB7IENvb2tpZSB9IGZyb20gJy4vY29va2llJztcbmltcG9ydCB7IE1hcHBpbmcgfSBmcm9tICcuL21hcHBpbmcnO1xuaW1wb3J0IHsgQXhpb3NSZXNwb25zZSB9IGZyb20gJ2F4aW9zJztcbmltcG9ydCB7IE1vZGVscyBhcyBIZWxwZXJzTW9kZWxzIH0gZnJvbSAndHlwZXNjcmlwdC1jbGFzcy1oZWxwZXJzL3dlYnNxbCdcbmltcG9ydCB7IEpTT04xMCwgQ2lyYyB9IGZyb20gJ2pzb24xMC93ZWJzcWwnO1xuaW1wb3J0IHsgUmVxdWVzdENhY2hlIH0gZnJvbSAnLi9yZXF1ZXN0LWNhY2hlJztcbmltcG9ydCB7IF8gfSBmcm9tICd0bnAtY29yZS93ZWJzcWwnO1xuaW1wb3J0IHsgQ29uZmlnTW9kZWxzIH0gZnJvbSAndG5wLWNvbmZpZy93ZWJzcWwnO1xuaW1wb3J0IHsgSGVscGVycyB9IGZyb20gJ3RucC1jb3JlL3dlYnNxbCc7XG4vKiAqL1xuLyogKi9cbiAgXG5cblxuZXhwb3J0IG5hbWVzcGFjZSBNb2RlbHMge1xuXG4gIGV4cG9ydCBpbXBvcnQgSHR0cE1ldGhvZCA9IENvbmZpZ01vZGVscy5IdHRwTWV0aG9kO1xuICBleHBvcnQgaW1wb3J0IFBhcmFtVHlwZSA9IENvbmZpZ01vZGVscy5QYXJhbVR5cGU7XG5cbiAgZXhwb3J0IGltcG9ydCBNZXRob2RDb25maWcgPSBIZWxwZXJzTW9kZWxzLk1ldGhvZENvbmZpZztcbiAgZXhwb3J0IGltcG9ydCBDbGFzc0NvbmZpZyA9IEhlbHBlcnNNb2RlbHMuQ2xhc3NDb25maWc7XG4gIGV4cG9ydCBpbXBvcnQgUGFyYW1Db25maWcgPSBIZWxwZXJzTW9kZWxzLlBhcmFtQ29uZmlnXG5cblxuICBleHBvcnQgaW50ZXJmYWNlIEhhbmRsZVJlc3VsdE9wdGlvbnMge1xuICAgIHJlczogTW9kZWxzLk1vY2tSZXNwb25zZTtcbiAgICBtZXRob2Q6IE1vZGVscy5IdHRwTWV0aG9kO1xuICAgIGpvYmlkPzogbnVtYmVyO1xuICAgIGlzQXJyYXk/OiBib29sZWFuO1xuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBIYW5kbGVSZXN1bHRTb3VyY2VSZXF1ZXN0T3B0aW9ucyB7XG4gICAgdXJsOiBzdHJpbmcsXG4gICAgbWV0aG9kOiBNb2RlbHMuSHR0cE1ldGhvZCxcblxuICAgIGJvZHk6IGFueSxcbiAgICBpc0FycmF5OiBib29sZWFuLFxuICB9XG5cbiAgZXhwb3J0IHR5cGUgQmFja2VuZEVycm9yID0ge1xuICAgIG1zZz86IHN0cmluZztcbiAgICBzdGFjaz86IHN0cmluZ1tdO1xuICAgIGRhdGE6IGFueTtcbiAgfVxuXG4gIGV4cG9ydCB0eXBlIE1ldGFSZXF1ZXN0ID0ge1xuICAgIHBhdGg6IHN0cmluZyxcbiAgICBlbmRwb2ludDogc3RyaW5nO1xuICAgIGVudGl0eTogTWFwcGluZy5NYXBwaW5nO1xuICAgIGNpcmN1bGFyOiBDaXJjW107XG4gIH1cbiAgZXhwb3J0IHR5cGUgSHR0cENvZGUgPSAyMDAgfCA0MDAgfCA0MDEgfCA0MDQgfCA1MDA7XG5cbiAgZXhwb3J0IHR5cGUgUHJvbWlzZU9ic2VydmFibGVNaXg8VD4gPSBQcm9taXNlPFQ+ICYge1xuICAgIGNhY2hlPzogUmVxdWVzdENhY2hlLFxuICAgIG9ic2VydmFibGU6IE9ic2VydmFibGU8VD47XG4gIH1cblxuICBleHBvcnQgdHlwZSBNZXRob2RXaXRob3V0Qm9keTxFLCBULCBSID0gUHJvbWlzZU9ic2VydmFibGVNaXg8RT4+ID0gKHBhcmFtcz86IFVybFBhcmFtc1tdLCBkb05vdFNlcmlhbGl6ZVBhcmFtcz86IGJvb2xlYW4pID0+IFJcbiAgZXhwb3J0IHR5cGUgTWV0aG9kV2l0aEJvZHk8RSwgVCwgUiA9IFByb21pc2VPYnNlcnZhYmxlTWl4PEU+PiA9IChpdGVtPzogVCwgcGFyYW1zPzogVXJsUGFyYW1zW10sIGRvTm90U2VyaWFsaXplUGFyYW1zPzogYm9vbGVhbikgPT4gUlxuICBleHBvcnQgdHlwZSBSZXBsYXlEYXRhID0ge1xuICAgIHN1YmplY3Q6IFN1YmplY3Q8YW55PixcbiAgICBkYXRhOiB7IHVybDogc3RyaW5nLCBib2R5OiBzdHJpbmcsIGhlYWRlcnM6IFJlc3RIZWFkZXJzLCBpc0FycmF5OiBib29sZWFuOyB9LFxuICAgIC8qKlxuICAgICAqIGpvYmlkXG4gICAgICovXG4gICAgaWQ6IG51bWJlcjtcbiAgfTtcbiAgZXhwb3J0IHR5cGUgUmVxUGFyYW1zID0geyB1cmw6IHN0cmluZywgbWV0aG9kOiBDb25maWdNb2RlbHMuSHR0cE1ldGhvZCwgaGVhZGVycz86IFJlc3RIZWFkZXJzLCBib2R5PzogYW55LCBqb2JpZDogbnVtYmVyLCBpc0FycmF5OiBib29sZWFuIH07XG5cbiAgZXhwb3J0IGludGVyZmFjZSBSZXNvdXJjZU1vZGVsPEEsIFRBPiB7XG4gICAgbW9kZWw6IChwYXRoTW9kZWxzPzogT2JqZWN0LCByZXNwb25zZU9iamVjdFR5cGU/OiBGdW5jdGlvbikgPT4gUmVzdDxBLCBUQT4sXG4gICAgcmVwbGF5OiAobWV0aG9kOiBDb25maWdNb2RlbHMuSHR0cE1ldGhvZCkgPT4gdm9pZDtcbiAgICBoZWFkZXJzOiBSZXN0SGVhZGVycztcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgTmcyUmVzdE1ldGhvZHM8RSwgVD4ge1xuICAgIGdldDogTWV0aG9kV2l0aG91dEJvZHk8RSwgVD47XG4gICAgcG9zdDogTWV0aG9kV2l0aEJvZHk8RSwgVD47XG4gICAgcHV0OiBNZXRob2RXaXRoQm9keTxFLCBUPjtcbiAgICBwYXRjaDogTWV0aG9kV2l0aEJvZHk8RSwgVD47XG4gICAgaGVhZDogTWV0aG9kV2l0aG91dEJvZHk8RSwgVD47XG4gICAgZGVsZXRlOiBNZXRob2RXaXRob3V0Qm9keTxFLCBUPjtcbiAgICBqc29ucDogTWV0aG9kV2l0aG91dEJvZHk8RSwgVD47XG4gIH1cblxuICBleHBvcnQgdHlwZSBNb2NrQ29udHJvbGxlciA9IChcbiAgICB1cmw6IHN0cmluZyxcbiAgICBtZXRob2Q6IENvbmZpZ01vZGVscy5IdHRwTWV0aG9kLFxuICAgIGhlYWRlcnM/OiBSZXN0SGVhZGVycyxcbiAgICBib2R5PzogYW55XG4gICkgPT4gTW9ja1Jlc3BvbnNlO1xuXG4gIGV4cG9ydCB0eXBlIE1vY2tIdHRwID0gKE1vY2tSZXNwb25zZSB8IE1vY2tDb250cm9sbGVyKTtcblxuICBleHBvcnQgaW50ZXJmYWNlIEZuTWV0aG9kc0h0dHA8VCwgVEE+IGV4dGVuZHMgTmcyUmVzdE1ldGhvZHM8SHR0cFJlc3BvbnNlPFQ+LCBUPiB7XG4gICAgYXJyYXk6IE5nMlJlc3RNZXRob2RzPEh0dHBSZXNwb25zZTxUQT4sIFRBPjtcbiAgfTtcblxuICBleHBvcnQgaW50ZXJmYWNlIEZuTWV0aG9kc0h0dHBXaXRoTW9jazxULCBUQT4gZXh0ZW5kcyBOZzJSZXN0TWV0aG9kczxIdHRwUmVzcG9uc2U8VD4sIFQ+IHtcbiAgICBhcnJheTogTmcyUmVzdE1ldGhvZHM8SHR0cFJlc3BvbnNlPFRBPiwgVEE+O1xuICAgIG1vY2sobW9jazogTW9ja0h0dHAsIGNvZGU6IEh0dHBDb2RlKTogRm5NZXRob2RzSHR0cDxULCBUQT47XG4gIH07XG5cblxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgTmVzdGVkUGFyYW1zIHtcbiAgICBbcGFyYW1zOiBzdHJpbmddOiBzdHJpbmc7XG4gIH1cblxuICBleHBvcnQgaW50ZXJmYWNlIFVybFBhcmFtcyB7XG4gICAgW3VybE1vZGVsTmFtZTogc3RyaW5nXTogc3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbiB8IFJlZ0V4cCB8IE9iamVjdDtcbiAgICByZWdleD86IFJlZ0V4cDtcbiAgfVtdO1xuXG4gIGV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlQm9keSB7XG4gICAgcHJvdGVjdGVkIHRvSlNPTihkYXRhLCBpc0pTT05BcnJheSA9IGZhbHNlKSB7XG4gICAgICBsZXQgciA9IGlzSlNPTkFycmF5ID8gW10gOiB7fTtcbiAgICAgIGlmICh0eXBlb2YgZGF0YSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICByID0gSlNPTi5wYXJzZShkYXRhKTtcbiAgICAgICAgfSBjYXRjaCAoZSkgeyB9XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiBkYXRhID09PSAnb2JqZWN0Jykge1xuICAgICAgICByZXR1cm4gZGF0YTtcbiAgICAgIH1cbiAgICAgIHJldHVybiByIGFzIGFueTtcbiAgICB9XG4gIH1cblxuICBleHBvcnQgY2xhc3MgSHR0cEJvZHk8VD4gZXh0ZW5kcyBCYXNlQm9keSB7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlc3BvbnNlVGV4dDogc3RyaW5nIHwgQmxvYiwgcHJpdmF0ZSBpc0FycmF5ID0gZmFsc2UsXG4gICAgICBwcml2YXRlIGVudGl0eTogTWFwcGluZy5NYXBwaW5nLFxuICAgICAgcHJpdmF0ZSBjaXJjdWxhcjogQ2lyY1tdXG4gICAgKSB7XG4gICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgYmxvYigpOiBCbG9iIHtcbiAgICAgIHJldHVybiB0aGlzLnJlc3BvbnNlVGV4dCBhcyBCbG9iO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgYm9vbGVhblZhbHVlKCk6IGJvb2xlYW4gfCB1bmRlZmluZWQge1xuICAgICAgaWYgKCFIZWxwZXJzLmlzQmxvYih0aGlzLnJlc3BvbnNlVGV4dCkpIHtcbiAgICAgICAgcmV0dXJuIFsnb2snLCAndHJ1ZSddLmluY2x1ZGVzKCh0aGlzLnJlc3BvbnNlVGV4dCBhcyBzdHJpbmcpLnRyaW0oKSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBudW1lcmljVmFsdWUoKTogbnVtYmVyIHwgdW5kZWZpbmVkIHtcbiAgICAgIGlmICghSGVscGVycy5pc0Jsb2IodGhpcy5yZXNwb25zZVRleHQpKSB7XG4gICAgICAgIHJldHVybiBOdW1iZXIodGhpcy5yZXNwb25zZVRleHQ/LnRyaW0oKSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGdldCByYXdKc29uKCk6IFBhcnRpYWw8VD4ge1xuICAgICAgaWYgKCFIZWxwZXJzLmlzQmxvYih0aGlzLnJlc3BvbnNlVGV4dCkpIHtcbiAgICAgICAgbGV0IHJlcyA9IHRoaXMudG9KU09OKHRoaXMucmVzcG9uc2VUZXh0LCB0aGlzLmlzQXJyYXkpO1xuICAgICAgICBpZiAodGhpcy5jaXJjdWxhciAmJiBBcnJheS5pc0FycmF5KHRoaXMuY2lyY3VsYXIpKSB7XG4gICAgICAgICAgcmVzID0gSlNPTjEwLnBhcnNlKEpTT04uc3RyaW5naWZ5KHJlcyksIHRoaXMuY2lyY3VsYXIpXG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcmVzO1xuICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBnZXQganNvbigpOiBUIHtcbiAgICAgIGlmICghSGVscGVycy5pc0Jsb2IodGhpcy5yZXNwb25zZVRleHQpKSB7XG4gICAgICAgIGlmICh0aGlzLmVudGl0eSAmJiB0eXBlb2YgdGhpcy5lbnRpdHkgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5lbnRpdHkoKTsgLy8gQExBU1RcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5lbnRpdHkgJiYgdHlwZW9mIHRoaXMuZW50aXR5ID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgIGNvbnN0IGpzb24gPSB0aGlzLnRvSlNPTih0aGlzLnJlc3BvbnNlVGV4dCwgdGhpcy5pc0FycmF5KTtcbiAgICAgICAgICByZXR1cm4gTWFwcGluZy5lbmNvZGUoanNvbiwgdGhpcy5lbnRpdHksIHRoaXMuY2lyY3VsYXIpIGFzIGFueTtcbiAgICAgICAgfVxuICAgICAgICBsZXQgcmVzID0gdGhpcy50b0pTT04odGhpcy5yZXNwb25zZVRleHQsIHRoaXMuaXNBcnJheSk7XG4gICAgICAgIGlmICh0aGlzLmNpcmN1bGFyICYmIEFycmF5LmlzQXJyYXkodGhpcy5jaXJjdWxhcikpIHtcbiAgICAgICAgICByZXMgPSBKU09OMTAucGFyc2UoSlNPTi5zdHJpbmdpZnkocmVzKSwgdGhpcy5jaXJjdWxhcilcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVzO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIHVuZGVmaW5lZCB3aGVuIGJsb2JcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0IHRleHQoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAgIGlmICghSGVscGVycy5pc0Jsb2IodGhpcy5yZXNwb25zZVRleHQpKSB7XG4gICAgICAgIHJldHVybiAodGhpcy5yZXNwb25zZVRleHQgYXMgc3RyaW5nKS5yZXBsYWNlKC9eXFxcIi8sICcnKS5yZXBsYWNlKC9cXFwiJC8sICcnKVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGV4cG9ydCBjbGFzcyBFcnJvckJvZHkgZXh0ZW5kcyBCYXNlQm9keSB7XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBkYXRhKSB7XG4gICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQganNvbigpOiBPYmplY3Qge1xuICAgICAgcmV0dXJuIHRoaXMudG9KU09OKHRoaXMuZGF0YSk7XG4gICAgfVxuICAgIHB1YmxpYyBnZXQgdGV4dCgpIHtcbiAgICAgIHJldHVybiB0aGlzLmRhdGFcbiAgICB9XG4gIH1cblxuXG4gIGV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlUmVzcG9uc2U8VD4ge1xuICAgIHByb3RlY3RlZCBzdGF0aWMgcmVhZG9ubHkgY29va2llcyA9IENvb2tpZS5JbnN0YW5jZTtcblxuICAgIHB1YmxpYyBnZXQgY29va2llcygpIHtcbiAgICAgIHJldHVybiBCYXNlUmVzcG9uc2UuY29va2llcztcbiAgICB9XG4gICAgY29uc3RydWN0b3IoXG4gICAgICBwdWJsaWMgcmVzcG9uc2VUZXh0Pzogc3RyaW5nIHwgQmxvYixcbiAgICAgIHB1YmxpYyByZWFkb25seSBoZWFkZXJzPzogUmVzdEhlYWRlcnMsXG4gICAgICBwdWJsaWMgcmVhZG9ubHkgc3RhdHVzQ29kZT86IEh0dHBDb2RlIHwgbnVtYmVyLFxuICAgICAgcHVibGljIGlzQXJyYXkgPSBmYWxzZVxuICAgICkge1xuICAgIH1cbiAgfVxuXG4gIGV4cG9ydCBjbGFzcyBIdHRwUmVzcG9uc2U8VD4gZXh0ZW5kcyBCYXNlUmVzcG9uc2U8VD4ge1xuICAgIHB1YmxpYyBib2R5PzogSHR0cEJvZHk8VD47XG5cblxuXG5cbiAgICBycTogUmVxdWVzdENhY2hlO1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgcHVibGljIHNvdXJjZVJlcXVlc3Q6IE1vZGVscy5IYW5kbGVSZXN1bHRTb3VyY2VSZXF1ZXN0T3B0aW9ucyxcbiAgICAgIHB1YmxpYyByZXNwb25zZVRleHQ/OiBzdHJpbmcgfCBCbG9iLFxuICAgICAgcHVibGljIGhlYWRlcnM/OiBSZXN0SGVhZGVycyxcbiAgICAgIHB1YmxpYyBzdGF0dXNDb2RlPzogSHR0cENvZGUgfCBudW1iZXIsXG4gICAgICBwdWJsaWMgZW50aXR5PzogTWFwcGluZy5NYXBwaW5nIHwgRnVuY3Rpb24sXG4gICAgICBwdWJsaWMgY2lyY3VsYXI/OiBDaXJjW10sXG4gICAgICBwdWJsaWMgam9iaWQ/OiBudW1iZXIsXG4gICAgICBwdWJsaWMgaXNBcnJheSA9IGZhbHNlLFxuICAgICkge1xuXG5cblxuICAgICAgc3VwZXIocmVzcG9uc2VUZXh0LCBoZWFkZXJzLCBzdGF0dXNDb2RlLCBpc0FycmF5KTtcblxuICAgICAgdGhpcy5pbml0KClcbiAgICB9XG5cbiAgICBwdWJsaWMgaW5pdCgpIHtcbiAgICAgIGlmICh0eXBlb2YgdGhpcy5lbnRpdHkgPT09ICdzdHJpbmcnKSB7XG5cbiAgICAgICAgbGV0IGVudGl0eUpTT04gPSB0aGlzLmhlYWRlcnMuZ2V0QWxsKHRoaXMuZW50aXR5KVxuICAgICAgICBpZiAoISFlbnRpdHlKU09OKSB7XG4gICAgICAgICAgdGhpcy5lbnRpdHkgPSBKU09OLnBhcnNlKGVudGl0eUpTT04uam9pbigpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKHR5cGVvZiB0aGlzLmNpcmN1bGFyID09PSAnc3RyaW5nJykge1xuXG4gICAgICAgIGxldCBjaXJjdXJhbEpTT04gPSB0aGlzLmhlYWRlcnMuZ2V0QWxsKHRoaXMuY2lyY3VsYXIpO1xuICAgICAgICBpZiAoISFjaXJjdXJhbEpTT04pIHtcbiAgICAgICAgICB0aGlzLmNpcmN1bGFyID0gSlNPTi5wYXJzZShjaXJjdXJhbEpTT04uam9pbigpKTtcbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgICB0aGlzLmJvZHkgPSBuZXcgSHR0cEJvZHkodGhpcy5yZXNwb25zZVRleHQsIHRoaXMuaXNBcnJheSwgdGhpcy5lbnRpdHksIHRoaXMuY2lyY3VsYXIpIGFzIGFueTtcbiAgICB9XG5cbiAgICBnZXQgY2FjaGUoKSB7XG4gICAgICBpZiAoXy5pc1VuZGVmaW5lZCh0aGlzLnJxKSkge1xuICAgICAgICB0aGlzLnJxID0gbmV3IFJlcXVlc3RDYWNoZSh0aGlzKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBuZXcgUmVxdWVzdENhY2hlKHRoaXMpO1xuICAgIH1cblxuICB9XG5cbiAgZXhwb3J0IGNsYXNzIEh0dHBSZXNwb25zZUVycm9yIGV4dGVuZHMgQmFzZVJlc3BvbnNlPGFueT4ge1xuICAgIHByaXZhdGUgYm9keTogRXJyb3JCb2R5O1xuXG5cblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgcHVibGljIG1lc3NhZ2U6IHN0cmluZyxcbiAgICAgIHJlc3BvbnNlVGV4dD86IHN0cmluZyxcbiAgICAgIGhlYWRlcnM/OiBSZXN0SGVhZGVycyxcbiAgICAgIHN0YXR1c0NvZGU/OiBIdHRwQ29kZSB8IG51bWJlcixcbiAgICAgIHB1YmxpYyBqb2JpZD86IG51bWJlcixcbiAgICApIHtcbiAgICAgIHN1cGVyKHJlc3BvbnNlVGV4dCwgaGVhZGVycywgc3RhdHVzQ29kZSk7XG4gICAgICB0aGlzLmJvZHkgPSBuZXcgRXJyb3JCb2R5KHJlc3BvbnNlVGV4dClcbiAgICB9XG4gIH1cblxuICBleHBvcnQgaW50ZXJmYWNlIE1vY2tSZXNwb25zZSB7XG4gICAgZGF0YT86IGFueTtcbiAgICBjb2RlPzogSHR0cENvZGU7XG4gICAgZXJyb3I/OiBzdHJpbmc7XG4gICAgaGVhZGVycz86IFJlc3RIZWFkZXJzO1xuICAgIGpvYmlkPzogbnVtYmVyO1xuICAgIGlzQXJyYXk6IGJvb2xlYW47XG4gIH1cblxuICBleHBvcnQgdHlwZSBSZXNwb25zZVR5cGVBeGlvcyA9ICdibG9iJyB8ICd0ZXh0J1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICBcbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPW5nMi1yZXN0IGxpYi9tb2RlbHMudHMiXX0=
|
|
@@ -974,6 +974,11 @@ var Models;
|
|
|
974
974
|
return ['ok', 'true'].includes(this.responseText.trim());
|
|
975
975
|
}
|
|
976
976
|
}
|
|
977
|
+
get numericValue() {
|
|
978
|
+
if (!Helpers$1.isBlob(this.responseText)) {
|
|
979
|
+
return Number(this.responseText?.trim());
|
|
980
|
+
}
|
|
981
|
+
}
|
|
977
982
|
get rawJson() {
|
|
978
983
|
if (!Helpers$1.isBlob(this.responseText)) {
|
|
979
984
|
let res = this.toJSON(this.responseText, this.isArray);
|
|
@@ -999,6 +1004,9 @@ var Models;
|
|
|
999
1004
|
return res;
|
|
1000
1005
|
}
|
|
1001
1006
|
}
|
|
1007
|
+
/**
|
|
1008
|
+
* undefined when blob
|
|
1009
|
+
*/
|
|
1002
1010
|
get text() {
|
|
1003
1011
|
if (!Helpers$1.isBlob(this.responseText)) {
|
|
1004
1012
|
return this.responseText.replace(/^\"/, '').replace(/\"$/, '');
|