@evotor-dev/ui-kit 8.7.1 → 8.8.1

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 (33) hide show
  1. package/esm2022/lib/components/evo-modal/classes/EvoConfiguredComponentModalDrawingStrategy.mjs +8 -0
  2. package/esm2022/lib/components/evo-modal/classes/EvoConfiguredModalDrawingStrategy.mjs +14 -0
  3. package/esm2022/lib/components/evo-modal/classes/EvoConfiguredTemplateModalDrawingStrategy.mjs +11 -0
  4. package/esm2022/lib/components/evo-modal/classes/EvoDynamicModalDrawingStrategy.mjs +9 -0
  5. package/esm2022/lib/components/evo-modal/classes/EvoModalDrawingStrategy.mjs +3 -0
  6. package/esm2022/lib/components/evo-modal/enums.mjs +8 -0
  7. package/esm2022/lib/components/evo-modal/evo-modal-buttons/evo-modal-buttons.component.mjs +17 -0
  8. package/esm2022/lib/components/evo-modal/evo-modal-portal.mjs +29 -0
  9. package/esm2022/lib/components/evo-modal/evo-modal.component.mjs +128 -103
  10. package/esm2022/lib/components/evo-modal/evo-modal.provider.mjs +18 -0
  11. package/esm2022/lib/components/evo-modal/evo-modal.service.mjs +47 -12
  12. package/esm2022/lib/components/evo-modal/interfaces.mjs +2 -0
  13. package/esm2022/lib/components/evo-modal/public-api.mjs +7 -1
  14. package/esm2022/lib/components/evo-modal/tokens.mjs +12 -0
  15. package/esm2022/lib/components/evo-modal/utils.mjs +21 -0
  16. package/fesm2022/evotor-dev-ui-kit.mjs +420 -237
  17. package/fesm2022/evotor-dev-ui-kit.mjs.map +1 -1
  18. package/lib/components/evo-modal/classes/EvoConfiguredComponentModalDrawingStrategy.d.ts +6 -0
  19. package/lib/components/evo-modal/classes/EvoConfiguredModalDrawingStrategy.d.ts +6 -0
  20. package/lib/components/evo-modal/classes/EvoConfiguredTemplateModalDrawingStrategy.d.ts +6 -0
  21. package/lib/components/evo-modal/classes/EvoDynamicModalDrawingStrategy.d.ts +6 -0
  22. package/lib/components/evo-modal/classes/EvoModalDrawingStrategy.d.ts +5 -0
  23. package/lib/components/evo-modal/enums.d.ts +6 -0
  24. package/lib/components/evo-modal/evo-modal-buttons/evo-modal-buttons.component.d.ts +6 -0
  25. package/lib/components/evo-modal/evo-modal-portal.d.ts +16 -0
  26. package/lib/components/evo-modal/evo-modal.component.d.ts +48 -32
  27. package/lib/components/evo-modal/evo-modal.provider.d.ts +3 -0
  28. package/lib/components/evo-modal/evo-modal.service.d.ts +13 -12
  29. package/lib/components/evo-modal/interfaces.d.ts +47 -0
  30. package/lib/components/evo-modal/public-api.d.ts +6 -0
  31. package/lib/components/evo-modal/tokens.d.ts +7 -0
  32. package/lib/components/evo-modal/utils.d.ts +5 -0
  33. package/package.json +1 -1
@@ -1,32 +1,67 @@
1
- import { distinctUntilChanged, filter, tap } from 'rxjs/operators';
2
- import { Injectable } from '@angular/core';
1
+ import { distinctUntilChanged, filter } from 'rxjs/operators';
2
+ import { inject, Injectable } from '@angular/core';
3
3
  import { Subject } from 'rxjs';
4
4
  import { isEqual } from 'lodash-es';
5
+ import { EvoModalPortal } from "./evo-modal-portal";
6
+ import { EVO_MODAL_CONFIG, EVO_MODAL_ROOT_ID } from './tokens';
7
+ import { isConfiguredModalParams, isDynamicModalParams } from './utils';
5
8
  import * as i0 from "@angular/core";
