@acorex/platform 18.1.3 → 18.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/common/lib/schema/widgets/text/largetext-widget-edit.component.d.ts +1 -1
  2. package/esm2022/common/lib/schema/widgets/text/largetext-widget-edit.component.mjs +15 -16
  3. package/esm2022/layout/builder/lib/builder/widget.types.mjs +1 -2
  4. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.mjs +22 -5
  5. package/esm2022/layouts/lib/admin/entity-layout/workflows/delete-entity.workflow.mjs +2 -1
  6. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.mjs +3 -3
  7. package/esm2022/themes/shared/lib/comments/comment-list-view.component.mjs +44 -20
  8. package/esm2022/widgets/lib/widgets/editors/contact/contact-widget-edit.component.mjs +11 -10
  9. package/esm2022/widgets/lib/widgets/editors/large-text/large-text-widget-edit.component.mjs +32 -22
  10. package/esm2022/widgets/lib/widgets/editors/select/select-box-widget-edit.component.mjs +23 -11
  11. package/fesm2022/{acorex-platform-common-largetext-widget-edit.component-CrqPJ58V.mjs → acorex-platform-common-largetext-widget-edit.component-DD7S5j12.mjs} +15 -16
  12. package/fesm2022/acorex-platform-common-largetext-widget-edit.component-DD7S5j12.mjs.map +1 -0
  13. package/fesm2022/acorex-platform-common.mjs +1 -1
  14. package/fesm2022/acorex-platform-layout-builder.mjs +0 -1
  15. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  16. package/fesm2022/acorex-platform-layout-entity.mjs +20 -3
  17. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  18. package/fesm2022/acorex-platform-layouts.mjs +1 -0
  19. package/fesm2022/acorex-platform-layouts.mjs.map +1 -1
  20. package/fesm2022/acorex-platform-themes-default.mjs +2 -2
  21. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  22. package/fesm2022/acorex-platform-themes-shared.mjs +43 -19
  23. package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
  24. package/fesm2022/acorex-platform-widgets.mjs +80 -59
  25. package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
  26. package/package.json +19 -19
  27. package/themes/shared/README.md +2 -3
  28. package/themes/shared/lib/comments/comment-list-view.component.d.ts +3 -2
  29. package/widgets/lib/widgets/editors/contact/contact-widget-edit.component.d.ts +1 -1
  30. package/widgets/lib/widgets/editors/large-text/large-text-widget-edit.component.d.ts +1 -3
  31. package/widgets/lib/widgets/editors/select/select-box-widget-edit.component.d.ts +2 -0
  32. package/fesm2022/acorex-platform-common-largetext-widget-edit.component-CrqPJ58V.mjs.map +0 -1
@@ -9,7 +9,7 @@ import { AXTranslationModule } from '@acorex/core/translation';
9
9
  import { AXValidationModule, AXValidationService } from '@acorex/core/validation';
10
10
  import { AXPWidgetComponent } from '@acorex/platform/layout/builder';
11
11
  import { CommonModule } from '@angular/common';
12
- import { ChangeDetectionStrategy, Component, HostBinding, computed, inject, signal, } from '@angular/core';
12
+ import { ChangeDetectionStrategy, Component, HostBinding, computed, inject } from '@angular/core';
13
13
  import { FormsModule } from '@angular/forms';
14
14
  import { popupComponent } from './popup-component';
15
15
  import * as i0 from "@angular/core";
@@ -32,7 +32,15 @@ export class AXPContactWidgetEditComponent extends AXPWidgetComponent {
32
32
  this.hasIcon = computed(() => this.options()['hasIcon']);
33
33
  this.disabled = computed(() => this.options()['disabled']);
34
34
  this.placeholder = computed(() => this.options()['placeholder'] ?? `Enter ${this.type()} ...`);
35
- this.format = signal(undefined);
35
+ this.format = computed(() => {
36
+ if (this.hasIcon() || this.hasLabel()) {
37
+ return 'object';
38
+ }
39
+ else {
40
+ return 'string';
41
+ }
42
+ });
43
+ this.internalValue = computed(() => this.valueToArray());
36
44
  this.popup = inject(AXPopupService);
37
45
  this.dataSource = new AXDataSource({
38
46
  pageSize: this.labelList().length,
@@ -46,7 +54,6 @@ export class AXPContactWidgetEditComponent extends AXPWidgetComponent {
46
54
  return Promise.resolve(this.labelList().find((i) => i === key));
47
55
  },
48
56
  });
49
- this.internalValue = computed(() => this.valueToArray());
50
57
  this.validationService = inject(AXValidationService);
51
58
  this._validationRules = [];
52
59
  this.itemToArray = (item) => {
@@ -153,12 +160,6 @@ export class AXPContactWidgetEditComponent extends AXPWidgetComponent {
153
160
  this._validationRules = v;
154
161
  }
155
162
  valueToArray() {
156
- if (this.hasIcon() || this.hasLabel()) {
157
- this.format.set('object');
158
- }
159
- else {
160
- this.format.set('string');
161
- }
162
163
  const value = this.getValue();
163
164
  if (Array.isArray(value)) {
164
165
  return value.map((item) => this.itemToArray(item));
@@ -321,4 +322,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
321
322
  type: HostBinding,
322
323
  args: ['class']
323
324
  }] } });
