@yuuvis/client-framework 0.8.0 → 0.9.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 (74) hide show
  1. package/actions/lib/actions/delete-action/delete-action.d.ts +1 -0
  2. package/common/index.d.ts +1 -0
  3. package/common/lib/services/error-messages/error-messages.service.d.ts +7 -0
  4. package/common/lib/services/index.d.ts +1 -0
  5. package/esm2022/actions/lib/actions/delete-action/delete-action.mjs +4 -10
  6. package/esm2022/common/index.mjs +2 -1
  7. package/esm2022/common/lib/directives/drag-select.directive.mjs +2 -2
  8. package/esm2022/common/lib/services/error-messages/error-messages.service.mjs +68 -0
  9. package/esm2022/common/lib/services/index.mjs +2 -0
  10. package/esm2022/forms/index.mjs +9 -8
  11. package/esm2022/forms/lib/elements/data-grid/data-grid/data-grid.component.mjs +172 -0
  12. package/esm2022/forms/lib/elements/data-grid/edit-table-data/edit-data.component.mjs +95 -0
  13. package/esm2022/forms/lib/elements/data-grid/model/data-grid.interface.mjs +9 -0
  14. package/esm2022/forms/lib/elements/index.mjs +11 -0
  15. package/esm2022/forms/lib/elements/organization/organization.component.mjs +47 -29
  16. package/esm2022/icons/lib/icons.mjs +3 -2
  17. package/esm2022/metadata-form/lib/metadata-default-templates/metadata-default-templates.component.mjs +5 -4
  18. package/esm2022/metadata-form/lib/metadata-form-element-registry.service.mjs +1 -1
  19. package/esm2022/metadata-form/lib/metadata-form-field/metadata-form-field.component.mjs +7 -52
  20. package/esm2022/object-details/index.mjs +2 -1
  21. package/esm2022/object-details/lib/object-metadata/object-metadata.component.mjs +5 -4
  22. package/esm2022/object-details/lib/retention-badge/retention-badge.component.mjs +27 -0
  23. package/esm2022/object-form/index.mjs +1 -1
  24. package/esm2022/object-form/lib/object-form.component.mjs +2 -1
  25. package/esm2022/object-form/lib/object-form.service.mjs +5 -2
  26. package/esm2022/object-summary/lib/object-summary/object-summary.component.mjs +15 -13
  27. package/esm2022/pagination/lib/pagination.component.mjs +4 -6
  28. package/esm2022/sequence-list/index.mjs +1 -3
  29. package/esm2022/sequence-list/lib/sequence-list.component.mjs +11 -16
  30. package/esm2022/sequence-list/lib/sequence-list.interface.mjs +1 -1
  31. package/esm2022/tile-list/lib/tile/tile.component.mjs +3 -3
  32. package/esm2022/tile-list/lib/tile-extension/extensions/email.extension.mjs +1 -1
  33. package/fesm2022/yuuvis-client-framework-actions.mjs +3 -9
  34. package/fesm2022/yuuvis-client-framework-actions.mjs.map +1 -1
  35. package/fesm2022/yuuvis-client-framework-common.mjs +69 -4
  36. package/fesm2022/yuuvis-client-framework-common.mjs.map +1 -1
  37. package/fesm2022/yuuvis-client-framework-forms.mjs +1194 -909
  38. package/fesm2022/yuuvis-client-framework-forms.mjs.map +1 -1
  39. package/fesm2022/yuuvis-client-framework-icons.mjs +2 -1
  40. package/fesm2022/yuuvis-client-framework-icons.mjs.map +1 -1
  41. package/fesm2022/yuuvis-client-framework-metadata-form.mjs +10 -55
  42. package/fesm2022/yuuvis-client-framework-metadata-form.mjs.map +1 -1
  43. package/fesm2022/yuuvis-client-framework-object-details.mjs +26 -5
  44. package/fesm2022/yuuvis-client-framework-object-details.mjs.map +1 -1
  45. package/fesm2022/yuuvis-client-framework-object-form.mjs +5 -1
  46. package/fesm2022/yuuvis-client-framework-object-form.mjs.map +1 -1
  47. package/fesm2022/yuuvis-client-framework-object-summary.mjs +14 -12
  48. package/fesm2022/yuuvis-client-framework-object-summary.mjs.map +1 -1
  49. package/fesm2022/yuuvis-client-framework-pagination.mjs +3 -5
  50. package/fesm2022/yuuvis-client-framework-pagination.mjs.map +1 -1
  51. package/fesm2022/yuuvis-client-framework-sequence-list.mjs +17 -296
  52. package/fesm2022/yuuvis-client-framework-sequence-list.mjs.map +1 -1
  53. package/fesm2022/yuuvis-client-framework-tile-list.mjs +2 -2
  54. package/fesm2022/yuuvis-client-framework-tile-list.mjs.map +1 -1
  55. package/forms/index.d.ts +1 -7
  56. package/forms/lib/elements/data-grid/data-grid/data-grid.component.d.ts +38 -0
  57. package/forms/lib/elements/data-grid/edit-table-data/edit-data.component.d.ts +21 -0
  58. package/forms/lib/elements/data-grid/model/data-grid.interface.d.ts +14 -0
  59. package/forms/lib/elements/index.d.ts +10 -0
  60. package/forms/lib/elements/organization/organization.component.d.ts +13 -4
  61. package/lib/assets/i18n/de.json +131 -0
  62. package/lib/assets/i18n/en.json +131 -0
  63. package/metadata-form/lib/metadata-form-field/metadata-form-field.component.d.ts +0 -1
  64. package/object-details/index.d.ts +1 -0
  65. package/object-details/lib/retention-badge/retention-badge.component.d.ts +12 -0
  66. package/package.json +4 -4
  67. package/sequence-list/index.d.ts +0 -2
  68. package/sequence-list/lib/sequence-list.component.d.ts +2 -2
  69. package/sequence-list/lib/sequence-list.interface.d.ts +5 -4
  70. package/styles/client-framework.scss +55 -18
  71. package/esm2022/sequence-list/lib/sequence-list-template-manage/sequence-list-template-manage.component.mjs +0 -183
  72. package/esm2022/sequence-list/lib/sequence-list-templates/sequence-list-templates.component.mjs +0 -114
  73. package/sequence-list/lib/sequence-list-template-manage/sequence-list-template-manage.component.d.ts +0 -52
  74. package/sequence-list/lib/sequence-list-templates/sequence-list-templates.component.d.ts +0 -36
