@sumaris-net/ngx-components 2.4.152 → 2.4.153

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.
Files changed (38) hide show
  1. package/esm2020/src/app/core/form/properties/testing/properties-form.test.mjs +1 -1
  2. package/esm2020/src/app/core/graphql/graphql.service.mjs +5 -5
  3. package/esm2020/src/app/core/home/home.mjs +2 -2
  4. package/esm2020/src/app/core/menu/menu.component.mjs +2 -2
  5. package/esm2020/src/app/core/menu/testing/menu-other.testing.mjs +1 -1
  6. package/esm2020/src/app/core/menu/testing/menu.testing.mjs +1 -1
  7. package/esm2020/src/app/core/register/register-confirm.page.mjs +1 -1
  8. package/esm2020/src/app/core/services/config.service.mjs +10 -8
  9. package/esm2020/src/app/core/services/network.service.mjs +62 -48
  10. package/esm2020/src/app/core/services/network.types.mjs +1 -1
  11. package/esm2020/src/app/core/services/platform.service.mjs +2 -1
  12. package/esm2020/src/app/shared/http/http.utils.mjs +15 -11
  13. package/esm2020/src/app/shared/image/gallery/image-gallery.component.mjs +2 -2
  14. package/esm2020/src/app/shared/image/gallery/testing/gallery.testing.mjs +1 -1
  15. package/esm2020/src/app/shared/material/autocomplete/testing/autocomplete.test.mjs +1 -1
  16. package/esm2020/src/app/shared/material/badge/badge.test.mjs +1 -1
  17. package/esm2020/src/app/shared/material/chips/testing/chips.test.mjs +1 -1
  18. package/esm2020/src/app/shared/material/datetime/testing/mat-date-time.test.mjs +1 -1
  19. package/esm2020/src/app/shared/material/datetime/testing/mat-date.test.mjs +1 -1
  20. package/esm2020/src/app/shared/material/datetime/testing/mat-dateshort.test.mjs +1 -1
  21. package/esm2020/src/app/shared/material/latlong/testing/latlong.test.mjs +1 -1
  22. package/esm2020/src/app/shared/material/numpad/testing/numpad.test.mjs +1 -1
  23. package/esm2020/src/app/shared/material/swipe/testing/swipe.test.mjs +1 -1
  24. package/esm2020/src/app/shared/services/memory-entity-service.class.mjs +6 -6
  25. package/esm2020/src/app/shared/storage/storage-explorer.component.mjs +1 -1
  26. package/esm2020/src/app/shared/testing/observable.test.mjs +1 -1
  27. package/esm2020/src/app/shared/testing/tests.page.mjs +1 -1
  28. package/esm2020/src/environments/environment.class.mjs +1 -1
  29. package/fesm2015/sumaris-net.ngx-components.mjs +257 -234
  30. package/fesm2015/sumaris-net.ngx-components.mjs.map +1 -1
  31. package/fesm2020/sumaris-net.ngx-components.mjs +247 -226
  32. package/fesm2020/sumaris-net.ngx-components.mjs.map +1 -1
  33. package/package.json +1 -1
  34. package/src/app/core/services/network.service.d.ts +11 -10
  35. package/src/app/shared/http/http.utils.d.ts +1 -0
  36. package/src/app/shared/services/memory-entity-service.class.d.ts +7 -3
  37. package/src/assets/manifest.json +1 -1
  38. package/src/environments/environment.class.d.ts +1 -0
@@ -84,7 +84,7 @@ export class ObservableTestPage {
84
84
  }
85
85
  }
86
86
  ObservableTestPage.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ObservableTestPage, deps: [], target: i0.ɵɵFactoryTarget.Component });