324
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdC13aWRnZXQtZWRpdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3dpZGdldHMvc3JjL2xpYi93aWRnZXRzL2VkaXRvcnMvY29udGFjdC9jb250YWN0LXdpZGdldC1lZGl0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFlBQVksRUFBdUIsTUFBTSwyQkFBMkIsQ0FBQztBQUM5RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFpQixjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDOUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFbEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDckUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFdBQVcsRUFHWCxRQUFRLEVBQ1IsTUFBTSxFQUNOLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7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a0JBQWtCO3dCQUNsQixtQkFBbUI7cUJBQ3BCO29CQUNELE1BQU0sRUFBRSxFQUFFO2lCQUNYO3dEQXdLYSxPQUFPO3NCQURsQixXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgQVhEYXRhU291cmNlLCBBWFZhbHVlQ2hhbmdlZEV2ZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2NvbW1vbic7XG5pbXBvcnQgeyBBWERlY29yYXRvck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEFYRm9ybU1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9mb3JtJztcbmltcG9ydCB7IEFYUG9wdXBDb25maWcsIEFYUG9wdXBTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3BvcHVwJztcbmltcG9ydCB7IEFYU2VsZWN0Qm94TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3NlbGVjdC1ib3gnO1xuaW1wb3J0IHsgQVhUZXh0Qm94TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3RleHQtYm94JztcbmltcG9ydCB7IEFYVHJhbnNsYXRpb25Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvcmUvdHJhbnNsYXRpb24nO1xuaW1wb3J0IHsgQVhWYWxpZGF0aW9uTW9kdWxlLCBBWFZhbGlkYXRpb25TZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9jb3JlL3ZhbGlkYXRpb24nO1xuaW1wb3J0IHsgQVhQVmFsaWRhdGlvblJ1bGVzIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb3JlJztcbmltcG9ydCB7IEFYUFdpZGdldENvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEhvc3RCaW5kaW5nLFxuICBTaWduYWwsXG4gIFdyaXRhYmxlU2lnbmFsLFxuICBjb21wdXRlZCxcbiAgaW5qZWN0LFxuICBzaWduYWwsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBBWFBDb250YWN0RGF0YVR5cGUgfSBmcm9tICcuL2NvbnRhY3QudHlwZSc7XG5pbXBvcnQgeyBwb3B1cENvbXBvbmVudCB9IGZyb20gJy4vcG9wdXAtY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiBgPGRpdiBjbGFzcz1cImxnOmF4LWdyaWQgbGc6YXgtZ3JpZC1jb2xzLTEyIGxnOmF4LWdhcC00XCI+XG4gICAgQGZvcihpdGVtIG9mIGludGVybmFsVmFsdWUoKTt0cmFjayAkaW5kZXgpIHtcbiAgICA8YXgtdGV4dC1ib3hcbiAgICAgIFtuZ01vZGVsXT1cIml0ZW0udmFsdWVcIlxuICAgICAgKG9uVmFsdWVDaGFuZ2VkKT1cImhhbmRsZVZhbHVlQ2hhbmdlKCRldmVudCwgJGluZGV4KVwiXG4gICAgICB0eXBlPVwidGV4dFwiXG4gICAgICBuYW1lPVwidmFsdWVcIlxuICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyKClcIlxuICAgICAgW25nQ2xhc3NdPVwiZ2VuZXJhdGVDbGFzc2VzKCd2YWx1ZScpXCJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZCgpXCJcbiAgICA+XG4gICAgICBAZm9yICh2YWxpZGF0aW9uIG9mIHZhbGlkYXRpb25SdWxlczsgdHJhY2sgJGluZGV4KSB7XG4gICAgICA8YXgtdmFsaWRhdGlvbi1ydWxlXG4gICAgICAgIFtydWxlXT1cInZhbGlkYXRpb24ucnVsZVwiXG4gICAgICAgIFttZXNzYWdlXT1cInZhbGlkYXRpb24ub3B0aW9ucz8ubWVzc2FnZVwiXG4gICAgICAgIFtvcHRpb25zXT1cInZhbGlkYXRpb24ub3B0aW9uc1wiXG4gICAgICA+PC9heC12YWxpZGF0aW9uLXJ1bGU+XG4gICAgICB9XG4gICAgPC9heC10ZXh0LWJveD5cbiAgICBAaWYoaGFzTGFiZWwoKSl7XG4gICAgPGF4LXNlbGVjdC1ib3hcbiAgICAgIFtkYXRhU291cmNlXT1cImRhdGFTb3VyY2VcIlxuICAgICAgW25nTW9kZWxdPVwiaXRlbS5sYWJlbFwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQoKVwiXG4gICAgICAob25WYWx1ZUNoYW5nZWQpPVwiaGFuZGxlVmFsdWVDaGFuZ2UoJGV2ZW50LCAkaW5kZXgpXCJcbiAgICAgIHBsYWNlaG9sZGVyPVwie3sgJ3NlbGVjdGJveC5wb3BvdmVyLnRpdGxlJyB8IHRyYW5zbGF0ZSB8IGFzeW5jIH19XCJcbiAgICAgIG5hbWU9XCJsYWJlbFwiXG4gICAgICBbbmdDbGFzc109XCJnZW5lcmF0ZUNsYXNzZXMoJ2xhYmVsJylcIlxuICAgID5cbiAgICA8L2F4LXNlbGVjdC1ib3g+XG4gICAgfSBAaWYobXVsdGlwbGUoKSl7XG4gICAgPGF4LWJ1dHRvblxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkKClcIlxuICAgICAgbG9vaz1cInR3b3RvbmVcIlxuICAgICAgY29sb3I9XCJkYW5nZXJcIlxuICAgICAgKG9uQ2xpY2spPVwiZGVsZXRlSXRlbSgkaW5kZXgpXCJcbiAgICAgIGNsYXNzPVwiYXgtY29sLXN0YXJ0LTEyIGF4LWNvbC1lbmQtMTMgYXgtanVzdGlmeS1zZWxmLWVuZFwiXG4gICAgPlxuICAgICAgPGF4LWljb24gaWNvbj1cImZhLXJlZ3VsYXIgZmEteG1hcmtcIj48L2F4LWljb24+XG4gICAgPC9heC1idXR0b24+XG4gICAgfSB9IEBpZihtdWx0aXBsZSgpKXtcblxuICAgIDxheC1idXR0b25cbiAgICAgIFt0ZXh0XT1cImludGVybmFsVmFsdWUoKS5sZW5ndGggPT0gMCA/ICdBZGQgTmV3JyA6ICdBZGQgQW5vdGhlcidcIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkKClcIlxuICAgICAgbG9vaz1cInR3b3RvbmVcIlxuICAgICAgKG9uQ2xpY2spPVwiYWRkSXRlbSgpXCJcbiAgICAgIGNsYXNzPVwiYXgtY29sLXN0YXJ0LTYgYXgtY29sLWVuZC0xMyBsZzpheC1jb2wtc3RhcnQtOCB4bDpheC1jb2wtc3RhcnQtMTAgXCJcbiAgICA+XG4gICAgICA8YXgtcHJlZml4PlxuICAgICAgICA8YXgtaWNvbiBjbGFzcz1cImZhLXNvbGlkIGZhLWFkZFwiPjwvYXgtaWNvbj5cbiAgICAgIDwvYXgtcHJlZml4PlxuICAgIDwvYXgtYnV0dG9uPlxuICAgIH1cbiAgPC9kaXY+IGAsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIEFYU2VsZWN0Qm94TW9kdWxlLFxuICAgIEFYRm9ybU1vZHVsZSxcbiAgICBBWEJ1dHRvbk1vZHVsZSxcbiAgICBBWERlY29yYXRvck1vZHVsZSxcbiAgICBBWFNlbGVjdEJveE1vZHVsZSxcbiAgICBBWFRleHRCb3hNb2R1bGUsXG4gICAgQVhWYWxpZGF0aW9uTW9kdWxlLFxuICAgIEFYVHJhbnNsYXRpb25Nb2R1bGUsXG4gIF0sXG4gIGlucHV0czogW10sXG59KVxuZXhwb3J0IGNsYXNzIEFYUENvbnRhY3RXaWRnZXRFZGl0Q29tcG9uZW50IGV4dGVuZHMgQVhQV2lkZ2V0Q29tcG9uZW50PFxuICBzdHJpbmcgfCBzdHJpbmdbXSB8IEFYUENvbnRhY3REYXRhVHlwZSB8IEFYUENvbnRhY3REYXRhVHlwZVtdIHwgdW5kZWZpbmVkXG4+IHtcbiAgLy9wcm9wZXJ0aWVzXG4gIHByb3RlY3RlZCB0eXBlID0gY29tcHV0ZWQ8J2xpbmsnIHwgJ3Bob25lJyB8ICdlbWFpbCc+KFxuICAgICgpID0+ICh0aGlzLm9wdGlvbnMoKVsndHlwZSddPy5pZCBhcyAnbGluaycgfCAncGhvbmUnIHwgJ2VtYWlsJykgPz8gJ2VtYWlsJ1xuICApO1xuICBwcm90ZWN0ZWQgbGFiZWxMaXN0ID0gY29tcHV0ZWQ8c3RyaW5nW10+KCgpID0+IHRoaXMub3B0aW9ucygpWydsYWJlbExpc3QnXSB8fCBbJ3ByaW1hcnknLCAnc2Vjb25kYXJ5JywgJ0FkZCBOZXcnXSk7XG4gIHByb3RlY3RlZCBoYXNMYWJlbCA9IGNvbXB1dGVkPGJvb2xlYW4+KCgpID0+IHRoaXMub3B0aW9ucygpWydoYXNMYWJlbCddIGFzIGJvb2xlYW4pO1xuICBwcm90ZWN0ZWQgbXVsdGlwbGUgPSBjb21wdXRlZDxib29sZWFuPigoKSA9PiB0aGlzLm9wdGlvbnMoKVsnbXVsdGlwbGUnXSBhcyBib29sZWFuKTtcbiAgcHJvdGVjdGVkIGhhc0ljb24gPSBjb21wdXRlZDxib29sZWFuPigoKSA9PiB0aGlzLm9wdGlvbnMoKVsnaGFzSWNvbiddIGFzIGJvb2xlYW4pO1xuICBwcm90ZWN0ZWQgZGlzYWJsZWQgPSBjb21wdXRlZDxib29sZWFuPigoKSA9PiB0aGlzLm9wdGlvbnMoKVsnZGlzYWJsZWQnXSBhcyBib29sZWFuKTtcbiAgcHJvdGVjdGVkIHBsYWNlaG9sZGVyID0gY29tcHV0ZWQ8c3RyaW5nPihcbiAgICAoKSA9PiAodGhpcy5vcHRpb25zKClbJ3BsYWNlaG9sZGVyJ10gYXMgc3RyaW5nKSA/PyBgRW50ZXIgJHt0aGlzLnR5cGUoKX0gLi4uYFxuICApO1xuXG4gIHByaXZhdGUgZm9ybWF0OiBXcml0YWJsZVNpZ25hbDx1bmRlZmluZWQgfCAnb2JqZWN0JyB8ICdzdHJpbmcnPiA9IHNpZ25hbCh1bmRlZmluZWQpO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gIH1cbiAgcHJpdmF0ZSBwb3B1cDogQVhQb3B1cFNlcnZpY2UgPSBpbmplY3QoQVhQb3B1cFNlcnZpY2UpO1xuICBwcm90ZWN0ZWQgZGF0YVNvdXJjZSA9IG5ldyBBWERhdGFTb3VyY2Uoe1xuICAgIHBhZ2VTaXplOiB0aGlzLmxhYmVsTGlzdCgpLmxlbmd0aCxcbiAgICBsb2FkOiAoZSkgPT4ge1xuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh7XG4gICAgICAgIGl0ZW1zOiB0aGlzLmxhYmVsTGlzdCgpLnNsaWNlKGUuc2tpcCwgKGUuc2tpcCA/PyAwKSArIChlLnRha2UgPz8gMCkpLFxuICAgICAgICB0b3RhbDogdGhpcy5sYWJlbExpc3QoKS5sZW5ndGgsXG4gICAgICB9KTtcbiAgICB9LFxuICAgIGJ5S2V5OiAoa2V5KSA9PiB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMubGFiZWxMaXN0KCkuZmluZCgoaSkgPT4gaSA9PT0ga2V5KSk7XG4gICAgfSxcbiAgfSk7XG4gIHByb3RlY3RlZCBpbnRlcm5hbFZhbHVlOiBTaWduYWw8QVhQQ29udGFjdERhdGFUeXBlW10+ID0gY29tcHV0ZWQoKCkgPT4gdGhpcy52YWx1ZVRvQXJyYXkoKSk7XG5cbiAgcHJvdGVjdGVkIGFkZEl0ZW0oKSB7XG4gICAgY29uc3QgbmV3VmFsdWVzOiBBWFBDb250YWN0RGF0YVR5cGVbXSA9IFsuLi50aGlzLmludGVybmFsVmFsdWUoKSwgdGhpcy5lbXB0eVZhbHVlKCldO1xuICAgIHRoaXMuc2V0VmFsdWUodGhpcy5zZXRGb3JtYXRlZFZhbHVlKG5ld1ZhbHVlcykpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGRlbGV0ZUl0ZW0oZGVsZXRlZEluZGV4OiBudW1iZXIpIHtcbiAgICBjb25zdCBuZXdWYWx1ZXMgPSB0aGlzLmludGVybmFsVmFsdWUoKS5maWx0ZXIoKF8sIGluZGV4KSA9PiBpbmRleCAhPSBkZWxldGVkSW5kZXgpO1xuICAgIHRoaXMuc2V0VmFsdWUodGhpcy5zZXRGb3JtYXRlZFZhbHVlKG5ld1ZhbHVlcykpO1xuICB9XG4gIHByb3RlY3RlZCBhc3luYyBoYW5kbGVWYWx1ZUNoYW5nZShlOiBBWFZhbHVlQ2hhbmdlZEV2ZW50LCBzZWxlY3RlZEluZGV4OiBudW1iZXIpIHtcbiAgICBsZXQgeyBuYW1lLCB2YWx1ZSwgaXNVc2VySW50ZXJhY3Rpb24gfSA9IGU7XG4gICAgaWYgKGlzVXNlckludGVyYWN0aW9uKSB7XG4gICAgICBpZiAoZS5uYW1lID09PSAnbGFiZWwnKSB7XG4gICAgICAgIGlmIChlLnZhbHVlID09PSAnQWRkIE5ldycpIHtcbiAgICAgICAgICBjb25zdCBvcHRpb25zOiBBWFBvcHVwQ29uZmlnID0ge1xuICAgICAgICAgICAgdGl0bGU6ICdFbnRlciBMYWJlbC4uLicsXG4gICAgICAgICAgICAvLyBoZWFkZXI6IGZhbHNlLFxuICAgICAgICAgICAgLy8gZm9vdGVyOiB0cnVlLFxuICAgICAgICAgICAgc2l6ZTogJ3NtJyxcbiAgICAgICAgICAgIGRyYWdnYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIC8vIGhhc0JhY2tkcm9wOiB0cnVlLFxuICAgICAgICAgICAgLy8gY2xvc2VCdXR0b246IHRydWUsXG4gICAgICAgICAgICAvLyBjbG9zZU9uQmFja2Ryb3BDbGljazogdHJ1ZSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIGNvbnN0IG5ld1ZhbHVlID0gYXdhaXQgdGhpcy5wb3B1cC5vcGVuKHBvcHVwQ29tcG9uZW50LCB7IC4uLm9wdGlvbnMgfSkudGhlbigoZSkgPT4gZS5kYXRhKTtcbiAgICAgICAgICB2YWx1ZSA9IG5ld1ZhbHVlLnZhbHVlO1xuICAgICAgICAgIHRoaXMubGFiZWxMaXN0KCkucG9wKCk7XG4gICAgICAgICAgdGhpcy5sYWJlbExpc3QoKS5wdXNoKHZhbHVlLCAnQWRkIE5ldycpO1xuICAgICAgICAgIHRoaXMuZGF0YVNvdXJjZS5yZWZyZXNoKCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGNvbnN0IG5ld1ZhbHVlcyA9IHRoaXMuaW50ZXJuYWxWYWx1ZSgpLm1hcCgoaXRlbSwgaW5kZXgpID0+XG4gICAgICAgIHNlbGVjdGVkSW5kZXggPT09IGluZGV4ID8geyAuLi5pdGVtLCBbbmFtZSBhcyBzdHJpbmddOiB2YWx1ZSB9IDogaXRlbVxuICAgICAgKTtcbiAgICAgIGlmICh0aGlzLm11bHRpcGxlKCkpIHtcbiAgICAgICAgdGhpcy5zZXRWYWx1ZSh0aGlzLnNldEZvcm1hdGVkVmFsdWUobmV3VmFsdWVzKSk7XG4gICAgICB9IGVsc2UgdGhpcy5zZXRWYWx1ZSh0aGlzLnNldEZvcm1hdGVkVmFsdWUobmV3VmFsdWVzWzBdKSk7XG4gICAgfVxuICB9XG4gIHByb3RlY3RlZCBnZW5lcmF0ZUNsYXNzZXMoZWxlbWVudDogJ3ZhbHVlJyB8ICdsYWJlbCcpOiBzdHJpbmcgfCBhbnkge1xuICAgIGlmICh0aGlzLm11bHRpcGxlKCkpIHtcbiAgICAgIGlmICh0aGlzLmhhc0xhYmVsKCkpIHtcbiAgICAgICAgaWYgKGVsZW1lbnQgPT09ICd2YWx1ZScpIHtcbiAgICAgICAgICByZXR1cm4gJ2F4LWNvbC1zdGFydC0xIGF4LWNvbC1lbmQtMTMgbGc6YXgtY29sLWVuZC03JztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gJ2F4LWNvbC1zdGFydC0xIGF4LWNvbC1lbmQtMTEgbGc6YXgtY29sLXN0YXJ0LTcgbGc6YXgtY29sLWVuZC0xMiAnO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAoZWxlbWVudCA9PT0gJ3ZhbHVlJykge1xuICAgICAgICAgIHJldHVybiAnYXgtY29sLXN0YXJ0LTEgYXgtY29sLWVuZC0xMic7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHRoaXMuaGFzTGFiZWwoKSkge1xuICAgICAgICBpZiAoZWxlbWVudCA9PT0gJ3ZhbHVlJykge1xuICAgICAgICAgIHJldHVybiAnYXgtY29sLXN0YXJ0LTEgYXgtY29sLWVuZC0xMyBsZzpheC1jb2wtZW5kLTcnO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiAnYXgtY29sLXN0YXJ0LTEgYXgtY29sLWVuZC0xMyBsZzpheC1jb2wtc3RhcnQtNyBsZzpheC1jb2wtZW5kLTEzJztcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKGVsZW1lbnQgPT09ICd2YWx1ZScpIHtcbiAgICAgICAgICByZXR1cm4gJ2F4LWNvbC1zdGFydC0xIGF4LWNvbC1lbmQtMTMnO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHByb3RlY3RlZCB2YWxpZGF0aW9uU2VydmljZSA9IGluamVjdChBWFZhbGlkYXRpb25TZXJ2aWNlKTtcbiAgcHJpdmF0ZSBfdmFsaWRhdGlvblJ1bGVzOiBBWFBWYWxpZGF0aW9uUnVsZXMgPSBbXTtcbiAgcHVibGljIGdldCB2YWxpZGF0aW9uUnVsZXMoKTogQVhQVmFsaWRhdGlvblJ1bGVzIHtcbiAgICByZXR1cm4gdGhpcy5fdmFsaWRhdGlvblJ1bGVzO1xuICB9XG4gIHB1YmxpYyBzZXQgdmFsaWRhdGlvblJ1bGVzKHY6IEFYUFZhbGlkYXRpb25SdWxlcykge1xuICAgIHRoaXMuX3ZhbGlkYXRpb25SdWxlcyA9IHY7XG4gIH1cbiAgcHJpdmF0ZSB2YWx1ZVRvQXJyYXkoKTogQVhQQ29udGFjdERhdGFUeXBlW10ge1xuICAgIGlmICh0aGlzLmhhc0ljb24oKSB8fCB0aGlzLmhhc0xhYmVsKCkpIHtcbiAgICAgIHRoaXMuZm9ybWF0LnNldCgnb2JqZWN0Jyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZm9ybWF0LnNldCgnc3RyaW5nJyk7XG4gICAgfVxuICAgIGNvbnN0IHZhbHVlID0gdGhpcy5nZXRWYWx1ZSgpO1xuICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgcmV0dXJuIHZhbHVlLm1hcCgoaXRlbSkgPT4gdGhpcy5pdGVtVG9BcnJheShpdGVtKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBbdGhpcy5pdGVtVG9BcnJheSh2YWx1ZSA/PyAnJyldO1xuICAgIH1cbiAgfVxuICBwcml2YXRlIGl0ZW1Ub0FycmF5ID0gKGl0ZW06IEFYUENvbnRhY3REYXRhVHlwZSB8IHN0cmluZyk6IEFYUENvbnRhY3REYXRhVHlwZSA9PiB7XG4gICAgaWYgKHR5cGVvZiBpdGVtID09PSAnb2JqZWN0JylcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHZhbHVlOiBpdGVtPy52YWx1ZSA/PyAnJyxcbiAgICAgICAgbGFiZWw6IHRoaXMuaGFzTGFiZWwoKSA/IGl0ZW0/LmxhYmVsIHx8IHRoaXMubGFiZWxMaXN0KClbMF0gOiB1bmRlZmluZWQsXG4gICAgICAgIGljb246IHRoaXMuaGFzSWNvbigpID8gaXRlbT8uaWNvbiB8fCB0aGlzLmNob29zZUljb24oKSA6IHVuZGVmaW5lZCxcbiAgICAgIH07XG4gICAgZWxzZVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdmFsdWU6IGl0ZW0sXG4gICAgICAgIGxhYmVsOiB0aGlzLmhhc0xhYmVsKCkgPyB0aGlzLmxhYmVsTGlzdCgpWzBdIDogdW5kZWZpbmVkLFxuICAgICAgICBpY29uOiB0aGlzLmhhc0ljb24oKSA/IHRoaXMuY2hvb3NlSWNvbigpIDogdW5kZWZpbmVkLFxuICAgICAgfTtcbiAgfTtcbiAgcHJpdmF0ZSBlbXB0eVZhbHVlKCk6IEFYUENvbnRhY3REYXRhVHlwZSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHZhbHVlOiAnJyxcbiAgICB9O1xuICB9XG5cbiAgc2V0Rm9ybWF0ZWRWYWx1ZShcbiAgICBpdGVtczogQVhQQ29udGFjdERhdGFUeXBlIHwgQVhQQ29udGFjdERhdGFUeXBlW11cbiAgKTogc3RyaW5nIHwgc3RyaW5nW10gfCBBWFBDb250YWN0RGF0YVR5cGUgfCBBWFBDb250YWN0RGF0YVR5cGVbXSB7XG4gICAgaWYgKHRoaXMuZm9ybWF0KCkgPT09ICdzdHJpbmcnKSB7XG4gICAgICByZXR1cm4gQXJyYXkuaXNBcnJheShpdGVtcykgPyBpdGVtcy5tYXAoKHgpID0+IHgudmFsdWUpIDogaXRlbXMudmFsdWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBpdGVtcztcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNob29zZUljb24gPSAoKTogc3RyaW5nID0+IHtcbiAgICBzd2l0Y2ggKHRoaXMudHlwZSgpKSB7XG4gICAgICBjYXNlICdlbWFpbCc6XG4gICAgICAgIHJldHVybiAnZmEtbGluayc7XG4gICAgICBjYXNlICdsaW5rJzpcbiAgICAgICAgcmV0dXJuICdmYS1lbnZlbG9wZSc7XG4gICAgICBjYXNlICdwaG9uZSc6XG4gICAgICAgIHJldHVybiAnZmEtcGhvbmUnO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuICdmYS1pbmZvJztcbiAgICB9XG4gIH07XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIHByaXZhdGUgZ2V0IF9fY2xhc3MoKTogc3RyaW5nIHtcbiAgICBjb25zdCBjbHM6IGFueSA9IHt9O1xuICAgIGNsc1tgYXgtYmxvY2tgXSA9IHRydWU7XG4gICAgY2xzW2BheC1mbGV4LTFgXSA9IHRydWU7XG4gICAgcmV0dXJuIGNscztcbiAgfVxufVxuIl19
325
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFjdC13aWRnZXQtZWRpdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3dpZGdldHMvc3JjL2xpYi93aWRnZXRzL2VkaXRvcnMvY29udGFjdC9jb250YWN0LXdpZGdldC1lZGl0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFlBQVksRUFBdUIsTUFBTSwyQkFBMkIsQ0FBQztBQUM5RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFpQixjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDOUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFbEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDckUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFVLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUcsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7Ozs7Ozs7OztBQTBF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d0RBMEthLE9BQU87c0JBRGxCLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBBWERhdGFTb3VyY2UsIEFYVmFsdWVDaGFuZ2VkRXZlbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvY29tbW9uJztcbmltcG9ydCB7IEFYRGVjb3JhdG9yTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgQVhGb3JtTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2Zvcm0nO1xuaW1wb3J0IHsgQVhQb3B1cENvbmZpZywgQVhQb3B1cFNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvcG9wdXAnO1xuaW1wb3J0IHsgQVhTZWxlY3RCb3hNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvc2VsZWN0LWJveCc7XG5pbXBvcnQgeyBBWFRleHRCb3hNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvdGV4dC1ib3gnO1xuaW1wb3J0IHsgQVhUcmFuc2xhdGlvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29yZS90cmFuc2xhdGlvbic7XG5pbXBvcnQgeyBBWFZhbGlkYXRpb25Nb2R1bGUsIEFYVmFsaWRhdGlvblNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L2NvcmUvdmFsaWRhdGlvbic7XG5pbXBvcnQgeyBBWFBWYWxpZGF0aW9uUnVsZXMgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvcmUnO1xuaW1wb3J0IHsgQVhQV2lkZ2V0Q29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIFNpZ25hbCwgY29tcHV0ZWQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBBWFBDb250YWN0RGF0YVR5cGUgfSBmcm9tICcuL2NvbnRhY3QudHlwZSc7XG5pbXBvcnQgeyBwb3B1cENvbXBvbmVudCB9IGZyb20gJy4vcG9wdXAtY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiBgPGRpdiBjbGFzcz1cImxnOmF4LWdyaWQgbGc6YXgtZ3JpZC1jb2xzLTEyIGxnOmF4LWdhcC00XCI+XG4gICAgQGZvcihpdGVtIG9mIGludGVybmFsVmFsdWUoKTt0cmFjayAkaW5kZXgpIHtcbiAgICA8YXgtdGV4dC1ib3hcbiAgICAgIFtuZ01vZGVsXT1cIml0ZW0udmFsdWVcIlxuICAgICAgKG9uVmFsdWVDaGFuZ2VkKT1cImhhbmRsZVZhbHVlQ2hhbmdlKCRldmVudCwgJGluZGV4KVwiXG4gICAgICB0eXBlPVwidGV4dFwiXG4gICAgICBuYW1lPVwidmFsdWVcIlxuICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyKClcIlxuICAgICAgW25nQ2xhc3NdPVwiZ2VuZXJhdGVDbGFzc2VzKCd2YWx1ZScpXCJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZCgpXCJcbiAgICA+XG4gICAgICBAZm9yICh2YWxpZGF0aW9uIG9mIHZhbGlkYXRpb25SdWxlczsgdHJhY2sgJGluZGV4KSB7XG4gICAgICA8YXgtdmFsaWRhdGlvbi1ydWxlXG4gICAgICAgIFtydWxlXT1cInZhbGlkYXRpb24ucnVsZVwiXG4gICAgICAgIFttZXNzYWdlXT1cInZhbGlkYXRpb24ub3B0aW9ucz8ubWVzc2FnZVwiXG4gICAgICAgIFtvcHRpb25zXT1cInZhbGlkYXRpb24ub3B0aW9uc1wiXG4gICAgICA+PC9heC12YWxpZGF0aW9uLXJ1bGU+XG4gICAgICB9XG4gICAgPC9heC10ZXh0LWJveD5cbiAgICBAaWYoaGFzTGFiZWwoKSl7XG4gICAgPGF4LXNlbGVjdC1ib3hcbiAgICAgIFtkYXRhU291cmNlXT1cImRhdGFTb3VyY2VcIlxuICAgICAgW25nTW9kZWxdPVwiaXRlbS5sYWJlbFwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQoKVwiXG4gICAgICAob25WYWx1ZUNoYW5nZWQpPVwiaGFuZGxlVmFsdWVDaGFuZ2UoJGV2ZW50LCAkaW5kZXgpXCJcbiAgICAgIHBsYWNlaG9sZGVyPVwie3sgJ3NlbGVjdGJveC5wb3BvdmVyLnRpdGxlJyB8IHRyYW5zbGF0ZSB8IGFzeW5jIH19XCJcbiAgICAgIG5hbWU9XCJsYWJlbFwiXG4gICAgICBbbmdDbGFzc109XCJnZW5lcmF0ZUNsYXNzZXMoJ2xhYmVsJylcIlxuICAgID5cbiAgICA8L2F4LXNlbGVjdC1ib3g+XG4gICAgfSBAaWYobXVsdGlwbGUoKSl7XG4gICAgPGF4LWJ1dHRvblxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkKClcIlxuICAgICAgbG9vaz1cInR3b3RvbmVcIlxuICAgICAgY29sb3I9XCJkYW5nZXJcIlxuICAgICAgKG9uQ2xpY2spPVwiZGVsZXRlSXRlbSgkaW5kZXgpXCJcbiAgICAgIGNsYXNzPVwiYXgtY29sLXN0YXJ0LTEyIGF4LWNvbC1lbmQtMTMgYXgtanVzdGlmeS1zZWxmLWVuZFwiXG4gICAgPlxuICAgICAgPGF4LWljb24gaWNvbj1cImZhLXJlZ3VsYXIgZmEteG1hcmtcIj48L2F4LWljb24+XG4gICAgPC9heC1idXR0b24+XG4gICAgfSB9IEBpZihtdWx0aXBsZSgpKXtcblxuICAgIDxheC1idXR0b25cbiAgICAgIFt0ZXh0XT1cImludGVybmFsVmFsdWUoKS5sZW5ndGggPT0gMCA/ICdBZGQgTmV3JyA6ICdBZGQgQW5vdGhlcidcIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkKClcIlxuICAgICAgbG9vaz1cInR3b3RvbmVcIlxuICAgICAgKG9uQ2xpY2spPVwiYWRkSXRlbSgpXCJcbiAgICAgIGNsYXNzPVwiYXgtY29sLXN0YXJ0LTYgYXgtY29sLWVuZC0xMyBsZzpheC1jb2wtc3RhcnQtOCB4bDpheC1jb2wtc3RhcnQtMTAgXCJcbiAgICA+XG4gICAgICA8YXgtcHJlZml4PlxuICAgICAgICA8YXgtaWNvbiBjbGFzcz1cImZhLXNvbGlkIGZhLWFkZFwiPjwvYXgtaWNvbj5cbiAgICAgIDwvYXgtcHJlZml4PlxuICAgIDwvYXgtYnV0dG9uPlxuICAgIH1cbiAgPC9kaXY+IGAsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIEFYU2VsZWN0Qm94TW9kdWxlLFxuICAgIEFYRm9ybU1vZHVsZSxcbiAgICBBWEJ1dHRvbk1vZHVsZSxcbiAgICBBWERlY29yYXRvck1vZHVsZSxcbiAgICBBWFNlbGVjdEJveE1vZHVsZSxcbiAgICBBWFRleHRCb3hNb2R1bGUsXG4gICAgQVhWYWxpZGF0aW9uTW9kdWxlLFxuICAgIEFYVHJhbnNsYXRpb25Nb2R1bGUsXG4gIF0sXG4gIGlucHV0czogW10sXG59KVxuZXhwb3J0IGNsYXNzIEFYUENvbnRhY3RXaWRnZXRFZGl0Q29tcG9uZW50IGV4dGVuZHMgQVhQV2lkZ2V0Q29tcG9uZW50PFxuICBzdHJpbmcgfCBzdHJpbmdbXSB8IEFYUENvbnRhY3REYXRhVHlwZSB8IEFYUENvbnRhY3REYXRhVHlwZVtdIHwgdW5kZWZpbmVkXG4+IHtcbiAgLy9wcm9wZXJ0aWVzXG4gIHByb3RlY3RlZCB0eXBlID0gY29tcHV0ZWQ8J2xpbmsnIHwgJ3Bob25lJyB8ICdlbWFpbCc+KFxuICAgICgpID0+ICh0aGlzLm9wdGlvbnMoKVsndHlwZSddPy5pZCBhcyAnbGluaycgfCAncGhvbmUnIHwgJ2VtYWlsJykgPz8gJ2VtYWlsJ1xuICApO1xuICBwcm90ZWN0ZWQgbGFiZWxMaXN0ID0gY29tcHV0ZWQ8c3RyaW5nW10+KCgpID0+IHRoaXMub3B0aW9ucygpWydsYWJlbExpc3QnXSB8fCBbJ3ByaW1hcnknLCAnc2Vjb25kYXJ5JywgJ0FkZCBOZXcnXSk7XG4gIHByb3RlY3RlZCBoYXNMYWJlbCA9IGNvbXB1dGVkPGJvb2xlYW4+KCgpID0+IHRoaXMub3B0aW9ucygpWydoYXNMYWJlbCddIGFzIGJvb2xlYW4pO1xuICBwcm90ZWN0ZWQgbXVsdGlwbGUgPSBjb21wdXRlZDxib29sZWFuPigoKSA9PiB0aGlzLm9wdGlvbnMoKVsnbXVsdGlwbGUnXSBhcyBib29sZWFuKTtcbiAgcHJvdGVjdGVkIGhhc0ljb24gPSBjb21wdXRlZDxib29sZWFuPigoKSA9PiB0aGlzLm9wdGlvbnMoKVsnaGFzSWNvbiddIGFzIGJvb2xlYW4pO1xuICBwcm90ZWN0ZWQgZGlzYWJsZWQgPSBjb21wdXRlZDxib29sZWFuPigoKSA9PiB0aGlzLm9wdGlvbnMoKVsnZGlzYWJsZWQnXSBhcyBib29sZWFuKTtcbiAgcHJvdGVjdGVkIHBsYWNlaG9sZGVyID0gY29tcHV0ZWQ8c3RyaW5nPihcbiAgICAoKSA9PiAodGhpcy5vcHRpb25zKClbJ3BsYWNlaG9sZGVyJ10gYXMgc3RyaW5nKSA/PyBgRW50ZXIgJHt0aGlzLnR5cGUoKX0gLi4uYFxuICApO1xuXG4gIHByaXZhdGUgZm9ybWF0ID0gY29tcHV0ZWQ8J29iamVjdCcgfCAnc3RyaW5nJz4oKCkgPT4ge1xuICAgIGlmICh0aGlzLmhhc0ljb24oKSB8fCB0aGlzLmhhc0xhYmVsKCkpIHtcbiAgICAgIHJldHVybiAnb2JqZWN0JztcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuICdzdHJpbmcnO1xuICAgIH1cbiAgfSk7XG5cbiAgcHJvdGVjdGVkIGludGVybmFsVmFsdWU6IFNpZ25hbDxBWFBDb250YWN0RGF0YVR5cGVbXT4gPSBjb21wdXRlZCgoKSA9PiB0aGlzLnZhbHVlVG9BcnJheSgpKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICB9XG4gIHByaXZhdGUgcG9wdXA6IEFYUG9wdXBTZXJ2aWNlID0gaW5qZWN0KEFYUG9wdXBTZXJ2aWNlKTtcbiAgcHJvdGVjdGVkIGRhdGFTb3VyY2UgPSBuZXcgQVhEYXRhU291cmNlKHtcbiAgICBwYWdlU2l6ZTogdGhpcy5sYWJlbExpc3QoKS5sZW5ndGgsXG4gICAgbG9hZDogKGUpID0+IHtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoe1xuICAgICAgICBpdGVtczogdGhpcy5sYWJlbExpc3QoKS5zbGljZShlLnNraXAsIChlLnNraXAgPz8gMCkgKyAoZS50YWtlID8/IDApKSxcbiAgICAgICAgdG90YWw6IHRoaXMubGFiZWxMaXN0KCkubGVuZ3RoLFxuICAgICAgfSk7XG4gICAgfSxcbiAgICBieUtleTogKGtleSkgPT4ge1xuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh0aGlzLmxhYmVsTGlzdCgpLmZpbmQoKGkpID0+IGkgPT09IGtleSkpO1xuICAgIH0sXG4gIH0pO1xuXG4gIHByb3RlY3RlZCBhZGRJdGVtKCkge1xuICAgIGNvbnN0IG5ld1ZhbHVlczogQVhQQ29udGFjdERhdGFUeXBlW10gPSBbLi4udGhpcy5pbnRlcm5hbFZhbHVlKCksIHRoaXMuZW1wdHlWYWx1ZSgpXTtcbiAgICB0aGlzLnNldFZhbHVlKHRoaXMuc2V0Rm9ybWF0ZWRWYWx1ZShuZXdWYWx1ZXMpKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBkZWxldGVJdGVtKGRlbGV0ZWRJbmRleDogbnVtYmVyKSB7XG4gICAgY29uc3QgbmV3VmFsdWVzID0gdGhpcy5pbnRlcm5hbFZhbHVlKCkuZmlsdGVyKChfLCBpbmRleCkgPT4gaW5kZXggIT0gZGVsZXRlZEluZGV4KTtcbiAgICB0aGlzLnNldFZhbHVlKHRoaXMuc2V0Rm9ybWF0ZWRWYWx1ZShuZXdWYWx1ZXMpKTtcbiAgfVxuICBwcm90ZWN0ZWQgYXN5bmMgaGFuZGxlVmFsdWVDaGFuZ2UoZTogQVhWYWx1ZUNoYW5nZWRFdmVudCwgc2VsZWN0ZWRJbmRleDogbnVtYmVyKSB7XG4gICAgbGV0IHsgbmFtZSwgdmFsdWUsIGlzVXNlckludGVyYWN0aW9uIH0gPSBlO1xuICAgIGlmIChpc1VzZXJJbnRlcmFjdGlvbikge1xuICAgICAgaWYgKGUubmFtZSA9PT0gJ2xhYmVsJykge1xuICAgICAgICBpZiAoZS52YWx1ZSA9PT0gJ0FkZCBOZXcnKSB7XG4gICAgICAgICAgY29uc3Qgb3B0aW9uczogQVhQb3B1cENvbmZpZyA9IHtcbiAgICAgICAgICAgIHRpdGxlOiAnRW50ZXIgTGFiZWwuLi4nLFxuICAgICAgICAgICAgLy8gaGVhZGVyOiBmYWxzZSxcbiAgICAgICAgICAgIC8vIGZvb3RlcjogdHJ1ZSxcbiAgICAgICAgICAgIHNpemU6ICdzbScsXG4gICAgICAgICAgICBkcmFnZ2FibGU6IHRydWUsXG4gICAgICAgICAgICAvLyBoYXNCYWNrZHJvcDogdHJ1ZSxcbiAgICAgICAgICAgIC8vIGNsb3NlQnV0dG9uOiB0cnVlLFxuICAgICAgICAgICAgLy8gY2xvc2VPbkJhY2tkcm9wQ2xpY2s6IHRydWUsXG4gICAgICAgICAgfTtcbiAgICAgICAgICBjb25zdCBuZXdWYWx1ZSA9IGF3YWl0IHRoaXMucG9wdXAub3Blbihwb3B1cENvbXBvbmVudCwgeyAuLi5vcHRpb25zIH0pLnRoZW4oKGUpID0+IGUuZGF0YSk7XG4gICAgICAgICAgdmFsdWUgPSBuZXdWYWx1ZS52YWx1ZTtcbiAgICAgICAgICB0aGlzLmxhYmVsTGlzdCgpLnBvcCgpO1xuICAgICAgICAgIHRoaXMubGFiZWxMaXN0KCkucHVzaCh2YWx1ZSwgJ0FkZCBOZXcnKTtcbiAgICAgICAgICB0aGlzLmRhdGFTb3VyY2UucmVmcmVzaCgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBjb25zdCBuZXdWYWx1ZXMgPSB0aGlzLmludGVybmFsVmFsdWUoKS5tYXAoKGl0ZW0sIGluZGV4KSA9PlxuICAgICAgICBzZWxlY3RlZEluZGV4ID09PSBpbmRleCA/IHsgLi4uaXRlbSwgW25hbWUgYXMgc3RyaW5nXTogdmFsdWUgfSA6IGl0ZW1cbiAgICAgICk7XG4gICAgICBpZiAodGhpcy5tdWx0aXBsZSgpKSB7XG4gICAgICAgIHRoaXMuc2V0VmFsdWUodGhpcy5zZXRGb3JtYXRlZFZhbHVlKG5ld1ZhbHVlcykpO1xuICAgICAgfSBlbHNlIHRoaXMuc2V0VmFsdWUodGhpcy5zZXRGb3JtYXRlZFZhbHVlKG5ld1ZhbHVlc1swXSkpO1xuICAgIH1cbiAgfVxuICBwcm90ZWN0ZWQgZ2VuZXJhdGVDbGFzc2VzKGVsZW1lbnQ6ICd2YWx1ZScgfCAnbGFiZWwnKTogc3RyaW5nIHwgYW55IHtcbiAgICBpZiAodGhpcy5tdWx0aXBsZSgpKSB7XG4gICAgICBpZiAodGhpcy5oYXNMYWJlbCgpKSB7XG4gICAgICAgIGlmIChlbGVtZW50ID09PSAndmFsdWUnKSB7XG4gICAgICAgICAgcmV0dXJuICdheC1jb2wtc3RhcnQtMSBheC1jb2wtZW5kLTEzIGxnOmF4LWNvbC1lbmQtNyc7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuICdheC1jb2wtc3RhcnQtMSBheC1jb2wtZW5kLTExIGxnOmF4LWNvbC1zdGFydC03IGxnOmF4LWNvbC1lbmQtMTIgJztcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKGVsZW1lbnQgPT09ICd2YWx1ZScpIHtcbiAgICAgICAgICByZXR1cm4gJ2F4LWNvbC1zdGFydC0xIGF4LWNvbC1lbmQtMTInO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0aGlzLmhhc0xhYmVsKCkpIHtcbiAgICAgICAgaWYgKGVsZW1lbnQgPT09ICd2YWx1ZScpIHtcbiAgICAgICAgICByZXR1cm4gJ2F4LWNvbC1zdGFydC0xIGF4LWNvbC1lbmQtMTMgbGc6YXgtY29sLWVuZC03JztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gJ2F4LWNvbC1zdGFydC0xIGF4LWNvbC1lbmQtMTMgbGc6YXgtY29sLXN0YXJ0LTcgbGc6YXgtY29sLWVuZC0xMyc7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmIChlbGVtZW50ID09PSAndmFsdWUnKSB7XG4gICAgICAgICAgcmV0dXJuICdheC1jb2wtc3RhcnQtMSBheC1jb2wtZW5kLTEzJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBwcm90ZWN0ZWQgdmFsaWRhdGlvblNlcnZpY2UgPSBpbmplY3QoQVhWYWxpZGF0aW9uU2VydmljZSk7XG4gIHByaXZhdGUgX3ZhbGlkYXRpb25SdWxlczogQVhQVmFsaWRhdGlvblJ1bGVzID0gW107XG4gIHB1YmxpYyBnZXQgdmFsaWRhdGlvblJ1bGVzKCk6IEFYUFZhbGlkYXRpb25SdWxlcyB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbGlkYXRpb25SdWxlcztcbiAgfVxuICBwdWJsaWMgc2V0IHZhbGlkYXRpb25SdWxlcyh2OiBBWFBWYWxpZGF0aW9uUnVsZXMpIHtcbiAgICB0aGlzLl92YWxpZGF0aW9uUnVsZXMgPSB2O1xuICB9XG4gIHByaXZhdGUgdmFsdWVUb0FycmF5KCk6IEFYUENvbnRhY3REYXRhVHlwZVtdIHtcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMuZ2V0VmFsdWUoKTtcbiAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgIHJldHVybiB2YWx1ZS5tYXAoKGl0ZW0pID0+IHRoaXMuaXRlbVRvQXJyYXkoaXRlbSkpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gW3RoaXMuaXRlbVRvQXJyYXkodmFsdWUgPz8gJycpXTtcbiAgICB9XG4gIH1cbiAgcHJpdmF0ZSBpdGVtVG9BcnJheSA9IChpdGVtOiBBWFBDb250YWN0RGF0YVR5cGUgfCBzdHJpbmcpOiBBWFBDb250YWN0RGF0YVR5cGUgPT4ge1xuICAgIGlmICh0eXBlb2YgaXRlbSA9PT0gJ29iamVjdCcpXG4gICAgICByZXR1cm4ge1xuICAgICAgICB2YWx1ZTogaXRlbT8udmFsdWUgPz8gJycsXG4gICAgICAgIGxhYmVsOiB0aGlzLmhhc0xhYmVsKCkgPyBpdGVtPy5sYWJlbCB8fCB0aGlzLmxhYmVsTGlzdCgpWzBdIDogdW5kZWZpbmVkLFxuICAgICAgICBpY29uOiB0aGlzLmhhc0ljb24oKSA/IGl0ZW0/Lmljb24gfHwgdGhpcy5jaG9vc2VJY29uKCkgOiB1bmRlZmluZWQsXG4gICAgICB9O1xuICAgIGVsc2VcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHZhbHVlOiBpdGVtLFxuICAgICAgICBsYWJlbDogdGhpcy5oYXNMYWJlbCgpID8gdGhpcy5sYWJlbExpc3QoKVswXSA6IHVuZGVmaW5lZCxcbiAgICAgICAgaWNvbjogdGhpcy5oYXNJY29uKCkgPyB0aGlzLmNob29zZUljb24oKSA6IHVuZGVmaW5lZCxcbiAgICAgIH07XG4gIH07XG4gIHByaXZhdGUgZW1wdHlWYWx1ZSgpOiBBWFBDb250YWN0RGF0YVR5cGUge1xuICAgIHJldHVybiB7XG4gICAgICB2YWx1ZTogJycsXG4gICAgfTtcbiAgfVxuXG4gIHNldEZvcm1hdGVkVmFsdWUoXG4gICAgaXRlbXM6IEFYUENvbnRhY3REYXRhVHlwZSB8IEFYUENvbnRhY3REYXRhVHlwZVtdXG4gICk6IHN0cmluZyB8IHN0cmluZ1tdIHwgQVhQQ29udGFjdERhdGFUeXBlIHwgQVhQQ29udGFjdERhdGFUeXBlW10ge1xuICAgIGlmICh0aGlzLmZvcm1hdCgpID09PSAnc3RyaW5nJykge1xuICAgICAgcmV0dXJuIEFycmF5LmlzQXJyYXkoaXRlbXMpID8gaXRlbXMubWFwKCh4KSA9PiB4LnZhbHVlKSA6IGl0ZW1zLnZhbHVlO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gaXRlbXM7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBjaG9vc2VJY29uID0gKCk6IHN0cmluZyA9PiB7XG4gICAgc3dpdGNoICh0aGlzLnR5cGUoKSkge1xuICAgICAgY2FzZSAnZW1haWwnOlxuICAgICAgICByZXR1cm4gJ2ZhLWxpbmsnO1xuICAgICAgY2FzZSAnbGluayc6XG4gICAgICAgIHJldHVybiAnZmEtZW52ZWxvcGUnO1xuICAgICAgY2FzZSAncGhvbmUnOlxuICAgICAgICByZXR1cm4gJ2ZhLXBob25lJztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiAnZmEtaW5mbyc7XG4gICAgfVxuICB9O1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBwcml2YXRlIGdldCBfX2NsYXNzKCk6IHN0cmluZyB7XG4gICAgY29uc3QgY2xzOiBhbnkgPSB7fTtcbiAgICBjbHNbYGF4LWJsb2NrYF0gPSB0cnVlO1xuICAgIGNsc1tgYXgtZmxleC0xYF0gPSB0cnVlO1xuICAgIHJldHVybiBjbHM7XG4gIH1cbn1cbiJdfQ==
@@ -13,17 +13,11 @@ import * as i4 from "@acorex/components/text-area";
13
13
  export class AXPLargeTextWidgetEditComponent extends AXPWidgetComponent {
14
14
  constructor() {
15
15
  super(...arguments);
16
- this.multiple = computed(() => this.options()["multiple"]);
17
- this.disabled = computed(() => this.options()["disabled"]);
18
- this.clearButton = computed(() => this.options()["clearButton"] ?? true);
19
- this.placeholder = computed(() => this.options()["placeholder"]);
20
- this._validationRules = [];
21
- }
22
- get validationRules() {
23
- return this._validationRules;
24
- }
25
- set validationRules(v) {
26
- this._validationRules = v;
16
+ this.multiple = computed(() => this.options()['multiple']);
17
+ this.disabled = computed(() => this.options()['disabled']);
18
+ this.clearButton = computed(() => this.options()['clearButton'] ?? true);
19
+ this.placeholder = computed(() => this.options()['placeholder']);
20
+ this.validationRules = computed(() => this.options()['validationRules'] ?? []);
27
21
  }
28
22
  get __class() {
29
23
  const cls = {};
@@ -33,12 +27,20 @@ export class AXPLargeTextWidgetEditComponent extends AXPWidgetComponent {
33
27
  }
34
28
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPLargeTextWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
35
29
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXPLargeTextWidgetEditComponent, isStandalone: true, selector: "axp-large-text-box-widget", inputs: { disabled: "disabled", clearButton: "clearButton" }, host: { properties: { "class": "this.__class" } }, usesInheritance: true, ngImport: i0, template: `
36
- <ax-text-area [disabled]="disabled()" [ngModel]="getValue()" (ngModelChange)="setValue($event)" [placeholder]="placeholder()">
30
+ <ax-text-area
31
+ [disabled]="disabled()"
32
+ [ngModel]="getValue()"
33
+ (ngModelChange)="setValue($event)"
34
+ [placeholder]="placeholder()"
35
+ >
37
36
  @if(clearButton()){
38
- <ax-clear-button></ax-clear-button>
39
- }
40
- @for (validation of validationRules; track $index) {
41
- <ax-validation-rule [rule]="validation.rule" [message]="validation.options?.message" [options]="validation.options"></ax-validation-rule>
37
+ <ax-clear-button></ax-clear-button>
38
+ } @for (validation of validationRules(); track $index) {
39
+ <ax-validation-rule
40
+ [rule]="validation.rule"
41
+ [message]="validation.options?.message"
42
+ [options]="validation.options"
43
+ ></ax-validation-rule>
42
44
  }
43
45
  </ax-text-area>
44
46
  `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i1.AXDecoratorClearButtonComponent, selector: "ax-clear-button", inputs: ["icon"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXFormModule }, { kind: "directive", type: i3.AXValidationRuleDirective, selector: "ax-validation-rule", inputs: ["rule", "options", "message"] }, { kind: "ngmodule", type: AXTextAreaModule }, { kind: "component", type: i4.AXTextAreaComponent, selector: "ax-text-area", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "placeholder", "maxLength", "look", "rows", "allowResize", "showCounter"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
@@ -48,12 +50,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
48
50
  args: [{
49
51
  selector: 'axp-large-text-box-widget',
50
52
  template: `
51
- <ax-text-area [disabled]="disabled()" [ngModel]="getValue()" (ngModelChange)="setValue($event)" [placeholder]="placeholder()">
53
+ <ax-text-area
54
+ [disabled]="disabled()"
55
+ [ngModel]="getValue()"
56
+ (ngModelChange)="setValue($event)"
57
+ [placeholder]="placeholder()"
58
+ >
52
59
  @if(clearButton()){
53
- <ax-clear-button></ax-clear-button>
54
- }
55
- @for (validation of validationRules; track $index) {
56
- <ax-validation-rule [rule]="validation.rule" [message]="validation.options?.message" [options]="validation.options"></ax-validation-rule>
60
+ <ax-clear-button></ax-clear-button>
61
+ } @for (validation of validationRules(); track $index) {
62
+ <ax-validation-rule
63
+ [rule]="validation.rule"
64
+ [message]="validation.options?.message"
65
+ [options]="validation.options"
66
+ ></ax-validation-rule>
57
67
  }
58
68
  </ax-text-area>
59
69
  `,
@@ -66,4 +76,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
66
76
  type: HostBinding,
67
77
  args: ['class']
68
78
  }] } });
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFyZ2UtdGV4dC13aWRnZXQtZWRpdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3dpZGdldHMvc3JjL2xpYi93aWRnZXRzL2VkaXRvcnMvbGFyZ2UtdGV4dC9sYXJnZS10ZXh0LXdpZGdldC1lZGl0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFaEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDckUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7OztBQW1CN0MsTUFBTSxPQUFPLCtCQUFnQyxTQUFRLGtCQUEwQjtJQWpCL0U7O1FBa0JZLGFBQVEsR0FBRyxRQUFRLENBQVUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLFVBQVUsQ0FBWSxDQUFDLENBQUM7UUFDMUUsYUFBUSxHQUFHLFFBQVEsQ0FBVSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsVUFBVSxDQUFZLENBQUMsQ0FBQztRQUMxRSxnQkFBVyxHQUFHLFFBQVEsQ0FBVSxHQUFHLEVBQUUsQ0FBRSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsYUFBYSxDQUFhLElBQUksSUFBSSxDQUFDLENBQUM7UUFDMUYsZ0JBQVcsR0FBRyxRQUFRLENBQVMsR0FBRyxFQUFFLENBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLGFBQWEsQ0FBWSxDQUFDLENBQUM7UUFFbEYscUJBQWdCLEdBQXVCLEVBQUUsQ0FBQztLQWVuRDtJQWRDLElBQVcsZUFBZTtRQUN4QixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztJQUMvQixDQUFDO0lBQ0QsSUFBVyxlQUFlLENBQUMsQ0FBcUI7UUFDOUMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsSUFDWSxPQUFPO1FBQ2pCLE1BQU0sR0FBRyxHQUFRLEVBQUUsQ0FBQztRQUNwQixHQUFHLENBQUMsVUFBVSxDQUFDLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLEdBQUcsQ0FBQyxXQUFXLENBQUMsR0FBRyxJQUFJLENBQUM7UUFDeEIsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDOzhHQXBCVSwrQkFBK0I7a0dBQS9CLCtCQUErQiw2TkFmaEM7Ozs7Ozs7OztHQVNULDJEQUdTLFlBQVksOEJBQUUsaUJBQWlCLDhJQUFFLFdBQVcsOFZBQUUsWUFBWSxpS0FBRSxnQkFBZ0I7OzJGQUczRSwrQkFBK0I7a0JBakIzQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLFFBQVEsRUFBRTs7Ozs7Ozs7O0dBU1Q7b0JBQ0QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxnQkFBZ0IsQ0FBQztvQkFDdkYsTUFBTSxFQUFFLENBQUMsVUFBVSxFQUFFLGFBQWEsQ0FBQztpQkFDcEM7OEJBZ0JhLE9BQU87c0JBRGxCLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYRGVjb3JhdG9yTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgQVhGb3JtTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2Zvcm0nO1xuaW1wb3J0IHsgQVhUZXh0QXJlYU1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy90ZXh0LWFyZWEnO1xuaW1wb3J0IHsgQVhQVmFsaWRhdGlvblJ1bGVzIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb3JlJztcbmltcG9ydCB7IEFYUFdpZGdldENvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkLCBIb3N0QmluZGluZyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4cC1sYXJnZS10ZXh0LWJveC13aWRnZXQnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxheC10ZXh0LWFyZWEgW2Rpc2FibGVkXT1cImRpc2FibGVkKClcIiBbbmdNb2RlbF09XCJnZXRWYWx1ZSgpXCIgKG5nTW9kZWxDaGFuZ2UpPVwic2V0VmFsdWUoJGV2ZW50KVwiIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlcigpXCI+XG4gICAgICBAaWYoY2xlYXJCdXR0b24oKSl7XG4gICAgICAgIDxheC1jbGVhci1idXR0b24+PC9heC1jbGVhci1idXR0b24+XG4gICAgICB9IFxuICAgICAgQGZvciAodmFsaWRhdGlvbiBvZiB2YWxpZGF0aW9uUnVsZXM7IHRyYWNrICRpbmRleCkge1xuICAgICAgICA8YXgtdmFsaWRhdGlvbi1ydWxlIFtydWxlXT1cInZhbGlkYXRpb24ucnVsZVwiIFttZXNzYWdlXT1cInZhbGlkYXRpb24ub3B0aW9ucz8ubWVzc2FnZVwiIFtvcHRpb25zXT1cInZhbGlkYXRpb24ub3B0aW9uc1wiPjwvYXgtdmFsaWRhdGlvbi1ydWxlPlxuICAgICAgfVxuICAgIDwvYXgtdGV4dC1hcmVhPlxuICBgLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgQVhEZWNvcmF0b3JNb2R1bGUsIEZvcm1zTW9kdWxlLCBBWEZvcm1Nb2R1bGUsIEFYVGV4dEFyZWFNb2R1bGVdLFxuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnY2xlYXJCdXR0b24nXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQTGFyZ2VUZXh0V2lkZ2V0RWRpdENvbXBvbmVudCBleHRlbmRzIEFYUFdpZGdldENvbXBvbmVudDxzdHJpbmc+IHtcbiAgcHJvdGVjdGVkIG11bHRpcGxlID0gY29tcHV0ZWQ8Ym9vbGVhbj4oKCkgPT4gdGhpcy5vcHRpb25zKClbXCJtdWx0aXBsZVwiXSBhcyBib29sZWFuKTtcbiAgcHJvdGVjdGVkIGRpc2FibGVkID0gY29tcHV0ZWQ8Ym9vbGVhbj4oKCkgPT4gdGhpcy5vcHRpb25zKClbXCJkaXNhYmxlZFwiXSBhcyBib29sZWFuKTtcbiAgcHJvdGVjdGVkIGNsZWFyQnV0dG9uID0gY29tcHV0ZWQ8Ym9vbGVhbj4oKCkgPT4gKHRoaXMub3B0aW9ucygpW1wiY2xlYXJCdXR0b25cIl0gYXMgYm9vbGVhbikgPz8gdHJ1ZSk7XG4gIHByb3RlY3RlZCBwbGFjZWhvbGRlciA9IGNvbXB1dGVkPHN0cmluZz4oKCkgPT4gKHRoaXMub3B0aW9ucygpW1wicGxhY2Vob2xkZXJcIl0gYXMgc3RyaW5nKSk7XG5cbiAgcHJpdmF0ZSBfdmFsaWRhdGlvblJ1bGVzOiBBWFBWYWxpZGF0aW9uUnVsZXMgPSBbXTtcbiAgcHVibGljIGdldCB2YWxpZGF0aW9uUnVsZXMoKTogQVhQVmFsaWRhdGlvblJ1bGVzIHtcbiAgICByZXR1cm4gdGhpcy5fdmFsaWRhdGlvblJ1bGVzO1xuICB9XG4gIHB1YmxpYyBzZXQgdmFsaWRhdGlvblJ1bGVzKHY6IEFYUFZhbGlkYXRpb25SdWxlcykge1xuICAgIHRoaXMuX3ZhbGlkYXRpb25SdWxlcyA9IHY7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgcHJpdmF0ZSBnZXQgX19jbGFzcygpOiBzdHJpbmcge1xuICAgIGNvbnN0IGNsczogYW55ID0ge307XG4gICAgY2xzW2BheC1ibG9ja2BdID0gdHJ1ZTtcbiAgICBjbHNbYGF4LWZsZXgtMWBdID0gdHJ1ZTtcbiAgICByZXR1cm4gY2xzO1xuICB9XG59XG4iXX0=
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFyZ2UtdGV4dC13aWRnZXQtZWRpdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3dpZGdldHMvc3JjL2xpYi93aWRnZXRzL2VkaXRvcnMvbGFyZ2UtdGV4dC9sYXJnZS10ZXh0LXdpZGdldC1lZGl0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFaEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDckUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7OztBQTJCN0MsTUFBTSxPQUFPLCtCQUFnQyxTQUFRLGtCQUEwQjtJQXpCL0U7O1FBMEJZLGFBQVEsR0FBRyxRQUFRLENBQVUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLFVBQVUsQ0FBWSxDQUFDLENBQUM7UUFDMUUsYUFBUSxHQUFHLFFBQVEsQ0FBVSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsVUFBVSxDQUFZLENBQUMsQ0FBQztRQUMxRSxnQkFBVyxHQUFHLFFBQVEsQ0FBVSxHQUFHLEVBQUUsQ0FBRSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsYUFBYSxDQUFhLElBQUksSUFBSSxDQUFDLENBQUM7UUFDMUYsZ0JBQVcsR0FBRyxRQUFRLENBQVMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLGFBQWEsQ0FBVyxDQUFDLENBQUM7UUFFOUUsb0JBQWUsR0FBRyxRQUFRLENBQ2xDLEdBQUcsRUFBRSxDQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBd0IsSUFBSSxFQUFFLENBQ3RFLENBQUM7S0FTSDtJQVBDLElBQ1ksT0FBTztRQUNqQixNQUFNLEdBQUcsR0FBUSxFQUFFLENBQUM7UUFDcEIsR0FBRyxDQUFDLFVBQVUsQ0FBQyxHQUFHLElBQUksQ0FBQztRQUN2QixHQUFHLENBQUMsV0FBVyxDQUFDLEdBQUcsSUFBSSxDQUFDO1FBQ3hCLE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQzs4R0FoQlUsK0JBQStCO2tHQUEvQiwrQkFBK0IsNk5BdkJoQzs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpQlQsMkRBR1MsWUFBWSw4QkFBRSxpQkFBaUIsOElBQUUsV0FBVyw4VkFBRSxZQUFZLGlLQUFFLGdCQUFnQjs7MkZBRzNFLCtCQUErQjtrQkF6QjNDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDJCQUEyQjtvQkFDckMsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7OztHQWlCVDtvQkFDRCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLGdCQUFnQixDQUFDO29CQUN2RixNQUFNLEVBQUUsQ0FBQyxVQUFVLEVBQUUsYUFBYSxDQUFDO2lCQUNwQzs4QkFZYSxPQUFPO3NCQURsQixXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWERlY29yYXRvck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEFYRm9ybU1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9mb3JtJztcbmltcG9ydCB7IEFYVGV4dEFyZWFNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvdGV4dC1hcmVhJztcbmltcG9ydCB7IEFYUFZhbGlkYXRpb25SdWxlcyB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29yZSc7XG5pbXBvcnQgeyBBWFBXaWRnZXRDb21wb25lbnQgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBjb21wdXRlZCwgSG9zdEJpbmRpbmcgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheHAtbGFyZ2UtdGV4dC1ib3gtd2lkZ2V0JyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8YXgtdGV4dC1hcmVhXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQoKVwiXG4gICAgICBbbmdNb2RlbF09XCJnZXRWYWx1ZSgpXCJcbiAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInNldFZhbHVlKCRldmVudClcIlxuICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyKClcIlxuICAgID5cbiAgICAgIEBpZihjbGVhckJ1dHRvbigpKXtcbiAgICAgIDxheC1jbGVhci1idXR0b24+PC9heC1jbGVhci1idXR0b24+XG4gICAgICB9IEBmb3IgKHZhbGlkYXRpb24gb2YgdmFsaWRhdGlvblJ1bGVzKCk7IHRyYWNrICRpbmRleCkge1xuICAgICAgPGF4LXZhbGlkYXRpb24tcnVsZVxuICAgICAgICBbcnVsZV09XCJ2YWxpZGF0aW9uLnJ1bGVcIlxuICAgICAgICBbbWVzc2FnZV09XCJ2YWxpZGF0aW9uLm9wdGlvbnM/Lm1lc3NhZ2VcIlxuICAgICAgICBbb3B0aW9uc109XCJ2YWxpZGF0aW9uLm9wdGlvbnNcIlxuICAgICAgPjwvYXgtdmFsaWRhdGlvbi1ydWxlPlxuICAgICAgfVxuICAgIDwvYXgtdGV4dC1hcmVhPlxuICBgLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgQVhEZWNvcmF0b3JNb2R1bGUsIEZvcm1zTW9kdWxlLCBBWEZvcm1Nb2R1bGUsIEFYVGV4dEFyZWFNb2R1bGVdLFxuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnY2xlYXJCdXR0b24nXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQTGFyZ2VUZXh0V2lkZ2V0RWRpdENvbXBvbmVudCBleHRlbmRzIEFYUFdpZGdldENvbXBvbmVudDxzdHJpbmc+IHtcbiAgcHJvdGVjdGVkIG11bHRpcGxlID0gY29tcHV0ZWQ8Ym9vbGVhbj4oKCkgPT4gdGhpcy5vcHRpb25zKClbJ211bHRpcGxlJ10gYXMgYm9vbGVhbik7XG4gIHByb3RlY3RlZCBkaXNhYmxlZCA9IGNvbXB1dGVkPGJvb2xlYW4+KCgpID0+IHRoaXMub3B0aW9ucygpWydkaXNhYmxlZCddIGFzIGJvb2xlYW4pO1xuICBwcm90ZWN0ZWQgY2xlYXJCdXR0b24gPSBjb21wdXRlZDxib29sZWFuPigoKSA9PiAodGhpcy5vcHRpb25zKClbJ2NsZWFyQnV0dG9uJ10gYXMgYm9vbGVhbikgPz8gdHJ1ZSk7XG4gIHByb3RlY3RlZCBwbGFjZWhvbGRlciA9IGNvbXB1dGVkPHN0cmluZz4oKCkgPT4gdGhpcy5vcHRpb25zKClbJ3BsYWNlaG9sZGVyJ10gYXMgc3RyaW5nKTtcblxuICBwcm90ZWN0ZWQgdmFsaWRhdGlvblJ1bGVzID0gY29tcHV0ZWQ8QVhQVmFsaWRhdGlvblJ1bGVzPihcbiAgICAoKSA9PiAodGhpcy5vcHRpb25zKClbJ3ZhbGlkYXRpb25SdWxlcyddIGFzIEFYUFZhbGlkYXRpb25SdWxlcykgPz8gW11cbiAgKTtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgcHJpdmF0ZSBnZXQgX19jbGFzcygpOiBzdHJpbmcge1xuICAgIGNvbnN0IGNsczogYW55ID0ge307XG4gICAgY2xzW2BheC1ibG9ja2BdID0gdHJ1ZTtcbiAgICBjbHNbYGF4LWZsZXgtMWBdID0gdHJ1ZTtcbiAgICByZXR1cm4gY2xzO1xuICB9XG59XG4iXX0=
@@ -1,5 +1,6 @@
1
1
  import { AXDataSource, convertArrayToDataSource } from '@acorex/components/common';
