@acorex/modules 20.4.2 → 20.5.0-next.0

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 (106) hide show
  1. package/common/index.d.ts +5 -1
  2. package/data-management/index.d.ts +69 -5
  3. package/fesm2022/{acorex-modules-application-management-acorex-modules-application-management-3Z51H2O-.mjs → acorex-modules-application-management-acorex-modules-application-management-CQMnhxLa.mjs} +28 -7
  4. package/fesm2022/acorex-modules-application-management-acorex-modules-application-management-CQMnhxLa.mjs.map +1 -0
  5. package/fesm2022/acorex-modules-application-management-menu-list.component-BMbl5rtn.mjs +1046 -0
  6. package/fesm2022/acorex-modules-application-management-menu-list.component-BMbl5rtn.mjs.map +1 -0
  7. package/fesm2022/acorex-modules-application-management.mjs +1 -1
  8. package/fesm2022/{acorex-modules-auth-acorex-modules-auth-BwMF7mXK.mjs → acorex-modules-auth-acorex-modules-auth-D1GLmcE-.mjs} +10 -10
  9. package/fesm2022/{acorex-modules-auth-acorex-modules-auth-BwMF7mXK.mjs.map → acorex-modules-auth-acorex-modules-auth-D1GLmcE-.mjs.map} +1 -1
  10. package/fesm2022/{acorex-modules-auth-app-chooser.component-Y8ccBUCa.mjs → acorex-modules-auth-app-chooser.component-BwuQ1IDp.mjs} +2 -2
  11. package/fesm2022/{acorex-modules-auth-app-chooser.component-Y8ccBUCa.mjs.map → acorex-modules-auth-app-chooser.component-BwuQ1IDp.mjs.map} +1 -1
  12. package/fesm2022/{acorex-modules-auth-login.module-B-nJmy3_.mjs → acorex-modules-auth-login.module-C3YVgPHp.mjs} +4 -4
  13. package/fesm2022/{acorex-modules-auth-login.module-B-nJmy3_.mjs.map → acorex-modules-auth-login.module-C3YVgPHp.mjs.map} +1 -1
  14. package/fesm2022/{acorex-modules-auth-master.layout-BhsnK28w.mjs → acorex-modules-auth-master.layout-D0iHJc_T.mjs} +2 -2
  15. package/fesm2022/{acorex-modules-auth-master.layout-BhsnK28w.mjs.map → acorex-modules-auth-master.layout-D0iHJc_T.mjs.map} +1 -1
  16. package/fesm2022/{acorex-modules-auth-oauth-callback.component-DojO-qYk.mjs → acorex-modules-auth-oauth-callback.component-CfTRvv9t.mjs} +2 -2
  17. package/fesm2022/{acorex-modules-auth-oauth-callback.component-DojO-qYk.mjs.map → acorex-modules-auth-oauth-callback.component-CfTRvv9t.mjs.map} +1 -1
  18. package/fesm2022/{acorex-modules-auth-password.component-DauiGRQb.mjs → acorex-modules-auth-password.component-C-aos_5o.mjs} +2 -2
  19. package/fesm2022/{acorex-modules-auth-password.component-DauiGRQb.mjs.map → acorex-modules-auth-password.component-C-aos_5o.mjs.map} +1 -1
  20. package/fesm2022/{acorex-modules-auth-password.component-DxzlLZWK.mjs → acorex-modules-auth-password.component-DzWcZlfs.mjs} +2 -2
  21. package/fesm2022/{acorex-modules-auth-password.component-DxzlLZWK.mjs.map → acorex-modules-auth-password.component-DzWcZlfs.mjs.map} +1 -1
  22. package/fesm2022/{acorex-modules-auth-routes-BwJilKAK.mjs → acorex-modules-auth-routes-CR8yYe3M.mjs} +2 -2
  23. package/fesm2022/{acorex-modules-auth-routes-BwJilKAK.mjs.map → acorex-modules-auth-routes-CR8yYe3M.mjs.map} +1 -1
  24. package/fesm2022/{acorex-modules-auth-two-factor.module-CV70xdxY.mjs → acorex-modules-auth-two-factor.module-BzFLnBad.mjs} +2 -2
  25. package/fesm2022/{acorex-modules-auth-two-factor.module-CV70xdxY.mjs.map → acorex-modules-auth-two-factor.module-BzFLnBad.mjs.map} +1 -1
  26. package/fesm2022/{acorex-modules-auth-user-sessions.component-CYtCo5d1.mjs → acorex-modules-auth-user-sessions.component-Bfb74eNc.mjs} +3 -3
  27. package/fesm2022/acorex-modules-auth-user-sessions.component-Bfb74eNc.mjs.map +1 -0
  28. package/fesm2022/acorex-modules-auth.mjs +1 -1
  29. package/fesm2022/acorex-modules-common.mjs +86 -12
  30. package/fesm2022/acorex-modules-common.mjs.map +1 -1
  31. package/fesm2022/acorex-modules-dashboard-management.mjs +1 -1
  32. package/fesm2022/acorex-modules-dashboard-management.mjs.map +1 -1
  33. package/fesm2022/acorex-modules-data-management.mjs +447 -9
  34. package/fesm2022/acorex-modules-data-management.mjs.map +1 -1
  35. package/fesm2022/{acorex-modules-document-management-acorex-modules-document-management-CwVDh52l.mjs → acorex-modules-document-management-acorex-modules-document-management-BsfSETMk.mjs} +18 -18
  36. package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-BsfSETMk.mjs.map +1 -0
  37. package/fesm2022/{acorex-modules-document-management-attachment-widget.component-KTVXeYE1.mjs → acorex-modules-document-management-attachment-widget.component-C4KhZ0gC.mjs} +2 -2
  38. package/fesm2022/{acorex-modules-document-management-attachment-widget.component-KTVXeYE1.mjs.map → acorex-modules-document-management-attachment-widget.component-C4KhZ0gC.mjs.map} +1 -1
  39. package/fesm2022/{acorex-modules-document-management-details-view.component-Blo7DEM9.mjs → acorex-modules-document-management-details-view.component-DeI-r7-g.mjs} +2 -2
  40. package/fesm2022/{acorex-modules-document-management-details-view.component-Blo7DEM9.mjs.map → acorex-modules-document-management-details-view.component-DeI-r7-g.mjs.map} +1 -1
  41. package/fesm2022/{acorex-modules-document-management-document-signature-popup.component-wVF422mD.mjs → acorex-modules-document-management-document-signature-popup.component-DMFqz5jZ.mjs} +2 -2
  42. package/fesm2022/{acorex-modules-document-management-document-signature-popup.component-wVF422mD.mjs.map → acorex-modules-document-management-document-signature-popup.component-DMFqz5jZ.mjs.map} +1 -1
  43. package/fesm2022/{acorex-modules-document-management-drive-choose.component-Bk62GMxv.mjs → acorex-modules-document-management-drive-choose.component-BcLME_up.mjs} +2 -2
  44. package/fesm2022/{acorex-modules-document-management-drive-choose.component-Bk62GMxv.mjs.map → acorex-modules-document-management-drive-choose.component-BcLME_up.mjs.map} +1 -1
  45. package/fesm2022/{acorex-modules-document-management-drive.component-CdauFuwi.mjs → acorex-modules-document-management-drive.component-BVgm40pD.mjs} +2 -2
  46. package/fesm2022/{acorex-modules-document-management-drive.component-CdauFuwi.mjs.map → acorex-modules-document-management-drive.component-BVgm40pD.mjs.map} +1 -1
  47. package/fesm2022/{acorex-modules-document-management-large-icons-view.component-BkeEB1i8.mjs → acorex-modules-document-management-large-icons-view.component-D9NtNlWh.mjs} +2 -2
  48. package/fesm2022/{acorex-modules-document-management-large-icons-view.component-BkeEB1i8.mjs.map → acorex-modules-document-management-large-icons-view.component-D9NtNlWh.mjs.map} +1 -1
  49. package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-CTp5hvCU.mjs → acorex-modules-document-management-large-tiles-view.component-DUvlPflF.mjs} +2 -2
  50. package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-CTp5hvCU.mjs.map → acorex-modules-document-management-large-tiles-view.component-DUvlPflF.mjs.map} +1 -1
  51. package/fesm2022/{acorex-modules-document-management-link-dialog.component-BXzePJlW.mjs → acorex-modules-document-management-link-dialog.component-Gc-Cwsq-.mjs} +2 -2
  52. package/fesm2022/acorex-modules-document-management-link-dialog.component-Gc-Cwsq-.mjs.map +1 -0
  53. package/fesm2022/{acorex-modules-document-management-list-view.component-Ctk28jwC.mjs → acorex-modules-document-management-list-view.component-CulR4iN1.mjs} +2 -2
  54. package/fesm2022/{acorex-modules-document-management-list-view.component-Ctk28jwC.mjs.map → acorex-modules-document-management-list-view.component-CulR4iN1.mjs.map} +1 -1
  55. package/fesm2022/{acorex-modules-document-management-share-dialog.component-PCK4_jcD.mjs → acorex-modules-document-management-share-dialog.component-Cie7I04V.mjs} +2 -2
  56. package/fesm2022/acorex-modules-document-management-share-dialog.component-Cie7I04V.mjs.map +1 -0
  57. package/fesm2022/{acorex-modules-document-management-share-email-dialog.component-DZEoX29V.mjs → acorex-modules-document-management-share-email-dialog.component-DbRYaPFI.mjs} +2 -2
  58. package/fesm2022/acorex-modules-document-management-share-email-dialog.component-DbRYaPFI.mjs.map +1 -0
  59. package/fesm2022/{acorex-modules-document-management-small-icons-view.component-D81OAgYf.mjs → acorex-modules-document-management-small-icons-view.component-DJI_f_9F.mjs} +2 -2
  60. package/fesm2022/{acorex-modules-document-management-small-icons-view.component-D81OAgYf.mjs.map → acorex-modules-document-management-small-icons-view.component-DJI_f_9F.mjs.map} +1 -1
  61. package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-BNuswkkU.mjs → acorex-modules-document-management-small-tiles-view.component-kNOOhmcY.mjs} +2 -2
  62. package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-BNuswkkU.mjs.map → acorex-modules-document-management-small-tiles-view.component-kNOOhmcY.mjs.map} +1 -1
  63. package/fesm2022/acorex-modules-document-management.mjs +1 -1
  64. package/fesm2022/{acorex-modules-help-desk-acorex-modules-help-desk-CcVD1arq.mjs → acorex-modules-help-desk-acorex-modules-help-desk-BR0maKeU.mjs} +3 -3
  65. package/fesm2022/{acorex-modules-help-desk-acorex-modules-help-desk-CcVD1arq.mjs.map → acorex-modules-help-desk-acorex-modules-help-desk-BR0maKeU.mjs.map} +1 -1
  66. package/fesm2022/{acorex-modules-help-desk-capture-screen.component-BAD2K3Yk.mjs → acorex-modules-help-desk-capture-screen.component-DZFQUHUd.mjs} +2 -2
  67. package/fesm2022/{acorex-modules-help-desk-capture-screen.component-BAD2K3Yk.mjs.map → acorex-modules-help-desk-capture-screen.component-DZFQUHUd.mjs.map} +1 -1
  68. package/fesm2022/acorex-modules-help-desk.mjs +1 -1
  69. package/fesm2022/{acorex-modules-human-capital-management-acorex-modules-human-capital-management-OuRcuL44.mjs → acorex-modules-human-capital-management-acorex-modules-human-capital-management-cb1hY8I2.mjs} +9 -9
  70. package/fesm2022/{acorex-modules-human-capital-management-acorex-modules-human-capital-management-OuRcuL44.mjs.map → acorex-modules-human-capital-management-acorex-modules-human-capital-management-cb1hY8I2.mjs.map} +1 -1
  71. package/fesm2022/{acorex-modules-human-capital-management-employee-skill.entity-CcfQMQcK.mjs → acorex-modules-human-capital-management-employee-skill.entity-DfdiUEju.mjs} +2 -2
  72. package/fesm2022/{acorex-modules-human-capital-management-employee-skill.entity-CcfQMQcK.mjs.map → acorex-modules-human-capital-management-employee-skill.entity-DfdiUEju.mjs.map} +1 -1
  73. package/fesm2022/{acorex-modules-human-capital-management-employee.entity-DstZ_ed2.mjs → acorex-modules-human-capital-management-employee.entity-CP0J0udU.mjs} +2 -2
  74. package/fesm2022/{acorex-modules-human-capital-management-employee.entity-DstZ_ed2.mjs.map → acorex-modules-human-capital-management-employee.entity-CP0J0udU.mjs.map} +1 -1
  75. package/fesm2022/{acorex-modules-human-capital-management-employment-type.entity-Cxpm2FR4.mjs → acorex-modules-human-capital-management-employment-type.entity-0nT4XSi2.mjs} +2 -2
  76. package/fesm2022/{acorex-modules-human-capital-management-employment-type.entity-Cxpm2FR4.mjs.map → acorex-modules-human-capital-management-employment-type.entity-0nT4XSi2.mjs.map} +1 -1
  77. package/fesm2022/{acorex-modules-human-capital-management-leave-request.entity-wNFknszR.mjs → acorex-modules-human-capital-management-leave-request.entity-YGyl6MWh.mjs} +2 -2
  78. package/fesm2022/{acorex-modules-human-capital-management-leave-request.entity-wNFknszR.mjs.map → acorex-modules-human-capital-management-leave-request.entity-YGyl6MWh.mjs.map} +1 -1
  79. package/fesm2022/{acorex-modules-human-capital-management-leave-type.entity-CS5I6afy.mjs → acorex-modules-human-capital-management-leave-type.entity-J9p3UIlS.mjs} +2 -2
  80. package/fesm2022/{acorex-modules-human-capital-management-leave-type.entity-CS5I6afy.mjs.map → acorex-modules-human-capital-management-leave-type.entity-J9p3UIlS.mjs.map} +1 -1
  81. package/fesm2022/{acorex-modules-human-capital-management-position-assignment.entity-ClzIrdYi.mjs → acorex-modules-human-capital-management-position-assignment.entity-DBz-A04O.mjs} +2 -2
  82. package/fesm2022/{acorex-modules-human-capital-management-position-assignment.entity-ClzIrdYi.mjs.map → acorex-modules-human-capital-management-position-assignment.entity-DBz-A04O.mjs.map} +1 -1
  83. package/fesm2022/{acorex-modules-human-capital-management-skill-level.entity-CA_afJbJ.mjs → acorex-modules-human-capital-management-skill-level.entity-CV9vEbTH.mjs} +2 -2
  84. package/fesm2022/{acorex-modules-human-capital-management-skill-level.entity-CA_afJbJ.mjs.map → acorex-modules-human-capital-management-skill-level.entity-CV9vEbTH.mjs.map} +1 -1
  85. package/fesm2022/{acorex-modules-human-capital-management-skill.entity-B0rZeAGS.mjs → acorex-modules-human-capital-management-skill.entity-n6HyUWfU.mjs} +9 -3
  86. package/fesm2022/acorex-modules-human-capital-management-skill.entity-n6HyUWfU.mjs.map +1 -0
  87. package/fesm2022/acorex-modules-human-capital-management.mjs +1 -1
  88. package/fesm2022/{acorex-modules-report-management-report-create-root.component-Cy7fMpif.mjs → acorex-modules-report-management-report-create-root.component-w6pWujhV.mjs} +2 -2
  89. package/fesm2022/acorex-modules-report-management-report-create-root.component-w6pWujhV.mjs.map +1 -0
  90. package/fesm2022/acorex-modules-report-management.mjs +1 -1
  91. package/fesm2022/acorex-modules-security-management.mjs +2 -2
  92. package/fesm2022/acorex-modules-security-management.mjs.map +1 -1
  93. package/fesm2022/acorex-modules-text-template-management.mjs +1 -251
  94. package/fesm2022/acorex-modules-text-template-management.mjs.map +1 -1
  95. package/package.json +10 -10
  96. package/text-template-management/index.d.ts +2 -23
  97. package/fesm2022/acorex-modules-application-management-acorex-modules-application-management-3Z51H2O-.mjs.map +0 -1
  98. package/fesm2022/acorex-modules-application-management-menu-list.component-LIRwdWs6.mjs +0 -731
  99. package/fesm2022/acorex-modules-application-management-menu-list.component-LIRwdWs6.mjs.map +0 -1
  100. package/fesm2022/acorex-modules-auth-user-sessions.component-CYtCo5d1.mjs.map +0 -1
  101. package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-CwVDh52l.mjs.map +0 -1
  102. package/fesm2022/acorex-modules-document-management-link-dialog.component-BXzePJlW.mjs.map +0 -1
  103. package/fesm2022/acorex-modules-document-management-share-dialog.component-PCK4_jcD.mjs.map +0 -1
  104. package/fesm2022/acorex-modules-document-management-share-email-dialog.component-DZEoX29V.mjs.map +0 -1
  105. package/fesm2022/acorex-modules-human-capital-management-skill.entity-B0rZeAGS.mjs.map +0 -1
  106. package/fesm2022/acorex-modules-report-management-report-create-root.component-Cy7fMpif.mjs.map +0 -1
