@acorex/platform 19.4.3 → 19.4.5

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 (61) hide show
  1. package/common/lib/app/application.types.d.ts +1 -0
  2. package/core/index.d.ts +1 -0
  3. package/core/lib/icon/icon-resolver.service.d.ts +5 -0
  4. package/core/lib/icon/icon.types.d.ts +8 -0
  5. package/core/lib/icon/index.d.ts +2 -0
  6. package/core/lib/types/core.types.d.ts +13 -0
  7. package/core/lib/types/file.types.d.ts +13 -0
  8. package/core/lib/types/index.d.ts +1 -0
  9. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  10. package/fesm2022/acorex-platform-core.mjs +29 -1
  11. package/fesm2022/acorex-platform-core.mjs.map +1 -1
  12. package/fesm2022/acorex-platform-layout-builder.mjs +0 -3
  13. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  14. package/fesm2022/acorex-platform-layout-designer.mjs +3 -3
  15. package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
  16. package/fesm2022/acorex-platform-layout-entity.mjs +93 -2
  17. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  18. package/fesm2022/acorex-platform-layout-views.mjs +3 -3
  19. package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
  20. package/fesm2022/{acorex-platform-themes-default-entity-master-list-view.component-BQXREWRS.mjs → acorex-platform-themes-default-entity-master-list-view.component-BlTpiFTT.mjs} +11 -11
  21. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-BlTpiFTT.mjs.map +1 -0
  22. package/fesm2022/acorex-platform-themes-default.mjs +7 -10
  23. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  24. package/fesm2022/acorex-platform-widgets-file-list-popup.component-TNxbcVav.mjs +68 -0
  25. package/fesm2022/acorex-platform-widgets-file-list-popup.component-TNxbcVav.mjs.map +1 -0
  26. package/fesm2022/acorex-platform-widgets.mjs +114 -826
  27. package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
  28. package/fesm2022/acorex-platform-workflow.mjs +21 -10
  29. package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
  30. package/layout/builder/lib/builder/widget-map.d.ts +0 -3
  31. package/layout/entity/lib/entity-master-list.viewmodel.d.ts +1 -0
  32. package/layout/entity/lib/entity.viewmodel.d.ts +1 -0
  33. package/layout/entity/lib/workflows/show-file-uploader-popup.workflow.d.ts +10 -0
  34. package/package.json +15 -15
  35. package/themes/default/lib/layouts/root-layout/vertical/vertical-layout.component.d.ts +0 -1
  36. package/widgets/lib/widgets/advance/file-uploader/file-list/file-list.component.d.ts +7 -4
  37. package/widgets/lib/widgets/advance/file-uploader/file-list-popup/file-list-popup.component.d.ts +17 -0
  38. package/widgets/lib/widgets/advance/file-uploader/file-uploader-widget-column.component.d.ts +3 -3
  39. package/widgets/lib/widgets/advance/file-uploader/file-uploader-widget-edit.component.d.ts +6 -1
  40. package/widgets/lib/widgets/advance/file-uploader/file-uploader-widget-view.component.d.ts +3 -1
  41. package/widgets/lib/widgets/advance/file-uploader/file-uploader-widget.service.d.ts +13 -11
  42. package/widgets/lib/widgets/index.d.ts +0 -2
  43. package/workflow/index.d.ts +1 -0
  44. package/workflow/lib/slots/workflow-action-bar/workflow-action-bar.component.d.ts +1 -0
  45. package/workflow/lib/task-board.types.d.ts +21 -0
  46. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-BQXREWRS.mjs.map +0 -1
  47. package/widgets/lib/widgets/advance/file/file-box-widget-column.component.d.ts +0 -6
  48. package/widgets/lib/widgets/advance/file/file-box-widget-edit.component.d.ts +0 -33
  49. package/widgets/lib/widgets/advance/file/file-box-widget-filter.component.d.ts +0 -6
  50. package/widgets/lib/widgets/advance/file/file-box-widget-print.component.d.ts +0 -6
  51. package/widgets/lib/widgets/advance/file/file-box-widget-view.component.d.ts +0 -31
  52. package/widgets/lib/widgets/advance/file/file-box-widget.config.d.ts +0 -7
  53. package/widgets/lib/widgets/advance/file/file-box-widget.service.d.ts +0 -12
  54. package/widgets/lib/widgets/advance/file/index.d.ts +0 -7
  55. package/widgets/lib/widgets/editors/single-file-box/index.d.ts +0 -6
  56. package/widgets/lib/widgets/editors/single-file-box/single-file-box-widget-column.component.d.ts +0 -6
  57. package/widgets/lib/widgets/editors/single-file-box/single-file-box-widget-edit.component.d.ts +0 -19
  58. package/widgets/lib/widgets/editors/single-file-box/single-file-box-widget-filter.component.d.ts +0 -6
  59. package/widgets/lib/widgets/editors/single-file-box/single-file-box-widget-print.component.d.ts +0 -6
  60. package/widgets/lib/widgets/editors/single-file-box/single-file-box-widget-view.component.d.ts +0 -8
  61. package/widgets/lib/widgets/editors/single-file-box/single-file-box-widget.config.d.ts +0 -9
@@ -12,7 +12,7 @@ import { AXLoadingModule } from '@acorex/components/loading';
12
12
  import * as i1$1 from '@angular/common';
13
13
  import { CommonModule } from '@angular/common';
14
14
  import * as i0 from '@angular/core';
15
- import { computed, EventEmitter, ChangeDetectionStrategy, Component, inject, afterNextRender, HostBinding, signal, ViewEncapsulation, InjectionToken, effect, ViewChild, untracked, CUSTOM_ELEMENTS_SCHEMA, input, ChangeDetectorRef, viewChild, ElementRef, afterRender, NgZone, model, linkedSignal, HostListener, importProvidersFrom, NgModule } from '@angular/core';
15
+ import { computed, EventEmitter, ChangeDetectionStrategy, Component, inject, afterNextRender, HostBinding, signal, ViewEncapsulation, InjectionToken, effect, ViewChild, CUSTOM_ELEMENTS_SCHEMA, untracked, Injectable, output, input, ChangeDetectorRef, viewChild, ElementRef, afterRender, NgZone, model, linkedSignal, HostListener, importProvidersFrom, NgModule } from '@angular/core';
16
16
  import * as i1 from '@acorex/components/check-box';
17
17
  import { AXCheckBoxModule } from '@acorex/components/check-box';
18
18
  import * as i4 from '@acorex/components/form';
@@ -54,20 +54,19 @@ import * as i5$1 from '@acorex/components/search-box';
54
54
  import { AXSearchBoxModule } from '@acorex/components/search-box';
55
55
  import * as i2$5 from '@acorex/components/selection-list';
56
56
  import { AXSelectionListModule } from '@acorex/components/selection-list';
57
- import { first, Subscription } from 'rxjs';
58
- import { AXFileService } from '@acorex/core/file';
57
+ import { first } from 'rxjs';
59
58
  import * as i6$1 from '@acorex/components/dropdown';
60
59
  import { AXDropdownModule } from '@acorex/components/dropdown';
61
60
  import * as i2$6 from '@acorex/components/switch';
62
61
  import { AXSwitchModule } from '@acorex/components/switch';
63
- import * as i2$7 from '@acorex/components/uploader';
64
- import { AXUploaderModule } from '@acorex/components/uploader';
65
- import { AXLoadingDialogService } from '@acorex/components/loading-dialog';
62
+ import { AXFileService } from '@acorex/core/file';
66
63
  import * as i5$2 from '@acorex/platform/layout/components';
67
64
  import { AXPComponentSlotModule } from '@acorex/platform/layout/components';
65
+ import { AXPDataGenerator, objectKeyValueTransforms } from '@acorex/platform/core';
66
+ import { AXUploaderModule } from '@acorex/components/uploader';
68
67
  import * as i1$5 from '@acorex/components/media-viewer';
69
68
  import { AXMediaViewerModule } from '@acorex/components/media-viewer';
70
- import * as i2$8 from '@acorex/components/image';
69
+ import * as i2$7 from '@acorex/components/image';
71
70
  import { AXImageModule } from '@acorex/components/image';
72
71
  import * as i1$6 from '@acorex/components/map';
73
72
  import { AXMapModule } from '@acorex/components/map';
@@ -78,11 +77,11 @@ import * as i1$8 from '@acorex/components/button-group';
78
77
  import { AXButtonGroupModule } from '@acorex/components/button-group';
79
78
  import * as i7$1 from '@acorex/components/range-slider';
80
79
  import { AXRangeSliderModule } from '@acorex/components/range-slider';
81
- import * as i2$9 from '@acorex/components/color-box';
80
+ import * as i2$8 from '@acorex/components/color-box';
82
81
  import { AXColorBoxModule } from '@acorex/components/color-box';
83
82
  import * as i1$9 from '@acorex/components/popover';
84
83
  import { AXPopoverComponent, AXPopoverModule } from '@acorex/components/popover';
85
- import * as i2$a from '@acorex/components/cron-job';
84
+ import * as i2$9 from '@acorex/components/cron-job';
86
85
  import { AXCronJobModule } from '@acorex/components/cron-job';
87
86
  import * as i1$a from '@acorex/components/qrcode';
88
87
  import { AXQrcodeModule } from '@acorex/components/qrcode';
@@ -90,11 +89,10 @@ import { AXColorUtil } from '@acorex/core/utils';
90
89
  import * as i6$2 from '@acorex/components/dropdown-button';
91
90
  import { AXDropdownButtonModule } from '@acorex/components/dropdown-button';
92
91
  import { AXDataTableModule } from '@acorex/components/data-table';
93
- import * as i2$b from '@acorex/components/time-duration';
92
+ import * as i2$a from '@acorex/components/time-duration';
94
93
  import { AXTimeDurationModule } from '@acorex/components/time-duration';
95
94
  import * as i1$b from '@acorex/components/collapse';
96
95
  import { AXCollapseModule } from '@acorex/components/collapse';
97
- import { objectKeyValueTransforms } from '@acorex/platform/core';
98
96
  import { DomSanitizer } from '@angular/platform-browser';
99
97
 
100
98
  const AXP_STYLING_PROPERTY_GROUP = {
@@ -5730,278 +5728,6 @@ const AXPSelectionListWidget = {
5730
5728
  },
5731
5729
  };
5732
5730
 