2
2
  import { AXDecoratorModule } from '@acorex/components/decorators';
3
+ import { AXFormModule } from '@acorex/components/form';
3
4
  import { AXSelectBoxComponent, AXSelectBoxModule } from '@acorex/components/select-box';
4
5
  import { AXPWidgetComponent } from '@acorex/platform/layout/builder';
5
6
  import { CommonModule } from '@angular/common';
@@ -8,11 +9,13 @@ import { FormsModule } from '@angular/forms';
8
9
  import * as i0 from "@angular/core";
9
10
  import * as i1 from "@angular/forms";
10
11
  import * as i2 from "@acorex/components/select-box";
11
- import * as i3 from "@acorex/components/decorators";
12
+ import * as i3 from "@acorex/components/form";
13
+ import * as i4 from "@acorex/components/decorators";
12
14
  export class AXPSelectBoxWidgetEditComponent extends AXPWidgetComponent {
13
15
  constructor() {
14
16
  super(...arguments);
15
17
  this.multiple = computed(() => this.options()['multiple']);
18
+ this.validationRules = computed(() => this.options()['validationRules'] ?? []);
16
19
  this.dataSource = computed(() => {
17
20
  const rawValue = this.options()['dataSource'];
18
21
  if (rawValue instanceof AXDataSource) {
@@ -62,12 +65,17 @@ export class AXPSelectBoxWidgetEditComponent extends AXPWidgetComponent {
62
65
  [multiple]="multiple()"
63
66
  (onValueChanged)="handleValueChange($event)"
64
67
  >
65
- @if(hasClearButton())
66
- {
67
- <ax-clear-button></ax-clear-button>
68
+ @if(hasClearButton()) {
69
+ <ax-clear-button></ax-clear-button>
70
+ } @for (validation of validationRules(); track $index) {
71
+ <ax-validation-rule
72
+ [rule]="validation.rule"
73
+ [message]="validation.options?.message"
74
+ [options]="validation.options"
75
+ ></ax-validation-rule>
68
76
  }
69
77
  </ax-select-box>
70
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "component", type: i2.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "textTemplate", "dataSource", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorClearButtonComponent, selector: "ax-clear-button", inputs: ["icon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
78
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "component", type: i2.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "textTemplate", "dataSource", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed"] }, { kind: "ngmodule", type: AXFormModule }, { kind: "directive", type: i3.AXValidationRuleDirective, selector: "ax-validation-rule", inputs: ["rule", "options", "message"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i4.AXDecoratorClearButtonComponent, selector: "ax-clear-button", inputs: ["icon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
71
79
  }
72
80
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPSelectBoxWidgetEditComponent, decorators: [{
73
81
  type: Component,
@@ -85,16 +93,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
85
93
  [multiple]="multiple()"
86
94
  (onValueChanged)="handleValueChange($event)"
87
95
  >
88
- @if(hasClearButton())
89
- {
90
- <ax-clear-button></ax-clear-button>
96
+ @if(hasClearButton()) {
97
+ <ax-clear-button></ax-clear-button>
98
+ } @for (validation of validationRules(); track $index) {
99
+ <ax-validation-rule
100
+ [rule]="validation.rule"
101
+ [message]="validation.options?.message"
102
+ [options]="validation.options"
103
+ ></ax-validation-rule>
91
104
  }
92
105
  </ax-select-box>
93
106
  `,
94
107
  standalone: true,
95
108
  changeDetection: ChangeDetectionStrategy.OnPush,
96
- imports: [CommonModule, FormsModule, AXSelectBoxModule, AXDecoratorModule],
97
- inputs: [],
109
+ imports: [CommonModule, FormsModule, AXSelectBoxModule, AXFormModule, AXDecoratorModule],
98
110
  }]
99
111
  }], propDecorators: { selectbox: [{
100
112
  type: ViewChild,
@@ -103,4 +115,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
103
115
  type: HostBinding,
104
116
  args: ['class']
105
117
  }] } });
106
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWJveC13aWRnZXQtZWRpdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3dpZGdldHMvc3JjL2xpYi93aWRnZXRzL2VkaXRvcnMvc2VsZWN0L3NlbGVjdC1ib3gtd2lkZ2V0LWVkaXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQXVCLHdCQUF3QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDeEcsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDeEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDckUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckcsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7OztBQTJCN0MsTUFBTSxPQUFPLCtCQUFnQyxTQUFRLGtCQUF1QjtJQXpCNUU7O1FBNkJZLGFBQVEsR0FBRyxRQUFRLENBQVUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLFVBQVUsQ0FBWSxDQUFDLENBQUM7UUFFMUUsZUFBVSxHQUFHLFFBQVEsQ0FBZSxHQUFHLEVBQUU7WUFDakQsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQzlDLElBQUksUUFBUSxZQUFZLFlBQVksRUFBRSxDQUFDO2dCQUNyQyxPQUFPLFFBQVEsQ0FBQztZQUNsQixDQUFDO2lCQUNJLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO2dCQUNqQyxPQUFPLHdCQUF3QixDQUFDLFFBQVEsQ0FBQyxDQUFBO1lBQzNDLENBQUM7aUJBQ0ksQ0FBQztnQkFDSixPQUFPLHdCQUF3QixDQUFDLEVBQUUsQ0FBQyxDQUFBO1lBQ3JDLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVPLGVBQVUsR0FBRyxRQUFRLENBQVMsR0FBRyxFQUFFLENBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBWSxJQUFJLElBQUksQ0FBQyxDQUFDO1FBQ3RGLGNBQVMsR0FBRyxRQUFRLENBQVMsR0FBRyxFQUFFLENBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLFdBQVcsQ0FBWSxJQUFJLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZGLGFBQVEsR0FBRyxRQUFRLENBQVUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLFVBQVUsQ0FBWSxDQUFDLENBQUM7UUFDMUUsZ0JBQVcsR0FBRyxRQUFRLENBQVMsR0FBRyxFQUFFLENBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLGFBQWEsQ0FBWSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3RGLG1CQUFjLEdBQUcsUUFBUSxDQUFVLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBWSxDQUFDLENBQUM7S0F3QmpHO0lBdEJXLGlCQUFpQixDQUFDLENBQXNCO1FBQ2hELElBQUksQ0FBQyxDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLFFBQVEsQ0FBRSxDQUFDLENBQUMsU0FBa0MsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN4RSxDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLENBQUMsU0FBUyxFQUFFLE9BQU8sRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDNUIsSUFBSSxDQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQsSUFDWSxPQUFPO1FBQ2pCLE1BQU0sR0FBRyxHQUFRLEVBQUUsQ0FBQztRQUNwQixHQUFHLENBQUMsVUFBVSxDQUFDLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLEdBQUcsQ0FBQyxXQUFXLENBQUMsR0FBRyxJQUFJLENBQUM7UUFDeEIsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDOzhHQTlDVSwrQkFBK0I7a0dBQS9CLCtCQUErQixvTEFDL0Isb0JBQW9CLHVFQXhCckI7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBaUJULDJEQUdTLFlBQVksOEJBQUUsV0FBVyw4VkFBRSxpQkFBaUIseWlCQUFFLGlCQUFpQjs7MkZBRzlELCtCQUErQjtrQkF6QjNDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDRCQUE0QjtvQkFDdEMsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7OztHQWlCVDtvQkFDRCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCLENBQUM7b0JBQzFFLE1BQU0sRUFBRSxFQUFFO2lCQUNYOzhCQUdTLFNBQVM7c0JBRGhCLFNBQVM7dUJBQUMsb0JBQW9CO2dCQXdDbkIsT0FBTztzQkFEbEIsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhEYXRhU291cmNlLCBBWFZhbHVlQ2hhbmdlZEV2ZW50LCBjb252ZXJ0QXJyYXlUb0RhdGFTb3VyY2UgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvY29tbW9uJztcbmltcG9ydCB7IEFYRGVjb3JhdG9yTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgQVhTZWxlY3RCb3hDb21wb25lbnQsIEFYU2VsZWN0Qm94TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3NlbGVjdC1ib3gnO1xuaW1wb3J0IHsgQVhQV2lkZ2V0Q29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIFZpZXdDaGlsZCwgY29tcHV0ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheHAtc2VsZWN0LWJveC13aWRnZXQtZWRpdCcsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGF4LXNlbGVjdC1ib3hcbiAgICAgICNkZFxuICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyKClcIlxuICAgICAgW2RhdGFTb3VyY2VdPVwiZGF0YVNvdXJjZSgpXCJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZCgpXCJcbiAgICAgIFt2YWx1ZUZpZWxkXT1cInZhbHVlRmllbGQoKVwiXG4gICAgICBbdGV4dEZpZWxkXT1cInRleHRGaWVsZCgpXCJcbiAgICAgIFtuZ01vZGVsXT1cImdldFZhbHVlKClcIlxuICAgICAgW211bHRpcGxlXT1cIm11bHRpcGxlKClcIlxuICAgICAgKG9uVmFsdWVDaGFuZ2VkKT1cImhhbmRsZVZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgID5cbiAgICAgIEBpZihoYXNDbGVhckJ1dHRvbigpKVxuICAgICAge1xuICAgICAgICA8YXgtY2xlYXItYnV0dG9uPjwvYXgtY2xlYXItYnV0dG9uPlxuICAgICAgfVxuICAgIDwvYXgtc2VsZWN0LWJveD5cbiAgYCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEZvcm1zTW9kdWxlLCBBWFNlbGVjdEJveE1vZHVsZSwgQVhEZWNvcmF0b3JNb2R1bGVdLFxuICBpbnB1dHM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBBWFBTZWxlY3RCb3hXaWRnZXRFZGl0Q29tcG9uZW50IGV4dGVuZHMgQVhQV2lkZ2V0Q29tcG9uZW50PGFueT4ge1xuICBAVmlld0NoaWxkKEFYU2VsZWN0Qm94Q29tcG9uZW50KVxuICBwcml2YXRlIHNlbGVjdGJveCE6IEFYU2VsZWN0Qm94Q29tcG9uZW50O1xuXG4gIHByb3RlY3RlZCBtdWx0aXBsZSA9IGNvbXB1dGVkPGJvb2xlYW4+KCgpID0+IHRoaXMub3B0aW9ucygpWydtdWx0aXBsZSddIGFzIGJvb2xlYW4pO1xuXG4gIHByb3RlY3RlZCBkYXRhU291cmNlID0gY29tcHV0ZWQ8QVhEYXRhU291cmNlPigoKSA9PiB7XG4gICAgY29uc3QgcmF3VmFsdWUgPSB0aGlzLm9wdGlvbnMoKVsnZGF0YVNvdXJjZSddO1xuICAgIGlmIChyYXdWYWx1ZSBpbnN0YW5jZW9mIEFYRGF0YVNvdXJjZSkge1xuICAgICAgcmV0dXJuIHJhd1ZhbHVlO1xuICAgIH1cbiAgICBlbHNlIGlmIChBcnJheS5pc0FycmF5KHJhd1ZhbHVlKSkge1xuICAgICAgcmV0dXJuIGNvbnZlcnRBcnJheVRvRGF0YVNvdXJjZShyYXdWYWx1ZSlcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICByZXR1cm4gY29udmVydEFycmF5VG9EYXRhU291cmNlKFtdKVxuICAgIH1cbiAgfSk7XG5cbiAgcHJvdGVjdGVkIHZhbHVlRmllbGQgPSBjb21wdXRlZDxzdHJpbmc+KCgpID0+ICh0aGlzLm9wdGlvbnMoKVsndmFsdWVGaWVsZCddIGFzIHN0cmluZykgPz8gJ2lkJyk7XG4gIHByb3RlY3RlZCB0ZXh0RmllbGQgPSBjb21wdXRlZDxzdHJpbmc+KCgpID0+ICh0aGlzLm9wdGlvbnMoKVsndGV4dEZpZWxkJ10gYXMgc3RyaW5nKSA/PyAndGl0bGUnKTtcbiAgcHJvdGVjdGVkIGRpc2FibGVkID0gY29tcHV0ZWQ8Ym9vbGVhbj4oKCkgPT4gdGhpcy5vcHRpb25zKClbJ2Rpc2FibGVkJ10gYXMgYm9vbGVhbik7XG4gIHByb3RlY3RlZCBwbGFjZWhvbGRlciA9IGNvbXB1dGVkPHN0cmluZz4oKCkgPT4gKHRoaXMub3B0aW9ucygpWydwbGFjZWhvbGRlciddIGFzIHN0cmluZykgPz8gJycpO1xuICBwcm90ZWN0ZWQgaGFzQ2xlYXJCdXR0b24gPSBjb21wdXRlZDxib29sZWFuPigoKSA9PiB0aGlzLm9wdGlvbnMoKVsnaGFzQ2xlYXJCdXR0b24nXSBhcyBib29sZWFuKTtcblxuICBwcm90ZWN0ZWQgaGFuZGxlVmFsdWVDaGFuZ2UoZTogQVhWYWx1ZUNoYW5nZWRFdmVudCkge1xuICAgIGlmIChlLmlzVXNlckludGVyYWN0aW9uKSB7XG4gICAgICB0aGlzLnNldFZhbHVlKChlLmNvbXBvbmVudCBhcyBBWFNlbGVjdEJveENvbXBvbmVudCkuc2VsZWN0ZWRJdGVtc1swXSk7XG4gICAgfVxuICB9XG5cbiAgcmVmcmVzaCgpIHtcbiAgICB0aGlzLnNlbGVjdGJveD8ucmVmcmVzaCgpO1xuICB9XG5cbiAgY2xlYXIoKSB7XG4gICAgdGhpcy5zZWxlY3Rib3g/LnJlc2V0KHRydWUpO1xuICAgIHRoaXMuc2VsZWN0Ym94Py5yZWZyZXNoKCk7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgcHJpdmF0ZSBnZXQgX19jbGFzcygpOiBzdHJpbmcge1xuICAgIGNvbnN0IGNsczogYW55ID0ge307XG4gICAgY2xzW2BheC1ibG9ja2BdID0gdHJ1ZTtcbiAgICBjbHNbYGF4LWZsZXgtMWBdID0gdHJ1ZTtcbiAgICByZXR1cm4gY2xzO1xuICB9XG59XG4iXX0=
118
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWJveC13aWRnZXQtZWRpdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3dpZGdldHMvc3JjL2xpYi93aWRnZXRzL2VkaXRvcnMvc2VsZWN0L3NlbGVjdC1ib3gtd2lkZ2V0LWVkaXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQXVCLHdCQUF3QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDeEcsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRXhGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7O0FBK0I3QyxNQUFNLE9BQU8sK0JBQWdDLFNBQVEsa0JBQXVCO0lBN0I1RTs7UUFpQ1ksYUFBUSxHQUFHLFFBQVEsQ0FBVSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsVUFBVSxDQUFZLENBQUMsQ0FBQztRQUUxRSxvQkFBZSxHQUFHLFFBQVEsQ0FDbEMsR0FBRyxFQUFFLENBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLGlCQUFpQixDQUF3QixJQUFJLEVBQUUsQ0FDdEUsQ0FBQztRQUVRLGVBQVUsR0FBRyxRQUFRLENB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bnZlcnRBcnJheVRvRGF0YVNvdXJjZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9jb21tb24nO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWEZvcm1Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZm9ybSc7XG5pbXBvcnQgeyBBWFNlbGVjdEJveENvbXBvbmVudCwgQVhTZWxlY3RCb3hNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvc2VsZWN0LWJveCc7XG5pbXBvcnQgeyBBWFBWYWxpZGF0aW9uUnVsZXMgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvcmUnO1xuaW1wb3J0IHsgQVhQV2lkZ2V0Q29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIFZpZXdDaGlsZCwgY29tcHV0ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheHAtc2VsZWN0LWJveC13aWRnZXQtZWRpdCcsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGF4LXNlbGVjdC1ib3hcbiAgICAgICNkZFxuICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyKClcIlxuICAgICAgW2RhdGFTb3VyY2VdPVwiZGF0YVNvdXJjZSgpXCJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZCgpXCJcbiAgICAgIFt2YWx1ZUZpZWxkXT1cInZhbHVlRmllbGQoKVwiXG4gICAgICBbdGV4dEZpZWxkXT1cInRleHRGaWVsZCgpXCJcbiAgICAgIFtuZ01vZGVsXT1cImdldFZhbHVlKClcIlxuICAgICAgW211bHRpcGxlXT1cIm11bHRpcGxlKClcIlxuICAgICAgKG9uVmFsdWVDaGFuZ2VkKT1cImhhbmRsZVZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgID5cbiAgICAgIEBpZihoYXNDbGVhckJ1dHRvbigpKSB7XG4gICAgICA8YXgtY2xlYXItYnV0dG9uPjwvYXgtY2xlYXItYnV0dG9uPlxuICAgICAgfSBAZm9yICh2YWxpZGF0aW9uIG9mIHZhbGlkYXRpb25SdWxlcygpOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgIDxheC12YWxpZGF0aW9uLXJ1bGVcbiAgICAgICAgW3J1bGVdPVwidmFsaWRhdGlvbi5ydWxlXCJcbiAgICAgICAgW21lc3NhZ2VdPVwidmFsaWRhdGlvbi5vcHRpb25zPy5tZXNzYWdlXCJcbiAgICAgICAgW29wdGlvbnNdPVwidmFsaWRhdGlvbi5vcHRpb25zXCJcbiAgICAgID48L2F4LXZhbGlkYXRpb24tcnVsZT5cbiAgICAgIH1cbiAgICA8L2F4LXNlbGVjdC1ib3g+XG4gIGAsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBGb3Jtc01vZHVsZSwgQVhTZWxlY3RCb3hNb2R1bGUsIEFYRm9ybU1vZHVsZSwgQVhEZWNvcmF0b3JNb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBBWFBTZWxlY3RCb3hXaWRnZXRFZGl0Q29tcG9uZW50IGV4dGVuZHMgQVhQV2lkZ2V0Q29tcG9uZW50PGFueT4ge1xuICBAVmlld0NoaWxkKEFYU2VsZWN0Qm94Q29tcG9uZW50KVxuICBwcml2YXRlIHNlbGVjdGJveCE6IEFYU2VsZWN0Qm94Q29tcG9uZW50O1xuXG4gIHByb3RlY3RlZCBtdWx0aXBsZSA9IGNvbXB1dGVkPGJvb2xlYW4+KCgpID0+IHRoaXMub3B0aW9ucygpWydtdWx0aXBsZSddIGFzIGJvb2xlYW4pO1xuXG4gIHByb3RlY3RlZCB2YWxpZGF0aW9uUnVsZXMgPSBjb21wdXRlZDxBWFBWYWxpZGF0aW9uUnVsZXM+KFxuICAgICgpID0+ICh0aGlzLm9wdGlvbnMoKVsndmFsaWRhdGlvblJ1bGVzJ10gYXMgQVhQVmFsaWRhdGlvblJ1bGVzKSA/PyBbXVxuICApO1xuXG4gIHByb3RlY3RlZCBkYXRhU291cmNlID0gY29tcHV0ZWQ8QVhEYXRhU291cmNlPigoKSA9PiB7XG4gICAgY29uc3QgcmF3VmFsdWUgPSB0aGlzLm9wdGlvbnMoKVsnZGF0YVNvdXJjZSddO1xuICAgIGlmIChyYXdWYWx1ZSBpbnN0YW5jZW9mIEFYRGF0YVNvdXJjZSkge1xuICAgICAgcmV0dXJuIHJhd1ZhbHVlO1xuICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShyYXdWYWx1ZSkpIHtcbiAgICAgIHJldHVybiBjb252ZXJ0QXJyYXlUb0RhdGFTb3VyY2UocmF3VmFsdWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gY29udmVydEFycmF5VG9EYXRhU291cmNlKFtdKTtcbiAgICB9XG4gIH0pO1xuXG4gIHByb3RlY3RlZCB2YWx1ZUZpZWxkID0gY29tcHV0ZWQ8c3RyaW5nPigoKSA9PiAodGhpcy5vcHRpb25zKClbJ3ZhbHVlRmllbGQnXSBhcyBzdHJpbmcpID8/ICdpZCcpO1xuICBwcm90ZWN0ZWQgdGV4dEZpZWxkID0gY29tcHV0ZWQ8c3RyaW5nPigoKSA9PiAodGhpcy5vcHRpb25zKClbJ3RleHRGaWVsZCddIGFzIHN0cmluZykgPz8gJ3RpdGxlJyk7XG4gIHByb3RlY3RlZCBkaXNhYmxlZCA9IGNvbXB1dGVkPGJvb2xlYW4+KCgpID0+IHRoaXMub3B0aW9ucygpWydkaXNhYmxlZCddIGFzIGJvb2xlYW4pO1xuICBwcm90ZWN0ZWQgcGxhY2Vob2xkZXIgPSBjb21wdXRlZDxzdHJpbmc+KCgpID0+ICh0aGlzLm9wdGlvbnMoKVsncGxhY2Vob2xkZXInXSBhcyBzdHJpbmcpID8/ICcnKTtcbiAgcHJvdGVjdGVkIGhhc0NsZWFyQnV0dG9uID0gY29tcHV0ZWQ8Ym9vbGVhbj4oKCkgPT4gdGhpcy5vcHRpb25zKClbJ2hhc0NsZWFyQnV0dG9uJ10gYXMgYm9vbGVhbik7XG5cbiAgcHJvdGVjdGVkIGhhbmRsZVZhbHVlQ2hhbmdlKGU6IEFYVmFsdWVDaGFuZ2VkRXZlbnQpIHtcbiAgICBpZiAoZS5pc1VzZXJJbnRlcmFjdGlvbikge1xuICAgICAgdGhpcy5zZXRWYWx1ZSgoZS5jb21wb25lbnQgYXMgQVhTZWxlY3RCb3hDb21wb25lbnQpLnNlbGVjdGVkSXRlbXNbMF0pO1xuICAgIH1cbiAgfVxuXG4gIHJlZnJlc2goKSB7XG4gICAgdGhpcy5zZWxlY3Rib3g/LnJlZnJlc2goKTtcbiAgfVxuXG4gIGNsZWFyKCkge1xuICAgIHRoaXMuc2VsZWN0Ym94Py5yZXNldCh0cnVlKTtcbiAgICB0aGlzLnNlbGVjdGJveD8ucmVmcmVzaCgpO1xuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIHByaXZhdGUgZ2V0IF9fY2xhc3MoKTogc3RyaW5nIHtcbiAgICBjb25zdCBjbHM6IGFueSA9IHt9O1xuICAgIGNsc1tgYXgtYmxvY2tgXSA9IHRydWU7XG4gICAgY2xzW2BheC1mbGV4LTFgXSA9IHRydWU7XG4gICAgcmV0dXJuIGNscztcbiAgfVxufVxuIl19
@@ -3,11 +3,11 @@ import * as i3 from '@acorex/components/form';
3
3
  import { AXFormModule } from '@acorex/components/form';
4
4
  import * as i1 from '@acorex/components/text-area';
5
5
  import { AXTextAreaModule } from '@acorex/components/text-area';
6
- import { AXPWidgetEditBase } from './acorex-platform-common.mjs';
7
6
  import * as i0 from '@angular/core';
8
7
  import { Component } from '@angular/core';
9
8
  import * as i2 from '@angular/forms';
10
9
  import { FormsModule } from '@angular/forms';
10
+ import { AXPWidgetEditBase } from './acorex-platform-common.mjs';
11
11
  import '@acorex/components/popup';
12
12
  import '@acorex/core/date-time';
13
13
  import '@angular/router';
@@ -32,30 +32,29 @@ import 'rxjs/operators';
32
32
 
33
33
  class AXPLargeTextWidgetEditComponent extends AXPWidgetEditBase {
34
34
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPLargeTextWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
35
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXPLargeTextWidgetEditComponent, isStandalone: true, selector: "axp-largetext-widget-edit", inputs: { width: "width" }, usesInheritance: true, ngImport: i0, template: `
36
- <ax-text-area [(ngModel)]="value">
37
- @for(vl of validations;track $index) {
38
- <ax-validation-rule [rule]="vl.rule" [options]="vl.options"></ax-validation-rule>
39
- }
40
- </ax-text-area>
41
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: AXTextAreaModule }, { kind: "component", type: i1.AXTextAreaComponent, selector: "ax-text-area", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "placeholder", "maxLength", "look", "rows", "allowResize", "showCounter"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "ngmodule", type: AXFormModule }, { kind: "directive", type: i3.AXValidationRuleDirective, selector: "ax-validation-rule", inputs: ["rule", "options", "message"] }] }); }
35
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXPLargeTextWidgetEditComponent, isStandalone: true, selector: "axp-largetext-widget-edit", usesInheritance: true, ngImport: i0, template: `
36
+ <ax-text-area [(ngModel)]="value">
37
+ @for(vl of validations;track $index) {
38
+ <ax-validation-rule [rule]="vl.rule" [options]="vl.options"></ax-validation-rule>
39
+ }
40
+ </ax-text-area>
41
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: AXTextAreaModule }, { kind: "component", type: i1.AXTextAreaComponent, selector: "ax-text-area", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "placeholder", "maxLength", "look", "rows", "allowResize", "showCounter"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "ngmodule", type: AXFormModule }, { kind: "directive", type: i3.AXValidationRuleDirective, selector: "ax-validation-rule", inputs: ["rule", "options", "message"] }] }); }
42
42
  }
43
43
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPLargeTextWidgetEditComponent, decorators: [{
44
44
  type: Component,
45
45
  args: [{
46
46
  selector: 'axp-largetext-widget-edit',
47
47
  template: `
48
- <ax-text-area [(ngModel)]="value">
49
- @for(vl of validations;track $index) {
50
- <ax-validation-rule [rule]="vl.rule" [options]="vl.options"></ax-validation-rule>
51
- }
52
- </ax-text-area>
53
- `,
48
+ <ax-text-area [(ngModel)]="value">
49
+ @for(vl of validations;track $index) {
50
+ <ax-validation-rule [rule]="vl.rule" [options]="vl.options"></ax-validation-rule>
51
+ }
52
+ </ax-text-area>
53
+ `,
54
54
  standalone: true,
55
55
  imports: [AXTextAreaModule, FormsModule, AXDecoratorModule, AXFormModule],
56
- inputs: ['width']
57
56
  }]
58
57
  }] });
