@acorex/platform 19.1.2 → 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 (162) hide show
  1. package/common/index.d.ts +2 -0
  2. package/common/lib/app/application.types.d.ts +12 -10
  3. package/common/lib/configs/app.config.d.ts +0 -1
  4. package/common/lib/file-storage/file-storage.service.d.ts +13 -0
  5. package/common/lib/file-storage/file-storage.types.d.ts +143 -0
  6. package/common/lib/file-storage/index.d.ts +2 -0
  7. package/common/lib/filters/filters.service.d.ts +8 -0
  8. package/common/lib/filters/filters.types.d.ts +19 -0
  9. package/common/lib/filters/index.d.ts +2 -0
  10. package/common/lib/settings/setting-definition.provider.d.ts +13 -4
  11. package/common/lib/settings/setting.builder.d.ts +7 -8
  12. package/common/lib/settings/settings.provider.d.ts +2 -7
  13. package/common/lib/settings/settings.service.d.ts +19 -7
  14. package/common/lib/settings/settings.types.d.ts +15 -2
  15. package/core/utils/highlighter.d.ts +1 -1
  16. package/fesm2022/acorex-platform-auth.mjs +5 -4
  17. package/fesm2022/acorex-platform-auth.mjs.map +1 -1
  18. package/fesm2022/acorex-platform-common.mjs +264 -87
  19. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  20. package/fesm2022/acorex-platform-core.mjs +2 -2
  21. package/fesm2022/acorex-platform-core.mjs.map +1 -1
  22. package/fesm2022/acorex-platform-layout-builder.mjs +286 -440
  23. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  24. package/fesm2022/acorex-platform-layout-designer.mjs +18 -18
  25. package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
  26. package/fesm2022/acorex-platform-layout-entity.mjs +335 -232
  27. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  28. package/fesm2022/acorex-platform-layout-filters.mjs +124 -0
  29. package/fesm2022/acorex-platform-layout-filters.mjs.map +1 -0
  30. package/fesm2022/acorex-platform-layout-setting.mjs +219 -132
  31. package/fesm2022/acorex-platform-layout-setting.mjs.map +1 -1
  32. package/fesm2022/acorex-platform-layouts.mjs +4 -5
  33. package/fesm2022/acorex-platform-layouts.mjs.map +1 -1
  34. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-K9B_-q_K.mjs +108 -0
  35. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-K9B_-q_K.mjs.map +1 -0
  36. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-DAmHq1bt.mjs +369 -0
  37. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-DAmHq1bt.mjs.map +1 -0
  38. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-Cd2gxLZt.mjs +87 -0
  39. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-Cd2gxLZt.mjs.map +1 -0
  40. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-6sZdw013.mjs +130 -0
  41. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-6sZdw013.mjs.map +1 -0
  42. package/fesm2022/acorex-platform-themes-default-setting-page.component-BYpCgHZb.mjs +74 -0
  43. package/fesm2022/acorex-platform-themes-default-setting-page.component-BYpCgHZb.mjs.map +1 -0
  44. package/fesm2022/acorex-platform-themes-default-setting-view.component-CdmIphX1.mjs +73 -0
  45. package/fesm2022/acorex-platform-themes-default-setting-view.component-CdmIphX1.mjs.map +1 -0
  46. package/fesm2022/acorex-platform-themes-default.mjs +40 -114
  47. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  48. package/fesm2022/acorex-platform-themes-shared.mjs +465 -157
  49. package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
  50. package/fesm2022/{acorex-platform-widgets-checkbox-widget-column.component-05nKV-UV.mjs → acorex-platform-widgets-checkbox-widget-column.component-jeZBOEhl.mjs} +18 -14
  51. package/fesm2022/acorex-platform-widgets-checkbox-widget-column.component-jeZBOEhl.mjs.map +1 -0
  52. package/fesm2022/{acorex-platform-widgets-checkbox-widget-designer.component-juhKoygA.mjs → acorex-platform-widgets-checkbox-widget-designer.component-RCi5IJOR.mjs} +5 -5
  53. package/fesm2022/acorex-platform-widgets-checkbox-widget-designer.component-RCi5IJOR.mjs.map +1 -0
  54. package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-DU1niJES.mjs +64 -0
  55. package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-DU1niJES.mjs.map +1 -0
  56. package/fesm2022/{acorex-platform-widgets-color-box-widget-designer.component-B2g0ct24.mjs → acorex-platform-widgets-color-box-widget-designer.component-CWhbgmDV.mjs} +4 -4
  57. package/fesm2022/acorex-platform-widgets-color-box-widget-designer.component-CWhbgmDV.mjs.map +1 -0
  58. package/fesm2022/acorex-platform-widgets.mjs +1396 -286
  59. package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
  60. package/fesm2022/acorex-platform-workflow.mjs +9 -3
  61. package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
  62. package/layout/builder/lib/builder/builder.module.d.ts +6 -7
  63. package/layout/builder/lib/builder/builder.service.d.ts +9 -10
  64. package/layout/builder/lib/builder/context-store.service.d.ts +33 -0
  65. package/layout/builder/lib/builder/index.d.ts +4 -2
  66. package/layout/builder/lib/builder/widget-catalog.d.ts +1 -1
  67. package/layout/builder/lib/builder/widget-container.component.d.ts +34 -9
  68. package/layout/builder/lib/builder/widget-groups.d.ts +1 -0
  69. package/layout/builder/lib/builder/widget-map.d.ts +43 -0
  70. package/layout/builder/lib/builder/{widget-renderer.component.directive.d.ts → widget-renderer.directive.d.ts} +29 -4
  71. package/layout/builder/lib/builder/widget-status.types.d.ts +14 -0
  72. package/layout/builder/lib/builder/widget.types.d.ts +51 -59
  73. package/layout/designer/lib/preview/preview-viewer.component.d.ts +2 -2
  74. package/layout/designer/lib/property-viewer/widget-property-viewer.component.d.ts +2 -2
  75. package/layout/entity/lib/entity-master-list.viewmodel.d.ts +8 -2
  76. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.d.ts +0 -1
  77. package/layout/entity/lib/workflows/modify-entity.workflow.d.ts +14 -0
  78. package/layout/filters/README.md +3 -0
  79. package/layout/filters/index.d.ts +1 -0
  80. package/layout/filters/lib/filters.viewmodel.d.ts +30 -0
  81. package/layout/setting/lib/convert-setting-data.d.ts +0 -20
  82. package/layout/setting/lib/setting.viewmodel.d.ts +85 -22
  83. package/layouts/lib/admin/entity-layout/entity-details-view/entity-details-view.component.d.ts +15 -5
  84. package/package.json +13 -9
  85. package/themes/default/index.d.ts +0 -1
  86. package/themes/default/lib/layouts/base/simple-page/simple-page.layout.d.ts +20 -10
  87. package/themes/default/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.d.ts +15 -5
  88. package/themes/default/lib/layouts/entity-layouts/entity-master-create-view/entity-master-create-view.component.d.ts +2 -1
  89. package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.d.ts +17 -6
  90. package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-filters/list-view-option-filters.component.d.ts +14 -0
  91. package/themes/default/lib/layouts/entity-layouts/entity-master-modify-view/entity-master-modify-view.component.d.ts +2 -1
  92. package/themes/default/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.d.ts +15 -5
  93. package/themes/default/lib/layouts/filters-layout/simple-filter-builder/filters-view.component.d.ts +13 -0
  94. package/themes/default/lib/layouts/root-layout/components/header/header.component.d.ts +15 -5
  95. package/themes/default/lib/layouts/root-layout/root-layout.component.d.ts +15 -5
  96. package/themes/default/lib/layouts/setting-layout/setting-page/setting-page.component.d.ts +2 -4
  97. package/themes/default/lib/layouts/setting-layout/setting-view/setting-view.component.d.ts +57 -0
  98. package/themes/shared/index.d.ts +3 -1
  99. package/themes/shared/lib/components/layout-elements/index.d.ts +5 -3
  100. package/themes/shared/lib/components/layout-elements/{layout-page-actions.component.d.ts → layout-actions.component.d.ts} +5 -5
  101. package/themes/shared/lib/components/layout-elements/layout-blocks.component.d.ts +1 -1
  102. package/themes/shared/lib/components/layout-elements/layout-header.component.d.ts +12 -0
  103. package/themes/shared/lib/components/layout-elements/layout-list-component.d.ts +13 -0
  104. package/themes/shared/lib/components/layout-elements/layout-section.component.d.ts +9 -0
  105. package/themes/shared/lib/components/layout-elements/layout-side.component.d.ts +9 -0
  106. package/themes/shared/lib/components/theme-slot.component.d.ts +23 -13
  107. package/themes/shared/lib/palette.provider.d.ts +9 -0
  108. package/themes/shared/lib/setting.keys.d.ts +7 -2
  109. package/themes/shared/lib/setting.provider.d.ts +1 -0
  110. package/themes/shared/lib/shared.module.d.ts +5 -2
  111. package/themes/shared/lib/{services/theme.service.d.ts → theme.service.d.ts} +16 -24
  112. package/themes/shared/lib/theme.types.d.ts +25 -0
  113. package/themes/shared/lib/widgets/theme-color-selection/index.d.ts +2 -0
  114. package/themes/shared/lib/widgets/theme-color-selection/theme-color-selection-widget-edit.component.d.ts +6 -0
  115. package/themes/shared/lib/widgets/theme-color-selection/theme-color-selection-widget.config.d.ts +7 -0
  116. package/widgets/lib/properties/editors.props.d.ts +2 -0
  117. package/widgets/lib/properties/layout.props.d.ts +1 -0
  118. package/widgets/lib/widgets/advance/avatar/avatar-widget-column.component.d.ts +6 -0
  119. package/widgets/lib/widgets/advance/avatar/avatar-widget-designer.component.d.ts +6 -0
  120. package/widgets/lib/widgets/advance/avatar/avatar-widget-edit.component.d.ts +18 -0
  121. package/widgets/lib/widgets/advance/avatar/avatar-widget-print.component.d.ts +6 -0
  122. package/widgets/lib/widgets/advance/avatar/avatar-widget-view.component.d.ts +6 -0
  123. package/widgets/lib/widgets/advance/avatar/avatar-widget.config.d.ts +7 -0
  124. package/widgets/lib/widgets/advance/avatar/index.d.ts +6 -0
  125. package/widgets/lib/widgets/advance/map/map-box-widget-edit.component.d.ts +9 -5
  126. package/widgets/lib/widgets/advance/map/map-box-widget-view.component.d.ts +6 -4
  127. package/widgets/lib/widgets/editors/number/number-box-widget-edit.component.d.ts +1 -7
  128. package/widgets/lib/widgets/editors/select/select-box-widget-edit.component.d.ts +1 -0
  129. package/widgets/lib/widgets/editors/toggle/toggle-widget-edit.component.d.ts +0 -2
  130. package/widgets/lib/widgets/filters/operations/operations.component.d.ts +9 -0
  131. package/widgets/lib/widgets/filters/string-filter/index.d.ts +2 -0
  132. package/widgets/lib/widgets/filters/string-filter/string-filter-widget-edit.component.d.ts +11 -0
  133. package/widgets/lib/widgets/filters/string-filter/string-filter-widget.config.d.ts +7 -0
  134. package/widgets/lib/widgets/index.d.ts +5 -1
  135. package/widgets/lib/widgets/property-editors/border/border-widget-editor.component.d.ts +29 -6
  136. package/widgets/lib/widgets/property-editors/flex-options/flex-options-widget-editor.component.d.ts +31 -0
  137. package/widgets/lib/widgets/property-editors/flex-options/flex-options-widget.config.d.ts +7 -0
  138. package/widgets/lib/widgets/property-editors/flex-options/flex-options-widget.type.d.ts +15 -0
  139. package/widgets/lib/widgets/property-editors/flex-options/index.d.ts +3 -0
  140. package/widgets/lib/widgets/property-editors/property-editor-helper.d.ts +72 -0
  141. package/widgets/lib/widgets/property-editors/property-editor.type.d.ts +35 -0
  142. package/widgets/lib/widgets/property-editors/spacing/index.d.ts +0 -1
  143. package/widgets/lib/widgets/property-editors/spacing/spacing-widget-editor.component.d.ts +20 -7
  144. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-B13KvLX4.mjs +0 -108
  145. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-B13KvLX4.mjs.map +0 -1
  146. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-B6MXHPWi.mjs +0 -305
  147. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-B6MXHPWi.mjs.map +0 -1
  148. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-tKCGSRQT.mjs +0 -87
  149. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-tKCGSRQT.mjs.map +0 -1
  150. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-CHvC0IAV.mjs +0 -130
  151. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-CHvC0IAV.mjs.map +0 -1
  152. package/fesm2022/acorex-platform-widgets-checkbox-widget-column.component-05nKV-UV.mjs.map +0 -1
  153. package/fesm2022/acorex-platform-widgets-checkbox-widget-designer.component-juhKoygA.mjs.map +0 -1
  154. package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-BkWcZ4K9.mjs +0 -72
  155. package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-BkWcZ4K9.mjs.map +0 -1
  156. package/fesm2022/acorex-platform-widgets-color-box-widget-designer.component-B2g0ct24.mjs.map +0 -1
  157. package/layout/builder/lib/builder/widget-renderer.component.d.ts +0 -48
  158. package/themes/default/lib/layouts/setting-layout/index.d.ts +0 -1
  159. package/themes/shared/lib/components/layout-elements/layout-page-header.component.d.ts +0 -11
  160. package/themes/shared/lib/components/layout-elements/layout-page-side.component.d.ts +0 -5
  161. package/widgets/lib/widgets/property-editors/border/border-widget-type.d.ts +0 -18
  162. package/widgets/lib/widgets/property-editors/spacing/spacing-widget-type.d.ts +0 -10
