@acorex/platform 21.0.0-next.85 → 21.0.0-next.89

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 (81) hide show
  1. package/fesm2022/acorex-platform-auth.mjs +9 -3
  2. package/fesm2022/acorex-platform-auth.mjs.map +1 -1
  3. package/fesm2022/{acorex-platform-common-common-settings.provider-Ytey9uhY.mjs → acorex-platform-common-common-settings.provider-DilV4dql.mjs} +16 -3
  4. package/fesm2022/acorex-platform-common-common-settings.provider-DilV4dql.mjs.map +1 -0
  5. package/fesm2022/acorex-platform-common.mjs +3426 -2488
  6. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  7. package/fesm2022/acorex-platform-contracts.mjs +1160 -9
  8. package/fesm2022/acorex-platform-contracts.mjs.map +1 -1
  9. package/fesm2022/acorex-platform-core.mjs +826 -152
  10. package/fesm2022/acorex-platform-core.mjs.map +1 -1
  11. package/fesm2022/acorex-platform-domain-contracts.mjs +58 -0
  12. package/fesm2022/acorex-platform-domain-contracts.mjs.map +1 -0
  13. package/fesm2022/acorex-platform-domain.mjs +2 -50
  14. package/fesm2022/acorex-platform-domain.mjs.map +1 -1
  15. package/fesm2022/acorex-platform-layout-builder.mjs +98 -189
  16. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  17. package/fesm2022/{acorex-platform-layout-components-binding-expression-editor-popup.component-CXEdvDTf.mjs → acorex-platform-layout-components-binding-expression-editor-popup.component-RttFwaw9.mjs} +17 -4
  18. package/fesm2022/acorex-platform-layout-components-binding-expression-editor-popup.component-RttFwaw9.mjs.map +1 -0
  19. package/fesm2022/acorex-platform-layout-components.mjs +181 -46
  20. package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
  21. package/fesm2022/acorex-platform-layout-designer.mjs +7 -6
  22. package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
  23. package/fesm2022/acorex-platform-layout-entity-attachments-page.component-CwG6n_Yb.mjs.map +1 -1
  24. package/fesm2022/acorex-platform-layout-entity-contracts.mjs +1208 -0
  25. package/fesm2022/acorex-platform-layout-entity-contracts.mjs.map +1 -0
  26. package/fesm2022/acorex-platform-layout-entity-file-list-popup.component--IeMZLIr.mjs.map +1 -1
  27. package/fesm2022/acorex-platform-layout-entity.mjs +1080 -889
  28. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  29. package/fesm2022/acorex-platform-layout-views.mjs +1150 -247
  30. package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
  31. package/fesm2022/acorex-platform-layout-widget-core.mjs +388 -207
  32. package/fesm2022/acorex-platform-layout-widget-core.mjs.map +1 -1
  33. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-CFyfix31.mjs +513 -0
  34. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-CFyfix31.mjs.map +1 -0
  35. package/fesm2022/{acorex-platform-layout-widgets-tabular-data-edit-popup.component-DjpZU6gz.mjs → acorex-platform-layout-widgets-tabular-data-edit-popup.component-CZc2zFlg.mjs} +4 -4
  36. package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-CZc2zFlg.mjs.map +1 -0
  37. package/fesm2022/{acorex-platform-layout-widgets-tabular-data-view-popup.component-gX-3Kx9I.mjs → acorex-platform-layout-widgets-tabular-data-view-popup.component-XWRUVoL4.mjs} +2 -2
  38. package/fesm2022/{acorex-platform-layout-widgets-tabular-data-view-popup.component-gX-3Kx9I.mjs.map → acorex-platform-layout-widgets-tabular-data-view-popup.component-XWRUVoL4.mjs.map} +1 -1
  39. package/fesm2022/acorex-platform-layout-widgets.mjs +1541 -394
  40. package/fesm2022/acorex-platform-layout-widgets.mjs.map +1 -1
  41. package/fesm2022/acorex-platform-runtime.mjs.map +1 -1
  42. package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-Br9p5aXT.mjs → acorex-platform-themes-default-entity-master-single-view.component-DrUwqKKA.mjs} +2 -3
  43. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-DrUwqKKA.mjs.map +1 -0
  44. package/fesm2022/acorex-platform-themes-default.mjs +956 -115
  45. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  46. package/fesm2022/{acorex-platform-themes-shared-settings.provider-BjuzSe0T.mjs → acorex-platform-themes-shared-settings.provider-UyKdkeyk.mjs} +50 -3
  47. package/fesm2022/acorex-platform-themes-shared-settings.provider-UyKdkeyk.mjs.map +1 -0
  48. package/fesm2022/acorex-platform-themes-shared.mjs +104 -24
  49. package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
  50. package/fesm2022/acorex-platform-workflow.mjs +6 -8
  51. package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
  52. package/package.json +9 -5
  53. package/types/acorex-platform-auth.d.ts +3 -1
  54. package/types/acorex-platform-common.d.ts +655 -1268
  55. package/types/acorex-platform-contracts.d.ts +1791 -260
  56. package/types/acorex-platform-core.d.ts +2302 -2800
  57. package/types/acorex-platform-domain-contracts.d.ts +416 -0
  58. package/types/acorex-platform-domain.d.ts +4 -415
  59. package/types/acorex-platform-layout-builder.d.ts +11 -20
  60. package/types/acorex-platform-layout-components.d.ts +29 -5
  61. package/types/acorex-platform-layout-designer.d.ts +2 -1
  62. package/types/acorex-platform-layout-entity-contracts.d.ts +889 -0
  63. package/types/acorex-platform-layout-entity.d.ts +143 -275
  64. package/types/acorex-platform-layout-views.d.ts +147 -31
  65. package/types/acorex-platform-layout-widget-core.d.ts +74 -14
  66. package/types/acorex-platform-layout-widgets.d.ts +136 -38
  67. package/types/acorex-platform-runtime.d.ts +1 -1
  68. package/types/acorex-platform-themes-default.d.ts +227 -73
  69. package/types/acorex-platform-themes-shared.d.ts +4 -0
  70. package/types/acorex-platform-workflow.d.ts +5 -18
  71. package/fesm2022/acorex-platform-common-common-settings.provider-Ytey9uhY.mjs.map +0 -1
  72. package/fesm2022/acorex-platform-layout-components-binding-expression-editor-popup.component-CXEdvDTf.mjs.map +0 -1
  73. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-J0zcGKBX.mjs +0 -116
  74. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-J0zcGKBX.mjs.map +0 -1
  75. package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-DjpZU6gz.mjs.map +0 -1
  76. package/fesm2022/acorex-platform-native.mjs +0 -155
  77. package/fesm2022/acorex-platform-native.mjs.map +0 -1
  78. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-Br9p5aXT.mjs.map +0 -1
  79. package/fesm2022/acorex-platform-themes-shared-settings.provider-BjuzSe0T.mjs.map +0 -1
  80. package/native/README.md +0 -4
  81. package/types/acorex-platform-native.d.ts +0 -28