@@ -2,8 +2,8 @@ import * as i0 from '@angular/core';
2
2
  import { inject, Injector, Injectable, runInInjectionContext, computed, effect, HostBinding, ChangeDetectionStrategy, Component, NgModule, EventEmitter, signal, Output, Input, input, output, viewChild } from '@angular/core';
3
3
  import { AXP_PERMISSION_DEFINITION_PROVIDER } from '@acorex/platform/auth';
4
4
  import { AXPSearchCommandProvider, createAllQueryView, createQueryView, AXPEntityQueryType, AXPEntityCommandScope, AXP_MENU_PROVIDER, AXP_SETTING_DEFINITION_PROVIDER, AXP_SEARCH_PROVIDER } from '@acorex/platform/common';
5
- import { AXPDataSourceDefinitionProviderService, AXPDataGenerator, AXP_DATASOURCE_DEFINITION_PROVIDER, AXP_EXPRESSION_EVALUATOR_SCOPE_PROVIDER } from '@acorex/platform/core';
6
- import { AXPEntityService, AXPEntityDefinitionRegistryService, AXMEntityCrudServiceImpl, entityMasterCrudActions, entityMasterRecordActions, ensureListActions, actionExists, AXP_ENTITY_ACTION_PLUGIN, AXP_ENTITY_DEFINITION_LOADER } from '@acorex/platform/layout/entity';
5
+ import { AXPDataSourceDefinitionProviderService, AXPDataGenerator, AXPTagProvider, AXP_TAG_PROVIDER, AXP_DATASOURCE_DEFINITION_PROVIDER, AXP_EXPRESSION_EVALUATOR_SCOPE_PROVIDER } from '@acorex/platform/core';
6
+ import { AXPEntityService, AXPEntityDefinitionRegistryService, AXMEntityCrudServiceImpl, entityMasterCrudActions, entityMasterRecordActions, entityMasterDeleteAction, ensureListActions, actionExists, AXP_ENTITY_ACTION_PLUGIN, AXP_ENTITY_DEFINITION_LOADER } from '@acorex/platform/layout/entity';
7
7
  import * as i4 from '@acorex/platform/layout/widget-core';