@@ -4,6 +4,7 @@ import { AbstractContextAction, Action, ActionSupport, SelectionRange } from '..
4
4
  export declare class DeleteAction extends AbstractContextAction implements Action {
5
5
  private translate;
6
6
  private overlay;
7
+ private retention;
7
8
  id: string;
8
9
  label: any;
9
10
  description: any;
package/common/index.d.ts CHANGED
@@ -3,3 +3,4 @@ export * from './lib/components/token-input/token-input.component';
3
3
  export * from './lib/components/token-input/token-input.interface';
4
4
  export * from './lib/components/focus-indicator/focus-indicator.component';
5
5
  export * from './lib/directives/noop-value-accessor.directive';
6
+ export * from './lib/services';
@@ -0,0 +1,7 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class ErrorMessagesService {
3
+ private readonly translate;
4
+ getErrorLabel(error: string, params?: any): any;
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<ErrorMessagesService, never>;
6
+ static ɵprov: i0.ɵɵInjectableDeclaration<ErrorMessagesService>;
7
+ }
@@ -0,0 +1 @@
1
+ export * from './error-messages/error-messages.service';
@@ -1,5 +1,5 @@
1
1
  import { inject } from '@angular/core';
2
- import { RetentionField, TranslateService } from '@yuuvis/client-core';
2
+ import { RetentionService, TranslateService } from '@yuuvis/client-core';
3
3
  import { YvcOverlayService } from '@yuuvis/components/overlay';
4
4
  import { map, of } from 'rxjs';
5
5
  import { ACTION_ICON } from '../../actions.icon';
@@ -10,6 +10,7 @@ export class DeleteAction extends AbstractContextAction {
10
10
  super(...arguments);
11
11
  this.translate = inject(TranslateService);
12
12
  this.overlay = inject(YvcOverlayService);
13
+ this.retention = inject(RetentionService);
13
14
  this.id = BASE_ACTION.delete;
14
15
  this.label = this.translate.instant('yuv.action-menu.action.delete.dms.object.label');
15
16
  this.description = this.translate.instant('yuv.action-menu.action.delete.dms.object.description');
@@ -23,14 +24,7 @@ export class DeleteAction extends AbstractContextAction {
23
24
  }
24
25
  isExecutable(items) {
25
26
  const e = items[0];
26
- let isRetentionActive = false;
27
- if (e && e.data[RetentionField.RETENTION_START] && e.data[RetentionField.RETENTION_END]) {
28
- const currentDate = new Date();
29
- const retentionStart = new Date(e.data[RetentionField.RETENTION_START]);
30
- const retentionEnd = new Date(e.data[RetentionField.RETENTION_END]);
31
- isRetentionActive = retentionStart <= currentDate && currentDate <= retentionEnd;
32
- }
33
- return of(e && !!e.permissions && e.permissions.deleteObject && !isRetentionActive);
27
+ return of(e && !!e.permissions && e.permissions.deleteObject && !this.retention.getRetentionState(e).underRetention);
34
28
  }
35
29
  run(items) {
36
30
  return this.overlay
@@ -41,4 +35,4 @@ export class DeleteAction extends AbstractContextAction {
41
35
  .afterClosed$.pipe(map(() => true));
42
36
  }
43
37
  }
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsZXRlLWFjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMveXV1dmlzL2NsaWVudC1mcmFtZXdvcmsvYWN0aW9ucy9zcmMvbGliL2FjdGlvbnMvZGVsZXRlLWFjdGlvbi9kZWxldGUtYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFhLGNBQWMsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2xGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxHQUFHLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUscUJBQXFCLEVBQXlCLFdBQVcsRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNwSCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFNUQsTUFBTSxPQUFPLFlBQWEsU0FBUSxxQkFBcUI7SUFBdkQ7O1FBQ1UsY0FBUyxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3JDLFlBQU8sR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUU1QyxPQUFFLEdBQUcsV0FBVyxDQUFDLE1BQU0sQ0FBQztRQUN4QixVQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsZ0RBQWdELENBQUMsQ0FBQztRQUNqRixnQkFBVyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLHNEQUFzRCxDQUFDLENBQUM7UUFDN0YsYUFBUSxHQUFHLENBQUMsQ0FBQztRQUNiLFNBQUksR0FBRyxXQUFXLENBQUMsTUFBTSxDQUFDO1FBQzFCLFVBQUssR0FBRyxRQUFRLENBQUM7UUFDakIsVUFBSyxHQUFHLGNBQWMsQ0FBQyxZQUFZLENBQUM7UUFDcEMsYUFBUSxHQUFrQjtZQUN4QixPQUFPLEVBQUUsR0FBRztTQUNiLENBQUM7SUFzQkosQ0FBQztJQXBCQyxZQUFZLENBQUMsS0FBa0I7UUFDN0IsTUFBTSxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ25CLElBQUksaUJBQWlCLEdBQUcsS0FBSyxDQUFDO1FBQzlCLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUM7WUFDeEYsTUFBTSxXQUFXLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUMvQixNQUFNLGNBQWMsR0FBRyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxlQUFlLENBQVcsQ0FBQyxDQUFDO1lBQ2xGLE1BQU0sWUFBWSxHQUFHLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsQ0FBVyxDQUFDLENBQUM7WUFDOUUsaUJBQWlCLEdBQUcsY0FBYyxJQUFJLFdBQVcsSUFBSSxXQUFXLElBQUksWUFBWSxDQUFDO1FBQ25GLENBQUM7UUFDRCxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLElBQUksQ0FBQyxDQUFDLFdBQVcsQ0FBQyxZQUFZLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3RGLENBQUM7SUFFRCxHQUFHLENBQUMsS0FBa0I7UUFDcEIsT0FBTyxJQUFJLENBQUMsT0FBTzthQUNoQixJQUFJLENBQUMsZUFBZSxFQUFFO1lBQ3JCLEtBQUs7WUFDTCxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87U0FDdEIsQ0FBQzthQUNELFlBQVksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDeEMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEbXNPYmplY3QsIFJldGVudGlvbkZpZWxkLCBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQHl1dXZpcy9jbGllbnQtY29yZSc7XG5pbXBvcnQgeyBZdmNPdmVybGF5U2VydmljZSB9IGZyb20gJ0B5dXV2aXMvY29tcG9uZW50cy9vdmVybGF5JztcbmltcG9ydCB7IG1hcCwgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFDVElPTl9JQ09OIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy5pY29uJztcbmltcG9ydCB7IEFic3RyYWN0Q29udGV4dEFjdGlvbiwgQWN0aW9uLCBBY3Rpb25TdXBwb3J0LCBCQVNFX0FDVElPTiwgU2VsZWN0aW9uUmFuZ2UgfSBmcm9tICcuLi8uLi9hY3Rpb25zLmludGVyZmFjZSc7XG5pbXBvcnQgeyBEZWxldGVDb21wb25lbnQgfSBmcm9tICcuL2RlbGV0ZS9kZWxldGUuY29tcG9uZW50JztcblxuZXhwb3J0IGNsYXNzIERlbGV0ZUFjdGlvbiBleHRlbmRzIEFic3RyYWN0Q29udGV4dEFjdGlvbiBpbXBsZW1lbnRzIEFjdGlvbiB7XG4gIHByaXZhdGUgdHJhbnNsYXRlID0gaW5qZWN0KFRyYW5zbGF0ZVNlcnZpY2UpO1xuICBwcml2YXRlIG92ZXJsYXkgPSBpbmplY3QoWXZjT3ZlcmxheVNlcnZpY2UpO1xuXG4gIGlkID0gQkFTRV9BQ1RJT04uZGVsZXRlO1xuICBsYWJlbCA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ3l1di5hY3Rpb24tbWVudS5hY3Rpb24uZGVsZXRlLmRtcy5vYmplY3QubGFiZWwnKTtcbiAgZGVzY3JpcHRpb24gPSB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCd5dXYuYWN0aW9uLW1lbnUuYWN0aW9uLmRlbGV0ZS5kbXMub2JqZWN0LmRlc2NyaXB0aW9uJyk7XG4gIHByaW9yaXR5ID0gODtcbiAgaWNvbiA9IEFDVElPTl9JQ09OLmRlbGV0ZTtcbiAgZ3JvdXAgPSAnY29tbW9uJztcbiAgcmFuZ2UgPSBTZWxlY3Rpb25SYW5nZS5NVUxUSV9TRUxFQ1Q7XG4gIHN1cHBvcnRzOiBBY3Rpb25TdXBwb3J0ID0ge1xuICAgIHBhdHRlcm46ICcqJ1xuICB9O1xuXG4gIGlzRXhlY3V0YWJsZShpdGVtczogRG1zT2JqZWN0W10pIHtcbiAgICBjb25zdCBlID0gaXRlbXNbMF07XG4gICAgbGV0IGlzUmV0ZW50aW9uQWN0aXZlID0gZmFsc2U7XG4gICAgaWYgKGUgJiYgZS5kYXRhW1JldGVudGlvbkZpZWxkLlJFVEVOVElPTl9TVEFSVF0gJiYgZS5kYXRhW1JldGVudGlvbkZpZWxkLlJFVEVOVElPTl9FTkRdKSB7XG4gICAgICBjb25zdCBjdXJyZW50RGF0ZSA9IG5ldyBEYXRlKCk7XG4gICAgICBjb25zdCByZXRlbnRpb25TdGFydCA9IG5ldyBEYXRlKGUuZGF0YVtSZXRlbnRpb25GaWVsZC5SRVRFTlRJT05fU1RBUlRdIGFzIHN0cmluZyk7XG4gICAgICBjb25zdCByZXRlbnRpb25FbmQgPSBuZXcgRGF0ZShlLmRhdGFbUmV0ZW50aW9uRmllbGQuUkVURU5USU9OX0VORF0gYXMgc3RyaW5nKTtcbiAgICAgIGlzUmV0ZW50aW9uQWN0aXZlID0gcmV0ZW50aW9uU3RhcnQgPD0gY3VycmVudERhdGUgJiYgY3VycmVudERhdGUgPD0gcmV0ZW50aW9uRW5kO1xuICAgIH1cbiAgICByZXR1cm4gb2YoZSAmJiAhIWUucGVybWlzc2lvbnMgJiYgZS5wZXJtaXNzaW9ucy5kZWxldGVPYmplY3QgJiYgIWlzUmV0ZW50aW9uQWN0aXZlKTtcbiAgfVxuXG4gIHJ1bihpdGVtczogRG1zT2JqZWN0W10pOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5vdmVybGF5XG4gICAgICAub3BlbihEZWxldGVDb21wb25lbnQsIHtcbiAgICAgICAgaXRlbXMsXG4gICAgICAgIGNvbnRleHQ6IHRoaXMuY29udGV4dFxuICAgICAgfSlcbiAgICAgIC5hZnRlckNsb3NlZCQucGlwZShtYXAoKCkgPT4gdHJ1ZSkpO1xuICB9XG59XG4iXX0=
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsZXRlLWFjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMveXV1dmlzL2NsaWVudC1mcmFtZXdvcmsvYWN0aW9ucy9zcmMvbGliL2FjdGlvbnMvZGVsZXRlLWFjdGlvbi9kZWxldGUtYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUE2QixnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3BHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxHQUFHLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUscUJBQXFCLEVBQXlCLFdBQVcsRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNwSCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFNUQsTUFBTSxPQUFPLFlBQWEsU0FBUSxxQkFBcUI7SUFBdkQ7O1FBQ1UsY0FBUyxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3JDLFlBQU8sR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNwQyxjQUFTLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFFN0MsT0FBRSxHQUFHLFdBQVcsQ0FBQyxNQUFNLENBQUM7UUFDeEIsVUFBSyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLGdEQUFnRCxDQUFDLENBQUM7UUFDakYsZ0JBQVcsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxzREFBc0QsQ0FBQyxDQUFDO1FBQzdGLGFBQVEsR0FBRyxDQUFDLENBQUM7UUFDYixTQUFJLEdBQUcsV0FBVyxDQUFDLE1BQU0sQ0FBQztRQUMxQixVQUFLLEdBQUcsUUFBUSxDQUFDO1FBQ2pCLFVBQUssR0FBRyxjQUFjLENBQUMsWUFBWSxDQUFDO1FBQ3BDLGFBQVEsR0FBa0I7WUFDeEIsT0FBTyxFQUFFLEdBQUc7U0FDYixDQUFDO0lBZUosQ0FBQztJQWJDLFlBQVksQ0FBQyxLQUFrQjtRQUM3QixNQUFNLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbkIsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxJQUFJLENBQUMsQ0FBQyxXQUFXLENBQUMsWUFBWSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUN2SCxDQUFDO0lBRUQsR0FBRyxDQUFDLEtBQWtCO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLE9BQU87YUFDaEIsSUFBSSxDQUFDLGVBQWUsRUFBRTtZQUNyQixLQUFLO1lBQ0wsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1NBQ3RCLENBQUM7YUFDRCxZQUFZLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG1zT2JqZWN0LCBSZXRlbnRpb25GaWVsZCwgUmV0ZW50aW9uU2VydmljZSwgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0B5dXV2aXMvY2xpZW50LWNvcmUnO1xuaW1wb3J0IHsgWXZjT3ZlcmxheVNlcnZpY2UgfSBmcm9tICdAeXV1dmlzL2NvbXBvbmVudHMvb3ZlcmxheSc7XG5pbXBvcnQgeyBtYXAsIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBQ1RJT05fSUNPTiB9IGZyb20gJy4uLy4uL2FjdGlvbnMuaWNvbic7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRleHRBY3Rpb24sIEFjdGlvbiwgQWN0aW9uU3VwcG9ydCwgQkFTRV9BQ1RJT04sIFNlbGVjdGlvblJhbmdlIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRGVsZXRlQ29tcG9uZW50IH0gZnJvbSAnLi9kZWxldGUvZGVsZXRlLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBjbGFzcyBEZWxldGVBY3Rpb24gZXh0ZW5kcyBBYnN0cmFjdENvbnRleHRBY3Rpb24gaW1wbGVtZW50cyBBY3Rpb24ge1xuICBwcml2YXRlIHRyYW5zbGF0ZSA9IGluamVjdChUcmFuc2xhdGVTZXJ2aWNlKTtcbiAgcHJpdmF0ZSBvdmVybGF5ID0gaW5qZWN0KFl2Y092ZXJsYXlTZXJ2aWNlKTtcbiAgcHJpdmF0ZSByZXRlbnRpb24gPSBpbmplY3QoUmV0ZW50aW9uU2VydmljZSk7XG5cbiAgaWQgPSBCQVNFX0FDVElPTi5kZWxldGU7XG4gIGxhYmVsID0gdGhpcy50cmFuc2xhdGUuaW5zdGFudCgneXV2LmFjdGlvbi1tZW51LmFjdGlvbi5kZWxldGUuZG1zLm9iamVjdC5sYWJlbCcpO1xuICBkZXNjcmlwdGlvbiA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ3l1di5hY3Rpb24tbWVudS5hY3Rpb24uZGVsZXRlLmRtcy5vYmplY3QuZGVzY3JpcHRpb24nKTtcbiAgcHJpb3JpdHkgPSA4O1xuICBpY29uID0gQUNUSU9OX0lDT04uZGVsZXRlO1xuICBncm91cCA9ICdjb21tb24nO1xuICByYW5nZSA9IFNlbGVjdGlvblJhbmdlLk1VTFRJX1NFTEVDVDtcbiAgc3VwcG9ydHM6IEFjdGlvblN1cHBvcnQgPSB7XG4gICAgcGF0dGVybjogJyonXG4gIH07XG5cbiAgaXNFeGVjdXRhYmxlKGl0ZW1zOiBEbXNPYmplY3RbXSkge1xuICAgIGNvbnN0IGUgPSBpdGVtc1swXTtcbiAgICByZXR1cm4gb2YoZSAmJiAhIWUucGVybWlzc2lvbnMgJiYgZS5wZXJtaXNzaW9ucy5kZWxldGVPYmplY3QgJiYgIXRoaXMucmV0ZW50aW9uLmdldFJldGVudGlvblN0YXRlKGUpLnVuZGVyUmV0ZW50aW9uKTtcbiAgfVxuXG4gIHJ1bihpdGVtczogRG1zT2JqZWN0W10pOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5vdmVybGF5XG4gICAgICAub3BlbihEZWxldGVDb21wb25lbnQsIHtcbiAgICAgICAgaXRlbXMsXG4gICAgICAgIGNvbnRleHQ6IHRoaXMuY29udGV4dFxuICAgICAgfSlcbiAgICAgIC5hZnRlckNsb3NlZCQucGlwZShtYXAoKCkgPT4gdHJ1ZSkpO1xuICB9XG59XG4iXX0=
@@ -3,4 +3,5 @@ export * from './lib/components/token-input/token-input.component';
3
3
  export * from './lib/components/token-input/token-input.interface';
4
4
  export * from './lib/components/focus-indicator/focus-indicator.component';
5
5
  export * from './lib/directives/noop-value-accessor.directive';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtZnJhbWV3b3JrL2NvbW1vbi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLGdEQUFnRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3Rva2VuLWlucHV0L3Rva2VuLWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3Rva2VuLWlucHV0L3Rva2VuLWlucHV0LmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2ZvY3VzLWluZGljYXRvci9mb2N1cy1pbmRpY2F0b3IuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvbm9vcC12YWx1ZS1hY2Nlc3Nvci5kaXJlY3RpdmUnO1xuIl19
6
+ export * from './lib/services';
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtZnJhbWV3b3JrL2NvbW1vbi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLGdEQUFnRCxDQUFDO0FBRS9ELGNBQWMsZ0JBQWdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdG9rZW4taW5wdXQvdG9rZW4taW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdG9rZW4taW5wdXQvdG9rZW4taW5wdXQuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZm9jdXMtaW5kaWNhdG9yL2ZvY3VzLWluZGljYXRvci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9ub29wLXZhbHVlLWFjY2Vzc29yLmRpcmVjdGl2ZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzJztcbiJdfQ==
@@ -59,7 +59,7 @@ export class DragSelectDirective {
59
59
  #selectStartY;
60
60
  #selection;
61
61
  onPointerDown(event) {
62
- if (this.yuvDragSelect()?.disabled)
62
+ if (this.yuvDragSelect()?.disabled || event.target.tagName === 'BUTTON')
63
63
  return;
64
64
  event.preventDefault();
65
65
  this.#selectStartX = event.pageX;
@@ -111,4 +111,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
111
111
  standalone: true
112
112
  }]
113
113
  }] });
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1zZWxlY3QuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy95dXV2aXMvY2xpZW50LWZyYW1ld29yay9jb21tb24vc3JjL2xpYi9kaXJlY3RpdmVzL2RyYWctc2VsZWN0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLGVBQWUsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFrQnRILE1BQU0sT0FBTyxtQkFBbUI7SUFKaEM7UUFNRSxrQkFBYSxHQUFHLENBQUMsQ0FBQztRQUNsQixrQkFBYSxHQUFHLENBQUMsQ0FBQztRQUVsQixlQUFVLEdBQWEsRUFBRSxDQUFDO1FBdUIxQixVQUFLLEdBQUcsZUFBZSxDQUFDLHVCQUF1QixDQUFDLENBQUM7UUFDakQsaUJBQVksR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFbkUsa0JBQWEsR0FBRyxLQUFLLEVBQXFCLENBQUM7UUFDM0MscUJBQWdCLEdBQUcsTUFBTSxFQUFZLENBQUM7UUFDdEMsZUFBVSxHQUFHLE1BQU0sRUFBWSxDQUFDO1FBRWhDLGlCQUFZLEdBQUcsR0FBRyxFQUFFO1lBQ2xCLG1CQUFtQixDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDakQsbUJBQW1CLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUNwRCxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTTtnQkFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FB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VCxRQUFRLEVBQUUscUJBQXFCO29CQUMvQixVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb21wdXRlZCwgY29udGVudENoaWxkcmVuLCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciwgaW5qZWN0LCBpbnB1dCwgb3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmludGVyZmFjZSBTZWxlY3RhYmxlUmVjdCB7XG4gIHg6IG51bWJlcjtcbiAgeTogbnVtYmVyO1xuICB3aWR0aDogbnVtYmVyO1xuICBoZWlnaHQ6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEcmFnU2VsZWN0T3B0aW9ucyB7XG4gIGRpc2FibGVkPzogYm9vbGVhbjtcbiAgc2VsZWN0b3JDb2xvcj86IHN0cmluZztcbn1cblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3l1dkRyYWdTZWxlY3RdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEcmFnU2VsZWN0RGlyZWN0aXZlIHtcbiAgI3NlbGVjdG9yPzogSFRNTERpdkVsZW1lbnQ7XG4gICNzZWxlY3RTdGFydFggPSAwO1xuICAjc2VsZWN0U3RhcnRZID0gMDtcblxuICAjc2VsZWN0aW9uOiBudW1iZXJbXSA9IFtdO1xuXG4gIEBIb3N0TGlzdGVuZXIoJ3BvaW50ZXJkb3duJywgWyckZXZlbnQnXSkgb25Qb2ludGVyRG93bihldmVudDogUG9pbnRlckV2ZW50KSB7XG4gICAgaWYgKHRoaXMueXV2RHJhZ1NlbGVjdCgpPy5kaXNhYmxlZCkgcmV0dXJuO1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgdGhpcy4jc2VsZWN0U3RhcnRYID0gZXZlbnQucGFnZVg7XG4gICAgdGhpcy4jc2VsZWN0U3RhcnRZID0gZXZlbnQucGFnZVk7XG5cbiAgICBjb25zdCBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICBkaXYuc3R5bGUucG9zaXRpb24gPSAnYWJzb2x1dGUnO1xuICAgIGRpdi5zdHlsZS53aWR0aCA9ICcwJztcbiAgICBkaXYuc3R5bGUuaGVpZ2h0ID0gJzAnO1xuICAgIGRpdi5zdHlsZS5sZWZ0ID0gdGhpcy4jc2VsZWN0U3RhcnRYICsgJ3B4JztcbiAgICBkaXYuc3R5bGUudG9wID0gdGhpcy4jc2VsZWN0U3RhcnRZICsgJ3B4JztcbiAgICBkaXYuY2xhc3NMaXN0LmFkZCgnZHJhZy1zZWxlY3QnKTtcbiAgICB0aGlzLiNzZWxlY3RvciA9IGRpdjtcbiAgICBkb2N1bWVudC5ib2R5LmFwcGVuZCh0aGlzLiNzZWxlY3Rvcik7XG5cbiAgICB0aGlzLiNzZWxlY3Rpb24gPSBbXTtcbiAgICBhZGRFdmVudExpc3RlbmVyKCdwb2ludGVybW92ZScsIHRoaXMuI3Jlc2l6ZSk7XG4gICAgYWRkRXZlbnRMaXN0ZW5lcigncG9pbnRlcnVwJywgdGhpcy4jb25Qb2ludGVyVXApO1xuICB9XG5cbiAgaXRlbXMgPSBjb250ZW50Q2hpbGRyZW4oRHJhZ1NlbGVjdEl0ZW1EaXJlY3RpdmUpO1xuICAjc2VsZWN0YWJsZXMgPSBjb21wdXRlZCgoKSA9PiB0aGlzLml0ZW1zKCkubWFwKChpdGVtKSA9PiBpdGVtLmVsKSk7XG5cbiAgeXV2RHJhZ1NlbGVjdCA9IGlucHV0PERyYWdTZWxlY3RPcHRpb25zPigpO1xuICBkcmFnU2VsZWN0Q2hhbmdlID0gb3V0cHV0PG51bWJlcltdPigpO1xuICBkcmFnU2VsZWN0ID0gb3V0cHV0PG51bWJlcltdPigpO1xuXG4gICNvblBvaW50ZXJVcCA9ICgpID0+IHtcbiAgICByZW1vdmVFdmVudExpc3RlbmVyKCdwb2ludGVybW92ZScsIHRoaXMuI3Jlc2l6ZSk7XG4gICAgcmVtb3ZlRXZlbnRMaXN0ZW5lcigncG9pbnRlcnVwJywgdGhpcy4jb25Qb2ludGVyVXApO1xuICAgIGlmICh0aGlzLiNzZWxlY3Rpb24ubGVuZ3RoKSB0aGlzLmRyYWdTZWxlY3QuZW1pdCh0aGlzLiNzZWxlY3Rpb24pO1xuICAgIGlmICh0aGlzLiNzZWxlY3RvcikgdGhpcy4jc2VsZWN0b3IucmVtb3ZlKCk7XG4gIH07XG5cbiAgI3Jlc2l6ZSA9IChldmVudDogUG9pbnRlckV2ZW50KSA9PiB7XG4gICAgaWYgKCF0aGlzLiNzZWxlY3RvcikgcmV0dXJuO1xuICAgIGNvbnN0IGRpZmZYID0gZXZlbnQucGFnZVggLSB0aGlzLiNzZWxlY3RTdGFydFg7XG4gICAgY29uc3QgZGlmZlkgPSBldmVudC5wYWdlWSAtIHRoaXMuI3NlbGVjdFN0YXJ0WTtcbiAgICB0aGlzLiNzZWxlY3Rvci5zdHlsZS5sZWZ0ID0gZGlmZlggPCAwID8gdGhpcy4jc2VsZWN0U3RhcnRYICsgZGlmZlggKyAncHgnIDogdGhpcy4jc2VsZWN0U3RhcnRYICsgJ3B4JztcbiAgICB0aGlzLiNzZWxlY3Rvci5zdHlsZS50b3AgPSBkaWZmWSA8IDAgPyB0aGlzLiNzZWxlY3RTdGFydFkgKyBkaWZmWSArICdweCcgOiB0aGlzLiNzZWxlY3RTdGFydFkgKyAncHgnO1xuICAgIHRoaXMuI3NlbGVjdG9yLnN0eWxlLmhlaWdodCA9IE1hdGguYWJzKGRpZmZZKSArICdweCc7XG4gICAgdGhpcy4jc2VsZWN0b3Iuc3R5bGUud2lkdGggPSBNYXRoLmFicyhkaWZmWCkgKyAncHgnO1xuXG4gICAgdGhpcy4jc2VsZWN0b3Iuc3R5bGUuYm9yZGVyID0gYDFweCBzb2xpZCAke3RoaXMueXV2RHJhZ1NlbGVjdCgpPy5zZWxlY3RvckNvbG9yIHx8ICd2YXIoLS1jb2xvci1hY2NlbnQnfWA7XG4gICAgdGhpcy4jY2hlY2tTZWxlY3RlZCgpO1xuICB9O1xuXG4gICNjaGVja1NlbGVjdGVkID0gKCkgPT4ge1xuICAgIGlmICghdGhpcy4jc2VsZWN0b3IpIHJldHVybjtcbiAgICBjb25zdCBzZWxlY3QgPSB0aGlzLiNzZWxlY3Rvci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICBjb25zdCB7IHgsIHksIGhlaWdodCwgd2lkdGggfSA9IHNlbGVjdDtcbiAgICBpZiAoIWhlaWdodCB8fCAhd2lkdGgpIHJldHVybjtcblxuICAgIGNvbnN0IGN1cnJTZWxlY3Rpb25MZW5ndGggPSB0aGlzLiNzZWxlY3Rpb24ubGVuZ3RoO1xuICAgIHRoaXMuI3NlbGVjdGFibGVzKCkuZm9yRWFjaCgoc2VsZWN0YWJsZSwgaWR4KSA9PiB7XG4gICAgICBjb25zdCByMTogU2VsZWN0YWJsZVJlY3QgPSB7IHg6IHggKyB3aW5kb3cuc2Nyb2xsWCwgeTogeSArIHdpbmRvdy5zY3JvbGxZLCBoZWlnaHQsIHdpZHRoIH07XG4gICAgICBjb25zdCByMjogU2VsZWN0YWJsZVJlY3QgPSBzZWxlY3RhYmxlLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgdGhpcy4jc2VsZWN0aW9uID0gdGhpcy4jc2VsZWN0aW9uLmZpbHRlcigocykgPT4gcyAhPT0gaWR4KTtcbiAgICAgIGlmICh0aGlzLiNjaGVja1JlY3RJbnRlcnNlY3Rpb24ocjEsIHIyKSkge1xuICAgICAgICB0aGlzLiNzZWxlY3Rpb24ucHVzaChpZHgpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgaWYgKGN1cnJTZWxlY3Rpb25MZW5ndGggIT09IHRoaXMuI3NlbGVjdGlvbi5sZW5ndGgpIHtcbiAgICAgIHRoaXMuZHJhZ1NlbGVjdENoYW5nZS5lbWl0KHRoaXMuI3NlbGVjdGlvbik7XG4gICAgfVxuICB9O1xuXG4gICNjaGVja1JlY3RJbnRlcnNlY3Rpb24gPSAocjE6IFNlbGVjdGFibGVSZWN0LCByMjogU2VsZWN0YWJsZVJlY3QpID0+IHtcbiAgICByZXR1cm4gIShyMS54ICsgcjEud2lkdGggPCByMi54IHx8IHIyLnggKyByMi53aWR0aCA8IHIxLnggfHwgcjEueSArIHIxLmhlaWdodCA8IHIyLnkgfHwgcjIueSArIHIyLmhlaWdodCA8IHIxLnkpO1xuICB9O1xufVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbeXV2RHJhZ1NlbGVjdEl0ZW1dJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEcmFnU2VsZWN0SXRlbURpcmVjdGl2ZSB7XG4gICNlbFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcbiAgZWwgPSB0aGlzLiNlbFJlZi5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50O1xufVxuIl19
114
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1zZWxlY3QuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy95dXV2aXMvY2xpZW50LWZyYW1ld29yay9jb21tb24vc3JjL2xpYi9kaXJlY3RpdmVzL2RyYWctc2VsZWN0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLGVBQWUsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFrQnRILE1BQU0sT0FBTyxtQkFBbUI7SUFKaEM7UUFNRSxrQkFBYSxHQUFHLENBQUMsQ0FBQztRQUNsQixrQkFBYSxHQUFHLENBQUMsQ0FBQztRQUVsQixlQUFVLEdBQWEsRUFBRSxDQUFDO1FBdUIxQixVQUFLLEdBQUcsZUFBZSxDQUFDLHVCQUF1QixDQUFDLENBQUM7UUFDakQsaUJBQVksR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFbkUsa0JBQWEsR0FBRyxLQUFLLEVBQXFCLENBQUM7UUFDM0MscUJBQWdCLEdBQUcsTUFBTSxFQUFZLENBQUM7UUFDdEMsZUFBVSxHQUFHLE1BQU0sRUFBWSxDQUFDO1FBRWhDLGlCQUFZLEdBQUcsR0FBRyxFQUFFO1lBQ2xCLG1CQUFtQixDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDakQsbUJBQW1CLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUNwRCxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTTtnQkFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDbEUsSUFBSSxJQUFJLENBQUMsU0FBUztnQkFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzlDLENBQUMsQ0FBQztRQUVGLFlBQU8sR0FBRyxDQUFDLEtBQW1CLEVBQUUsRUFBRTtZQUNoQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVM7Z0JBQUUsT0FBTztZQUM1QixNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7WUFDL0MsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDO1lBQy9DLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO1lBQ3RHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEdBQUcsR0FBRyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO1lBQ3JHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQztZQUNyRCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUM7WUFFcEQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLGFBQWEsSUFBSSxDQUFDLGFBQWEsRUFBRSxFQUFFLGFBQWEsSUFBSSxvQkFBb0IsRUFBRSxDQUFDO1lBQ3pHLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN4QixDQUFDLENBQUM7UUFFRixtQkFBYyxHQUFHLEdBQUcsRUFBRTtZQUNwQixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVM7Z0JBQUUsT0FBTztZQUM1QixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLHFCQUFxQixFQUFFLENBQUM7WUFDdEQsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxHQUFHLE1BQU0sQ0FBQztZQUN2QyxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsS0FBSztnQkFBRSxPQUFPO1lBRTlCLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUM7WUFDbkQsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUsRUFBRTtnQkFDOUMsTUFBTSxFQUFFLEdBQW1CLEVBQUUsQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLEdBQUcsTUFBTSxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLENBQUM7Z0JBQzNGLE1BQU0sRUFBRSxHQUFtQixVQUFVLENBQUMscUJBQXFCLEVBQUUsQ0FBQztnQkFDOUQsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO2dCQUMzRCxJQUFJLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQztvQkFDeEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQzVCLENBQUM7WUFDSCxDQUFDLENBQUMsQ0FBQztZQUVILElBQUksbUJBQW1CLEtBQUssSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDbkQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDOUMsQ0FBQztRQUNILENBQUMsQ0FBQztRQUVGLDJCQUFzQixHQUFHLENBQUMsRUFBa0IsRUFBRSxFQUFrQixFQUFFLEVBQUU7WUFDbEUsT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNuSCxDQUFDLENBQUM7S0FDSDtJQTlFQyxTQUFTLENBQWtCO0lBQzNCLGFBQWEsQ0FBSztJQUNsQixhQUFhLENBQUs7SUFFbEIsVUFBVSxDQUFnQjtJQUVlLGFBQWEsQ0FBQyxLQUFtQjtRQUN4RSxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsRUFBRSxRQUFRLElBQUssS0FBSyxDQUFDLE1BQXNCLENBQUMsT0FBTyxLQUFLLFFBQVE7WUFBRSxPQUFPO1FBQ2pHLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUM7UUFDakMsSUFBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBRWpDLE1BQU0sR0FBRyxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDMUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO1FBQ2hDLEdBQUcsQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQztRQUN0QixHQUFHLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUM7UUFDdkIsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7UUFDM0MsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7UUFDMUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUM7UUFDckIsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRXJDLElBQUksQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ3JCLGdCQUFnQixDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDOUMsZ0JBQWdCLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBR0QsWUFBWSxDQUF1RDtJQU1uRSxZQUFZLENBS1Y7SUFFRixPQUFPLENBV0w7SUFFRixjQUFjLENBbUJaO0lBRUYsc0JBQXNCLENBRXBCOytHQTlFUyxtQkFBbUI7bUdBQW5CLG1CQUFtQiwyWUE0Qk4sdUJBQXVCOzs0RkE1QnBDLG1CQUFtQjtrQkFKL0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixVQUFVLEVBQUUsSUFBSTtpQkFDakI7OEJBUTBDLGFBQWE7c0JBQXJELFlBQVk7dUJBQUMsYUFBYSxFQUFFLENBQUMsUUFBUSxDQUFDOztBQThFekMsTUFBTSxPQUFPLHVCQUF1QjtJQUpwQztRQUtFLFdBQU0sR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDNUIsT0FBRSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBNEIsQ0FBQztLQUMvQztJQUZDLE1BQU0sQ0FBc0I7K0dBRGpCLHVCQUF1QjttR0FBdkIsdUJBQXVCOzs0RkFBdkIsdUJBQXVCO2tCQUpuQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxxQkFBcUI7b0JBQy9CLFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbXB1dGVkLCBjb250ZW50Q2hpbGRyZW4sIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBpbmplY3QsIGlucHV0LCBvdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW50ZXJmYWNlIFNlbGVjdGFibGVSZWN0IHtcbiAgeDogbnVtYmVyO1xuICB5OiBudW1iZXI7XG4gIHdpZHRoOiBudW1iZXI7XG4gIGhlaWdodDogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERyYWdTZWxlY3RPcHRpb25zIHtcbiAgZGlzYWJsZWQ/OiBib29sZWFuO1xuICBzZWxlY3RvckNvbG9yPzogc3RyaW5nO1xufVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbeXV2RHJhZ1NlbGVjdF0nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIERyYWdTZWxlY3REaXJlY3RpdmUge1xuICAjc2VsZWN0b3I/OiBIVE1MRGl2RWxlbWVudDtcbiAgI3NlbGVjdFN0YXJ0WCA9IDA7XG4gICNzZWxlY3RTdGFydFkgPSAwO1xuXG4gICNzZWxlY3Rpb246IG51bWJlcltdID0gW107XG5cbiAgQEhvc3RMaXN0ZW5lcigncG9pbnRlcmRvd24nLCBbJyRldmVudCddKSBvblBvaW50ZXJEb3duKGV2ZW50OiBQb2ludGVyRXZlbnQpIHtcbiAgICBpZiAodGhpcy55dXZEcmFnU2VsZWN0KCk/LmRpc2FibGVkIHx8IChldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQpLnRhZ05hbWUgPT09ICdCVVRUT04nKSByZXR1cm47XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB0aGlzLiNzZWxlY3RTdGFydFggPSBldmVudC5wYWdlWDtcbiAgICB0aGlzLiNzZWxlY3RTdGFydFkgPSBldmVudC5wYWdlWTtcblxuICAgIGNvbnN0IGRpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgIGRpdi5zdHlsZS5wb3NpdGlvbiA9ICdhYnNvbHV0ZSc7XG4gICAgZGl2LnN0eWxlLndpZHRoID0gJzAnO1xuICAgIGRpdi5zdHlsZS5oZWlnaHQgPSAnMCc7XG4gICAgZGl2LnN0eWxlLmxlZnQgPSB0aGlzLiNzZWxlY3RTdGFydFggKyAncHgnO1xuICAgIGRpdi5zdHlsZS50b3AgPSB0aGlzLiNzZWxlY3RTdGFydFkgKyAncHgnO1xuICAgIGRpdi5jbGFzc0xpc3QuYWRkKCdkcmFnLXNlbGVjdCcpO1xuICAgIHRoaXMuI3NlbGVjdG9yID0gZGl2O1xuICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kKHRoaXMuI3NlbGVjdG9yKTtcblxuICAgIHRoaXMuI3NlbGVjdGlvbiA9IFtdO1xuICAgIGFkZEV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJtb3ZlJywgdGhpcy4jcmVzaXplKTtcbiAgICBhZGRFdmVudExpc3RlbmVyKCdwb2ludGVydXAnLCB0aGlzLiNvblBvaW50ZXJVcCk7XG4gIH1cblxuICBpdGVtcyA9IGNvbnRlbnRDaGlsZHJlbihEcmFnU2VsZWN0SXRlbURpcmVjdGl2ZSk7XG4gICNzZWxlY3RhYmxlcyA9IGNvbXB1dGVkKCgpID0+IHRoaXMuaXRlbXMoKS5tYXAoKGl0ZW0pID0+IGl0ZW0uZWwpKTtcblxuICB5dXZEcmFnU2VsZWN0ID0gaW5wdXQ8RHJhZ1NlbGVjdE9wdGlvbnM+KCk7XG4gIGRyYWdTZWxlY3RDaGFuZ2UgPSBvdXRwdXQ8bnVtYmVyW10+KCk7XG4gIGRyYWdTZWxlY3QgPSBvdXRwdXQ8bnVtYmVyW10+KCk7XG5cbiAgI29uUG9pbnRlclVwID0gKCkgPT4ge1xuICAgIHJlbW92ZUV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJtb3ZlJywgdGhpcy4jcmVzaXplKTtcbiAgICByZW1vdmVFdmVudExpc3RlbmVyKCdwb2ludGVydXAnLCB0aGlzLiNvblBvaW50ZXJVcCk7XG4gICAgaWYgKHRoaXMuI3NlbGVjdGlvbi5sZW5ndGgpIHRoaXMuZHJhZ1NlbGVjdC5lbWl0KHRoaXMuI3NlbGVjdGlvbik7XG4gICAgaWYgKHRoaXMuI3NlbGVjdG9yKSB0aGlzLiNzZWxlY3Rvci5yZW1vdmUoKTtcbiAgfTtcblxuICAjcmVzaXplID0gKGV2ZW50OiBQb2ludGVyRXZlbnQpID0+IHtcbiAgICBpZiAoIXRoaXMuI3NlbGVjdG9yKSByZXR1cm47XG4gICAgY29uc3QgZGlmZlggPSBldmVudC5wYWdlWCAtIHRoaXMuI3NlbGVjdFN0YXJ0WDtcbiAgICBjb25zdCBkaWZmWSA9IGV2ZW50LnBhZ2VZIC0gdGhpcy4jc2VsZWN0U3RhcnRZO1xuICAgIHRoaXMuI3NlbGVjdG9yLnN0eWxlLmxlZnQgPSBkaWZmWCA8IDAgPyB0aGlzLiNzZWxlY3RTdGFydFggKyBkaWZmWCArICdweCcgOiB0aGlzLiNzZWxlY3RTdGFydFggKyAncHgnO1xuICAgIHRoaXMuI3NlbGVjdG9yLnN0eWxlLnRvcCA9IGRpZmZZIDwgMCA/IHRoaXMuI3NlbGVjdFN0YXJ0WSArIGRpZmZZICsgJ3B4JyA6IHRoaXMuI3NlbGVjdFN0YXJ0WSArICdweCc7XG4gICAgdGhpcy4jc2VsZWN0b3Iuc3R5bGUuaGVpZ2h0ID0gTWF0aC5hYnMoZGlmZlkpICsgJ3B4JztcbiAgICB0aGlzLiNzZWxlY3Rvci5zdHlsZS53aWR0aCA9IE1hdGguYWJzKGRpZmZYKSArICdweCc7XG5cbiAgICB0aGlzLiNzZWxlY3Rvci5zdHlsZS5ib3JkZXIgPSBgMXB4IHNvbGlkICR7dGhpcy55dXZEcmFnU2VsZWN0KCk/LnNlbGVjdG9yQ29sb3IgfHwgJ3ZhcigtLWNvbG9yLWFjY2VudCd9YDtcbiAgICB0aGlzLiNjaGVja1NlbGVjdGVkKCk7XG4gIH07XG5cbiAgI2NoZWNrU2VsZWN0ZWQgPSAoKSA9PiB7XG4gICAgaWYgKCF0aGlzLiNzZWxlY3RvcikgcmV0dXJuO1xuICAgIGNvbnN0IHNlbGVjdCA9IHRoaXMuI3NlbGVjdG9yLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgIGNvbnN0IHsgeCwgeSwgaGVpZ2h0LCB3aWR0aCB9ID0gc2VsZWN0O1xuICAgIGlmICghaGVpZ2h0IHx8ICF3aWR0aCkgcmV0dXJuO1xuXG4gICAgY29uc3QgY3VyclNlbGVjdGlvbkxlbmd0aCA9IHRoaXMuI3NlbGVjdGlvbi5sZW5ndGg7XG4gICAgdGhpcy4jc2VsZWN0YWJsZXMoKS5mb3JFYWNoKChzZWxlY3RhYmxlLCBpZHgpID0+IHtcbiAgICAgIGNvbnN0IHIxOiBTZWxlY3RhYmxlUmVjdCA9IHsgeDogeCArIHdpbmRvdy5zY3JvbGxYLCB5OiB5ICsgd2luZG93LnNjcm9sbFksIGhlaWdodCwgd2lkdGggfTtcbiAgICAgIGNvbnN0IHIyOiBTZWxlY3RhYmxlUmVjdCA9IHNlbGVjdGFibGUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICB0aGlzLiNzZWxlY3Rpb24gPSB0aGlzLiNzZWxlY3Rpb24uZmlsdGVyKChzKSA9PiBzICE9PSBpZHgpO1xuICAgICAgaWYgKHRoaXMuI2NoZWNrUmVjdEludGVyc2VjdGlvbihyMSwgcjIpKSB7XG4gICAgICAgIHRoaXMuI3NlbGVjdGlvbi5wdXNoKGlkeCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBpZiAoY3VyclNlbGVjdGlvbkxlbmd0aCAhPT0gdGhpcy4jc2VsZWN0aW9uLmxlbmd0aCkge1xuICAgICAgdGhpcy5kcmFnU2VsZWN0Q2hhbmdlLmVtaXQodGhpcy4jc2VsZWN0aW9uKTtcbiAgICB9XG4gIH07XG5cbiAgI2NoZWNrUmVjdEludGVyc2VjdGlvbiA9IChyMTogU2VsZWN0YWJsZVJlY3QsIHIyOiBTZWxlY3RhYmxlUmVjdCkgPT4ge1xuICAgIHJldHVybiAhKHIxLnggKyByMS53aWR0aCA8IHIyLnggfHwgcjIueCArIHIyLndpZHRoIDwgcjEueCB8fCByMS55ICsgcjEuaGVpZ2h0IDwgcjIueSB8fCByMi55ICsgcjIuaGVpZ2h0IDwgcjEueSk7XG4gIH07XG59XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1t5dXZEcmFnU2VsZWN0SXRlbV0nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIERyYWdTZWxlY3RJdGVtRGlyZWN0aXZlIHtcbiAgI2VsUmVmID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuICBlbCA9IHRoaXMuI2VsUmVmLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XG59XG4iXX0=
@@ -0,0 +1,68 @@
1
+ import { inject, Injectable } from '@angular/core';
2
+ import { TranslateService } from '@yuuvis/client-core';
3
+ import * as i0 from "@angular/core";
4
+ export class ErrorMessagesService {
5
+ constructor() {
6
+ this.translate = inject(TranslateService);
7
+ }
8
+ getErrorLabel(error, params) {
9
+ console.log('getErrorLabel', error, params);
10
+ switch (error) {
11
+ case 'daterange':
12
+ return this.translate.instant('yuv.object-form-element.error.daterange.invalid', params);
13
+ case 'daterangeorder':
14
+ return this.translate.instant('yuv.object-form-element.error.daterangeorder.invalid', params);
15
+ case 'numberrange':
16
+ return this.translate.instant('yuv.object-form-element.error.numberrange.invalid', params);
17
+ case 'numberrangeorder':
18
+ return this.translate.instant('yuv.object-form-element.error.numberrangeorder.invalid', params);
19
+ case 'number':
20
+ return this.translate.instant('yuv.object-form-element.error.number', params);
21
+ case 'precision':
22
+ return this.translate.instant('yuv.object-form-element.error.number.precision', params);
23
+ case 'scale':
24
+ return this.translate.instant('yuv.object-form-element.error.number.scale', params);
25
+ case 'regex':
26
+ return this.translate.instant('yuv.object-form-element.error.string.regex.nomatch', params);
27
+ case 'pattern':
28
+ return this.translate.instant('yuv.object-form-element.error.string.regex.nomatch', params);
29
+ case 'classif icationemail':
30
+ return this.translate.instant('yuv.object-form-element.error.string.classification.email', params);
31
+ case 'classificationphone':
32
+ return this.translate.instant('yuv.object-form-element.error.string.classification.phone', params);
33
+ case 'classificationurl':
34
+ return this.translate.instant('yuv.object-form-element.error.string.classification.url', params);
35
+ case 'onlyWhitespaces':
36
+ return this.translate.instant('yuv.object-form-element.error.string.whitespaces', params);
37
+ case 'datecontrol':
38
+ return this.translate.instant('yuv.object-form-element.error.date.invalid', params);
39
+ case 'required':
40
+ console.log('required', params);
41
+ return this.translate.instant('yuv.object-form-element.error.required', params);
42
+ case 'maxlength':
43
+ return this.translate.instant('yuv.object-form-element.error.maxlength', params);
44
+ case 'minlength':
45
+ return this.translate.instant('yuv.object-form-element.error.minlength', params);
46
+ case 'minmax':
47
+ return this.translate.instant('yuv.object-form-element.error.minmax', params);
48
+ case 'minvalue':
49
+ return this.translate.instant('yuv.object-form-element.error.minvalue', params);
50
+ case 'maxvalue':
51
+ return this.translate.instant('yuv.object-form-element.error.maxvalue', params);
52
+ case 'empty':
53
+ return this.translate.instant('yuv.object-form-element.recent-activities.list.empty', params);
54
+ default:
55
+ console.log('default', error, params);
56
+ return this.translate.instant(error, params);
57
+ }
58
+ }
59
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ErrorMessagesService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
60
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ErrorMessagesService, providedIn: 'root' }); }
61
+ }
62
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ErrorMessagesService, decorators: [{
63
+ type: Injectable,
64
+ args: [{
65
+ providedIn: 'root'
66
+ }]
67
+ }] });
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItbWVzc2FnZXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMveXV1dmlzL2NsaWVudC1mcmFtZXdvcmsvY29tbW9uL3NyYy9saWIvc2VydmljZXMvZXJyb3ItbWVzc2FnZXMvZXJyb3ItbWVzc2FnZXMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFLdkQsTUFBTSxPQUFPLG9CQUFvQjtJQUhqQztRQUltQixjQUFTLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7S0F3RHZEO0lBdERDLGFBQWEsQ0FBQyxLQUFhLEVBQUUsTUFBWTtRQUN2QyxPQUFPLENBQUMsR0FBRyxDQUFDLGVBQWUsRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFFNUMsUUFBUSxLQUFLLEVBQUUsQ0FBQztZQUNkLEtBQUssV0FBVztnQkFDZCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLGlEQUFpRCxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQzNGLEtBQUssZ0JBQWdCO2dCQUNuQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLHNEQUFzRCxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ2hHLEtBQUssYUFBYTtnQkFDaEIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxtREFBbUQsRUFBRSxNQUFNLENBQUMsQ0FBQztZQUM3RixLQUFLLGtCQUFrQjtnQkFDckIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyx3REFBd0QsRUFBRSxNQUFNLENBQUMsQ0FBQztZQUNsRyxLQUFLLFFBQVE7Z0JBQ1gsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxzQ0FBc0MsRUFBRSxNQUFNLENBQUMsQ0FBQztZQUNoRixLQUFLLFdBQVc7Z0JBQ2QsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxnREFBZ0QsRUFBRSxNQUFNLENBQUMsQ0FBQztZQUMxRixLQUFLLE9BQU87Z0JBQ1YsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyw0Q0FBNEMsRUFBRSxNQUFNLENBQUMsQ0FBQztZQUN0RixLQUFLLE9BQU87Z0JBQ1YsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxvREFBb0QsRUFBRSxNQUFNLENBQUMsQ0FBQztZQUM5RixLQUFLLFNBQVM7Z0JBQ1osT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxvREFBb0QsRUFBRSxNQUFNLENBQUMsQ0FBQztZQUM5RixLQUFLLHNCQUFzQjtnQkFDekIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQywyREFBMkQsRUFBRSxNQUFNLENBQUMsQ0FBQztZQUNyRyxLQUFLLHFCQUFxQjtnQkFDeEIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQywyREFBMkQsRUFBRSxNQUFNLENBQUMsQ0FBQztZQUNyRyxLQUFLLG1CQUFtQjtnQkFDdEIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyx5REFBeUQsRUFBRSxNQUFNLENBQUMsQ0FBQztZQUNuRyxLQUFLLGlCQUFpQjtnQkFDcEIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxrREFBa0QsRUFBRSxNQUFNLENBQUMsQ0FBQztZQUM1RixLQUFLLGFBQWE7Z0JBQ2hCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsNENBQTRDLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDdEYsS0FBSyxVQUFVO2dCQUNiLE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDO2dCQUVoQyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLHdDQUF3QyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ2xGLEtBQUssV0FBVztnQkFDZCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLHlDQUF5QyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ25GLEtBQUssV0FBVztnQkFDZCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLHlDQUF5QyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ25GLEtBQUssUUFBUTtnQkFDWCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLHNDQUFzQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ2hGLEtBQUssVUFBVTtnQkFDYixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLHdDQUF3QyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ2xGLEtBQUssVUFBVTtnQkFDYixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLHdDQUF3QyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ2xGLEtBQUssT0FBTztnQkFDVixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLHNEQUFzRCxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ2hHO2dCQUNFLE9BQU8sQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztnQkFFdEMsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDakQsQ0FBQztJQUNILENBQUM7K0dBeERVLG9CQUFvQjttSEFBcEIsb0JBQW9CLGNBRm5CLE1BQU07OzRGQUVQLG9CQUFvQjtrQkFIaEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAeXV1dmlzL2NsaWVudC1jb3JlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRXJyb3JNZXNzYWdlc1NlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZSA9IGluamVjdChUcmFuc2xhdGVTZXJ2aWNlKTtcblxuICBnZXRFcnJvckxhYmVsKGVycm9yOiBzdHJpbmcsIHBhcmFtcz86IGFueSkge1xuICAgIGNvbnNvbGUubG9nKCdnZXRFcnJvckxhYmVsJywgZXJyb3IsIHBhcmFtcyk7XG5cbiAgICBzd2l0Y2ggKGVycm9yKSB7XG4gICAgICBjYXNlICdkYXRlcmFuZ2UnOlxuICAgICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuaW5zdGFudCgneXV2Lm9iamVjdC1mb3JtLWVsZW1lbnQuZXJyb3IuZGF0ZXJhbmdlLmludmFsaWQnLCBwYXJhbXMpO1xuICAgICAgY2FzZSAnZGF0ZXJhbmdlb3JkZXInOlxuICAgICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuaW5zdGFudCgneXV2Lm9iamVjdC1mb3JtLWVsZW1lbnQuZXJyb3IuZGF0ZXJhbmdlb3JkZXIuaW52YWxpZCcsIHBhcmFtcyk7XG4gICAgICBjYXNlICdudW1iZXJyYW5nZSc6XG4gICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCd5dXYub2JqZWN0LWZvcm0tZWxlbWVudC5lcnJvci5udW1iZXJyYW5nZS5pbnZhbGlkJywgcGFyYW1zKTtcbiAgICAgIGNhc2UgJ251bWJlcnJhbmdlb3JkZXInOlxuICAgICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuaW5zdGFudCgneXV2Lm9iamVjdC1mb3JtLWVsZW1lbnQuZXJyb3IubnVtYmVycmFuZ2VvcmRlci5pbnZhbGlkJywgcGFyYW1zKTtcbiAgICAgIGNhc2UgJ251bWJlcic6XG4gICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCd5dXYub2JqZWN0LWZvcm0tZWxlbWVudC5lcnJvci5udW1iZXInLCBwYXJhbXMpO1xuICAgICAgY2FzZSAncHJlY2lzaW9uJzpcbiAgICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ3l1di5vYmplY3QtZm9ybS1lbGVtZW50LmVycm9yLm51bWJlci5wcmVjaXNpb24nLCBwYXJhbXMpO1xuICAgICAgY2FzZSAnc2NhbGUnOlxuICAgICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuaW5zdGFudCgneXV2Lm9iamVjdC1mb3JtLWVsZW1lbnQuZXJyb3IubnVtYmVyLnNjYWxlJywgcGFyYW1zKTtcbiAgICAgIGNhc2UgJ3JlZ2V4JzpcbiAgICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ3l1di5vYmplY3QtZm9ybS1lbGVtZW50LmVycm9yLnN0cmluZy5yZWdleC5ub21hdGNoJywgcGFyYW1zKTtcbiAgICAgIGNhc2UgJ3BhdHRlcm4nOlxuICAgICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuaW5zdGFudCgneXV2Lm9iamVjdC1mb3JtLWVsZW1lbnQuZXJyb3Iuc3RyaW5nLnJlZ2V4Lm5vbWF0Y2gnLCBwYXJhbXMpO1xuICAgICAgY2FzZSAnY2xhc3NpZiBpY2F0aW9uZW1haWwnOlxuICAgICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuaW5zdGFudCgneXV2Lm9iamVjdC1mb3JtLWVsZW1lbnQuZXJyb3Iuc3RyaW5nLmNsYXNzaWZpY2F0aW9uLmVtYWlsJywgcGFyYW1zKTtcbiAgICAgIGNhc2UgJ2NsYXNzaWZpY2F0aW9ucGhvbmUnOlxuICAgICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuaW5zdGFudCgneXV2Lm9iamVjdC1mb3JtLWVsZW1lbnQuZXJyb3Iuc3RyaW5nLmNsYXNzaWZpY2F0aW9uLnBob25lJywgcGFyYW1zKTtcbiAgICAgIGNhc2UgJ2NsYXNzaWZpY2F0aW9udXJsJzpcbiAgICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ3l1di5vYmplY3QtZm9ybS1lbGVtZW50LmVycm9yLnN0cmluZy5jbGFzc2lmaWNhdGlvbi51cmwnLCBwYXJhbXMpO1xuICAgICAgY2FzZSAnb25seVdoaXRlc3BhY2VzJzpcbiAgICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ3l1di5vYmplY3QtZm9ybS1lbGVtZW50LmVycm9yLnN0cmluZy53aGl0ZXNwYWNlcycsIHBhcmFtcyk7XG4gICAgICBjYXNlICdkYXRlY29udHJvbCc6XG4gICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCd5dXYub2JqZWN0LWZvcm0tZWxlbWVudC5lcnJvci5kYXRlLmludmFsaWQnLCBwYXJhbXMpO1xuICAgICAgY2FzZSAncmVxdWlyZWQnOlxuICAgICAgICBjb25zb2xlLmxvZygncmVxdWlyZWQnLCBwYXJhbXMpO1xuXG4gICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCd5dXYub2JqZWN0LWZvcm0tZWxlbWVudC5lcnJvci5yZXF1aXJlZCcsIHBhcmFtcyk7XG4gICAgICBjYXNlICdtYXhsZW5ndGgnOlxuICAgICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuaW5zdGFudCgneXV2Lm9iamVjdC1mb3JtLWVsZW1lbnQuZXJyb3IubWF4bGVuZ3RoJywgcGFyYW1zKTtcbiAgICAgIGNhc2UgJ21pbmxlbmd0aCc6XG4gICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCd5dXYub2JqZWN0LWZvcm0tZWxlbWVudC5lcnJvci5taW5sZW5ndGgnLCBwYXJhbXMpO1xuICAgICAgY2FzZSAnbWlubWF4JzpcbiAgICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ3l1di5vYmplY3QtZm9ybS1lbGVtZW50LmVycm9yLm1pbm1heCcsIHBhcmFtcyk7XG4gICAgICBjYXNlICdtaW52YWx1ZSc6XG4gICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCd5dXYub2JqZWN0LWZvcm0tZWxlbWVudC5lcnJvci5taW52YWx1ZScsIHBhcmFtcyk7XG4gICAgICBjYXNlICdtYXh2YWx1ZSc6XG4gICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCd5dXYub2JqZWN0LWZvcm0tZWxlbWVudC5lcnJvci5tYXh2YWx1ZScsIHBhcmFtcyk7XG4gICAgICBjYXNlICdlbXB0eSc6XG4gICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCd5dXYub2JqZWN0LWZvcm0tZWxlbWVudC5yZWNlbnQtYWN0aXZpdGllcy5saXN0LmVtcHR5JywgcGFyYW1zKTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIGNvbnNvbGUubG9nKCdkZWZhdWx0JywgZXJyb3IsIHBhcmFtcyk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoZXJyb3IsIHBhcmFtcyk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export * from './error-messages/error-messages.service';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtZnJhbWV3b3JrL2NvbW1vbi9zcmMvbGliL3NlcnZpY2VzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMseUNBQXlDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2Vycm9yLW1lc3NhZ2VzL2Vycm9yLW1lc3NhZ2VzLnNlcnZpY2UnO1xuIl19
@@ -1,23 +1,24 @@
1
- export { CatalogComponent } from './lib/elements/catalog/catalog.component';
1
+ // export { CatalogComponent } from './lib/elements/catalog/catalog.component';
2
2
  // export { CheckboxComponent } from './lib/elements/checkbox/checkbox.component';