5733
- class AXPSingleFileBoxWidgetColumnComponent extends AXPValueWidgetComponent {
5734
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPSingleFileBoxWidgetColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
5735
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.10", type: AXPSingleFileBoxWidgetColumnComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: ``, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5736
- }
5737
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPSingleFileBoxWidgetColumnComponent, decorators: [{
5738
- type: Component,
5739
- args: [{
5740
- template: ``,
5741
- changeDetection: ChangeDetectionStrategy.OnPush,
5742
- imports: [CommonModule],
5743
- inputs: [],
5744
- }]
5745
- }] });
5746
-
5747
- var singleFileBoxWidgetColumn_component = /*#__PURE__*/Object.freeze({
5748
- __proto__: null,
5749
- AXPSingleFileBoxWidgetColumnComponent: AXPSingleFileBoxWidgetColumnComponent
5750
- });
5751
-
5752
- class AXPSingleFileBoxWidgetEditComponent extends AXPValueWidgetComponent {
5753
- constructor() {
5754
- super(...arguments);
5755
- this.showPreview = computed(() => this.options()['showPreview']);
5756
- this.refId = computed(() => this.options()['refId']);
5757
- this.refType = computed(() => this.options()['refType']);
5758
- this.fileService = inject(AXFileService);
5759
- this.fileStorage = inject(AXPFileStorageService);
5760
- this.url = signal(null);
5761
- this.isEmpty = computed(() => this.url() == null);
5762
- this.markedAsCommited = null;
5763
- this.markedAsDeleted = null;
5764
- this.#effect1 = effect(async () => {
5765
- const fileId = this.getValue();
5766
- await untracked(async () => {
5767
- try {
5768
- if (fileId) {
5769
- this.setStatus(AXPWidgetStatus.Processing);
5770
- const info = await this.fileStorage.getInfo(fileId);
5771
- this.url.set(info.url ? info.url : null);
5772
- }
5773
- else {
5774
- this.url.set(null);
5775
- }
5776
- this.setStatus(AXPWidgetStatus.Rendered);
5777
- }
5778
- catch (error) {
5779
- this.setStatus(AXPWidgetStatus.Error);
5780
- }
5781
- });
5782
- });
5783
- this.#effect2 = effect(async () => {
5784
- const status = this.layoutService.status();
5785
- if (status == AXPPageStatus.Submitted) {
5786
- if (this.markedAsCommited) {
5787
- await this.fileStorage.commit(this.markedAsCommited);
5788
- this.markedAsCommited = null;
5789
- }
5790
- if (this.markedAsDeleted) {
5791
- await this.fileStorage.markForDeletion(this.markedAsDeleted);
5792
- this.markedAsDeleted = null;
5793
- }
5794
- }
5795
- });
5796
- }
5797
- #effect1;
5798
- #effect2;
5799
- async chooseFile() {
5800
- const files = await this.fileService.choose({ accept: 'image/png, image/jpeg' });
5801
- const file = files[0];
5802
- const base64 = await this.fileService.blobToBase64(file);
5803
- this.url.set(base64);
5804
- // start upload
5805
- const info = await this.fileStorage.save({
5806
- category: 'company-logo',
5807
- file: file,
5808
- refId: this.refId(),
5809
- refType: this.refType(),
5810
- isPrimary: true,
5811
- });
5812
- this.markedAsCommited = info.fileId;
5813
- this.setValue(info.fileId);
5814
- }
5815
- async handleChange() {
5816
- await this.chooseFile();
5817
- }
5818
- async handleRemove() {
5819
- this.markedAsDeleted = this.getValue();
5820
- this.setValue(null);
5821
- }
5822
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPSingleFileBoxWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
5823
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.10", type: AXPSingleFileBoxWidgetEditComponent, isStandalone: true, selector: "axp-single-file-box-widget", usesInheritance: true, ngImport: i0, template: `
5824
- @if(showPreview()) { @if(isBusy()) {
5825
- <div class="axp-empty axp-state-loading">
5826
- <i class="fa-solid fa-spinner-third fa-spin"></i>
5827
- </div>
5828
- } @else if(!url()) {
5829
- <div class="axp-empty" (click)="handleChange()" [class.axp-state-error]="this.status() == 'error'">
5830
- <i class="fa-solid fa-camera ax-text-3xl ax-text-gray-400"></i>
5831
- </div>
5832
- } @else {
5833
- <div class="axp-content" [class.axp-state-error]="this.status() == 'error'">
5834
- <div [style.backgroundImage]="url() ? 'url(' + url() + ')' : ''"></div>
5835
- <div>
5836
- <div (click)="handleChange()">
5837
- <i class="fa-solid fa-camera "></i>
5838
- </div>
5839
- <div (click)="handleRemove()">
5840
- <i class="fa-light fa-trash-can "></i>
5841
- </div>
5842
- </div>
5843
- </div>
5844
- } }@else {
5845
- <div>
5846
- <p>Upload</p>
5847
- </div>
5848
- }
5849
- `, isInline: true, styles: ["axp-avatar-widget-edit .axp-empty{height:11rem;width:11rem;cursor:pointer;border-radius:.375rem;border-width:2px;border-style:dashed;--tw-bg-opacity: 1;background-color:rgba(var(--ax-sys-color-surface),var(--tw-bg-opacity, 1));display:flex;align-items:center;justify-content:center}axp-avatar-widget-edit .axp-empty.axp-state-error{--tw-border-opacity: 1;border-color:rgba(var(--ax-sys-color-border-danger-surface),var(--tw-border-opacity, 1))}axp-avatar-widget-edit .axp-empty:hover{--tw-border-opacity: 1;border-color:rgba(var(--ax-sys-color-border-primary-surface),var(--tw-border-opacity, 1))}axp-avatar-widget-edit .axp-empty.axp-state-loading{--fa-animation-duration: .7s}axp-avatar-widget-edit .axp-empty.axp-state-loading i{font-size:1.875rem;line-height:2.25rem;--tw-text-opacity: 1;color:rgba(var(--ax-sys-color-primary-500),var(--tw-text-opacity, 1))}axp-avatar-widget-edit .axp-empty.axp-state-loading i:is(.ax-dark *){--tw-text-opacity: 1;color:rgba(var(--ax-sys-color-primary-400),var(--tw-text-opacity, 1))}axp-avatar-widget-edit .axp-content{cursor:pointer;overflow:hidden;border-radius:.375rem;border-width:1px;display:flex}axp-avatar-widget-edit .axp-content.axp-state-error{--tw-border-opacity: 1;border-color:rgba(var(--ax-sys-color-border-danger-surface),var(--tw-border-opacity, 1))}axp-avatar-widget-edit .axp-content>:first-child{border-start-start-radius:.375rem;border-end-start-radius:.375rem;background-size:cover;background-position:center;height:11rem;width:11rem;border-inline-end-width:1px}axp-avatar-widget-edit .axp-content>:last-child{display:flex;flex-direction:column}axp-avatar-widget-edit .axp-content>:last-child>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}axp-avatar-widget-edit .axp-content>:last-child{overflow:hidden}axp-avatar-widget-edit .axp-content>:last-child>div{display:flex;width:5rem;flex:1 1 0%;align-items:center;justify-content:center;--tw-bg-opacity: 1;background-color:rgba(var(--ax-sys-color-surface),var(--tw-bg-opacity, 1))}axp-avatar-widget-edit .axp-content>:last-child>div:hover{--tw-bg-opacity: 1;background-color:rgba(var(--ax-sys-color-darkest-surface),var(--tw-bg-opacity, 1))}axp-avatar-widget-edit .axp-content>:last-child>div>i{font-size:1.5rem;line-height:2rem}axp-avatar-widget-edit .axp-content>:last-child>:first-child{--tw-text-opacity: 1;color:rgba(var(--ax-sys-color-on-surface),var(--tw-text-opacity, 1))}axp-avatar-widget-edit .axp-content>:last-child>:last-child{--tw-text-opacity: 1;color:rgba(var(--ax-sys-color-danger-500),var(--tw-text-opacity, 1))}axp-avatar-widget-edit .axp-content>:last-child>:last-child:is(.ax-dark *){--tw-text-opacity: 1;color:rgba(var(--ax-sys-color-danger-800),var(--tw-text-opacity, 1))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXTextBoxModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXFormModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "ngmodule", type: AXValidationModule }, { kind: "ngmodule", type: AXButtonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5850
- }
5851
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPSingleFileBoxWidgetEditComponent, decorators: [{
5852
- type: Component,
5853
- args: [{ selector: 'axp-single-file-box-widget', template: `
5854
- @if(showPreview()) { @if(isBusy()) {
5855
- <div class="axp-empty axp-state-loading">
5856
- <i class="fa-solid fa-spinner-third fa-spin"></i>
5857
- </div>
5858
- } @else if(!url()) {
5859
- <div class="axp-empty" (click)="handleChange()" [class.axp-state-error]="this.status() == 'error'">
5860
- <i class="fa-solid fa-camera ax-text-3xl ax-text-gray-400"></i>
5861
- </div>
5862
- } @else {
5863
- <div class="axp-content" [class.axp-state-error]="this.status() == 'error'">
5864
- <div [style.backgroundImage]="url() ? 'url(' + url() + ')' : ''"></div>
5865
- <div>
5866
- <div (click)="handleChange()">
5867
- <i class="fa-solid fa-camera "></i>
5868
- </div>
5869
- <div (click)="handleRemove()">
5870
- <i class="fa-light fa-trash-can "></i>
5871
- </div>
5872
- </div>
5873
- </div>
5874
- } }@else {
5875
- <div>
5876
- <p>Upload</p>
5877
- </div>
5878
- }
5879
- `, changeDetection: ChangeDetectionStrategy.OnPush, imports: [
5880
- CommonModule,
5881
- AXTextBoxModule,
5882
- FormsModule,
5883
- AXFormModule,
5884
- AXDecoratorModule,
5885
- AXValidationModule,
5886
- AXButtonModule,
5887
- ], inputs: [], styles: ["axp-avatar-widget-edit .axp-empty{height:11rem;width:11rem;cursor:pointer;border-radius:.375rem;border-width:2px;border-style:dashed;--tw-bg-opacity: 1;background-color:rgba(var(--ax-sys-color-surface),var(--tw-bg-opacity, 1));display:flex;align-items:center;justify-content:center}axp-avatar-widget-edit .axp-empty.axp-state-error{--tw-border-opacity: 1;border-color:rgba(var(--ax-sys-color-border-danger-surface),var(--tw-border-opacity, 1))}axp-avatar-widget-edit .axp-empty:hover{--tw-border-opacity: 1;border-color:rgba(var(--ax-sys-color-border-primary-surface),var(--tw-border-opacity, 1))}axp-avatar-widget-edit .axp-empty.axp-state-loading{--fa-animation-duration: .7s}axp-avatar-widget-edit .axp-empty.axp-state-loading i{font-size:1.875rem;line-height:2.25rem;--tw-text-opacity: 1;color:rgba(var(--ax-sys-color-primary-500),var(--tw-text-opacity, 1))}axp-avatar-widget-edit .axp-empty.axp-state-loading i:is(.ax-dark *){--tw-text-opacity: 1;color:rgba(var(--ax-sys-color-primary-400),var(--tw-text-opacity, 1))}axp-avatar-widget-edit .axp-content{cursor:pointer;overflow:hidden;border-radius:.375rem;border-width:1px;display:flex}axp-avatar-widget-edit .axp-content.axp-state-error{--tw-border-opacity: 1;border-color:rgba(var(--ax-sys-color-border-danger-surface),var(--tw-border-opacity, 1))}axp-avatar-widget-edit .axp-content>:first-child{border-start-start-radius:.375rem;border-end-start-radius:.375rem;background-size:cover;background-position:center;height:11rem;width:11rem;border-inline-end-width:1px}axp-avatar-widget-edit .axp-content>:last-child{display:flex;flex-direction:column}axp-avatar-widget-edit .axp-content>:last-child>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}axp-avatar-widget-edit .axp-content>:last-child{overflow:hidden}axp-avatar-widget-edit .axp-content>:last-child>div{display:flex;width:5rem;flex:1 1 0%;align-items:center;justify-content:center;--tw-bg-opacity: 1;background-color:rgba(var(--ax-sys-color-surface),var(--tw-bg-opacity, 1))}axp-avatar-widget-edit .axp-content>:last-child>div:hover{--tw-bg-opacity: 1;background-color:rgba(var(--ax-sys-color-darkest-surface),var(--tw-bg-opacity, 1))}axp-avatar-widget-edit .axp-content>:last-child>div>i{font-size:1.5rem;line-height:2rem}axp-avatar-widget-edit .axp-content>:last-child>:first-child{--tw-text-opacity: 1;color:rgba(var(--ax-sys-color-on-surface),var(--tw-text-opacity, 1))}axp-avatar-widget-edit .axp-content>:last-child>:last-child{--tw-text-opacity: 1;color:rgba(var(--ax-sys-color-danger-500),var(--tw-text-opacity, 1))}axp-avatar-widget-edit .axp-content>:last-child>:last-child:is(.ax-dark *){--tw-text-opacity: 1;color:rgba(var(--ax-sys-color-danger-800),var(--tw-text-opacity, 1))}\n"] }]
5888
- }] });
5889
-
5890
- var singleFileBoxWidgetEdit_component = /*#__PURE__*/Object.freeze({
5891
- __proto__: null,
5892
- AXPSingleFileBoxWidgetEditComponent: AXPSingleFileBoxWidgetEditComponent
5893
- });
5894
-
5895
- class AXPSingleFileBoxWidgetFilterComponent extends AXPValueWidgetComponent {
5896
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPSingleFileBoxWidgetFilterComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
5897
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.10", type: AXPSingleFileBoxWidgetFilterComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: ``, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5898
- }
5899
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPSingleFileBoxWidgetFilterComponent, decorators: [{
5900
- type: Component,
5901
- args: [{
5902
- template: ``,
5903
- changeDetection: ChangeDetectionStrategy.OnPush,
5904
- imports: [CommonModule, FormsModule],
5905
- inputs: [],
5906
- }]
5907
- }] });
5908
-
5909
- var singleFileBoxWidgetFilter_component = /*#__PURE__*/Object.freeze({
5910
- __proto__: null,
5911
- AXPSingleFileBoxWidgetFilterComponent: AXPSingleFileBoxWidgetFilterComponent
5912
- });
5913
-
5914
- class AXPSingleFileBoxWidgetPrintComponent extends AXPValueWidgetComponent {
5915
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPSingleFileBoxWidgetPrintComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
5916
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.10", type: AXPSingleFileBoxWidgetPrintComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: ``, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5917
- }
5918
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPSingleFileBoxWidgetPrintComponent, decorators: [{
5919
- type: Component,
5920
- args: [{
5921
- template: ``,
5922
- changeDetection: ChangeDetectionStrategy.OnPush,
5923
- imports: [CommonModule],
5924
- inputs: [],
5925
- }]
5926
- }] });
5927
-
5928
- var singleFileBoxWidgetPrint_component = /*#__PURE__*/Object.freeze({
5929
- __proto__: null,
5930
- AXPSingleFileBoxWidgetPrintComponent: AXPSingleFileBoxWidgetPrintComponent
5931
- });
5932
-
5933
- class AXPSingleFileBoxWidgetViewComponent extends AXPValueWidgetComponent {
5934
- constructor() {
5935
- super(...arguments);
5936
- this.internalValue = computed(() => (Array.isArray(this.getValue()) ? this.getValue() : [this.getValue()]));
5937
- this.multiple = computed(() => this.options()['multiple']);
5938
- }
5939
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPSingleFileBoxWidgetViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
5940
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.10", type: AXPSingleFileBoxWidgetViewComponent, isStandalone: true, selector: "axp-single-file-box-widget", usesInheritance: true, ngImport: i0, template: `
5941
- <div>
5942
- @if(multiple()) { @for (item of internalValue(); track $index) {
5943
- <p>{{ item }}</p>
5944
- } }@else {
5945
- <p>{{ internalValue()[0] }}</p>
5946
- }
5947
- </div>
5948
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
5949
- }
5950
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPSingleFileBoxWidgetViewComponent, decorators: [{
5951
- type: Component,
5952
- args: [{
5953
- selector: 'axp-single-file-box-widget',
5954
- template: `
5955
- <div>
5956
- @if(multiple()) { @for (item of internalValue(); track $index) {
5957
- <p>{{ item }}</p>
5958
- } }@else {
5959
- <p>{{ internalValue()[0] }}</p>
5960
- }
5961
- </div>
5962
- `,
5963
- changeDetection: ChangeDetectionStrategy.OnPush,
5964
- imports: [CommonModule],
5965
- inputs: [],
5966
- }]
5967
- }] });
5968
-
5969
- var singleFileBoxWidgetView_component = /*#__PURE__*/Object.freeze({
5970
- __proto__: null,
5971
- AXPSingleFileBoxWidgetViewComponent: AXPSingleFileBoxWidgetViewComponent
5972
- });
5973
-
5974
- const AXPSingleFileBoxWidget = {
5975
- name: 'single-file-box-editor',
5976
- title: 'SingleFileBox',
5977
- icon: 'fa-light fa-cube',
5978
- description: 'Single Upload and show file',
5979
- categories: AXP_WIDGETS_EDITOR_CATEGORY,
5980
- type: 'editor',
5981
- defaultFilterWidgetName: 'string-filter',
5982
- properties: [AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY],
5983
- components: {
5984
- view: {
5985
- component: () => Promise.resolve().then(function () { return singleFileBoxWidgetView_component; }).then((c) => c.AXPSingleFileBoxWidgetViewComponent),
5986
- },
5987
- edit: {
5988
- component: () => Promise.resolve().then(function () { return singleFileBoxWidgetEdit_component; }).then((c) => c.AXPSingleFileBoxWidgetEditComponent),
5989
- },
5990
- filter: {
5991
- component: () => Promise.resolve().then(function () { return singleFileBoxWidgetFilter_component; }).then((c) => c.AXPSingleFileBoxWidgetFilterComponent),
5992
- },
5993
- column: {
5994
- component: () => Promise.resolve().then(function () { return singleFileBoxWidgetColumn_component; }).then((c) => c.AXPSingleFileBoxWidgetColumnComponent),
5995
- },
5996
- print: {
5997
- component: () => Promise.resolve().then(function () { return singleFileBoxWidgetPrint_component; }).then((c) => c.AXPSingleFileBoxWidgetPrintComponent),
5998
- },
5999
- designer: {
6000
- component: () => Promise.resolve().then(function () { return singleFileBoxWidgetEdit_component; }).then((c) => c.AXPSingleFileBoxWidgetEditComponent),
6001
- },
6002
- },
6003
- };
6004
-
6005
5731
  class AXPTemplateBoxWidgetColumnComponent extends AXPValueWidgetComponent {
6006
5732
  constructor() {
6007
5733
  super(...arguments);
@@ -7249,531 +6975,52 @@ const AXPAvatarWidget = {
7249
6975
  },
7250
6976
  };
7251
6977
 
7252
- class AXPFileBoxWidgetColumnComponent extends AXPValueWidgetComponent {
7253
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPFileBoxWidgetColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
7254
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.10", type: AXPFileBoxWidgetColumnComponent, isStandalone: true, selector: "ng-component", inputs: { rawValue: "rawValue" }, usesInheritance: true, ngImport: i0, template: ``, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
7255
- }
7256
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPFileBoxWidgetColumnComponent, decorators: [{
7257
- type: Component,
7258
- args: [{
7259
- template: ``,
7260
- changeDetection: ChangeDetectionStrategy.OnPush,
7261
- imports: [CommonModule],
7262
- inputs: ['rawValue']
7263
- }]
7264
- }] });
7265
-
7266
- var fileBoxWidgetColumn_component = /*#__PURE__*/Object.freeze({
7267
- __proto__: null,
7268
- AXPFileBoxWidgetColumnComponent: AXPFileBoxWidgetColumnComponent
7269
- });
7270
-
7271
- class AXPFileBoxWidgetEditComponent extends AXPValueWidgetComponent {
6978
+ class AXPFileUploaderWidgetService {
7272
6979
  constructor() {
7273
- super(...arguments);
7274
- this.fileStorage = inject(AXPFileStorageService);
7275
- this.fileTypeService = inject(AXPFileTypeProviderService);
7276
- this.isLoading = signal(true);
7277
- this.fileTypes = signal([]);
7278
- this.multiple = computed(() => this.options()['multiple']);
7279
- this.accept = computed(() => this.options()['accept']);
7280
- this.description = computed(() => this.options()['description']);
7281
- this.metaData = computed(() => this.options()['metaData']);
7282
- this.refId = computed(() => this.options()['refId']);
7283
- this.refType = computed(() => this.options()['refType']);
7284
- this.markedListAsCommitted = null;
7285
- this.markedListAsDeleted = null;
7286
- }
7287
- async ngOnInit() {
7288
- super.ngOnInit();
7289
- this.fileTypes.set(await this.fileTypeService.items());
7290
- this.isLoading.set(false);
7291
- }
7292
- async ngOnDestroy() {
7293
- const status = this.layoutService.status();
7294
- if (status == AXPPageStatus.Submitted) {
7295
- if (this.markedListAsCommitted) {
7296
- for (const fileId of this.markedListAsCommitted) {
7297
- await this.fileStorage.commit(fileId);
7298
- }
7299
- this.markedListAsCommitted = null;
7300
- }
7301
- if (this.markedListAsDeleted) {
7302
- for (const fileId of this.markedListAsDeleted) {
7303
- await this.fileStorage.markForDeletion(fileId);
7304
- }
7305
- this.markedListAsDeleted = null;
7306
- }
7307
- }
7308
- }
7309
- async handleOnFileRemove(file) {
7310
- this.setValue(this.getValue().filter((f) => f.fileId !== file.fileId));
7311
- await this.fileStorage.markForDeletion(file.fileId);
7312
- }
7313
- handleOnFileUploadComplete(e) { }
7314
- handleOnFilesUploadComplete(e) { }
7315
- async handleChanged(e) {
7316
- console.log(e);
7317
- const results = [];
7318
- for (var i = 0; i < e.requests.length; i++) {
7319
- results.push(await this.fileStorage.save({
7320
- category: 'file-upload',
7321
- file: e.requests[i].file,
7322
- refId: this.refId(),
7323
- refType: this.refType(),
7324
- isPrimary: true,
7325
- name: e.requests[i].file.name,
7326
- }));
7327
- e.requests[i].finish({
7328
- id: results[i].fileId,
7329
- });
7330
- }
7331
- if (!this.multiple()) {
7332
- if (results.length > 0 && results[0].fileId) {
7333
- console.log(results[0]);
7334
- this.setValue([results[0]]);
7335
- this.markedListAsCommitted = [results[0].fileId];
7336
- }
7337
- }
7338
- else {
7339
- console.log(results);
7340
- this.setValue([...(this.getValue() ?? []), ...results]);
7341
- this.markedListAsCommitted = [...(this.markedListAsCommitted ?? []), ...results.map((r) => r.fileId)];
7342
- }
6980
+ this.popupService = inject(AXPopupService);
6981
+ this.translate = inject(AXTranslationService);
7343
6982
  }
7344
- getFileInfo(fileName) {
7345
- const extension = fileName.split('.').pop()?.toLowerCase() || '';
7346
- const extensions = this.fileTypes().flatMap((t) => t.extensions);
7347
- const fileType = extensions.find((e) => e.name === extension);
7348
- return {
7349
- icon: fileType?.icon || 'fa-light fa-file',
7350
- type: fileType?.name || 'Unknown',
6983
+ async showFileList(options) {
6984
+ const defaultOptions = {
6985
+ files: [],
6986
+ readOnly: false,
6987
+ multiple: false,
6988
+ accept: '*',
7351
6989
  };
7352
- }
7353
- get __class() {
7354
- const cls = {};
7355
- cls[`ax-block`] = true;
7356
- cls[`ax-flex-1`] = true;
7357
- return cls;
7358
- }
7359
- async handleFileDownload(event, file) {
7360
- event.stopPropagation();
7361
- const link = document.createElement('a');
7362
- link.href = file.url ?? '';
7363
- link.download = file.name ?? ''; // Set the desired file name
7364
- document.body.appendChild(link);
7365
- link.click();
7366
- document.body.removeChild(link);
7367
- }
7368
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPFileBoxWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
7369
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.10", type: AXPFileBoxWidgetEditComponent, isStandalone: true, selector: "axp-file-widget-edit", host: { properties: { "class": "this.__class" } }, usesInheritance: true, ngImport: i0, template: `
7370
- @if(isLoading()){<ax-loading></ax-loading>}@else{
7371
- <div class="ax-grid ax-grid-cols-12">
7372
- <div class="ax-col-span-12">
7373
- <ax-uploader-drop-zone
7374
- axUploaderZone
7375
- (onChanged)="handleChanged($event)"
7376
- [multiple]="multiple()"
7377
- [accept]="accept()"
7378
- [description]="description()"
7379
- (onFileUploadComplete)="handleOnFileUploadComplete($event)"
7380
- (onFilesUploadComplete)="handleOnFilesUploadComplete($event)"
7381
- ></ax-uploader-drop-zone>
7382
- </div>
7383
- </div>
7384
- <div class="__content fa-xl">
7385
- @for (file of getValue(); track $index) { @let fileInfo = getFileInfo(file.name!);
7386
- <div class="__explorer-item">
7387
- <div class="__icon">
7388
- <i class="fa-fw {{ fileInfo.icon }} fa-solid"></i>
7389
- </div>
7390
- <div class="__name">{{ file.name }}</div>
7391
- <div class="ax-flex ax-gap-2 ax-ml-auto">
7392
- <ax-icon
7393
- class="fa-regular fa-download ax-text-lg ax-cursor-pointer hover:ax-text-primary"
7394
- (click)="handleFileDownload($event, file)"
7395
- ></ax-icon>
7396
- <ax-icon
7397
- class="fa-regular ax-text-lg fa-trash ax-cursor-pointer hover:ax-text-danger"
7398
- (click)="handleOnFileRemove(file)"
7399
- ></ax-icon>
7400
- </div>
7401
- </div>
7402
- }
7403
- </div>
7404
- }
7405
- `, isInline: true, styles: [":host{width:100%}:host .__content{display:flex;flex-direction:column;gap:.125rem}:host .__content .__explorer-item{display:flex;cursor:pointer;align-items:center;gap:.75rem;border-radius:.375rem;padding:.5rem}:host .__content .__explorer-item:hover{background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host .__content .__explorer-item .__icon{width:1.5rem;flex-shrink:0}:host .__content .__explorer-item .__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:start;font-size:.875rem;line-height:1.25rem;font-weight:500}:host .__content .__explorer-item.--selected{background-color:rgb(var(--ax-sys-color-darker-surface));color:rgb(var(--ax-sys-color-on-darker-surface));border-color:rgb(var(--ax-sys-color-border-darker-surface))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "ngmodule", type: AXUploaderModule }, { kind: "component", type: i2$7.AXUploaderDropZoneComponent, selector: "ax-uploader-drop-zone", inputs: ["description"] }, { kind: "directive", type: i2$7.AXUploaderZoneDirective, selector: "[axUploaderZone]", inputs: ["multiple", "accept"], outputs: ["onChanged", "onFileUploadComplete", "onFilesUploadComplete"] }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "component", type: i2$1.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
7406
- }
7407
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPFileBoxWidgetEditComponent, decorators: [{
7408
- type: Component,
7409
- args: [{ selector: 'axp-file-widget-edit', template: `
7410
- @if(isLoading()){<ax-loading></ax-loading>}@else{
7411
- <div class="ax-grid ax-grid-cols-12">
7412
- <div class="ax-col-span-12">
7413
- <ax-uploader-drop-zone
7414
- axUploaderZone
7415
- (onChanged)="handleChanged($event)"
7416
- [multiple]="multiple()"
7417
- [accept]="accept()"
7418
- [description]="description()"
7419
- (onFileUploadComplete)="handleOnFileUploadComplete($event)"
7420
- (onFilesUploadComplete)="handleOnFilesUploadComplete($event)"
7421
- ></ax-uploader-drop-zone>
7422
- </div>
7423
- </div>
7424
- <div class="__content fa-xl">
7425
- @for (file of getValue(); track $index) { @let fileInfo = getFileInfo(file.name!);
7426
- <div class="__explorer-item">
7427
- <div class="__icon">
7428
- <i class="fa-fw {{ fileInfo.icon }} fa-solid"></i>
7429
- </div>
7430
- <div class="__name">{{ file.name }}</div>
7431
- <div class="ax-flex ax-gap-2 ax-ml-auto">
7432
- <ax-icon
7433
- class="fa-regular fa-download ax-text-lg ax-cursor-pointer hover:ax-text-primary"
7434
- (click)="handleFileDownload($event, file)"
7435
- ></ax-icon>
7436
- <ax-icon
7437
- class="fa-regular ax-text-lg fa-trash ax-cursor-pointer hover:ax-text-danger"
7438
- (click)="handleOnFileRemove(file)"
7439
- ></ax-icon>
7440
- </div>
7441
- </div>
7442
- }
7443
- </div>
7444
- }
7445
- `, changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, FormsModule, AXButtonModule, AXDecoratorModule, AXUploaderModule, AXLoadingModule], inputs: [], styles: [":host{width:100%}:host .__content{display:flex;flex-direction:column;gap:.125rem}:host .__content .__explorer-item{display:flex;cursor:pointer;align-items:center;gap:.75rem;border-radius:.375rem;padding:.5rem}:host .__content .__explorer-item:hover{background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host .__content .__explorer-item .__icon{width:1.5rem;flex-shrink:0}:host .__content .__explorer-item .__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:start;font-size:.875rem;line-height:1.25rem;font-weight:500}:host .__content .__explorer-item.--selected{background-color:rgb(var(--ax-sys-color-darker-surface));color:rgb(var(--ax-sys-color-on-darker-surface));border-color:rgb(var(--ax-sys-color-border-darker-surface))}\n"] }]
7446
- }], propDecorators: { __class: [{
7447
- type: HostBinding,
7448
- args: ['class']
7449
- }] } });
7450
-
7451
- var fileBoxWidgetEdit_component = /*#__PURE__*/Object.freeze({
7452
- __proto__: null,
7453
- AXPFileBoxWidgetEditComponent: AXPFileBoxWidgetEditComponent
7454
- });
7455
-
7456
- class AXPFileBoxWidgetFilterComponent extends AXPValueWidgetComponent {
7457
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPFileBoxWidgetFilterComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
7458
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.10", type: AXPFileBoxWidgetFilterComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: ``, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
7459
- }
7460
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPFileBoxWidgetFilterComponent, decorators: [{
7461
- type: Component,
7462
- args: [{
7463
- template: ``,
7464
- changeDetection: ChangeDetectionStrategy.OnPush,
7465
- imports: [CommonModule, FormsModule],
7466
- inputs: []
7467
- }]
7468
- }] });
7469
-
7470
- var fileBoxWidgetFilter_component = /*#__PURE__*/Object.freeze({
7471
- __proto__: null,
7472
- AXPFileBoxWidgetFilterComponent: AXPFileBoxWidgetFilterComponent
7473
- });
7474
-
7475
- class AXPFileBoxWidgetPrintComponent extends AXPValueWidgetComponent {
7476
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPFileBoxWidgetPrintComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
7477
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.10", type: AXPFileBoxWidgetPrintComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: ``, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
7478
- }
7479
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPFileBoxWidgetPrintComponent, decorators: [{
7480
- type: Component,
7481
- args: [{
7482
- template: ``,
7483
- changeDetection: ChangeDetectionStrategy.OnPush,
7484
- imports: [CommonModule],
7485
- inputs: []
7486
- }]
7487
- }] });
7488
-
7489
- var fileBoxWidgetPrint_component = /*#__PURE__*/Object.freeze({
7490
- __proto__: null,
7491
- AXPFileBoxWidgetPrintComponent: AXPFileBoxWidgetPrintComponent
7492
- });
7493
-
7494
- class AXPFileBoxWidgetViewComponent extends AXPValueWidgetComponent {
7495
- constructor() {
7496
- super(...arguments);
7497
- this.fileStorageService = inject(AXPFileStorageService);
7498
- this.loadingDialog = inject(AXLoadingDialogService);
7499
- this.translateService = inject(AXTranslationService);
7500
- this.multiple = computed(() => this.options()['multiple']);
7501
- this.downloadable = computed(() => this.options()['downloadable']);
7502
- this.internalValue = signal([]);
7503
- this.downloadSubscription = new Subscription();
7504
- }
7505
- ngOnInit() {
7506
- this.updateInternalValue();
7507
- super.ngOnInit();
7508
- }
7509
- async handleDownload(item) {
7510
- const d = this.loadingDialog.show({
7511
- title: await this.translateService.translateAsync('downloader.dialog.downloading'), // Downloading File
7512
- mode: 'determinate',
7513
- progressColor: 'primary',
7514
- progressValue: 0,
7515
- text: await this.translateService.translateAsync('downloader.dialog.waiting'), // Waiting...
7516
- buttons: [
7517
- {
7518
- text: await this.translateService.translateAsync('downloader.dialog.cancel'),
7519
- color: 'danger',
7520
- onClick: () => {
7521
- this.cancelDownload();
7522
- d.close();
7523
- },
7524
- },
7525
- ],
6990
+ options = { ...defaultOptions, ...options };
6991
+ const component = await import('./acorex-platform-widgets-file-list-popup.component-TNxbcVav.mjs').then(m => m.AXPFileListPopupComponent);
6992
+ const result = await this.popupService.open(component, {
6993
+ title: (await this.translate.translateAsync('@document-management:file')),
6994
+ data: {
6995
+ files: signal(options.files),
6996
+ readOnly: signal(options.readOnly),
6997
+ multiple: signal(options.multiple),
6998
+ accept: signal(options.accept),
6999
+ },
7526
7000
  });
7001
+ return result?.data?.data?.files;
7527
7002
  }
7528
- cancelDownload() {
7529
- this.downloadSubscription.unsubscribe();
7530
- }
7531
- triggerDownload(blob, name) {
7532
- const link = document.createElement('a');
7533
- const url = URL.createObjectURL(blob);
7534
- link.href = url;
7535
- link.download = name || 'asset';
7536
- document.body.appendChild(link);
7537
- link.click();
7538
- document.body.removeChild(link);
7539
- URL.revokeObjectURL(url);
7540
- }
7541
- getFileInfo(extension) {
7542
- switch (extension) {
7543
- case 'txt':
7544
- return { icon: 'fa-file-alt', color: 'ax-bg-blue-100 ax-text-blue-500' };
7545
- case 'pdf':
7546
- return { icon: 'fa-file-pdf', color: 'ax-bg-red-100 ax-text-red-500' };
7547
- case 'doc':
7548
- case 'docx':
7549
- return { icon: 'fa-file-word', color: 'ax-bg-blue-200 ax-text-blue-600' };
7550
- case 'xls':
7551
- case 'xlsx':
7552
- return { icon: 'fa-file-excel', color: 'ax-bg-green-100 ax-text-green-500' };
7553
- case 'ppt':
7554
- case 'pptx':
7555
- return { icon: 'fa-file-powerpoint', color: 'ax-bg-orange-100 ax-text-orange-500' };
7556
- case 'jpg':
7557
- case 'jpeg':
7558
- case 'png':
7559
- case 'gif':
7560
- case 'bmp':
7561
- return { icon: 'fa-file-image', color: 'ax-bg-purple-100 ax-text-purple-500' };
7562
- case 'zip':
7563
- case 'rar':
7564
- case '7z':
7565
- return { icon: 'fa-file-archive', color: 'ax-bg-yellow-100 ax-text-yellow-500' };
7566
- case 'mp3':
7567
- case 'wav':
7568
- case 'ogg':
7569
- return { icon: 'fa-file-audio', color: 'ax-bg-pink-100 ax-text-pink-500' };
7570
- case 'mp4':
7571
- case 'avi':
7572
- case 'mkv':
7573
- case 'mov':
7574
- return { icon: 'fa-file-video', color: 'ax-bg-blue-100 ax-text-blue-500' };
7575
- case 'js':
7576
- case 'jsx':
7577
- case 'ts':
7578
- case 'tsx':
7579
- return { icon: 'fa-file-code', color: 'ax-bg-yellow-100 ax-text-yellow-500' };
7580
- // Add more cases as needed for other file types
7581
- default:
7582
- return { icon: 'fa-file', color: 'ax-bg-gray-100 ax-text-gray-500' };
7583
- }
7584
- }
7585
- async updateInternalValue() {
7586
- if (!this.getValue()) {
7587
- this.internalValue.set([]);
7588
- }
7589
- else {
7590
- if (Array.isArray(this.getValue())) {
7591
- this.internalValue.set(await Promise.all(this.getValue().map(async (item) => await this.fileStorageService.getInfo(item))));
7592
- }
7593
- else {
7594
- this.internalValue.set([await this.fileStorageService.getInfo(this.getValue())]);
7595
- }
7596
- }
7597
- console.log(this.internalValue());
7598
- console.log(this.getValue());
7599
- }
7600
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPFileBoxWidgetViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
7601
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.10", type: AXPFileBoxWidgetViewComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
7602
- <div class="ax-grid ax-grid-cols-12 ax-gap-2">
7603
- @if (multiple()) { @for (item of internalValue(); track item.fileId) {
7604
- <ng-template [ngTemplateOutlet]="itemTemplate" ] [ngTemplateOutletContext]="{ data: item }" ]></ng-template>
7605
- } } @else {
7606
- <ng-template
7607
- [ngTemplateOutlet]="itemTemplate"
7608
- ]
7609
- [ngTemplateOutletContext]="{ data: internalValue()[0] }"
7610
- ]
7611
- ></ng-template>
7612
- }
7613
- <ng-template #itemTemplate let-item="data">
7614
- <div
7615
- *ngIf="item"
7616
- class="ax-flex ax-items-center ax-justify-between ax-p-2 ax-border ax-rounded-lg ax-bg-surface ax-col-start-1 ax-col-end-13"
7617
- >
7618
- <div class="ax-flex ax-items-center ax-gap-3">
7619
- <ng-container *ngIf="getFileInfo(item.mimeType) as fileInfo">
7620
- <div
7621
- class="ax-w-10 ax-h-10 ax-rounded-lg ax-flex ax-items-center ax-justify-center"
7622
- [ngClass]="[fileInfo.color]"
7623
- >
7624
- <i [ngClass]="['fa-solid', 'ax-text-xl', fileInfo.icon]"></i>
7625
- </div>
7626
- </ng-container>
7627
- <div>
7628
- <div class="ax-leading-6">{{ item.fileId }}</div>
7629
- <p class="ax-text-sm ax-text-neutral-400">{{ item.size }}</p>
7630
- </div>
7631
- </div>
7632
- @if (downloadable()) {
7633
- <ax-button
7634
- (onClick)="handleDownload(item)"
7635
- look="blank"
7636
- class="!ax-text-neutral-400 hover:!ax-text-neutral-600"
7637
- >
7638
- <ax-icon>
7639
- <i class="fa-solid fa-download"></i>
7640
- </ax-icon>
7641
- </ax-button>
7642
- }
7643
- </div>
7644
- </ng-template>
7645
- </div>
7646
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i2.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
7003
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPFileUploaderWidgetService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
7004
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPFileUploaderWidgetService, providedIn: 'root' }); }
7647
7005
  }
7648
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPFileBoxWidgetViewComponent, decorators: [{
7649
- type: Component,
7006
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPFileUploaderWidgetService, decorators: [{
7007
+ type: Injectable,
7650
7008
  args: [{
7651
- template: `
7652
- <div class="ax-grid ax-grid-cols-12 ax-gap-2">
7653
- @if (multiple()) { @for (item of internalValue(); track item.fileId) {
7654
- <ng-template [ngTemplateOutlet]="itemTemplate" ] [ngTemplateOutletContext]="{ data: item }" ]></ng-template>
7655
- } } @else {
7656
- <ng-template
7657
- [ngTemplateOutlet]="itemTemplate"
7658
- ]
7659
- [ngTemplateOutletContext]="{ data: internalValue()[0] }"
7660
- ]
7661
- ></ng-template>
7662
- }
7663
- <ng-template #itemTemplate let-item="data">
7664
- <div
7665
- *ngIf="item"
7666
- class="ax-flex ax-items-center ax-justify-between ax-p-2 ax-border ax-rounded-lg ax-bg-surface ax-col-start-1 ax-col-end-13"
7667
- >
7668
- <div class="ax-flex ax-items-center ax-gap-3">
7669
- <ng-container *ngIf="getFileInfo(item.mimeType) as fileInfo">
7670
- <div
7671
- class="ax-w-10 ax-h-10 ax-rounded-lg ax-flex ax-items-center ax-justify-center"
7672
- [ngClass]="[fileInfo.color]"
7673
- >
7674
- <i [ngClass]="['fa-solid', 'ax-text-xl', fileInfo.icon]"></i>
7675
- </div>
7676
- </ng-container>
7677
- <div>
7678
- <div class="ax-leading-6">{{ item.fileId }}</div>
7679
- <p class="ax-text-sm ax-text-neutral-400">{{ item.size }}</p>
7680
- </div>
7681
- </div>
7682
- @if (downloadable()) {
7683
- <ax-button
7684
- (onClick)="handleDownload(item)"
7685
- look="blank"
7686
- class="!ax-text-neutral-400 hover:!ax-text-neutral-600"
7687
- >
7688
- <ax-icon>
7689
- <i class="fa-solid fa-download"></i>
7690
- </ax-icon>
7691
- </ax-button>
7692
- }
7693
- </div>
7694
- </ng-template>
7695
- </div>
7696
- `,
7697
- changeDetection: ChangeDetectionStrategy.OnPush,
7698
- imports: [CommonModule, AXButtonModule, AXDecoratorModule],
7699
- inputs: [],
7009
+ providedIn: 'root'
7700
7010
  }]
7701
7011
  }] });
7702
7012
 
7703
- var fileBoxWidgetView_component = /*#__PURE__*/Object.freeze({
7704
- __proto__: null,
7705
- AXPFileBoxWidgetViewComponent: AXPFileBoxWidgetViewComponent
7706
- });
7707
-
7708
- const AXPFileBoxWidget = {
7709
- name: 'file',
7710
- title: 'File',
7711
- description: 'Uploads and manages files',
7712
- icon: 'fa-light fa-files',
7713
- categories: AXP_WIDGETS_ADVANCE_CATEGORY,
7714
- type: 'editor',
7715
- properties: [
7716
- AXP_NAME_PROPERTY,
7717
- AXP_DATA_PATH_PROPERTY,
7718
- AXP_ALLOW_MULTIPLE_PROPERTY,
7719
- AXP_DOWNLOADABLE_PROPERTY,
7720
- AXP_DESCRIPTION_PROPERTY,
7721
- {
7722
- name: 'accept',
7723
- title: 'Accept',
7724
- group: AXP_BEHAVIOR_PROPERTY_GROUP,
7725
- schema: {
7726
- dataType: 'string',
7727
- interface: {
7728
- name: 'accept',
7729
- path: 'options.accept',
7730
- type: AXPWidgetsCatalog.text,
7731
- },
7732
- },
7733
- visible: true,
7734
- },
7735
- ],
7736
- components: {
7737
- view: {
7738
- component: () => Promise.resolve().then(function () { return fileBoxWidgetView_component; }).then((c) => c.AXPFileBoxWidgetViewComponent),
7739
- },
7740
- edit: {
7741
- component: () => Promise.resolve().then(function () { return fileBoxWidgetEdit_component; }).then((c) => c.AXPFileBoxWidgetEditComponent),
7742
- },
7743
- filter: {
7744
- component: () => Promise.resolve().then(function () { return fileBoxWidgetFilter_component; }).then((c) => c.AXPFileBoxWidgetFilterComponent),
7745
- },
7746
- column: {
7747
- component: () => Promise.resolve().then(function () { return fileBoxWidgetColumn_component; }).then((c) => c.AXPFileBoxWidgetColumnComponent),
7748
- },
7749
- print: {
7750
- component: () => Promise.resolve().then(function () { return fileBoxWidgetPrint_component; }).then((c) => c.AXPFileBoxWidgetPrintComponent),
7751
- },
7752
- designer: {
7753
- component: () => Promise.resolve().then(function () { return fileBoxWidgetEdit_component; }).then((c) => c.AXPFileBoxWidgetEditComponent),
7754
- },
7755
- },
7756
- };
7757
-
7758
- class AXPFileManagementService {
7759
- }
7760
-
7761
7013
  class AXPFileUploaderWidgetColumnComponent extends AXPColumnWidgetComponent {
7762
7014
  constructor() {
7763
7015
  super(...arguments);
7764
7016
  this.count = computed(() => castArray(this.rawValue).length);
7765
- this.popupService = inject(AXPopupService);
7766
- this.translate = inject(AXTranslationService);
7017
+ this.fileService = inject(AXPFileUploaderWidgetService);
7767
7018
  }
7768
7019
  async openFileList() {
7769
- const component = await Promise.resolve().then(function () { return fileList_component; }).then(m => m.AXPFileListComponent);
7770
7020
  const files = this.rawValue;
7771
- this.popupService.open(component, {
7772
- title: (await this.translate.translateAsync('@document-management:file')),
7773
- data: {
7774
- readOnly: signal(true),
7775
- files: signal(files)
7776
- }
7021
+ this.fileService.showFileList({
7022
+ files: files,
7023
+ readOnly: true,
7777
7024
  });
7778
7025
  }
7779
7026
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPFileUploaderWidgetColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
@@ -7809,8 +7056,10 @@ class AXPFileListComponent {
7809
7056
  this.fileTypeService = inject(AXPFileTypeProviderService);
7810
7057
  this.isLoading = signal(true);
7811
7058
  this.fileTypes = signal([]);
7059
+ this.onRemove = output();
7812
7060
  this.readOnly = input(false);
7813
7061
  this.files = input([]);
7062
+ this.displayFiles = computed(() => this.files().filter(file => file.status !== 'deleted'));
7814
7063
  }
7815
7064
  async ngOnInit() {
7816
7065
  this.fileTypes.set(await this.fileTypeService.items());
@@ -7826,11 +7075,10 @@ class AXPFileListComponent {
7826
7075
  };
7827
7076
  }
7828
7077
  async handleFileDownload(file) {
7829
- debugger;
7830
- if (!(file instanceof Blob)) {
7078
+ if (file.source?.kind !== 'blob' || !(file.source.value instanceof Blob)) {
7831
7079
  throw new Error('This action expects a File or Blob object');
7832
7080
  }
7833
- const url = URL.createObjectURL(file);
7081
+ const url = URL.createObjectURL(file.source.value);
7834
7082
  const link = document.createElement('a');
7835
7083
  link.href = url;
7836
7084
  link.download = file.name ?? ''; // Set the desired file name
@@ -7840,11 +7088,12 @@ class AXPFileListComponent {
7840
7088
  URL.revokeObjectURL(url);
7841
7089
  }
7842
7090
  async handleFileRemove(file) {
7091
+ this.onRemove.emit(file);
7843
7092
  }
7844
7093
  ngOnDestroy() {
7845
7094
  }
7846
7095
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPFileListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7847
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.10", type: AXPFileListComponent, isStandalone: true, selector: "axp-file-list", inputs: { readOnly: { classPropertyName: "readOnly", publicName: "readOnly", isSignal: true, isRequired: false, transformFunction: null }, files: { classPropertyName: "files", publicName: "files", isSignal: true, isRequired: false, transformFunction: null } }, providers: [], ngImport: i0, template: "@for (file of files(); track $index) {\n <div class=\"__item\">\n <div class=\"__icon\">\n <i class=\"fa-fw {{ getFileInfo(file.name).icon }} fa-solid\"></i>\n </div>\n <div class=\"__name\">{{ file.name }}</div>\n <div class=\"__actions\">\n <ax-button [look]=\"'blank'\" class=\"ax-sm\" color=\"primary\" (onClick)=\"handleFileDownload(file)\">\n <ax-icon class=\"fa-light fa-download\"></ax-icon>\n </ax-button>\n @if (!readOnly()) {\n <ax-button [look]=\"'blank'\" class=\"ax-sm\" color=\"danger\" (onClick)=\"handleFileRemove(file)\">\n <ax-icon class=\"fa-light fa-trash-can\"></ax-icon>\n </ax-button>\n }\n </div>\n </div>\n} @empty {\n <div class=\"ax-text-center ax-text-muted ax-text-sm\">\n {{ '@document-management:no-files' | translate | async }}\n </div>\n}\n", styles: [":host{display:flex;width:100%;flex-direction:column;gap:.125rem;padding-top:.5rem;padding-bottom:.5rem}:host .__item{display:flex;cursor:pointer;align-items:center;gap:.75rem;border-radius:.375rem;padding:.5rem}:host .__item:hover{background-color:rgb(var(--ax-sys-color-lighter-surface));color:rgb(var(--ax-sys-color-on-lighter-surface));border-color:rgb(var(--ax-sys-color-border-lighter-surface))}:host .__item .__icon{width:1.5rem;flex-shrink:0}:host .__item .__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:start;font-size:.875rem;line-height:1.25rem;font-weight:500}:host .__item .__actions{margin-left:auto;display:flex}\n"], dependencies: [{ kind: "ngmodule", type:
7096
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.10", type: AXPFileListComponent, isStandalone: true, selector: "axp-file-list", inputs: { readOnly: { classPropertyName: "readOnly", publicName: "readOnly", isSignal: true, isRequired: false, transformFunction: null }, files: { classPropertyName: "files", publicName: "files", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onRemove: "onRemove" }, providers: [], ngImport: i0, template: "@for (file of displayFiles(); track $index) {\n <div class=\"__item\">\n <div class=\"__icon\">\n <i class=\"fa-fw {{ getFileInfo(file.name).icon }} fa-solid\"></i>\n </div>\n <div class=\"__name\">{{ file.name }}</div>\n <div class=\"__actions\">\n <ax-button [look]=\"'blank'\" class=\"ax-sm\" color=\"primary\" (onClick)=\"handleFileDownload(file)\">\n <ax-icon class=\"fa-light fa-download\"></ax-icon>\n </ax-button>\n @if (!readOnly()) {\n <ax-button [look]=\"'blank'\" class=\"ax-sm\" color=\"danger\" (onClick)=\"handleFileRemove(file)\">\n <ax-icon class=\"fa-light fa-trash-can\"></ax-icon>\n </ax-button>\n }\n </div>\n </div>\n} @empty {\n <div class=\"ax-text-center ax-text-muted ax-text-sm ax-p-4\">\n {{ '@document-management:no-files' | translate | async }}\n </div>\n}\n", styles: [":host{display:flex;width:100%;flex-direction:column;gap:.125rem;padding-top:.5rem;padding-bottom:.5rem}:host .__item{display:flex;cursor:pointer;align-items:center;gap:.75rem;border-radius:.375rem;padding:.5rem}:host .__item:hover{background-color:rgb(var(--ax-sys-color-lighter-surface));color:rgb(var(--ax-sys-color-on-lighter-surface));border-color:rgb(var(--ax-sys-color-border-lighter-surface))}:host .__item .__icon{width:1.5rem;flex-shrink:0}:host .__item .__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:start;font-size:.875rem;line-height:1.25rem;font-weight:500}:host .__item .__actions{margin-left:auto;display:flex}\n"], dependencies: [{ kind: "ngmodule", type:
7848
7097
  // Angular
7849
7098
  CommonModule }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }, { kind: "ngmodule", type:
7850
7099
  // ACoreX
@@ -7864,20 +7113,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImpo
7864
7113
  AXDecoratorModule,
7865
7114
  AXTranslationModule
7866
7115
  // Platform
7867
- ], providers: [], template: "@for (file of files(); track $index) {\n <div class=\"__item\">\n <div class=\"__icon\">\n <i class=\"fa-fw {{ getFileInfo(file.name).icon }} fa-solid\"></i>\n </div>\n <div class=\"__name\">{{ file.name }}</div>\n <div class=\"__actions\">\n <ax-button [look]=\"'blank'\" class=\"ax-sm\" color=\"primary\" (onClick)=\"handleFileDownload(file)\">\n <ax-icon class=\"fa-light fa-download\"></ax-icon>\n </ax-button>\n @if (!readOnly()) {\n <ax-button [look]=\"'blank'\" class=\"ax-sm\" color=\"danger\" (onClick)=\"handleFileRemove(file)\">\n <ax-icon class=\"fa-light fa-trash-can\"></ax-icon>\n </ax-button>\n }\n </div>\n </div>\n} @empty {\n <div class=\"ax-text-center ax-text-muted ax-text-sm\">\n {{ '@document-management:no-files' | translate | async }}\n </div>\n}\n", styles: [":host{display:flex;width:100%;flex-direction:column;gap:.125rem;padding-top:.5rem;padding-bottom:.5rem}:host .__item{display:flex;cursor:pointer;align-items:center;gap:.75rem;border-radius:.375rem;padding:.5rem}:host .__item:hover{background-color:rgb(var(--ax-sys-color-lighter-surface));color:rgb(var(--ax-sys-color-on-lighter-surface));border-color:rgb(var(--ax-sys-color-border-lighter-surface))}:host .__item .__icon{width:1.5rem;flex-shrink:0}:host .__item .__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:start;font-size:.875rem;line-height:1.25rem;font-weight:500}:host .__item .__actions{margin-left:auto;display:flex}\n"] }]
7116
+ ], providers: [], template: "@for (file of displayFiles(); track $index) {\n <div class=\"__item\">\n <div class=\"__icon\">\n <i class=\"fa-fw {{ getFileInfo(file.name).icon }} fa-solid\"></i>\n </div>\n <div class=\"__name\">{{ file.name }}</div>\n <div class=\"__actions\">\n <ax-button [look]=\"'blank'\" class=\"ax-sm\" color=\"primary\" (onClick)=\"handleFileDownload(file)\">\n <ax-icon class=\"fa-light fa-download\"></ax-icon>\n </ax-button>\n @if (!readOnly()) {\n <ax-button [look]=\"'blank'\" class=\"ax-sm\" color=\"danger\" (onClick)=\"handleFileRemove(file)\">\n <ax-icon class=\"fa-light fa-trash-can\"></ax-icon>\n </ax-button>\n }\n </div>\n </div>\n} @empty {\n <div class=\"ax-text-center ax-text-muted ax-text-sm ax-p-4\">\n {{ '@document-management:no-files' | translate | async }}\n </div>\n}\n", styles: [":host{display:flex;width:100%;flex-direction:column;gap:.125rem;padding-top:.5rem;padding-bottom:.5rem}:host .__item{display:flex;cursor:pointer;align-items:center;gap:.75rem;border-radius:.375rem;padding:.5rem}:host .__item:hover{background-color:rgb(var(--ax-sys-color-lighter-surface));color:rgb(var(--ax-sys-color-on-lighter-surface));border-color:rgb(var(--ax-sys-color-border-lighter-surface))}:host .__item .__icon{width:1.5rem;flex-shrink:0}:host .__item .__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:start;font-size:.875rem;line-height:1.25rem;font-weight:500}:host .__item .__actions{margin-left:auto;display:flex}\n"] }]
7868
7117
  }] });
7869
7118
 
7870
- var fileList_component = /*#__PURE__*/Object.freeze({
7871
- __proto__: null,
7872
- AXPFileListComponent: AXPFileListComponent
7873
- });
7874
-
7875
7119
  class AXPFileUploaderWidgetEditComponent extends AXPValueWidgetComponent {
7876
7120
  constructor() {
7877
7121
  super(...arguments);
7878
7122
  this.fileService = inject(AXFileService);
7879
7123
  this.multiple = computed(() => this.options()['multiple']);
7880
7124
  this.accept = computed(() => this.options()['accept']);
7125
+ this.files = computed(() => this.getValue()?.map(file => ({
7126
+ ...file,
7127
+ })) ?? []);
7881
7128
  }
7882
7129
  async uploadFromComputer() {
7883
7130
  // Use the direct file upload approach when no document type is specified
@@ -7885,7 +7132,44 @@ class AXPFileUploaderWidgetEditComponent extends AXPValueWidgetComponent {
7885
7132
  multiple: this.multiple(),
7886
7133
  accept: this.accept(),
7887
7134
  });
7888
- this.setValue([...(this.getValue() ?? []), ...files]);
7135
+ // if no files are selected, return
7136
+ if (files.length === 0) {
7137
+ return;
7138
+ }
7139
+ // if the widget is not multiple, clear the files
7140
+ if (!this.multiple()) {
7141
+ this.clear();
7142
+ }
7143
+ // create the file upload requests
7144
+ const fileUploadRequests = files.map(file => ({
7145
+ id: AXPDataGenerator.uuid(),
7146
+ name: file.name,
7147
+ size: file.size,
7148
+ type: file.type,
7149
+ status: 'attached',
7150
+ source: {
7151
+ kind: 'blob',
7152
+ value: file
7153
+ }
7154
+ }));
7155
+ this.setValue([...(this.getValue() ?? []), ...fileUploadRequests]);
7156
+ }
7157
+ handleFileRemove(file) {
7158
+ this.removeFile(file);
7159
+ }
7160
+ removeFile(file) {
7161
+ if (file.status === 'attached') {
7162
+ this.setValue(this.getValue()?.filter(f => f.id !== file.id) ?? []);
7163
+ }
7164
+ else {
7165
+ file.status = 'deleted';
7166
+ this.setValue([...(this.getValue() ?? []), file]);
7167
+ }
7168
+ }
7169
+ clear() {
7170
+ for (const file of this.files()) {
7171
+ this.removeFile(file);
7172
+ }
7889
7173
  }
7890
7174
  get __class() {
7891
7175
  const cls = {};
@@ -7897,8 +7181,8 @@ class AXPFileUploaderWidgetEditComponent extends AXPValueWidgetComponent {
7897
7181
  return cls;
7898
7182
  }
7899
7183
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPFileUploaderWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
7900
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.10", type: AXPFileUploaderWidgetEditComponent, isStandalone: true, selector: "axp-file-uploader-widget-edit", host: { properties: { "class": "this.__class" } }, usesInheritance: true, ngImport: i0, template: `
7901
- <div class="ax-flex ax-justify-end ax-border-b ax-p-2" *translate="let t">
7184
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.10", type: AXPFileUploaderWidgetEditComponent, isStandalone: true, selector: "axp-file-uploader-widget-edit", host: { properties: { "class": "this.__class" }, styleAttribute: "border-color: rgba(var(--ax-comp-editor-border-color)); !important;" }, usesInheritance: true, ngImport: i0, template: `
7185
+ <div class="ax-flex ax-justify-end ax-border-b ax-p-2" *translate="let t">
7902
7186
  <!-- Add Item Button -->
