@myrmidon/gve-core 0.0.2 → 0.0.4

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 (26) hide show
  1. package/esm2022/lib/components/animation-timeline/animation-timeline.component.mjs +5 -5
  2. package/esm2022/lib/components/animation-timeline-set/animation-timeline-set.component.mjs +130 -0
  3. package/esm2022/lib/components/animation-tween/animation-tween.component.mjs +5 -5
  4. package/esm2022/lib/components/animation-vars/animation-vars.component.mjs +3 -3
  5. package/esm2022/lib/components/base-text-char/base-text-char.component.mjs +3 -3
  6. package/esm2022/lib/components/base-text-editor/base-text-editor.component.mjs +3 -3
  7. package/esm2022/lib/components/base-text-view/base-text-view.component.mjs +3 -3
  8. package/esm2022/lib/components/chain-operation-editor/chain-operation-editor.component.mjs +5 -5
  9. package/esm2022/lib/components/chain-result-view/chain-result-view.component.mjs +3 -3
  10. package/esm2022/lib/components/feature-editor/feature-editor.component.mjs +3 -3
  11. package/esm2022/lib/components/feature-set-editor/feature-set-editor.component.mjs +3 -3
  12. package/esm2022/lib/components/feature-set-view/feature-set-view.component.mjs +3 -3
  13. package/esm2022/lib/components/ln-heights-editor/ln-heights-editor.component.mjs +3 -3
  14. package/esm2022/lib/components/operation-source-editor/operation-source-editor.component.mjs +3 -3
  15. package/esm2022/lib/components/simple-tree/simple-tree.component.mjs +3 -3
  16. package/esm2022/lib/components/snapshot-editor/snapshot-editor.component.mjs +60 -14
  17. package/esm2022/lib/components/steps-map/steps-map.component.mjs +3 -3
  18. package/esm2022/lib/services/gve-api.service.mjs +17 -4
  19. package/esm2022/lib/services/settings.service.mjs +3 -3
  20. package/fesm2022/myrmidon-gve-core.mjs +234 -67
  21. package/fesm2022/myrmidon-gve-core.mjs.map +1 -1
  22. package/lib/components/animation-timeline-set/animation-timeline-set.component.d.ts +31 -0
  23. package/lib/components/feature-editor/feature-editor.component.d.ts +1 -1
  24. package/lib/components/snapshot-editor/snapshot-editor.component.d.ts +7 -1
  25. package/lib/services/gve-api.service.d.ts +14 -0
  26. package/package.json +1 -1
@@ -37,10 +37,10 @@ export class StepsMapComponent {
37
37
  this.selectedStep = step;
38
38
  this.selectedStepChange.emit(step);
39
39
  }