@@ -1,9 +1,11 @@
1
- import { objectKeyValueTransforms, AXPPlatformScope } from '@acorex/platform/core';
2
- import { AXPWidgetsCatalog } from '@acorex/platform/layout/widget-core';
1
+ import { AXPCommonSettings } from '@acorex/platform/common';
2
+ import { AXPWidgetsCatalog, AXPPlatformScope } from '@acorex/platform/contracts';
3
+ import { objectKeyValueTransforms } from '@acorex/platform/core';
3
4
  import { AXPThemeLayoutSetting, AXPThemeMode, AXPMenuVerticalMode } from './acorex-platform-themes-shared.mjs';
4
5
 
5
6
  const I18N = '@layout:settings.appearance';
6
7
  const verticalModeVisibility = `{{ context.eval('${AXPThemeLayoutSetting.MenuOrientation}') !== 'horizontal' }}`;
8
+ const maxOpenTabsVisibility = `{{ context.eval('${AXPCommonSettings.NavigationMode}') !== 'simple' }}`;
7
9
  class AXPThemeSettingProvider {
8
10
  constructor(_injector) {
9
11
  this._injector = _injector;
@@ -126,6 +128,51 @@ class AXPThemeSettingProvider {
126
128
  },
127
129
  },
128
130
  description: `${I18N}.items.root-menu.badge.description`,
131
+ })
132
+ .endSection()
133
+ // Add the 'Navigation' section
134
+ .addSection('navigation', `${I18N}.items.navigation.title`, `${I18N}.items.navigation.description`)
135
+ .addSetting({
136
+ key: AXPCommonSettings.NavigationMode,
137
+ title: `${I18N}.items.navigation.mode.title`,
138
+ scope: AXPPlatformScope.User,
139
+ isInherited: true,
140
+ defaultValue: 'simple',
141
+ requiresPageRefresh: true,
142
+ widget: {
143
+ type: AXPWidgetsCatalog.menuOrientationChooser,
144
+ options: {
145
+ chooser: 'navigation-mode',
146
+ },
147
+ layout: {
148
+ positions: {
149
+ sm: {
150
+ colSpan: 12,
151
+ },
152
+ md: {
153
+ colSpan: 6,
154
+ },
155
+ },
156
+ },
157
+ },
158
+ description: `${I18N}.items.navigation.mode.description`,
159
+ })
160
+ .addSetting({
161
+ key: AXPCommonSettings.MaxOpenTabs,
162
+ title: `${I18N}.items.navigation.max-open-tabs.title`,
163
+ scope: AXPPlatformScope.User,
164
+ isInherited: true,
165
+ defaultValue: 5,
166
+ widget: {
167
+ type: AXPWidgetsCatalog.number,
168
+ options: {
169
+ minValue: 2,
170
+ maxValue: 20,
171
+ step: 1,
172
+ visibility: maxOpenTabsVisibility,
173
+ },
174
+ },
175
+ description: `${I18N}.items.navigation.max-open-tabs.description`,
129
176
  })