7903
7187
  <ax-button class="ax-sm" [text]="t('@document-management:actions.add-item') | async" [color]="'primary'">
7904
7188
  <ax-prefix>
@@ -7921,16 +7205,16 @@ class AXPFileUploaderWidgetEditComponent extends AXPValueWidgetComponent {
7921
7205
  </ax-button>
7922
7206
  </div>
7923
7207
  <div class="ax-p-2">
7924
- <axp-file-list [files]="getValue()"></axp-file-list>
7208
+ <axp-file-list [files]="files()" (onRemove)="handleFileRemove($event)" ></axp-file-list>
7925
7209
  </div>
7926
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i2.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "component", type: i2.AXButtonItemComponent, selector: "ax-button-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "component", type: i2.AXButtonItemListComponent, selector: "ax-button-item-list", inputs: ["items"], outputs: ["onItemClick"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i3.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXUploaderModule }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "ngmodule", type: AXDropdownModule }, { kind: "component", type: i6$1.AXDropdownPanelComponent, selector: "ax-dropdown-panel", inputs: ["isOpen", "fitParent", "dropdownWidth", "position", "placement", "_target", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXPComponentSlotModule }, { kind: "directive", type: i5$2.AXPComponentSlotDirective, selector: "axp-component-slot", inputs: ["name", "host", "context"], exportAs: ["slot"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "directive", type: i6.AXTranslatorDirective, selector: "[translate]" }, { kind: "component", type: AXPFileListComponent, selector: "axp-file-list", inputs: ["readOnly", "files"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
7210
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i2.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "component", type: i2.AXButtonItemComponent, selector: "ax-button-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "component", type: i2.AXButtonItemListComponent, selector: "ax-button-item-list", inputs: ["items"], outputs: ["onItemClick"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i3.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "ngmodule", type: AXDropdownModule }, { kind: "component", type: i6$1.AXDropdownPanelComponent, selector: "ax-dropdown-panel", inputs: ["isOpen", "fitParent", "dropdownWidth", "position", "placement", "_target", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXPComponentSlotModule }, { kind: "directive", type: i5$2.AXPComponentSlotDirective, selector: "axp-component-slot", inputs: ["name", "host", "context"], exportAs: ["slot"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "directive", type: i6.AXTranslatorDirective, selector: "[translate]" }, { kind: "component", type: AXPFileListComponent, selector: "axp-file-list", inputs: ["readOnly", "files"], outputs: ["onRemove"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
7927
7211
  }