40
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: StepsMapComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
41
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.4", type: StepsMapComponent, isStandalone: true, selector: "gve-steps-map", inputs: { steps: "steps", selectedStep: "selectedStep", textFontSize: "textFontSize" }, outputs: { selectedStepChange: "selectedStepChange" }, ngImport: i0, template: "<div>\r\n @if (steps?.length) { @for (step of steps; track step.outputTag) {\r\n <div\r\n matRipple\r\n class=\"step form-row\"\r\n [ngClass]=\"{ selected: step === selectedStep }\"\r\n (click)=\"onSelectStep(step)\"\r\n >\r\n <div class=\"tag\">\r\n <span class=\"muted-tag\">{{ step.inputTag }} &#x25b6; </span>\r\n {{ step.outputTag }}\r\n </div>\r\n <div class=\"text\" [style.fontSize]=\"textFontSize\">{{ step.result }}</div>\r\n </div>\r\n } }\r\n</div>\r\n", styles: [".form-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.form-row *{flex:0 0 auto}.selected{background-color:#fbfb9d}.step{border-top:1px solid rgb(68,114,253);border-bottom:1px solid rgb(68,114,253);border-right:1px solid rgb(68,114,253);border-radius:6px;margin:8px 0}.tag{background-color:#4472fd;color:#fff;border:1px solid rgb(68,114,253);border-radius:6px;padding:4px;cursor:pointer}.muted-tag{color:silver}.text{font-size:.5em}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "ngmodule", type: MatRippleModule }, { kind: "directive", type: i2.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "ngmodule", type: MatTooltipModule }] }); }
40
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: StepsMapComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
41
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.6", type: StepsMapComponent, isStandalone: true, selector: "gve-steps-map", inputs: { steps: "steps", selectedStep: "selectedStep", textFontSize: "textFontSize" }, outputs: { selectedStepChange: "selectedStepChange" }, ngImport: i0, template: "<div>\r\n @if (steps?.length) { @for (step of steps; track step.outputTag) {\r\n <div\r\n matRipple\r\n class=\"step form-row\"\r\n [ngClass]=\"{ selected: step === selectedStep }\"\r\n (click)=\"onSelectStep(step)\"\r\n >\r\n <div class=\"tag\">\r\n <span class=\"muted-tag\">{{ step.inputTag }} &#x25b6; </span>\r\n {{ step.outputTag }}\r\n </div>\r\n <div class=\"text\" [style.fontSize]=\"textFontSize\">{{ step.result }}</div>\r\n </div>\r\n } }\r\n</div>\r\n", styles: [".form-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.form-row *{flex:0 0 auto}.selected{background-color:#fbfb9d}.step{border-top:1px solid rgb(68,114,253);border-bottom:1px solid rgb(68,114,253);border-right:1px solid rgb(68,114,253);border-radius:6px;margin:8px 0}.tag{background-color:#4472fd;color:#fff;border:1px solid rgb(68,114,253);border-radius:6px;padding:4px;cursor:pointer}.muted-tag{color:silver}.text{font-size:.5em}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "ngmodule", type: MatRippleModule }, { kind: "directive", type: i2.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "ngmodule", type: MatTooltipModule }] }); }
42
42
  }
43
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: StepsMapComponent, decorators: [{
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: StepsMapComponent, decorators: [{
44
44
  type: Component,
45
45
  args: [{ selector: 'gve-steps-map', standalone: true, imports: [CommonModule, MatButtonModule, MatRippleModule, MatTooltipModule], template: "<div>\r\n @if (steps?.length) { @for (step of steps; track step.outputTag) {\r\n <div\r\n matRipple\r\n class=\"step form-row\"\r\n [ngClass]=\"{ selected: step === selectedStep }\"\r\n (click)=\"onSelectStep(step)\"\r\n >\r\n <div class=\"tag\">\r\n <span class=\"muted-tag\">{{ step.inputTag }} &#x25b6; </span>\r\n {{ step.outputTag }}\r\n </div>\r\n <div class=\"text\" [style.fontSize]=\"textFontSize\">{{ step.result }}</div>\r\n </div>\r\n } }\r\n</div>\r\n", styles: [".form-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.form-row *{flex:0 0 auto}.selected{background-color:#fbfb9d}.step{border-top:1px solid rgb(68,114,253);border-bottom:1px solid rgb(68,114,253);border-right:1px solid rgb(68,114,253);border-radius:6px;margin:8px 0}.tag{background-color:#4472fd;color:#fff;border:1px solid rgb(68,114,253);border-radius:6px;padding:4px;cursor:pointer}.muted-tag{color:silver}.text{font-size:.5em}\n"] }]
46
46
  }], propDecorators: { steps: [{
@@ -40,13 +40,26 @@ export class GveApiService {
40
40
  })
41
41
  .pipe(catchError(this._error.handleError));
42
42
  }
43
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: GveApiService, deps: [{ token: i1.HttpClient }, { token: i2.ErrorService }, { token: i2.EnvService }], target: i0.ɵɵFactoryTarget.Injectable }); }
44
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: GveApiService, providedIn: 'root' }); }
43
+ /**
44
+ * Get the input and output tags for the given operations.
45
+ *
46
+ * @param operations The operations.
47
+ * @returns Result wrapper.
48
+ */
49
+ getTags(operations) {
50
+ return this._http
51
+ .post(`${this._env.get('apiUrl')}text/operations/tags`, {
52
+ operations,
53
+ })
54
+ .pipe(catchError(this._error.handleError));
55
+ }
56
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: GveApiService, deps: [{ token: i1.HttpClient }, { token: i2.ErrorService }, { token: i2.EnvService }], target: i0.ɵɵFactoryTarget.Injectable }); }
57
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: GveApiService, providedIn: 'root' }); }
45
58
  }