130
177
  .endSection()
131
178
  // Add the 'Scale & Layout' section
@@ -184,4 +231,4 @@ class AXPThemeSettingProvider {
184
231
  }
185
232
 
186
233
  export { AXPThemeSettingProvider };
187
- //# sourceMappingURL=acorex-platform-themes-shared-settings.provider-BjuzSe0T.mjs.map
234
+ //# sourceMappingURL=acorex-platform-themes-shared-settings.provider-UyKdkeyk.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-platform-themes-shared-settings.provider-UyKdkeyk.mjs","sources":["../../../../libs/platform/themes/shared/src/lib/settings.provider.ts"],"sourcesContent":["import { Injector } from '@angular/core';\nimport { AXPCommonSettings, AXPSettingDefinitionProvider, AXPSettingDefinitionProviderContext } from '@acorex/platform/common';\nimport { AXPPlatformScope } from '@acorex/platform/contracts';\nimport { objectKeyValueTransforms } from '@acorex/platform/core';\nimport { AXPWidgetsCatalog } from '@acorex/platform/contracts';\nimport { AXPThemeLayoutSetting } from './contracts/settings.keys';\nimport { AXPMenuVerticalMode, AXPThemeMode } from './contracts/theme.types';\n\nconst I18N = '@layout:settings.appearance';\nconst verticalModeVisibility = `{{ context.eval('${AXPThemeLayoutSetting.MenuOrientation}') !== 'horizontal' }}`;\nconst maxOpenTabsVisibility = `{{ context.eval('${AXPCommonSettings.NavigationMode}') !== 'simple' }}`;\n\nexport class AXPThemeSettingProvider implements AXPSettingDefinitionProvider {\n constructor(private _injector: Injector) {}\n\n async provide(context: AXPSettingDefinitionProviderContext): Promise<void> {\n // Define the 'Appearance Settings' group\n context\n .addGroup(\n 'appearance',\n `${I18N}.nav-title`,\n `${I18N}.description`,\n 'fa-light fa-palette',\n `${I18N}.title`,\n 50,\n )\n\n // Add the 'Brightness & Color' section\n .addSection('color', `${I18N}.items.color.title`, `${I18N}.items.color.description`)\n\n // Add the 'Theme Mode' setting\n .addSetting({\n key: AXPThemeLayoutSetting.Mode,\n title: `${I18N}.items.color.mode.title`,\n scope: AXPPlatformScope.User,\n isInherited: true,\n defaultValue: AXPThemeMode.Light,\n valueTransforms: objectKeyValueTransforms('id'),\n widget: {\n type: AXPWidgetsCatalog.themeModeChooser,\n layout: {\n positions: {\n sm: {\n colSpan: 12,\n },\n md: {\n colSpan: 6,\n },\n },\n },\n },\n description: `${I18N}.items.color.mode.description`,\n })\n\n .addSetting({\n key: AXPThemeLayoutSetting.Palette,\n title: `${I18N}.items.color.palette.title`,\n scope: AXPPlatformScope.User,\n isInherited: true,\n defaultValue: 'default',\n valueTransforms: objectKeyValueTransforms('name'),\n widget: {\n type: 'theme-palette-chooser',\n layout: {\n stacked: true,\n },\n },\n description: `${I18N}.items.color.palette.description`,\n })\n\n // End the 'Brightness & Color' section\n .endSection()\n\n // Add the 'Root Menu' section\n .addSection('root-menu', `${I18N}.items.root-menu.title`, `${I18N}.items.root-menu.description`)\n\n // Add the 'Menu Orientation' setting\n .addSetting({\n key: AXPThemeLayoutSetting.MenuOrientation,\n title: `${I18N}.items.root-menu.title`,\n scope: AXPPlatformScope.User,\n isInherited: true,\n defaultValue: 'vertical',\n valueTransforms: objectKeyValueTransforms('id'),\n widget: {\n type: AXPWidgetsCatalog.menuOrientationChooser,\n layout: {\n positions: {\n sm: {\n colSpan: 12,\n },\n md: {\n colSpan: 6,\n },\n },\n },\n },\n description: `${I18N}.items.root-menu.description`,\n })\n\n .addSetting({\n key: AXPThemeLayoutSetting.MenuVerticalMode,\n title: `${I18N}.items.root-menu.vertical-mode.title`,\n scope: AXPPlatformScope.User,\n isInherited: true,\n defaultValue: AXPMenuVerticalMode.Full,\n valueTransforms: objectKeyValueTransforms('id'),\n widget: {\n type: AXPWidgetsCatalog.menuOrientationChooser,\n options: {\n chooser: 'vertical-mode',\n visibility: verticalModeVisibility,\n },\n layout: {\n positions: {\n sm: {\n colSpan: 12,\n },\n md: {\n colSpan: 6,\n },\n },\n },\n },\n description: `${I18N}.items.root-menu.vertical-mode.description`,\n })\n\n // Add the 'Menu Badge Visibility' setting\n .addSetting({\n key: AXPThemeLayoutSetting.MenuBadgeVisible,\n title: `${I18N}.items.root-menu.badge.title`,\n scope: AXPPlatformScope.User,\n isInherited: true,\n defaultValue: true,\n widget: {\n type: AXPWidgetsCatalog.toggle,\n layout: {\n positions: {\n sm: {\n colSpan: 12,\n },\n md: {\n colSpan: 6,\n },\n },\n },\n },\n description: `${I18N}.items.root-menu.badge.description`,\n })\n .endSection()\n\n // Add the 'Navigation' section\n .addSection('navigation', `${I18N}.items.navigation.title`, `${I18N}.items.navigation.description`)\n .addSetting({\n key: AXPCommonSettings.NavigationMode,\n title: `${I18N}.items.navigation.mode.title`,\n scope: AXPPlatformScope.User,\n isInherited: true,\n defaultValue: 'simple',\n requiresPageRefresh: true,\n widget: {\n type: AXPWidgetsCatalog.menuOrientationChooser,\n options: {\n chooser: 'navigation-mode',\n },\n layout: {\n positions: {\n sm: {\n colSpan: 12,\n },\n md: {\n colSpan: 6,\n },\n },\n },\n },\n description: `${I18N}.items.navigation.mode.description`,\n })\n .addSetting({\n key: AXPCommonSettings.MaxOpenTabs,\n title: `${I18N}.items.navigation.max-open-tabs.title`,\n scope: AXPPlatformScope.User,\n isInherited: true,\n defaultValue: 5,\n widget: {\n type: AXPWidgetsCatalog.number,\n options: {\n minValue: 2,\n maxValue: 20,\n step: 1,\n visibility: maxOpenTabsVisibility,\n },\n },\n description: `${I18N}.items.navigation.max-open-tabs.description`,\n })\n .endSection()\n\n // Add the 'Scale & Layout' section\n .addSection('layout', `${I18N}.items.layout.title`, `${I18N}.items.layout.description`)\n\n // Add the 'Font Style' setting\n .addSetting({\n key: AXPThemeLayoutSetting.Font,\n title: `${I18N}.items.layout.font.title`,\n scope: AXPPlatformScope.User,\n isInherited: true,\n defaultValue: 'system-ui',\n valueTransforms: objectKeyValueTransforms('id'),\n widget: {\n type: AXPWidgetsCatalog.fontStyleChooser,\n layout: {\n positions: {\n sm: {\n colSpan: 12,\n },\n md: {\n colSpan: 6,\n },\n },\n },\n },\n description: `${I18N}.items.layout.font.description`,\n })\n\n // Add the 'Font Size' setting\n .addSetting({\n key: AXPThemeLayoutSetting.FontSize,\n title: `${I18N}.items.layout.size.title`,\n scope: AXPPlatformScope.User,\n isInherited: true,\n defaultValue: 'medium',\n valueTransforms: objectKeyValueTransforms('id'),\n widget: {\n type: AXPWidgetsCatalog.fontSizeChooser,\n layout: {\n positions: {\n sm: {\n colSpan: 12,\n },\n md: {\n colSpan: 6,\n },\n },\n },\n },\n description: `${I18N}.items.layout.size.description`,\n })\n\n // End the 'Scale & Layout' section\n .endSection()\n\n // End the 'Appearance Settings' group\n .endGroup();\n }\n}\n"],"names":[],"mappings":"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"}
@@ -9,8 +9,9 @@ import { CommonModule } from '@angular/common';
9
9
  import * as i0 from '@angular/core';