7928
7212
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPFileUploaderWidgetEditComponent, decorators: [{
7929
7213
  type: Component,
7930
7214
  args: [{
7931
7215
  selector: 'axp-file-uploader-widget-edit',
7932
7216
  template: `
7933
- <div class="ax-flex ax-justify-end ax-border-b ax-p-2" *translate="let t">
7217
+ <div class="ax-flex ax-justify-end ax-border-b ax-p-2" *translate="let t">
7934
7218
  <!-- Add Item Button -->
7935
7219
  <ax-button class="ax-sm" [text]="t('@document-management:actions.add-item') | async" [color]="'primary'">
7936
7220
  <ax-prefix>
@@ -7953,9 +7237,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImpo
7953
7237
  </ax-button>
7954
7238
  </div>
7955
7239
  <div class="ax-p-2">
7956
- <axp-file-list [files]="getValue()"></axp-file-list>
7240
+ <axp-file-list [files]="files()" (onRemove)="handleFileRemove($event)" ></axp-file-list>
7957
7241
  </div>
7958
7242
  `,
7243
+ host: {
7244
+ style: 'border-color: rgba(var(--ax-comp-editor-border-color)); !important;'
7245
+ },
7959
7246
  changeDetection: ChangeDetectionStrategy.OnPush,
7960
7247
  standalone: true,
7961
7248
  imports: [
@@ -7963,7 +7250,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImpo
7963
7250
  FormsModule,
7964
7251
  AXButtonModule,
7965
7252
  AXDecoratorModule,
7966
- AXUploaderModule,
7967
7253
  AXLoadingModule,
7968
7254
  AXDropdownModule,
7969
7255
  AXPComponentSlotModule,
@@ -8001,6 +7287,13 @@ var fileUploaderWidgetPrint_component = /*#__PURE__*/Object.freeze({
8001
7287
  });
8002
7288
 
8003
7289
  class AXPFileUploaderWidgetViewComponent extends AXPValueWidgetComponent {
7290
+ constructor() {
7291
+ super(...arguments);
7292
+ this.files = computed(() => this.getValue()?.map(file => ({
7293
+ ...file,
7294
+ status: 'uploaded'
7295
+ })) ?? []);
7296
+ }
8004
7297
  get __class() {
8005
7298
  const cls = {};
8006
7299
  cls[`ax-block`] = true;
@@ -8009,15 +7302,15 @@ class AXPFileUploaderWidgetViewComponent extends AXPValueWidgetComponent {
8009
7302
  }
8010
7303
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPFileUploaderWidgetViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
8011
7304
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.10", type: AXPFileUploaderWidgetViewComponent, isStandalone: true, selector: "axp-file-uploader-widget-view", host: { properties: { "class": "this.__class" } }, usesInheritance: true, ngImport: i0, template: `
8012
- <axp-file-list [files]="getValue()" [readOnly]="true"></axp-file-list>
8013
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "ngmodule", type: AXUploaderModule }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "component", type: AXPFileListComponent, selector: "axp-file-list", inputs: ["readOnly", "files"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
7305
+ <axp-file-list [files]="files()" [readOnly]="true"></axp-file-list>
7306
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "ngmodule", type: AXUploaderModule }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "component", type: AXPFileListComponent, selector: "axp-file-list", inputs: ["readOnly", "files"], outputs: ["onRemove"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
8014
7307
  }
8015
7308
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPFileUploaderWidgetViewComponent, decorators: [{
8016
7309
  type: Component,
8017
7310
  args: [{
8018
7311
  selector: 'axp-file-uploader-widget-view',
8019
7312
  template: `
8020
- <axp-file-list [files]="getValue()" [readOnly]="true"></axp-file-list>
7313
+ <axp-file-list [files]="files()" [readOnly]="true"></axp-file-list>
8021
7314
  `,
8022
7315
  changeDetection: ChangeDetectionStrategy.OnPush,
8023
7316
  standalone: true,
@@ -8091,9 +7384,6 @@ const AXPFileUploaderWidget = {
8091
7384
  },
8092
7385
  };
8093
7386
 
8094
- class AXPFileUploaderManagementService {
8095
- }
8096
-
8097
7387
  class AXPGalleryWidgetEditComponent extends AXPValueWidgetComponent {
8098
7388
  constructor() {
8099
7389
  super(...arguments);
@@ -8325,7 +7615,7 @@ class AXPGalleryWidgetViewComponent extends AXPValueWidgetComponent {
8325
7615
  <small>No Media!</small>
8326
7616
  }
8327
7617
  </div>
8328
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: AXImageModule }, { kind: "component", type: i2$8.AXImageComponent, selector: "ax-image", inputs: ["width", "height", "overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i3.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "component", type: i2$1.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
7618
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: AXImageModule }, { kind: "component", type: i2$7.AXImageComponent, selector: "ax-image", inputs: ["width", "height", "overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i3.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "component", type: i2$1.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
8329
7619
  }
8330
7620
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPGalleryWidgetViewComponent, decorators: [{
8331
7621
  type: Component,
@@ -8867,7 +8157,7 @@ class AXPSignatureWidgetEditComponent extends AXPValueWidgetComponent {
8867
8157
  </div>
8868
8158
  }
8869
8159
  </div>
8870
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i2.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i3.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXImageModule }, { kind: "component", type: i2$8.AXImageComponent, selector: "ax-image", inputs: ["width", "height", "overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
8160
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i2.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i3.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXImageModule }, { kind: "component", type: i2$7.AXImageComponent, selector: "ax-image", inputs: ["width", "height", "overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
8871
8161
  }
8872
8162
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPSignatureWidgetEditComponent, decorators: [{
8873
8163
  type: Component,
@@ -8965,7 +8255,7 @@ class AXPSignatureWidgetViewComponent extends AXPValueWidgetComponent {
8965
8255
  <span>{{placeholder()}}</span>
8966
8256
  }
8967
8257
  </div>
8968
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXImageModule }, { kind: "component", type: i2$8.AXImageComponent, selector: "ax-image", inputs: ["width", "height", "overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
8258
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXImageModule }, { kind: "component", type: i2$7.AXImageComponent, selector: "ax-image", inputs: ["width", "height", "overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
8969
8259
  }
8970
8260
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPSignatureWidgetViewComponent, decorators: [{
8971
8261
  type: Component,
@@ -11375,7 +10665,7 @@ class AXPBorderWidgetEditComponent extends AXPValueWidgetComponent {
11375
10665
  };
11376
10666
  }
11377
10667
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPBorderWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
11378
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.10", type: AXPBorderWidgetEditComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "allBorderEl", first: true, predicate: ["allBorderEl"], descendants: true, isSignal: true }, { propertyName: "allRadiusEl", first: true, predicate: ["allRadiusEl"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"ax-pt-2 axp-border-container\">\n <div class=\"ax-radius-box ax-flex ax-justify-between ax-items-center ax-gap-2 ax-h-[26px]\">\n <span class=\"ax-text-sm ax-font-light\">Radius</span>\n <div class=\"ax-flex ax-gap-2 ax-items-center\">\n <button\n #allRadiusEl\n (pointerdown)=\"handleActiveRadiusSide($event)\"\n name=\"all\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M2.5 5.5C2.5 3.84315 3.84315 2.5 5.5 2.5H10.5C12.1569 2.5 13.5 3.84315 13.5 5.5V10.5C13.5 12.1569 12.1569 13.5 10.5 13.5H5.5C3.84315 13.5 2.5 12.1569 2.5 10.5V5.5Z\"\n stroke=\"currentColor\"\n ></path>\n </svg>\n </button>\n\n <button\n (pointerdown)=\"handleActiveRadiusSide($event)\"\n name=\"sides\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M4.5 2C3.11929 2 2 3.11929 2 4.5V7H3V4.5C3 3.67157 3.67157 3 4.5 3H7V2H4.5Z\"\n fill=\"currentColor\"\n ></path>\n <path\n d=\"M9 2V3H11.5C12.3284 3 13 3.67157 13 4.5V7H14V4.5C14 3.11929 12.8807 2 11.5 2H9Z\"\n fill=\"currentColor\"\n ></path>\n <path\n d=\"M14 9H13V11.5C13 12.3284 12.3284 13 11.5 13H9V14H11.5C12.8807 14 14 12.8807 14 11.5V9Z\"\n fill=\"currentColor\"\n ></path>\n <path\n d=\"M7 14V13H4.5C3.67157 13 3 12.3284 3 11.5V9H2V11.5C2 12.8807 3.11929 14 4.5 14H7Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n </button>\n\n @if(currentActiveRadiusSide() ==='all'){\n <div class=\"ax-flex ax-justify-center ax-items-center ax-flex-shrink\">\n <ax-range-slider\n [values]=\"allRadius()\"\n [min]=\"0\"\n [max]=\"100\"\n (valuesChange)=\"setBorder($event ?? 0, 'radius', 'all')\"\n class=\"ax-min-w-28\"\n ></ax-range-slider>\n </div>\n <div class=\"ax-flex ax-justify-start ax-items-center\">\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"100\"\n [value]=\"allRadius()\"\n [changeOnScroll]=\"true\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'all')\"\n class=\"ax-min-w-8\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n }@else{\n <div class=\"ax-w-48\"></div>\n }\n </div>\n </div>\n\n <div\n class=\"axp-border-radius-sides ax-flex ax-justify-end ax-items-center ax-overflow-y-hidden ax-transition-[height] ax-duration-300 ax-ease-in-out\"\n [class]=\"currentActiveRadiusSide() === 'all' ? '!ax-h-0' : '!ax-h-[56px]'\"\n >\n <div class=\"ax-grid ax-grid-cols-2 ax-grid-rows-2 ax-gap-2\">\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g opacity=\"0.4\">\n <path d=\"M14 14V9H13V13H9V14H14Z\" fill=\"currentColor\"></path>\n <path d=\"M7 14V13H3V9H2V14H7Z\" fill=\"currentColor\"></path>\n <path d=\"M2 7H3V6.5C3 4.567 4.567 3 6.5 3H7V2H6.5C4.01472 2 2 4.01472 2 6.5V7Z\" fill=\"currentColor\"></path>\n <path d=\"M9 2V3H13V7H14V2H9Z\" fill=\"currentColor\"></path>\n </g>\n <path d=\"M2.5 7V6.5C2.5 4.29086 4.29086 2.5 6.5 2.5H7\" stroke=\"currentColor\"></path>\n </svg>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-12\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"calculatedValues().radius['top-left']\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'top-left')\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n </div>\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g opacity=\"0.4\">\n <path d=\"M2 14V9H3V13H7V14H2Z\" fill=\"currentColor\"></path>\n <path d=\"M9 14V13H13V9H14V14H9Z\" fill=\"currentColor\"></path>\n <path\n d=\"M14 7H13V6.5C13 4.567 11.433 3 9.5 3H9V2H9.5C11.9853 2 14 4.01472 14 6.5V7Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M7 2V3H3V7H2V2H7Z\" fill=\"currentColor\"></path>\n </g>\n <path d=\"M13.5 7V6.5C13.5 4.29086 11.7091 2.5 9.5 2.5H9\" stroke=\"currentColor\"></path>\n </svg>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-12\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"calculatedValues().radius['top-right']\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'top-right')\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n </div>\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g opacity=\"0.4\">\n <path d=\"M2 2V7H3V3H7V2H2Z\" fill=\"currentColor\"></path>\n <path d=\"M9 2V3H13V7H14V2H9Z\" fill=\"currentColor\"></path>\n <path d=\"M14 9H13V13H9V14H14V9Z\" fill=\"currentColor\"></path>\n <path\n d=\"M7 14V13H6.5C4.567 13 3 11.433 3 9.5V9H2V9.5C2 11.9853 4.01472 14 6.5 14H7Z\"\n fill=\"currentColor\"\n ></path>\n </g>\n <path d=\"M2.5 9V9.5C2.5 11.7091 4.29086 13.5 6.5 13.5H7\" stroke=\"currentColor\"></path>\n </svg>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-12\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"calculatedValues().radius['bottom-left']\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'bottom-left')\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n </div>\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g opacity=\"0.4\">\n <path d=\"M2 2V7H3V3H7V2H2Z\" fill=\"currentColor\"></path>\n <path d=\"M9 2V3H13V7H14V2H9Z\" fill=\"currentColor\"></path>\n <path\n d=\"M14 9H13V11.5C13 12.3284 12.3284 13 11.5 13H9V14H11.5C12.8807 14 14 12.8807 14 11.5V9Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M7 14V13H3V9H2V14H7Z\" fill=\"currentColor\"></path>\n </g>\n <path d=\"M13.5 9V9.5C13.5 11.7091 11.7091 13.5 9.5 13.5H9\" stroke=\"currentColor\"></path>\n </svg>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-12\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"calculatedValues().radius['bottom-right']\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'bottom-right')\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"ax-flex ax-justify-between ax-items-center ax-py-1\">\n <span class=\"ax-text-sm ax-font-light\">Borders</span>\n </div>\n\n <div class=\"ax-border-box ax-flex ax-justify-between ax-items-center ax-gap-4\">\n <div class=\"ax-grid ax-grid-cols-3 ax-grid-rows-3 ax-gap-1 ax-flex-shrink-0\">\n <!-- Top Border -->\n <div class=\"ax-border-box-top ax-col-start-2 ax-row-start-1\">\n <button\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"top\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2 13C2 13.5523 2.44772 14 3 14H13C13.5523 14 14 13.5523 14 13V5H13V13H3V5H2V13Z\"\n fill=\"currentColor\"\n ></path>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2 3H14V2H2V3Z\" fill=\"currentColor\"></path>\n </svg>\n </button>\n </div>\n\n <!-- Right Border -->\n <div class=\"ax-border-box-right ax-col-start-3 ax-row-start-2\">\n <button\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"right\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M3 2C2.44772 2 2 2.44772 2 3L2 13C2 13.5523 2.44772 14 3 14L11 14L11 13L3 13L3 3L11 3L11 2L3 2Z\"\n fill=\"currentColor\"\n ></path>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M13 2L13 14L14 14L14 2L13 2Z\" fill=\"currentColor\"></path>\n </svg>\n </button>\n </div>\n\n <!-- Bottom Border -->\n <div class=\"ax-border-box-bottom ax-col-start-2 ax-row-start-3\">\n <button\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"bottom\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2 3C2 2.44772 2.44772 2 3 2H13C13.5523 2 14 2.44772 14 3V11H13V3H3V11H2V3Z\"\n fill=\"currentColor\"\n ></path>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2 13H14V14H2V13Z\" fill=\"currentColor\"></path>\n </svg>\n </button>\n </div>\n\n <!-- Left Border -->\n <div class=\"ax-border-box-left ax-col-start-1 ax-row-start-2\">\n <button\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"left\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M13 2C13.5523 2 14 2.44772 14 3L14 13C14 13.5523 13.5523 14 13 14L5 14L5 13L13 13L13 3L5 3L5 2L13 2Z\"\n fill=\"currentColor\"\n ></path>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M3 2L3 14L2 14L2 2L3 2Z\" fill=\"currentColor\"></path>\n </svg>\n </button>\n </div>\n\n <!-- All -->\n <div class=\"ax-border-box-all ax-col-start-2 ax-row-start-2\">\n <button\n #allBorderEl\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"all\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2 3C2 2.44772 2.44772 2 3 2H13C13.5523 2 14 2.44772 14 3V13C14 13.5523 13.5523 14 13 14H3C2.44772 14 2 13.5523 2 13V3ZM13 3L3 3V13H13V3Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n </button>\n </div>\n </div>\n <div class=\"ax-grid ax-grid-cols-[auto_1fr] ax-items-center ax-gap-x-2 ax-gap-y-2\">\n <div class=\"ax-text-sm ax-font-light\">Style</div>\n <ax-button-group [selection]=\"'single'\">\n <ax-button-group-item\n (onClick)=\"setBorder('none', 'style', currentActiveSide())\"\n [selected]=\"shownStyle() === 'none'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M8.70714 8.00004L12.3536 4.35359L11.6465 3.64648L8.00004 7.29293L4.35359 3.64648L3.64648 4.35359L7.29293 8.00004L3.64648 11.6465L4.35359 12.3536L8.00004 8.70714L11.6465 12.3536L12.3536 11.6465L8.70714 8.00004Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item\n (onClick)=\"setBorder('solid', 'style', currentActiveSide())\"\n [selected]=\"shownStyle() === 'solid'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M2 7.5H14\" stroke=\"currentColor\"></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item\n (onClick)=\"setBorder('dashed', 'style', currentActiveSide())\"\n [selected]=\"shownStyle() === 'dashed'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M5 7H2V8H5V7ZM11 8H12H14V7H12H11V8ZM9.5 7H6.5V8H9.5V7Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item\n (onClick)=\"setBorder('dotted', 'style', currentActiveSide())\"\n [selected]=\"shownStyle() === 'dotted'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4 7H3V8H4V7ZM6 7H5V8H6V7ZM7 7H8V8H7V7ZM10 7H9V8H10V7ZM11 7H12V8H11V7ZM14 7H13V8H14V7Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n </ax-button-group>\n <div class=\"ax-contents\" [class]=\"shownStyle() === 'none' ? 'ax-invisible' : 'ax-visible'\">\n <div class=\"ax-text-sm ax-font-light\">Width</div>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-36\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"shownWidth()\"\n (valueChange)=\"setBorder($event ?? 0, 'width', currentActiveSide())\"\n class=\"ax-min-w-8 ax-exclude\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text>PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n\n <div class=\"ax-text-sm ax-font-light\">Color</div>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-36 ax-overflow-hidden\">\n <ax-color-box\n [value]=\"shownColor()\"\n (valueChange)=\"setBorder($event, 'color', currentActiveSide())\"\n ></ax-color-box>\n </div>\n </div>\n </div>\n </div>\n</div>\n", styles: [".axp-border-container{--hover-effect: #404040;--focus-color: rgba(0, 106, 204, .18);--ax-range-slider-base-thickness: .15rem}.axp-border-container ax-range-slider{padding:.5rem!important}.axp-border-container ax-number-box:not(.ax-exclude) div:first-child{height:1.5rem!important;border-radius:.25rem!important;font-size:12px}.axp-border-container ax-number-box:not(.ax-exclude) div:first-child input{padding:.25rem 0 .25rem .25rem!important}\n"], dependencies: [{ kind: "ngmodule", type: AXNumberBoxModule }, { kind: "component", type: i1$4.AXNumberBoxComponent, selector: "ax-number-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "type", "changeOnScroll", "thousandsSeparator", "padDecimalZeros", "step", "decimals", "decimalStep", "showSpinButtons", "minValue", "maxValue", "class"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXCheckBoxModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXRangeSliderModule }, { kind: "component", type: i7$1.AXRangeSliderComponent, selector: "ax-range-slider", inputs: ["disabled", "readonly", "orientation", "color", "values", "mode", "min", "max", "step", "snap", "tooltipMode", "snapMode", "hasStep", "hasSnap", "hasLable", "hasTooltip"], outputs: ["valuesChange"] }, { kind: "ngmodule", type: AXButtonGroupModule }, { kind: "component", type: i1$8.AXButtonGroupComponent, selector: "ax-button-group", inputs: ["disabled", "color", "look", "selection"], outputs: ["onBlur", "onFocus", "lookChange", "colorChange", "disabledChange", "onClick", "selectionChange", "selectedButtonChange"] }, { kind: "component", type: i1$8.AXButtonGroupItemComponent, selector: "ax-button-group-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "ngmodule", type: AXColorBoxModule }, { kind: "component", type: i2$9.AXColorBoxComponent, selector: "ax-color-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "showBadge", "showValue", "showClearButton", "showIcon"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
10668
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.10", type: AXPBorderWidgetEditComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "allBorderEl", first: true, predicate: ["allBorderEl"], descendants: true, isSignal: true }, { propertyName: "allRadiusEl", first: true, predicate: ["allRadiusEl"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"ax-pt-2 axp-border-container\">\n <div class=\"ax-radius-box ax-flex ax-justify-between ax-items-center ax-gap-2 ax-h-[26px]\">\n <span class=\"ax-text-sm ax-font-light\">Radius</span>\n <div class=\"ax-flex ax-gap-2 ax-items-center\">\n <button\n #allRadiusEl\n (pointerdown)=\"handleActiveRadiusSide($event)\"\n name=\"all\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M2.5 5.5C2.5 3.84315 3.84315 2.5 5.5 2.5H10.5C12.1569 2.5 13.5 3.84315 13.5 5.5V10.5C13.5 12.1569 12.1569 13.5 10.5 13.5H5.5C3.84315 13.5 2.5 12.1569 2.5 10.5V5.5Z\"\n stroke=\"currentColor\"\n ></path>\n </svg>\n </button>\n\n <button\n (pointerdown)=\"handleActiveRadiusSide($event)\"\n name=\"sides\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M4.5 2C3.11929 2 2 3.11929 2 4.5V7H3V4.5C3 3.67157 3.67157 3 4.5 3H7V2H4.5Z\"\n fill=\"currentColor\"\n ></path>\n <path\n d=\"M9 2V3H11.5C12.3284 3 13 3.67157 13 4.5V7H14V4.5C14 3.11929 12.8807 2 11.5 2H9Z\"\n fill=\"currentColor\"\n ></path>\n <path\n d=\"M14 9H13V11.5C13 12.3284 12.3284 13 11.5 13H9V14H11.5C12.8807 14 14 12.8807 14 11.5V9Z\"\n fill=\"currentColor\"\n ></path>\n <path\n d=\"M7 14V13H4.5C3.67157 13 3 12.3284 3 11.5V9H2V11.5C2 12.8807 3.11929 14 4.5 14H7Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n </button>\n\n @if(currentActiveRadiusSide() ==='all'){\n <div class=\"ax-flex ax-justify-center ax-items-center ax-flex-shrink\">\n <ax-range-slider\n [values]=\"allRadius()\"\n [min]=\"0\"\n [max]=\"100\"\n (valuesChange)=\"setBorder($event ?? 0, 'radius', 'all')\"\n class=\"ax-min-w-28\"\n ></ax-range-slider>\n </div>\n <div class=\"ax-flex ax-justify-start ax-items-center\">\n <ax-number-box\n [minValue]=\"0\"\n [maxValue]=\"100\"\n [value]=\"allRadius()\"\n [changeOnScroll]=\"true\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'all')\"\n class=\"ax-min-w-8\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n }@else{\n <div class=\"ax-w-48\"></div>\n }\n </div>\n </div>\n\n <div\n class=\"axp-border-radius-sides ax-flex ax-justify-end ax-items-center ax-overflow-y-hidden ax-transition-[height] ax-duration-300 ax-ease-in-out\"\n [class]=\"currentActiveRadiusSide() === 'all' ? '!ax-h-0' : '!ax-h-[56px]'\"\n >\n <div class=\"ax-grid ax-grid-cols-2 ax-grid-rows-2 ax-gap-2\">\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g opacity=\"0.4\">\n <path d=\"M14 14V9H13V13H9V14H14Z\" fill=\"currentColor\"></path>\n <path d=\"M7 14V13H3V9H2V14H7Z\" fill=\"currentColor\"></path>\n <path d=\"M2 7H3V6.5C3 4.567 4.567 3 6.5 3H7V2H6.5C4.01472 2 2 4.01472 2 6.5V7Z\" fill=\"currentColor\"></path>\n <path d=\"M9 2V3H13V7H14V2H9Z\" fill=\"currentColor\"></path>\n </g>\n <path d=\"M2.5 7V6.5C2.5 4.29086 4.29086 2.5 6.5 2.5H7\" stroke=\"currentColor\"></path>\n </svg>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-12\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"calculatedValues().radius['top-left']\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'top-left')\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n </div>\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g opacity=\"0.4\">\n <path d=\"M2 14V9H3V13H7V14H2Z\" fill=\"currentColor\"></path>\n <path d=\"M9 14V13H13V9H14V14H9Z\" fill=\"currentColor\"></path>\n <path\n d=\"M14 7H13V6.5C13 4.567 11.433 3 9.5 3H9V2H9.5C11.9853 2 14 4.01472 14 6.5V7Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M7 2V3H3V7H2V2H7Z\" fill=\"currentColor\"></path>\n </g>\n <path d=\"M13.5 7V6.5C13.5 4.29086 11.7091 2.5 9.5 2.5H9\" stroke=\"currentColor\"></path>\n </svg>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-12\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"calculatedValues().radius['top-right']\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'top-right')\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n </div>\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g opacity=\"0.4\">\n <path d=\"M2 2V7H3V3H7V2H2Z\" fill=\"currentColor\"></path>\n <path d=\"M9 2V3H13V7H14V2H9Z\" fill=\"currentColor\"></path>\n <path d=\"M14 9H13V13H9V14H14V9Z\" fill=\"currentColor\"></path>\n <path\n d=\"M7 14V13H6.5C4.567 13 3 11.433 3 9.5V9H2V9.5C2 11.9853 4.01472 14 6.5 14H7Z\"\n fill=\"currentColor\"\n ></path>\n </g>\n <path d=\"M2.5 9V9.5C2.5 11.7091 4.29086 13.5 6.5 13.5H7\" stroke=\"currentColor\"></path>\n </svg>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-12\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"calculatedValues().radius['bottom-left']\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'bottom-left')\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n </div>\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <g opacity=\"0.4\">\n <path d=\"M2 2V7H3V3H7V2H2Z\" fill=\"currentColor\"></path>\n <path d=\"M9 2V3H13V7H14V2H9Z\" fill=\"currentColor\"></path>\n <path\n d=\"M14 9H13V11.5C13 12.3284 12.3284 13 11.5 13H9V14H11.5C12.8807 14 14 12.8807 14 11.5V9Z\"\n fill=\"currentColor\"\n ></path>\n <path d=\"M7 14V13H3V9H2V14H7Z\" fill=\"currentColor\"></path>\n </g>\n <path d=\"M13.5 9V9.5C13.5 11.7091 11.7091 13.5 9.5 13.5H9\" stroke=\"currentColor\"></path>\n </svg>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-12\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"calculatedValues().radius['bottom-right']\"\n (valueChange)=\"setBorder($event ?? 0, 'radius', 'bottom-right')\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text class=\"!ax-text-xs !ax-px-1\">PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"ax-flex ax-justify-between ax-items-center ax-py-1\">\n <span class=\"ax-text-sm ax-font-light\">Borders</span>\n </div>\n\n <div class=\"ax-border-box ax-flex ax-justify-between ax-items-center ax-gap-4\">\n <div class=\"ax-grid ax-grid-cols-3 ax-grid-rows-3 ax-gap-1 ax-flex-shrink-0\">\n <!-- Top Border -->\n <div class=\"ax-border-box-top ax-col-start-2 ax-row-start-1\">\n <button\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"top\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2 13C2 13.5523 2.44772 14 3 14H13C13.5523 14 14 13.5523 14 13V5H13V13H3V5H2V13Z\"\n fill=\"currentColor\"\n ></path>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2 3H14V2H2V3Z\" fill=\"currentColor\"></path>\n </svg>\n </button>\n </div>\n\n <!-- Right Border -->\n <div class=\"ax-border-box-right ax-col-start-3 ax-row-start-2\">\n <button\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"right\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M3 2C2.44772 2 2 2.44772 2 3L2 13C2 13.5523 2.44772 14 3 14L11 14L11 13L3 13L3 3L11 3L11 2L3 2Z\"\n fill=\"currentColor\"\n ></path>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M13 2L13 14L14 14L14 2L13 2Z\" fill=\"currentColor\"></path>\n </svg>\n </button>\n </div>\n\n <!-- Bottom Border -->\n <div class=\"ax-border-box-bottom ax-col-start-2 ax-row-start-3\">\n <button\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"bottom\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2 3C2 2.44772 2.44772 2 3 2H13C13.5523 2 14 2.44772 14 3V11H13V3H3V11H2V3Z\"\n fill=\"currentColor\"\n ></path>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2 13H14V14H2V13Z\" fill=\"currentColor\"></path>\n </svg>\n </button>\n </div>\n\n <!-- Left Border -->\n <div class=\"ax-border-box-left ax-col-start-1 ax-row-start-2\">\n <button\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"left\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n opacity=\"0.4\"\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M13 2C13.5523 2 14 2.44772 14 3L14 13C14 13.5523 13.5523 14 13 14L5 14L5 13L13 13L13 3L5 3L5 2L13 2Z\"\n fill=\"currentColor\"\n ></path>\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M3 2L3 14L2 14L2 2L3 2Z\" fill=\"currentColor\"></path>\n </svg>\n </button>\n </div>\n\n <!-- All -->\n <div class=\"ax-border-box-all ax-col-start-2 ax-row-start-2\">\n <button\n #allBorderEl\n (pointerdown)=\"handleActiveBorderSide($event)\"\n name=\"all\"\n class=\"ax-p-1 hover:!ax-bg-[var(--hover-effect)]\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M2 3C2 2.44772 2.44772 2 3 2H13C13.5523 2 14 2.44772 14 3V13C14 13.5523 13.5523 14 13 14H3C2.44772 14 2 13.5523 2 13V3ZM13 3L3 3V13H13V3Z\"\n fill=\"currentColor\"\n ></path>\n </svg>\n </button>\n </div>\n </div>\n <div class=\"ax-grid ax-grid-cols-[auto_1fr] ax-items-center ax-gap-x-2 ax-gap-y-2\">\n <div class=\"ax-text-sm ax-font-light\">Style</div>\n <ax-button-group [selection]=\"'single'\">\n <ax-button-group-item\n (onClick)=\"setBorder('none', 'style', currentActiveSide())\"\n [selected]=\"shownStyle() === 'none'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M8.70714 8.00004L12.3536 4.35359L11.6465 3.64648L8.00004 7.29293L4.35359 3.64648L3.64648 4.35359L7.29293 8.00004L3.64648 11.6465L4.35359 12.3536L8.00004 8.70714L11.6465 12.3536L12.3536 11.6465L8.70714 8.00004Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item\n (onClick)=\"setBorder('solid', 'style', currentActiveSide())\"\n [selected]=\"shownStyle() === 'solid'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M2 7.5H14\" stroke=\"currentColor\"></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item\n (onClick)=\"setBorder('dashed', 'style', currentActiveSide())\"\n [selected]=\"shownStyle() === 'dashed'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M5 7H2V8H5V7ZM11 8H12H14V7H12H11V8ZM9.5 7H6.5V8H9.5V7Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n <ax-button-group-item\n (onClick)=\"setBorder('dotted', 'style', currentActiveSide())\"\n [selected]=\"shownStyle() === 'dotted'\"\n ><ax-prefix\n ><svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M4 7H3V8H4V7ZM6 7H5V8H6V7ZM7 7H8V8H7V7ZM10 7H9V8H10V7ZM11 7H12V8H11V7ZM14 7H13V8H14V7Z\"\n fill=\"currentColor\"\n ></path></svg></ax-prefix\n ></ax-button-group-item>\n </ax-button-group>\n <div class=\"ax-contents\" [class]=\"shownStyle() === 'none' ? 'ax-invisible' : 'ax-visible'\">\n <div class=\"ax-text-sm ax-font-light\">Width</div>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-36\">\n <ax-number-box\n [minValue]=\"0\"\n [changeOnScroll]=\"true\"\n [value]=\"shownWidth()\"\n (valueChange)=\"setBorder($event ?? 0, 'width', currentActiveSide())\"\n class=\"ax-min-w-8 ax-exclude\"\n [showSpinButtons]=\"false\"\n ><ax-suffix><ax-text>PX</ax-text></ax-suffix></ax-number-box\n >\n </div>\n\n <div class=\"ax-text-sm ax-font-light\">Color</div>\n <div class=\"ax-flex ax-justify-start ax-items-center ax-max-w-36 ax-overflow-hidden\">\n <ax-color-box\n [value]=\"shownColor()\"\n (valueChange)=\"setBorder($event, 'color', currentActiveSide())\"\n ></ax-color-box>\n </div>\n </div>\n </div>\n </div>\n</div>\n", styles: [".axp-border-container{--hover-effect: #404040;--focus-color: rgba(0, 106, 204, .18);--ax-range-slider-base-thickness: .15rem}.axp-border-container ax-range-slider{padding:.5rem!important}.axp-border-container ax-number-box:not(.ax-exclude) div:first-child{height:1.5rem!important;border-radius:.25rem!important;font-size:12px}.axp-border-container ax-number-box:not(.ax-exclude) div:first-child input{padding:.25rem 0 .25rem .25rem!important}\n"], dependencies: [{ kind: "ngmodule", type: AXNumberBoxModule }, { kind: "component", type: i1$4.AXNumberBoxComponent, selector: "ax-number-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "type", "changeOnScroll", "thousandsSeparator", "padDecimalZeros", "step", "decimals", "decimalStep", "showSpinButtons", "minValue", "maxValue", "class"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXCheckBoxModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXRangeSliderModule }, { kind: "component", type: i7$1.AXRangeSliderComponent, selector: "ax-range-slider", inputs: ["disabled", "readonly", "orientation", "color", "values", "mode", "min", "max", "step", "snap", "tooltipMode", "snapMode", "hasStep", "hasSnap", "hasLable", "hasTooltip"], outputs: ["valuesChange"] }, { kind: "ngmodule", type: AXButtonGroupModule }, { kind: "component", type: i1$8.AXButtonGroupComponent, selector: "ax-button-group", inputs: ["disabled", "color", "look", "selection"], outputs: ["onBlur", "onFocus", "lookChange", "colorChange", "disabledChange", "onClick", "selectionChange", "selectedButtonChange"] }, { kind: "component", type: i1$8.AXButtonGroupItemComponent, selector: "ax-button-group-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "ngmodule", type: AXColorBoxModule }, { kind: "component", type: i2$8.AXColorBoxComponent, selector: "ax-color-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "showBadge", "showValue", "showClearButton", "showIcon"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
11379
10669
  }
11380
10670
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPBorderWidgetEditComponent, decorators: [{
11381
10671
  type: Component,
@@ -12882,7 +12172,7 @@ class AXPCronJobWidgetEditComponent extends AXPValueWidgetComponent {
12882
12172
  this.setValue(e.data);
12883
12173
  }
12884
12174
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPCronJobWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
12885
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.10", type: AXPCronJobWidgetEditComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `<ax-cron-job-container [ngModel]="expreesion()"> </ax-cron-job-container>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXCronJobModule }, { kind: "component", type: i2$a.AXCronJobContainerComponent, selector: "ax-cron-job-container", outputs: ["onValueChanged"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12175
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.10", type: AXPCronJobWidgetEditComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `<ax-cron-job-container [ngModel]="expreesion()"> </ax-cron-job-container>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXCronJobModule }, { kind: "component", type: i2$9.AXCronJobContainerComponent, selector: "ax-cron-job-container", outputs: ["onValueChanged"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12886
12176
  }
12887
12177
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPCronJobWidgetEditComponent, decorators: [{
12888
12178
  type: Component,
@@ -12962,7 +12252,7 @@ class AXPCronJobWidgetDesignerComponent extends AXPValueWidgetComponent {
12962
12252
  this.expreesion = signal('* * * ? * * *');
12963
12253
  }
12964
12254
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPCronJobWidgetDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
12965
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.10", type: AXPCronJobWidgetDesignerComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `<ax-cron-job-container [ngModel]="expreesion()"> </ax-cron-job-container>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXCronJobModule }, { kind: "component", type: i2$a.AXCronJobContainerComponent, selector: "ax-cron-job-container", outputs: ["onValueChanged"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12255
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.10", type: AXPCronJobWidgetDesignerComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `<ax-cron-job-container [ngModel]="expreesion()"> </ax-cron-job-container>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXCronJobModule }, { kind: "component", type: i2$9.AXCronJobContainerComponent, selector: "ax-cron-job-container", outputs: ["onValueChanged"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12966
12256
  }
12967
12257
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPCronJobWidgetDesignerComponent, decorators: [{
12968
12258
  type: Component,
@@ -13188,7 +12478,7 @@ class AXPColorBoxWidgetEditComponent extends AXPValueWidgetComponent {
13188
12478
  <ax-clear-button></ax-clear-button>
13189
12479
  }
13190
12480
  </ax-color-box>
13191
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXColorBoxModule }, { kind: "component", type: i2$9.AXColorBoxComponent, selector: "ax-color-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "showBadge", "showValue", "showClearButton", "showIcon"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorClearButtonComponent, selector: "ax-clear-button", inputs: ["icon"] }, { kind: "ngmodule", type: AXFormModule }, { kind: "directive", type: i4.AXValidationRuleDirective, selector: "ax-validation-rule", inputs: ["rule", "options", "message", "disabled"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12481
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXColorBoxModule }, { kind: "component", type: i2$8.AXColorBoxComponent, selector: "ax-color-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "showBadge", "showValue", "showClearButton", "showIcon"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorClearButtonComponent, selector: "ax-clear-button", inputs: ["icon"] }, { kind: "ngmodule", type: AXFormModule }, { kind: "directive", type: i4.AXValidationRuleDirective, selector: "ax-validation-rule", inputs: ["rule", "options", "message", "disabled"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
13192
12482
  }
13193
12483
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPColorBoxWidgetEditComponent, decorators: [{
13194
12484
  type: Component,
@@ -14143,7 +13433,7 @@ class AXPTimerDurationWidgetEditComponent extends AXPValueWidgetComponent {
14143
13433
  [valueEnd]="to()"
14144
13434
  [disabled]="disabled()"
14145
13435
  >
14146
- </ax-time-duration>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXTimeDurationModule }, { kind: "component", type: i2$b.AXTimeDurationComponent, selector: "ax-time-duration", inputs: ["disabled", "tabIndex", "readonly", "look", "valueStart", "valueEnd"], outputs: ["onValueChanged"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
13436
+ </ax-time-duration>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXTimeDurationModule }, { kind: "component", type: i2$a.AXTimeDurationComponent, selector: "ax-time-duration", inputs: ["disabled", "tabIndex", "readonly", "look", "valueStart", "valueEnd"], outputs: ["onValueChanged"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
14147
13437
  }
14148
13438
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPTimerDurationWidgetEditComponent, decorators: [{
14149
13439
  type: Component,
@@ -16525,7 +15815,6 @@ class AXPWidgetsModule {
16525
15815
  AXPLargeTextWidget,
16526
15816
  AXPMapBoxWidget,
16527
15817
  AXPCronJobWidget,
16528
- AXPFileBoxWidget,
16529
15818
  AXPFileUploaderWidget,
16530
15819
  AXPQrcodeWidget,
16531
15820
  AXPPasswordBoxWidget,
@@ -16600,7 +15889,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImpo
16600
15889
  AXPLargeTextWidget,
16601
15890
  AXPMapBoxWidget,
16602
15891
  AXPCronJobWidget,
16603
- AXPFileBoxWidget,
16604
15892
  AXPFileUploaderWidget,
16605
15893
  AXPQrcodeWidget,
16606
15894
  AXPPasswordBoxWidget,
@@ -16653,5 +15941,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImpo
16653
15941
  * Generated bundle index. Do not edit.
16654
15942
  */
16655
15943
 
16656
- export { AXPAdvancedGridItemWidget, AXPAdvancedGridItemWidgetDesignerComponent, AXPAdvancedGridItemWidgetPrintComponent, AXPAdvancedGridItemWidgetViewComponent, AXPAdvancedGridOptionsWidget, AXPAdvancedGridOptionsWidgetEditComponent, AXPAdvancedGridWidget, AXPAdvancedGridWidgetDesignerComponent, AXPAdvancedGridWidgetViewComponent, AXPAvatarWidget, AXPAvatarWidgetColumnComponent, AXPAvatarWidgetDesignerComponent, AXPAvatarWidgetEditComponent, AXPAvatarWidgetPrintComponent, AXPAvatarWidgetViewComponent, AXPBetweenExpressionValidationWidget, AXPBetweenValidationWidgetEditComponent, AXPBlockWidget, AXPBlockWidgetDesignerComponent, AXPBlockWidgetViewComponent, AXPBorderWidget, AXPBorderWidgetEditComponent, AXPButtonWidget, AXPButtonWidgetViewComponent, AXPCallbackValidationWidget, AXPCallbackValidationWidgetEditComponent, AXPCheckBoxWidget, AXPCheckBoxWidgetEditComponent, AXPContactWidget, AXPContactWidgetColumnComponent, AXPContactWidgetEditComponent, AXPContactWidgetPrintComponent, AXPContactWidgetViewComponent, AXPDateTimeBoxWidget, AXPDateTimeBoxWidgetColumnComponent, AXPDateTimeBoxWidgetEditComponent, AXPDateTimeBoxWidgetFilterComponent, AXPDateTimeBoxWidgetPrintComponent, AXPDateTimeBoxWidgetViewComponent, AXPEmailBoxWidget, AXPEmailBoxWidgetColumnComponent, AXPEmailBoxWidgetEditComponent, AXPEmailBoxWidgetFilterComponent, AXPEmailBoxWidgetPrintComponent, AXPEmailBoxWidgetViewComponent, AXPEqualValidationWidget, AXPEqualValidationWidgetEditComponent, AXPFileBoxWidget, AXPFileBoxWidgetColumnComponent, AXPFileBoxWidgetEditComponent, AXPFileBoxWidgetFilterComponent, AXPFileBoxWidgetPrintComponent, AXPFileBoxWidgetViewComponent, AXPFileManagementService, AXPFileUploaderManagementService, AXPFileUploaderWidget, AXPFileUploaderWidgetColumnComponent, AXPFileUploaderWidgetEditComponent, AXPFileUploaderWidgetPrintComponent, AXPFileUploaderWidgetViewComponent, AXPFlexOptionsWidget, AXPFlexOptionsWidgetEditComponent, AXPGalleryWidget, AXPGalleryWidgetEditComponent, AXPGalleryWidgetPrintComponent, AXPGalleryWidgetViewComponent, AXPGreaterThanExpressionValidationWidget, AXPGreaterThanValidationWidgetEditComponent, AXPGridOptionsWidget, AXPGridOptionsWidgetEditComponent, AXPLargeTextWidget, AXPLargeTextWidgetColumnComponent, AXPLargeTextWidgetEditComponent, AXPLargeTextWidgetFilterComponent, AXPLargeTextWidgetPrintComponent, AXPLargeTextWidgetViewComponent, AXPLessThanExpressionValidationWidget, AXPLessThanValidationWidgetEditComponent, AXPLinkWidget, AXPLinkWidgetColumnComponent, AXPLinkWidgetEditComponent, AXPLinkWidgetFilterComponent, AXPLinkWidgetPrintComponent, AXPLinkWidgetViewComponent, AXPMapBoxWidget, AXPMapBoxWidgetEditComponent, AXPMapBoxWidgetViewComponent, AXPMaxLengthExpressionValidationWidget, AXPMaxLengthValidationWidgetEditComponent, AXPMinLengthExpressionValidationWidget, AXPMinLengthValidationWidgetEditComponent, AXPNumberBoxWidget, AXPNumberBoxWidgetColumnComponent, AXPNumberBoxWidgetEditComponent, AXPNumberBoxWidgetFilterComponent, AXPNumberBoxWidgetPrintComponent, AXPNumberBoxWidgetViewComponent, AXPPageWidget, AXPPageWidgetViewComponent, AXPPasswordBoxWidget, AXPPasswordBoxWidgetColumnComponent, AXPPasswordBoxWidgetEditComponent, AXPPasswordBoxWidgetFilterComponent, AXPPasswordBoxWidgetPrintComponent, AXPPasswordBoxWidgetViewComponent, AXPPhoneBoxWidget, AXPPhoneBoxWidgetColumnComponent, AXPPhoneBoxWidgetEditComponent, AXPPhoneBoxWidgetFilterComponent, AXPPhoneBoxWidgetPrintComponent, AXPPhoneBoxWidgetViewComponent, AXPPropertyEditorHelper, AXPRegularExpressionValidationWidget, AXPRegularExpressionValidationWidgetEditComponent, AXPRepeaterWidget, AXPRepeaterWidgetDesignerComponent, AXPRepeaterWidgetEditComponent, AXPRepeaterWidgetPrintComponent, AXPRepeaterWidgetViewComponent, AXPRequiredValidationWidget, AXPRequiredValidationWidgetEditComponent, AXPRichTextWidget, AXPRichTextWidgetColumnComponent, AXPRichTextWidgetEditComponent, AXPRichTextWidgetFilterComponent, AXPRichTextWidgetPrintComponent, AXPRichTextWidgetViewComponent, AXPSelectBoxWidget, AXPSelectBoxWidgetColumnComponent, AXPSelectBoxWidgetEditComponent, AXPSelectBoxWidgetFilterComponent, AXPSelectBoxWidgetPrintComponent, AXPSelectBoxWidgetViewComponent, AXPSelectionListWidget, AXPSelectionListWidgetColumnComponent, AXPSelectionListWidgetDesignerComponent, AXPSelectionListWidgetEditComponent, AXPSelectionListWidgetFilterComponent, AXPSelectionListWidgetPrintComponent, AXPSelectionListWidgetViewComponent, AXPSignatureWidget, AXPSignatureWidgetColumnComponent, AXPSignatureWidgetEditComponent, AXPSignatureWidgetFilterComponent, AXPSignatureWidgetPrintComponent, AXPSignatureWidgetViewComponent, AXPSingleFileBoxWidget, AXPSingleFileBoxWidgetColumnComponent, AXPSingleFileBoxWidgetEditComponent, AXPSingleFileBoxWidgetFilterComponent, AXPSingleFileBoxWidgetPrintComponent, AXPSingleFileBoxWidgetViewComponent, AXPSpacingWidget, AXPSpacingWidgetEditComponent, AXPTemplateBoxWidget, AXPTemplateBoxWidgetColumnComponent, AXPTemplateBoxWidgetEditComponent, AXPTemplateBoxWidgetFilterComponent, AXPTemplateBoxWidgetPrintComponent, AXPTemplateBoxWidgetViewComponent, AXPTextBoxWidget, AXPTextBoxWidgetColumnComponent, AXPTextBoxWidgetEditComponent, AXPTextBoxWidgetFilterComponent, AXPTextBoxWidgetPrintComponent$1 as AXPTextBoxWidgetPrintComponent, AXPTextBoxWidgetViewComponent, AXPToggleWidget, AXPToggleWidgetColumnComponent, AXPToggleWidgetEditComponent, AXPToggleWidgetFilterComponent, AXPToggleWidgetPrintComponent, AXPToggleWidgetViewComponent, AXPWidgetsModule, AXP_ALLOW_MULTIPLE_PROPERTY, AXP_ALLOW_SEARCH_PROPERTY, AXP_ANIMATION_PROPERTY_GROUP, AXP_APPEARANCE_PROPERTY_GROUP, AXP_BEHAVIOR_PROPERTY_GROUP, AXP_BETWEEN_VALIDATION_PROPERTY, AXP_BG_COLOR_PROPERTY, AXP_BOX_MODEL_PROPERTY_GROUP, AXP_CALLBACK_VALIDATION_PROPERTY, AXP_COLOR_PROPERTY, AXP_CONTENT_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DATA_PROPERTY_GROUP, AXP_DATA_SOURCE_PROPERTIES, AXP_DATA_SOURCE_PROPERTY, AXP_DATA_SOURCE_TEXT_FIELD, AXP_DATA_SOURCE_VALUE_FIELD, AXP_DATE_FORMAT_PROPERTY, AXP_DESCRIPTION_PROPERTY, AXP_DIRECTION_PROPERTY, AXP_DISABLED_PROPERTY, AXP_DOWNLOADABLE_PROPERTY, AXP_EQUAL_VALIDATION_PROPERTY, AXP_FALSY_TEXT_PROPERTY, AXP_FONT_SIZE_PROPERTY, AXP_Flex_Box_Align_Options, AXP_Flex_Box_Alignments, AXP_Flex_Box_Justify_Options, AXP_GREATER_THAN_VALIDATION_PROPERTY, AXP_Grid_Box_Align_Items_Options, AXP_Grid_Box_Alignments, AXP_Grid_Box_Justify_Items_Options, AXP_HAS_CLEAR_BUTTON_PROPERTY, AXP_HAS_COPY_ICON_PROPERTY, AXP_HAS_EYE_ICON_PROPERTY, AXP_HAS_ICON_PROPERTY, AXP_HAS_LABEL_PROPERTY, AXP_ICON_PROPERTY, AXP_IS_LOADING_PROPERTY, AXP_LABEL_PROPERTY, AXP_LAYOUT_ADVANCED_GRID_PROPERTY, AXP_LAYOUT_BORDER_PROPERTY, AXP_LAYOUT_COLUMNS_PROPERTY, AXP_LAYOUT_COL_END_PROPERTY, AXP_LAYOUT_COL_SPAN_PROPERTY, AXP_LAYOUT_COL_START_PROPERTY, AXP_LAYOUT_FLEX_PROPERTY, AXP_LAYOUT_FLEX_PROPERTY_GROUP, AXP_LAYOUT_GAP_PROPERTY, AXP_LAYOUT_GRID_ITEM_PROPERTIES, AXP_LAYOUT_GRID_PROPERTIES, AXP_LAYOUT_GRID_PROPERTY, AXP_LAYOUT_GRID_PROPERTY_GROUP, AXP_LAYOUT_GRID_ROW_PROPERTIES, AXP_LAYOUT_ROWS_PROPERTY, AXP_LAYOUT_SHOW_HEADER_PROPERTY, AXP_LAYOUT_SPACING_PROPERTY, AXP_LESS_THAN_VALIDATION_PROPERTY, AXP_MAX_LENGTH_VALIDATION_PROPERTY, AXP_MIN_LENGTH_VALIDATION_PROPERTY, AXP_NAME_PROPERTY, AXP_PLACEHOLDER_PROPERTY, AXP_READONLY_PROPERTY, AXP_REGULAR_EXPRESSION_VALIDATION_PROPERTY, AXP_REQUIRED_VALIDATION_PROPERTY, AXP_STYLE_COLOR_PROPERTY, AXP_STYLE_LOOK_PROPERTY, AXP_STYLING_PROPERTY_GROUP, AXP_TABLE_COLUMN_HEIGHT_PROPERTY, AXP_TABLE_COLUMN_WIDTH_PROPERTY, AXP_TEXT_FIELD_PROPERTY, AXP_TEXT_PROPERTY, AXP_THEME_PROPERTY, AXP_TITLE_PROPERTY, AXP_TRULY_TEXT_PROPERTY, AXP_VALIDATION_PROPERTY_GROUP, AXP_VALUE_FIELD_PROPERTY, AXP_WIDGET_PROPERTY_GROUP, AXP_default_Border_Box_Units, AXP_default_Border_Box_Value, AXP_default_Spacing_Box_Units, AXP_default_Spacing_Box_Value, DEFAULT_STRATEGY_CONFIG, STRATEGY_CONFIG_TOKEN, booleanDefaultProperty, findNonEmptyBreakpoints, largeTextDefaultProperty, numberDefaultProperty, numberMaxValueProperty, numberMinValueProperty, plainTextDefaultProperty };
15944
+ export { AXPAdvancedGridItemWidget, AXPAdvancedGridItemWidgetDesignerComponent, AXPAdvancedGridItemWidgetPrintComponent, AXPAdvancedGridItemWidgetViewComponent, AXPAdvancedGridOptionsWidget, AXPAdvancedGridOptionsWidgetEditComponent, AXPAdvancedGridWidget, AXPAdvancedGridWidgetDesignerComponent, AXPAdvancedGridWidgetViewComponent, AXPAvatarWidget, AXPAvatarWidgetColumnComponent, AXPAvatarWidgetDesignerComponent, AXPAvatarWidgetEditComponent, AXPAvatarWidgetPrintComponent, AXPAvatarWidgetViewComponent, AXPBetweenExpressionValidationWidget, AXPBetweenValidationWidgetEditComponent, AXPBlockWidget, AXPBlockWidgetDesignerComponent, AXPBlockWidgetViewComponent, AXPBorderWidget, AXPBorderWidgetEditComponent, AXPButtonWidget, AXPButtonWidgetViewComponent, AXPCallbackValidationWidget, AXPCallbackValidationWidgetEditComponent, AXPCheckBoxWidget, AXPCheckBoxWidgetEditComponent, AXPContactWidget, AXPContactWidgetColumnComponent, AXPContactWidgetEditComponent, AXPContactWidgetPrintComponent, AXPContactWidgetViewComponent, AXPDateTimeBoxWidget, AXPDateTimeBoxWidgetColumnComponent, AXPDateTimeBoxWidgetEditComponent, AXPDateTimeBoxWidgetFilterComponent, AXPDateTimeBoxWidgetPrintComponent, AXPDateTimeBoxWidgetViewComponent, AXPEmailBoxWidget, AXPEmailBoxWidgetColumnComponent, AXPEmailBoxWidgetEditComponent, AXPEmailBoxWidgetFilterComponent, AXPEmailBoxWidgetPrintComponent, AXPEmailBoxWidgetViewComponent, AXPEqualValidationWidget, AXPEqualValidationWidgetEditComponent, AXPFileUploaderWidget, AXPFileUploaderWidgetColumnComponent, AXPFileUploaderWidgetEditComponent, AXPFileUploaderWidgetPrintComponent, AXPFileUploaderWidgetService, AXPFileUploaderWidgetViewComponent, AXPFlexOptionsWidget, AXPFlexOptionsWidgetEditComponent, AXPGalleryWidget, AXPGalleryWidgetEditComponent, AXPGalleryWidgetPrintComponent, AXPGalleryWidgetViewComponent, AXPGreaterThanExpressionValidationWidget, AXPGreaterThanValidationWidgetEditComponent, AXPGridOptionsWidget, AXPGridOptionsWidgetEditComponent, AXPLargeTextWidget, AXPLargeTextWidgetColumnComponent, AXPLargeTextWidgetEditComponent, AXPLargeTextWidgetFilterComponent, AXPLargeTextWidgetPrintComponent, AXPLargeTextWidgetViewComponent, AXPLessThanExpressionValidationWidget, AXPLessThanValidationWidgetEditComponent, AXPLinkWidget, AXPLinkWidgetColumnComponent, AXPLinkWidgetEditComponent, AXPLinkWidgetFilterComponent, AXPLinkWidgetPrintComponent, AXPLinkWidgetViewComponent, AXPMapBoxWidget, AXPMapBoxWidgetEditComponent, AXPMapBoxWidgetViewComponent, AXPMaxLengthExpressionValidationWidget, AXPMaxLengthValidationWidgetEditComponent, AXPMinLengthExpressionValidationWidget, AXPMinLengthValidationWidgetEditComponent, AXPNumberBoxWidget, AXPNumberBoxWidgetColumnComponent, AXPNumberBoxWidgetEditComponent, AXPNumberBoxWidgetFilterComponent, AXPNumberBoxWidgetPrintComponent, AXPNumberBoxWidgetViewComponent, AXPPageWidget, AXPPageWidgetViewComponent, AXPPasswordBoxWidget, AXPPasswordBoxWidgetColumnComponent, AXPPasswordBoxWidgetEditComponent, AXPPasswordBoxWidgetFilterComponent, AXPPasswordBoxWidgetPrintComponent, AXPPasswordBoxWidgetViewComponent, AXPPhoneBoxWidget, AXPPhoneBoxWidgetColumnComponent, AXPPhoneBoxWidgetEditComponent, AXPPhoneBoxWidgetFilterComponent, AXPPhoneBoxWidgetPrintComponent, AXPPhoneBoxWidgetViewComponent, AXPPropertyEditorHelper, AXPRegularExpressionValidationWidget, AXPRegularExpressionValidationWidgetEditComponent, AXPRepeaterWidget, AXPRepeaterWidgetDesignerComponent, AXPRepeaterWidgetEditComponent, AXPRepeaterWidgetPrintComponent, AXPRepeaterWidgetViewComponent, AXPRequiredValidationWidget, AXPRequiredValidationWidgetEditComponent, AXPRichTextWidget, AXPRichTextWidgetColumnComponent, AXPRichTextWidgetEditComponent, AXPRichTextWidgetFilterComponent, AXPRichTextWidgetPrintComponent, AXPRichTextWidgetViewComponent, AXPSelectBoxWidget, AXPSelectBoxWidgetColumnComponent, AXPSelectBoxWidgetEditComponent, AXPSelectBoxWidgetFilterComponent, AXPSelectBoxWidgetPrintComponent, AXPSelectBoxWidgetViewComponent, AXPSelectionListWidget, AXPSelectionListWidgetColumnComponent, AXPSelectionListWidgetDesignerComponent, AXPSelectionListWidgetEditComponent, AXPSelectionListWidgetFilterComponent, AXPSelectionListWidgetPrintComponent, AXPSelectionListWidgetViewComponent, AXPSignatureWidget, AXPSignatureWidgetColumnComponent, AXPSignatureWidgetEditComponent, AXPSignatureWidgetFilterComponent, AXPSignatureWidgetPrintComponent, AXPSignatureWidgetViewComponent, AXPSpacingWidget, AXPSpacingWidgetEditComponent, AXPTemplateBoxWidget, AXPTemplateBoxWidgetColumnComponent, AXPTemplateBoxWidgetEditComponent, AXPTemplateBoxWidgetFilterComponent, AXPTemplateBoxWidgetPrintComponent, AXPTemplateBoxWidgetViewComponent, AXPTextBoxWidget, AXPTextBoxWidgetColumnComponent, AXPTextBoxWidgetEditComponent, AXPTextBoxWidgetFilterComponent, AXPTextBoxWidgetPrintComponent$1 as AXPTextBoxWidgetPrintComponent, AXPTextBoxWidgetViewComponent, AXPToggleWidget, AXPToggleWidgetColumnComponent, AXPToggleWidgetEditComponent, AXPToggleWidgetFilterComponent, AXPToggleWidgetPrintComponent, AXPToggleWidgetViewComponent, AXPWidgetsModule, AXP_ALLOW_MULTIPLE_PROPERTY, AXP_ALLOW_SEARCH_PROPERTY, AXP_ANIMATION_PROPERTY_GROUP, AXP_APPEARANCE_PROPERTY_GROUP, AXP_BEHAVIOR_PROPERTY_GROUP, AXP_BETWEEN_VALIDATION_PROPERTY, AXP_BG_COLOR_PROPERTY, AXP_BOX_MODEL_PROPERTY_GROUP, AXP_CALLBACK_VALIDATION_PROPERTY, AXP_COLOR_PROPERTY, AXP_CONTENT_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DATA_PROPERTY_GROUP, AXP_DATA_SOURCE_PROPERTIES, AXP_DATA_SOURCE_PROPERTY, AXP_DATA_SOURCE_TEXT_FIELD, AXP_DATA_SOURCE_VALUE_FIELD, AXP_DATE_FORMAT_PROPERTY, AXP_DESCRIPTION_PROPERTY, AXP_DIRECTION_PROPERTY, AXP_DISABLED_PROPERTY, AXP_DOWNLOADABLE_PROPERTY, AXP_EQUAL_VALIDATION_PROPERTY, AXP_FALSY_TEXT_PROPERTY, AXP_FONT_SIZE_PROPERTY, AXP_Flex_Box_Align_Options, AXP_Flex_Box_Alignments, AXP_Flex_Box_Justify_Options, AXP_GREATER_THAN_VALIDATION_PROPERTY, AXP_Grid_Box_Align_Items_Options, AXP_Grid_Box_Alignments, AXP_Grid_Box_Justify_Items_Options, AXP_HAS_CLEAR_BUTTON_PROPERTY, AXP_HAS_COPY_ICON_PROPERTY, AXP_HAS_EYE_ICON_PROPERTY, AXP_HAS_ICON_PROPERTY, AXP_HAS_LABEL_PROPERTY, AXP_ICON_PROPERTY, AXP_IS_LOADING_PROPERTY, AXP_LABEL_PROPERTY, AXP_LAYOUT_ADVANCED_GRID_PROPERTY, AXP_LAYOUT_BORDER_PROPERTY, AXP_LAYOUT_COLUMNS_PROPERTY, AXP_LAYOUT_COL_END_PROPERTY, AXP_LAYOUT_COL_SPAN_PROPERTY, AXP_LAYOUT_COL_START_PROPERTY, AXP_LAYOUT_FLEX_PROPERTY, AXP_LAYOUT_FLEX_PROPERTY_GROUP, AXP_LAYOUT_GAP_PROPERTY, AXP_LAYOUT_GRID_ITEM_PROPERTIES, AXP_LAYOUT_GRID_PROPERTIES, AXP_LAYOUT_GRID_PROPERTY, AXP_LAYOUT_GRID_PROPERTY_GROUP, AXP_LAYOUT_GRID_ROW_PROPERTIES, AXP_LAYOUT_ROWS_PROPERTY, AXP_LAYOUT_SHOW_HEADER_PROPERTY, AXP_LAYOUT_SPACING_PROPERTY, AXP_LESS_THAN_VALIDATION_PROPERTY, AXP_MAX_LENGTH_VALIDATION_PROPERTY, AXP_MIN_LENGTH_VALIDATION_PROPERTY, AXP_NAME_PROPERTY, AXP_PLACEHOLDER_PROPERTY, AXP_READONLY_PROPERTY, AXP_REGULAR_EXPRESSION_VALIDATION_PROPERTY, AXP_REQUIRED_VALIDATION_PROPERTY, AXP_STYLE_COLOR_PROPERTY, AXP_STYLE_LOOK_PROPERTY, AXP_STYLING_PROPERTY_GROUP, AXP_TABLE_COLUMN_HEIGHT_PROPERTY, AXP_TABLE_COLUMN_WIDTH_PROPERTY, AXP_TEXT_FIELD_PROPERTY, AXP_TEXT_PROPERTY, AXP_THEME_PROPERTY, AXP_TITLE_PROPERTY, AXP_TRULY_TEXT_PROPERTY, AXP_VALIDATION_PROPERTY_GROUP, AXP_VALUE_FIELD_PROPERTY, AXP_WIDGET_PROPERTY_GROUP, AXP_default_Border_Box_Units, AXP_default_Border_Box_Value, AXP_default_Spacing_Box_Units, AXP_default_Spacing_Box_Value, DEFAULT_STRATEGY_CONFIG, STRATEGY_CONFIG_TOKEN, booleanDefaultProperty, findNonEmptyBreakpoints, largeTextDefaultProperty, numberDefaultProperty, numberMaxValueProperty, numberMinValueProperty, plainTextDefaultProperty };
16657
15945
  //# sourceMappingURL=acorex-platform-widgets.mjs.map