8
8
  import { AXPWidgetRegistryService, AXPWidgetsCatalog, AXP_WIDGETS_EDITOR_CATEGORY, AXPValueWidgetComponent, AXPWidgetCoreModule, AXPWidgetGroupEnum, AXPPageStatus } from '@acorex/platform/layout/widget-core';
9
9
  import { AXPQueryService } from '@acorex/platform/runtime';
@@ -76,6 +76,12 @@ const RootConfig = {
76
76
  titlePlural: `t('metaDataDefinitionPlural', { scope: "${config.i18n}" })`,
77
77
  icon: 'fa-light fa-server',
78
78
  },
79
+ tag: {
80
+ name: 'Tag',
81
+ source: 'DataManagement.Tag',
82
+ title: '@general:terms.common.tag',
83
+ icon: 'fa-light fa-tags',
84
+ },
79
85
  },
80
86
  };
81
87
 
@@ -84,6 +90,7 @@ const AXPDataManagementMenuKeys = {
84
90
  Queries: 'data-management:menu:queries',
85
91
  DataSources: 'data-management:menu:data-sources',
86
92
  MetaDataDefinitions: 'data-management:menu:metadata-definitions',
93
+ Tags: 'data-management:menu:tags',
87
94
  };
88
95
 
89
96
  class AXMMenuProvider {
@@ -125,6 +132,13 @@ class AXMMenuProvider {
125
132
  icon: RootConfig.entities.metaDataDefinition.icon,
126
133
  priority: 9005,
127
134
  },
135
+ {
136
+ name: AXPDataManagementMenuKeys.Tags,
137
+ text: '@general:terms.common.tags',
138
+ icon: RootConfig.entities.tag.icon,
139
+ path: this.entityService.createPath(RootConfig.module.name, RootConfig.entities.tag.name),
140
+ priority: 9006,
141
+ },
128
142
  ]
129
143
  }
130
144
  ]);
@@ -151,6 +165,8 @@ class AXMEntityProvider {
151
165
  return (await Promise.resolve().then(function () { return dataSource_entity; })).dataSourceEntityFactory(this.injector);
152
166
  case RootConfig.entities.metaDataDefinition.name:
153
167
  return (await Promise.resolve().then(function () { return metaDataDefinition_entity; })).metaDataDefinitionFactory(this.injector);
168
+ case RootConfig.entities.tag.name:
169
+ return (await Promise.resolve().then(function () { return tag_entity; })).factory(this.injector);
154
170
  }
155
171
  }
156
172
  return null;
@@ -1474,7 +1490,7 @@ class AXMColumnFilterSelectorWidgetEditComponent extends AXPValueWidgetComponent
1474
1490
  }
1475
1491
  </axp-widgets-container>
1476
1492
  </div>