10
10
  import { computed, inject, effect, ChangeDetectionStrategy, Component, InjectionToken, Injectable, Input, signal, Injector, NgModule } from '@angular/core';
11
11
  import { AXPSettingsService, AXP_SETTING_DEFINITION_PROVIDER } from '@acorex/platform/common';
12
+ import { AXPPlatformScope } from '@acorex/platform/contracts';
12
13
  import * as i1$3 from '@acorex/platform/core';
13
- import { AXPScreenSize, AXPDeviceService, AXPPlatformScope, AXPComponentSlotModule } from '@acorex/platform/core';
14
+ import { AXPScreenSize, AXPDeviceService, AXPDebugService, OVERLAY_LAYOUT_TRACE_NS, AXPComponentSlotModule } from '@acorex/platform/core';
14
15
  import { HttpClient } from '@angular/common/http';
15
16
  import { signalStore, withState, withComputed, withMethods, patchState, withHooks } from '@ngrx/signals';
16
17
  import { timer, firstValueFrom, filter } from 'rxjs';
@@ -128,7 +129,7 @@ withState(() => {
128
129
  return state;
129
130
  }),
130
131
  // Computed Signals
131
- withComputed(({ currentMode: currentTheme, systemThemeMode: systemTheme, sideMenuState, overlaySideMenuOpen, overlayLoading, navigationLoading, menuOrientation, menuVerticalMode, sideMenuWidth, sideMenuCompactWidth, isPrinting, }, deviceService = inject(AXPDeviceService)) => {
132
+ withComputed(({ currentMode: currentTheme, systemThemeMode: systemTheme, sideMenuState, overlaySideMenuOpen, overlayLoading, navigationLoading, overlayLoadingTaskCount, menuOrientation, menuVerticalMode, sideMenuWidth, sideMenuCompactWidth, isPrinting, }, deviceService = inject(AXPDeviceService)) => {
132
133
  const effectiveMenuVerticalMode = computed(() => {
133
134
  if (!deviceService.isLarge()) {
134
135
  return AXPMenuVerticalMode.Full;
@@ -150,6 +151,7 @@ withComputed(({ currentMode: currentTheme, systemThemeMode: systemTheme, sideMen
150
151
  ? sideMenuState() === AXPSideMenuState.Opened
151
152
  : overlaySideMenuOpen()),
152
153
  isOverlayLoading: computed(() => overlayLoading()),
154
+ overlayTaskCount: computed(() => overlayLoadingTaskCount()),
153
155
  isNavigationLoading: computed(() => navigationLoading()),
154
156
  isMenuHorizontal: computed(() => menuOrientation() === AXPMenuOrientation.Horizontal),
155
157
  effectiveMenuVerticalMode,
@@ -206,19 +208,34 @@ withMethods((store, http = inject(HttpClient), settingsService = inject(AXPSetti
206
208
  timeoutId = window.setTimeout(() => {
207
209
  patchState(store, { overlayLoadingTaskCount: store.overlayLoadingTaskCount() + 1 });
208
210
  patchState(store, { overlayLoading: true });
211
+ AXPDebugService.instance?.trace(OVERLAY_LAYOUT_TRACE_NS, 'theme', 'overlay ON (delayed)', () => ({
212
+ taskCount: store.overlayLoadingTaskCount(),
213
+ overlayLoading: store.overlayLoading(),
214
+ delay,
215
+ }));
209
216
  }, delay);
210
217
  }
211
218
  else {
212
219
  patchState(store, { overlayLoadingTaskCount: store.overlayLoadingTaskCount() + 1 });
213
220
  patchState(store, { overlayLoading: true });
221
+ AXPDebugService.instance?.trace(OVERLAY_LAYOUT_TRACE_NS, 'theme', 'overlay ON', () => ({
222
+ taskCount: store.overlayLoadingTaskCount(),
223
+ overlayLoading: store.overlayLoading(),
224
+ }));
214
225
  }
215
226
  // Store timeout ID to clear it if the loading ends before delay
216
227
  store._loadingTimeoutId = timeoutId;
217
228
  }
218
229
  else {
230
+ const prevCount = store.overlayLoadingTaskCount();
219
231
  if (store.overlayLoadingTaskCount() > 0) {
220
232
  patchState(store, { overlayLoadingTaskCount: store.overlayLoadingTaskCount() - 1 });
221
233
  }
234
+ AXPDebugService.instance?.trace(OVERLAY_LAYOUT_TRACE_NS, 'theme', 'overlay OFF requested', () => ({
235
+ prevTaskCount: prevCount,
236
+ taskCount: store.overlayLoadingTaskCount(),
237
+ overlayLoading: store.overlayLoading(),
238
+ }));
222
239
  if (store.overlayLoadingTaskCount() === 0) {
223
240
  const timeoutId = store._loadingTimeoutId;
224
241
  if (timeoutId) {
@@ -228,11 +245,27 @@ withMethods((store, http = inject(HttpClient), settingsService = inject(AXPSetti
228
245
  timer(minimumDisplayTime).subscribe(() => {
229
246
  if (store.overlayLoadingTaskCount() === 0) {
230
247
  patchState(store, { overlayLoading: false });
248
+ AXPDebugService.instance?.trace(OVERLAY_LAYOUT_TRACE_NS, 'theme', 'overlay flag false (after min display)', () => ({
249
+ taskCount: store.overlayLoadingTaskCount(),
250
+ }));
231
251
  }
232
252
  });
233
253
  }
234
254
  }
235
255
  };
256
+ const _clearOverlayLoading = () => {
257
+ const prevCount = store.overlayLoadingTaskCount();
258
+ const timeoutId = store._loadingTimeoutId;
259
+ if (timeoutId) {
260
+ clearTimeout(timeoutId);
261
+ store._loadingTimeoutId = null;
262
+ }
263
+ patchState(store, { overlayLoadingTaskCount: 0, overlayLoading: false });
264
+ AXPDebugService.instance?.trace(OVERLAY_LAYOUT_TRACE_NS, 'theme', 'overlay CLEARED (force)', () => ({
265
+ prevTaskCount: prevCount,
266
+ taskCount: 0,
267
+ }));
268
+ };
236
269
  const _setNavigationLoading = (value, delay) => {
237
270
  if (value) {
238
271
  patchState(store, { navigationLoadingTaskCount: store.navigationLoadingTaskCount() + 1 });
@@ -341,6 +374,10 @@ withMethods((store, http = inject(HttpClient), settingsService = inject(AXPSetti
341
374
  setOverlayLoading(value, delay) {
342
375
  _setOverlayLoading(value, delay);
343
376
  },
377
+ /** Resets overlay task count and hides overlay (page-ready / destroy). */
378
+ clearOverlayLoading() {
379
+ _clearOverlayLoading();
380
+ },
344
381
  async loadSettings() {
345
382
  await _applySettings();
346
383
  },
@@ -1673,21 +1710,54 @@ const AXPFontStyleChooserWidget = {
1673
1710
  class AXPMenuOrientationChooserWidgetComponent extends AXPValueWidgetComponent {
1674
1711
  constructor() {
1675
1712
  super(...arguments);
1676
- this.orientations = computed(() => this.options()['chooser'] === 'vertical-mode'
1677
- ? [
1678
- { id: 'compact', image: '/assets/images/menu-mode/compact.svg' },
1679
- { id: 'full', image: '/assets/images/menu-mode/full.svg' },
1680
- ]
1681
- : [
1682
- { id: 'vertical', icon: 'fa-regular fa-square-ellipsis-vertical' },
1683
- { id: 'horizontal', icon: 'fa-regular fa-square-ellipsis' },
1684
- ], ...(ngDevMode ? [{ debugName: "orientations" }] : /* istanbul ignore next */ []));
1713
+ this.orientations = computed(() => {
1714
+ const chooser = this.options()['chooser'];
1715
+ if (chooser === 'vertical-mode') {
1716
+ return [
1717
+ {
1718
+ id: 'compact',
1719
+ image: '/assets/images/menu-mode/compact.svg',
1720
+ labelKey: '@layout:terms.menu-modes.compact',
1721
+ },
1722
+ {
1723
+ id: 'full',
1724
+ image: '/assets/images/menu-mode/full.svg',
1725
+ labelKey: '@layout:terms.menu-modes.full',
1726
+ },
1727
+ ];
1728
+ }
1729
+ if (chooser === 'navigation-mode') {
1730
+ return [
1731
+ {
1732
+ id: 'simple',
1733
+ image: '/assets/images/navigation-mode/simple.svg',
1734
+ labelKey: '@layout:terms.navigation-modes.simple',
1735
+ },
1736
+ {
1737
+ id: 'tabular',
1738
+ image: '/assets/images/navigation-mode/tabular.svg',
1739
+ labelKey: '@layout:terms.navigation-modes.tabular',
1740
+ },
1741
+ ];
1742
+ }
1743
+ return [
1744
+ {
1745
+ id: 'vertical',
1746
+ icon: 'fa-regular fa-square-ellipsis-vertical',
1747
+ labelKey: '@layout:terms.menu-modes.vertical',
1748
+ },
1749
+ {
1750
+ id: 'horizontal',
1751
+ icon: 'fa-regular fa-square-ellipsis',
1752
+ labelKey: '@layout:terms.menu-modes.horizontal',
1753
+ },
1754
+ ];
1755
+ }, ...(ngDevMode ? [{ debugName: "orientations" }] : /* istanbul ignore next */ []));
1685
1756
  this.selectedOrientation = signal(null, ...(ngDevMode ? [{ debugName: "selectedOrientation" }] : /* istanbul ignore next */ []));
1686
1757
  this.#eff = effect(() => {
1687
1758
  const options = this.orientations();
1688
- const value = this.getValue();
1689
- if (value) {
1690
- this.selectedOrientation.set(options.find((o) => o.id === value) ?? options[0]);
1759
+ if (this.getValue()) {
1760
+ this.selectedOrientation.set(options.find((o) => o.id === this.getValue()) ?? options[0]);
1691
1761
  }
1692
1762
  }, ...(ngDevMode ? [{ debugName: "#eff" }] : /* istanbul ignore next */ []));
1693
1763
  }
@@ -1698,31 +1768,41 @@ class AXPMenuOrientationChooserWidgetComponent extends AXPValueWidgetComponent {
1698
1768
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPMenuOrientationChooserWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1699
1769
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: AXPMenuOrientationChooserWidgetComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
1700
1770
  @for (orientation of orientations(); track orientation.id) {
1701
- <div (click)="onOrientationClick(orientation)" [class.--selected]="orientation.id === selectedOrientation()?.id">
1771
+ <div
1772
+ (click)="onOrientationClick(orientation)"
1773
+ [class.--selected]="orientation.id === selectedOrientation()?.id"
1774
+ [class.--visual]="!!orientation.image"
1775
+ >
1702
1776
  @if (orientation.image) {
1703
- <img [src]="orientation.image" alt="" />
1777
+ <img [src]="orientation.image" [alt]="orientation.labelKey | translate | async" />
1778
+ <span>{{ orientation.labelKey | translate | async }}</span>
1704
1779
  } @else {
1705
1780
  <i [class]="orientation.icon"></i>
1706
- <span>{{ '@layout:terms.menu-modes.' + orientation.id | translate | async }}</span>
1781
+ <span>{{ orientation.labelKey | translate | async }}</span>
1707
1782
  }
1708
1783
  </div>
1709
1784
  }
1710
- `, isInline: true, styles: [":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>div img{height:2rem;width:auto}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}:host>div{padding-top:.25rem!important;padding-bottom:.25rem!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXSelectionCdkModule }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1785
+ `, isInline: true, styles: [":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div.--visual{flex-direction:column;align-items:stretch;justify-content:flex-start;gap:.5rem;padding:.75rem}:host>div.--visual img{display:block;height:auto;width:100%}:host>div.--visual>span{text-align:center;font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.375}:host>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXSelectionCdkModule }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1711
1786
  }
1712
1787
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXPMenuOrientationChooserWidgetComponent, decorators: [{
1713
1788
  type: Component,
1714
1789
  args: [{ template: `
1715
1790
  @for (orientation of orientations(); track orientation.id) {
1716
- <div (click)="onOrientationClick(orientation)" [class.--selected]="orientation.id === selectedOrientation()?.id">
1791
+ <div
1792
+ (click)="onOrientationClick(orientation)"
1793
+ [class.--selected]="orientation.id === selectedOrientation()?.id"
1794
+ [class.--visual]="!!orientation.image"
1795
+ >
1717
1796
  @if (orientation.image) {
1718
- <img [src]="orientation.image" alt="" />
1797
+ <img [src]="orientation.image" [alt]="orientation.labelKey | translate | async" />
1798
+ <span>{{ orientation.labelKey | translate | async }}</span>
1719
1799
  } @else {
1720
1800
  <i [class]="orientation.icon"></i>
1721
- <span>{{ '@layout:terms.menu-modes.' + orientation.id | translate | async }}</span>
1801
+ <span>{{ orientation.labelKey | translate | async }}</span>
1722
1802
  }
1723
1803
  </div>
1724
1804
  }
1725
- `, standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, FormsModule, AXSelectionCdkModule, AXTranslationModule], styles: [":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>div img{height:2rem;width:auto}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}:host>div{padding-top:.25rem!important;padding-bottom:.25rem!important}\n"] }]
1805
+ `, standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, FormsModule, AXSelectionCdkModule, AXTranslationModule], styles: [":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div.--visual{flex-direction:column;align-items:stretch;justify-content:flex-start;gap:.5rem;padding:.75rem}:host>div.--visual img{display:block;height:auto;width:100%}:host>div.--visual>span{text-align:center;font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.375}:host>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}\n"] }]
1726
1806
  }] });
1727
1807
 
1728
1808
  var menuOrientationChooserWidget_component = /*#__PURE__*/Object.freeze({
@@ -2246,7 +2326,7 @@ class AXPThemesSharedModule {
2246
2326
  provide: AXP_SETTING_DEFINITION_PROVIDER,
2247
2327
  useFactory: async () => {
2248
2328
  const injector = inject(Injector);
2249
- const provider = (await import('./acorex-platform-themes-shared-settings.provider-BjuzSe0T.mjs')).AXPThemeSettingProvider;
2329
+ const provider = (await import('./acorex-platform-themes-shared-settings.provider-UyKdkeyk.mjs')).AXPThemeSettingProvider;
2250
2330
  return new provider(injector);
2251
2331
  },
2252
2332
  multi: true,
@@ -2286,7 +2366,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
2286
2366
  provide: AXP_SETTING_DEFINITION_PROVIDER,
2287
2367
  useFactory: async () => {
2288
2368
  const injector = inject(Injector);
2289
- const provider = (await import('./acorex-platform-themes-shared-settings.provider-BjuzSe0T.mjs')).AXPThemeSettingProvider;
2369
+ const provider = (await import('./acorex-platform-themes-shared-settings.provider-UyKdkeyk.mjs')).AXPThemeSettingProvider;
2290
2370
  return new provider(injector);
2291
2371
  },
2292
2372
  multi: true,