59
58
 
60
59
  export { AXPLargeTextWidgetEditComponent };
61
- //# sourceMappingURL=acorex-platform-common-largetext-widget-edit.component-CrqPJ58V.mjs.map
60
+ //# sourceMappingURL=acorex-platform-common-largetext-widget-edit.component-DD7S5j12.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-platform-common-largetext-widget-edit.component-DD7S5j12.mjs","sources":["../../../../libs/platform/common/src/lib/schema/widgets/text/largetext-widget-edit.component.ts"],"sourcesContent":["import { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXTextAreaModule } from '@acorex/components/text-area';\nimport { Component } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXPWidgetEditBase } from '../../widget/widget-base';\n\n@Component({\n selector: 'axp-largetext-widget-edit',\n template: `\n <ax-text-area [(ngModel)]=\"value\">\n @for(vl of validations;track $index) {\n <ax-validation-rule [rule]=\"vl.rule\" [options]=\"vl.options\"></ax-validation-rule>\n }\n </ax-text-area>\n `,\n standalone: true,\n imports: [AXTextAreaModule, FormsModule, AXDecoratorModule, AXFormModule],\n})\nexport class AXPLargeTextWidgetEditComponent extends AXPWidgetEditBase<string> {}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmBM,MAAO,+BAAgC,SAAQ,iBAAyB,CAAA;8GAAjE,+BAA+B,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAA/B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,+BAA+B,EAVhC,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;;;AAMT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAES,gBAAgB,EAAE,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,OAAA,EAAA,OAAA,EAAA,MAAA,EAAA,aAAA,EAAA,WAAA,EAAA,MAAA,EAAA,MAAA,EAAA,aAAA,EAAA,aAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,EAAA,SAAA,EAAA,aAAA,EAAA,aAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,WAAA,EAAA,SAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,WAAW,EAAE,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAiB,8BAAE,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,yBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,SAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAE7D,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAZ3C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,2BAA2B;AACrC,oBAAA,QAAQ,EAAE,CAAA;;;;;;AAMT,EAAA,CAAA;AACD,oBAAA,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,gBAAgB,EAAE,WAAW,EAAE,iBAAiB,EAAE,YAAY,CAAC;AAC1E,iBAAA,CAAA;;;;;"}
@@ -1831,7 +1831,7 @@ class AXPCommonWidgetModule {
1831
1831
  name: widgetSchemas.largetext,
1832
1832
  component: {
1833
1833
  edit: {
1834
- component: () => import('./acorex-platform-common-largetext-widget-edit.component-CrqPJ58V.mjs').then((c) => c.AXPLargeTextWidgetEditComponent),
1834
+ component: () => import('./acorex-platform-common-largetext-widget-edit.component-DD7S5j12.mjs').then((c) => c.AXPLargeTextWidgetEditComponent),
1835
1835
  },
1836
1836
  column: {
1837
1837
  options: {
@@ -256,7 +256,6 @@ class AXPWidgetComponent extends AXPLayoutElement {
256
256
  this.options = this._options.asReadonly();
257
257
  this.contextService = inject(AXPLayoutBuilderService);
258
258
  this.rawValue = computed(() => {
259
- debugger;
260
259
  return this._fullPath ? get(this.contextService.context, this._fullPath) : null;
261
260
  });
262
261
  this.onReady = new Subject();