package/common/index.d.ts CHANGED
@@ -4,9 +4,11 @@ export * from './lib/configs/app.config';
4
4
  export * from './lib/configs/config.types';
5
5
  export * from './lib/data/index';
6
6
  export * from './lib/errors';
7
+ export * from './lib/filters';
7
8
  export * from './lib/layout';
8
9
  export * from './lib/schema';
9
10
  export * from './lib/settings';
10
11
  export * from './lib/store';
11
12
  export * from './lib/utils';
12
13
  export * from './lib/workflows';
14
+ export * from './lib/file-storage';
@@ -1,5 +1,5 @@
1
1
  import { AXDataSourceOperator, AXStyleColorType } from '@acorex/components/common';
2
- import { AXPOptionsData, AXPValidationRules } from '@acorex/platform/core';
2
+ import { AXPValidationRules } from '@acorex/platform/core';
3
3
  import { AXPWidgetTypesMap } from '@acorex/platform/layout/builder';
4
4
  import { AXPGridLayoutOptions } from '../layout';
5
5
  export interface AXEntityPropertyWidget {
@@ -94,7 +94,7 @@ export interface AXPEntityProperty {
94
94
  filter?: {
95
95
  advance?: {
96
96
  enabled?: boolean;
97
- widget?: AXPOptionsData;
97
+ widgetType?: AXPWidgetTypesMap[keyof AXPWidgetTypesMap];
98
98
  };
99
99
  inline?: {
100
100
  enabled?: boolean;
@@ -128,18 +128,23 @@ export interface AXPEntityQuery {
128
128
  execute: string | Function;
129
129
  type: AXPEntityQueryType;
130
130
  }
131
- export interface AXPEntityAction {
131
+ export type AXPCommandActionType = 'create' | 'update' | 'delete' | 'print' | 'confirm' | 'report' | 'info' | 'view' | 'archive';
132
+ export interface AXPCommandActionLook {
133
+ color: AXStyleColorType;
134
+ icon: string;
135
+ }
136
+ export interface AXPCommandAction extends Partial<AXPCommandActionLook> {
132
137
  permissions?: string[];
133
138
  command: string | {
134
139
  name: string;
135
140
  options: any;
136
141
  };
137
142
  title: string;
138
- type: 'create' | 'update' | 'delete' | 'print' | 'confirm' | 'report' | 'info' | 'view' | 'archive';
143
+ type: AXPCommandActionType;
139
144
  priority: 'primary' | 'secondary';
140
- color?: 'primary' | 'danger' | 'success' | 'warning';
141
145
  separated?: boolean;
142
- icon?: string;
146
+ }
147
+ export interface AXPEntityAction extends AXPCommandAction {
143
148
  scope: AXPEntityCommandScope;
144
149
  }
145
150
  export interface AXPEntity {
@@ -266,7 +271,4 @@ export interface AXPQuerySort {
266
271
  name: string;
267
272
  dir: 'asc' | 'desc';
268
273
  }
269
- export declare function resolveActionLook(tr: AXPEntityAction): {
270
- icon: string;
271
- color: AXStyleColorType;
272
- };
274
+ export declare function resolveActionLook(tr: AXPEntityAction): AXPCommandActionLook;
@@ -10,7 +10,6 @@ export interface AXPPlatformConfigs {
10
10
  light?: AXPLogoConfig;
11
11
  colored?: AXPLogoConfig;
12
12
  };
13
- useLocalData: boolean;
14
13
  network?: {
15
14
  timeOut?: number;
16
15
  };
@@ -0,0 +1,13 @@
1
+ import { AXPFileStorageCreateRequest, AXPFileStorageInfo, AXPFileStorageUpdateRequest, AXPFileStorageFindRequest } from "./file-storage.types";
2
+ import * as i0 from "@angular/core";
3
+ export declare abstract class AXPFileStorageService {
4
+ abstract save(request: AXPFileStorageCreateRequest): Promise<AXPFileStorageInfo>;
5
+ abstract update(request: AXPFileStorageUpdateRequest): Promise<AXPFileStorageInfo>;
6
+ abstract find(request: AXPFileStorageFindRequest): Promise<AXPFileStorageInfo[]>;
7
+ abstract getInfo(fileId: string): Promise<AXPFileStorageInfo>;
8
+ abstract remove(fileId: string): Promise<void>;
9
+ abstract commit(fileId: string): Promise<void>;
10
+ abstract markForDeletion(fileId: string): Promise<void>;
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPFileStorageService, never>;
12
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXPFileStorageService>;
13
+ }
@@ -0,0 +1,143 @@
1
+ import { AXPMetaData } from "@acorex/platform/core";
2
+ export declare enum AXPFileStorageStatus {
3
+ Temporary = "temporary",// File is not yet associated with a parent entity
4
+ Committed = "committed",// File is fully associated and in use
5
+ PendingDeletion = "pendingDeletion",// File is marked for deletion but not yet removed
6
+ Archived = "archived",// File is archived and no longer actively used
7
+ Error = "error"
8
+ }
9
+ /**
10
+ * Interface representing a file storage request in the Acorex platform.
11
+ */
12
+ export interface AXPFileStorageCreateRequest {
13
+ /**
14
+ * The file to be stored.
15
+ */
16
+ file: File;
17
+ /**
18
+ * The unique identifier of referenced entity.
19
+ */
20
+ refId: string;
21
+ /**
22
+ * The type of the referenced entity.
23
+ */
24
+ refType: string;
25
+ /**
26
+ * The category of the file. profile-picture, company-logo, policy, document, etc.
27
+ */
28
+ category: string;
29
+ /**
30
+ * The folder path where the file should be stored.
31
+ * If null, the service will resolve the path based on metadata, user, tenant, or default rules.
32
+ */
33
+ path?: string;
34
+ /**
35
+ * Metadata associated with the file.
36
+ */
37
+ metadata?: AXPMetaData;
38
+ /**
39
+ * Indicates whether the file is primary or not.
40
+ */
41
+ isPrimary?: boolean;
42
+ }
43
+ export interface AXPFileStorageUpdateRequest {
44
+ /**
45
+ * The unique identifier for the stored file.
46
+ */
47
+ fileId: string;
48
+ /**
49
+ * The folder path where the file should be stored.
50
+ * If null, the service will resolve the path based on metadata, user, tenant, or default rules.
51
+ */
52
+ path?: string;
53
+ /**
54
+ * Metadata associated with the file.
55
+ */
56
+ metadata: AXPMetaData;
57
+ /**
58
+ * Indicates whether the file is primary or not.
59
+ */
60
+ isPrimary?: boolean;
61
+ }
62
+ /**
63
+ * Represents information about a file stored in the AXP file storage system.
64
+ */
65
+ export interface AXPFileStorageInfo {
66
+ /**
67
+ * The unique identifier for the stored file.
68
+ */
69
+ fileId: string;
70
+ /**
71
+ * The unique identifier of referenced entity.
72
+ */
73
+ refId: string;
74
+ /**
75
+ * The type of the referenced entity.
76
+ */
77
+ refType: string;
78
+ /**
79
+ * The category of the file. profile-picture, company-logo, policy, document, etc.
80
+ */
81
+ category: string;
82
+ /**
83
+ * The URL where the file can be accessed.
84
+ */
85
+ url?: string;
86
+ /**
87
+ * The size of the file in bytes.
88
+ */
89
+ size: number;
90
+ /**
91
+ * The MIME type of the file.
92
+ */
93
+ mimeType: string;
94
+ /**
95
+ * The date and time when the file was uploaded.
96
+ */
97
+ uploadedAt: Date;
98
+ /**
99
+ * Indicates whether the file is public or private.
100
+ */
101
+ isPublic: boolean;
102
+ /**
103
+ * Indicates whether the file is primary or not.
104
+ */
105
+ isPrimary?: boolean;
106
+ status: AXPFileStorageStatus;
107
+ }
108
+ /**
109
+ * Represents information about a file stored in the AXP file storage system.
110
+ */
111
+ export interface AXPFileStorageFindRequest {
112
+ /**
113
+ * The unique identifier of referenced entity.
114
+ */
115
+ refId?: string;
116
+ /**
117
+ * The type of the referenced entity.
118
+ */
119
+ refType?: string;
120
+ /**
121
+ * The category of the file. profile-picture, company-logo, policy, document, etc.
122
+ */
123
+ category?: string;
124
+ /**
125
+ * The MIME type of the file.
126
+ */
127
+ mimeType?: string;
128
+ /**
129
+ * Indicates whether the file is public or private.
130
+ */
131
+ isPublic?: boolean;
132
+ /**
133
+ * Indicates whether the file is primary or not.
134
+ */
135
+ isPrimary?: boolean;
136
+ /**
137
+ * The date and time range when the file was uploaded.
138
+ */
139
+ uploadedAtRange?: {
140
+ from: Date;
141
+ to: Date;
142
+ };
143
+ }
@@ -0,0 +1,2 @@
1
+ export * from './file-storage.service';
2
+ export * from './file-storage.types';
@@ -0,0 +1,8 @@
1
+ import { AXPFilterDefinition, AXPFilterQuery } from './filters.types';
2
+ import * as i0 from "@angular/core";
3
+ export declare class AXPFiltersProviderService {
4
+ getAll(): Promise<AXPFilterDefinition[]>;
5
+ execute(): Promise<AXPFilterQuery[]>;
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPFiltersProviderService, never>;
7
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXPFiltersProviderService>;
8
+ }
@@ -0,0 +1,19 @@
1
+ import { AXPWidgetNode } from '@acorex/platform/layout/builder';
2
+ export type AXPFilterOperation = {
3
+ type: 'equal' | 'isNull' | 'isEmpty' | 'lt' | 'lte' | 'gt' | 'gte' | 'startsWith' | 'endsWith' | 'contains';
4
+ negative?: boolean;
5
+ };
6
+ export type AXPFilterLogic = 'and' | 'or';
7
+ export interface AXPFilterDefinition {
8
+ title: string;
9
+ field: string;
10
+ value?: unknown;
11
+ isParametric?: boolean;
12
+ operator: AXPFilterOperation;
13
+ logic?: AXPFilterLogic;
14
+ filters?: AXPFilterDefinition[];
15
+ widget: AXPWidgetNode;
16
+ }
17
+ export interface AXPFilterQuery extends Pick<AXPFilterDefinition, 'field' | 'value' | 'operator' | 'logic'> {
18
+ filters?: AXPFilterQuery[];
19
+ }
@@ -0,0 +1,2 @@
1
+ export * from './filters.service';
2
+ export * from './filters.types';
@@ -1,5 +1,5 @@
1
1
  import { InjectionToken } from '@angular/core';
2
- import { AXPGroupSearchResult, AXPSettingDefinitionGroup, AXPSettingScope } from './settings.types';
2
+ import { AXPGroupSearchResult, AXPSettingDefinitionGroup, AXPSettingScope, AXPSettingScopeKey, AXPSettingValue, AXPSettingValueProvider } from './settings.types';
3
3
  import { AXPSettingDefinitionProviderContext } from './setting.builder';
4
4
  import * as i0 from "@angular/core";
5
5
  export interface AXPSettingDefinitionProvider {
@@ -9,10 +9,19 @@ export declare const AXP_SETTING_DEFINITION_PROVIDER: InjectionToken<AXPSettingD
9
9
  export declare class AXPSettingDefinitionProviderService {
10
10
  private providers;
11
11
  private cache;
12
- items(): Promise<AXPSettingDefinitionGroup[]>;
13
- defaultValues(scope?: AXPSettingScope): Record<string, unknown>;
14
- findGroup(groupName: string): AXPGroupSearchResult | null;
12
+ private load;
13
+ getListAsync(scope: AXPSettingScopeKey): Promise<AXPSettingDefinitionGroup[]>;
14
+ getList(scope: AXPSettingScopeKey): AXPSettingDefinitionGroup[];
15
+ defaultValues(): Promise<Record<string, unknown>>;
16
+ findGroup(scope: AXPSettingScopeKey, groupName: string): AXPGroupSearchResult;
15
17
  private searchRecursive;
16
18
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPSettingDefinitionProviderService, never>;
17
19
  static ɵprov: i0.ɵɵInjectableDeclaration<AXPSettingDefinitionProviderService>;
18
20
  }
21
+ export declare class AXPSettingDefaultValueProvider implements AXPSettingValueProvider {
22
+ private definitionProvider;
23
+ get scope(): AXPSettingScope;
24
+ load(): Promise<AXPSettingValue[]>;
25
+ set(key: string, value: any): Promise<void>;
26
+ set(values: Record<string, any>): Promise<void>;
27
+ }
@@ -1,6 +1,6 @@
1
- import { AXPOptionsData } from '@acorex/platform/core';
2
- import { AXPWidgetTypesMap, AXPWidgetValueTransformFunction } from '@acorex/platform/layout/builder';
3
- import { AXPSettingDefinitionGroup, AXPSettingDefinitionSection, AXPSettingScope } from './index';
1
+ import { AXPOptionsData, AXPValidationRules } from '@acorex/platform/core';
2
+ import { AXPWidgetTriggers, AXPWidgetTypesMap, AXPWidgetValueTransformFunctions } from '@acorex/platform/layout/builder';
3
+ import { AXPSettingDefinitionGroup, AXPSettingDefinitionSection, AXPSettingScopeKey } from './index';
4
4
  export declare class AXPSettingDefinitionProviderContext {
5
5
  private rootGroups;
6
6
  private groupMap;
@@ -26,20 +26,19 @@ export declare class AXPSettingDefinitionSectionBuilder {
26
26
  addSetting(setting: {
27
27
  key: string;
28
28
  title: string;
29
- scope: AXPSettingScope;
29
+ scope: AXPSettingScopeKey;
30
30
  widget: {
31
31
  type: AXPWidgetTypesMap[keyof AXPWidgetTypesMap];
32
32
  options?: AXPOptionsData;
33
+ triggers?: AXPWidgetTriggers;
33
34
  };
34
35
  description?: string;
35
36
  isRequired?: boolean;
36
37
  isInherited?: boolean;
37
38
  isEncrypted?: boolean;
38
39
  defaultValue?: unknown;
39
- valueTransforms?: {
40
- getter?: AXPWidgetValueTransformFunction;
41
- setter?: AXPWidgetValueTransformFunction;
42
- };
40
+ valueTransforms?: AXPWidgetValueTransformFunctions;
41
+ validationRules?: AXPValidationRules;
43
42
  }): this;
44
43
  endSection(): AXPSettingDefinitionGroupBuilder;
45
44
  }
@@ -1,8 +1,3 @@
1
- import { AXPSettingValue } from "./settings.types";
1
+ import { AXPSettingValueProvider } from "./settings.types";
2
2
  import { InjectionToken } from "@angular/core";
3
- export interface AXPSettingValueProvider {
4
- load(): Promise<AXPSettingValue[]>;
5
- set(key: string, value: any): Promise<void>;
6
- set(values: Record<string, any>): Promise<void>;
7
- }
8
- export declare const AXP_SETTING_VALUE_PROVIDER: InjectionToken<AXPSettingValueProvider>;
3
+ export declare const AXP_SETTING_VALUE_PROVIDER: InjectionToken<AXPSettingValueProvider[]>;
@@ -1,17 +1,29 @@
1
1
  import { Subject } from 'rxjs';
2
- import { AXPSettingChangedEvent, AXPSettingValue } from './settings.types';
2
+ import { AXPSettingChangedEvent, AXPSettingScope, AXPSettingValue, AXPSettingValueProvider } from './settings.types';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class AXPSettingValueProviderService {
5
- private readonly settingsProvider;
6
- private settingsCache;
5
+ private readonly providers;
6
+ private readonly definitionService;
7
+ private scopedSettingsCache;
7
8
  readonly onChanged: Subject<AXPSettingChangedEvent>;
9
+ constructor();
8
10
  load(): Promise<AXPSettingValue[]>;
9
11
  get<T = any>(key: string): Promise<T>;
12
+ defaultValues(scope: AXPSettingScope): Promise<Record<string, unknown>>;
13
+ scope(scope: AXPSettingScope): ScopedSettingService;
14
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPSettingValueProviderService, never>;
15
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXPSettingValueProviderService>;
16
+ }
17
+ declare class ScopedSettingService {
18
+ private parent;
19
+ private provider;
20
+ private onChanged;
21
+ private scopeCache;
22
+ constructor(parent: AXPSettingValueProviderService, provider: AXPSettingValueProvider, onChanged: Subject<AXPSettingChangedEvent>, scopeCache: Map<string, any>);
23
+ get<T = any>(key: string): Promise<T>;
10
24
  all(): Promise<any>;
25
+ defaultValues(): Promise<Record<string, unknown>>;
11
26
  set<T = any>(key: string, value: T): Promise<void>;
12
27
  set<T = any>(values: Record<string, T>): Promise<void>;
13
- set<T = any>(key: string, value: T): Promise<void>;
14
- set<T = any>(values: Record<string, T>): Promise<void>;
15
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPSettingValueProviderService, never>;
16
- static ɵprov: i0.ɵɵInjectableDeclaration<AXPSettingValueProviderService>;
17
28
  }
29
+ export {};
@@ -1,20 +1,33 @@
1
1
  import { AXPWidgetNode } from '@acorex/platform/layout/builder';
2
+ export interface AXPSettingValueProvider {
3
+ get scope(): AXPSettingScope;
4
+ load(): Promise<AXPSettingValue[]>;
5
+ set(key: string, value: any): Promise<void>;
6
+ set(values: Record<string, any>): Promise<void>;
7
+ }
2
8
  export interface AXPSettingValue {
3
9
  key: string;
4
10
  value: any;
5
11
  }
6
12
  export interface AXPSettingChangedEvent {
13
+ scope: AXPSettingScope;
7
14
  keys: string[];
8
15
  values: Record<string, any>;
9
16
  entries: AXPSettingValue[];
10
17
  }
11
- export type AXPSettingScope = 'C' | 'G' | 'T' | 'U';
18
+ export type AXPSettingScopeKey = 'C' | 'G' | 'T' | 'U';
19
+ export declare enum AXPSettingScope {
20
+ Environment = "C",
21
+ Global = "G",
22
+ Tenant = "T",
23
+ User = "U"
24
+ }
12
25
  export interface AXPSettingDefinition {
13
26
  name: string;
14
27
  title: string;
15
28
  description?: string;
16
29
  widget: AXPWidgetNode;
17
- scope: AXPSettingScope;
30
+ scope: AXPSettingScopeKey;
18
31
  isRequired?: boolean;
19
32
  isInherited?: boolean;
20
33
  isEncrypted?: boolean;
@@ -16,7 +16,7 @@ export declare class AXHighlightService {
16
16
  /**
17
17
  * Resets all highlighted text within the elements matching the previously used query selector.
18
18
  */
19
- private resetHighlight;
19
+ clear(): void;
20
20
  /**
21
21
  * Applies highlighting to a specific element by matching text against the search value.
22
22
  *
@@ -277,6 +277,8 @@ class AXPSessionService {
277
277
  // if (sessionData.application) {
278
278
  // this.setApplication(sessionData.application);
279
279
  // }
280
+ await this.loadPermissions();
281
+ await this.loadFeatures();
280
282
  await this.signInComplete();
281
283
  }
282
284
  else {
@@ -346,7 +348,6 @@ class AXPSessionService {
346
348
  });
347
349
  }
348
350
  async setTenant(tenant) {
349
- defaultIfEmpty;
350
351
  this.currentTenantSubject.next(tenant);
351
352
  if (tenant) {
352
353
  this.updateSession({ tenant: tenant });
@@ -358,13 +359,14 @@ class AXPSessionService {
358
359
  if (application) {
359
360
  this.updateSession({ application: application });
360
361
  await this.refreshToken();
362
+ await this.loadPermissions();
363
+ await this.loadFeatures();
361
364
  }
362
365
  }
363
366
  async loadPermissions() {
364
367
  try {
365
368
  const permissions = await firstValueFrom(this.permissionLoader.getList(this.getContext()));
366
369
  this.permissionsSubject.next(permissions ?? []);
367
- this.store.dispatch(AXPSignInAction());
368
370
  }
369
371
  catch (error) {
370
372
  console.error('Error loading permissions:', error);
@@ -382,9 +384,8 @@ class AXPSessionService {
382
384
  }
383
385
  }
384
386
  async signInComplete() {
385
- await this.loadPermissions();
386
- await this.loadFeatures();
387
387
  this.status.next(AXPSessionStatus.Authorized);
388
+ this.store.dispatch(AXPSignInAction());
388
389
  }
389
390
  setSession(tokens) {
390
391
  const sessionData = {