6
9
  export class EvoModalService {
7
10
  constructor() {
11
+ this.portal = inject(EvoModalPortal);
12
+ this.config = inject(EVO_MODAL_CONFIG);
13
+ this.evoModalRootId = inject(EVO_MODAL_ROOT_ID);
8
14
  this.modalEvents$ = new Subject();
9
- this.registeredModals = {};
15
+ this.registeredModals = new Map();
10
16
  }
11
17
  register(id) {
12
- this.registeredModals[id] = { id, isOpen: false };
18
+ this.registeredModals.set(id, { id, isOpen: false });
13
19
  }
14
20
  unregister(id) {
15
- delete this.registeredModals[id];
21
+ this.registeredModals.delete(id);
16
22
  }
17
- open(id, params) {
18
- this.modalEvents$.next({ id, isOpen: true, params });
23
+ open(idOrParams, params) {
24
+ if (typeof idOrParams === 'string') {
25
+ this.modalEvents$.next({ id: idOrParams, isOpen: true, params });
26
+ }
27
+ else if (isDynamicModalParams(idOrParams)) {
28
+ this.openDynamicModal(idOrParams);
29
+ }
30
+ else if (isConfiguredModalParams(idOrParams)) {
31
+ this.openConfiguredModal(idOrParams);
32
+ }
19
33
  }
20
- close(id, agreement, params) {
34
+ close(id = this.evoModalRootId, agreement = false, params) {
21
35
  this.modalEvents$.next({ id, isOpen: false, agreement, params });
22
36
  }
23
37
  getEventsSubscription(id) {
24
- return this.modalEvents$.pipe(filter((data) => data.id === id), distinctUntilChanged((a, b) => isEqual(a, b)), tap((evoModalState) => evoModalState[id]));
38
+ return this.modalEvents$.pipe(filter(({ id: currentId }) => currentId === id), distinctUntilChanged((a, b) => isEqual(a, b)));
39
+ }
40
+ openDynamicModal(params) {
41
+ this.attachPortal();
42
+ this.modalEvents$.next({ id: this.evoModalRootId, isOpen: true, params });
43
+ }
44
+ openConfiguredModal(idOrParams) {
45
+ this.attachPortal();
46
+ this.modalEvents$.next({ id: this.evoModalRootId, isOpen: true, params: idOrParams });
47
+ }
48
+ cleanupDefaultHost() {
49
+ if (!this.portal.hasAttachedPortal()) {
50
+ return;
51
+ }
52
+ this.portal.detach();
53
+ }
54
+ attachPortal() {
55
+ if (this.portal.hasAttachedPortal()) {
56
+ return;
57
+ }
58
+ this.portal.attach(this.config.host);
25
59
  }
26
60
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EvoModalService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
27
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EvoModalService }); }
61
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EvoModalService, providedIn: 'root' }); }
28
62
  }