46
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: GveApiService, decorators: [{
59
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: GveApiService, decorators: [{
47
60
  type: Injectable,
48
61
  args: [{
49
62
  providedIn: 'root',
50
63
  }]
51
64
  }], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ErrorService }, { type: i2.EnvService }] });
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3ZlLWFwaS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlybWlkb24vZ3ZlLWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9ndmUtYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQWMsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7O0FBcUM5Qzs7R0FFRztBQUlILE1BQU0sT0FBTyxhQUFhO0lBQ3hCLFlBQ1UsS0FBaUIsRUFDakIsTUFBb0IsRUFDcEIsSUFBZ0I7UUFGaEIsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQUNqQixXQUFNLEdBQU4sTUFBTSxDQUFjO1FBQ3BCLFNBQUksR0FBSixJQUFJLENBQVk7SUFDdkIsQ0FBQztJQUVKOzs7OztPQUtHO0lBQ0ksZUFBZSxDQUNwQixJQUFZO1FBRVosT0FBTyxJQUFJLENBQUMsS0FBSzthQUNkLElBQUksQ0FDSCxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyx1QkFBdUIsRUFDakQ7WUFDRSxJQUFJO1NBQ0wsQ0FDRjthQUNBLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxhQUFhLENBQ2xCLElBQWdCLEVBQ2hCLFVBQWdDO1FBRWhDLE9BQU8sSUFBSSxDQUFDLEtBQUs7YUFDZCxJQUFJLENBQ0gsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMscUJBQXFCLEVBQy9DO1lBQ0UsSUFBSTtZQUNKLFVBQVU7U0FDWCxDQUNGO2FBQ0EsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDL0MsQ0FBQzs4R0E5Q1UsYUFBYTtrSEFBYixhQUFhLGNBRlosTUFBTTs7MkZBRVAsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBjYXRjaEVycm9yIH0gZnJvbSAncnhqcyc7XHJcblxyXG5pbXBvcnQgeyBFcnJvclNlcnZpY2UsIEVudlNlcnZpY2UgfSBmcm9tICdAbXlybWlkb24vbmctdG9vbHMnO1xyXG5cclxuaW1wb3J0IHtcclxuICBDaGFyQ2hhaW5PcGVyYXRpb24sXHJcbiAgQ2hhck5vZGUsXHJcbiAgT3BlcmF0aW9uRmVhdHVyZSxcclxufSBmcm9tICdAbXlybWlkb24vZ3ZlLXNuYXBzaG90LXZpZXcnO1xyXG5cclxuaW1wb3J0IHsgUmVzdWx0V3JhcHBlciB9IGZyb20gJy4uL21vZGVscyc7XHJcblxyXG4vKipcclxuICogRXhlY3V0aW9uIHN0ZXAgb2YgYSBjaGFyLWJhc2VkIGNoYWluIG9wZXJhdGlvbi5cclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ2hhaW5PcGVyYXRpb25Db250ZXh0U3RlcCB7XHJcbiAgb3BlcmF0aW9uOiBDaGFyQ2hhaW5PcGVyYXRpb247XHJcbiAgaW5wdXRUYWc6IHN0cmluZztcclxuICBvdXRwdXRUYWc6IHN0cmluZztcclxuICByZXN1bHQ/OiBzdHJpbmc7XHJcbiAgZmVhdHVyZVNldDoge1xyXG4gICAgZmVhdHVyZXM6IE9wZXJhdGlvbkZlYXR1cmVbXTtcclxuICAgIG5vZGVGZWF0dXJlczogUmVjb3JkPHN0cmluZywgT3BlcmF0aW9uRmVhdHVyZVtdPjtcclxuICB9O1xyXG4gIHJlZk5vZGVJZHM6IG51bWJlcltdO1xyXG59XHJcblxyXG4vKipcclxuICogUmVzdWx0IG9mIGV4ZWN1dGlvbiBvZiBhIGNoYXItYmFzZWQgY2hhaW4uXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIENoYXJDaGFpblJlc3VsdCB7XHJcbiAgc3RlcHM6IENoYWluT3BlcmF0aW9uQ29udGV4dFN0ZXBbXTtcclxuICBjaGFpbkR1bXA6IHN0cmluZztcclxuICBjaGFpblRhZ3M6IHN0cmluZ1tdO1xyXG4gIHRhZ2dlZE5vZGVzOiB7IFtrZXk6IHN0cmluZ106IENoYXJOb2RlW10gfTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFNlcnZpY2UgdG8gaW50ZXJhY3Qgd2l0aCB0aGUgR1ZFIEFQSS5cclxuICovXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBHdmVBcGlTZXJ2aWNlIHtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgX2h0dHA6IEh0dHBDbGllbnQsXHJcbiAgICBwcml2YXRlIF9lcnJvcjogRXJyb3JTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfZW52OiBFbnZTZXJ2aWNlXHJcbiAgKSB7fVxyXG5cclxuICAvKipcclxuICAgKiBQYXJzZSB0aGUgc3BlY2lmaWVkIHRleHQgaW50byBvcGVyYXRpb25zLiBFYWNoIG9wZXJhdGlvbiBpcyBhIGxpbmVcclxuICAgKiBvZiB0aGUgdGV4dC5cclxuICAgKiBAcGFyYW0gdGV4dCBUaGUgdGV4dCB0byBwYXJzZS5cclxuICAgKiBAcmV0dXJucyBUaGUgb3BlcmF0aW9ucy5cclxuICAgKi9cclxuICBwdWJsaWMgcGFyc2VPcGVyYXRpb25zKFxyXG4gICAgdGV4dDogc3RyaW5nXHJcbiAgKTogT2JzZXJ2YWJsZTxSZXN1bHRXcmFwcGVyPENoYXJDaGFpbk9wZXJhdGlvbltdPj4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2h0dHBcclxuICAgICAgLnBvc3Q8UmVzdWx0V3JhcHBlcjxDaGFyQ2hhaW5PcGVyYXRpb25bXT4+KFxyXG4gICAgICAgIGAke3RoaXMuX2Vudi5nZXQoJ2FwaVVybCcpfXRleHQvb3BlcmF0aW9ucy9wYXJzZWAsXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgdGV4dCxcclxuICAgICAgICB9XHJcbiAgICAgIClcclxuICAgICAgLnBpcGUoY2F0Y2hFcnJvcih0aGlzLl9lcnJvci5oYW5kbGVFcnJvcikpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUnVuIG9wZXJhdGlvbnMgb24gdGhlIHNwZWNpZmllZCB0ZXh0LlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHRleHQgVGhlIGJhc2UgdGV4dC5cclxuICAgKiBAcGFyYW0gb3BlcmF0aW9ucyBUaGUgb3BlcmF0aW9ucyB0byBydW4uXHJcbiAgICogQHJldHVybnMgUmVzdWx0IHdyYXBwZXIuXHJcbiAgICovXHJcbiAgcHVibGljIHJ1bk9wZXJhdGlvbnMoXHJcbiAgICB0ZXh0OiBDaGFyTm9kZVtdLFxyXG4gICAgb3BlcmF0aW9uczogQ2hhckNoYWluT3BlcmF0aW9uW11cclxuICApOiBPYnNlcnZhYmxlPFJlc3VsdFdyYXBwZXI8Q2hhckNoYWluUmVzdWx0Pj4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2h0dHBcclxuICAgICAgLnBvc3Q8UmVzdWx0V3JhcHBlcjxDaGFyQ2hhaW5SZXN1bHQ+PihcclxuICAgICAgICBgJHt0aGlzLl9lbnYuZ2V0KCdhcGlVcmwnKX10ZXh0L29wZXJhdGlvbnMvcnVuYCxcclxuICAgICAgICB7XHJcbiAgICAgICAgICB0ZXh0LFxyXG4gICAgICAgICAgb3BlcmF0aW9ucyxcclxuICAgICAgICB9XHJcbiAgICAgIClcclxuICAgICAgLnBpcGUoY2F0Y2hFcnJvcih0aGlzLl9lcnJvci5oYW5kbGVFcnJvcikpO1xyXG4gIH1cclxufVxyXG4iXX0=
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3ZlLWFwaS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlybWlkb24vZ3ZlLWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9ndmUtYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQWMsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7O0FBNkM5Qzs7R0FFRztBQUlILE1BQU0sT0FBTyxhQUFhO0lBQ3hCLFlBQ1UsS0FBaUIsRUFDakIsTUFBb0IsRUFDcEIsSUFBZ0I7UUFGaEIsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQUNqQixXQUFNLEdBQU4sTUFBTSxDQUFjO1FBQ3BCLFNBQUksR0FBSixJQUFJLENBQVk7SUFDdkIsQ0FBQztJQUVKOzs7OztPQUtHO0lBQ0ksZUFBZSxDQUNwQixJQUFZO1FBRVosT0FBTyxJQUFJLENBQUMsS0FBSzthQUNkLElBQUksQ0FDSCxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyx1QkFBdUIsRUFDakQ7WUFDRSxJQUFJO1NBQ0wsQ0FDRjthQUNBLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxhQUFhLENBQ2xCLElBQWdCLEVBQ2hCLFVBQWdDO1FBRWhDLE9BQU8sSUFBSSxDQUFDLEtBQUs7YUFDZCxJQUFJLENBQ0gsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMscUJBQXFCLEVBQy9DO1lBQ0UsSUFBSTtZQUNKLFVBQVU7U0FDWCxDQUNGO2FBQ0EsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksT0FBTyxDQUNaLFVBQWdDO1FBRWhDLE9BQU8sSUFBSSxDQUFDLEtBQUs7YUFDZCxJQUFJLENBQ0gsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsc0JBQXNCLEVBQ2hEO1lBQ0UsVUFBVTtTQUNYLENBQ0Y7YUFDQSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUMvQyxDQUFDOzhHQWpFVSxhQUFhO2tIQUFiLGFBQWEsY0FGWixNQUFNOzsyRkFFUCxhQUFhO2tCQUh6QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IE9ic2VydmFibGUsIGNhdGNoRXJyb3IgfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IEVycm9yU2VydmljZSwgRW52U2VydmljZSB9IGZyb20gJ0BteXJtaWRvbi9uZy10b29scyc7XHJcblxyXG5pbXBvcnQge1xyXG4gIENoYXJDaGFpbk9wZXJhdGlvbixcclxuICBDaGFyTm9kZSxcclxuICBPcGVyYXRpb25GZWF0dXJlLFxyXG59IGZyb20gJ0BteXJtaWRvbi9ndmUtc25hcHNob3Qtdmlldyc7XHJcblxyXG5pbXBvcnQgeyBSZXN1bHRXcmFwcGVyIH0gZnJvbSAnLi4vbW9kZWxzJztcclxuXHJcbi8qKlxyXG4gKiBFeGVjdXRpb24gc3RlcCBvZiBhIGNoYXItYmFzZWQgY2hhaW4gb3BlcmF0aW9uLlxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBDaGFpbk9wZXJhdGlvbkNvbnRleHRTdGVwIHtcclxuICBvcGVyYXRpb246IENoYXJDaGFpbk9wZXJhdGlvbjtcclxuICBpbnB1dFRhZzogc3RyaW5nO1xyXG4gIG91dHB1dFRhZzogc3RyaW5nO1xyXG4gIHJlc3VsdD86IHN0cmluZztcclxuICBmZWF0dXJlU2V0OiB7XHJcbiAgICBmZWF0dXJlczogT3BlcmF0aW9uRmVhdHVyZVtdO1xyXG4gICAgbm9kZUZlYXR1cmVzOiBSZWNvcmQ8c3RyaW5nLCBPcGVyYXRpb25GZWF0dXJlW10+O1xyXG4gIH07XHJcbiAgcmVmTm9kZUlkczogbnVtYmVyW107XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXN1bHQgb2YgZXhlY3V0aW9uIG9mIGEgY2hhci1iYXNlZCBjaGFpbi5cclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ2hhckNoYWluUmVzdWx0IHtcclxuICBzdGVwczogQ2hhaW5PcGVyYXRpb25Db250ZXh0U3RlcFtdO1xyXG4gIGNoYWluRHVtcDogc3RyaW5nO1xyXG4gIGNoYWluVGFnczogc3RyaW5nW107XHJcbiAgdGFnZ2VkTm9kZXM6IHsgW2tleTogc3RyaW5nXTogQ2hhck5vZGVbXSB9O1xyXG59XHJcblxyXG4vKipcclxuICogVGhlIGlucHV0IGFuZCBvdXRwdXQgdGFncyBvZiBhIGNoYXItYmFzZWQgY2hhaW4gb3BlcmF0aW9uLlxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBDaGFpbk9wZXJhdGlvblRhZ3Mge1xyXG4gIGlucHV0VGFnOiBzdHJpbmc7XHJcbiAgb3V0cHV0VGFnOiBzdHJpbmc7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBTZXJ2aWNlIHRvIGludGVyYWN0IHdpdGggdGhlIEdWRSBBUEkuXHJcbiAqL1xyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgR3ZlQXBpU2VydmljZSB7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF9odHRwOiBIdHRwQ2xpZW50LFxyXG4gICAgcHJpdmF0ZSBfZXJyb3I6IEVycm9yU2VydmljZSxcclxuICAgIHByaXZhdGUgX2VudjogRW52U2VydmljZVxyXG4gICkge31cclxuXHJcbiAgLyoqXHJcbiAgICogUGFyc2UgdGhlIHNwZWNpZmllZCB0ZXh0IGludG8gb3BlcmF0aW9ucy4gRWFjaCBvcGVyYXRpb24gaXMgYSBsaW5lXHJcbiAgICogb2YgdGhlIHRleHQuXHJcbiAgICogQHBhcmFtIHRleHQgVGhlIHRleHQgdG8gcGFyc2UuXHJcbiAgICogQHJldHVybnMgVGhlIG9wZXJhdGlvbnMuXHJcbiAgICovXHJcbiAgcHVibGljIHBhcnNlT3BlcmF0aW9ucyhcclxuICAgIHRleHQ6IHN0cmluZ1xyXG4gICk6IE9ic2VydmFibGU8UmVzdWx0V3JhcHBlcjxDaGFyQ2hhaW5PcGVyYXRpb25bXT4+IHtcclxuICAgIHJldHVybiB0aGlzLl9odHRwXHJcbiAgICAgIC5wb3N0PFJlc3VsdFdyYXBwZXI8Q2hhckNoYWluT3BlcmF0aW9uW10+PihcclxuICAgICAgICBgJHt0aGlzLl9lbnYuZ2V0KCdhcGlVcmwnKX10ZXh0L29wZXJhdGlvbnMvcGFyc2VgLFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIHRleHQsXHJcbiAgICAgICAgfVxyXG4gICAgICApXHJcbiAgICAgIC5waXBlKGNhdGNoRXJyb3IodGhpcy5fZXJyb3IuaGFuZGxlRXJyb3IpKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJ1biBvcGVyYXRpb25zIG9uIHRoZSBzcGVjaWZpZWQgdGV4dC5cclxuICAgKlxyXG4gICAqIEBwYXJhbSB0ZXh0IFRoZSBiYXNlIHRleHQuXHJcbiAgICogQHBhcmFtIG9wZXJhdGlvbnMgVGhlIG9wZXJhdGlvbnMgdG8gcnVuLlxyXG4gICAqIEByZXR1cm5zIFJlc3VsdCB3cmFwcGVyLlxyXG4gICAqL1xyXG4gIHB1YmxpYyBydW5PcGVyYXRpb25zKFxyXG4gICAgdGV4dDogQ2hhck5vZGVbXSxcclxuICAgIG9wZXJhdGlvbnM6IENoYXJDaGFpbk9wZXJhdGlvbltdXHJcbiAgKTogT2JzZXJ2YWJsZTxSZXN1bHRXcmFwcGVyPENoYXJDaGFpblJlc3VsdD4+IHtcclxuICAgIHJldHVybiB0aGlzLl9odHRwXHJcbiAgICAgIC5wb3N0PFJlc3VsdFdyYXBwZXI8Q2hhckNoYWluUmVzdWx0Pj4oXHJcbiAgICAgICAgYCR7dGhpcy5fZW52LmdldCgnYXBpVXJsJyl9dGV4dC9vcGVyYXRpb25zL3J1bmAsXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgdGV4dCxcclxuICAgICAgICAgIG9wZXJhdGlvbnMsXHJcbiAgICAgICAgfVxyXG4gICAgICApXHJcbiAgICAgIC5waXBlKGNhdGNoRXJyb3IodGhpcy5fZXJyb3IuaGFuZGxlRXJyb3IpKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldCB0aGUgaW5wdXQgYW5kIG91dHB1dCB0YWdzIGZvciB0aGUgZ2l2ZW4gb3BlcmF0aW9ucy5cclxuICAgKlxyXG4gICAqIEBwYXJhbSBvcGVyYXRpb25zIFRoZSBvcGVyYXRpb25zLlxyXG4gICAqIEByZXR1cm5zIFJlc3VsdCB3cmFwcGVyLlxyXG4gICAqL1xyXG4gIHB1YmxpYyBnZXRUYWdzKFxyXG4gICAgb3BlcmF0aW9uczogQ2hhckNoYWluT3BlcmF0aW9uW11cclxuICApOiBPYnNlcnZhYmxlPFJlc3VsdFdyYXBwZXI8c3RyaW5nW10+PiB7XHJcbiAgICByZXR1cm4gdGhpcy5faHR0cFxyXG4gICAgICAucG9zdDxSZXN1bHRXcmFwcGVyPHN0cmluZ1tdPj4oXHJcbiAgICAgICAgYCR7dGhpcy5fZW52LmdldCgnYXBpVXJsJyl9dGV4dC9vcGVyYXRpb25zL3RhZ3NgLFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIG9wZXJhdGlvbnMsXHJcbiAgICAgICAgfVxyXG4gICAgICApXHJcbiAgICAgIC5waXBlKGNhdGNoRXJyb3IodGhpcy5fZXJyb3IuaGFuZGxlRXJyb3IpKTtcclxuICB9XHJcbn1cclxuIl19
@@ -74,10 +74,10 @@ export class SettingsService {
74
74
  this._cache.delete(key);
75
75
  localStorage.removeItem(key);
76
76
  }
77
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: SettingsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
78
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: SettingsService, providedIn: 'root' }); }
77
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: SettingsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
78
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: SettingsService, providedIn: 'root' }); }
79
79
  }
80
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: SettingsService, decorators: [{
80
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: SettingsService, decorators: [{
81
81
  type: Injectable,
82
82
  args: [{
83
83
  providedIn: 'root',