@acorex/platform 19.1.3 → 19.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (145) hide show
  1. package/common/index.d.ts +1 -0
  2. package/common/lib/app/application.types.d.ts +2 -2
  3. package/common/lib/file-storage/file-storage.service.d.ts +13 -0
  4. package/common/lib/file-storage/file-storage.types.d.ts +143 -0
  5. package/common/lib/file-storage/index.d.ts +2 -0
  6. package/common/lib/filters/filters.types.d.ts +2 -1
  7. package/common/lib/settings/setting-definition.provider.d.ts +12 -5
  8. package/common/lib/settings/setting.builder.d.ts +4 -3
  9. package/common/lib/settings/settings.provider.d.ts +2 -7
  10. package/common/lib/settings/settings.service.d.ts +19 -7
  11. package/common/lib/settings/settings.types.d.ts +15 -2
  12. package/core/utils/highlighter.d.ts +1 -1
  13. package/fesm2022/acorex-platform-common.mjs +194 -74
  14. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  15. package/fesm2022/acorex-platform-core.mjs +2 -2
  16. package/fesm2022/acorex-platform-core.mjs.map +1 -1
  17. package/fesm2022/acorex-platform-layout-builder.mjs +245 -444
  18. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  19. package/fesm2022/acorex-platform-layout-designer.mjs +13 -13
  20. package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
  21. package/fesm2022/acorex-platform-layout-entity.mjs +59 -54
  22. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  23. package/fesm2022/acorex-platform-layout-filters.mjs +82 -5
  24. package/fesm2022/acorex-platform-layout-filters.mjs.map +1 -1
  25. package/fesm2022/acorex-platform-layout-setting.mjs +73 -91
  26. package/fesm2022/acorex-platform-layout-setting.mjs.map +1 -1
  27. package/fesm2022/acorex-platform-layouts.mjs +3 -4
  28. package/fesm2022/acorex-platform-layouts.mjs.map +1 -1
  29. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-K9B_-q_K.mjs +108 -0
  30. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-K9B_-q_K.mjs.map +1 -0
  31. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-DAmHq1bt.mjs +369 -0
  32. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-DAmHq1bt.mjs.map +1 -0
  33. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-Cd2gxLZt.mjs +87 -0
  34. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-Cd2gxLZt.mjs.map +1 -0
  35. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-6sZdw013.mjs +130 -0
  36. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-6sZdw013.mjs.map +1 -0
  37. package/fesm2022/acorex-platform-themes-default-setting-page.component-BYpCgHZb.mjs +74 -0
  38. package/fesm2022/acorex-platform-themes-default-setting-page.component-BYpCgHZb.mjs.map +1 -0
  39. package/fesm2022/acorex-platform-themes-default-setting-view.component-CdmIphX1.mjs +73 -0
  40. package/fesm2022/acorex-platform-themes-default-setting-view.component-CdmIphX1.mjs.map +1 -0
  41. package/fesm2022/acorex-platform-themes-default.mjs +20 -20
  42. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  43. package/fesm2022/acorex-platform-themes-shared.mjs +288 -81
  44. package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
  45. package/fesm2022/{acorex-platform-widgets-checkbox-widget-column.component-05nKV-UV.mjs → acorex-platform-widgets-checkbox-widget-column.component-jeZBOEhl.mjs} +18 -14
  46. package/fesm2022/acorex-platform-widgets-checkbox-widget-column.component-jeZBOEhl.mjs.map +1 -0
  47. package/fesm2022/{acorex-platform-widgets-checkbox-widget-designer.component-B_Gec5Qf.mjs → acorex-platform-widgets-checkbox-widget-designer.component-RCi5IJOR.mjs} +4 -4
  48. package/fesm2022/{acorex-platform-widgets-checkbox-widget-designer.component-B_Gec5Qf.mjs.map → acorex-platform-widgets-checkbox-widget-designer.component-RCi5IJOR.mjs.map} +1 -1
  49. package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-DU1niJES.mjs +64 -0
  50. package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-DU1niJES.mjs.map +1 -0
  51. package/fesm2022/{acorex-platform-widgets-color-box-widget-designer.component-B2g0ct24.mjs → acorex-platform-widgets-color-box-widget-designer.component-CWhbgmDV.mjs} +4 -4
  52. package/fesm2022/acorex-platform-widgets-color-box-widget-designer.component-CWhbgmDV.mjs.map +1 -0
  53. package/fesm2022/acorex-platform-widgets.mjs +1309 -334
  54. package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
  55. package/fesm2022/acorex-platform-workflow.mjs +9 -3
  56. package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
  57. package/layout/builder/lib/builder/builder.module.d.ts +6 -7
  58. package/layout/builder/lib/builder/builder.service.d.ts +9 -10
  59. package/layout/builder/lib/builder/context-store.service.d.ts +33 -0
  60. package/layout/builder/lib/builder/index.d.ts +4 -2
  61. package/layout/builder/lib/builder/widget-catalog.d.ts +1 -1
  62. package/layout/builder/lib/builder/widget-container.component.d.ts +34 -9
  63. package/layout/builder/lib/builder/widget-groups.d.ts +1 -0
  64. package/layout/builder/lib/builder/widget-map.d.ts +43 -0
  65. package/layout/builder/lib/builder/{widget-renderer.component.directive.d.ts → widget-renderer.directive.d.ts} +26 -0
  66. package/layout/builder/lib/builder/widget-status.types.d.ts +14 -0
  67. package/layout/builder/lib/builder/widget.types.d.ts +41 -55
  68. package/layout/designer/lib/preview/preview-viewer.component.d.ts +2 -2
  69. package/layout/designer/lib/property-viewer/widget-property-viewer.component.d.ts +2 -2
  70. package/layout/entity/lib/entity-master-list.viewmodel.d.ts +7 -2
  71. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.d.ts +0 -1
  72. package/layout/filters/lib/filters.viewmodel.d.ts +13 -3
  73. package/layout/setting/lib/convert-setting-data.d.ts +0 -20
  74. package/layout/setting/lib/setting.viewmodel.d.ts +65 -4
  75. package/layouts/lib/admin/entity-layout/entity-details-view/entity-details-view.component.d.ts +15 -5
  76. package/package.json +15 -15
  77. package/themes/default/lib/layouts/base/simple-page/simple-page.layout.d.ts +15 -5
  78. package/themes/default/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.d.ts +15 -5
  79. package/themes/default/lib/layouts/entity-layouts/entity-master-create-view/entity-master-create-view.component.d.ts +2 -1
  80. package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.d.ts +17 -6
  81. package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-filters/list-view-option-filters.component.d.ts +6 -3
  82. package/themes/default/lib/layouts/entity-layouts/entity-master-modify-view/entity-master-modify-view.component.d.ts +2 -1
  83. package/themes/default/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.d.ts +15 -5
  84. package/themes/default/lib/layouts/filters-layout/simple-filter-builder/filters-view.component.d.ts +6 -5
  85. package/themes/default/lib/layouts/root-layout/components/header/header.component.d.ts +15 -5
  86. package/themes/default/lib/layouts/root-layout/root-layout.component.d.ts +15 -5
  87. package/themes/default/lib/layouts/setting-layout/setting-page/setting-page.component.d.ts +0 -47
  88. package/themes/default/lib/layouts/setting-layout/setting-view/setting-view.component.d.ts +19 -5
  89. package/themes/shared/index.d.ts +3 -1
  90. package/themes/shared/lib/components/theme-slot.component.d.ts +23 -13
  91. package/themes/shared/lib/palette.provider.d.ts +9 -0
  92. package/themes/shared/lib/setting.keys.d.ts +7 -2
  93. package/themes/shared/lib/setting.provider.d.ts +1 -0
  94. package/themes/shared/lib/shared.module.d.ts +2 -1
  95. package/themes/shared/lib/{services/theme.service.d.ts → theme.service.d.ts} +16 -24
  96. package/themes/shared/lib/theme.types.d.ts +25 -0
  97. package/themes/shared/lib/widgets/theme-color-selection/index.d.ts +2 -0
  98. package/themes/shared/lib/widgets/theme-color-selection/theme-color-selection-widget-edit.component.d.ts +6 -0
  99. package/themes/shared/lib/widgets/theme-color-selection/theme-color-selection-widget.config.d.ts +7 -0
  100. package/widgets/lib/properties/layout.props.d.ts +1 -0
  101. package/widgets/lib/widgets/advance/avatar/avatar-widget-column.component.d.ts +6 -0
  102. package/widgets/lib/widgets/advance/avatar/avatar-widget-designer.component.d.ts +6 -0
  103. package/widgets/lib/widgets/advance/avatar/avatar-widget-edit.component.d.ts +18 -0
  104. package/widgets/lib/widgets/advance/avatar/avatar-widget-print.component.d.ts +6 -0
  105. package/widgets/lib/widgets/advance/avatar/avatar-widget-view.component.d.ts +6 -0
  106. package/widgets/lib/widgets/advance/avatar/avatar-widget.config.d.ts +7 -0
  107. package/widgets/lib/widgets/advance/avatar/index.d.ts +6 -0
  108. package/widgets/lib/widgets/advance/map/map-box-widget-edit.component.d.ts +9 -5
  109. package/widgets/lib/widgets/advance/map/map-box-widget-view.component.d.ts +6 -4
  110. package/widgets/lib/widgets/editors/number/number-box-widget-edit.component.d.ts +1 -7
  111. package/widgets/lib/widgets/editors/toggle/toggle-widget-edit.component.d.ts +0 -2
  112. package/widgets/lib/widgets/filters/operations/operations.component.d.ts +9 -0
  113. package/widgets/lib/widgets/filters/string-filter/index.d.ts +2 -0
  114. package/widgets/lib/widgets/filters/string-filter/string-filter-widget-edit.component.d.ts +11 -0
  115. package/widgets/lib/widgets/filters/string-filter/string-filter-widget.config.d.ts +7 -0
  116. package/widgets/lib/widgets/index.d.ts +5 -1
  117. package/widgets/lib/widgets/property-editors/border/border-widget-editor.component.d.ts +29 -7
  118. package/widgets/lib/widgets/property-editors/border/index.d.ts +0 -1
  119. package/widgets/lib/widgets/property-editors/flex-options/flex-options-widget-editor.component.d.ts +31 -0
  120. package/widgets/lib/widgets/property-editors/flex-options/flex-options-widget.config.d.ts +7 -0
  121. package/widgets/lib/widgets/property-editors/flex-options/flex-options-widget.type.d.ts +15 -0
  122. package/widgets/lib/widgets/property-editors/flex-options/index.d.ts +3 -0
  123. package/widgets/lib/widgets/property-editors/property-editor-helper.d.ts +72 -0
  124. package/widgets/lib/widgets/property-editors/property-editor.type.d.ts +35 -0
  125. package/widgets/lib/widgets/property-editors/spacing/index.d.ts +0 -1
  126. package/widgets/lib/widgets/property-editors/spacing/spacing-widget-editor.component.d.ts +11 -9
  127. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-CSyR4pYp.mjs +0 -108
  128. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-CSyR4pYp.mjs.map +0 -1
  129. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-xHWp2Lk-.mjs +0 -368
  130. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-xHWp2Lk-.mjs.map +0 -1
  131. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-n7mYNduJ.mjs +0 -87
  132. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-n7mYNduJ.mjs.map +0 -1
  133. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-DjyYU0Gy.mjs +0 -130
  134. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-DjyYU0Gy.mjs.map +0 -1
  135. package/fesm2022/acorex-platform-themes-default-setting-page.component-6Dd8MGqr.mjs +0 -78
  136. package/fesm2022/acorex-platform-themes-default-setting-page.component-6Dd8MGqr.mjs.map +0 -1
  137. package/fesm2022/acorex-platform-themes-default-setting-view.component-BgiMClew.mjs +0 -58
  138. package/fesm2022/acorex-platform-themes-default-setting-view.component-BgiMClew.mjs.map +0 -1
  139. package/fesm2022/acorex-platform-widgets-checkbox-widget-column.component-05nKV-UV.mjs.map +0 -1
  140. package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-BkWcZ4K9.mjs +0 -72
  141. package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-BkWcZ4K9.mjs.map +0 -1
  142. package/fesm2022/acorex-platform-widgets-color-box-widget-designer.component-B2g0ct24.mjs.map +0 -1
  143. package/layout/builder/lib/builder/widget-renderer.component.d.ts +0 -48
  144. package/widgets/lib/widgets/property-editors/border/border-widget-type.d.ts +0 -18
  145. package/widgets/lib/widgets/property-editors/spacing/spacing-widget-type.d.ts +0 -16