29
63
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EvoModalService, decorators: [{
30
- type: Injectable
64
+ type: Injectable,
65
+ args: [{ providedIn: 'root' }]
31
66
  }] });
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLW1vZGFsLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ldm8tdWkta2l0L3NyYy9saWIvY29tcG9uZW50cy9ldm8tbW9kYWwvZXZvLW1vZGFsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLG9CQUFvQixFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBYSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDekMsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLFdBQVcsQ0FBQzs7QUFnQmxDLE1BQU0sT0FBTyxlQUFlO0lBRDVCO1FBR3FCLGlCQUFZLEdBQUcsSUFBSSxPQUFPLEVBQWlCLENBQUM7UUFDckQscUJBQWdCLEdBQXVDLEVBQUUsQ0FBQztLQXlCckU7SUF2QkcsUUFBUSxDQUFDLEVBQVU7UUFDZixJQUFJLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBQyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBQyxDQUFDO0lBQ3BELENBQUM7SUFFRCxVQUFVLENBQUMsRUFBVTtRQUNqQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQsSUFBSSxDQUFDLEVBQVUsRUFBRSxNQUF1QjtRQUNwQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFDLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBQyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELEtBQUssQ0FBQyxFQUFVLEVBQUUsU0FBa0IsRUFBRSxNQUF1QjtRQUN6RCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFDLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUMsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFRCxxQkFBcUIsQ0FBQyxFQUFVO1FBQzVCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQ3pCLE1BQU0sQ0FBQyxDQUFDLElBQXFCLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQ2pELG9CQUFvQixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUM3QyxHQUFHLENBQUMsQ0FBQyxhQUE0QixFQUFFLEVBQUUsQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FDM0QsQ0FBQztJQUNOLENBQUM7K0dBM0JRLGVBQWU7bUhBQWYsZUFBZTs7NEZBQWYsZUFBZTtrQkFEM0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7ZGlzdGluY3RVbnRpbENoYW5nZWQsIGZpbHRlciwgdGFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7aXNFcXVhbH0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7RXZvU2lkZWJhclN0YXRlfSBmcm9tICcuLi9ldm8tc2lkZWJhcic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXZvTW9kYWxTdGF0ZSB7XG4gICAgaWQ6IHN0cmluZztcbiAgICBpc09wZW46IGJvb2xlYW47XG4gICAgYWdyZWVtZW50PzogYm9vbGVhbjtcbiAgICBwYXJhbXM/OiBFdm9Nb2RhbFBhcmFtcztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFdm9Nb2RhbFBhcmFtcyB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgW3Byb3BlcnR5OiBzdHJpbmddOiBhbnk7XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBFdm9Nb2RhbFNlcnZpY2Uge1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBtb2RhbEV2ZW50cyQgPSBuZXcgU3ViamVjdDxFdm9Nb2RhbFN0YXRlPigpO1xuICAgIHByaXZhdGUgcmVnaXN0ZXJlZE1vZGFsczoge1ttb2RhbElkOiBzdHJpbmddOiBFdm9Nb2RhbFN0YXRlfSA9IHt9O1xuXG4gICAgcmVnaXN0ZXIoaWQ6IHN0cmluZykge1xuICAgICAgICB0aGlzLnJlZ2lzdGVyZWRNb2RhbHNbaWRdID0ge2lkLCBpc09wZW46IGZhbHNlfTtcbiAgICB9XG5cbiAgICB1bnJlZ2lzdGVyKGlkOiBzdHJpbmcpIHtcbiAgICAgICAgZGVsZXRlIHRoaXMucmVnaXN0ZXJlZE1vZGFsc1tpZF07XG4gICAgfVxuXG4gICAgb3BlbihpZDogc3RyaW5nLCBwYXJhbXM/OiBFdm9Nb2RhbFBhcmFtcykge1xuICAgICAgICB0aGlzLm1vZGFsRXZlbnRzJC5uZXh0KHtpZCwgaXNPcGVuOiB0cnVlLCBwYXJhbXN9KTtcbiAgICB9XG5cbiAgICBjbG9zZShpZDogc3RyaW5nLCBhZ3JlZW1lbnQ6IGJvb2xlYW4sIHBhcmFtcz86IEV2b01vZGFsUGFyYW1zKSB7XG4gICAgICAgIHRoaXMubW9kYWxFdmVudHMkLm5leHQoe2lkLCBpc09wZW46IGZhbHNlLCBhZ3JlZW1lbnQsIHBhcmFtc30pO1xuICAgIH1cblxuICAgIGdldEV2ZW50c1N1YnNjcmlwdGlvbihpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxFdm9Nb2RhbFN0YXRlPiB7XG4gICAgICAgIHJldHVybiB0aGlzLm1vZGFsRXZlbnRzJC5waXBlKFxuICAgICAgICAgICAgZmlsdGVyKChkYXRhOiBFdm9TaWRlYmFyU3RhdGUpID0+IGRhdGEuaWQgPT09IGlkKSxcbiAgICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKChhLCBiKSA9PiBpc0VxdWFsKGEsIGIpKSxcbiAgICAgICAgICAgIHRhcCgoZXZvTW9kYWxTdGF0ZTogRXZvTW9kYWxTdGF0ZSkgPT4gZXZvTW9kYWxTdGF0ZVtpZF0pLFxuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLW1vZGFsLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ldm8tdWkta2l0L3NyYy9saWIvY29tcG9uZW50cy9ldm8tbW9kYWwvZXZvLW1vZGFsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLG9CQUFvQixFQUFFLE1BQU0sRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzVELE9BQU8sRUFBQyxNQUFNLEVBQUUsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBYSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDekMsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLFdBQVcsQ0FBQztBQUVsQyxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDbEQsT0FBTyxFQUFDLGdCQUFnQixFQUFFLGlCQUFpQixFQUFDLE1BQU0sVUFBVSxDQUFDO0FBUTdELE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxvQkFBb0IsRUFBQyxNQUFNLFNBQVMsQ0FBQzs7QUFHdEUsTUFBTSxPQUFPLGVBQWU7SUFENUI7UUFHcUIsV0FBTSxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNoQyxXQUFNLEdBQUcsTUFBTSxDQUFpQixnQkFBZ0IsQ0FBQyxDQUFDO1FBQ2xELG1CQUFjLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFFM0MsaUJBQVksR0FBRyxJQUFJLE9BQU8sRUFBaUIsQ0FBQztRQUM1QyxxQkFBZ0IsR0FBRyxJQUFJLEdBQUcsRUFBeUIsQ0FBQztLQTZEeEU7SUEzREcsUUFBUSxDQUFDLEVBQVU7UUFDZixJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxFQUFDLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFDLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRUQsVUFBVSxDQUFDLEVBQVU7UUFDakIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBS0QsSUFBSSxDQUFDLFVBQXFFLEVBQUUsTUFBdUI7UUFDL0YsSUFBSSxPQUFPLFVBQVUsS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUNqQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFDLEVBQUUsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUMsQ0FBQyxDQUFDO1FBQ25FLENBQUM7YUFBTSxJQUFJLG9CQUFvQixDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7WUFDMUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3RDLENBQUM7YUFBTSxJQUFJLHVCQUF1QixDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7WUFDN0MsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3pDLENBQUM7SUFDTCxDQUFDO0lBRUQsS0FBSyxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLFNBQVMsR0FBRyxLQUFLLEVBQUUsTUFBdUI7UUFDdEUsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBQyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFDLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQscUJBQXFCLENBQUMsRUFBVTtRQUM1QixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUN6QixNQUFNLENBQUMsQ0FBQyxFQUFDLEVBQUUsRUFBRSxTQUFTLEVBQWtCLEVBQUUsRUFBRSxDQUFDLFNBQVMsS0FBSyxFQUFFLENBQUMsRUFDOUQsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQ2hELENBQUM7SUFDTixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsTUFBNkI7UUFDMUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBRXBCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxjQUFjLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUMsQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxVQUFvQztRQUNwRCxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFcEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUMsQ0FBQyxDQUFDO0lBQ3hGLENBQUM7SUFFRCxrQkFBa0I7UUFDZCxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsRUFBRSxFQUFFLENBQUM7WUFDbkMsT0FBTztRQUNYLENBQUM7UUFFRCxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFTyxZQUFZO1FBQ2hCLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsRUFBRSxFQUFFLENBQUM7WUFDbEMsT0FBTztRQUNYLENBQUM7UUFFRCxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pDLENBQUM7K0dBbkVRLGVBQWU7bUhBQWYsZUFBZSxjQURILE1BQU07OzRGQUNsQixlQUFlO2tCQUQzQixVQUFVO21CQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7ZGlzdGluY3RVbnRpbENoYW5nZWQsIGZpbHRlcn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtpbmplY3QsIEluamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7aXNFcXVhbH0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7RXZvU2lkZWJhclN0YXRlfSBmcm9tICcuLi9ldm8tc2lkZWJhcic7XG5pbXBvcnQge0V2b01vZGFsUG9ydGFsfSBmcm9tIFwiLi9ldm8tbW9kYWwtcG9ydGFsXCI7XG5pbXBvcnQge0VWT19NT0RBTF9DT05GSUcsIEVWT19NT0RBTF9ST09UX0lEfSBmcm9tICcuL3Rva2Vucyc7XG5pbXBvcnQge1xuICAgIEV2b0NvbmZpZ3VyZWRNb2RhbFBhcmFtcyxcbiAgICBFdm9EeW5hbWljTW9kYWxQYXJhbXMsXG4gICAgRXZvTW9kYWxDb25maWcsXG4gICAgRXZvTW9kYWxQYXJhbXMsXG4gICAgRXZvTW9kYWxTdGF0ZVxufSBmcm9tICcuL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtpc0NvbmZpZ3VyZWRNb2RhbFBhcmFtcywgaXNEeW5hbWljTW9kYWxQYXJhbXN9IGZyb20gJy4vdXRpbHMnO1xuXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcbmV4cG9ydCBjbGFzcyBFdm9Nb2RhbFNlcnZpY2Uge1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBwb3J0YWwgPSBpbmplY3QoRXZvTW9kYWxQb3J0YWwpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY29uZmlnID0gaW5qZWN0PEV2b01vZGFsQ29uZmlnPihFVk9fTU9EQUxfQ09ORklHKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGV2b01vZGFsUm9vdElkID0gaW5qZWN0KEVWT19NT0RBTF9ST09UX0lEKTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgbW9kYWxFdmVudHMkID0gbmV3IFN1YmplY3Q8RXZvTW9kYWxTdGF0ZT4oKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlZ2lzdGVyZWRNb2RhbHMgPSBuZXcgTWFwPHN0cmluZywgRXZvTW9kYWxTdGF0ZT4oKTtcblxuICAgIHJlZ2lzdGVyKGlkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yZWdpc3RlcmVkTW9kYWxzLnNldChpZCwge2lkLCBpc09wZW46IGZhbHNlfSk7XG4gICAgfVxuXG4gICAgdW5yZWdpc3RlcihpZDogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVnaXN0ZXJlZE1vZGFscy5kZWxldGUoaWQpO1xuICAgIH1cblxuICAgIG9wZW48VD4ocGFyYW1zOiBFdm9Db25maWd1cmVkTW9kYWxQYXJhbXM8VD4pO1xuICAgIG9wZW4ocGFyYW1zOiBFdm9EeW5hbWljTW9kYWxQYXJhbXMpO1xuICAgIG9wZW4oaWQ6IHN0cmluZywgcGFyYW1zPzogRXZvTW9kYWxQYXJhbXMpO1xuICAgIG9wZW4oaWRPclBhcmFtczogc3RyaW5nIHwgRXZvRHluYW1pY01vZGFsUGFyYW1zIHwgRXZvQ29uZmlndXJlZE1vZGFsUGFyYW1zLCBwYXJhbXM/OiBFdm9Nb2RhbFBhcmFtcyk6IHZvaWQge1xuICAgICAgICBpZiAodHlwZW9mIGlkT3JQYXJhbXMgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICB0aGlzLm1vZGFsRXZlbnRzJC5uZXh0KHtpZDogaWRPclBhcmFtcywgaXNPcGVuOiB0cnVlLCBwYXJhbXN9KTtcbiAgICAgICAgfSBlbHNlIGlmIChpc0R5bmFtaWNNb2RhbFBhcmFtcyhpZE9yUGFyYW1zKSkge1xuICAgICAgICAgICAgdGhpcy5vcGVuRHluYW1pY01vZGFsKGlkT3JQYXJhbXMpO1xuICAgICAgICB9IGVsc2UgaWYgKGlzQ29uZmlndXJlZE1vZGFsUGFyYW1zKGlkT3JQYXJhbXMpKSB7XG4gICAgICAgICAgICB0aGlzLm9wZW5Db25maWd1cmVkTW9kYWwoaWRPclBhcmFtcyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBjbG9zZShpZCA9IHRoaXMuZXZvTW9kYWxSb290SWQsIGFncmVlbWVudCA9IGZhbHNlLCBwYXJhbXM/OiBFdm9Nb2RhbFBhcmFtcyk6IHZvaWQge1xuICAgICAgICB0aGlzLm1vZGFsRXZlbnRzJC5uZXh0KHtpZCwgaXNPcGVuOiBmYWxzZSwgYWdyZWVtZW50LCBwYXJhbXN9KTtcbiAgICB9XG5cbiAgICBnZXRFdmVudHNTdWJzY3JpcHRpb24oaWQ6IHN0cmluZyk6IE9ic2VydmFibGU8RXZvTW9kYWxTdGF0ZT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5tb2RhbEV2ZW50cyQucGlwZShcbiAgICAgICAgICAgIGZpbHRlcigoe2lkOiBjdXJyZW50SWR9OiBFdm9TaWRlYmFyU3RhdGUpID0+IGN1cnJlbnRJZCA9PT0gaWQpLFxuICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKGEsIGIpID0+IGlzRXF1YWwoYSwgYikpLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIG9wZW5EeW5hbWljTW9kYWwocGFyYW1zOiBFdm9EeW5hbWljTW9kYWxQYXJhbXMpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5hdHRhY2hQb3J0YWwoKTtcblxuICAgICAgICB0aGlzLm1vZGFsRXZlbnRzJC5uZXh0KHtpZDogdGhpcy5ldm9Nb2RhbFJvb3RJZCwgaXNPcGVuOiB0cnVlLCBwYXJhbXN9KTtcbiAgICB9XG5cbiAgICBvcGVuQ29uZmlndXJlZE1vZGFsKGlkT3JQYXJhbXM6IEV2b0NvbmZpZ3VyZWRNb2RhbFBhcmFtcyk6IHZvaWQge1xuICAgICAgICB0aGlzLmF0dGFjaFBvcnRhbCgpO1xuXG4gICAgICAgIHRoaXMubW9kYWxFdmVudHMkLm5leHQoe2lkOiB0aGlzLmV2b01vZGFsUm9vdElkLCBpc09wZW46IHRydWUsIHBhcmFtczogaWRPclBhcmFtc30pO1xuICAgIH1cblxuICAgIGNsZWFudXBEZWZhdWx0SG9zdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLnBvcnRhbC5oYXNBdHRhY2hlZFBvcnRhbCgpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnBvcnRhbC5kZXRhY2goKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGF0dGFjaFBvcnRhbCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMucG9ydGFsLmhhc0F0dGFjaGVkUG9ydGFsKCkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMucG9ydGFsLmF0dGFjaCh0aGlzLmNvbmZpZy5ob3N0KTtcbiAgICB9XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V2by11aS1raXQvc3JjL2xpYi9jb21wb25lbnRzL2V2by1tb2RhbC9pbnRlcmZhY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdG9yLCBUZW1wbGF0ZVJlZiwgVHlwZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0V2b0J1dHRvbkNvbG9yLCBFdm9CdXR0b25UaGVtZX0gZnJvbSAnLi4vZXZvLWJ1dHRvbi90eXBlcyc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEV2b01vZGFsQ29uZmlnIHtcbiAgICBob3N0Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEV2b01vZGFsU3RhdGUge1xuICAgIGlkOiBzdHJpbmc7XG4gICAgaXNPcGVuOiBib29sZWFuO1xuICAgIGFncmVlbWVudD86IGJvb2xlYW47XG4gICAgcGFyYW1zPzogRXZvTW9kYWxDb21iaW5lZFBhcmFtcztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFdm9EeW5hbWljTW9kYWxQYXJhbXMge1xuICAgIGNvbXBvbmVudDogVHlwZTx1bmtub3duPjtcbiAgICBkYXRhPzogdW5rbm93bjtcbiAgICBpbmplY3Rvcj86IEluamVjdG9yO1xufVxuXG5pbnRlcmZhY2UgRXZvQ29uZmlndXJlZEJhc2VNb2RhbFBhcmFtcyB7XG4gICAgYWNjZXB0QnV0dG9uQ29sb3I/OiBFdm9CdXR0b25Db2xvcjtcbiAgICBhY2NlcHRCdXR0b25UaGVtZT86IEV2b0J1dHRvblRoZW1lO1xuICAgIGFjY2VwdFRleHQ/OiBzdHJpbmc7XG4gICAgYXN5bmNBY2NlcHQ/OiAoKSA9PiBPYnNlcnZhYmxlPHVua25vd24+O1xuICAgIGRlY2xpbmVCdXR0b25Db2xvcj86IEV2b0J1dHRvbkNvbG9yO1xuICAgIGRlY2xpbmVCdXR0b25UaGVtZT86IEV2b0J1dHRvblRoZW1lO1xuICAgIGRlY2xpbmVUZXh0Pzogc3RyaW5nXG4gICAgdGl0bGVUZXh0Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEV2b0NvbmZpZ3VyZWRUZW1wbGF0ZU1vZGFsUGFyYW1zPFQ+IGV4dGVuZHMgRXZvQ29uZmlndXJlZEJhc2VNb2RhbFBhcmFtcyB7XG4gICAgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPHtkYXRhOiBUfT47XG4gICAgY29tcG9uZW50PzogbmV2ZXI7XG4gICAgZGF0YT86IFQ7XG4gICAgaW5qZWN0b3I/OiBuZXZlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFdm9Db25maWd1cmVkQ29tcG9uZW50TW9kYWxQYXJhbXM8VD4gZXh0ZW5kcyBFdm9Db25maWd1cmVkQmFzZU1vZGFsUGFyYW1zIHtcbiAgICBjb21wb25lbnQ6IFR5cGU8dW5rbm93bj47XG4gICAgZGF0YT86IFQ7XG4gICAgaW5qZWN0b3I/OiBJbmplY3RvcjtcbiAgICB0ZW1wbGF0ZT86IG5ldmVyO1xufVxuXG5leHBvcnQgdHlwZSBFdm9Db25maWd1cmVkTW9kYWxQYXJhbXM8VCA9IHVua25vd24+ID0gRXZvQ29uZmlndXJlZFRlbXBsYXRlTW9kYWxQYXJhbXM8VD4gfCBFdm9Db25maWd1cmVkQ29tcG9uZW50TW9kYWxQYXJhbXM8VD47XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXZvTW9kYWxQYXJhbXMge1xuICAgIFtwcm9wZXJ0eTogc3RyaW5nXTogdW5rbm93bjtcbn1cblxuZXhwb3J0IHR5cGUgRXZvTW9kYWxDb21iaW5lZFBhcmFtcyA9IEV2b01vZGFsUGFyYW1zIHwgRXZvRHluYW1pY01vZGFsUGFyYW1zIHwgRXZvQ29uZmlndXJlZE1vZGFsUGFyYW1zO1xuIl19
@@ -1,4 +1,10 @@
1
1
  export * from './evo-modal.module';