3
- export { DatetimeRangeComponent } from './lib/elements/datetime-range/datetime-range.component';
3
+ // export { DatetimeRangeComponent } from './lib/elements/datetime-range/datetime-range.component';
4
4
  // export { DatepickerComponent } from './lib/elements/datetime/datepicker/datepicker.component';
5
- export { DatetimeComponent } from './lib/elements/datetime/datetime.component';
5
+ // export { DatetimeComponent } from './lib/elements/datetime/datetime.component';
6
6
  // export { YearRangeDirective } from './lib/elements/datetime/year-range/year-range.directive';
7
7
  // export { DynamicCatalogManagementComponent } from './lib/elements/dynamic-catalog/dynamic-catalog-management/dynamic-catalog-management.component';
8
8
  // export { DynamicCatalogComponent } from './lib/elements/dynamic-catalog/dynamic-catalog.component';
9
- export { NumberRangeComponent } from './lib/elements/number-range/number-range.component';
10
- export { NumberComponent } from './lib/elements/number/number.component';
9
+ // export { NumberRangeComponent } from './lib/elements/number-range/number-range.component';
10
+ // export { NumberComponent } from './lib/elements/number/number.component';
11
11
  // export { OrganizationSetComponent } from './lib/elements/organization-set/organization-set.component';