@@ -1,368 +0,0 @@
1
- import { AXActionSheetModule } from '@acorex/components/action-sheet';
2
- import * as i11 from '@acorex/components/data-table';
3
- import { AXDataTableModule } from '@acorex/components/data-table';
4
- import * as i2$1 from '@acorex/components/drawer';
5
- import { AXDrawerModule } from '@acorex/components/drawer';
6
- import * as i1$1 from '@acorex/core/platform';
7
- import * as i0 from '@angular/core';
8
- import { inject, Injector, input, Component, ChangeDetectionStrategy, EventEmitter, effect, Input, Output, ViewEncapsulation, signal, computed, ViewChild } from '@angular/core';
9
- import * as i3 from '@angular/router';
10
- import { ActivatedRoute, RouterModule } from '@angular/router';
11
- import * as i6$2 from '@acorex/components/badge';
12
- import { AXBadgeModule } from '@acorex/components/badge';
13
- import * as i8$1 from '@acorex/components/breadcrumbs';
14
- import { AXBreadcrumbsModule } from '@acorex/components/breadcrumbs';
15
- import * as i4 from '@acorex/components/button';
16
- import { AXButtonModule } from '@acorex/components/button';
17
- import * as i5 from '@acorex/components/decorators';
18
- import { AXDecoratorModule } from '@acorex/components/decorators';
19
- import { AXDialogModule } from '@acorex/components/dialog';
20
- import * as i4$1 from '@acorex/components/dropdown';
21
- import { AXDropdownModule } from '@acorex/components/dropdown';
22
- import { AXFormModule } from '@acorex/components/form';
23
- import { AXLoadingModule } from '@acorex/components/loading';
24
- import * as i9$1 from '@acorex/components/popover';
25
- import { AXPopoverModule } from '@acorex/components/popover';
26
- import * as i7 from '@acorex/components/search-box';
27
- import { AXSearchBoxModule } from '@acorex/components/search-box';
28
- import { AXTabsModule } from '@acorex/components/tabs';
29
- import { AXTooltipModule } from '@acorex/components/tooltip';
30
- import * as i10 from '@acorex/core/translation';
31
- import { AXTranslationModule, translateSync } from '@acorex/core/translation';
32
- import * as i4$2 from '@acorex/platform/auth';
33
- import { AXPAuthModule } from '@acorex/platform/auth';
34
- import { AXPSettingValueProviderService, AXPStickyDirective } from '@acorex/platform/common';
35
- import * as i9 from '@acorex/platform/layout/builder';
36
- import { AXPLayoutBuilderService, AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';
37
- import { AXPLayoutThemeService } from '@acorex/platform/themes/shared';
38
- import { AXPWidgetsModule } from '@acorex/platform/widgets';
39
- import * as i1 from '@angular/common';
40
- import { CommonModule } from '@angular/common';
41
- import * as i2 from '@angular/forms';
42
- import { FormsModule } from '@angular/forms';
43
- import * as i6 from '@acorex/components/image';
44
- import { AXImageModule } from '@acorex/components/image';
45
- import * as i6$1 from '@acorex/components/label';
46
- import { AXLabelModule } from '@acorex/components/label';
47
- import * as i8 from '@acorex/components/selection-list';
48
- import { AXSelectionListModule } from '@acorex/components/selection-list';
49
- import { AXPFiltersViewModel } from '@acorex/platform/layout/filters';
50
- import { CdkDropList, CdkDrag, CdkDragHandle, moveItemInArray } from '@angular/cdk/drag-drop';
51
- import * as i5$1 from '@acorex/components/switch';
52
- import { AXSwitchModule } from '@acorex/components/switch';
53
- import '@acorex/platform/layout/entity';
54
- import { cloneDeep } from 'lodash-es';
55
- import { AXSelectBoxModule } from '@acorex/components/select-box';
56
-
57
- class AXPSimpleFiltersViewComponent {
58
- constructor() {
59
- this.vm = inject(AXPFiltersViewModel);
60
- this.injector = inject(Injector);
61
- this.filters = input.required();
62
- }
63
- ngOnInit() {
64
- this.vm.setFilters(this.filters());
65
- }
66
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPSimpleFiltersViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
67
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXPSimpleFiltersViewComponent, isStandalone: true, selector: "axp-simple-filters-view", inputs: { filters: { classPropertyName: "filters", publicName: "filters", isSignal: true, isRequired: true, transformFunction: null } }, providers: [AXPLayoutBuilderService], ngImport: i0, template: "@if(!vm.activeFiltersCount()){\n<div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center\">\n <ax-image src=\"assets/documents.svg\"></ax-image>\n <p class=\"ax-mt-6 ax-mb-1 ax-font-bold\">No Filters Selected</p>\n <span class=\"ax-text-neutral-400 ax-text-sm md:ax-text-md\">Please select field(s) that you want to filter</span>\n</div>\n} @else {\n<div class=\"ax-sorted-list ax-max-h-[calc(100vh-310px)] ax-py-1 ax-overflow-auto\">\n <div cdkDropList (cdkDropListDropped)=\"vm.drop($event)\" class=\"ax-flex ax-flex-col ax-gap-2\">\n @for(item of vm.activeFilters(); track $index ){\n <div cdkDrag cdkDragBoundary=\".ax-sorted-list\">\n <div class=\"ax-ms-4 ax-flex ax-items-start ax-gap-2\">\n <ax-label>{{ item.title }}</ax-label>\n <!-- @if(getOperatorTitle(item.name,item.operator)){\n <ax-badge\n class=\"ax-text-xs\"\n color=\"primary\"\n [look]=\"'twotone'\"\n [text]=\"getOperatorTitle(item.name, item.operator)\"\n ></ax-badge>\n } -->\n </div>\n <div class=\"ax-flex ax-group ax-items-center ax-gap-2\">\n <ax-icon class=\"fa-solid fa-grip-dots-vertical ax-cursor-move\" cdkDragHandle></ax-icon>\n <div class=\"ax-w-full\">\n <ng-container axp-widget-renderer [node]=\"item.widget\" [mode]=\"'edit'\"></ng-container>\n </div>\n <ax-button look=\"blank\" color=\"danger\" class=\"ax-sm\" (onClick)=\"vm.removeCondition(item)\">\n <ax-icon class=\"fa-solid fa-trash-can\"></ax-icon>\n </ax-button>\n </div>\n </div>\n }\n </div>\n</div>\n}\n<div class=\"ax-flex ax-gap-2\">\n <div class=\"ax-w-full\" #addField>\n @if(vm.activeFiltersCount()){\n <ax-button\n color=\"primary\"\n [text]=\"'entity.add-field' | translate | async\"\n look=\"blank\"\n class=\"ax-sm ax-mx-2\"\n ></ax-button>\n }@else {\n <div class=\"ax-flex ax-justify-center ax-w-full\">\n <ax-button\n color=\"primary\"\n [text]=\"'entity.add-field' | translate | async\"\n look=\"outline\"\n class=\"ax-md ax-mx-2 ax-w-56\"\n ></ax-button>\n </div>\n }\n </div>\n <ax-popover\n #fieldsPopover\n [target]=\"addField\"\n [openOn]=\"'toggle'\"\n [closeOn]=\"'clickOut'\"\n [adaptivityEnabled]=\"true\"\n (onOpened)=\"vm.resetFilterFields()\"\n [offsetX]=\"15\"\n >\n <div class=\"ax-bg-surface ax-border ax-border-default ax-rounded-md ax-shadow-md ax-w-full ax-min-w-[250px]\">\n <div class=\"ax-border-b-[1px] ax-pb-2 ax-mb-2 ax-p-3\">\n <ax-title class=\"ax-font-bold\">Fields</ax-title>\n </div>\n <div class=\"ax-max-h-72 2xl:ax-max-h-80 ax-overflow-auto\">\n <ax-selection-list\n [valueField]=\"'field'\"\n [textField]=\"'title'\"\n [value]=\"vm.newFilters()\"\n (onValueChanged)=\"vm.onChoosingFiltersChange($event)\"\n [direction]=\"'vertical'\"\n [items]=\"vm.availableFilters()\"\n [multiple]=\"true\"\n ></ax-selection-list>\n </div>\n <div class=\"ax-flex ax-justify-end ax-border-t-[1px] ax-p-3\">\n <ax-button\n (onClick)=\"vm.onChoosingFiltersConfirm(); fieldsPopover.close()\"\n class=\"ax-sm\"\n [text]=\"'confirm' | translate | async\"\n color=\"primary\"\n >\n </ax-button>\n </div>\n </div>\n </ax-popover>\n</div>\n", dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i5.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i5.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i4.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "responsiveOn", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "responsiveOnChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i10.AXTranslatorPipe, name: "translate" }, { kind: "ngmodule", type: AXPLayoutBuilderModule }, { kind: "directive", type: i9.AXPWidgetRendererDirective, selector: "[axp-widget-renderer]", inputs: ["parentNode", "index", "mode", "node"], exportAs: ["widgetRenderer"] }, { kind: "ngmodule", type: AXImageModule }, { kind: "component", type: i6.AXImageComponent, selector: "ax-image", inputs: ["overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }, { kind: "ngmodule", type: AXLabelModule }, { kind: "component", type: i6$1.AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXBadgeModule }, { kind: "ngmodule", type: AXSelectionListModule }, { kind: "component", type: i8.AXSelectionListComponent, selector: "ax-selection-list", inputs: ["id", "name", "disabled", "readonly", "tabIndex", "size", "value", "valueField", "textField", "disabledField", "readonlyField", "multiple", "direction", "customTemplate", "showControl", "items", "look"], outputs: ["onValueChanged", "onBlur", "onFocus"] }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "component", type: i9$1.AXPopoverComponent, selector: "ax-popover", inputs: ["offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "backdropClass", "panelClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "directive", type: CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
68
- }
69
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPSimpleFiltersViewComponent, decorators: [{
70
- type: Component,
71
- args: [{ selector: 'axp-simple-filters-view', providers: [AXPLayoutBuilderService], imports: [
72
- FormsModule,
73
- CommonModule,
74
- AXDecoratorModule,
75
- AXButtonModule,
76
- AXTranslationModule,
77
- AXPLayoutBuilderModule,
78
- AXImageModule,
79
- AXLabelModule,
80
- AXBadgeModule,
81
- AXSelectionListModule,
82
- AXPopoverModule,
83
- CdkDropList,
84
- CdkDrag,
85
- CdkDragHandle,
86
- ], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "@if(!vm.activeFiltersCount()){\n<div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center\">\n <ax-image src=\"assets/documents.svg\"></ax-image>\n <p class=\"ax-mt-6 ax-mb-1 ax-font-bold\">No Filters Selected</p>\n <span class=\"ax-text-neutral-400 ax-text-sm md:ax-text-md\">Please select field(s) that you want to filter</span>\n</div>\n} @else {\n<div class=\"ax-sorted-list ax-max-h-[calc(100vh-310px)] ax-py-1 ax-overflow-auto\">\n <div cdkDropList (cdkDropListDropped)=\"vm.drop($event)\" class=\"ax-flex ax-flex-col ax-gap-2\">\n @for(item of vm.activeFilters(); track $index ){\n <div cdkDrag cdkDragBoundary=\".ax-sorted-list\">\n <div class=\"ax-ms-4 ax-flex ax-items-start ax-gap-2\">\n <ax-label>{{ item.title }}</ax-label>\n <!-- @if(getOperatorTitle(item.name,item.operator)){\n <ax-badge\n class=\"ax-text-xs\"\n color=\"primary\"\n [look]=\"'twotone'\"\n [text]=\"getOperatorTitle(item.name, item.operator)\"\n ></ax-badge>\n } -->\n </div>\n <div class=\"ax-flex ax-group ax-items-center ax-gap-2\">\n <ax-icon class=\"fa-solid fa-grip-dots-vertical ax-cursor-move\" cdkDragHandle></ax-icon>\n <div class=\"ax-w-full\">\n <ng-container axp-widget-renderer [node]=\"item.widget\" [mode]=\"'edit'\"></ng-container>\n </div>\n <ax-button look=\"blank\" color=\"danger\" class=\"ax-sm\" (onClick)=\"vm.removeCondition(item)\">\n <ax-icon class=\"fa-solid fa-trash-can\"></ax-icon>\n </ax-button>\n </div>\n </div>\n }\n </div>\n</div>\n}\n<div class=\"ax-flex ax-gap-2\">\n <div class=\"ax-w-full\" #addField>\n @if(vm.activeFiltersCount()){\n <ax-button\n color=\"primary\"\n [text]=\"'entity.add-field' | translate | async\"\n look=\"blank\"\n class=\"ax-sm ax-mx-2\"\n ></ax-button>\n }@else {\n <div class=\"ax-flex ax-justify-center ax-w-full\">\n <ax-button\n color=\"primary\"\n [text]=\"'entity.add-field' | translate | async\"\n look=\"outline\"\n class=\"ax-md ax-mx-2 ax-w-56\"\n ></ax-button>\n </div>\n }\n </div>\n <ax-popover\n #fieldsPopover\n [target]=\"addField\"\n [openOn]=\"'toggle'\"\n [closeOn]=\"'clickOut'\"\n [adaptivityEnabled]=\"true\"\n (onOpened)=\"vm.resetFilterFields()\"\n [offsetX]=\"15\"\n >\n <div class=\"ax-bg-surface ax-border ax-border-default ax-rounded-md ax-shadow-md ax-w-full ax-min-w-[250px]\">\n <div class=\"ax-border-b-[1px] ax-pb-2 ax-mb-2 ax-p-3\">\n <ax-title class=\"ax-font-bold\">Fields</ax-title>\n </div>\n <div class=\"ax-max-h-72 2xl:ax-max-h-80 ax-overflow-auto\">\n <ax-selection-list\n [valueField]=\"'field'\"\n [textField]=\"'title'\"\n [value]=\"vm.newFilters()\"\n (onValueChanged)=\"vm.onChoosingFiltersChange($event)\"\n [direction]=\"'vertical'\"\n [items]=\"vm.availableFilters()\"\n [multiple]=\"true\"\n ></ax-selection-list>\n </div>\n <div class=\"ax-flex ax-justify-end ax-border-t-[1px] ax-p-3\">\n <ax-button\n (onClick)=\"vm.onChoosingFiltersConfirm(); fieldsPopover.close()\"\n class=\"ax-sm\"\n [text]=\"'confirm' | translate | async\"\n color=\"primary\"\n >\n </ax-button>\n </div>\n </div>\n </ax-popover>\n</div>\n" }]
87
- }] });
88
-
89
- class AXPListViewOptionsColumnsComponent {
90
- constructor() {
91
- this.settings = inject(AXPSettingValueProviderService);
92
- this.onClosed = new EventEmitter();
93
- this.columnsChanged = effect(() => {
94
- this.vm.onColumnsChanged(this.vm.columns());
95
- //.map((c) => ({ visible: c.visible, name: c.name }))
96
- });
97
- }
98
- handleVisibilityChange(e, name) {
99
- if (e.isUserInteraction) {
100
- this.vm.columns.update((prev) => {
101
- return prev.map((c) => {
102
- return c.name === name ? { ...c, visible: e.value ?? true } : c;
103
- });
104
- });
105
- }
106
- }
107
- drop(event) {
108
- const columns = cloneDeep(this.vm.columns());
109
- moveItemInArray(columns, event.previousIndex, event.currentIndex);
110
- this.vm.columns.set(columns);
111
- }
112
- handleClose() {
113
- this.onClosed.emit();
114
- }
115
- handleResetClick() {
116
- this.vm.resetColumns();
117
- }
118
- handleApplyClick() {
119
- this.onClosed.emit();
120
- }
121
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPListViewOptionsColumnsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
122
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXPListViewOptionsColumnsComponent, isStandalone: true, selector: "axp-list-view-option-columns", inputs: { vm: ["viewModel", "vm"] }, outputs: { onClosed: "onClosed" }, ngImport: i0, template: "<ax-header class=\"ax-flex ax-items-center\">\n <h2 class=\"ax-text-xl ax-font-bold\">{{ 'entity.columns' | translate | async }}</h2>\n <ax-button (onClick)=\"handleClose()\" [look]=\"'blank'\">\n <ax-icon class=\"fa-solid fa-close ax-text-neutral-400 ax-text-xl\"> </ax-icon>\n </ax-button>\n</ax-header>\n<div class=\"ax-flex ax-flex-col ax-gap-4 ax-p-4 ax-select-none\" cdkDropList (cdkDropListDropped)=\"drop($event)\">\n <div class=\"ax-flex ax-flex-col ax-gap-3 ax-w-full ax-sorted-list ax-max-h-[calc(100vh-280px)] ax-overflow-auto\">\n @for(item of vm.columns();track item.name) {\n <div class=\"ax-flex ax-py-1 ax-items-center ax-justify-between\" cdkDrag cdkDragBoundary=\".ax-sorted-list\">\n <div class=\"ax-flex ax-items-center ax-gap-3\" cdkDragHandle>\n <ax-icon class=\"fa-solid fa-grip-dots-vertical ax-cursor-move\"></ax-icon>\n <p class=\"ax-font-medium ax-text-sm\">{{ item.title | translate | async }}</p>\n </div>\n <ax-switch\n class=\"ax-sm\"\n [ngModel]=\"item.visible\"\n (onValueChanged)=\"handleVisibilityChange($event, item.name)\"\n ></ax-switch>\n </div>\n }\n </div>\n</div>\n<ax-footer class=\"!ax-justify-start ax-absolute ax-bottom-0 ax-w-full\">\n <ax-button [text]=\"'apply' | translate | async\" color=\"primary\" (onClick)=\"handleApplyClick()\"></ax-button>\n <ax-button [text]=\"'reset' | translate | async\" color=\"ghost\" (onClick)=\"handleResetClick()\"></ax-button>\n</ax-footer>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i4.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "responsiveOn", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "responsiveOnChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i5.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i5.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXSwitchModule }, { kind: "component", type: i5$1.AXSwitchComponent, selector: "ax-switch", inputs: ["disabled", "readonly", "color", "tabIndex", "value", "name", "isLoading"], outputs: ["onBlur", "onFocus", "valueChange", "onValueChanged", "readonlyChange", "disabledChange"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i10.AXTranslatorPipe, name: "translate" }] }); }
123
- }
124
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPListViewOptionsColumnsComponent, decorators: [{
125
- type: Component,
126
- args: [{ selector: 'axp-list-view-option-columns', imports: [
127
- CommonModule,
128
- FormsModule,
129
- CdkDropList,
130
- CdkDrag,
131
- CdkDragHandle,
132
- AXButtonModule,
133
- AXDecoratorModule,
134
- AXSwitchModule,
135
- AXTranslationModule,
136
- ], template: "<ax-header class=\"ax-flex ax-items-center\">\n <h2 class=\"ax-text-xl ax-font-bold\">{{ 'entity.columns' | translate | async }}</h2>\n <ax-button (onClick)=\"handleClose()\" [look]=\"'blank'\">\n <ax-icon class=\"fa-solid fa-close ax-text-neutral-400 ax-text-xl\"> </ax-icon>\n </ax-button>\n</ax-header>\n<div class=\"ax-flex ax-flex-col ax-gap-4 ax-p-4 ax-select-none\" cdkDropList (cdkDropListDropped)=\"drop($event)\">\n <div class=\"ax-flex ax-flex-col ax-gap-3 ax-w-full ax-sorted-list ax-max-h-[calc(100vh-280px)] ax-overflow-auto\">\n @for(item of vm.columns();track item.name) {\n <div class=\"ax-flex ax-py-1 ax-items-center ax-justify-between\" cdkDrag cdkDragBoundary=\".ax-sorted-list\">\n <div class=\"ax-flex ax-items-center ax-gap-3\" cdkDragHandle>\n <ax-icon class=\"fa-solid fa-grip-dots-vertical ax-cursor-move\"></ax-icon>\n <p class=\"ax-font-medium ax-text-sm\">{{ item.title | translate | async }}</p>\n </div>\n <ax-switch\n class=\"ax-sm\"\n [ngModel]=\"item.visible\"\n (onValueChanged)=\"handleVisibilityChange($event, item.name)\"\n ></ax-switch>\n </div>\n }\n </div>\n</div>\n<ax-footer class=\"!ax-justify-start ax-absolute ax-bottom-0 ax-w-full\">\n <ax-button [text]=\"'apply' | translate | async\" color=\"primary\" (onClick)=\"handleApplyClick()\"></ax-button>\n <ax-button [text]=\"'reset' | translate | async\" color=\"ghost\" (onClick)=\"handleResetClick()\"></ax-button>\n</ax-footer>\n" }]
137
- }], propDecorators: { vm: [{
138
- type: Input,
139
- args: ['viewModel']
140
- }], onClosed: [{
141
- type: Output
142
- }] } });
143
-
144
- class AXPListViewOptionConditionsComponent {
145
- constructor() {
146
- this.onClosed = new EventEmitter();
147
- }
148
- handleClose() {
149
- this.onClosed.emit();
150
- }
151
- handleResetClick() {
152
- // this.loader.resetConditions();
153
- }
154
- handleApplyClick() {
155
- this.onClosed.emit();
156
- }
157
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPListViewOptionConditionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
158
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.3", type: AXPListViewOptionConditionsComponent, isStandalone: true, selector: "axp-list-view-option-conditions", outputs: { onClosed: "onClosed" }, ngImport: i0, template: "<ax-header class=\"ax-flex ax-items-center\">\n <h2 class=\"ax-text-xl ax-font-bold\">Filters</h2>\n <ax-button (onClick)=\"handleClose()\" [look]=\"'blank'\">\n <ax-icon class=\"fa-solid fa-close ax-text-neutral-400 ax-text-xl\"> </ax-icon>\n </ax-button>\n</ax-header>\n<div class=\"ax-px-4 ax-py-2\">\n <ng-content></ng-content>\n</div>\n<ax-footer class=\"!ax-justify-start ax-absolute ax-bottom-0 ax-w-full\">\n <ax-button [text]=\"'apply' | translate | async\" color=\"primary\" (onClick)=\"handleApplyClick()\"></ax-button>\n <ax-button [text]=\"'reset' | translate | async\" color=\"ghost\" (onClick)=\"handleResetClick()\"></ax-button>\n</ax-footer>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i5.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i5.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i4.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "responsiveOn", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "responsiveOnChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i10.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
159
- }
160
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPListViewOptionConditionsComponent, decorators: [{
161
- type: Component,
162
- args: [{ selector: 'axp-list-view-option-conditions', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: true, imports: [CommonModule, AXDecoratorModule, AXButtonModule, AXTranslationModule], template: "<ax-header class=\"ax-flex ax-items-center\">\n <h2 class=\"ax-text-xl ax-font-bold\">Filters</h2>\n <ax-button (onClick)=\"handleClose()\" [look]=\"'blank'\">\n <ax-icon class=\"fa-solid fa-close ax-text-neutral-400 ax-text-xl\"> </ax-icon>\n </ax-button>\n</ax-header>\n<div class=\"ax-px-4 ax-py-2\">\n <ng-content></ng-content>\n</div>\n<ax-footer class=\"!ax-justify-start ax-absolute ax-bottom-0 ax-w-full\">\n <ax-button [text]=\"'apply' | translate | async\" color=\"primary\" (onClick)=\"handleApplyClick()\"></ax-button>\n <ax-button [text]=\"'reset' | translate | async\" color=\"ghost\" (onClick)=\"handleResetClick()\"></ax-button>\n</ax-footer>\n" }]
163
- }], ctorParameters: () => [], propDecorators: { onClosed: [{
164
- type: Output
165
- }] } });
166
-
167
- class AXPListViewOptionSortingComponent {
168
- constructor() {
169
- this.isSM = false;
170
- this.onClosed = new EventEmitter();
171
- }
172
- drop(event) {
173
- moveItemInArray(this.vm.sortedFields(), event.previousIndex, event.currentIndex);
174
- }
175
- changeItemSort(item) {
176
- const newDirection = item.dir === 'asc' ? 'desc' : item.dir === 'desc' ? undefined : 'asc';
177
- this.vm.sortedFields.update((prev) => {
178
- return prev.map((field) => {
179
- if (field.name === item.name) {
180
- return { ...field, dir: newDirection };
181
- }
182
- return field;
183
- });
184
- });
185
- item.dir = newDirection;
186
- }
187
- handleClose() {
188
- this.onClosed.emit();
189
- }
190
- handleResetClick() {
191
- this.vm.resetSorts();
192
- }
193
- handleApplyClick() {
194
- this.vm.applySorts();
195
- this.onClosed.emit();
196
- }
197
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPListViewOptionSortingComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
198
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXPListViewOptionSortingComponent, isStandalone: true, selector: "axp-list-view-option-sorting", inputs: { vm: ["viewModel", "vm"] }, outputs: { onClosed: "onClosed" }, ngImport: i0, template: "<ax-header class=\"ax-flex ax-items-center\">\n <h2 class=\"ax-text-xl ax-font-bold\">{{ 'entity.sort' | translate | async }}</h2>\n <ax-button (onClick)=\"handleClose()\" [look]=\"'blank'\">\n <ax-icon class=\"fa-solid fa-close ax-text-neutral-400 ax-text-xl\"> </ax-icon>\n </ax-button>\n</ax-header>\n<div class=\"ax-flex ax-flex-col ax-justify-center ax-gap-4 ax-select-none\">\n <div class=\"ax-flex ax-flex-col ax-gap-4 ax-p-4 ax-select-none\" cdkDropList (cdkDropListDropped)=\"drop($event)\">\n <div class=\"ax-flex ax-flex-col ax-gap-3 ax-w-full ax-sorted-list ax-max-h-[calc(100vh-280px)] ax-overflow-auto\">\n @for(item of vm.sortedFields();track item.name) {\n <div class=\"ax-flex ax-py-1 ax-items-center ax-justify-between\" cdkDrag cdkDragBoundary=\".ax-sorted-list\">\n <div class=\"ax-flex ax-items-center ax-gap-3\" cdkDragHandle>\n <ax-icon class=\"fa-solid fa-grip-dots-vertical ax-cursor-move\"></ax-icon>\n <p class=\"ax-font-medium ax-text-sm\">{{ item.title | translate | async }}</p>\n </div>\n <ax-button [color]=\"'default'\" class=\"ax-sm\" (click)=\"changeItemSort(item)\">\n <ax-icon\n [class.ax-text-primary]=\"item.dir === 'asc'\"\n class=\"fa-solid fa-arrow-up-long ax-text-neutral-400\"\n ></ax-icon>\n <ax-icon\n [class.ax-text-primary]=\"item.dir === 'desc'\"\n class=\"fa-solid fa-arrow-down-long ax-text-neutral-400\"\n ></ax-icon>\n </ax-button>\n </div>\n }\n </div>\n </div>\n</div>\n<ax-footer class=\"!ax-justify-start ax-absolute ax-bottom-0 ax-w-full\">\n <ax-button [text]=\"'apply' | translate | async\" color=\"primary\" (onClick)=\"handleApplyClick()\"></ax-button>\n <ax-button [text]=\"'reset' | translate | async\" color=\"ghost\" (onClick)=\"handleResetClick()\"></ax-button>\n</ax-footer>\n", dependencies: [{ kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i10.AXTranslatorPipe, name: "translate" }, { kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i4.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "responsiveOn", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "responsiveOnChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXImageModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i5.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i5.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXSwitchModule }, { kind: "ngmodule", type: AXSelectBoxModule }] }); }
199
- }
200
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPListViewOptionSortingComponent, decorators: [{
201
- type: Component,
202
- args: [{ selector: 'axp-list-view-option-sorting', imports: [
203
- AXTranslationModule,
204
- CommonModule,
205
- FormsModule,
206
- CdkDropList,
207
- CdkDrag,
208
- CdkDragHandle,
209
- AXButtonModule,
210
- AXImageModule,
211
- AXDecoratorModule,
212
- AXSwitchModule,
213
- AXSelectBoxModule,
214
- ], template: "<ax-header class=\"ax-flex ax-items-center\">\n <h2 class=\"ax-text-xl ax-font-bold\">{{ 'entity.sort' | translate | async }}</h2>\n <ax-button (onClick)=\"handleClose()\" [look]=\"'blank'\">\n <ax-icon class=\"fa-solid fa-close ax-text-neutral-400 ax-text-xl\"> </ax-icon>\n </ax-button>\n</ax-header>\n<div class=\"ax-flex ax-flex-col ax-justify-center ax-gap-4 ax-select-none\">\n <div class=\"ax-flex ax-flex-col ax-gap-4 ax-p-4 ax-select-none\" cdkDropList (cdkDropListDropped)=\"drop($event)\">\n <div class=\"ax-flex ax-flex-col ax-gap-3 ax-w-full ax-sorted-list ax-max-h-[calc(100vh-280px)] ax-overflow-auto\">\n @for(item of vm.sortedFields();track item.name) {\n <div class=\"ax-flex ax-py-1 ax-items-center ax-justify-between\" cdkDrag cdkDragBoundary=\".ax-sorted-list\">\n <div class=\"ax-flex ax-items-center ax-gap-3\" cdkDragHandle>\n <ax-icon class=\"fa-solid fa-grip-dots-vertical ax-cursor-move\"></ax-icon>\n <p class=\"ax-font-medium ax-text-sm\">{{ item.title | translate | async }}</p>\n </div>\n <ax-button [color]=\"'default'\" class=\"ax-sm\" (click)=\"changeItemSort(item)\">\n <ax-icon\n [class.ax-text-primary]=\"item.dir === 'asc'\"\n class=\"fa-solid fa-arrow-up-long ax-text-neutral-400\"\n ></ax-icon>\n <ax-icon\n [class.ax-text-primary]=\"item.dir === 'desc'\"\n class=\"fa-solid fa-arrow-down-long ax-text-neutral-400\"\n ></ax-icon>\n </ax-button>\n </div>\n }\n </div>\n </div>\n</div>\n<ax-footer class=\"!ax-justify-start ax-absolute ax-bottom-0 ax-w-full\">\n <ax-button [text]=\"'apply' | translate | async\" color=\"primary\" (onClick)=\"handleApplyClick()\"></ax-button>\n <ax-button [text]=\"'reset' | translate | async\" color=\"ghost\" (onClick)=\"handleResetClick()\"></ax-button>\n</ax-footer>\n" }]
215
- }], propDecorators: { onClosed: [{
216
- type: Output
217
- }], vm: [{
218
- type: Input,
219
- args: ['viewModel']
220
- }] } });
221
-
222
- class AXPEntityMasterListViewComponent {
223
- constructor(platform) {
224
- this.platform = platform;
225
- this.activeRoute = inject(ActivatedRoute);
226
- this.vm = this.activeRoute.snapshot.data['vm'];
227
- //
228
- this.store = inject(AXPLayoutThemeService);
229
- //
230
- this.searchBarShown = signal(true);
231
- this.dropdownRowItems = computed(() => {
232
- return this.vm.secondaryRowActions().map((c) => ({
233
- icon: c.icon,
234
- name: c.name,
235
- text: translateSync(c.title),
236
- color: c.color,
237
- }));
238
- });
239
- this.commandRowItems = computed(() => {
240
- return this.vm.primaryRowActions().map((c) => {
241
- return {
242
- icon: c.icon,
243
- name: c.name,
244
- text: translateSync(c.title),
245
- color: c.color,
246
- };
247
- });
248
- });
249
- this.getDropdownRowItems = (rowData) => {
250
- return Promise.resolve(this.dropdownRowItems());
251
- };
252
- this.getCommandRowItems = () => {
253
- return this.commandRowItems();
254
- };
255
- effect(() => {
256
- this.grid.selectedRows = this.vm.selectedItems();
257
- });
258
- //
259
- this.vm.events$.subscribe((e) => {
260
- if (e.action == 'refresh') {
261
- this.grid.refresh();
262
- }
263
- });
264
- }
265
- ngAfterViewInit() {
266
- this.vm.setView();
267
- }
268
- closeDrawer(name, collapsed) {
269
- // if (collapsed) {
270
- // switch (name) {
271
- // case 'conditions':
272
- // //this.loader.resetConditions();
273
- // break;
274
- // case 'columns':
275
- // this.vm.applyColumns();
276
- // break;
277
- // case 'sorts':
278
- // //this.vm.resetSorts();
279
- // break;
280
- // default:
281
- // break;
282
- // }
283
- // }
284
- }
285
- handleChangeSearchValue(e) {
286
- if (e.isUserInteraction) {
287
- this.vm.applyInlineFilter(e.value);
288
- }
289
- }
290
- handleRowDbClick(e) {
291
- //TODO: find a way for default action
292
- const item = [...this.commandRowItems(), ...this.dropdownRowItems()][0];
293
- if (item) {
294
- const d = {
295
- component: e.component,
296
- name: item.name,
297
- data: e.data,
298
- };
299
- this.handleRowCommandClick(d);
300
- }
301
- }
302
- async handleRowCommandClick(e) {
303
- this.vm.executeCommand(e.name, e.data);
304
- }
305
- async handleSelectedRowsChange(rows) {
306
- this.vm.selectedItems.set(rows);
307
- }
308
- makeResponsive(value) {
309
- if (this.platform.is('Mobile') || this.platform.is('SM')) {
310
- return '';
311
- }
312
- else {
313
- return value;
314
- }
315
- }
316
- toggleSearchBar() {
317
- this.searchBarShown.set(!this.searchBarShown());
318
- }
319
- ngOnDestroy() {
320
- this.vm.destroy();
321
- }
322
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPEntityMasterListViewComponent, deps: [{ token: i1$1.AXPlatform }], target: i0.ɵɵFactoryTarget.Component }); }
323
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXPEntityMasterListViewComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "grid", first: true, predicate: ["grid"], descendants: true, static: true }], ngImport: i0, template: "<ax-drawer-container>\n <ax-content class=\"ax-flex ax-flex-col ax-overflow-hidden\" #content>\n <div\n class=\"ax-flex ax-flex-col ax-gap-4 ax-px-4 ax-pb-4 md:ax-px-6 ax-bg-surface ax-border-b md:ax-border-0 md:ax-bg-default\"\n >\n <div\n class=\"ax-flex ax-flex-col ax-pt-4 ax-gap-4 ax-sticky ax-top-0 ax-z-10 ax-transition-all\"\n #sticky=\"axpSticky\"\n [axpSticky]=\"'ax-bg-surface ax-px-6 ax-py-3 -ax-mx-6 ax-shadow-xl'\"\n [stickyParent]=\"content.getHostElement()\"\n >\n <!-------- Begin Toolbar -------->\n <!-------- Begin Line 1 -------->\n <div class=\"ax-flex ax-justify-between ax-items-center\">\n <!-------- Begin Title -------->\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <div class=\"ax-flex ax-flex-col ax-gap-2 ax-transition\">\n <div class=\"ax-text-xl md:ax-text-2xl ax-font-bold\">{{ vm.title() | translate | async }}</div>\n @if(vm.description() ) {\n <div class=\"ax-text-sm ax-text-neutral-600\" [class.ax-hidden]=\"sticky.isSticky\">\n {{ vm.description()! | translate | async }}\n </div>\n }\n <ax-breadcrumbs\n class=\"child:ax-font-normal child:ax-text-neutral-400\"\n [class.ax-hidden]=\"store.isSmall()\"\n >\n <ng-template #divider>\n <i class=\"fa-solid fa-chevron-right ax-text-xs ax-mx-2\"></i>\n </ng-template>\n @for(b of vm.beardcrumbs();track $index;let last=$last) {\n <ax-breadcrumbs-item\n [active]=\"last\"\n [class.!ax-font-semibold]=\"last\"\n [class.!ax-text-neutral-600]=\"last\"\n [routerLink]=\"b.url\"\n >\n @if(b.icon) {\n <i [class]=\"b.icon\"></i>\n }\n {{ b.title | translate | async }}\n </ax-breadcrumbs-item>\n }\n </ax-breadcrumbs>\n </div>\n </div>\n <!-------- Finish Title -------->\n <!--------------------------------------------------------------->\n <!-- Begin Action Menu -->\n <div class=\"ax-flex ax-items-center ax-gap-3\">\n @for(tr of vm.primaryActions();track $index) {\n <ax-button [text]=\"tr.title | translate | async\" [color]=\"tr.color\" (onClick)=\"vm.executeCommand(tr.name)\">\n <ax-prefix>\n <ax-icon [icon]=\"tr.icon\"> </ax-icon>\n </ax-prefix>\n </ax-button>\n } @if(vm.secondaryActions().length) {\n <ax-button [text]=\"store.isSmall() ? null : ('actions' | translate | async)\" color=\"ghost\">\n <ax-prefix>\n <i class=\"fa-solid fa-ellipsis-vertical\"></i>\n </ax-prefix>\n <ax-dropdown-panel>\n <ax-button-item-list>\n @for(tr of vm.secondaryActions();track $index;let first=$first) {\n <ng-container>\n @if(tr.separated && !$first) {\n <ax-divider></ax-divider>\n }\n <ax-button-item\n [color]=\"tr.color\"\n [text]=\"(tr.title | translate | async)!\"\n (onClick)=\"vm.executeCommand(tr.name)\"\n >\n <ax-prefix>\n <ax-icon [icon]=\"tr.icon\"> </ax-icon>\n </ax-prefix>\n </ax-button-item>\n </ng-container>\n }\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n }\n </div>\n <!-- Finish Action Menu -->\n </div>\n\n <!-------- Finish Line 1 -------->\n\n <!-------- Begin Line 2 -------->\n <div class=\"ax-flex ax-justify-between ax-items-center\">\n <div class=\"ax-flex ax-justify-start ax-items-center ax-gap-4\">\n <!-------- Begin Selection -------->\n\n @if(vm.hasSelectedItems()) {\n <div class=\"ax-flex ax-gap-3 ax-items-center ax-h-10\">\n <span class=\"ax-text-xl ax-font-bold\">\n {{ vm.selectedItems().length }} {{ 't(\"itemsSelected\", { scope: \"common\" })' | translate | async }}\n </span>\n <span\n (click)=\"vm.clearSelection()\"\n class=\"ax-text-sm ax-text-primary dark:ax-text-primary-300 ax-underline ax-cursor-pointer\"\n >{{ 't(\"unselect\", { scope: \"common\" })' | translate | async }}</span\n >\n </div>\n\n <!-------- Finish Selection -------->\n\n } @else {\n\n <!-------- Begin View -------->\n\n <ax-button [text]=\"vm.view().title | translate | async\" #views color=\"ghost\">\n <ax-prefix>\n <i class=\"fa-solid fa-eye\"></i>\n </ax-prefix>\n <ax-suffix>\n <i class=\"fa-solid fa-caret-down\"></i>\n </ax-suffix>\n <ax-dropdown-panel [adaptivityEnabled]=\"true\">\n <ax-button-item-list class=\"ax-bg-surface ax-p-2\">\n <ax-title class=\"ax-font-bold ax-opacity-100\">{{\n 'entity.public-view' | translate | async\n }}</ax-title>\n <ax-button-item\n *ngFor=\"let v of vm.views()\"\n [text]=\"(v.title | translate | async)!\"\n [class.ax-bg-on-surface]=\"vm.view() == v\"\n (onClick)=\"vm.setView(v.name)\"\n ></ax-button-item>\n <!-- <ax-title class=\"ax-font-bold ax-opacity-100\" *ngIf=\"hasCustomViews$ | async\">Created by me</ax-title>\n <ax-button-item class=\"ax-pe-4 ax-flex ax-justify-between\" *ngFor=\"let v of customViews$ | async\"\n [text]=\"v.title\" [class.ax-bg-on-surface]=\"(view$ | async) == v\" (onClick)=\"loader.setView(v.name)\">\n <ax-suffix>\n <ax-button (onClick)=\"updateViewPopup($event, v)\" class=\"ax-xs\" look=\"none\">\n <ax-icon class=\"far fa-edit\"> </ax-icon>\n </ax-button>\n </ax-suffix>\n </ax-button-item> -->\n <!-- <ng-container *feature=\"'axp-entity-list-custom-view'\">\n <ax-divider></ax-divider>\n <ax-button-item text=\"Add Custom View\" (onClick)=\"addCustomViewPopup()\"\n class=\"ax-font-semibold ax-text-primary\"></ax-button-item>\n </ng-container> -->\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n <!-------- Finish View -------->\n\n <!-------- Begin Inline Search -------->\n @if(vm.hasInlineFilters() && !(this.platform.is('Mobile') || this.platform.is('SM'))) {\n <div class=\"ax-w-72\">\n <ax-search-box\n [placeholder]=\"('widget.lookup.search' | translate | async) + vm.inlineFiltersPlaceholders().join(', ')\"\n (onValueChanged)=\"handleChangeSearchValue($event)\"\n ><ax-clear-button></ax-clear-button\n ></ax-search-box>\n </div>\n } }\n <!-------- Finish Inline Search -------->\n </div>\n <!-- Begin View Action Menu -->\n @if(!vm.hasSelectedItems()) {\n <div class=\"ax-flex ax-gap-3\">\n @if(vm.hasInlineFilters() && (this.platform.is('Mobile') || this.platform.is('SM'))) {\n <ax-button (onClick)=\"toggleSearchBar()\" color=\"ghost\">\n <ax-icon class=\"fa-solid fa-search\"> </ax-icon> </ax-button\n >}\n\n <ax-button\n [text]=\"makeResponsive('entity.columns' | translate | async)\"\n color=\"ghost\"\n (onClick)=\"columnsDrawer.open()\"\n >\n <ax-prefix>\n <i class=\"fa-solid fa-bars\"></i>\n </ax-prefix>\n <ax-suffix>\n <ax-badge [text]=\"makeResponsive(vm.visibleColumnCount().toString())\" color=\"primary\"></ax-badge>\n </ax-suffix>\n </ax-button>\n <ax-button\n text=\"Filters\"\n color=\"ghost\"\n (onClick)=\"conditionsDrawer.open()\"\n *feature=\"'axp-entity-list-advance-filter'\"\n >\n <ax-prefix>\n <i class=\"fa-solid fa-sliders\"></i>\n </ax-prefix>\n <ax-suffix>\n <ax-badge text=\"3\" color=\"primary\"></ax-badge>\n </ax-suffix>\n </ax-button>\n\n @if(vm.canSort()) {\n <ax-button\n [text]=\"makeResponsive('entity.sort' | translate | async)\"\n color=\"ghost\"\n (onClick)=\"sortsDrawer.open()\"\n >\n <ax-prefix>\n <i class=\"fa-solid fa-bars-sort\"></i>\n </ax-prefix>\n @if(vm.sortedCount()) {\n <ax-suffix>\n <ax-badge [text]=\"makeResponsive(vm.sortedCount().toString())\" color=\"primary\"></ax-badge>\n </ax-suffix>\n }\n </ax-button>\n }\n </div>\n }\n <!-- Finish View Action Menu -->\n </div>\n <div>\n @if(vm.hasInlineFilters() && (this.platform.is('Mobile') || this.platform.is('SM'))) {\n <ax-search-box\n [class.collapsed-search-box]=\"searchBarShown()\"\n class=\"ax-transition-all\"\n [placeholder]=\"('widget.lookup.search' | translate | async) + vm.inlineFiltersPlaceholders().join(', ')\"\n (onValueChanged)=\"handleChangeSearchValue($event)\"\n ><ax-clear-button></ax-clear-button\n ></ax-search-box>\n }\n </div>\n <!-------- Finish Line 2 -------->\n\n <!----- Finish Toolbar ----->\n </div>\n </div>\n <!----- Begin DataTable ----->\n <div class=\"ax-flex ax-flex-1 ax-px-6 ax-py-6 ax-pt-0 ax-overflow-auto\">\n <ax-data-table\n #grid\n [showFooter]=\"false\"\n class=\"ax-flex-1\"\n [paging]=\"true\"\n [fetchDataMode]=\"'manual'\"\n [parentField]=\"vm.parentKey()\"\n [loading]=\"{ enabled: true, animation: true }\"\n [dataSource]=\"vm.dataSource\"\n (selectedRowsChange)=\"handleSelectedRowsChange($event)\"\n (onRowDbClick)=\"handleRowDbClick($event)\"\n >\n @if(vm.view().indexCol === true){\n <ax-index-column fixed=\"start\" [width]=\"'80px'\" [padZero]=\"true\"></ax-index-column>\n } @if(vm.selectedScopeActionsCount()){\n <ax-select-column fixed=\"start\" [width]=\"'50px'\"></ax-select-column>\n } @for(col of vm.columns();track col.name) { @if(col.visible) {\n <axp-widget-column-renderer\n [expandHandler]=\"$index === 0 && vm.parentKey() ? true : false\"\n [caption]=\"(col.title | translate | async)!\"\n [node]=\"col.node()\"\n ></axp-widget-column-renderer>\n } } @if(getCommandRowItems().length){\n\n <ax-command-column\n fixed=\"end\"\n [width]=\"getCommandRowItems().length * 60 + 'px'\"\n [items]=\"getCommandRowItems()\"\n (onItemClick)=\"handleRowCommandClick($event)\"\n ></ax-command-column>\n\n } @if(dropdownRowItems().length){\n <ax-dropdown-command-column\n fixed=\"end\"\n [width]=\"'60px'\"\n [items]=\"getDropdownRowItems\"\n (onItemClick)=\"handleRowCommandClick($event)\"\n ></ax-dropdown-command-column>\n }\n </ax-data-table>\n </div>\n <!----- Finish DataTable ----->\n </ax-content>\n\n <ax-drawer (collapsedChange)=\"closeDrawer('columns', $event)\" #columnsDrawer location=\"end\" [mode]=\"'overlay'\">\n <ax-content class=\"ax-w-[85vw] md:ax-w-[45vw] lg:ax-w-[35vw] 2xl:ax-w-[20vw] ax-border-e\">\n <axp-list-view-option-columns [viewModel]=\"vm\" (onClosed)=\"columnsDrawer.close()\"></axp-list-view-option-columns>\n </ax-content>\n </ax-drawer>\n <ax-drawer (collapsedChange)=\"closeDrawer('conditions', $event)\" #conditionsDrawer location=\"end\" [mode]=\"'overlay'\">\n <ax-content class=\"ax-w-[85vw] md:ax-w-[45vw] lg:ax-w-[35vw] 2xl:ax-w-[25vw] ax-border-e\">\n <axp-list-view-option-conditions>\n <axp-simple-filters-view [filters]=\"vm.filtersDef\"></axp-simple-filters-view>\n </axp-list-view-option-conditions>\n </ax-content>\n </ax-drawer>\n <ax-drawer (collapsedChange)=\"closeDrawer('sorts', $event)\" #sortsDrawer location=\"end\" [mode]=\"'overlay'\">\n <ax-content class=\"ax-w-[85vw] md:ax-w-[45vw] lg:ax-w-[35vw] 2xl:ax-w-[20vw] ax-border-e\">\n <axp-list-view-option-sorting (onClosed)=\"sortsDrawer.close()\" [viewModel]=\"vm\"></axp-list-view-option-sorting>\n </ax-content>\n </ax-drawer>\n</ax-drawer-container>\n", styles: [".cdk-drag-preview{border-radius:.375rem;border-width:1px;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);background:rgba(var(--ax-color-on-surface));padding:.5rem;height:max-content!important}.collapsed-search-box{margin-top:0;height:0px;opacity:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i4.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "responsiveOn", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "responsiveOnChange", "loadingTextChange"] }, { kind: "component", type: i4.AXButtonItemComponent, selector: "ax-button-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "component", type: i4.AXButtonItemListComponent, selector: "ax-button-item-list", inputs: ["items"], outputs: ["onItemClick"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i5.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i5.AXDecoratorClearButtonComponent, selector: "ax-clear-button", inputs: ["icon"] }, { kind: "component", type: i5.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXBadgeModule }, { kind: "component", type: i6$2.AXBadgeComponent, selector: "ax-badge", inputs: ["color", "look", "text"] }, { kind: "ngmodule", type: AXDropdownModule }, { kind: "component", type: i4$1.AXDropdownPanelComponent, selector: "ax-dropdown-panel", inputs: ["isOpen", "fitParent", "dropdownWidth", "position", "_target", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "ngmodule", type: AXFormModule }, { kind: "ngmodule", type: AXActionSheetModule }, { kind: "ngmodule", type: AXDrawerModule }, { kind: "component", type: i2$1.AXDrawerComponent, selector: "ax-drawer", inputs: ["location", "showBackdrop", "mode", "closeOthers", "collapsed"], outputs: ["locationChange", "modeChange", "collapsedChange"] }, { kind: "component", type: i2$1.AXDrawerContainerComponent, selector: "ax-drawer-container" }, { kind: "ngmodule", type: AXDialogModule }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "ngmodule", type: AXTabsModule }, { kind: "ngmodule", type: AXTooltipModule }, { kind: "ngmodule", type: AXBreadcrumbsModule }, { kind: "component", type: i8$1.AXBreadCrumbsComponent, selector: "ax-breadcrumbs" }, { kind: "component", type: i8$1.AXBreadCrumbsItemComponent, selector: "ax-breadcrumbs-item", inputs: ["disabled", "active"] }, { kind: "ngmodule", type: AXSearchBoxModule }, { kind: "component", type: i7.AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "delayTime"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXDataTableModule }, { kind: "component", type: i11.AXDataTableComponent, selector: "ax-data-table", inputs: ["dataSource", "parentField", "rowTemplate", "emptyTemplate", "alternative", "showHeader", "fixedHeader", "showFooter", "fixedFooter", "itemHeight", "allowReordering", "paging", "fetchDataMode", "loading", "focusedRow"], outputs: ["selectedRowsChange", "focusedRowChange", "onRowClick", "onRowDbClick", "onColumnsOrderChanged", "onColumnSizeChanged"] }, { kind: "component", type: i11.AXRowIndexColumnComponent, selector: "ax-index-column", inputs: ["width", "caption", "fixed", "footerTemplate", "padZero"] }, { kind: "component", type: i11.AXRowSelectColumnComponent, selector: "ax-select-column", inputs: ["width", "caption", "fixed"] }, { kind: "component", type: i11.AXRowCommandColumnComponent, selector: "ax-command-column", inputs: ["width", "caption", "fixed", "footerTemplate", "items"], outputs: ["onItemClick"] }, { kind: "component", type: i11.AXRowDropdownCommandColumnComponent, selector: "ax-dropdown-command-column", inputs: ["width", "caption", "fixed", "footerTemplate", "items"], outputs: ["onItemClick"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i10.AXTranslatorPipe, name: "translate" }, { kind: "ngmodule", type:
324
- //
325
- AXPLayoutBuilderModule }, { kind: "component", type: i9.AXPWidgetColumnRendererComponent, selector: "axp-widget-column-renderer", inputs: ["caption", "node", "footerTemplate", "expandHandler", "cellTemplate", "headerTemplate"] }, { kind: "ngmodule", type: AXPWidgetsModule }, { kind: "directive", type: AXPStickyDirective, selector: "[axpSticky]", inputs: ["axpSticky", "stickyOffset", "stickyParent", "stickyTarget"], outputs: ["isStickyChange"], exportAs: ["axpSticky"] }, { kind: "ngmodule", type: AXPAuthModule }, { kind: "directive", type: i4$2.AXPFeatureDirective, selector: "[feature]", inputs: ["feature", "featureElse"] }, { kind: "component", type:
326
- //
327
- AXPListViewOptionsColumnsComponent, selector: "axp-list-view-option-columns", inputs: ["viewModel"], outputs: ["onClosed"] }, { kind: "component", type: AXPListViewOptionSortingComponent, selector: "axp-list-view-option-sorting", inputs: ["viewModel"], outputs: ["onClosed"] }, { kind: "component", type: AXPSimpleFiltersViewComponent, selector: "axp-simple-filters-view", inputs: ["filters"] }, { kind: "component", type: AXPListViewOptionConditionsComponent, selector: "axp-list-view-option-conditions", outputs: ["onClosed"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
328
- }
329
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPEntityMasterListViewComponent, decorators: [{
330
- type: Component,
331
- args: [{ encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [
332
- CommonModule,
333
- FormsModule,
334
- RouterModule,
335
- AXButtonModule,
336
- AXDecoratorModule,
337
- AXBadgeModule,
338
- AXDropdownModule,
339
- AXPopoverModule,
340
- AXFormModule,
341
- AXActionSheetModule,
342
- AXDrawerModule,
343
- AXDialogModule,
344
- AXLoadingModule,
345
- AXTabsModule,
346
- AXTooltipModule,
347
- AXBreadcrumbsModule,
348
- AXSearchBoxModule,
349
- AXDataTableModule,
350
- AXTranslationModule,
351
- //
352
- AXPLayoutBuilderModule,
353
- AXPWidgetsModule,
354
- AXPStickyDirective,
355
- AXPAuthModule,
356
- //
357
- AXPListViewOptionsColumnsComponent,
358
- AXPListViewOptionSortingComponent,
359
- AXPSimpleFiltersViewComponent,
360
- AXPListViewOptionConditionsComponent,
361
- ], template: "<ax-drawer-container>\n <ax-content class=\"ax-flex ax-flex-col ax-overflow-hidden\" #content>\n <div\n class=\"ax-flex ax-flex-col ax-gap-4 ax-px-4 ax-pb-4 md:ax-px-6 ax-bg-surface ax-border-b md:ax-border-0 md:ax-bg-default\"\n >\n <div\n class=\"ax-flex ax-flex-col ax-pt-4 ax-gap-4 ax-sticky ax-top-0 ax-z-10 ax-transition-all\"\n #sticky=\"axpSticky\"\n [axpSticky]=\"'ax-bg-surface ax-px-6 ax-py-3 -ax-mx-6 ax-shadow-xl'\"\n [stickyParent]=\"content.getHostElement()\"\n >\n <!-------- Begin Toolbar -------->\n <!-------- Begin Line 1 -------->\n <div class=\"ax-flex ax-justify-between ax-items-center\">\n <!-------- Begin Title -------->\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <div class=\"ax-flex ax-flex-col ax-gap-2 ax-transition\">\n <div class=\"ax-text-xl md:ax-text-2xl ax-font-bold\">{{ vm.title() | translate | async }}</div>\n @if(vm.description() ) {\n <div class=\"ax-text-sm ax-text-neutral-600\" [class.ax-hidden]=\"sticky.isSticky\">\n {{ vm.description()! | translate | async }}\n </div>\n }\n <ax-breadcrumbs\n class=\"child:ax-font-normal child:ax-text-neutral-400\"\n [class.ax-hidden]=\"store.isSmall()\"\n >\n <ng-template #divider>\n <i class=\"fa-solid fa-chevron-right ax-text-xs ax-mx-2\"></i>\n </ng-template>\n @for(b of vm.beardcrumbs();track $index;let last=$last) {\n <ax-breadcrumbs-item\n [active]=\"last\"\n [class.!ax-font-semibold]=\"last\"\n [class.!ax-text-neutral-600]=\"last\"\n [routerLink]=\"b.url\"\n >\n @if(b.icon) {\n <i [class]=\"b.icon\"></i>\n }\n {{ b.title | translate | async }}\n </ax-breadcrumbs-item>\n }\n </ax-breadcrumbs>\n </div>\n </div>\n <!-------- Finish Title -------->\n <!--------------------------------------------------------------->\n <!-- Begin Action Menu -->\n <div class=\"ax-flex ax-items-center ax-gap-3\">\n @for(tr of vm.primaryActions();track $index) {\n <ax-button [text]=\"tr.title | translate | async\" [color]=\"tr.color\" (onClick)=\"vm.executeCommand(tr.name)\">\n <ax-prefix>\n <ax-icon [icon]=\"tr.icon\"> </ax-icon>\n </ax-prefix>\n </ax-button>\n } @if(vm.secondaryActions().length) {\n <ax-button [text]=\"store.isSmall() ? null : ('actions' | translate | async)\" color=\"ghost\">\n <ax-prefix>\n <i class=\"fa-solid fa-ellipsis-vertical\"></i>\n </ax-prefix>\n <ax-dropdown-panel>\n <ax-button-item-list>\n @for(tr of vm.secondaryActions();track $index;let first=$first) {\n <ng-container>\n @if(tr.separated && !$first) {\n <ax-divider></ax-divider>\n }\n <ax-button-item\n [color]=\"tr.color\"\n [text]=\"(tr.title | translate | async)!\"\n (onClick)=\"vm.executeCommand(tr.name)\"\n >\n <ax-prefix>\n <ax-icon [icon]=\"tr.icon\"> </ax-icon>\n </ax-prefix>\n </ax-button-item>\n </ng-container>\n }\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n }\n </div>\n <!-- Finish Action Menu -->\n </div>\n\n <!-------- Finish Line 1 -------->\n\n <!-------- Begin Line 2 -------->\n <div class=\"ax-flex ax-justify-between ax-items-center\">\n <div class=\"ax-flex ax-justify-start ax-items-center ax-gap-4\">\n <!-------- Begin Selection -------->\n\n @if(vm.hasSelectedItems()) {\n <div class=\"ax-flex ax-gap-3 ax-items-center ax-h-10\">\n <span class=\"ax-text-xl ax-font-bold\">\n {{ vm.selectedItems().length }} {{ 't(\"itemsSelected\", { scope: \"common\" })' | translate | async }}\n </span>\n <span\n (click)=\"vm.clearSelection()\"\n class=\"ax-text-sm ax-text-primary dark:ax-text-primary-300 ax-underline ax-cursor-pointer\"\n >{{ 't(\"unselect\", { scope: \"common\" })' | translate | async }}</span\n >\n </div>\n\n <!-------- Finish Selection -------->\n\n } @else {\n\n <!-------- Begin View -------->\n\n <ax-button [text]=\"vm.view().title | translate | async\" #views color=\"ghost\">\n <ax-prefix>\n <i class=\"fa-solid fa-eye\"></i>\n </ax-prefix>\n <ax-suffix>\n <i class=\"fa-solid fa-caret-down\"></i>\n </ax-suffix>\n <ax-dropdown-panel [adaptivityEnabled]=\"true\">\n <ax-button-item-list class=\"ax-bg-surface ax-p-2\">\n <ax-title class=\"ax-font-bold ax-opacity-100\">{{\n 'entity.public-view' | translate | async\n }}</ax-title>\n <ax-button-item\n *ngFor=\"let v of vm.views()\"\n [text]=\"(v.title | translate | async)!\"\n [class.ax-bg-on-surface]=\"vm.view() == v\"\n (onClick)=\"vm.setView(v.name)\"\n ></ax-button-item>\n <!-- <ax-title class=\"ax-font-bold ax-opacity-100\" *ngIf=\"hasCustomViews$ | async\">Created by me</ax-title>\n <ax-button-item class=\"ax-pe-4 ax-flex ax-justify-between\" *ngFor=\"let v of customViews$ | async\"\n [text]=\"v.title\" [class.ax-bg-on-surface]=\"(view$ | async) == v\" (onClick)=\"loader.setView(v.name)\">\n <ax-suffix>\n <ax-button (onClick)=\"updateViewPopup($event, v)\" class=\"ax-xs\" look=\"none\">\n <ax-icon class=\"far fa-edit\"> </ax-icon>\n </ax-button>\n </ax-suffix>\n </ax-button-item> -->\n <!-- <ng-container *feature=\"'axp-entity-list-custom-view'\">\n <ax-divider></ax-divider>\n <ax-button-item text=\"Add Custom View\" (onClick)=\"addCustomViewPopup()\"\n class=\"ax-font-semibold ax-text-primary\"></ax-button-item>\n </ng-container> -->\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n <!-------- Finish View -------->\n\n <!-------- Begin Inline Search -------->\n @if(vm.hasInlineFilters() && !(this.platform.is('Mobile') || this.platform.is('SM'))) {\n <div class=\"ax-w-72\">\n <ax-search-box\n [placeholder]=\"('widget.lookup.search' | translate | async) + vm.inlineFiltersPlaceholders().join(', ')\"\n (onValueChanged)=\"handleChangeSearchValue($event)\"\n ><ax-clear-button></ax-clear-button\n ></ax-search-box>\n </div>\n } }\n <!-------- Finish Inline Search -------->\n </div>\n <!-- Begin View Action Menu -->\n @if(!vm.hasSelectedItems()) {\n <div class=\"ax-flex ax-gap-3\">\n @if(vm.hasInlineFilters() && (this.platform.is('Mobile') || this.platform.is('SM'))) {\n <ax-button (onClick)=\"toggleSearchBar()\" color=\"ghost\">\n <ax-icon class=\"fa-solid fa-search\"> </ax-icon> </ax-button\n >}\n\n <ax-button\n [text]=\"makeResponsive('entity.columns' | translate | async)\"\n color=\"ghost\"\n (onClick)=\"columnsDrawer.open()\"\n >\n <ax-prefix>\n <i class=\"fa-solid fa-bars\"></i>\n </ax-prefix>\n <ax-suffix>\n <ax-badge [text]=\"makeResponsive(vm.visibleColumnCount().toString())\" color=\"primary\"></ax-badge>\n </ax-suffix>\n </ax-button>\n <ax-button\n text=\"Filters\"\n color=\"ghost\"\n (onClick)=\"conditionsDrawer.open()\"\n *feature=\"'axp-entity-list-advance-filter'\"\n >\n <ax-prefix>\n <i class=\"fa-solid fa-sliders\"></i>\n </ax-prefix>\n <ax-suffix>\n <ax-badge text=\"3\" color=\"primary\"></ax-badge>\n </ax-suffix>\n </ax-button>\n\n @if(vm.canSort()) {\n <ax-button\n [text]=\"makeResponsive('entity.sort' | translate | async)\"\n color=\"ghost\"\n (onClick)=\"sortsDrawer.open()\"\n >\n <ax-prefix>\n <i class=\"fa-solid fa-bars-sort\"></i>\n </ax-prefix>\n @if(vm.sortedCount()) {\n <ax-suffix>\n <ax-badge [text]=\"makeResponsive(vm.sortedCount().toString())\" color=\"primary\"></ax-badge>\n </ax-suffix>\n }\n </ax-button>\n }\n </div>\n }\n <!-- Finish View Action Menu -->\n </div>\n <div>\n @if(vm.hasInlineFilters() && (this.platform.is('Mobile') || this.platform.is('SM'))) {\n <ax-search-box\n [class.collapsed-search-box]=\"searchBarShown()\"\n class=\"ax-transition-all\"\n [placeholder]=\"('widget.lookup.search' | translate | async) + vm.inlineFiltersPlaceholders().join(', ')\"\n (onValueChanged)=\"handleChangeSearchValue($event)\"\n ><ax-clear-button></ax-clear-button\n ></ax-search-box>\n }\n </div>\n <!-------- Finish Line 2 -------->\n\n <!----- Finish Toolbar ----->\n </div>\n </div>\n <!----- Begin DataTable ----->\n <div class=\"ax-flex ax-flex-1 ax-px-6 ax-py-6 ax-pt-0 ax-overflow-auto\">\n <ax-data-table\n #grid\n [showFooter]=\"false\"\n class=\"ax-flex-1\"\n [paging]=\"true\"\n [fetchDataMode]=\"'manual'\"\n [parentField]=\"vm.parentKey()\"\n [loading]=\"{ enabled: true, animation: true }\"\n [dataSource]=\"vm.dataSource\"\n (selectedRowsChange)=\"handleSelectedRowsChange($event)\"\n (onRowDbClick)=\"handleRowDbClick($event)\"\n >\n @if(vm.view().indexCol === true){\n <ax-index-column fixed=\"start\" [width]=\"'80px'\" [padZero]=\"true\"></ax-index-column>\n } @if(vm.selectedScopeActionsCount()){\n <ax-select-column fixed=\"start\" [width]=\"'50px'\"></ax-select-column>\n } @for(col of vm.columns();track col.name) { @if(col.visible) {\n <axp-widget-column-renderer\n [expandHandler]=\"$index === 0 && vm.parentKey() ? true : false\"\n [caption]=\"(col.title | translate | async)!\"\n [node]=\"col.node()\"\n ></axp-widget-column-renderer>\n } } @if(getCommandRowItems().length){\n\n <ax-command-column\n fixed=\"end\"\n [width]=\"getCommandRowItems().length * 60 + 'px'\"\n [items]=\"getCommandRowItems()\"\n (onItemClick)=\"handleRowCommandClick($event)\"\n ></ax-command-column>\n\n } @if(dropdownRowItems().length){\n <ax-dropdown-command-column\n fixed=\"end\"\n [width]=\"'60px'\"\n [items]=\"getDropdownRowItems\"\n (onItemClick)=\"handleRowCommandClick($event)\"\n ></ax-dropdown-command-column>\n }\n </ax-data-table>\n </div>\n <!----- Finish DataTable ----->\n </ax-content>\n\n <ax-drawer (collapsedChange)=\"closeDrawer('columns', $event)\" #columnsDrawer location=\"end\" [mode]=\"'overlay'\">\n <ax-content class=\"ax-w-[85vw] md:ax-w-[45vw] lg:ax-w-[35vw] 2xl:ax-w-[20vw] ax-border-e\">\n <axp-list-view-option-columns [viewModel]=\"vm\" (onClosed)=\"columnsDrawer.close()\"></axp-list-view-option-columns>\n </ax-content>\n </ax-drawer>\n <ax-drawer (collapsedChange)=\"closeDrawer('conditions', $event)\" #conditionsDrawer location=\"end\" [mode]=\"'overlay'\">\n <ax-content class=\"ax-w-[85vw] md:ax-w-[45vw] lg:ax-w-[35vw] 2xl:ax-w-[25vw] ax-border-e\">\n <axp-list-view-option-conditions>\n <axp-simple-filters-view [filters]=\"vm.filtersDef\"></axp-simple-filters-view>\n </axp-list-view-option-conditions>\n </ax-content>\n </ax-drawer>\n <ax-drawer (collapsedChange)=\"closeDrawer('sorts', $event)\" #sortsDrawer location=\"end\" [mode]=\"'overlay'\">\n <ax-content class=\"ax-w-[85vw] md:ax-w-[45vw] lg:ax-w-[35vw] 2xl:ax-w-[20vw] ax-border-e\">\n <axp-list-view-option-sorting (onClosed)=\"sortsDrawer.close()\" [viewModel]=\"vm\"></axp-list-view-option-sorting>\n </ax-content>\n </ax-drawer>\n</ax-drawer-container>\n", styles: [".cdk-drag-preview{border-radius:.375rem;border-width:1px;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);background:rgba(var(--ax-color-on-surface));padding:.5rem;height:max-content!important}.collapsed-search-box{margin-top:0;height:0px;opacity:0}\n"] }]
362
- }], ctorParameters: () => [{ type: i1$1.AXPlatform }], propDecorators: { grid: [{
363
- type: ViewChild,
364
- args: ['grid', { static: true }]
365
- }] } });
366
-
367
- export { AXPEntityMasterListViewComponent };
368
- //# sourceMappingURL=acorex-platform-themes-default-entity-master-list-view.component-xHWp2Lk-.mjs.map