1477
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "component", type: i2.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "disabledField", "textTemplate", "selectedItems", "isItemTruncated", "showItemTooltip", "dataSource", "minRecordsForSearch", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth", "searchBoxAutoFocus"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed", "onItemSelected", "onItemClick"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorClearButtonComponent, selector: "ax-clear-button", inputs: ["icon"] }, { kind: "ngmodule", type: AXPWidgetCoreModule }, { kind: "component", type: i4.AXPWidgetContainerComponent, selector: "axp-widgets-container", inputs: ["context", "functions"], outputs: ["onContextChanged"] }, { kind: "directive", type: i4.AXPWidgetRendererDirective, selector: "[axp-widget-renderer]", inputs: ["parentNode", "index", "mode", "node"], outputs: ["onOptionsChanged", "onValueChanged"], exportAs: ["widgetRenderer"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1493
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "component", type: i2.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "disabledField", "textTemplate", "selectedItems", "isItemTruncated", "showItemTooltip", "itemHeight", "maxVisibleItems", "dataSource", "minRecordsForSearch", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth", "searchBoxAutoFocus"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed", "onItemSelected", "onItemClick"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorClearButtonComponent, selector: "ax-clear-button", inputs: ["icon"] }, { kind: "ngmodule", type: AXPWidgetCoreModule }, { kind: "component", type: i4.AXPWidgetContainerComponent, selector: "axp-widgets-container", inputs: ["context", "functions"], outputs: ["onContextChanged"] }, { kind: "directive", type: i4.AXPWidgetRendererDirective, selector: "[axp-widget-renderer]", inputs: ["parentNode", "index", "mode", "node"], outputs: ["onOptionsChanged", "onValueChanged"], exportAs: ["widgetRenderer"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1478
1494
  }
1479
1495
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXMColumnFilterSelectorWidgetEditComponent, decorators: [{
1480
1496
  type: Component,
@@ -2347,6 +2363,172 @@ var metaDataDefinition_entity = /*#__PURE__*/Object.freeze({
2347
2363
  metaDataDefinitionFactory: metaDataDefinitionFactory
2348
2364
  });
2349
2365
 
2366
+ //#region ---- Tag Entity Service ----
2367
+ class AXMTagEntityService extends AXMEntityCrudServiceImpl {
2368
+ constructor() {
2369
+ super(`${RootConfig.module.name}.${RootConfig.entities.tag.name}`);
2370
+ }
2371
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXMTagEntityService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2372
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXMTagEntityService, providedIn: 'root' }); }
2373
+ }
2374
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXMTagEntityService, decorators: [{
2375
+ type: Injectable,
2376
+ args: [{
2377
+ providedIn: 'root',
2378
+ }]
2379
+ }], ctorParameters: () => [] });
2380
+
2381
+ //#region ---- Tag Entity Factory ----
2382
+ async function factory(injector) {
2383
+ const dataService = injector.get(AXMTagEntityService);
2384
+ const entityDef = {
2385
+ module: RootConfig.module.name,
2386
+ name: RootConfig.entities.tag.name,
2387
+ plugins: [
2388
+ { name: 'history' },
2389
+ { name: 'lock' },
2390
+ { name: 'compare' },
2391
+ {
2392
+ name: 'color',
2393
+ options: {
2394
+ column: {
2395
+ enabled: true,
2396
+ visible: true,
2397
+ }
2398
+ }
2399
+ }
2400
+ ],
2401
+ title: '@general:terms.common.tag',
2402
+ formats: {
2403
+ individual: '@general:terms.common.tag',
2404
+ plural: '@general:terms.common.tags',
2405
+ searchResult: { title: '{{ title }}', description: RootConfig.module.title },
2406
+ },
2407
+ relatedEntities: [],
2408
+ groups: [
2409
+ { id: 'basic-info', title: '@general:terms.interface.basic-info' },
2410
+ ],
2411
+ properties: [
2412
+ {
2413
+ name: 'title',
2414
+ title: '@general:terms.common.title',
2415
+ groupId: 'basic-info',
2416
+ options: {
2417
+ sort: { enabled: true },
2418
+ filter: { advance: { enabled: true }, inline: { enabled: true } },
2419
+ },
2420
+ schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text } },
2421
+ validations: [{ rule: 'required' }],
2422
+ },
2423
+ {
2424
+ name: 'description',
2425
+ title: '@general:terms.common.description',
2426
+ groupId: 'basic-info',
2427
+ schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.largeText } },
2428
+ },
2429
+ {
2430
+ name: 'scope',
2431
+ title: '@general:terms.common.scope',
2432
+ groupId: 'basic-info',
2433
+ options: {
2434
+ sort: { enabled: true },
2435
+ filter: { advance: { enabled: true }, inline: { enabled: true } },
2436
+ },
2437
+ schema: {
2438
+ dataType: 'string',
2439
+ interface: {
2440
+ type: AXPWidgetsList.Editors.SelectBox,
2441
+ options: {
2442
+ valueField: 'value',
2443
+ textField: 'text',
2444
+ dataSource: [
2445
+ { value: 'system', text: 'System' },
2446
+ { value: 'tenant', text: 'Tenant' },
2447
+ { value: 'user', text: 'User' },
2448
+ ],
2449
+ },
2450
+ },
2451
+ },
2452
+ validations: [{ rule: 'required' }],
2453
+ },
2454
+ ],
2455
+ columns: [
2456
+ { name: 'title' },
2457
+ { name: 'description' },
2458
+ { name: 'scope' },
2459
+ ],
2460
+ commands: {
2461
+ create: { execute: async (data) => ({ id: await dataService.insertOne(data) }) },
2462
+ delete: { execute: async (id) => await dataService.deleteOne(id) },
2463
+ update: { execute: async (data) => await dataService.updateOne(data.id, data) },
2464
+ },
2465
+ queries: {
2466
+ byKey: { execute: async (id) => await dataService.getOne(id), type: AXPEntityQueryType.Single },
2467
+ list: { execute: async (e) => await dataService.query(e), type: AXPEntityQueryType.List },
2468
+ },
2469
+ interfaces: {
2470
+ master: {
2471
+ create: {
2472
+ sections: [{ id: 'basic-info' }],
2473
+ properties: [
2474
+ { name: 'title', layout: { positions: { lg: { colSpan: 6, order: 1 } } } },
2475
+ { name: 'scope', layout: { positions: { lg: { colSpan: 6, order: 2 } } } },
2476
+ { name: 'description', layout: { positions: { lg: { colSpan: 12, order: 3 } } } },
2477
+ ],
2478
+ },
2479
+ update: {
2480
+ sections: [{ id: 'basic-info' }],
2481
+ properties: [
2482
+ { name: 'title', layout: { positions: { lg: { colSpan: 6, order: 1 } } } },
2483
+ { name: 'scope', layout: { positions: { lg: { colSpan: 6, order: 2 } } } },
2484
+ { name: 'description', layout: { positions: { lg: { colSpan: 12, order: 3 } } } },
2485
+ ],
2486
+ },
2487
+ single: {
2488
+ title: '{{title}}',
2489
+ sections: [{ id: 'basic-info' }],
2490
+ properties: [
2491
+ { name: 'title', layout: { positions: { lg: { colSpan: 6, order: 1 } } } },
2492
+ { name: 'scope', layout: { positions: { lg: { colSpan: 6, order: 2 } } } },
2493
+ { name: 'description', layout: { positions: { lg: { colSpan: 12, order: 3 } } } },
2494
+ ],
2495
+ actions: [entityMasterDeleteAction()],
2496
+ },
2497
+ list: {
2498
+ actions: [...entityMasterCrudActions()],
2499
+ views: [createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] })],
2500
+ },
2501
+ },
2502
+ },
2503
+ };
2504
+ return entityDef;
2505
+ }
2506
+ //#endregion
2507
+
2508
+ var tag_entity = /*#__PURE__*/Object.freeze({
2509
+ __proto__: null,
2510
+ factory: factory
2511
+ });
2512
+
2513
+ //#region ---- Tag Entity Module ----
2514
+ class AXMTagEntityModule {
2515
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXMTagEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2516
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.4", ngImport: i0, type: AXMTagEntityModule }); }
2517
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXMTagEntityModule }); }
2518
+ }
2519
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXMTagEntityModule, decorators: [{
2520
+ type: NgModule,
2521
+ args: [{
2522
+ imports: [],
2523
+ exports: [],
2524
+ declarations: [],
2525
+ providers: [],
2526
+ }]
2527
+ }] });
2528
+
2529
+ //#region ---- Tag Entity Types ----
2530
+ //#endregion
2531
+
2350
2532
  class AXMQueryEntityModule {
2351
2533
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXMQueryEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2352
2534
  static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.4", ngImport: i0, type: AXMQueryEntityModule }); }
@@ -2546,7 +2728,7 @@ class AXPQueryBuilderConditionComponent {
2546
2728
  this.removeItem.emit(this.item.id);
2547
2729
  }
2548
2730
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPQueryBuilderConditionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2549
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: AXPQueryBuilderConditionComponent, isStandalone: true, selector: "axp-query-builder-condition", inputs: { item: "item", availableFields: "availableFields" }, outputs: { itemChange: "itemChange", removeItem: "removeItem" }, ngImport: i0, template: "<div class=\"__condition-card\">\n <div class=\"__condition-content\">\n <!-- Field -->\n <div class=\"__field-group\">\n <label class=\"__field-label\">Field</label>\n <ax-select-box\n [dataSource]=\"availableFields\"\n (onValueChanged)=\"onFieldChange($event)\"\n valueField=\"value\"\n textField=\"field\"\n placeholder=\"Select field\"\n >\n </ax-select-box>\n </div>\n\n <!-- render -->\n <div class=\"__field-group\">\n <label class=\"__field-label\">Value</label>\n <axp-widgets-container class=\"ax-flex ax-flex-col ax-gap-2 ax-p-4\" [context]=\"context()\" (onContextChanged)='onContextChange($event)'>\n <ng-container axp-widget-renderer [node]=\"filterNode()\" [mode]=\"'edit'\"> </ng-container>\n </axp-widgets-container>\n </div>\n </div>\n\n <!-- Actions -->\n <div class=\"__condition-actions\">\n <ax-button [look]=\"'blank'\" [color]=\"'danger'\" (onClick)=\"onRemoveClick()\">\n <ax-icon class=\"fa-light fa-trash\"></ax-icon>\n </ax-button>\n </div>\n</div>\n", styles: [".__condition-card{display:flex;align-items:center;align-content:center;gap:.5rem;padding:.75rem;background-color:var(--ax-form-field-background);border:1px solid var(--ax-form-field-border-color);border-radius:var(--ax-form-field-border-radius);width:100%}.__condition-content{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;flex-grow:1}.__field-group{display:flex;flex-direction:column;gap:.25rem}.__field-label{font-size:.75rem;color:var(--ax-text-color-secondary);font-weight:500}.__condition-actions{display:flex;align-items:center}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "component", type: i2.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "disabledField", "textTemplate", "selectedItems", "isItemTruncated", "showItemTooltip", "dataSource", "minRecordsForSearch", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth", "searchBoxAutoFocus"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed", "onItemSelected", "onItemClick"] }, { kind: "ngmodule", type: AXTextBoxModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i2$2.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: "ngmodule", type: AXPWidgetCoreModule }, { kind: "component", type: i4.AXPWidgetContainerComponent, selector: "axp-widgets-container", inputs: ["context", "functions"], outputs: ["onContextChanged"] }, { kind: "directive", type: i4.AXPWidgetRendererDirective, selector: "[axp-widget-renderer]", inputs: ["parentNode", "index", "mode", "node"], outputs: ["onOptionsChanged", "onValueChanged"], exportAs: ["widgetRenderer"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2731
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: AXPQueryBuilderConditionComponent, isStandalone: true, selector: "axp-query-builder-condition", inputs: { item: "item", availableFields: "availableFields" }, outputs: { itemChange: "itemChange", removeItem: "removeItem" }, ngImport: i0, template: "<div class=\"__condition-card\">\n <div class=\"__condition-content\">\n <!-- Field -->\n <div class=\"__field-group\">\n <label class=\"__field-label\">Field</label>\n <ax-select-box\n [dataSource]=\"availableFields\"\n (onValueChanged)=\"onFieldChange($event)\"\n valueField=\"value\"\n textField=\"field\"\n placeholder=\"Select field\"\n >\n </ax-select-box>\n </div>\n\n <!-- render -->\n <div class=\"__field-group\">\n <label class=\"__field-label\">Value</label>\n <axp-widgets-container class=\"ax-flex ax-flex-col ax-gap-2 ax-p-4\" [context]=\"context()\" (onContextChanged)='onContextChange($event)'>\n <ng-container axp-widget-renderer [node]=\"filterNode()\" [mode]=\"'edit'\"> </ng-container>\n </axp-widgets-container>\n </div>\n </div>\n\n <!-- Actions -->\n <div class=\"__condition-actions\">\n <ax-button [look]=\"'blank'\" [color]=\"'danger'\" (onClick)=\"onRemoveClick()\">\n <ax-icon class=\"fa-light fa-trash\"></ax-icon>\n </ax-button>\n </div>\n</div>\n", styles: [".__condition-card{display:flex;align-items:center;align-content:center;gap:.5rem;padding:.75rem;background-color:var(--ax-form-field-background);border:1px solid var(--ax-form-field-border-color);border-radius:var(--ax-form-field-border-radius);width:100%}.__condition-content{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;flex-grow:1}.__field-group{display:flex;flex-direction:column;gap:.25rem}.__field-label{font-size:.75rem;color:var(--ax-text-color-secondary);font-weight:500}.__condition-actions{display:flex;align-items:center}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "component", type: i2.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "disabledField", "textTemplate", "selectedItems", "isItemTruncated", "showItemTooltip", "itemHeight", "maxVisibleItems", "dataSource", "minRecordsForSearch", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth", "searchBoxAutoFocus"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed", "onItemSelected", "onItemClick"] }, { kind: "ngmodule", type: AXTextBoxModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i2$2.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: "ngmodule", type: AXPWidgetCoreModule }, { kind: "component", type: i4.AXPWidgetContainerComponent, selector: "axp-widgets-container", inputs: ["context", "functions"], outputs: ["onContextChanged"] }, { kind: "directive", type: i4.AXPWidgetRendererDirective, selector: "[axp-widget-renderer]", inputs: ["parentNode", "index", "mode", "node"], outputs: ["onOptionsChanged", "onValueChanged"], exportAs: ["widgetRenderer"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
2550
2732
  }
2551
2733
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPQueryBuilderConditionComponent, decorators: [{
2552
2734
  type: Component,
@@ -3180,7 +3362,7 @@ class AXPQueryBuilderWidgetEditComponent extends AXPValueWidgetComponent {
3180
3362
  </div>
3181
3363
  </div>
3182
3364
  </ng-template>
3183
- `, isInline: true, styles: [".__query-builder{width:100%;border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.__query-builder .__header{display:flex;align-items:center;justify-content:space-between;border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));background-image:linear-gradient(to right,var(--tw-gradient-stops));--tw-gradient-from: #eff6ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 246 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #eef2ff var(--tw-gradient-to-position);padding:1rem}.__query-builder .__header .__title{display:flex;align-items:center;gap:.5rem;font-weight:600;--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.__query-builder .__header .__title i{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.__query-builder .__header .__actions{display:flex;gap:.5rem}.__query-builder .__query-content{padding:1rem}.__query-builder .__query-content .__root-group{border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1));padding:1rem}.__query-builder .__query-content .__root-group .__group-header{margin-bottom:1rem;display:flex;align-items:center;justify-content:space-between}.__query-builder .__query-content .__root-group .__group-header .__group-operator{display:flex;align-items:center;gap:.5rem}.__query-builder .__query-content .__root-group .__group-header .__group-operator label{font-size:.875rem;line-height:1.25rem;font-weight:600;--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.__query-builder .__query-content .__root-group .__group-content>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.__query-builder .__query-content .__root-group .__group-content.ax-drop-list-receiving{border-radius:.5rem;border-width:2px;border-style:dashed;--tw-border-opacity: 1;border-color:rgb(147 197 253 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.__query-builder .__query-content .__root-group .__group-content .__query-item{display:flex;align-items:flex-start;gap:.75rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}.__query-builder .__query-content .__root-group .__group-content .__query-item.ax-drag-preview{border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:.5rem;--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.__query-builder .__query-content .__root-group .__group-content .__query-item.ax-drag-disabled .__item-controls .__drag-handle{cursor:not-allowed;opacity:.5}.__query-builder .__query-content .__query-item{position:relative}.__query-builder .__query-content .__query-item.ax-drag-preview{--tw-rotate: 2deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));opacity:.8;--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)}.__query-builder .__query-content .__query-item.ax-drag-placeholder{border-width:2px;border-style:dashed;--tw-border-opacity: 1;border-color:rgb(147 197 253 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1));opacity:.5}.__query-builder .__query-content .__query-item .__item-controls{margin-right:.75rem;display:flex;align-items:center;gap:.5rem}.__query-builder .__query-content .__query-item .__item-controls .__drag-handle{cursor:move;padding:.5rem;--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.__query-builder .__query-content .__query-item .__item-controls .__drag-handle:hover{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1));border-radius:.25rem;--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.__query-builder .__query-content .__query-item .__item-controls .__move-controls{display:flex;flex-direction:column;gap:.25rem}.__query-builder .__query-content .__query-item .__item-content{flex:1 1 0%}.__query-builder .__query-content .__query-item .__item-connector{display:flex;justify-content:center;padding-top:.5rem;padding-bottom:.5rem}.__query-builder .__query-content .__query-item .__item-connector .__operator-badge{border-radius:9999px;border-width:1px;--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1));padding:.25rem .75rem;font-size:.75rem;line-height:1rem;font-weight:600;--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.__query-builder .__query-content .__condition-card{display:flex;align-items:flex-start;gap:1rem;border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:1rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.__query-builder .__query-content .__condition-card .__condition-content{display:grid;flex:1 1 0%;grid-template-columns:repeat(1,minmax(0,1fr));gap:1rem}@media (min-width: 768px){.__query-builder .__query-content .__condition-card .__condition-content{grid-template-columns:repeat(3,minmax(0,1fr))}}.__query-builder .__query-content .__condition-card .__condition-content .__field-group{display:flex;flex-direction:column;gap:.5rem}.__query-builder .__query-content .__condition-card .__condition-content .__field-group .__field-label{font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.__query-builder .__query-content .__condition-card .__condition-actions{display:flex;align-items:center}.__query-builder .__query-content .__nested-group{border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1));padding:.75rem}.__query-builder .__query-content .__nested-group .__group-header{margin-bottom:.75rem;display:flex;align-items:center;justify-content:space-between;border-radius:.25rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:.5rem}.__query-builder .__query-content .__nested-group .__group-header .__group-info{display:flex;align-items:center;gap:.5rem}.__query-builder .__query-content .__nested-group .__group-header .__group-info i{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.__query-builder .__query-content .__nested-group .__group-header .__group-info .__group-label{font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.__query-builder .__query-content .__nested-group .__group-header .__group-operator{display:flex;align-items:center;gap:.5rem}.__query-builder .__query-content .__nested-group .__group-header .__group-actions{display:flex;align-items:center;gap:.25rem}.__query-builder .__query-content .__nested-group .__group-content>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.__query-builder .__query-content .__nested-group .__group-content .__group-empty{padding-top:1rem;padding-bottom:1rem;text-align:center;font-size:.875rem;line-height:1.25rem;font-style:italic;--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.__query-builder .__query-content .__nested-group .__nested-group{margin-left:1rem;--tw-border-opacity: 1;border-color:rgb(253 186 116 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 247 237 / var(--tw-bg-opacity, 1))}.__query-builder .__query-content .__nested-group .__nested-group .__group-header{--tw-border-opacity: 1;border-color:rgb(254 215 170 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 237 213 / var(--tw-bg-opacity, 1))}.__query-builder .__query-content .__nested-group .__nested-group .__group-header .__group-info i{--tw-text-opacity: 1;color:rgb(234 88 12 / var(--tw-text-opacity, 1))}.__query-builder .__query-content .__nested-group .__nested-group .__nested-group{margin-left:1rem;--tw-border-opacity: 1;border-color:rgb(216 180 254 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(250 245 255 / var(--tw-bg-opacity, 1))}.__query-builder .__query-content .__nested-group .__nested-group .__nested-group .__group-header{--tw-border-opacity: 1;border-color:rgb(233 213 255 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1))}.__query-builder .__query-content .__nested-group .__nested-group .__nested-group .__group-header .__group-info i{--tw-text-opacity: 1;color:rgb(147 51 234 / var(--tw-text-opacity, 1))}.__query-builder .__footer{display:flex;align-items:center;justify-content:space-between;border-top-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1));padding:1rem}.__query-builder .__footer .__footer-info{display:flex;align-items:center;gap:.5rem}.__query-builder .__footer .__footer-info .__item-count{font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i2$2.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$2.AXButtonItemComponent, selector: "ax-button-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "component", type: i2$2.AXButtonItemListComponent, selector: "ax-button-item-list", inputs: ["items"], outputs: ["onItemClick"] }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "component", type: i2.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "disabledField", "textTemplate", "selectedItems", "isItemTruncated", "showItemTooltip", "dataSource", "minRecordsForSearch", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth", "searchBoxAutoFocus"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed", "onItemSelected", "onItemClick"] }, { kind: "ngmodule", type: AXTextBoxModule }, { kind: "ngmodule", type: AXFormModule }, { 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: AXDropdownModule }, { kind: "component", type: i5.AXDropdownPanelComponent, selector: "ax-dropdown-panel", inputs: ["isOpen", "fitParent", "dropdownWidth", "position", "placement", "_target", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "directive", type: AXDragDirective, selector: "[axDrag]", inputs: ["dragData", "dragDisabled", "dragTransition", "dragElementClone", "dropZoneGroup", "dragStartDelay", "dragResetOnDblClick", "dragLockAxis", "dragClonedTemplate", "dragCursor", "dragBoundary", "dragTransitionDuration"], outputs: ["dragPositionChanged"] }, { kind: "directive", type: AXDragHandleDirective, selector: "[axDragHandle]" }, { kind: "directive", type: AXDropListDirective, selector: "[axDropList]", inputs: ["sortingDisabled", "dropListGroup", "dropListOrientation"], outputs: ["dropListDropped"], exportAs: ["axDropList"] }, { kind: "component", type: AXPQueryBuilderConditionComponent, selector: "axp-query-builder-condition", inputs: ["item", "availableFields"], outputs: ["itemChange", "removeItem"] }, { kind: "component", type: AXPStateMessageComponent, selector: "axp-state-message", inputs: ["mode", "icon", "title", "description", "variant"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
3365
+ `, isInline: true, styles: [".__query-builder{width:100%;border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.__query-builder .__header{display:flex;align-items:center;justify-content:space-between;border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));background-image:linear-gradient(to right,var(--tw-gradient-stops));--tw-gradient-from: #eff6ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 246 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #eef2ff var(--tw-gradient-to-position);padding:1rem}.__query-builder .__header .__title{display:flex;align-items:center;gap:.5rem;font-weight:600;--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.__query-builder .__header .__title i{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.__query-builder .__header .__actions{display:flex;gap:.5rem}.__query-builder .__query-content{padding:1rem}.__query-builder .__query-content .__root-group{border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1));padding:1rem}.__query-builder .__query-content .__root-group .__group-header{margin-bottom:1rem;display:flex;align-items:center;justify-content:space-between}.__query-builder .__query-content .__root-group .__group-header .__group-operator{display:flex;align-items:center;gap:.5rem}.__query-builder .__query-content .__root-group .__group-header .__group-operator label{font-size:.875rem;line-height:1.25rem;font-weight:600;--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.__query-builder .__query-content .__root-group .__group-content>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.__query-builder .__query-content .__root-group .__group-content.ax-drop-list-receiving{border-radius:.5rem;border-width:2px;border-style:dashed;--tw-border-opacity: 1;border-color:rgb(147 197 253 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.__query-builder .__query-content .__root-group .__group-content .__query-item{display:flex;align-items:flex-start;gap:.75rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}.__query-builder .__query-content .__root-group .__group-content .__query-item.ax-drag-preview{border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:.5rem;--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.__query-builder .__query-content .__root-group .__group-content .__query-item.ax-drag-disabled .__item-controls .__drag-handle{cursor:not-allowed;opacity:.5}.__query-builder .__query-content .__query-item{position:relative}.__query-builder .__query-content .__query-item.ax-drag-preview{--tw-rotate: 2deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));opacity:.8;--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)}.__query-builder .__query-content .__query-item.ax-drag-placeholder{border-width:2px;border-style:dashed;--tw-border-opacity: 1;border-color:rgb(147 197 253 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1));opacity:.5}.__query-builder .__query-content .__query-item .__item-controls{margin-right:.75rem;display:flex;align-items:center;gap:.5rem}.__query-builder .__query-content .__query-item .__item-controls .__drag-handle{cursor:move;padding:.5rem;--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.__query-builder .__query-content .__query-item .__item-controls .__drag-handle:hover{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1));border-radius:.25rem;--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.__query-builder .__query-content .__query-item .__item-controls .__move-controls{display:flex;flex-direction:column;gap:.25rem}.__query-builder .__query-content .__query-item .__item-content{flex:1 1 0%}.__query-builder .__query-content .__query-item .__item-connector{display:flex;justify-content:center;padding-top:.5rem;padding-bottom:.5rem}.__query-builder .__query-content .__query-item .__item-connector .__operator-badge{border-radius:9999px;border-width:1px;--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1));padding:.25rem .75rem;font-size:.75rem;line-height:1rem;font-weight:600;--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.__query-builder .__query-content .__condition-card{display:flex;align-items:flex-start;gap:1rem;border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:1rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.__query-builder .__query-content .__condition-card .__condition-content{display:grid;flex:1 1 0%;grid-template-columns:repeat(1,minmax(0,1fr));gap:1rem}@media (min-width: 768px){.__query-builder .__query-content .__condition-card .__condition-content{grid-template-columns:repeat(3,minmax(0,1fr))}}.__query-builder .__query-content .__condition-card .__condition-content .__field-group{display:flex;flex-direction:column;gap:.5rem}.__query-builder .__query-content .__condition-card .__condition-content .__field-group .__field-label{font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.__query-builder .__query-content .__condition-card .__condition-actions{display:flex;align-items:center}.__query-builder .__query-content .__nested-group{border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1));padding:.75rem}.__query-builder .__query-content .__nested-group .__group-header{margin-bottom:.75rem;display:flex;align-items:center;justify-content:space-between;border-radius:.25rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:.5rem}.__query-builder .__query-content .__nested-group .__group-header .__group-info{display:flex;align-items:center;gap:.5rem}.__query-builder .__query-content .__nested-group .__group-header .__group-info i{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.__query-builder .__query-content .__nested-group .__group-header .__group-info .__group-label{font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.__query-builder .__query-content .__nested-group .__group-header .__group-operator{display:flex;align-items:center;gap:.5rem}.__query-builder .__query-content .__nested-group .__group-header .__group-actions{display:flex;align-items:center;gap:.25rem}.__query-builder .__query-content .__nested-group .__group-content>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.__query-builder .__query-content .__nested-group .__group-content .__group-empty{padding-top:1rem;padding-bottom:1rem;text-align:center;font-size:.875rem;line-height:1.25rem;font-style:italic;--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.__query-builder .__query-content .__nested-group .__nested-group{margin-left:1rem;--tw-border-opacity: 1;border-color:rgb(253 186 116 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 247 237 / var(--tw-bg-opacity, 1))}.__query-builder .__query-content .__nested-group .__nested-group .__group-header{--tw-border-opacity: 1;border-color:rgb(254 215 170 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 237 213 / var(--tw-bg-opacity, 1))}.__query-builder .__query-content .__nested-group .__nested-group .__group-header .__group-info i{--tw-text-opacity: 1;color:rgb(234 88 12 / var(--tw-text-opacity, 1))}.__query-builder .__query-content .__nested-group .__nested-group .__nested-group{margin-left:1rem;--tw-border-opacity: 1;border-color:rgb(216 180 254 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(250 245 255 / var(--tw-bg-opacity, 1))}.__query-builder .__query-content .__nested-group .__nested-group .__nested-group .__group-header{--tw-border-opacity: 1;border-color:rgb(233 213 255 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1))}.__query-builder .__query-content .__nested-group .__nested-group .__nested-group .__group-header .__group-info i{--tw-text-opacity: 1;color:rgb(147 51 234 / var(--tw-text-opacity, 1))}.__query-builder .__footer{display:flex;align-items:center;justify-content:space-between;border-top-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1));padding:1rem}.__query-builder .__footer .__footer-info{display:flex;align-items:center;gap:.5rem}.__query-builder .__footer .__footer-info .__item-count{font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i2$2.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$2.AXButtonItemComponent, selector: "ax-button-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "component", type: i2$2.AXButtonItemListComponent, selector: "ax-button-item-list", inputs: ["items"], outputs: ["onItemClick"] }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "component", type: i2.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "disabledField", "textTemplate", "selectedItems", "isItemTruncated", "showItemTooltip", "itemHeight", "maxVisibleItems", "dataSource", "minRecordsForSearch", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth", "searchBoxAutoFocus"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed", "onItemSelected", "onItemClick"] }, { kind: "ngmodule", type: AXTextBoxModule }, { kind: "ngmodule", type: AXFormModule }, { 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: AXDropdownModule }, { kind: "component", type: i5.AXDropdownPanelComponent, selector: "ax-dropdown-panel", inputs: ["isOpen", "fitParent", "dropdownWidth", "position", "placement", "_target", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "directive", type: AXDragDirective, selector: "[axDrag]", inputs: ["axDrag", "dragData", "dragDisabled", "dragTransition", "dragElementClone", "dropZoneGroup", "dragStartDelay", "dragResetOnDblClick", "dragLockAxis", "dragClonedTemplate", "dragCursor", "dragBoundary", "dragTransitionDuration"], outputs: ["dragPositionChanged"] }, { kind: "directive", type: AXDragHandleDirective, selector: "[axDragHandle]" }, { kind: "directive", type: AXDropListDirective, selector: "[axDropList]", inputs: ["axDropList", "sortingDisabled", "dropListGroup", "dropListOrientation"], outputs: ["dropListDropped"], exportAs: ["axDropList"] }, { kind: "component", type: AXPQueryBuilderConditionComponent, selector: "axp-query-builder-condition", inputs: ["item", "availableFields"], outputs: ["itemChange", "removeItem"] }, { kind: "component", type: AXPStateMessageComponent, selector: "axp-state-message", inputs: ["mode", "icon", "title", "description", "variant"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
3184
3366
  }
3185
3367
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXPQueryBuilderWidgetEditComponent, decorators: [{
3186
3368
  type: Component,
@@ -4863,14 +5045,262 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImpor
4863
5045
  }]
4864
5046
  }] });
4865
5047
 
5048
+ //#region ---- System Tag Provider ----
5049
+ /**
5050
+ * Default system tag provider
5051
+ * Provides readonly system-level tags
5052
+ */
5053
+ class AXPSystemTagProvider extends AXPTagProvider {
5054
+ constructor() {
5055
+ super(...arguments);
5056
+ this.name = 'system';
5057
+ // System tags are readonly - no create/update/delete
5058
+ }
5059
+ /**
5060
+ * Provide default system tags
5061
+ */
5062
+ async provide() {
5063
+ return [
5064
+ {
5065
+ id: 'system-important',
5066
+ title: 'Important',
5067
+ color: '#F44336', // Red - Material Design
5068
+ scope: 'system',
5069
+ description: 'Marks items as important',
5070
+ },
5071
+ {
5072
+ id: 'system-urgent',
5073
+ title: 'Urgent',
5074
+ color: '#FF9800', // Orange - Material Design
5075
+ scope: 'system',
5076
+ description: 'Marks items as urgent',
5077
+ },
5078
+ {
5079
+ id: 'system-todo',
5080
+ title: 'To Do',
5081
+ color: '#2196F3', // Blue - Material Design
5082
+ scope: 'system',
5083
+ description: 'Items pending action',
5084
+ },
5085
+ {
5086
+ id: 'system-in-progress',
5087
+ title: 'In Progress',
5088
+ color: '#03A9F4', // Light Blue - Material Design
5089
+ scope: 'system',
5090
+ description: 'Currently being worked on',
5091
+ },
5092
+ {
5093
+ id: 'system-completed',
5094
+ title: 'Completed',
5095
+ color: '#4CAF50', // Green - Material Design
5096
+ scope: 'system',
5097
+ description: 'Finished items',
5098
+ },
5099
+ {
5100
+ id: 'system-blocked',
5101
+ title: 'Blocked',
5102
+ color: '#FF5722', // Deep Orange - Material Design
5103
+ scope: 'system',
5104
+ description: 'Items that are blocked',
5105
+ },
5106
+ {
5107
+ id: 'system-review',
5108
+ title: 'Review',
5109
+ color: '#FFC107', // Amber - Material Design
5110
+ scope: 'system',
5111
+ description: 'Items pending review',
5112
+ },
5113
+ {
5114
+ id: 'system-bug',
5115
+ title: 'Bug',
5116
+ color: '#E91E63', // Pink - Material Design
5117
+ scope: 'system',
5118
+ description: 'Bug reports',
5119
+ },
5120
+ {
5121
+ id: 'system-feature',
5122
+ title: 'Feature',
5123
+ color: '#009688', // Teal - Material Design
5124
+ scope: 'system',
5125
+ description: 'New feature requests',
5126
+ },
5127
+ {
5128
+ id: 'system-documentation',
5129
+ title: 'Documentation',
5130
+ color: '#00BCD4', // Cyan - Material Design
5131
+ scope: 'system',
5132
+ description: 'Documentation related',
5133
+ },
5134
+ ];
5135
+ }
5136
+ }
5137
+ //#endregion
5138
+
5139
+ //#region ---- Plugin Definition ----
5140
+ const tagsPlugin = {
5141
+ name: 'tags',
5142
+ order: 80,
5143
+ apply: (ctx, options) => {
5144
+ ensureListActions(ctx);
5145
+ const groupId = 'classification';
5146
+ const groups = ctx.groups.list() ?? [];
5147
+ if (!groups.some((g) => g.id === groupId)) {
5148
+ ctx.groups.add({ id: groupId, title: '@general:terms.interface.classification' });
5149
+ }
5150
+ const props = ctx.properties.list();
5151
+ if (!props.some((p) => p.name === 'tags')) {
5152
+ ctx.properties.add({
5153
+ name: 'tags',
5154
+ title: '@general:terms.common.tags',
5155
+ groupId,
5156
+ schema: {
5157
+ dataType: 'string',
5158
+ interface: {
5159
+ type: AXPWidgetsList.Editors.TagEditor,
5160
+ options: {
5161
+ placeholder: '@general:widgets.tag-editor.placeholder',
5162
+ hasClearButton: true,
5163
+ allowDuplicate: false,
5164
+ },
5165
+ },
5166
+ },
5167
+ validations: [],
5168
+ options: {
5169
+ sort: { enabled: false },
5170
+ filter: {
5171
+ advance: { enabled: true },
5172
+ inline: { enabled: true },
5173
+ },
5174
+ },
5175
+ });
5176
+ }
5177
+ // Add tags to columns for list view
5178
+ const columns = ctx.columns.list() ?? [];
5179
+ if (!columns.some((c) => c.name === 'tags')) {
5180
+ ctx.columns.add({
5181
+ name: 'tags',
5182
+ title: '@general:terms.common.tags',
5183
+ width: 200,
5184
+ sortable: false,
5185
+ filterable: true,
5186
+ visible: options?.showInList ?? false,
5187
+ });
5188
+ }
5189
+ ctx.interfaces.master.create.update((create) => {
5190
+ const next = create ?? { sections: [], properties: [] };
5191
+ next.sections = next.sections ?? [];
5192
+ if (!next.sections.some((s) => s.id === groupId)) {
5193
+ next.sections.push({ id: groupId });
5194
+ }
5195
+ next.properties = next.properties ?? [];
5196
+ if (!next.properties.some((p) => p.name === 'tags')) {
5197
+ next.properties.push({
5198
+ name: 'tags',
5199
+ layout: {
5200
+ positions: { lg: { colSpan: options?.colSpan ?? 12 } },
5201
+ },
5202
+ });
5203
+ }
5204
+ return next;
5205
+ });
5206
+ ctx.interfaces.master.modify.update((update) => {
5207
+ const next = update ?? { sections: [], properties: [] };
5208
+ next.sections = next.sections ?? [];
5209
+ if (!next.sections.some((s) => s.id === groupId)) {
5210
+ next.sections.push({ id: groupId });
5211
+ }
5212
+ next.properties = next.properties ?? [];
5213
+ if (!next.properties.some((p) => p.name === 'tags')) {
5214
+ next.properties.push({
5215
+ name: 'tags',
5216
+ layout: {
5217
+ positions: { lg: { colSpan: options?.colSpan ?? 12 } },
5218
+ },
5219
+ });
5220
+ }
5221
+ return next;
5222
+ });
5223
+ ctx.interfaces.master.single.update((single) => {
5224
+ const next = single ?? { title: ctx.entity.title, sections: [], properties: [] };
5225
+ next.sections = next.sections ?? [];
5226
+ if (!next.sections.some((s) => s.id === groupId)) {
5227
+ next.sections.push({ id: groupId });
5228
+ }
5229
+ next.properties = next.properties ?? [];
5230
+ if (!next.properties.some((p) => p.name === 'tags')) {
5231
+ next.properties.push({
5232
+ name: 'tags',
5233
+ layout: {
5234
+ positions: { lg: { colSpan: options?.colSpan ?? 12 } },
5235
+ },
5236
+ });
5237
+ }
5238
+ return next;
5239
+ });
5240
+ },
5241
+ };
5242
+ //#endregion
5243
+
5244
+ //#region ---- System Tag Provider ----
5245
+ /**
5246
+ * Default system tag provider
5247
+ * Provides readonly system-level tags
5248
+ */
5249
+ class AXPUserTagProvider extends AXPTagProvider {
5250
+ constructor() {
5251
+ super(...arguments);
5252
+ this.name = 'user';
5253
+ this.tagService = inject(AXMTagEntityService);
5254
+ }
5255
+ /**
5256
+ * Provide default system tags
5257
+ */
5258
+ async provide() {
5259
+ const tags = await this.tagService.query();
5260
+ return tags.items.map((tag) => ({
5261
+ id: tag.id,
5262
+ title: tag.title,
5263
+ color: tag.color,
5264
+ scope: tag.scope,
5265
+ description: tag.description,
5266
+ }));
5267
+ }
5268
+ }
5269
+ //#endregion
5270
+
5271
+ //#region ---- Module ----
5272
+ class AXMTagsFeatureModule {
5273
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXMTagsFeatureModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
5274
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.4", ngImport: i0, type: AXMTagsFeatureModule }); }
5275
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXMTagsFeatureModule, providers: [
5276
+ { provide: AXP_ENTITY_ACTION_PLUGIN, useValue: tagsPlugin, multi: true },
5277
+ { provide: AXP_TAG_PROVIDER, useClass: AXPSystemTagProvider, multi: true },
5278
+ { provide: AXP_TAG_PROVIDER, useClass: AXPUserTagProvider, multi: true },
5279
+ ] }); }
5280
+ }
5281
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXMTagsFeatureModule, decorators: [{
5282
+ type: NgModule,
5283
+ args: [{
5284
+ providers: [
5285
+ { provide: AXP_ENTITY_ACTION_PLUGIN, useValue: tagsPlugin, multi: true },
5286
+ { provide: AXP_TAG_PROVIDER, useClass: AXPSystemTagProvider, multi: true },
5287
+ { provide: AXP_TAG_PROVIDER, useClass: AXPUserTagProvider, multi: true },
5288
+ ],
5289
+ }]
5290
+ }] });
5291
+
4866
5292
  class AXMDataManagementModule {
4867
5293
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXMDataManagementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
4868
5294
  static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.4", ngImport: i0, type: AXMDataManagementModule, imports: [i4.AXPWidgetCoreModule,
4869
5295
  // Entity Modules
4870
5296
  AXMQueryEntityModule,
4871
5297
  AXMDataSourceEntityModule,
5298
+ //
4872
5299
  AXMMetaDataDefinitionEntityModule,
4873
- AXMMetaDataFeatureModule] }); }
5300
+ AXMMetaDataFeatureModule,
5301
+ //
5302
+ AXMTagEntityModule,
5303
+ AXMTagsFeatureModule] }); }
4874
5304
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXMDataManagementModule, providers: [
4875
5305
  {
4876
5306
  provide: AXP_MENU_PROVIDER,
@@ -4913,8 +5343,12 @@ class AXMDataManagementModule {
4913
5343
  // Entity Modules
4914
5344
  AXMQueryEntityModule,
4915
5345
  AXMDataSourceEntityModule,
5346
+ //
4916
5347
  AXMMetaDataDefinitionEntityModule,
4917
- AXMMetaDataFeatureModule] }); }
5348
+ AXMMetaDataFeatureModule,
5349
+ //
5350
+ AXMTagEntityModule,
5351
+ AXMTagsFeatureModule] }); }
4918
5352
  }