2
2
  export * from './evo-modal.component';
3
3
  export * from './evo-modal.service';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V2by11aS1raXQvc3JjL2xpYi9jb21wb25lbnRzL2V2by1tb2RhbC9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHFCQUFxQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9ldm8tbW9kYWwubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vZXZvLW1vZGFsLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2V2by1tb2RhbC5zZXJ2aWNlJztcbiJdfQ==
4
+ export * from "./enums";
5
+ export * from "./interfaces";
6
+ export * from "./evo-modal.provider";
7
+ export * from "./tokens";
8
+ export * from "./utils";
9
+ export * from './evo-modal-buttons/evo-modal-buttons.component';
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V2by11aS1raXQvc3JjL2xpYi9jb21wb25lbnRzL2V2by1tb2RhbC9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxpREFBaUQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZXZvLW1vZGFsLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2V2by1tb2RhbC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9ldm8tbW9kYWwuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tIFwiLi9lbnVtc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vaW50ZXJmYWNlc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vZXZvLW1vZGFsLnByb3ZpZGVyXCI7XG5leHBvcnQgKiBmcm9tIFwiLi90b2tlbnNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3V0aWxzXCI7XG5leHBvcnQgKiBmcm9tICcuL2V2by1tb2RhbC1idXR0b25zL2V2by1tb2RhbC1idXR0b25zLmNvbXBvbmVudCc7XG4iXX0=
@@ -0,0 +1,12 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ export const EVO_MODAL_CONFIG = new InjectionToken('EVO_MODAL_CONFIG');
3
+ // Root ID
4
+ export const EVO_MODAL_DEFAULT_ROOT_ID = 'EVO_MODAL_ROOT_ID';
5
+ export const EVO_MODAL_ROOT_ID = new InjectionToken('EvoModal default root ID');
6
+ // Config
7
+ export const EVO_MODAL_DEFAULT_CONFIG = {
8
+ host: 'body',
9
+ };
10
+ // Modal Data
11
+ export const EVO_MODAL_DATA = new InjectionToken('EVO_MODAL_DATA');
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZvLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvZXZvLW1vZGFsL3Rva2Vucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRzdDLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLElBQUksY0FBYyxDQUFpQixrQkFBa0IsQ0FBQyxDQUFDO0FBRXZGLFVBQVU7QUFDVixNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRyxtQkFBbUIsQ0FBQztBQUM3RCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLGNBQWMsQ0FBUywwQkFBMEIsQ0FBQyxDQUFDO0FBRXhGLFNBQVM7QUFDVCxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBbUI7SUFDcEQsSUFBSSxFQUFFLE1BQU07Q0FDZixDQUFDO0FBRUYsYUFBYTtBQUNiLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxJQUFJLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3Rpb25Ub2tlbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0V2b01vZGFsQ29uZmlnfSBmcm9tIFwiLi9pbnRlcmZhY2VzXCI7XG5cbmV4cG9ydCBjb25zdCBFVk9fTU9EQUxfQ09ORklHID0gbmV3IEluamVjdGlvblRva2VuPEV2b01vZGFsQ29uZmlnPignRVZPX01PREFMX0NPTkZJRycpO1xuXG4vLyBSb290IElEXG5leHBvcnQgY29uc3QgRVZPX01PREFMX0RFRkFVTFRfUk9PVF9JRCA9ICdFVk9fTU9EQUxfUk9PVF9JRCc7XG5leHBvcnQgY29uc3QgRVZPX01PREFMX1JPT1RfSUQgPSBuZXcgSW5qZWN0aW9uVG9rZW48c3RyaW5nPignRXZvTW9kYWwgZGVmYXVsdCByb290IElEJyk7XG5cbi8vIENvbmZpZ1xuZXhwb3J0IGNvbnN0IEVWT19NT0RBTF9ERUZBVUxUX0NPTkZJRzogRXZvTW9kYWxDb25maWcgPSB7XG4gICAgaG9zdDogJ2JvZHknLFxufTtcblxuLy8gTW9kYWwgRGF0YVxuZXhwb3J0IGNvbnN0IEVWT19NT0RBTF9EQVRBID0gbmV3IEluamVjdGlvblRva2VuKCdFVk9fTU9EQUxfREFUQScpO1xuIl19
@@ -0,0 +1,21 @@
1
+ export function isDynamicModalParams(params) {
2
+ return params && !isConfiguredModalParams(params) && params?.hasOwnProperty('component');
3
+ }
4
+ export function isConfiguredModalParams(params) {
5
+ return params &&
6
+ (params.hasOwnProperty('titleText') ||
7
+ params.hasOwnProperty('acceptText') ||
8
+ params.hasOwnProperty('declineText') ||
9
+ params.hasOwnProperty('acceptButtonColor') ||
10
+ params.hasOwnProperty('acceptButtonTheme') ||
11
+ params.hasOwnProperty('declineButtonColor') ||
12
+ params.hasOwnProperty('declineButtonTheme') ||
13
+ params.hasOwnProperty('asyncAccept'));
14
+ }
15
+ export function isConfiguredTemplateModalParams(params) {
16
+ return params && isConfiguredModalParams(params) && params.hasOwnProperty('template');
17
+ }
18
+ export function isConfiguredComponentModalParams(params) {
19
+ return params && isConfiguredModalParams(params) && params.hasOwnProperty('component');
20
+ }
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ldm8tdWkta2l0L3NyYy9saWIvY29tcG9uZW50cy9ldm8tbW9kYWwvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsTUFBTSxVQUFVLG9CQUFvQixDQUFDLE1BQStCO0lBQ2hFLE9BQU8sTUFBTSxJQUFJLENBQUMsdUJBQXVCLENBQUMsTUFBTSxDQUFDLElBQUksTUFBTSxFQUFFLGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQztBQUM3RixDQUFDO0FBRUQsTUFBTSxVQUFVLHVCQUF1QixDQUFDLE1BQStCO0lBQ25FLE9BQU8sTUFBTTtRQUNULENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUM7WUFDL0IsTUFBTSxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQUM7WUFDbkMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxhQUFhLENBQUM7WUFDcEMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxtQkFBbUIsQ0FBQztZQUMxQyxNQUFNLENBQUMsY0FBYyxDQUFDLG1CQUFtQixDQUFDO1lBQzFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsb0JBQW9CLENBQUM7WUFDM0MsTUFBTSxDQUFDLGNBQWMsQ0FBQyxvQkFBb0IsQ0FBQztZQUMzQyxNQUFNLENBQUMsY0FBYyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7QUFDbEQsQ0FBQztBQUVELE1BQU0sVUFBVSwrQkFBK0IsQ0FBQyxNQUErQjtJQUMzRSxPQUFPLE1BQU0sSUFBSSx1QkFBdUIsQ0FBQyxNQUFNLENBQUMsSUFBSSxNQUFNLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0FBQzFGLENBQUM7QUFFRCxNQUFNLFVBQVUsZ0NBQWdDLENBQUMsTUFBK0I7SUFDNUUsT0FBTyxNQUFNLElBQUksdUJBQXVCLENBQUMsTUFBTSxDQUFDLElBQUksTUFBTSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQztBQUMzRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBFdm9Db25maWd1cmVkQ29tcG9uZW50TW9kYWxQYXJhbXMsXG4gICAgRXZvQ29uZmlndXJlZE1vZGFsUGFyYW1zLCBFdm9Db25maWd1cmVkVGVtcGxhdGVNb2RhbFBhcmFtcyxcbiAgICBFdm9EeW5hbWljTW9kYWxQYXJhbXMsXG4gICAgRXZvTW9kYWxDb21iaW5lZFBhcmFtc1xufSBmcm9tICcuL2ludGVyZmFjZXMnO1xuXG5leHBvcnQgZnVuY3Rpb24gaXNEeW5hbWljTW9kYWxQYXJhbXMocGFyYW1zPzogRXZvTW9kYWxDb21iaW5lZFBhcmFtcyk6IHBhcmFtcyBpcyBFdm9EeW5hbWljTW9kYWxQYXJhbXMge1xuICAgIHJldHVybiBwYXJhbXMgJiYgIWlzQ29uZmlndXJlZE1vZGFsUGFyYW1zKHBhcmFtcykgJiYgcGFyYW1zPy5oYXNPd25Qcm9wZXJ0eSgnY29tcG9uZW50Jyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0NvbmZpZ3VyZWRNb2RhbFBhcmFtcyhwYXJhbXM/OiBFdm9Nb2RhbENvbWJpbmVkUGFyYW1zKTogcGFyYW1zIGlzIEV2b0NvbmZpZ3VyZWRNb2RhbFBhcmFtcyB7XG4gICAgcmV0dXJuIHBhcmFtcyAmJlxuICAgICAgICAocGFyYW1zLmhhc093blByb3BlcnR5KCd0aXRsZVRleHQnKSB8fFxuICAgICAgICAgICAgcGFyYW1zLmhhc093blByb3BlcnR5KCdhY2NlcHRUZXh0JykgfHxcbiAgICAgICAgICAgIHBhcmFtcy5oYXNPd25Qcm9wZXJ0eSgnZGVjbGluZVRleHQnKSB8fFxuICAgICAgICAgICAgcGFyYW1zLmhhc093blByb3BlcnR5KCdhY2NlcHRCdXR0b25Db2xvcicpIHx8XG4gICAgICAgICAgICBwYXJhbXMuaGFzT3duUHJvcGVydHkoJ2FjY2VwdEJ1dHRvblRoZW1lJykgfHxcbiAgICAgICAgICAgIHBhcmFtcy5oYXNPd25Qcm9wZXJ0eSgnZGVjbGluZUJ1dHRvbkNvbG9yJykgfHxcbiAgICAgICAgICAgIHBhcmFtcy5oYXNPd25Qcm9wZXJ0eSgnZGVjbGluZUJ1dHRvblRoZW1lJykgfHxcbiAgICAgICAgICAgIHBhcmFtcy5oYXNPd25Qcm9wZXJ0eSgnYXN5bmNBY2NlcHQnKSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0NvbmZpZ3VyZWRUZW1wbGF0ZU1vZGFsUGFyYW1zKHBhcmFtcz86IEV2b01vZGFsQ29tYmluZWRQYXJhbXMpOiBwYXJhbXMgaXMgRXZvQ29uZmlndXJlZFRlbXBsYXRlTW9kYWxQYXJhbXM8dW5rbm93bj4ge1xuICAgIHJldHVybiBwYXJhbXMgJiYgaXNDb25maWd1cmVkTW9kYWxQYXJhbXMocGFyYW1zKSAmJiBwYXJhbXMuaGFzT3duUHJvcGVydHkoJ3RlbXBsYXRlJyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0NvbmZpZ3VyZWRDb21wb25lbnRNb2RhbFBhcmFtcyhwYXJhbXM/OiBFdm9Nb2RhbENvbWJpbmVkUGFyYW1zKTogcGFyYW1zIGlzIEV2b0NvbmZpZ3VyZWRDb21wb25lbnRNb2RhbFBhcmFtczx1bmtub3duPiB7XG4gICAgcmV0dXJuIHBhcmFtcyAmJiBpc0NvbmZpZ3VyZWRNb2RhbFBhcmFtcyhwYXJhbXMpICYmIHBhcmFtcy5oYXNPd25Qcm9wZXJ0eSgnY29tcG9uZW50Jyk7XG59XG4iXX0=