12
- export { OrganizationComponent } from './lib/elements/organization/organization.component';
12
+ // export { OrganizationComponent } from './lib/elements/organization/organization.component';
13
13
  // export { ReferenceItemComponent } from './lib/elements/reference/reference-item/reference-item.component';
14
14
  // export { ReferenceComponent } from './lib/elements/reference/reference.component';
15
15
  // export * from './lib/elements/reference/reference.interface';
16
- export { StringComponent } from './lib/elements/string/string.component';
16
+ // export { StringComponent } from './lib/elements/string/string.component';
17
17
  export { FormInputComponent } from './lib/form-input/form-input.component';
18
+ export * from './lib/elements';
18
19
  export * from './lib/forms.module';
19
20
  export * from './lib/elements/range-select-date/range-select-date.component';
20
21
  export * from './lib/elements/range-select-date/range-select-date.interface';
21
22
  export * from './lib/elements/range-select-filesize/range-select-filesize.component';
22
23
  export * from './lib/elements/range-select-filesize/range-select-filesize.interface';
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtZnJhbWV3b3JrL2Zvcm1zL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM1RSxrRkFBa0Y7QUFDbEYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDaEcsaUdBQWlHO0FBQ2pHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQy9FLGdHQUFnRztBQUNoRyxzSkFBc0o7QUFDdEosc0dBQXNHO0FBQ3RHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzFGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUN6RSx5R0FBeUc7QUFDekcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDM0YsNkdBQTZHO0FBQzdHLHFGQUFxRjtBQUNyRixnRUFBZ0U7QUFDaEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBRTNFLGNBQWMsb0JBQW9CLENBQUM7QUFFbkMsY0FBYyw4REFBOEQsQ0FBQztBQUM3RSxjQUFjLDhEQUE4RCxDQUFDO0FBRTdFLGNBQWMsc0VBQXNFLENBQUM7QUFDckYsY0FBYyxzRUFBc0UsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IENhdGFsb2dDb21wb25lbnQgfSBmcm9tICcuL2xpYi9lbGVtZW50cy9jYXRhbG9nL2NhdGFsb2cuY29tcG9uZW50Jztcbi8vIGV4cG9ydCB7IENoZWNrYm94Q29tcG9uZW50IH0gZnJvbSAnLi9saWIvZWxlbWVudHMvY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50JztcbmV4cG9ydCB7IERhdGV0aW1lUmFuZ2VDb21wb25lbnQgfSBmcm9tICcuL2xpYi9lbGVtZW50cy9kYXRldGltZS1yYW5nZS9kYXRldGltZS1yYW5nZS5jb21wb25lbnQnO1xuLy8gZXhwb3J0IHsgRGF0ZXBpY2tlckNvbXBvbmVudCB9IGZyb20gJy4vbGliL2VsZW1lbnRzL2RhdGV0aW1lL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci5jb21wb25lbnQnO1xuZXhwb3J0IHsgRGF0ZXRpbWVDb21wb25lbnQgfSBmcm9tICcuL2xpYi9lbGVtZW50cy9kYXRldGltZS9kYXRldGltZS5jb21wb25lbnQnO1xuLy8gZXhwb3J0IHsgWWVhclJhbmdlRGlyZWN0aXZlIH0gZnJvbSAnLi9saWIvZWxlbWVudHMvZGF0ZXRpbWUveWVhci1yYW5nZS95ZWFyLXJhbmdlLmRpcmVjdGl2ZSc7XG4vLyBleHBvcnQgeyBEeW5hbWljQ2F0YWxvZ01hbmFnZW1lbnRDb21wb25lbnQgfSBmcm9tICcuL2xpYi9lbGVtZW50cy9keW5hbWljLWNhdGFsb2cvZHluYW1pYy1jYXRhbG9nLW1hbmFnZW1lbnQvZHluYW1pYy1jYXRhbG9nLW1hbmFnZW1lbnQuY29tcG9uZW50Jztcbi8vIGV4cG9ydCB7IER5bmFtaWNDYXRhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9saWIvZWxlbWVudHMvZHluYW1pYy1jYXRhbG9nL2R5bmFtaWMtY2F0YWxvZy5jb21wb25lbnQnO1xuZXhwb3J0IHsgTnVtYmVyUmFuZ2VDb21wb25lbnQgfSBmcm9tICcuL2xpYi9lbGVtZW50cy9udW1iZXItcmFuZ2UvbnVtYmVyLXJhbmdlLmNvbXBvbmVudCc7XG5leHBvcnQgeyBOdW1iZXJDb21wb25lbnQgfSBmcm9tICcuL2xpYi9lbGVtZW50cy9udW1iZXIvbnVtYmVyLmNvbXBvbmVudCc7XG4vLyBleHBvcnQgeyBPcmdhbml6YXRpb25TZXRDb21wb25lbnQgfSBmcm9tICcuL2xpYi9lbGVtZW50cy9vcmdhbml6YXRpb24tc2V0L29yZ2FuaXphdGlvbi1zZXQuY29tcG9uZW50JztcbmV4cG9ydCB7IE9yZ2FuaXphdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vbGliL2VsZW1lbnRzL29yZ2FuaXphdGlvbi9vcmdhbml6YXRpb24uY29tcG9uZW50Jztcbi8vIGV4cG9ydCB7IFJlZmVyZW5jZUl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2xpYi9lbGVtZW50cy9yZWZlcmVuY2UvcmVmZXJlbmNlLWl0ZW0vcmVmZXJlbmNlLWl0ZW0uY29tcG9uZW50Jztcbi8vIGV4cG9ydCB7IFJlZmVyZW5jZUNvbXBvbmVudCB9IGZyb20gJy4vbGliL2VsZW1lbnRzL3JlZmVyZW5jZS9yZWZlcmVuY2UuY29tcG9uZW50Jztcbi8vIGV4cG9ydCAqIGZyb20gJy4vbGliL2VsZW1lbnRzL3JlZmVyZW5jZS9yZWZlcmVuY2UuaW50ZXJmYWNlJztcbmV4cG9ydCB7IFN0cmluZ0NvbXBvbmVudCB9IGZyb20gJy4vbGliL2VsZW1lbnRzL3N0cmluZy9zdHJpbmcuY29tcG9uZW50JztcbmV4cG9ydCB7IEZvcm1JbnB1dENvbXBvbmVudCB9IGZyb20gJy4vbGliL2Zvcm0taW5wdXQvZm9ybS1pbnB1dC5jb21wb25lbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9mb3Jtcy5tb2R1bGUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9lbGVtZW50cy9yYW5nZS1zZWxlY3QtZGF0ZS9yYW5nZS1zZWxlY3QtZGF0ZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZWxlbWVudHMvcmFuZ2Utc2VsZWN0LWRhdGUvcmFuZ2Utc2VsZWN0LWRhdGUuaW50ZXJmYWNlJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvZWxlbWVudHMvcmFuZ2Utc2VsZWN0LWZpbGVzaXplL3JhbmdlLXNlbGVjdC1maWxlc2l6ZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZWxlbWVudHMvcmFuZ2Utc2VsZWN0LWZpbGVzaXplL3JhbmdlLXNlbGVjdC1maWxlc2l6ZS5pbnRlcmZhY2UnO1xuIl19
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtZnJhbWV3b3JrL2Zvcm1zL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrRUFBK0U7QUFDL0Usa0ZBQWtGO0FBQ2xGLG1HQUFtRztBQUNuRyxpR0FBaUc7QUFDakcsa0ZBQWtGO0FBQ2xGLGdHQUFnRztBQUNoRyxzSkFBc0o7QUFDdEosc0dBQXNHO0FBQ3RHLDZGQUE2RjtBQUM3Riw0RUFBNEU7QUFDNUUseUdBQXlHO0FBQ3pHLDhGQUE4RjtBQUM5Riw2R0FBNkc7QUFDN0cscUZBQXFGO0FBQ3JGLGdFQUFnRTtBQUNoRSw0RUFBNEU7QUFDNUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDM0UsY0FBYyxnQkFBZ0IsQ0FBQztBQUUvQixjQUFjLG9CQUFvQixDQUFDO0FBRW5DLGNBQWMsOERBQThELENBQUM7QUFDN0UsY0FBYyw4REFBOEQsQ0FBQztBQUU3RSxjQUFjLHNFQUFzRSxDQUFDO0FBQ3JGLGNBQWMsc0VBQXNFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBleHBvcnQgeyBDYXRhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9saWIvZWxlbWVudHMvY2F0YWxvZy9jYXRhbG9nLmNvbXBvbmVudCc7XG4vLyBleHBvcnQgeyBDaGVja2JveENvbXBvbmVudCB9IGZyb20gJy4vbGliL2VsZW1lbnRzL2NoZWNrYm94L2NoZWNrYm94LmNvbXBvbmVudCc7XG4vLyBleHBvcnQgeyBEYXRldGltZVJhbmdlQ29tcG9uZW50IH0gZnJvbSAnLi9saWIvZWxlbWVudHMvZGF0ZXRpbWUtcmFuZ2UvZGF0ZXRpbWUtcmFuZ2UuY29tcG9uZW50Jztcbi8vIGV4cG9ydCB7IERhdGVwaWNrZXJDb21wb25lbnQgfSBmcm9tICcuL2xpYi9lbGVtZW50cy9kYXRldGltZS9kYXRlcGlja2VyL2RhdGVwaWNrZXIuY29tcG9uZW50Jztcbi8vIGV4cG9ydCB7IERhdGV0aW1lQ29tcG9uZW50IH0gZnJvbSAnLi9saWIvZWxlbWVudHMvZGF0ZXRpbWUvZGF0ZXRpbWUuY29tcG9uZW50Jztcbi8vIGV4cG9ydCB7IFllYXJSYW5nZURpcmVjdGl2ZSB9IGZyb20gJy4vbGliL2VsZW1lbnRzL2RhdGV0aW1lL3llYXItcmFuZ2UveWVhci1yYW5nZS5kaXJlY3RpdmUnO1xuLy8gZXhwb3J0IHsgRHluYW1pY0NhdGFsb2dNYW5hZ2VtZW50Q29tcG9uZW50IH0gZnJvbSAnLi9saWIvZWxlbWVudHMvZHluYW1pYy1jYXRhbG9nL2R5bmFtaWMtY2F0YWxvZy1tYW5hZ2VtZW50L2R5bmFtaWMtY2F0YWxvZy1tYW5hZ2VtZW50LmNvbXBvbmVudCc7XG4vLyBleHBvcnQgeyBEeW5hbWljQ2F0YWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vbGliL2VsZW1lbnRzL2R5bmFtaWMtY2F0YWxvZy9keW5hbWljLWNhdGFsb2cuY29tcG9uZW50Jztcbi8vIGV4cG9ydCB7IE51bWJlclJhbmdlQ29tcG9uZW50IH0gZnJvbSAnLi9saWIvZWxlbWVudHMvbnVtYmVyLXJhbmdlL251bWJlci1yYW5nZS5jb21wb25lbnQnO1xuLy8gZXhwb3J0IHsgTnVtYmVyQ29tcG9uZW50IH0gZnJvbSAnLi9saWIvZWxlbWVudHMvbnVtYmVyL251bWJlci5jb21wb25lbnQnO1xuLy8gZXhwb3J0IHsgT3JnYW5pemF0aW9uU2V0Q29tcG9uZW50IH0gZnJvbSAnLi9saWIvZWxlbWVudHMvb3JnYW5pemF0aW9uLXNldC9vcmdhbml6YXRpb24tc2V0LmNvbXBvbmVudCc7XG4vLyBleHBvcnQgeyBPcmdhbml6YXRpb25Db21wb25lbnQgfSBmcm9tICcuL2xpYi9lbGVtZW50cy9vcmdhbml6YXRpb24vb3JnYW5pemF0aW9uLmNvbXBvbmVudCc7XG4vLyBleHBvcnQgeyBSZWZlcmVuY2VJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9saWIvZWxlbWVudHMvcmVmZXJlbmNlL3JlZmVyZW5jZS1pdGVtL3JlZmVyZW5jZS1pdGVtLmNvbXBvbmVudCc7XG4vLyBleHBvcnQgeyBSZWZlcmVuY2VDb21wb25lbnQgfSBmcm9tICcuL2xpYi9lbGVtZW50cy9yZWZlcmVuY2UvcmVmZXJlbmNlLmNvbXBvbmVudCc7XG4vLyBleHBvcnQgKiBmcm9tICcuL2xpYi9lbGVtZW50cy9yZWZlcmVuY2UvcmVmZXJlbmNlLmludGVyZmFjZSc7XG4vLyBleHBvcnQgeyBTdHJpbmdDb21wb25lbnQgfSBmcm9tICcuL2xpYi9lbGVtZW50cy9zdHJpbmcvc3RyaW5nLmNvbXBvbmVudCc7XG5leHBvcnQgeyBGb3JtSW5wdXRDb21wb25lbnQgfSBmcm9tICcuL2xpYi9mb3JtLWlucHV0L2Zvcm0taW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2VsZW1lbnRzJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvZm9ybXMubW9kdWxlJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvZWxlbWVudHMvcmFuZ2Utc2VsZWN0LWRhdGUvcmFuZ2Utc2VsZWN0LWRhdGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2VsZW1lbnRzL3JhbmdlLXNlbGVjdC1kYXRlL3JhbmdlLXNlbGVjdC1kYXRlLmludGVyZmFjZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2VsZW1lbnRzL3JhbmdlLXNlbGVjdC1maWxlc2l6ZS9yYW5nZS1zZWxlY3QtZmlsZXNpemUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2VsZW1lbnRzL3JhbmdlLXNlbGVjdC1maWxlc2l6ZS9yYW5nZS1zZWxlY3QtZmlsZXNpemUuaW50ZXJmYWNlJztcbiJdfQ==
@@ -0,0 +1,172 @@
1
+ import { CdkMenu, CdkMenuItem, CdkMenuTrigger } from '@angular/cdk/menu';
2
+ import { CdkTableModule } from '@angular/cdk/table';
3
+ import { CommonModule, DecimalPipe, NgClass } from '@angular/common';
4
+ import { ChangeDetectionStrategy, Component, computed, effect, forwardRef, inject, input, signal, untracked } from '@angular/core';
5
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
6
+ import { ClipboardService, Situation, TranslateModule, TranslateService } from '@yuuvis/client-core';
7
+ import { YUV_ICONS } from '@yuuvis/client-framework/icons';
8
+ import { YvcIconModule } from '@yuuvis/components/icon';
9
+ import { YvcOverlayService } from '@yuuvis/components/overlay';
10
+ import { map } from 'rxjs';
11
+ import { EditTableDataComponent } from '../edit-table-data/edit-data.component';
12
+ import { DataGridSizeType } from '../model/data-grid.interface';
13
+ import * as i0 from "@angular/core";
14
+ import * as i1 from "@angular/common";
15
+ import * as i2 from "@yuuvis/client-core";
16
+ import * as i3 from "@yuuvis/components/icon";
17
+ import * as i4 from "@angular/cdk/table";
18
+ const CDK_IMPORT = [CdkMenu, CdkTableModule, CdkMenuTrigger, CdkMenuItem];
19
+ export class DataGridComponent {
20
+ constructor() {
21
+ this.#overlay = inject(YvcOverlayService);
22
+ this.#clipboardService = inject(ClipboardService);
23
+ this.#decimalPipe = inject(DecimalPipe);
24
+ this.trnaslate = inject(TranslateService);
25
+ this.situation = input(Situation.EDIT);
26
+ this.formElement = input(undefined);
27
+ this.formControl = input(undefined);
28
+ this.classifications = input([]);
29
+ this.readonly = input(false);
30
+ this.size = input(DataGridSizeType.AUTO);
31
+ this.displayedColumns = signal([]);
32
+ this.displayedColumnsWithActions = signal([]);
33
+ this.dataSource = signal([]);
34
+ this.tableLabel = computed(() => this.formElement()?.['label'] ?? '');
35
+ this.selectedRow = signal(null);
36
+ this.initalTableUpdate = true;
37
+ this.icons = {
38
+ add: YUV_ICONS.add,
39
+ more: YUV_ICONS.more
40
+ };
41
+ this.#loadData = effect(() => {
42
+ const formElement = this.formElement();
43
+ untracked(() => formElement && this.#updateTable(formElement['elements'], formElement['value'] || []));
44
+ });
45
+ this.#sourceData = effect(() => {
46
+ const dataSource = this.dataSource();
47
+ !this.initalTableUpdate && this.writeValue(dataSource.filter((row) => !row.isAddRow));
48
+ this.initalTableUpdate = false;
49
+ });
50
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars, @typescript-eslint/no-empty-function
51
+ this.propagateChange = (fn) => { };
52
+ // eslint-disable-next-line @typescript-eslint/no-empty-function
53
+ this.validationChange = () => { };
54
+ }
55
+ #overlay;
56
+ #clipboardService;
57
+ #decimalPipe;
58
+ #loadData;
59
+ #sourceData;
60
+ #openEditOverlay(elementData, adding = false) {
61
+ return this.#overlay
62
+ .open(EditTableDataComponent, {
63
+ formElement: {
64
+ ...this.formElement()
65
+ },
66
+ elementData,
67
+ situation: this.situation(),
68
+ adding,
69
+ label: this.tableLabel()
70
+ })
71
+ .afterClosed$.pipe(map((result) => result.data));
72
+ }
73
+ copyLine(element) {
74
+ this.#clipboardService.addToNavigatorClipBoard(JSON.stringify(element));
75
+ }
76
+ onMenuTriggert(element) {
77
+ this.selectedRow.set(element);
78
+ }
79
+ editRow(element) {
80
+ this.selectedRow.set(element);
81
+ this.#openEditOverlay(element).subscribe((result) => {
82
+ if (result) {
83
+ const updatedData = this.dataSource().map((item) => (JSON.stringify(item) === JSON.stringify(element) ? result : item));
84
+ const formElement = this.formElement();
85
+ formElement && this.#updateTable(formElement['elements'], [...updatedData]);
86
+ }
87
+ this.selectedRow.set(null);
88
+ });
89
+ }
90
+ addRow() {
91
+ this.#openEditOverlay(null, true).subscribe((result) => {
92
+ const currentData = this.dataSource();
93
+ const data = [...currentData];
94
+ result && data.push(result);
95
+ const formElement = this.formElement();
96
+ formElement && this.#updateTable(formElement['elements'], data);
97
+ });
98
+ }
99
+ removeRow(element) {
100
+ const updatedData = this.dataSource().filter((item) => JSON.stringify(item) !== JSON.stringify(element));
101
+ const formElement = this.formElement();
102
+ formElement && this.#updateTable(formElement['elements'], updatedData);
103
+ }
104
+ #cellor(element, value) {
105
+ switch (element.type) {
106
+ case 'string':
107
+ return value;
108
+ break;
109
+ case 'decimal':
110
+ return this.#decimalPipe.transform(value, '1.2-4', this.trnaslate.currentLang);
111
+ break;
112
+ default:
113
+ return value;
114
+ break;
115
+ }
116
+ }
117
+ #updateTable(elements, data = []) {
118
+ if (elements.length > 0) {
119
+ this.displayedColumns.set(elements.reduce((acc, el) => {
120
+ acc.push({
121
+ columnDef: el.label,
122
+ header: el.label,
123
+ cell: (element) => (element.isAddRow ? '' : this.#cellor(el, element[el.label]))
124
+ });
125
+ return acc;
126
+ }, []));
127
+ }
128
+ else {
129
+ this.displayedColumns.set([]);
130
+ }
131
+ this.displayedColumnsWithActions.set([...this.displayedColumns().map((col) => col.columnDef), 'actions']);
132
+ this.dataSource.set(data);
133
+ }
134
+ writeValue(obj) {
135
+ this.propagateChange(obj);
136
+ }
137
+ registerOnChange(fn) {
138
+ this.propagateChange = fn;
139
+ }
140
+ registerOnTouched(fn) {
141
+ this.validationChange = fn;
142
+ }
143
+ setDisabledState(isDisabled) {
144
+ // console.log('setDisabledState: ', isDisabled);
145
+ }
146
+ onValueChange(e) {
147
+ this.propagateChange(e);
148
+ }
149
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DataGridComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
150
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: DataGridComponent, isStandalone: true, selector: "yuv-data-grid", inputs: { situation: { classPropertyName: "situation", publicName: "situation", isSignal: true, isRequired: false, transformFunction: null }, formElement: { classPropertyName: "formElement", publicName: "formElement", isSignal: true, isRequired: false, transformFunction: null }, formControl: { classPropertyName: "formControl", publicName: "formControl", isSignal: true, isRequired: false, transformFunction: null }, classifications: { classPropertyName: "classifications", publicName: "classifications", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "yuv-data-grid" }, providers: [
151
+ {
152
+ provide: NG_VALUE_ACCESSOR,
153
+ useExisting: forwardRef(() => DataGridComponent),
154
+ multi: true
155
+ },
156
+ DecimalPipe
157
+ ], ngImport: i0, template: "<header>\n <h3>{{ tableLabel() }}</h3>\n @if (!readonly()) {\n <button (click)=\"addRow()\" aria-label=\"Add Row\" class=\"table-options-add-row\">\n <yvc-icon [svg]=\"icons.add\"></yvc-icon>\n </button>\n }\n</header>\n@let displayedCol = displayedColumns();\n@let displayedColActions = displayedColumnsWithActions();\n<div class=\"table-wrapper\" [ngClass]=\"size()\">\n <table cdk-table [dataSource]=\"dataSource()\">\n <!-- Dynamic Columns -->\n @for (column of displayedCol; track $index) {\n <ng-container [cdkColumnDef]=\"column.columnDef\">\n <th class=\"sticky-column\" cdk-header-cell *cdkHeaderCellDef>{{ column.header }}</th>\n <td cdk-cell *cdkCellDef=\"let element\">{{ column.cell(element) }}</td>\n </ng-container>\n }\n\n <!-- Actions Column (Not in displayedColumns) -->\n <ng-container cdkColumnDef=\"actions\">\n <th class=\"actions-header sticky-column\" cdk-header-cell *cdkHeaderCellDef></th>\n <td class=\"actions-row sticky\" cdk-cell *cdkCellDef=\"let element\">\n <!-- Only show the button in the last (empty) row -->\n @if (!readonly()) {\n <button\n aria-label=\"Edit Row\"\n class=\"table-options-menu-bar-item\"\n cdkMenuItem\n (cdkMenuOpened)=\"onMenuTriggert(element)\"\n (cdkMenuClosed)=\"onMenuTriggert(null)\"\n [cdkMenuTriggerFor]=\"options\"\n [cdkMenuTriggerData]=\"{ element: element }\"\n >\n <yvc-icon [svg]=\"icons.more\"></yvc-icon>\n </button>\n }\n </td>\n </ng-container>\n\n <tr cdk-header-row *cdkHeaderRowDef=\"displayedColActions\"></tr>\n @if (!readonly()) {\n <tr (dblclick)=\"editRow(row)\" [class.selected-row]=\"row === selectedRow()\" cdk-row *cdkRowDef=\"let row; columns: displayedColActions\"></tr>\n } @else {\n <tr cdk-row *cdkRowDef=\"let row; columns: displayedColActions\"></tr>\n }\n </table>\n</div>\n<ng-template #options let-element=\"element\">\n <div class=\"table-options-menu\" cdkMenu>\n <button class=\"table-options-menu-item\" (click)=\"copyLine(element)\" cdkMenuItem>{{ 'yuv.form.element.data.grid.copy' | translate }}</button>\n <button class=\"table-options-menu-item\" cdkMenuItem (click)=\"editRow(element)\">{{ 'yuv.form.element.data.grid.edit' | translate }}</button>\n <button class=\"table-options-menu-item\" cdkMenuItem (click)=\"removeRow(element)\">{{ 'yuv.form.element.data.grid.remove' | translate }}</button>\n </div>\n</ng-template>\n", styles: [":root{--table-size-small: 200px;--table-size-medium: 400px;--table-size-large: 600px;--table-size-extra-large: 800px}:host{border:1px solid var(--panel-divider-color)}:host header{display:flex;justify-content:space-between;background-color:var(--panel-background-grey)}:host header h3{text-align:start;-webkit-user-select:none;user-select:none;flex:0 1 auto;padding:1rem;margin:0;color:var(--text-color-caption);border-radius:2px;font-size:var(--font-caption);font-weight:400}:host.yuv-data-grid{display:block}:host.yuv-data-grid .table-wrapper{overflow:auto;position:relative;white-space:nowrap}:host.yuv-data-grid .table-wrapper.small{height:var(--table-size-small)}:host.yuv-data-grid .table-wrapper.medium{height:var(--table-size-medium)}:host.yuv-data-grid .table-wrapper.large{height:var(--table-size-large)}:host.yuv-data-grid .table-wrapper.extra-large{height:var(--table-size-extra-large)}:host.yuv-data-grid ::ng-deep .cdk-header-cell:not(:last-child){padding:.5rem 1rem}:host.yuv-data-grid ::ng-deep table{border-spacing:0}:host.yuv-data-grid ::ng-deep th{border-bottom:1px solid var(--panel-divider-color);border-right:1px solid var(--panel-divider-color);padding:.5rem 0}:host.yuv-data-grid ::ng-deep thead{background-color:var(--panel-background-grey)}:host.yuv-data-grid ::ng-deep tr.cdk-row{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .2s ease-in-out}:host.yuv-data-grid ::ng-deep tr.cdk-row:hover td{border-top:1px solid var(--panel-background-grey);border-bottom:1px solid var(--panel-background-grey)}:host.yuv-data-grid ::ng-deep tr.cdk-row:hover:has(.actions-row) td.cdk-cell.actions-row.sticky{opacity:1}:host.yuv-data-grid ::ng-deep tr.cdk-row.selected-row{color:var(--text-color-hint)}:host.yuv-data-grid ::ng-deep tr.cdk-row td{border-bottom:1px solid transparent;border-top:1px solid transparent}:host.yuv-data-grid ::ng-deep tr.cdk-row td:not(:last-child){padding:.5rem 1rem}:host.yuv-data-grid ::ng-deep .cdk-table .cdk-header-row th[role=columnheader]{font-weight:500}:host.yuv-data-grid th.cdk-header-cell.sticky-column{position:sticky;top:0;z-index:1;background-color:var(--panel-background-grey)}:host.yuv-data-grid td.cdk-cell.actions-row.sticky{position:sticky;right:0;opacity:0;background-color:var(--panel-background);transition:opacity .2s ease-in-out}:host .table-options-menu-bar-item,:host .table-options-add-row{cursor:pointer;border:none;-webkit-user-select:none;user-select:none;min-width:34px;line-height:26px;padding:0;display:flex;align-items:center;justify-content:center}.table-options-menu{display:inline-flex;flex-direction:column;max-width:280px;background-color:var(--panel-background);border:1px solid var(--panel-divider-color);padding:calc(var(--app-pane-padding) / 6) 0}.table-options-menu .table-options-menu-item{background-color:transparent;cursor:pointer;border:none;border-radius:0;-webkit-user-select:none;user-select:none;display:flex;align-items:center;flex-direction:row;flex:1}.table-options-menu .table-options-menu-item:not(:last-child){border-block-end:1px solid var(--panel-divider-color)}.table-options-menu .table-options-menu-item>span{display:flex;flex-direction:row;flex:1;justify-content:flex-end}.table-options-menu .table-options-menu-item:active{background-color:var(--item-focus-border-color)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: YvcIconModule }, { kind: "component", type: i3.Icon, selector: "yvc-icon", inputs: ["label", "svg", "svgSrc"] }, { kind: "directive", type: CdkMenu, selector: "[cdkMenu]", outputs: ["closed"], exportAs: ["cdkMenu"] }, { kind: "ngmodule", type: CdkTableModule }, { kind: "component", type: i4.CdkTable, selector: "cdk-table, table[cdk-table]", inputs: ["trackBy", "dataSource", "multiTemplateDataRows", "fixedLayout"], outputs: ["contentChanged"], exportAs: ["cdkTable"] }, { kind: "directive", type: i4.CdkRowDef, selector: "[cdkRowDef]", inputs: ["cdkRowDefColumns", "cdkRowDefWhen"] }, { kind: "directive", type: i4.CdkCellDef, selector: "[cdkCellDef]" }, { kind: "directive", type: i4.CdkHeaderCellDef, selector: "[cdkHeaderCellDef]" }, { kind: "directive", type: i4.CdkColumnDef, selector: "[cdkColumnDef]", inputs: ["cdkColumnDef", "sticky", "stickyEnd"] }, { kind: "directive", type: i4.CdkCell, selector: "cdk-cell, td[cdk-cell]" }, { kind: "component", type: i4.CdkRow, selector: "cdk-row, tr[cdk-row]" }, { kind: "directive", type: i4.CdkHeaderCell, selector: "cdk-header-cell, th[cdk-header-cell]" }, { kind: "component", type: i4.CdkHeaderRow, selector: "cdk-header-row, tr[cdk-header-row]" }, { kind: "directive", type: i4.CdkHeaderRowDef, selector: "[cdkHeaderRowDef]", inputs: ["cdkHeaderRowDef", "cdkHeaderRowDefSticky"] }, { kind: "directive", type: CdkMenuTrigger, selector: "[cdkMenuTriggerFor]", inputs: ["cdkMenuTriggerFor", "cdkMenuPosition", "cdkMenuTriggerData"], outputs: ["cdkMenuOpened", "cdkMenuClosed"], exportAs: ["cdkMenuTriggerFor"] }, { kind: "directive", type: CdkMenuItem, selector: "[cdkMenuItem]", inputs: ["cdkMenuItemDisabled", "cdkMenuitemTypeaheadLabel"], outputs: ["cdkMenuItemTriggered"], exportAs: ["cdkMenuItem"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
158
+ }
159
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DataGridComponent, decorators: [{
160
+ type: Component,
161
+ args: [{ selector: 'yuv-data-grid', standalone: true, imports: [CommonModule, NgClass, TranslateModule, YvcIconModule, ...CDK_IMPORT], changeDetection: ChangeDetectionStrategy.OnPush, providers: [
162
+ {
163
+ provide: NG_VALUE_ACCESSOR,
164
+ useExisting: forwardRef(() => DataGridComponent),
165
+ multi: true
166
+ },
167
+ DecimalPipe
168
+ ], host: {
169
+ class: 'yuv-data-grid'
170
+ }, template: "<header>\n <h3>{{ tableLabel() }}</h3>\n @if (!readonly()) {\n <button (click)=\"addRow()\" aria-label=\"Add Row\" class=\"table-options-add-row\">\n <yvc-icon [svg]=\"icons.add\"></yvc-icon>\n </button>\n }\n</header>\n@let displayedCol = displayedColumns();\n@let displayedColActions = displayedColumnsWithActions();\n<div class=\"table-wrapper\" [ngClass]=\"size()\">\n <table cdk-table [dataSource]=\"dataSource()\">\n <!-- Dynamic Columns -->\n @for (column of displayedCol; track $index) {\n <ng-container [cdkColumnDef]=\"column.columnDef\">\n <th class=\"sticky-column\" cdk-header-cell *cdkHeaderCellDef>{{ column.header }}</th>\n <td cdk-cell *cdkCellDef=\"let element\">{{ column.cell(element) }}</td>\n </ng-container>\n }\n\n <!-- Actions Column (Not in displayedColumns) -->\n <ng-container cdkColumnDef=\"actions\">\n <th class=\"actions-header sticky-column\" cdk-header-cell *cdkHeaderCellDef></th>\n <td class=\"actions-row sticky\" cdk-cell *cdkCellDef=\"let element\">\n <!-- Only show the button in the last (empty) row -->\n @if (!readonly()) {\n <button\n aria-label=\"Edit Row\"\n class=\"table-options-menu-bar-item\"\n cdkMenuItem\n (cdkMenuOpened)=\"onMenuTriggert(element)\"\n (cdkMenuClosed)=\"onMenuTriggert(null)\"\n [cdkMenuTriggerFor]=\"options\"\n [cdkMenuTriggerData]=\"{ element: element }\"\n >\n <yvc-icon [svg]=\"icons.more\"></yvc-icon>\n </button>\n }\n </td>\n </ng-container>\n\n <tr cdk-header-row *cdkHeaderRowDef=\"displayedColActions\"></tr>\n @if (!readonly()) {\n <tr (dblclick)=\"editRow(row)\" [class.selected-row]=\"row === selectedRow()\" cdk-row *cdkRowDef=\"let row; columns: displayedColActions\"></tr>\n } @else {\n <tr cdk-row *cdkRowDef=\"let row; columns: displayedColActions\"></tr>\n }\n </table>\n</div>\n<ng-template #options let-element=\"element\">\n <div class=\"table-options-menu\" cdkMenu>\n <button class=\"table-options-menu-item\" (click)=\"copyLine(element)\" cdkMenuItem>{{ 'yuv.form.element.data.grid.copy' | translate }}</button>\n <button class=\"table-options-menu-item\" cdkMenuItem (click)=\"editRow(element)\">{{ 'yuv.form.element.data.grid.edit' | translate }}</button>\n <button class=\"table-options-menu-item\" cdkMenuItem (click)=\"removeRow(element)\">{{ 'yuv.form.element.data.grid.remove' | translate }}</button>\n </div>\n</ng-template>\n", styles: [":root{--table-size-small: 200px;--table-size-medium: 400px;--table-size-large: 600px;--table-size-extra-large: 800px}:host{border:1px solid var(--panel-divider-color)}:host header{display:flex;justify-content:space-between;background-color:var(--panel-background-grey)}:host header h3{text-align:start;-webkit-user-select:none;user-select:none;flex:0 1 auto;padding:1rem;margin:0;color:var(--text-color-caption);border-radius:2px;font-size:var(--font-caption);font-weight:400}:host.yuv-data-grid{display:block}:host.yuv-data-grid .table-wrapper{overflow:auto;position:relative;white-space:nowrap}:host.yuv-data-grid .table-wrapper.small{height:var(--table-size-small)}:host.yuv-data-grid .table-wrapper.medium{height:var(--table-size-medium)}:host.yuv-data-grid .table-wrapper.large{height:var(--table-size-large)}:host.yuv-data-grid .table-wrapper.extra-large{height:var(--table-size-extra-large)}:host.yuv-data-grid ::ng-deep .cdk-header-cell:not(:last-child){padding:.5rem 1rem}:host.yuv-data-grid ::ng-deep table{border-spacing:0}:host.yuv-data-grid ::ng-deep th{border-bottom:1px solid var(--panel-divider-color);border-right:1px solid var(--panel-divider-color);padding:.5rem 0}:host.yuv-data-grid ::ng-deep thead{background-color:var(--panel-background-grey)}:host.yuv-data-grid ::ng-deep tr.cdk-row{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .2s ease-in-out}:host.yuv-data-grid ::ng-deep tr.cdk-row:hover td{border-top:1px solid var(--panel-background-grey);border-bottom:1px solid var(--panel-background-grey)}:host.yuv-data-grid ::ng-deep tr.cdk-row:hover:has(.actions-row) td.cdk-cell.actions-row.sticky{opacity:1}:host.yuv-data-grid ::ng-deep tr.cdk-row.selected-row{color:var(--text-color-hint)}:host.yuv-data-grid ::ng-deep tr.cdk-row td{border-bottom:1px solid transparent;border-top:1px solid transparent}:host.yuv-data-grid ::ng-deep tr.cdk-row td:not(:last-child){padding:.5rem 1rem}:host.yuv-data-grid ::ng-deep .cdk-table .cdk-header-row th[role=columnheader]{font-weight:500}:host.yuv-data-grid th.cdk-header-cell.sticky-column{position:sticky;top:0;z-index:1;background-color:var(--panel-background-grey)}:host.yuv-data-grid td.cdk-cell.actions-row.sticky{position:sticky;right:0;opacity:0;background-color:var(--panel-background);transition:opacity .2s ease-in-out}:host .table-options-menu-bar-item,:host .table-options-add-row{cursor:pointer;border:none;-webkit-user-select:none;user-select:none;min-width:34px;line-height:26px;padding:0;display:flex;align-items:center;justify-content:center}.table-options-menu{display:inline-flex;flex-direction:column;max-width:280px;background-color:var(--panel-background);border:1px solid var(--panel-divider-color);padding:calc(var(--app-pane-padding) / 6) 0}.table-options-menu .table-options-menu-item{background-color:transparent;cursor:pointer;border:none;border-radius:0;-webkit-user-select:none;user-select:none;display:flex;align-items:center;flex-direction:row;flex:1}.table-options-menu .table-options-menu-item:not(:last-child){border-block-end:1px solid var(--panel-divider-color)}.table-options-menu .table-options-menu-item>span{display:flex;flex-direction:row;flex:1;justify-content:flex-end}.table-options-menu .table-options-menu-item:active{background-color:var(--item-focus-border-color)}\n"] }]
171
+ }] });
172
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1ncmlkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMveXV1dmlzL2NsaWVudC1mcmFtZXdvcmsvZm9ybXMvc3JjL2xpYi9lbGVtZW50cy9kYXRhLWdyaWQvZGF0YS1ncmlkL2RhdGEtZ3JpZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtZnJhbWV3b3JrL2Zvcm1zL3NyYy9saWIvZWxlbWVudHMvZGF0YS1ncmlkL2RhdGEtZ3JpZC9kYXRhLWdyaWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDekUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25JLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3JHLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFD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QWUsRUFBRSxhQUFhLEVBQUUsR0FBRyxVQUFVLENBQUMsbUJBRzlELHVCQUF1QixDQUFDLE1BQU0sYUFDcEM7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsa0JBQWtCLENBQUM7NEJBQ2hELEtBQUssRUFBRSxJQUFJO3lCQUNaO3dCQUNELFdBQVc7cUJBQ1osUUFDSzt3QkFDSixLQUFLLEVBQUUsZUFBZTtxQkFDdkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZGtNZW51LCBDZGtNZW51SXRlbSwgQ2RrTWVudVRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9jZGsvbWVudSc7XG5pbXBvcnQgeyBDZGtUYWJsZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90YWJsZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUsIERlY2ltYWxQaXBlLCBOZ0NsYXNzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkLCBlZmZlY3QsIGZvcndhcmRSZWYsIGluamVjdCwgaW5wdXQsIHNpZ25hbCwgdW50cmFja2VkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDbGlwYm9hcmRTZXJ2aWNlLCBTaXR1YXRpb24sIFRyYW5zbGF0ZU1vZHVsZSwgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0B5dXV2aXMvY2xpZW50LWNvcmUnO1xuaW1wb3J0IHsgWVVWX0lDT05TIH0gZnJvbSAnQHl1dXZpcy9jbGllbnQtZnJhbWV3b3JrL2ljb25zJztcbmltcG9ydCB7IFl2Y0ljb25Nb2R1bGUgfSBmcm9tICdAeXV1dmlzL2NvbXBvbmVudHMvaWNvbic7XG5pbXBvcnQgeyBZdmNPdmVybGF5U2VydmljZSB9IGZyb20gJ0B5dXV2aXMvY29tcG9uZW50cy9vdmVybGF5JztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRWRpdFRhYmxlRGF0YUNvbXBvbmVudCB9IGZyb20gJy4uL2VkaXQtdGFibGUtZGF0YS9lZGl0LWRhdGEuY29tcG9uZW50JztcbmltcG9ydCB7IERhdGFHcmlkU2l6ZVR5cGUgfSBmcm9tICcuLi9tb2RlbC9kYXRhLWdyaWQuaW50ZXJmYWNlJztcblxuY29uc3QgQ0RLX0lNUE9SVCA9IFtDZGtNZW51LCBDZGtUYWJsZU1vZHVsZSwgQ2RrTWVudVRyaWdnZXIsIENka01lbnVJdGVtXTtcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3l1di1kYXRhLWdyaWQnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBOZ0NsYXNzLCBUcmFuc2xhdGVNb2R1bGUsIFl2Y0ljb25Nb2R1bGUsIC4uLkNES19JTVBPUlRdLFxuICB0ZW1wbGF0ZVVybDogJy4vZGF0YS1ncmlkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2RhdGEtZ3JpZC5jb21wb25lbnQuc2NzcycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IERhdGFHcmlkQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfSxcbiAgICBEZWNpbWFsUGlwZVxuICBdLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICd5dXYtZGF0YS1ncmlkJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIERhdGFHcmlkQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICByZWFkb25seSAjb3ZlcmxheSA9IGluamVjdChZdmNPdmVybGF5U2VydmljZSk7XG4gIHJlYWRvbmx5ICNjbGlwYm9hcmRTZXJ2aWNlID0gaW5qZWN0KENsaXBib2FyZFNlcnZpY2UpO1xuICByZWFkb25seSAjZGVjaW1hbFBpcGUgPSBpbmplY3QoRGVjaW1hbFBpcGUpO1xuICByZWFkb25seSB0cm5hc2xhdGUgPSBpbmplY3QoVHJhbnNsYXRlU2VydmljZSk7XG5cbiAgc2l0dWF0aW9uID0gaW5wdXQ8U2l0dWF0aW9uPihTaXR1YXRpb24uRURJVCk7XG4gIGZvcm1FbGVtZW50ID0gaW5wdXQ8UmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcbiAgZm9ybUNvbnRyb2wgPSBpbnB1dDxhbnk+KHVuZGVmaW5lZCk7XG4gIGNsYXNzaWZpY2F0aW9ucyA9IGlucHV0PHN0cmluZ1tdPihbXSk7XG4gIHJlYWRvbmx5ID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIHNpemUgPSBpbnB1dDxEYXRhR3JpZFNpemVUeXBlPihEYXRhR3JpZFNpemVUeXBlLkFVVE8pO1xuXG4gIGRpc3BsYXllZENvbHVtbnMgPSBzaWduYWw8YW55W10+KFtdKTtcbiAgZGlzcGxheWVkQ29sdW1uc1dpdGhBY3Rpb25zID0gc2lnbmFsPHN0cmluZ1tdPihbXSk7XG4gIGRhdGFTb3VyY2UgPSBzaWduYWw8YW55W10+KFtdKTtcblxuICB0YWJsZUxhYmVsID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5mb3JtRWxlbWVudCgpPy5bJ2xhYmVsJ10gPz8gJycpO1xuXG4gIHNlbGVjdGVkUm93ID0gc2lnbmFsKG51bGwpO1xuXG4gIGluaXRhbFRhYmxlVXBkYXRlID0gdHJ1ZTtcblxuICBpY29ucyA9IHtcbiAgICBhZGQ6IFlVVl9JQ09OUy5hZGQsXG4gICAgbW9yZTogWVVWX0lDT05TLm1vcmVcbiAgfTtcblxuICAjbG9hZERhdGEgPSBlZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGZvcm1FbGVtZW50ID0gdGhpcy5mb3JtRWxlbWVudCgpO1xuICAgIHVudHJhY2tlZCgoKSA9PiBmb3JtRWxlbWVudCAmJiB0aGlzLiN1cGRhdGVUYWJsZShmb3JtRWxlbWVudFsnZWxlbWVudHMnXSwgZm9ybUVsZW1lbnRbJ3ZhbHVlJ10gfHwgW10pKTtcbiAgfSk7XG5cbiAgI3NvdXJjZURhdGEgPSBlZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGRhdGFTb3VyY2UgPSB0aGlzLmRhdGFTb3VyY2UoKTtcbiAgICAhdGhpcy5pbml0YWxUYWJsZVVwZGF0ZSAmJiB0aGlzLndyaXRlVmFsdWUoZGF0YVNvdXJjZS5maWx0ZXIoKHJvdykgPT4gIXJvdy5pc0FkZFJvdykpO1xuICAgIHRoaXMuaW5pdGFsVGFibGVVcGRhdGUgPSBmYWxzZTtcbiAgfSk7XG5cbiAgI29wZW5FZGl0T3ZlcmxheShlbGVtZW50RGF0YTogYW55IHwgbnVsbCwgYWRkaW5nID0gZmFsc2UpIHtcbiAgICByZXR1cm4gdGhpcy4jb3ZlcmxheVxuICAgICAgLm9wZW4oRWRpdFRhYmxlRGF0YUNvbXBvbmVudCwge1xuICAgICAgICBmb3JtRWxlbWVudDoge1xuICAgICAgICAgIC4uLnRoaXMuZm9ybUVsZW1lbnQoKVxuICAgICAgICB9LFxuICAgICAgICBlbGVtZW50RGF0YSxcbiAgICAgICAgc2l0dWF0aW9uOiB0aGlzLnNpdHVhdGlvbigpLFxuICAgICAgICBhZGRpbmcsXG4gICAgICAgIGxhYmVsOiB0aGlzLnRhYmxlTGFiZWwoKVxuICAgICAgfSlcbiAgICAgIC5hZnRlckNsb3NlZCQucGlwZShtYXAoKHJlc3VsdDogYW55KSA9PiByZXN1bHQuZGF0YSkpO1xuICB9XG5cbiAgY29weUxpbmUoZWxlbWVudDogYW55KSB7XG4gICAgdGhpcy4jY2xpcGJvYXJkU2VydmljZS5hZGRUb05hdmlnYXRvckNsaXBCb2FyZChKU09OLnN0cmluZ2lmeShlbGVtZW50KSk7XG4gIH1cblxuICBvbk1lbnVUcmlnZ2VydChlbGVtZW50OiBhbnkgfCBudWxsKSB7XG4gICAgdGhpcy5zZWxlY3RlZFJvdy5zZXQoZWxlbWVudCk7XG4gIH1cblxuICBlZGl0Um93KGVsZW1lbnQ6IGFueSkge1xuICAgIHRoaXMuc2VsZWN0ZWRSb3cuc2V0KGVsZW1lbnQpO1xuICAgIHRoaXMuI29wZW5FZGl0T3ZlcmxheShlbGVtZW50KS5zdWJzY3JpYmUoKHJlc3VsdDogYW55KSA9PiB7XG4gICAgICBpZiAocmVzdWx0KSB7XG4gICAgICAgIGNvbnN0IHVwZGF0ZWREYXRhID0gdGhpcy5kYXRhU291cmNlKCkubWFwKChpdGVtKSA9PiAoSlNPTi5zdHJpbmdpZnkoaXRlbSkgPT09IEpTT04uc3RyaW5naWZ5KGVsZW1lbnQpID8gcmVzdWx0IDogaXRlbSkpO1xuICAgICAgICBjb25zdCBmb3JtRWxlbWVudCA9IHRoaXMuZm9ybUVsZW1lbnQoKTtcbiAgICAgICAgZm9ybUVsZW1lbnQgJiYgdGhpcy4jdXBkYXRlVGFibGUoZm9ybUVsZW1lbnRbJ2VsZW1lbnRzJ10sIFsuLi51cGRhdGVkRGF0YV0pO1xuICAgICAgfVxuICAgICAgdGhpcy5zZWxlY3RlZFJvdy5zZXQobnVsbCk7XG4gICAgfSk7XG4gIH1cblxuICBhZGRSb3coKSB7XG4gICAgdGhpcy4jb3BlbkVkaXRPdmVybGF5KG51bGwsIHRydWUpLnN1YnNjcmliZSgocmVzdWx0OiBhbnkpID0+IHtcbiAgICAgIGNvbnN0IGN1cnJlbnREYXRhID0gdGhpcy5kYXRhU291cmNlKCk7XG4gICAgICBjb25zdCBkYXRhID0gWy4uLmN1cnJlbnREYXRhXTtcbiAgICAgIHJlc3VsdCAmJiBkYXRhLnB1c2gocmVzdWx0KTtcbiAgICAgIGNvbnN0IGZvcm1FbGVtZW50ID0gdGhpcy5mb3JtRWxlbWVudCgpO1xuICAgICAgZm9ybUVsZW1lbnQgJiYgdGhpcy4jdXBkYXRlVGFibGUoZm9ybUVsZW1lbnRbJ2VsZW1lbnRzJ10sIGRhdGEpO1xuICAgIH0pO1xuICB9XG5cbiAgcmVtb3ZlUm93KGVsZW1lbnQ6IGFueSkge1xuICAgIGNvbnN0IHVwZGF0ZWREYXRhID0gdGhpcy5kYXRhU291cmNlKCkuZmlsdGVyKChpdGVtKSA9PiBKU09OLnN0cmluZ2lmeShpdGVtKSAhPT0gSlNPTi5zdHJpbmdpZnkoZWxlbWVudCkpO1xuICAgIGNvbnN0IGZvcm1FbGVtZW50ID0gdGhpcy5mb3JtRWxlbWVudCgpO1xuICAgIGZvcm1FbGVtZW50ICYmIHRoaXMuI3VwZGF0ZVRhYmxlKGZvcm1FbGVtZW50WydlbGVtZW50cyddLCB1cGRhdGVkRGF0YSk7XG4gIH1cblxuICAjY2VsbG9yKGVsZW1lbnQ6IGFueSwgdmFsdWU6IHN0cmluZykge1xuICAgIHN3aXRjaCAoZWxlbWVudC50eXBlKSB7XG4gICAgICBjYXNlICdzdHJpbmcnOlxuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnZGVjaW1hbCc6XG4gICAgICAgIHJldHVybiB0aGlzLiNkZWNpbWFsUGlwZS50cmFuc2Zvcm0odmFsdWUsICcxLjItNCcsIHRoaXMudHJuYXNsYXRlLmN1cnJlbnRMYW5nKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gICN1cGRhdGVUYWJsZShlbGVtZW50czogYW55LCBkYXRhOiBhbnlbXSA9IFtdKSB7XG4gICAgaWYgKGVsZW1lbnRzLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMuZGlzcGxheWVkQ29sdW1ucy5zZXQoXG4gICAgICAgIGVsZW1lbnRzLnJlZHVjZSgoYWNjOiBhbnksIGVsOiBhbnkpID0+IHtcbiAgICAgICAgICBhY2MucHVzaCh7XG4gICAgICAgICAgICBjb2x1bW5EZWY6IGVsLmxhYmVsLFxuICAgICAgICAgICAgaGVhZGVyOiBlbC5sYWJlbCxcbiAgICAgICAgICAgIGNlbGw6IChlbGVtZW50OiBhbnkpID0+IChlbGVtZW50LmlzQWRkUm93ID8gJycgOiB0aGlzLiNjZWxsb3IoZWwsIGVsZW1lbnRbZWwubGFiZWxdKSlcbiAgICAgICAgICB9KTtcbiAgICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgICB9LCBbXSlcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZGlzcGxheWVkQ29sdW1ucy5zZXQoW10pO1xuICAgIH1cblxuICAgIHRoaXMuZGlzcGxheWVkQ29sdW1uc1dpdGhBY3Rpb25zLnNldChbLi4udGhpcy5kaXNwbGF5ZWRDb2x1bW5zKCkubWFwKChjb2wpID0+IGNvbC5jb2x1bW5EZWYpLCAnYWN0aW9ucyddKTtcbiAgICB0aGlzLmRhdGFTb3VyY2Uuc2V0KGRhdGEpO1xuICB9XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFycywgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gIHByb3BhZ2F0ZUNoYW5nZSA9IChmbjogKCkgPT4gdm9pZCkgPT4ge307XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgdmFsaWRhdGlvbkNoYW5nZSA9ICgpID0+IHt9O1xuXG4gIHdyaXRlVmFsdWUob2JqOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZShvYmopO1xuICB9XG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlID0gZm47XG4gIH1cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMudmFsaWRhdGlvbkNoYW5nZSA9IGZuO1xuICB9XG4gIHNldERpc2FibGVkU3RhdGU/KGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAvLyBjb25zb2xlLmxvZygnc2V0RGlzYWJsZWRTdGF0ZTogJywgaXNEaXNhYmxlZCk7XG4gIH1cblxuICBvblZhbHVlQ2hhbmdlKGU6IGFueSkge1xuICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlKGUpO1xuICB9XG59XG4iLCI8aGVhZGVyPlxuICA8aDM+e3sgdGFibGVMYWJlbCgpIH19PC9oMz5cbiAgQGlmICghcmVhZG9ubHkoKSkge1xuICAgIDxidXR0b24gKGNsaWNrKT1cImFkZFJvdygpXCIgYXJpYS1sYWJlbD1cIkFkZCBSb3dcIiBjbGFzcz1cInRhYmxlLW9wdGlvbnMtYWRkLXJvd1wiPlxuICAgICAgPHl2Yy1pY29uIFtzdmddPVwiaWNvbnMuYWRkXCI+PC95dmMtaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgfVxuPC9oZWFkZXI+XG5AbGV0IGRpc3BsYXllZENvbCA9IGRpc3BsYXllZENvbHVtbnMoKTtcbkBsZXQgZGlzcGxheWVkQ29sQWN0aW9ucyA9IGRpc3BsYXllZENvbHVtbnNXaXRoQWN0aW9ucygpO1xuPGRpdiBjbGFzcz1cInRhYmxlLXdyYXBwZXJcIiBbbmdDbGFzc109XCJzaXplKClcIj5cbiAgPHRhYmxlIGNkay10YWJsZSBbZGF0YVNvdXJjZV09XCJkYXRhU291cmNlKClcIj5cbiAgICA8IS0tIER5bmFtaWMgQ29sdW1ucyAtLT5cbiAgICBAZm9yIChjb2x1bW4gb2YgZGlzcGxheWVkQ29sOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgIDxuZy1jb250YWluZXIgW2Nka0NvbHVtbkRlZl09XCJjb2x1bW4uY29sdW1uRGVmXCI+XG4gICAgICAgIDx0aCBjbGFzcz1cInN0aWNreS1jb2x1bW5cIiBjZGstaGVhZGVyLWNlbGwgKmNka0hlYWRlckNlbGxEZWY+e3sgY29sdW1uLmhlYWRlciB9fTwvdGg+XG4gICAgICAgIDx0ZCBjZGstY2VsbCAqY2RrQ2VsbERlZj1cImxldCBlbGVtZW50XCI+e3sgY29sdW1uLmNlbGwoZWxlbWVudCkgfX08L3RkPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgfVxuXG4gICAgPCEtLSBBY3Rpb25zIENvbHVtbiAoTm90IGluIGRpc3BsYXllZENvbHVtbnMpIC0tPlxuICAgIDxuZy1jb250YWluZXIgY2RrQ29sdW1uRGVmPVwiYWN0aW9uc1wiPlxuICAgICAgPHRoIGNsYXNzPVwiYWN0aW9ucy1oZWFkZXIgc3RpY2t5LWNvbHVtblwiIGNkay1oZWFkZXItY2VsbCAqY2RrSGVhZGVyQ2VsbERlZj48L3RoPlxuICAgICAgPHRkIGNsYXNzPVwiYWN0aW9ucy1yb3cgc3RpY2t5XCIgY2RrLWNlbGwgKmNka0NlbGxEZWY9XCJsZXQgZWxlbWVudFwiPlxuICAgICAgICA8IS0tIE9ubHkgc2hvdyB0aGUgYnV0dG9uIGluIHRoZSBsYXN0IChlbXB0eSkgcm93IC0tPlxuICAgICAgICBAaWYgKCFyZWFkb25seSgpKSB7XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgYXJpYS1sYWJlbD1cIkVkaXQgUm93XCJcbiAgICAgICAgICAgIGNsYXNzPVwidGFibGUtb3B0aW9ucy1tZW51LWJhci1pdGVtXCJcbiAgICAgICAgICAgIGNka01lbnVJdGVtXG4gICAgICAgICAgICAoY2RrTWVudU9wZW5lZCk9XCJvbk1lbnVUcmlnZ2VydChlbGVtZW50KVwiXG4gICAgICAgICAgICAoY2RrTWVudUNsb3NlZCk9XCJvbk1lbnVUcmlnZ2VydChudWxsKVwiXG4gICAgICAgICAgICBbY2RrTWVudVRyaWdnZXJGb3JdPVwib3B0aW9uc1wiXG4gICAgICAgICAgICBbY2RrTWVudVRyaWdnZXJEYXRhXT1cInsgZWxlbWVudDogZWxlbWVudCB9XCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8eXZjLWljb24gW3N2Z109XCJpY29ucy5tb3JlXCI+PC95dmMtaWNvbj5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgfVxuICAgICAgPC90ZD5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDx0ciBjZGstaGVhZGVyLXJvdyAqY2RrSGVhZGVyUm93RGVmPVwiZGlzcGxheWVkQ29sQWN0aW9uc1wiPjwvdHI+XG4gICAgQGlmICghcmVhZG9ubHkoKSkge1xuICAgICAgPHRyIChkYmxjbGljayk9XCJlZGl0Um93KHJvdylcIiBbY2xhc3Muc2VsZWN0ZWQtcm93XT1cInJvdyA9PT0gc2VsZWN0ZWRSb3coKVwiIGNkay1yb3cgKmNka1Jvd0RlZj1cImxldCByb3c7IGNvbHVtbnM6IGRpc3BsYXllZENvbEFjdGlvbnNcIj48L3RyPlxuICAgIH0gQGVsc2Uge1xuICAgICAgPHRyIGNkay1yb3cgKmNka1Jvd0RlZj1cImxldCByb3c7IGNvbHVtbnM6IGRpc3BsYXllZENvbEFjdGlvbnNcIj48L3RyPlxuICAgIH1cbiAgPC90YWJsZT5cbjwvZGl2PlxuPG5nLXRlbXBsYXRlICNvcHRpb25zIGxldC1lbGVtZW50PVwiZWxlbWVudFwiPlxuICA8ZGl2IGNsYXNzPVwidGFibGUtb3B0aW9ucy1tZW51XCIgY2RrTWVudT5cbiAgICA8YnV0dG9uIGNsYXNzPVwidGFibGUtb3B0aW9ucy1tZW51LWl0ZW1cIiAoY2xpY2spPVwiY29weUxpbmUoZWxlbWVudClcIiBjZGtNZW51SXRlbT57eyAneXV2LmZvcm0uZWxlbWVudC5kYXRhLmdyaWQuY29weScgfCB0cmFuc2xhdGUgfX08L2J1dHRvbj5cbiAgICA8YnV0dG9uIGNsYXNzPVwidGFibGUtb3B0aW9ucy1tZW51LWl0ZW1cIiBjZGtNZW51SXRlbSAoY2xpY2spPVwiZWRpdFJvdyhlbGVtZW50KVwiPnt7ICd5dXYuZm9ybS5lbGVtZW50LmRhdGEuZ3JpZC5lZGl0JyB8IHRyYW5zbGF0ZSB9fTwvYnV0dG9uPlxuICAgIDxidXR0b24gY2xhc3M9XCJ0YWJsZS1vcHRpb25zLW1lbnUtaXRlbVwiIGNka01lbnVJdGVtIChjbGljayk9XCJyZW1vdmVSb3coZWxlbWVudClcIj57eyAneXV2LmZvcm0uZWxlbWVudC5kYXRhLmdyaWQucmVtb3ZlJyB8IHRyYW5zbGF0ZSB9fTwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=