4919
5353
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXMDataManagementModule, decorators: [{
4920
5354
  type: NgModule,
@@ -4926,8 +5360,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImpor
4926
5360
  // Entity Modules
4927
5361
  AXMQueryEntityModule,
4928
5362
  AXMDataSourceEntityModule,
5363
+ //
4929
5364
  AXMMetaDataDefinitionEntityModule,
4930
- AXMMetaDataFeatureModule
5365
+ AXMMetaDataFeatureModule,
5366
+ //
5367
+ AXMTagEntityModule,
5368
+ AXMTagsFeatureModule
4931
5369
  ],
4932
5370
  exports: [],
4933
5371
  declarations: [],
@@ -4975,5 +5413,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImpor
4975
5413
  * Generated bundle index. Do not edit.
4976
5414
  */
4977
5415
 
4978
- export { AXMColumnFilterSelectorWidget, AXMColumnFilterSelectorWidgetColumnComponent, AXMColumnFilterSelectorWidgetEditComponent, AXMColumnFilterSelectorWidgetFilterComponent, AXMColumnFilterSelectorWidgetPrintComponent, AXMColumnFilterSelectorWidgetViewComponent, AXMDataManagementModule, AXMDataSourceEntityModule, AXMDataSourceOutputType, AXMDataSourceService, AXMDataSourceServiceImpl, AXMDataSourceType, AXMEntityProvider, AXMMenuProvider, AXMMetaDataDefinitionEntityModule, AXMMetaDataDefinitionService, AXMMetaDataFeatureModule, AXMMetadataEvaluatorScopeProvider, AXMPMetaDataDefinitionServiceImpl, AXMQueryEntityModule, AXMQueryService, AXMQueryServiceImpl, AXMSearchCommandProvider, AXMSettingProvider, AXM_COLUMN_DEF_WIDGET, AXM_FILTER_DEF_WIDGET, AXPQueryBuilderWidget, AXPQueryBuilderWidgetColumnComponent, AXPQueryBuilderWidgetDesignerComponent, AXPQueryBuilderWidgetEditComponent, AXPQueryBuilderWidgetViewComponent, META_DATA_FORM_FIELD, META_DATA_SELECTOR_FIELD, RootConfig, dataSourceEntityFactory, metaDataDefinitionFactory, queryFactory };
5416
+ export { AXMColumnFilterSelectorWidget, AXMColumnFilterSelectorWidgetColumnComponent, AXMColumnFilterSelectorWidgetEditComponent, AXMColumnFilterSelectorWidgetFilterComponent, AXMColumnFilterSelectorWidgetPrintComponent, AXMColumnFilterSelectorWidgetViewComponent, AXMDataManagementModule, AXMDataSourceEntityModule, AXMDataSourceOutputType, AXMDataSourceService, AXMDataSourceServiceImpl, AXMDataSourceType, AXMEntityProvider, AXMMenuProvider, AXMMetaDataDefinitionEntityModule, AXMMetaDataDefinitionService, AXMMetaDataFeatureModule, AXMMetadataEvaluatorScopeProvider, AXMPMetaDataDefinitionServiceImpl, AXMQueryEntityModule, AXMQueryService, AXMQueryServiceImpl, AXMSearchCommandProvider, AXMSettingProvider, AXMTagEntityModule, AXMTagEntityService, AXMTagsFeatureModule, AXM_COLUMN_DEF_WIDGET, AXM_FILTER_DEF_WIDGET, AXPDataManagementMenuKeys, AXPQueryBuilderWidget, AXPQueryBuilderWidgetColumnComponent, AXPQueryBuilderWidgetDesignerComponent, AXPQueryBuilderWidgetEditComponent, AXPQueryBuilderWidgetViewComponent, AXPSystemTagProvider, META_DATA_FORM_FIELD, META_DATA_SELECTOR_FIELD, RootConfig, dataSourceEntityFactory, factory, metaDataDefinitionFactory, queryFactory, tagsPlugin };
4979
5417
  //# sourceMappingURL=acorex-modules-data-management.mjs.map