87
- ObservableTestPage.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ObservableTestPage, selector: "app-observable-test", viewQueries: [{ propertyName: "resultDiv", first: true, predicate: ["result"], descendants: true }], ngImport: i0, template: "\n<ion-header>\n <ion-toolbar color=\"primary\">\n\n <ion-buttons slot=\"start\">\n <ion-back-button></ion-back-button>\n </ion-buttons>\n\n <ion-title>Observables test page</ion-title>\n </ion-toolbar>\n</ion-header>\n\n<ion-content class=\"ion-padding\">\n\n <ion-card>\n <ion-card-header>\n <ion-card-title>waitFor, waitForTrue, waitForFalse</ion-card-title>\n </ion-card-header>\n <ion-card-content>\n <div style=\"display: inline-block\">\n <p>Set options: </p>\n <ion-button color=\"medium\" fill=\"outline\" (click)=\"setOptions({stopError: false})\">stopError: false</ion-button>\n <ion-button color=\"medium\" fill=\"outline\" (click)=\"setOptions({stopError: true})\">stopError: true</ion-button>\n <ion-button color=\"medium\" fill=\"outline\" (click)=\"setOptions({stopError: 'my error'})\">stopError: 'my error'</ion-button>\n\n <ion-button color=\"medium\" fill=\"outline\" (click)=\"setOptions({timeout: 2000})\">timeout: 2000</ion-button>\n <ion-button color=\"medium\" fill=\"outline\" (click)=\"setOptions({timeout: null})\">timeout: null</ion-button>\n <br/>\n <p>Call await function: </p>\n <ion-button (click)=\"waitForTrue()\">waitForTrue</ion-button>\n <ion-button (click)=\"firstNotNilPromise()\">firstNotNilPromise</ion-button>\n <br/>\n <p>Send event to source: </p>\n <ion-button (click)=\"emit(true)\">Emit 'true'</ion-button>\n <ion-button (click)=\"emit(false)\">Emit 'false'</ion-button>\n <br/>\n <p>Stop: </p>\n <ion-button color=\"danger\" (click)=\"stop()\">Stop</ion-button>\n </div>\n </ion-card-content>\n </ion-card>\n\n <ion-card>\n <ion-toolbar>\n <ion-title>Running job count: {{runningTaskCount}}</ion-title>\n <ion-button fill=\"outline\" slot=\"end\" (click)=\"result.innerHTML=''\">Clear log</ion-button>\n </ion-toolbar>\n <ion-card-content>\n <div #result style=\"color: var(--ion-color-medium)\">\n </div>\n </ion-card-content>\n </ion-card>\n</ion-content>\n", styles: ["ion-button{text-transform:none!important}\n"], dependencies: [{ kind: "component", type: i1.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: i1.IonButtons, selector: "ion-buttons", inputs: ["collapse"] }, { kind: "component", type: i1.IonCard, selector: "ion-card", inputs: ["button", "color", "disabled", "download", "href", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: i1.IonCardContent, selector: "ion-card-content", inputs: ["mode"] }, { kind: "component", type: i1.IonCardHeader, selector: "ion-card-header", inputs: ["color", "mode", "translucent"] }, { kind: "component", type: i1.IonCardTitle, selector: "ion-card-title", inputs: ["color", "mode"] }, { kind: "component", type: i1.IonContent, selector: "ion-content", inputs: ["color", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { kind: "component", type: i1.IonHeader, selector: "ion-header", inputs: ["collapse", "mode", "translucent"] }, { kind: "component", type: i1.IonTitle, selector: "ion-title", inputs: ["color", "size"] }, { kind: "component", type: i1.IonToolbar, selector: "ion-toolbar", inputs: ["color", "mode"] }, { kind: "component", type: i1.IonBackButton, selector: "ion-back-button" }] });
87
+ ObservableTestPage.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ObservableTestPage, selector: "app-observable-test", viewQueries: [{ propertyName: "resultDiv", first: true, predicate: ["result"], descendants: true }], ngImport: i0, template: "\n<ion-header>\n <ion-toolbar color=\"primary\">\n\n <ion-buttons slot=\"start\">\n <ion-back-button></ion-back-button>\n </ion-buttons>\n\n <ion-title>Observables test page</ion-title>\n </ion-toolbar>\n</ion-header>\n\n<ion-content class=\"ion-padding\">\n\n <ion-card>\n <ion-card-header>\n <ion-card-title>waitFor, waitForTrue, waitForFalse</ion-card-title>\n </ion-card-header>\n <ion-card-content>\n <div style=\"display: inline-block\">\n <p>Set options: </p>\n <ion-button color=\"medium\" fill=\"outline\" (click)=\"setOptions({stopError: false})\">stopError: false</ion-button>\n <ion-button color=\"medium\" fill=\"outline\" (click)=\"setOptions({stopError: true})\">stopError: true</ion-button>\n <ion-button color=\"medium\" fill=\"outline\" (click)=\"setOptions({stopError: 'my error'})\">stopError: 'my error'</ion-button>\n\n <ion-button color=\"medium\" fill=\"outline\" (click)=\"setOptions({timeout: 2000})\">timeout: 2000</ion-button>\n <ion-button color=\"medium\" fill=\"outline\" (click)=\"setOptions({timeout: null})\">timeout: null</ion-button>\n <br/>\n <p>Call await function: </p>\n <ion-button (click)=\"waitForTrue()\">waitForTrue</ion-button>\n <ion-button (click)=\"firstNotNilPromise()\">firstNotNilPromise</ion-button>\n <br/>\n <p>Send event to source: </p>\n <ion-button (click)=\"emit(true)\">Emit 'true'</ion-button>\n <ion-button (click)=\"emit(false)\">Emit 'false'</ion-button>\n <br/>\n <p>Stop: </p>\n <ion-button color=\"danger\" (click)=\"stop()\">Stop</ion-button>\n </div>\n </ion-card-content>\n </ion-card>\n\n <ion-card>\n <ion-toolbar>\n <ion-title>Running job count: {{runningTaskCount}}</ion-title>\n <ion-button fill=\"outline\" slot=\"end\" (click)=\"result.innerHTML=''\">Clear log</ion-button>\n </ion-toolbar>\n <ion-card-content>\n <div #result style=\"color: var(--ion-color-medium)\">\n </div>\n </ion-card-content>\n </ion-card>\n</ion-content>\n", styles: ["ion-button{text-transform:none!important}\n"], dependencies: [{ kind: "component", type: i1.IonBackButton, selector: "ion-back-button", inputs: ["color", "defaultHref", "disabled", "icon", "mode", "routerAnimation", "text", "type"] }, { kind: "component", type: i1.IonButton, selector: "ion-button", inputs: ["buttonType", "color", "disabled", "download", "expand", "fill", "form", "href", "mode", "rel", "routerAnimation", "routerDirection", "shape", "size", "strong", "target", "type"] }, { kind: "component", type: i1.IonButtons, selector: "ion-buttons", inputs: ["collapse"] }, { kind: "component", type: i1.IonCard, selector: "ion-card", inputs: ["button", "color", "disabled", "download", "href", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: i1.IonCardContent, selector: "ion-card-content", inputs: ["mode"] }, { kind: "component", type: i1.IonCardHeader, selector: "ion-card-header", inputs: ["color", "mode", "translucent"] }, { kind: "component", type: i1.IonCardTitle, selector: "ion-card-title", inputs: ["color", "mode"] }, { kind: "component", type: i1.IonContent, selector: "ion-content", inputs: ["color", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { kind: "component", type: i1.IonHeader, selector: "ion-header", inputs: ["collapse", "mode", "translucent"] }, { kind: "component", type: i1.IonTitle, selector: "ion-title", inputs: ["color", "size"] }, { kind: "component", type: i1.IonToolbar, selector: "ion-toolbar", inputs: ["color", "mode"] }, { kind: "directive", type: i1.IonBackButtonDelegate, selector: "ion-back-button", inputs: ["defaultHref", "routerAnimation"] }] });
88
88
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ObservableTestPage, decorators: [{
89
89
  type: Component,
90
90
  args: [{ selector: 'app-observable-test', template: "\n<ion-header>\n <ion-toolbar color=\"primary\">\n\n <ion-buttons slot=\"start\">\n <ion-back-button></ion-back-button>\n </ion-buttons>\n\n <ion-title>Observables test page</ion-title>\n </ion-toolbar>\n</ion-header>\n\n<ion-content class=\"ion-padding\">\n\n <ion-card>\n <ion-card-header>\n <ion-card-title>waitFor, waitForTrue, waitForFalse</ion-card-title>\n </ion-card-header>\n <ion-card-content>\n <div style=\"display: inline-block\">\n <p>Set options: </p>\n <ion-button color=\"medium\" fill=\"outline\" (click)=\"setOptions({stopError: false})\">stopError: false</ion-button>\n <ion-button color=\"medium\" fill=\"outline\" (click)=\"setOptions({stopError: true})\">stopError: true</ion-button>\n <ion-button color=\"medium\" fill=\"outline\" (click)=\"setOptions({stopError: 'my error'})\">stopError: 'my error'</ion-button>\n\n <ion-button color=\"medium\" fill=\"outline\" (click)=\"setOptions({timeout: 2000})\">timeout: 2000</ion-button>\n <ion-button color=\"medium\" fill=\"outline\" (click)=\"setOptions({timeout: null})\">timeout: null</ion-button>\n <br/>\n <p>Call await function: </p>\n <ion-button (click)=\"waitForTrue()\">waitForTrue</ion-button>\n <ion-button (click)=\"firstNotNilPromise()\">firstNotNilPromise</ion-button>\n <br/>\n <p>Send event to source: </p>\n <ion-button (click)=\"emit(true)\">Emit 'true'</ion-button>\n <ion-button (click)=\"emit(false)\">Emit 'false'</ion-button>\n <br/>\n <p>Stop: </p>\n <ion-button color=\"danger\" (click)=\"stop()\">Stop</ion-button>\n </div>\n </ion-card-content>\n </ion-card>\n\n <ion-card>\n <ion-toolbar>\n <ion-title>Running job count: {{runningTaskCount}}</ion-title>\n <ion-button fill=\"outline\" slot=\"end\" (click)=\"result.innerHTML=''\">Clear log</ion-button>\n </ion-toolbar>\n <ion-card-content>\n <div #result style=\"color: var(--ion-color-medium)\">\n </div>\n </ion-card-content>\n </ion-card>\n</ion-content>\n", styles: ["ion-button{text-transform:none!important}\n"] }]
@@ -20,7 +20,7 @@ export class SharedTestsPage {
20
20
  }
21
21
  }
22
22
  SharedTestsPage.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SharedTestsPage, deps: [{ token: i1.ActivatedRoute }, { token: i1.Router }, { token: i2.TranslateService }, { token: APP_TESTING_PAGES, optional: true }], target: i0.ɵɵFactoryTarget.Component });
23
- SharedTestsPage.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: SharedTestsPage, selector: "app-tests-page", ngImport: i0, template: "\n<ion-header>\n <ion-toolbar color=\"primary\">\n\n <ion-buttons slot=\"start\">\n <ion-menu-button></ion-menu-button>\n <ion-back-button></ion-back-button>\n </ion-buttons>\n\n <ion-title>Tests</ion-title>\n\n </ion-toolbar>\n</ion-header>\n\n<ion-content>\n\n <ion-list *ngIf=\"pages?.length\">\n\n <ng-container *ngFor=\"let item of pages\">\n\n <ion-item-divider *ngIf=\"item.divider; else link\">{{item.label}}</ion-item-divider>\n\n <ng-template #link>\n <ion-item tappable class=\"text-1x\"\n (click)=\"openPage(item.page)\">{{item.label}}</ion-item>\n </ng-template>\n </ng-container>\n </ion-list>\n\n</ion-content>\n", dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.IonButtons, selector: "ion-buttons", inputs: ["collapse"] }, { kind: "component", type: i4.IonContent, selector: "ion-content", inputs: ["color", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { kind: "component", type: i4.IonHeader, selector: "ion-header", inputs: ["collapse", "mode", "translucent"] }, { kind: "component", type: i4.IonItem, selector: "ion-item", inputs: ["button", "color", "counter", "counterFormatter", "detail", "detailIcon", "disabled", "download", "fill", "href", "lines", "mode", "rel", "routerAnimation", "routerDirection", "shape", "target", "type"] }, { kind: "component", type: i4.IonItemDivider, selector: "ion-item-divider", inputs: ["color", "mode", "sticky"] }, { kind: "component", type: i4.IonList, selector: "ion-list", inputs: ["inset", "lines", "mode"] }, { kind: "component", type: i4.IonMenuButton, selector: "ion-menu-button", inputs: ["autoHide", "color", "disabled", "menu", "mode", "type"] }, { kind: "component", type: i4.IonTitle, selector: "ion-title", inputs: ["color", "size"] }, { kind: "component", type: i4.IonToolbar, selector: "ion-toolbar", inputs: ["color", "mode"] }, { kind: "component", type: i4.IonBackButton, selector: "ion-back-button" }] });
23
+ SharedTestsPage.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: SharedTestsPage, selector: "app-tests-page", ngImport: i0, template: "\n<ion-header>\n <ion-toolbar color=\"primary\">\n\n <ion-buttons slot=\"start\">\n <ion-menu-button></ion-menu-button>\n <ion-back-button></ion-back-button>\n </ion-buttons>\n\n <ion-title>Tests</ion-title>\n\n </ion-toolbar>\n</ion-header>\n\n<ion-content>\n\n <ion-list *ngIf=\"pages?.length\">\n\n <ng-container *ngFor=\"let item of pages\">\n\n <ion-item-divider *ngIf=\"item.divider; else link\">{{item.label}}</ion-item-divider>\n\n <ng-template #link>\n <ion-item tappable class=\"text-1x\"\n (click)=\"openPage(item.page)\">{{item.label}}</ion-item>\n </ng-template>\n </ng-container>\n </ion-list>\n\n</ion-content>\n", dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.IonBackButton, selector: "ion-back-button", inputs: ["color", "defaultHref", "disabled", "icon", "mode", "routerAnimation", "text", "type"] }, { kind: "component", type: i4.IonButtons, selector: "ion-buttons", inputs: ["collapse"] }, { kind: "component", type: i4.IonContent, selector: "ion-content", inputs: ["color", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { kind: "component", type: i4.IonHeader, selector: "ion-header", inputs: ["collapse", "mode", "translucent"] }, { kind: "component", type: i4.IonItem, selector: "ion-item", inputs: ["button", "color", "counter", "counterFormatter", "detail", "detailIcon", "disabled", "download", "fill", "href", "lines", "mode", "rel", "routerAnimation", "routerDirection", "shape", "target", "type"] }, { kind: "component", type: i4.IonItemDivider, selector: "ion-item-divider", inputs: ["color", "mode", "sticky"] }, { kind: "component", type: i4.IonList, selector: "ion-list", inputs: ["inset", "lines", "mode"] }, { kind: "component", type: i4.IonMenuButton, selector: "ion-menu-button", inputs: ["autoHide", "color", "disabled", "menu", "mode", "type"] }, { kind: "component", type: i4.IonTitle, selector: "ion-title", inputs: ["color", "size"] }, { kind: "component", type: i4.IonToolbar, selector: "ion-toolbar", inputs: ["color", "mode"] }, { kind: "directive", type: i4.IonBackButtonDelegate, selector: "ion-back-button", inputs: ["defaultHref", "routerAnimation"] }] });
24
24
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: SharedTestsPage, decorators: [{
25
25
  type: Component,
26
26
  args: [{ selector: 'app-tests-page', template: "\n<ion-header>\n <ion-toolbar color=\"primary\">\n\n <ion-buttons slot=\"start\">\n <ion-menu-button></ion-menu-button>\n <ion-back-button></ion-back-button>\n </ion-buttons>\n\n <ion-title>Tests</ion-title>\n\n </ion-toolbar>\n</ion-header>\n\n<ion-content>\n\n <ion-list *ngIf=\"pages?.length\">\n\n <ng-container *ngFor=\"let item of pages\">\n\n <ion-item-divider *ngIf=\"item.divider; else link\">{{item.label}}</ion-item-divider>\n\n <ng-template #link>\n <ion-item tappable class=\"text-1x\"\n (click)=\"openPage(item.page)\">{{item.label}}</ion-item>\n </ng-template>\n </ng-container>\n </ion-list>\n\n</ion-content>\n" }]
@@ -2,4 +2,4 @@ import { InjectionToken } from '@angular/core';
2
2
  export const ENVIRONMENT = new InjectionToken('ENV');
3
3
  export class Environment {
4
4
  }
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZW52aXJvbm1lbnRzL2Vudmlyb25tZW50LmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJL0MsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLElBQUksY0FBYyxDQUFjLEtBQUssQ0FBQyxDQUFDO0FBRWxFLE1BQU0sT0FBTyxXQUFXO0NBNkV2QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZldGNoUG9saWN5IH0gZnJvbSAnQGFwb2xsby9jbGllbnQvY29yZSc7XG5pbXBvcnQgeyBTdG9yYWdlQ29uZmlnIH0gZnJvbSAnQGlvbmljL3N0b3JhZ2UnO1xuaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENhY2hlQ29uZmlnIH0gZnJvbSAnaW9uaWMtY2FjaGUvbGliL2ludGVyZmFjZXMvY2FjaGUtY29uZmlnLmludGVyZmFjZSc7XG5pbXBvcnQgeyBMb2dnaW5nU2VydmljZUNvbmZpZyB9IGZyb20gJy4uL2FwcC9zaGFyZWQvbG9nZ2luZy9sb2dnaW5nLXNlcnZpY2UuY29uZmlnJztcblxuZXhwb3J0IGNvbnN0IEVOVklST05NRU5UID0gbmV3IEluamVjdGlvblRva2VuPEVudmlyb25tZW50PignRU5WJyk7XG5cbmV4cG9ydCBjbGFzcyBFbnZpcm9ubWVudCB7XG4gIG5hbWU6IHN0cmluZztcbiAgdmVyc2lvbjogc3RyaW5nO1xuICBwcm9kdWN0aW9uOiBib29sZWFuO1xuXG4gIC8vIEFuIFVSTCB0byBsb2FkIGV4dGVybmFsIGVudmlyb25tZW50IGZpbGUgKGUuZy4gJ2Fzc2V0cy9lbnZpcm9ubWVudHMvZW52aXJvbm1lbnQuanNvbidcbiAgZXh0ZXJuYWxFbnZpcm9ubWVudFVybD86IHN0cmluZztcbiAgYmFzZVVybDogc3RyaW5nO1xuXG4gIHNhbWVVcmxQZWVyPzogYm9vbGVhbjtcblxuICAvLyBBIHBlZXIgdG8gdXNlIGF0IHN0YXJ0dXAgKHVzZWZ1bCBvbiBhIHdlYiBzaXRlIGRlcGxveW1lbnQpXG4gIGRlZmF1bHRQZWVyPzogeyBob3N0OiBzdHJpbmc7IHBvcnQ6IG51bWJlcjsgdXNlU3NsPzogYm9vbGVhbjsgcGF0aD86IHN0cmluZyB9IHwgdW5kZWZpbmVkIHwgbnVsbDtcblxuICAvLyBBIGxpc3Qgb2YgcGVlcnMsIHRvIHNlbGVjdCBhcyBwZWVyLCBpbiBzZXR0aW5nc1xuICBkZWZhdWx0UGVlcnM/OiB7IGhvc3Q6IHN0cmluZzsgcG9ydDogbnVtYmVyOyB1c2VTc2w/OiBib29sZWFuOyBwYXRoPzogc3RyaW5nIH1bXTtcblxuICAvLyBNaW4gY29tcGF0aWJsZSB2ZXJzaW9uIGZvciB0aGUgcGVlclxuICBwZWVyTWluVmVyc2lvbj86IHN0cmluZztcblxuICAvLyBJbnRlcnZhbCB0byBjaGVjayBpZiB3ZWIgcGFnZSBtdXN0IGJlIHJlbG9hZCwgaW4gbWlsbGlzXG4gIGNoZWNrQXBwVmVyc2lvbkludGVydmFsSW5TZWNvbmRzPzogbnVtYmVyO1xuXG4gIC8vIEVuYWJsZSBjYWNoZSBwZXJzaXN0ZW5jZSA/XG4gIHBlcnNpc3RDYWNoZT86IGJvb2xlYW47XG5cbiAgLy8gRm9yY2Ugb2ZmbGluZSBtb2RlID8gLyFcXCBGb3IgREVWIG9ubHlcbiAgb2ZmbGluZT86IGJvb2xlYW47XG5cbiAgLy8gQXBvbGxvIChncmFwaFFMKSBjb25maWdcbiAgYXBvbGxvRmV0Y2hQb2xpY3k/OiAgRmV0Y2hQb2xpY3k7XG5cbiAgLy8gRGVmYXVsdCB2YWx1ZXNcbiAgZGVmYXVsdExvY2FsZTogc3RyaW5nO1xuICBkZWZhdWx0TGF0TG9uZ0Zvcm1hdD86ICdERCcgfCAnRERNTScgfCAnRERNTVNTJztcbiAgZGVmYXVsdERlcGFydG1lbnRJZD86IG51bWJlcjtcbiAgZGVmYXVsdEFwcE5hbWU/OiBzdHJpbmc7XG4gIGRlZmF1bHRBbmRyb2lkSW5zdGFsbFVybD86IHN0cmluZztcblxuICAvLyBMb2dnaW5nXG4gIGxvZ2dpbmc/OiBQYXJ0aWFsPExvZ2dpbmdTZXJ2aWNlQ29uZmlnPjtcblxuICAvLyBTdG9yYWdlXG4gIGNhY2hlPzogUGFydGlhbDxDYWNoZUNvbmZpZz47XG4gIHN0b3JhZ2U/OiBQYXJ0aWFsPFN0b3JhZ2VDb25maWc+O1xuICBzdG9yYWdlU2F2ZVBlcmlvZE1zPzogbnVtYmVyO1xuXG4gIC8vIEFib3V0XG4gIHNvdXJjZVVybD86IHN0cmluZztcbiAgcmVwb3J0SXNzdWVVcmw/OiBzdHJpbmc7XG4gIGZvcnVtVXJsPzogc3RyaW5nO1xuICBoZWxwVXJsPzogc3RyaW5nO1xuXG4gIC8vIERlZmF1bHQgYXV0aGVudGljYXRpb24gLyFcXCBGb3IgREVWIG9ubHlcbiAgLy8gKHNlZSB2YWx1ZXMgaW4gdGhlIHRlc3QgZGF0YWJhc2UgLSBYTUwgZmlsZXMgaW4gUG9kJ3MgbW9kdWxlKVxuICBkZWZhdWx0QXV0aFZhbHVlcz86IHtcbiAgICB1c2VybmFtZT86IHN0cmluZztcbiAgICBwYXNzd29yZD86IHN0cmluZztcbiAgICB0b2tlbj86IHN0cmluZztcbiAgfTtcblxuICAvLyBBY2NvdW50XG4gIGFjY291bnQ/OiB7XG4gICAgc2hvd0FjY291bnRCdXR0b24/OiBib29sZWFuOyAvLyBTaG93IGFjY291bnQgYnV0dG9uIGluIGhvbWUgcGFnZSAoaWYgdW5kZWZpbmVkID0gdHJ1ZSlcbiAgICBlbmFibGVMaXN0ZW5DaGFuZ2VzPzogYm9vbGVhbjtcbiAgICAvLyBJZiB1bmRlZmluZWQgb3IgMCwgdGhlbiBsaXN0ZW4gb25seSBjaGFuZ2VzIG1hZGUgYnkgdGhlIHBvZFxuICAgIC8vIElmIGdyZWF0ZXIgdGhhbiAwIDogd2lsbCBjaGVjayBjb25jdXJyZW50IGNoYW5nZXMgaW4gdGhlIERCIChlLmcuIGNoYW5nZXMgbWRlIGJ5IGFub3RoZXIgc29mdHdhcmUpIEFORCBjaGFuZ2VzIG1hZGUgdGhlIHBvZFxuICAgIGxpc3RlbkludGVydmFsSW5TZWNvbmRzPzogbnVtYmVyO1xuICB9O1xuXG4gIGVudGl0eUVkaXRvcj86IHtcbiAgICBlbmFibGVMaXN0ZW5DaGFuZ2VzPzogYm9vbGVhbjtcbiAgICAvLyBJZiB1bmRlZmluZWQgb3IgMCwgdGhlbiBsaXN0ZW4gb25seSBjaGFuZ2VzIG1hZGUgYnkgdGhlIHBvZFxuICAgIC8vIElmIGdyZWF0ZXIgdGhhbiAwIDogd2lsbCBjaGVjayBjb25jdXJyZW50IGNoYW5nZXMgaW4gdGhlIERCIChlLmcuIGNoYW5nZXMgbWRlIGJ5IGFub3RoZXIgc29mdHdhcmUpIEFORCBjaGFuZ2VzIG1hZGUgdGhlIHBvZFxuICAgIGxpc3RlbkludGVydmFsSW5TZWNvbmRzPzogbnVtYmVyO1xuICB9O1xuXG59XG4iXX0=
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZW52aXJvbm1lbnRzL2Vudmlyb25tZW50LmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJL0MsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLElBQUksY0FBYyxDQUFjLEtBQUssQ0FBQyxDQUFDO0FBRWxFLE1BQU0sT0FBTyxXQUFXO0NBOEV2QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZldGNoUG9saWN5IH0gZnJvbSAnQGFwb2xsby9jbGllbnQvY29yZSc7XG5pbXBvcnQgeyBTdG9yYWdlQ29uZmlnIH0gZnJvbSAnQGlvbmljL3N0b3JhZ2UnO1xuaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENhY2hlQ29uZmlnIH0gZnJvbSAnaW9uaWMtY2FjaGUvbGliL2ludGVyZmFjZXMvY2FjaGUtY29uZmlnLmludGVyZmFjZSc7XG5pbXBvcnQgeyBMb2dnaW5nU2VydmljZUNvbmZpZyB9IGZyb20gJy4uL2FwcC9zaGFyZWQvbG9nZ2luZy9sb2dnaW5nLXNlcnZpY2UuY29uZmlnJztcblxuZXhwb3J0IGNvbnN0IEVOVklST05NRU5UID0gbmV3IEluamVjdGlvblRva2VuPEVudmlyb25tZW50PignRU5WJyk7XG5cbmV4cG9ydCBjbGFzcyBFbnZpcm9ubWVudCB7XG4gIG5hbWU6IHN0cmluZztcbiAgdmVyc2lvbjogc3RyaW5nO1xuICBwcm9kdWN0aW9uOiBib29sZWFuO1xuXG4gIC8vIEFuIFVSTCB0byBsb2FkIGV4dGVybmFsIGVudmlyb25tZW50IGZpbGUgKGUuZy4gJ2Fzc2V0cy9lbnZpcm9ubWVudHMvZW52aXJvbm1lbnQuanNvbidcbiAgZXh0ZXJuYWxFbnZpcm9ubWVudFVybD86IHN0cmluZztcbiAgYmFzZVVybDogc3RyaW5nO1xuICBjb25uZWN0aW9uVGltZW91dD86IG51bWJlcjtcblxuICBzYW1lVXJsUGVlcj86IGJvb2xlYW47XG5cbiAgLy8gQSBwZWVyIHRvIHVzZSBhdCBzdGFydHVwICh1c2VmdWwgb24gYSB3ZWIgc2l0ZSBkZXBsb3ltZW50KVxuICBkZWZhdWx0UGVlcj86IHsgaG9zdDogc3RyaW5nOyBwb3J0OiBudW1iZXI7IHVzZVNzbD86IGJvb2xlYW47IHBhdGg/OiBzdHJpbmcgfSB8IHVuZGVmaW5lZCB8IG51bGw7XG5cbiAgLy8gQSBsaXN0IG9mIHBlZXJzLCB0byBzZWxlY3QgYXMgcGVlciwgaW4gc2V0dGluZ3NcbiAgZGVmYXVsdFBlZXJzPzogeyBob3N0OiBzdHJpbmc7IHBvcnQ6IG51bWJlcjsgdXNlU3NsPzogYm9vbGVhbjsgcGF0aD86IHN0cmluZyB9W107XG5cbiAgLy8gTWluIGNvbXBhdGlibGUgdmVyc2lvbiBmb3IgdGhlIHBlZXJcbiAgcGVlck1pblZlcnNpb24/OiBzdHJpbmc7XG5cbiAgLy8gSW50ZXJ2YWwgdG8gY2hlY2sgaWYgd2ViIHBhZ2UgbXVzdCBiZSByZWxvYWQsIGluIG1pbGxpc1xuICBjaGVja0FwcFZlcnNpb25JbnRlcnZhbEluU2Vjb25kcz86IG51bWJlcjtcblxuICAvLyBFbmFibGUgY2FjaGUgcGVyc2lzdGVuY2UgP1xuICBwZXJzaXN0Q2FjaGU/OiBib29sZWFuO1xuXG4gIC8vIEZvcmNlIG9mZmxpbmUgbW9kZSA/IC8hXFwgRm9yIERFViBvbmx5XG4gIG9mZmxpbmU/OiBib29sZWFuO1xuXG4gIC8vIEFwb2xsbyAoZ3JhcGhRTCkgY29uZmlnXG4gIGFwb2xsb0ZldGNoUG9saWN5PzogIEZldGNoUG9saWN5O1xuXG4gIC8vIERlZmF1bHQgdmFsdWVzXG4gIGRlZmF1bHRMb2NhbGU6IHN0cmluZztcbiAgZGVmYXVsdExhdExvbmdGb3JtYXQ/OiAnREQnIHwgJ0RETU0nIHwgJ0RETU1TUyc7XG4gIGRlZmF1bHREZXBhcnRtZW50SWQ/OiBudW1iZXI7XG4gIGRlZmF1bHRBcHBOYW1lPzogc3RyaW5nO1xuICBkZWZhdWx0QW5kcm9pZEluc3RhbGxVcmw/OiBzdHJpbmc7XG5cbiAgLy8gTG9nZ2luZ1xuICBsb2dnaW5nPzogUGFydGlhbDxMb2dnaW5nU2VydmljZUNvbmZpZz47XG5cbiAgLy8gU3RvcmFnZVxuICBjYWNoZT86IFBhcnRpYWw8Q2FjaGVDb25maWc+O1xuICBzdG9yYWdlPzogUGFydGlhbDxTdG9yYWdlQ29uZmlnPjtcbiAgc3RvcmFnZVNhdmVQZXJpb2RNcz86IG51bWJlcjtcblxuICAvLyBBYm91dFxuICBzb3VyY2VVcmw/OiBzdHJpbmc7XG4gIHJlcG9ydElzc3VlVXJsPzogc3RyaW5nO1xuICBmb3J1bVVybD86IHN0cmluZztcbiAgaGVscFVybD86IHN0cmluZztcblxuICAvLyBEZWZhdWx0IGF1dGhlbnRpY2F0aW9uIC8hXFwgRm9yIERFViBvbmx5XG4gIC8vIChzZWUgdmFsdWVzIGluIHRoZSB0ZXN0IGRhdGFiYXNlIC0gWE1MIGZpbGVzIGluIFBvZCdzIG1vZHVsZSlcbiAgZGVmYXVsdEF1dGhWYWx1ZXM/OiB7XG4gICAgdXNlcm5hbWU/OiBzdHJpbmc7XG4gICAgcGFzc3dvcmQ/OiBzdHJpbmc7XG4gICAgdG9rZW4/OiBzdHJpbmc7XG4gIH07XG5cbiAgLy8gQWNjb3VudFxuICBhY2NvdW50Pzoge1xuICAgIHNob3dBY2NvdW50QnV0dG9uPzogYm9vbGVhbjsgLy8gU2hvdyBhY2NvdW50IGJ1dHRvbiBpbiBob21lIHBhZ2UgKGlmIHVuZGVmaW5lZCA9IHRydWUpXG4gICAgZW5hYmxlTGlzdGVuQ2hhbmdlcz86IGJvb2xlYW47XG4gICAgLy8gSWYgdW5kZWZpbmVkIG9yIDAsIHRoZW4gbGlzdGVuIG9ubHkgY2hhbmdlcyBtYWRlIGJ5IHRoZSBwb2RcbiAgICAvLyBJZiBncmVhdGVyIHRoYW4gMCA6IHdpbGwgY2hlY2sgY29uY3VycmVudCBjaGFuZ2VzIGluIHRoZSBEQiAoZS5nLiBjaGFuZ2VzIG1kZSBieSBhbm90aGVyIHNvZnR3YXJlKSBBTkQgY2hhbmdlcyBtYWRlIHRoZSBwb2RcbiAgICBsaXN0ZW5JbnRlcnZhbEluU2Vjb25kcz86IG51bWJlcjtcbiAgfTtcblxuICBlbnRpdHlFZGl0b3I/OiB7XG4gICAgZW5hYmxlTGlzdGVuQ2hhbmdlcz86IGJvb2xlYW47XG4gICAgLy8gSWYgdW5kZWZpbmVkIG9yIDAsIHRoZW4gbGlzdGVuIG9ubHkgY2hhbmdlcyBtYWRlIGJ5IHRoZSBwb2RcbiAgICAvLyBJZiBncmVhdGVyIHRoYW4gMCA6IHdpbGwgY2hlY2sgY29uY3VycmVudCBjaGFuZ2VzIGluIHRoZSBEQiAoZS5nLiBjaGFuZ2VzIG1kZSBieSBhbm90aGVyIHNvZnR3YXJlKSBBTkQgY2hhbmdlcyBtYWRlIHRoZSBwb2RcbiAgICBsaXN0ZW5JbnRlcnZhbEluU2Vjb25kcz86IG51bWJlcjtcbiAgfTtcblxufVxuIl19