@acorex/platform 19.1.3 → 19.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/common/index.d.ts +1 -0
- package/common/lib/app/application.types.d.ts +2 -2
- package/common/lib/file-storage/file-storage.service.d.ts +13 -0
- package/common/lib/file-storage/file-storage.types.d.ts +143 -0
- package/common/lib/file-storage/index.d.ts +2 -0
- package/common/lib/filters/filters.types.d.ts +2 -1
- package/common/lib/settings/setting-definition.provider.d.ts +12 -5
- package/common/lib/settings/setting.builder.d.ts +4 -3
- package/common/lib/settings/settings.provider.d.ts +2 -7
- package/common/lib/settings/settings.service.d.ts +19 -7
- package/common/lib/settings/settings.types.d.ts +15 -2
- package/core/utils/highlighter.d.ts +1 -1
- package/fesm2022/acorex-platform-common.mjs +194 -74
- package/fesm2022/acorex-platform-common.mjs.map +1 -1
- package/fesm2022/acorex-platform-core.mjs +2 -2
- package/fesm2022/acorex-platform-core.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-builder.mjs +245 -444
- package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-designer.mjs +13 -13
- package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-entity.mjs +59 -54
- package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-filters.mjs +82 -5
- package/fesm2022/acorex-platform-layout-filters.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-setting.mjs +73 -91
- package/fesm2022/acorex-platform-layout-setting.mjs.map +1 -1
- package/fesm2022/acorex-platform-layouts.mjs +3 -4
- package/fesm2022/acorex-platform-layouts.mjs.map +1 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-K9B_-q_K.mjs +108 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-K9B_-q_K.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-DAmHq1bt.mjs +369 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-DAmHq1bt.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-Cd2gxLZt.mjs +87 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-Cd2gxLZt.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-6sZdw013.mjs +130 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-6sZdw013.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-setting-page.component-BYpCgHZb.mjs +74 -0
- package/fesm2022/acorex-platform-themes-default-setting-page.component-BYpCgHZb.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-setting-view.component-CdmIphX1.mjs +73 -0
- package/fesm2022/acorex-platform-themes-default-setting-view.component-CdmIphX1.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default.mjs +20 -20
- package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
- package/fesm2022/acorex-platform-themes-shared.mjs +288 -81
- package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
- package/fesm2022/{acorex-platform-widgets-checkbox-widget-column.component-05nKV-UV.mjs → acorex-platform-widgets-checkbox-widget-column.component-jeZBOEhl.mjs} +18 -14
- package/fesm2022/acorex-platform-widgets-checkbox-widget-column.component-jeZBOEhl.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-checkbox-widget-designer.component-B_Gec5Qf.mjs → acorex-platform-widgets-checkbox-widget-designer.component-RCi5IJOR.mjs} +4 -4
- package/fesm2022/{acorex-platform-widgets-checkbox-widget-designer.component-B_Gec5Qf.mjs.map → acorex-platform-widgets-checkbox-widget-designer.component-RCi5IJOR.mjs.map} +1 -1
- package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-DU1niJES.mjs +64 -0
- package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-DU1niJES.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-color-box-widget-designer.component-B2g0ct24.mjs → acorex-platform-widgets-color-box-widget-designer.component-CWhbgmDV.mjs} +4 -4
- package/fesm2022/acorex-platform-widgets-color-box-widget-designer.component-CWhbgmDV.mjs.map +1 -0
- package/fesm2022/acorex-platform-widgets.mjs +1309 -334
- package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
- package/fesm2022/acorex-platform-workflow.mjs +9 -3
- package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
- package/layout/builder/lib/builder/builder.module.d.ts +6 -7
- package/layout/builder/lib/builder/builder.service.d.ts +9 -10
- package/layout/builder/lib/builder/context-store.service.d.ts +33 -0
- package/layout/builder/lib/builder/index.d.ts +4 -2
- package/layout/builder/lib/builder/widget-catalog.d.ts +1 -1
- package/layout/builder/lib/builder/widget-container.component.d.ts +34 -9
- package/layout/builder/lib/builder/widget-groups.d.ts +1 -0
- package/layout/builder/lib/builder/widget-map.d.ts +43 -0
- package/layout/builder/lib/builder/{widget-renderer.component.directive.d.ts → widget-renderer.directive.d.ts} +26 -0
- package/layout/builder/lib/builder/widget-status.types.d.ts +14 -0
- package/layout/builder/lib/builder/widget.types.d.ts +41 -55
- package/layout/designer/lib/preview/preview-viewer.component.d.ts +2 -2
- package/layout/designer/lib/property-viewer/widget-property-viewer.component.d.ts +2 -2
- package/layout/entity/lib/entity-master-list.viewmodel.d.ts +7 -2
- package/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.d.ts +0 -1
- package/layout/filters/lib/filters.viewmodel.d.ts +13 -3
- package/layout/setting/lib/convert-setting-data.d.ts +0 -20
- package/layout/setting/lib/setting.viewmodel.d.ts +65 -4
- package/layouts/lib/admin/entity-layout/entity-details-view/entity-details-view.component.d.ts +15 -5
- package/package.json +15 -15
- package/themes/default/lib/layouts/base/simple-page/simple-page.layout.d.ts +15 -5
- package/themes/default/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.d.ts +15 -5
- package/themes/default/lib/layouts/entity-layouts/entity-master-create-view/entity-master-create-view.component.d.ts +2 -1
- package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.d.ts +17 -6
- package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-filters/list-view-option-filters.component.d.ts +6 -3
- package/themes/default/lib/layouts/entity-layouts/entity-master-modify-view/entity-master-modify-view.component.d.ts +2 -1
- package/themes/default/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.d.ts +15 -5
- package/themes/default/lib/layouts/filters-layout/simple-filter-builder/filters-view.component.d.ts +6 -5
- package/themes/default/lib/layouts/root-layout/components/header/header.component.d.ts +15 -5
- package/themes/default/lib/layouts/root-layout/root-layout.component.d.ts +15 -5
- package/themes/default/lib/layouts/setting-layout/setting-page/setting-page.component.d.ts +0 -47
- package/themes/default/lib/layouts/setting-layout/setting-view/setting-view.component.d.ts +19 -5
- package/themes/shared/index.d.ts +3 -1
- package/themes/shared/lib/components/theme-slot.component.d.ts +23 -13
- package/themes/shared/lib/palette.provider.d.ts +9 -0
- package/themes/shared/lib/setting.keys.d.ts +7 -2
- package/themes/shared/lib/setting.provider.d.ts +1 -0
- package/themes/shared/lib/shared.module.d.ts +2 -1
- package/themes/shared/lib/{services/theme.service.d.ts → theme.service.d.ts} +16 -24
- package/themes/shared/lib/theme.types.d.ts +25 -0
- package/themes/shared/lib/widgets/theme-color-selection/index.d.ts +2 -0
- package/themes/shared/lib/widgets/theme-color-selection/theme-color-selection-widget-edit.component.d.ts +6 -0
- package/themes/shared/lib/widgets/theme-color-selection/theme-color-selection-widget.config.d.ts +7 -0
- package/widgets/lib/properties/layout.props.d.ts +1 -0
- package/widgets/lib/widgets/advance/avatar/avatar-widget-column.component.d.ts +6 -0
- package/widgets/lib/widgets/advance/avatar/avatar-widget-designer.component.d.ts +6 -0
- package/widgets/lib/widgets/advance/avatar/avatar-widget-edit.component.d.ts +18 -0
- package/widgets/lib/widgets/advance/avatar/avatar-widget-print.component.d.ts +6 -0
- package/widgets/lib/widgets/advance/avatar/avatar-widget-view.component.d.ts +6 -0
- package/widgets/lib/widgets/advance/avatar/avatar-widget.config.d.ts +7 -0
- package/widgets/lib/widgets/advance/avatar/index.d.ts +6 -0
- package/widgets/lib/widgets/advance/map/map-box-widget-edit.component.d.ts +9 -5
- package/widgets/lib/widgets/advance/map/map-box-widget-view.component.d.ts +6 -4
- package/widgets/lib/widgets/editors/number/number-box-widget-edit.component.d.ts +1 -7
- package/widgets/lib/widgets/editors/toggle/toggle-widget-edit.component.d.ts +0 -2
- package/widgets/lib/widgets/filters/operations/operations.component.d.ts +9 -0
- package/widgets/lib/widgets/filters/string-filter/index.d.ts +2 -0
- package/widgets/lib/widgets/filters/string-filter/string-filter-widget-edit.component.d.ts +11 -0
- package/widgets/lib/widgets/filters/string-filter/string-filter-widget.config.d.ts +7 -0
- package/widgets/lib/widgets/index.d.ts +5 -1
- package/widgets/lib/widgets/property-editors/border/border-widget-editor.component.d.ts +29 -7
- package/widgets/lib/widgets/property-editors/border/index.d.ts +0 -1
- package/widgets/lib/widgets/property-editors/flex-options/flex-options-widget-editor.component.d.ts +31 -0
- package/widgets/lib/widgets/property-editors/flex-options/flex-options-widget.config.d.ts +7 -0
- package/widgets/lib/widgets/property-editors/flex-options/flex-options-widget.type.d.ts +15 -0
- package/widgets/lib/widgets/property-editors/flex-options/index.d.ts +3 -0
- package/widgets/lib/widgets/property-editors/property-editor-helper.d.ts +72 -0
- package/widgets/lib/widgets/property-editors/property-editor.type.d.ts +35 -0
- package/widgets/lib/widgets/property-editors/spacing/index.d.ts +0 -1
- package/widgets/lib/widgets/property-editors/spacing/spacing-widget-editor.component.d.ts +11 -9
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-CSyR4pYp.mjs +0 -108
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-CSyR4pYp.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-xHWp2Lk-.mjs +0 -368
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-xHWp2Lk-.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-n7mYNduJ.mjs +0 -87
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-n7mYNduJ.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-DjyYU0Gy.mjs +0 -130
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-DjyYU0Gy.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-setting-page.component-6Dd8MGqr.mjs +0 -78
- package/fesm2022/acorex-platform-themes-default-setting-page.component-6Dd8MGqr.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-setting-view.component-BgiMClew.mjs +0 -58
- package/fesm2022/acorex-platform-themes-default-setting-view.component-BgiMClew.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-checkbox-widget-column.component-05nKV-UV.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-BkWcZ4K9.mjs +0 -72
- package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-BkWcZ4K9.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-color-box-widget-designer.component-B2g0ct24.mjs.map +0 -1
- package/layout/builder/lib/builder/widget-renderer.component.d.ts +0 -48
- package/widgets/lib/widgets/property-editors/border/border-widget-type.d.ts +0 -18
- package/widgets/lib/widgets/property-editors/spacing/spacing-widget-type.d.ts +0 -16
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Component, ViewEncapsulation, ChangeDetectionStrategy, viewChild, contentChild, computed, inject, NgModule } from '@angular/core';
|
|
2
|
+
import { Component, ViewEncapsulation, ChangeDetectionStrategy, viewChild, contentChild, computed, InjectionToken, inject, NgModule } from '@angular/core';
|
|
3
3
|
import * as i1 from '@angular/common';
|
|
4
4
|
import { CommonModule } from '@angular/common';
|
|
5
5
|
import * as i2 from '@acorex/components/button';
|
|
@@ -8,13 +8,18 @@ import * as i3 from '@acorex/components/decorators';
|
|
|
8
8
|
import { AXDecoratorModule } from '@acorex/components/decorators';
|
|
9
9
|
import * as i4 from '@acorex/components/dropdown';
|
|
10
10
|
import { AXDropdownModule } from '@acorex/components/dropdown';
|
|
11
|
-
import * as i1$
|
|
12
|
-
import { AXPSettingValueProviderService, AXP_SETTING_DEFINITION_PROVIDER, AXPComponentSlotModule } from '@acorex/platform/common';
|
|
11
|
+
import * as i1$2 from '@acorex/platform/common';
|
|
12
|
+
import { AXPSettingScope, AXPSettingValueProviderService, AXP_SETTING_DEFINITION_PROVIDER, AXPComponentSlotModule } from '@acorex/platform/common';
|
|
13
13
|
import { signalStore, withState, withComputed, withMethods, patchState, withHooks } from '@ngrx/signals';
|
|
14
|
-
import { timer } from 'rxjs';
|
|
14
|
+
import { timer, filter } from 'rxjs';
|
|
15
15
|
import * as i5 from '@acorex/core/translation';
|
|
16
16
|
import { AXTranslationModule } from '@acorex/core/translation';
|
|
17
|
-
import
|
|
17
|
+
import * as i2$1 from '@acorex/platform/layout/builder';
|
|
18
|
+
import { objectKeyValueTransforms, AXPWidgetsCatalog, AXPWidgetComponent, AXP_WIDGETS_LAYOUT_GROUP, AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';
|
|
19
|
+
import { FormsModule } from '@angular/forms';
|
|
20
|
+
import * as i1$1 from '@acorex/cdk/selection';
|
|
21
|
+
import { AXSelectionModule } from '@acorex/cdk/selection';
|
|
22
|
+
import { AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DISABLED_PROPERTY } from '@acorex/platform/widgets';
|
|
18
23
|
|
|
19
24
|
class AXPThemeLayoutBlockComponent {
|
|
20
25
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemeLayoutBlockComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
@@ -304,17 +309,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
|
304
309
|
|
|
305
310
|
var AXPThemeLayoutSetting;
|
|
306
311
|
(function (AXPThemeLayoutSetting) {
|
|
307
|
-
AXPThemeLayoutSetting["
|
|
308
|
-
AXPThemeLayoutSetting["
|
|
312
|
+
AXPThemeLayoutSetting["Name"] = "layout:theme:name";
|
|
313
|
+
AXPThemeLayoutSetting["Layout"] = "layout:theme:layout";
|
|
314
|
+
AXPThemeLayoutSetting["Font"] = "layout:theme:font:family";
|
|
315
|
+
AXPThemeLayoutSetting["FontSize"] = "layout:theme:font:size";
|
|
316
|
+
AXPThemeLayoutSetting["Palette"] = "layout:theme:palette";
|
|
317
|
+
AXPThemeLayoutSetting["Mode"] = "layout:theme:mode";
|
|
318
|
+
AXPThemeLayoutSetting["SideMenuStatus"] = "layout:theme:sidemenu";
|
|
309
319
|
})(AXPThemeLayoutSetting || (AXPThemeLayoutSetting = {}));
|
|
310
320
|
|
|
311
321
|
// Theme Enum
|
|
312
|
-
var
|
|
313
|
-
(function (
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
})(
|
|
322
|
+
var AXPThemeMode;
|
|
323
|
+
(function (AXPThemeMode) {
|
|
324
|
+
AXPThemeMode["Light"] = "light";
|
|
325
|
+
AXPThemeMode["Dark"] = "dark";
|
|
326
|
+
AXPThemeMode["System"] = "system";
|
|
327
|
+
})(AXPThemeMode || (AXPThemeMode = {}));
|
|
318
328
|
// Screen Size Enum
|
|
319
329
|
var AXPScreenSize;
|
|
320
330
|
(function (AXPScreenSize) {
|
|
@@ -335,12 +345,31 @@ var AXPSideMenuState;
|
|
|
335
345
|
AXPSideMenuState["Opened"] = "opened";
|
|
336
346
|
AXPSideMenuState["Closed"] = "closed";
|
|
337
347
|
})(AXPSideMenuState || (AXPSideMenuState = {}));
|
|
348
|
+
|
|
349
|
+
const AXP_THEME_PALETTE_PROVIDER = new InjectionToken('AXP_THEME_PALETTE_PROVIDER', {
|
|
350
|
+
providedIn: 'root',
|
|
351
|
+
factory: () => {
|
|
352
|
+
return new AXPThemePaletteProviderDefault();
|
|
353
|
+
}
|
|
354
|
+
});
|
|
355
|
+
class AXPThemePaletteProviderDefault {
|
|
356
|
+
getList() {
|
|
357
|
+
return Promise.resolve([
|
|
358
|
+
{
|
|
359
|
+
name: 'default',
|
|
360
|
+
title: 'Default',
|
|
361
|
+
path: '/assets/themes/palletes/default.css',
|
|
362
|
+
colors: []
|
|
363
|
+
},
|
|
364
|
+
]);
|
|
365
|
+
}
|
|
366
|
+
}
|
|
367
|
+
|
|
338
368
|
// ThemeStore - Manages theme settings, system changes, and loading states
|
|
339
369
|
const AXPLayoutThemeService = signalStore({ providedIn: 'root' },
|
|
340
370
|
// Initial State
|
|
341
371
|
withState(() => {
|
|
342
|
-
const
|
|
343
|
-
const systemPrefersDark = window.matchMedia('(prefers-color-scheme: dark)').matches;
|
|
372
|
+
const isSystemDark = window.matchMedia('(prefers-color-scheme: dark)').matches;
|
|
344
373
|
// Helper function to get the initial screen size
|
|
345
374
|
const getScreenSize = () => {
|
|
346
375
|
const width = window.innerWidth;
|
|
@@ -366,8 +395,13 @@ withState(() => {
|
|
|
366
395
|
return 'ontouchstart' in window || navigator.maxTouchPoints > 0;
|
|
367
396
|
};
|
|
368
397
|
const state = {
|
|
369
|
-
|
|
370
|
-
|
|
398
|
+
currentMode: AXPThemeMode.System,
|
|
399
|
+
currentPallete: 'default',
|
|
400
|
+
systemThemeMode: (isSystemDark ? AXPThemeMode.Dark : AXPThemeMode.Light),
|
|
401
|
+
font: {
|
|
402
|
+
family: 'system-ui',
|
|
403
|
+
size: 'medium'
|
|
404
|
+
},
|
|
371
405
|
screenSize: getScreenSize(),
|
|
372
406
|
deviceType: getDeviceType(),
|
|
373
407
|
isTouchDevice: isTouchDevice(),
|
|
@@ -382,12 +416,12 @@ withState(() => {
|
|
|
382
416
|
return state;
|
|
383
417
|
}),
|
|
384
418
|
// Computed Signals
|
|
385
|
-
withComputed(({ currentTheme, systemTheme, screenSize, deviceType, isTouchDevice, sideMenuState, overlayLoading, navigationLoading }) => ({
|
|
386
|
-
isDarkMode: computed(() => currentTheme() ===
|
|
387
|
-
(currentTheme() ===
|
|
388
|
-
isLightMode: computed(() => currentTheme() ===
|
|
389
|
-
(currentTheme() ===
|
|
390
|
-
isSystemMode: computed(() => currentTheme() ===
|
|
419
|
+
withComputed(({ currentMode: currentTheme, systemThemeMode: systemTheme, screenSize, deviceType, isTouchDevice, sideMenuState, overlayLoading, navigationLoading }) => ({
|
|
420
|
+
isDarkMode: computed(() => currentTheme() === AXPThemeMode.Dark ||
|
|
421
|
+
(currentTheme() === AXPThemeMode.System && systemTheme() === AXPThemeMode.Dark)),
|
|
422
|
+
isLightMode: computed(() => currentTheme() === AXPThemeMode.Light ||
|
|
423
|
+
(currentTheme() === AXPThemeMode.System && systemTheme() === AXPThemeMode.Light)),
|
|
424
|
+
isSystemMode: computed(() => currentTheme() === AXPThemeMode.System),
|
|
391
425
|
isSideMenuOpen: computed(() => sideMenuState() === AXPSideMenuState.Opened),
|
|
392
426
|
isSmall: computed(() => screenSize() === AXPScreenSize.Small),
|
|
393
427
|
isMedium: computed(() => screenSize() === AXPScreenSize.Medium),
|
|
@@ -400,22 +434,37 @@ withComputed(({ currentTheme, systemTheme, screenSize, deviceType, isTouchDevice
|
|
|
400
434
|
isNavigationLoading: computed(() => navigationLoading()),
|
|
401
435
|
})),
|
|
402
436
|
// Methods for State Management
|
|
403
|
-
withMethods((store, settingService = inject(AXPSettingValueProviderService)) => {
|
|
404
|
-
const
|
|
437
|
+
withMethods((store, settingService = inject(AXPSettingValueProviderService), pallets = inject(AXP_THEME_PALETTE_PROVIDER)) => {
|
|
438
|
+
const _applySettings = async () => {
|
|
405
439
|
// Initialize theme and side menu setting from storage
|
|
406
|
-
const
|
|
407
|
-
patchState(store, {
|
|
408
|
-
|
|
440
|
+
const settingThemeMode = (await settingService.get(AXPThemeLayoutSetting.Mode)) ?? AXPThemeMode.Light;
|
|
441
|
+
patchState(store, { currentMode: settingThemeMode });
|
|
442
|
+
//
|
|
443
|
+
const settingThemePallete = (await settingService.get(AXPThemeLayoutSetting.Palette)) ?? 'default';
|
|
444
|
+
patchState(store, { currentPallete: settingThemePallete });
|
|
445
|
+
//
|
|
446
|
+
const settingSideMenu = (await settingService.get(AXPThemeLayoutSetting.SideMenuStatus)) ?? store.sideMenuState();
|
|
409
447
|
patchState(store, { sideMenuState: settingSideMenu });
|
|
410
|
-
|
|
448
|
+
//
|
|
449
|
+
const fontFamily = await settingService.get(AXPThemeLayoutSetting.Font);
|
|
450
|
+
const fontSize = await settingService.get(AXPThemeLayoutSetting.FontSize);
|
|
451
|
+
patchState(store, { font: { family: fontFamily, size: fontSize } });
|
|
452
|
+
//
|
|
453
|
+
await _updateHtmlClass();
|
|
411
454
|
};
|
|
412
455
|
// Update HTML class based on theme
|
|
413
|
-
const
|
|
456
|
+
const _updateHtmlClass = async () => {
|
|
414
457
|
const html = document.getElementsByTagName('html')[0];
|
|
415
|
-
|
|
458
|
+
//
|
|
459
|
+
store.isDarkMode() ? html.classList.add('ax-dark') : html.classList.remove('ax-dark');
|
|
460
|
+
//
|
|
461
|
+
html.style.fontFamily = store.font().family;
|
|
462
|
+
html.style.fontSize = store.font().size;
|
|
463
|
+
//
|
|
464
|
+
await _applyThemePalette(store.currentPallete());
|
|
416
465
|
};
|
|
417
466
|
// Update screen size based on window width
|
|
418
|
-
const
|
|
467
|
+
const _updateScreenSize = () => {
|
|
419
468
|
const width = window.innerWidth;
|
|
420
469
|
let newScreenSize;
|
|
421
470
|
if (width <= 600) {
|
|
@@ -431,33 +480,53 @@ withMethods((store, settingService = inject(AXPSettingValueProviderService)) =>
|
|
|
431
480
|
patchState(store, { screenSize: newScreenSize });
|
|
432
481
|
if (store.sideMenuState() !== AXPSideMenuState.Closed) {
|
|
433
482
|
patchState(store, { sideMenuState: newScreenSize === AXPScreenSize.Small ? AXPSideMenuState.Closed : AXPSideMenuState.Opened });
|
|
434
|
-
settingService.set(AXPThemeLayoutSetting.
|
|
483
|
+
settingService.scope(AXPSettingScope.User).set(AXPThemeLayoutSetting.SideMenuStatus, store.sideMenuState());
|
|
435
484
|
}
|
|
436
485
|
}
|
|
437
486
|
};
|
|
487
|
+
// Helper method to apply a cached theme palette
|
|
488
|
+
const _applyThemePalette = async (name) => {
|
|
489
|
+
const pallete = (await pallets.getList()).find(c => c.name == name);
|
|
490
|
+
if (!pallete) {
|
|
491
|
+
return;
|
|
492
|
+
}
|
|
493
|
+
// Remove all existing theme-related link elements
|
|
494
|
+
const existingLinks = document.querySelectorAll('link[data-theme]');
|
|
495
|
+
existingLinks.forEach(link => document.head.removeChild(link));
|
|
496
|
+
const link = document.createElement('link');
|
|
497
|
+
link.rel = 'stylesheet';
|
|
498
|
+
link.href = pallete.path;
|
|
499
|
+
link.setAttribute('data-theme', name);
|
|
500
|
+
document.head.appendChild(link);
|
|
501
|
+
// Wait for the CSS file to load
|
|
502
|
+
await new Promise((resolve, reject) => {
|
|
503
|
+
link.onload = () => resolve();
|
|
504
|
+
link.onerror = () => reject(new Error(`Failed to load CSS file: ${pallete.path}`));
|
|
505
|
+
});
|
|
506
|
+
};
|
|
438
507
|
const minimumDisplayTime = 500; // milliseconds
|
|
439
508
|
return {
|
|
440
509
|
// Change theme and update HTML class
|
|
441
|
-
|
|
442
|
-
settingService.set(AXPThemeLayoutSetting.
|
|
443
|
-
patchState(store, {
|
|
444
|
-
|
|
510
|
+
changeThemeMode(theme) {
|
|
511
|
+
settingService.scope(AXPSettingScope.User).set(AXPThemeLayoutSetting.Mode, theme);
|
|
512
|
+
patchState(store, { currentMode: theme });
|
|
513
|
+
_updateHtmlClass();
|
|
445
514
|
},
|
|
446
515
|
// Open side menu
|
|
447
516
|
openSideMenu() {
|
|
448
517
|
patchState(store, { sideMenuState: AXPSideMenuState.Opened });
|
|
449
|
-
settingService.set(AXPThemeLayoutSetting.
|
|
518
|
+
settingService.scope(AXPSettingScope.User).set(AXPThemeLayoutSetting.SideMenuStatus, AXPSideMenuState.Opened);
|
|
450
519
|
},
|
|
451
520
|
// Close side menu
|
|
452
521
|
closeSideMenu() {
|
|
453
522
|
patchState(store, { sideMenuState: AXPSideMenuState.Closed });
|
|
454
|
-
settingService.set(AXPThemeLayoutSetting.
|
|
523
|
+
settingService.scope(AXPSettingScope.User).set(AXPThemeLayoutSetting.SideMenuStatus, AXPSideMenuState.Closed);
|
|
455
524
|
},
|
|
456
525
|
// Toggle side menu state
|
|
457
526
|
toggleSideMenu() {
|
|
458
527
|
const newSideMenuState = store.sideMenuState() === AXPSideMenuState.Opened ? AXPSideMenuState.Closed : AXPSideMenuState.Opened;
|
|
459
528
|
patchState(store, { sideMenuState: newSideMenuState });
|
|
460
|
-
settingService.set(AXPThemeLayoutSetting.
|
|
529
|
+
settingService.scope(AXPSettingScope.User).set(AXPThemeLayoutSetting.SideMenuStatus, newSideMenuState);
|
|
461
530
|
},
|
|
462
531
|
// Set navigation loading state with a task counter
|
|
463
532
|
setNavigationLoading(value) {
|
|
@@ -497,16 +566,15 @@ withMethods((store, settingService = inject(AXPSettingValueProviderService)) =>
|
|
|
497
566
|
}
|
|
498
567
|
}
|
|
499
568
|
},
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
updateHtmlClass(store.isDarkMode());
|
|
569
|
+
async loadSettings() {
|
|
570
|
+
await _applySettings();
|
|
503
571
|
},
|
|
504
572
|
// Set up event listener for system theme changes
|
|
505
573
|
_setupSystemColorListener() {
|
|
506
574
|
const mediaQueryList = window.matchMedia('(prefers-color-scheme: dark)');
|
|
507
575
|
const listener = (e) => {
|
|
508
|
-
patchState(store, {
|
|
509
|
-
|
|
576
|
+
patchState(store, { systemThemeMode: e.matches ? AXPThemeMode.Dark : AXPThemeMode.Light });
|
|
577
|
+
_updateHtmlClass();
|
|
510
578
|
};
|
|
511
579
|
mediaQueryList.addEventListener('change', listener);
|
|
512
580
|
return listener;
|
|
@@ -519,7 +587,7 @@ withMethods((store, settingService = inject(AXPSettingValueProviderService)) =>
|
|
|
519
587
|
// Set up event listener for window resize
|
|
520
588
|
_setupResizeListener() {
|
|
521
589
|
const listener = () => {
|
|
522
|
-
|
|
590
|
+
_updateScreenSize();
|
|
523
591
|
};
|
|
524
592
|
window.addEventListener('resize', listener);
|
|
525
593
|
return listener;
|
|
@@ -528,17 +596,15 @@ withMethods((store, settingService = inject(AXPSettingValueProviderService)) =>
|
|
|
528
596
|
_removeResizeListener(listener) {
|
|
529
597
|
window.removeEventListener('resize', listener);
|
|
530
598
|
},
|
|
531
|
-
async loadSettings() {
|
|
532
|
-
applySettings();
|
|
533
|
-
}
|
|
534
599
|
};
|
|
535
600
|
}),
|
|
536
601
|
// Lifecycle Hooks
|
|
537
602
|
withHooks((store, settingService = inject(AXPSettingValueProviderService)) => ({
|
|
538
603
|
onInit() {
|
|
539
604
|
//
|
|
540
|
-
settingService.onChanged.subscribe(async (
|
|
541
|
-
|
|
605
|
+
settingService.onChanged.pipe(filter(c => c.scope == AXPSettingScope.User)).subscribe(async (changes) => {
|
|
606
|
+
const keys = Object.values(AXPThemeLayoutSetting);
|
|
607
|
+
if (changes.keys.some((key) => keys.includes(key))) {
|
|
542
608
|
await store.loadSettings();
|
|
543
609
|
}
|
|
544
610
|
});
|
|
@@ -564,7 +630,7 @@ withHooks((store, settingService = inject(AXPSettingValueProviderService)) => ({
|
|
|
564
630
|
class AXPThemeSlotComponent {
|
|
565
631
|
constructor() {
|
|
566
632
|
this.store = inject(AXPLayoutThemeService);
|
|
567
|
-
this.variants =
|
|
633
|
+
this.variants = AXPThemeMode;
|
|
568
634
|
}
|
|
569
635
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemeSlotComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
570
636
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.3", type: AXPThemeSlotComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: `
|
|
@@ -581,7 +647,7 @@ class AXPThemeSlotComponent {
|
|
|
581
647
|
<ax-dropdown-panel *translate="let t">
|
|
582
648
|
<ax-button-item-list>
|
|
583
649
|
<ax-button-item
|
|
584
|
-
(onClick)="store.
|
|
650
|
+
(onClick)="store.changeThemeMode(variants.Light)"
|
|
585
651
|
[text]="(t('theme.light') | async)!"
|
|
586
652
|
[selected]="!store.isSystemMode() && !store.isDarkMode()"
|
|
587
653
|
>
|
|
@@ -590,7 +656,7 @@ class AXPThemeSlotComponent {
|
|
|
590
656
|
</ax-prefix>
|
|
591
657
|
</ax-button-item>
|
|
592
658
|
<ax-button-item
|
|
593
|
-
(onClick)="store.
|
|
659
|
+
(onClick)="store.changeThemeMode(variants.Dark)"
|
|
594
660
|
[text]="(t('theme.dark') | async)!"
|
|
595
661
|
[selected]="!store.isSystemMode() && store.isDarkMode()"
|
|
596
662
|
>
|
|
@@ -599,7 +665,7 @@ class AXPThemeSlotComponent {
|
|
|
599
665
|
</ax-prefix>
|
|
600
666
|
</ax-button-item>
|
|
601
667
|
<ax-button-item
|
|
602
|
-
(onClick)="store.
|
|
668
|
+
(onClick)="store.changeThemeMode(variants.System)"
|
|
603
669
|
[text]="(t('theme.system') | async)!"
|
|
604
670
|
[selected]="store.isSystemMode()"
|
|
605
671
|
>
|
|
@@ -629,7 +695,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
|
629
695
|
<ax-dropdown-panel *translate="let t">
|
|
630
696
|
<ax-button-item-list>
|
|
631
697
|
<ax-button-item
|
|
632
|
-
(onClick)="store.
|
|
698
|
+
(onClick)="store.changeThemeMode(variants.Light)"
|
|
633
699
|
[text]="(t('theme.light') | async)!"
|
|
634
700
|
[selected]="!store.isSystemMode() && !store.isDarkMode()"
|
|
635
701
|
>
|
|
@@ -638,7 +704,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
|
638
704
|
</ax-prefix>
|
|
639
705
|
</ax-button-item>
|
|
640
706
|
<ax-button-item
|
|
641
|
-
(onClick)="store.
|
|
707
|
+
(onClick)="store.changeThemeMode(variants.Dark)"
|
|
642
708
|
[text]="(t('theme.dark') | async)!"
|
|
643
709
|
[selected]="!store.isSystemMode() && store.isDarkMode()"
|
|
644
710
|
>
|
|
@@ -647,7 +713,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
|
647
713
|
</ax-prefix>
|
|
648
714
|
</ax-button-item>
|
|
649
715
|
<ax-button-item
|
|
650
|
-
(onClick)="store.
|
|
716
|
+
(onClick)="store.changeThemeMode(variants.System)"
|
|
651
717
|
[text]="(t('theme.system') | async)!"
|
|
652
718
|
[selected]="store.isSystemMode()"
|
|
653
719
|
>
|
|
@@ -664,50 +730,181 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
|
664
730
|
}] });
|
|
665
731
|
|
|
666
732
|
class AXPThemeSettingProvider {
|
|
733
|
+
constructor() {
|
|
734
|
+
this.pallets = inject(AXP_THEME_PALETTE_PROVIDER);
|
|
735
|
+
}
|
|
667
736
|
async provide(context) {
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
.
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
?.section('general')
|
|
677
|
-
?.addSetting({
|
|
678
|
-
key: AXPThemeLayoutSetting.ThemeVariant,
|
|
679
|
-
title: 'Default Theme',
|
|
737
|
+
// Define the 'Appearance Settings' group
|
|
738
|
+
context.addGroup('appearance', 'Appearance Settings', 'Customize the overall look and feel of the application.', 'fa-solid fa-palette')
|
|
739
|
+
// Add the 'Brightness & Color' section
|
|
740
|
+
.addSection('color', 'Brightness & Color', 'Adjust the theme settings, including brightness, colors, and modes.')
|
|
741
|
+
// Add the 'Theme Mode' setting
|
|
742
|
+
.addSetting({
|
|
743
|
+
key: AXPThemeLayoutSetting.Mode,
|
|
744
|
+
title: 'Theme Mode',
|
|
680
745
|
scope: 'U',
|
|
681
746
|
isInherited: true,
|
|
682
|
-
defaultValue:
|
|
747
|
+
defaultValue: AXPThemeMode.Light,
|
|
683
748
|
valueTransforms: objectKeyValueTransforms('id'),
|
|
684
749
|
widget: {
|
|
685
|
-
type:
|
|
750
|
+
type: AXPWidgetsCatalog.select,
|
|
686
751
|
options: {
|
|
687
|
-
dataSource: Object.entries(
|
|
752
|
+
dataSource: Object.entries(AXPThemeMode).map(([key, value]) => ({
|
|
688
753
|
id: value,
|
|
689
754
|
title: key.charAt(0).toUpperCase() + key.slice(1).toLowerCase(),
|
|
690
755
|
})),
|
|
691
756
|
},
|
|
692
757
|
},
|
|
693
|
-
description: '
|
|
694
|
-
})
|
|
758
|
+
description: 'Switch between Light and Dark themes for the application.',
|
|
759
|
+
})
|
|
760
|
+
// Add the 'Palette' setting
|
|
761
|
+
.addSetting({
|
|
762
|
+
key: AXPThemeLayoutSetting.Palette,
|
|
763
|
+
title: 'Palette',
|
|
764
|
+
scope: 'U',
|
|
765
|
+
isInherited: true,
|
|
766
|
+
defaultValue: 'default',
|
|
767
|
+
valueTransforms: objectKeyValueTransforms('name'),
|
|
768
|
+
widget: {
|
|
769
|
+
type: AXPWidgetsCatalog.select,
|
|
770
|
+
options: {
|
|
771
|
+
valueField: 'name',
|
|
772
|
+
dataSource: await this.pallets.getList(),
|
|
773
|
+
},
|
|
774
|
+
},
|
|
775
|
+
description: 'Choose a color palette for the application interface.',
|
|
776
|
+
})
|
|
777
|
+
// End the 'Brightness & Color' section
|
|
778
|
+
.endSection()
|
|
779
|
+
// Add the 'Scale & Layout' section
|
|
780
|
+
.addSection('layout', 'Scale & Layout', 'Customize the application’s layout and scaling options.')
|
|
781
|
+
// Add the 'Font Style' setting
|
|
782
|
+
.addSetting({
|
|
783
|
+
key: AXPThemeLayoutSetting.Font,
|
|
784
|
+
title: 'Font Style',
|
|
785
|
+
scope: 'U',
|
|
786
|
+
isInherited: true,
|
|
787
|
+
defaultValue: 'system-ui',
|
|
788
|
+
valueTransforms: objectKeyValueTransforms('id'),
|
|
789
|
+
widget: {
|
|
790
|
+
type: 'select-editor',
|
|
791
|
+
options: {
|
|
792
|
+
dataSource: [
|
|
793
|
+
{ id: 'system-ui', title: 'Default' },
|
|
794
|
+
{ id: 'serif', title: 'Serif' },
|
|
795
|
+
{ id: 'sans-serif', title: 'Sans-serif' },
|
|
796
|
+
{ id: 'monospace', title: 'Monospace' },
|
|
797
|
+
{ id: 'arial', title: 'Arial' },
|
|
798
|
+
{ id: 'verdana', title: 'Verdana' },
|
|
799
|
+
{ id: 'tahoma', title: 'Tahoma' },
|
|
800
|
+
{ id: 'times-new-roman', title: 'Times New Roman' },
|
|
801
|
+
{ id: 'georgia', title: 'Georgia' },
|
|
802
|
+
{ id: 'helvetica', title: 'Helvetica' },
|
|
803
|
+
{ id: 'calibri', title: 'Calibri' },
|
|
804
|
+
{ id: 'cursive', title: 'Cursive' },
|
|
805
|
+
],
|
|
806
|
+
},
|
|
807
|
+
},
|
|
808
|
+
description: 'Set the font style for application text.',
|
|
809
|
+
})
|
|
810
|
+
// Add the 'Font Size' setting
|
|
811
|
+
.addSetting({
|
|
812
|
+
key: AXPThemeLayoutSetting.FontSize,
|
|
813
|
+
title: 'Font Size',
|
|
814
|
+
scope: 'U',
|
|
815
|
+
isInherited: true,
|
|
816
|
+
defaultValue: 'medium',
|
|
817
|
+
valueTransforms: objectKeyValueTransforms('id'),
|
|
818
|
+
widget: {
|
|
819
|
+
type: 'select-editor',
|
|
820
|
+
options: {
|
|
821
|
+
dataSource: [
|
|
822
|
+
{ id: 'small', title: 'Small' },
|
|
823
|
+
{ id: 'medium', title: 'Medium' },
|
|
824
|
+
{ id: 'large', title: 'Large' },
|
|
825
|
+
{ id: 'x-large', title: 'Extra Large' },
|
|
826
|
+
],
|
|
827
|
+
},
|
|
828
|
+
},
|
|
829
|
+
description: 'Adjust the font size for application text.',
|
|
830
|
+
})
|
|
831
|
+
// End the 'Scale & Layout' section
|
|
832
|
+
.endSection()
|
|
833
|
+
// End the 'Appearance Settings' group
|
|
834
|
+
.endGroup();
|
|
695
835
|
}
|
|
696
836
|
}
|
|
697
837
|
|
|
838
|
+
class AXPThemeColorSelectionWidgetEditComponent extends AXPWidgetComponent {
|
|
839
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemeColorSelectionWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
840
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.3", type: AXPThemeColorSelectionWidgetEditComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
|
|
841
|
+
<div axSelectionGroup [multiple]="false" [selectedKeys]="'1'" >
|
|
842
|
+
<div axSelectionItem #a="axSelectionItem" key="1" [class.ax-text-primary-500]="a.isActive()">
|
|
843
|
+
item 1
|
|
844
|
+
</div>
|
|
845
|
+
<div axSelectionItem #b="axSelectionItem" key="2" [class.ax-text-primary-500]="b.isActive()">
|
|
846
|
+
item 1
|
|
847
|
+
</div>
|
|
848
|
+
</div>
|
|
849
|
+
|
|
850
|
+
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXSelectionModule }, { kind: "directive", type: i1$1.AXSelectionGroupDirective, selector: "[axSelectionGroup]", inputs: ["multiple", "selectedKeys"], outputs: ["onSelectionChanged"], exportAs: ["axSelectionGroup"] }, { kind: "directive", type: i1$1.AXSelectionItemDirective, selector: "[axSelectionItem]", inputs: ["key"], outputs: ["onClick"], exportAs: ["axSelectionItem"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
851
|
+
}
|
|
852
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemeColorSelectionWidgetEditComponent, decorators: [{
|
|
853
|
+
type: Component,
|
|
854
|
+
args: [{
|
|
855
|
+
template: `
|
|
856
|
+
<div axSelectionGroup [multiple]="false" [selectedKeys]="'1'" >
|
|
857
|
+
<div axSelectionItem #a="axSelectionItem" key="1" [class.ax-text-primary-500]="a.isActive()">
|
|
858
|
+
item 1
|
|
859
|
+
</div>
|
|
860
|
+
<div axSelectionItem #b="axSelectionItem" key="2" [class.ax-text-primary-500]="b.isActive()">
|
|
861
|
+
item 1
|
|
862
|
+
</div>
|
|
863
|
+
</div>
|
|
864
|
+
|
|
865
|
+
`,
|
|
866
|
+
standalone: true,
|
|
867
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
868
|
+
imports: [CommonModule, FormsModule, AXSelectionModule],
|
|
869
|
+
}]
|
|
870
|
+
}] });
|
|
871
|
+
|
|
872
|
+
var themeColorSelectionWidgetEdit_component = /*#__PURE__*/Object.freeze({
|
|
873
|
+
__proto__: null,
|
|
874
|
+
AXPThemeColorSelectionWidgetEditComponent: AXPThemeColorSelectionWidgetEditComponent
|
|
875
|
+
});
|
|
876
|
+
|
|
877
|
+
const AXPThemeColorSelectionWidget = {
|
|
878
|
+
name: "theme-color-selection",
|
|
879
|
+
title: "Theme Color Selection",
|
|
880
|
+
icon: "fa-solid fa-square",
|
|
881
|
+
type: 'editor',
|
|
882
|
+
group: AXP_WIDGETS_LAYOUT_GROUP,
|
|
883
|
+
properties: [
|
|
884
|
+
AXP_NAME_PROPERTY,
|
|
885
|
+
AXP_DATA_PATH_PROPERTY,
|
|
886
|
+
AXP_DISABLED_PROPERTY,
|
|
887
|
+
],
|
|
888
|
+
components: {
|
|
889
|
+
edit: {
|
|
890
|
+
component: () => Promise.resolve().then(function () { return themeColorSelectionWidgetEdit_component; }).then((c) => c.AXPThemeColorSelectionWidgetEditComponent),
|
|
891
|
+
},
|
|
892
|
+
}
|
|
893
|
+
};
|
|
894
|
+
|
|
698
895
|
class AXPThemesSharedModule {
|
|
699
896
|
constructor(appInitService, injector) {
|
|
700
897
|
const service = injector.get(AXPLayoutThemeService);
|
|
701
898
|
appInitService.registerTask({
|
|
702
|
-
name: '
|
|
703
|
-
statusText: '
|
|
899
|
+
name: 'layout-theme',
|
|
900
|
+
statusText: 'Applying layout theme settings ...',
|
|
704
901
|
run: async () => {
|
|
705
902
|
await service.loadSettings();
|
|
706
903
|
}
|
|
707
904
|
});
|
|
708
905
|
}
|
|
709
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemesSharedModule, deps: [{ token: i1$
|
|
710
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.3", ngImport: i0, type: AXPThemesSharedModule, imports: [i1$1.
|
|
906
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemesSharedModule, deps: [{ token: i1$2.AXPAppStartUpService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
907
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.3", ngImport: i0, type: AXPThemesSharedModule, imports: [i1$2.AXPComponentSlotModule, i2$1.AXPLayoutBuilderModule] }); }
|
|
711
908
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemesSharedModule, providers: [
|
|
712
909
|
{
|
|
713
910
|
provide: AXP_SETTING_DEFINITION_PROVIDER,
|
|
@@ -722,6 +919,11 @@ class AXPThemesSharedModule {
|
|
|
722
919
|
component: AXPThemeSlotComponent,
|
|
723
920
|
},
|
|
724
921
|
],
|
|
922
|
+
}),
|
|
923
|
+
AXPLayoutBuilderModule.forChild({
|
|
924
|
+
widgets: [
|
|
925
|
+
AXPThemeColorSelectionWidget
|
|
926
|
+
]
|
|
725
927
|
})] }); }
|
|
726
928
|
}
|
|
727
929
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemesSharedModule, decorators: [{
|
|
@@ -737,6 +939,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
|
737
939
|
},
|
|
738
940
|
],
|
|
739
941
|
}),
|
|
942
|
+
AXPLayoutBuilderModule.forChild({
|
|
943
|
+
widgets: [
|
|
944
|
+
AXPThemeColorSelectionWidget
|
|
945
|
+
]
|
|
946
|
+
})
|
|
740
947
|
],
|
|
741
948
|
exports: [],
|
|
742
949
|
declarations: [],
|
|
@@ -748,11 +955,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
|
748
955
|
}
|
|
749
956
|
],
|
|
750
957
|
}]
|
|
751
|
-
}], ctorParameters: () => [{ type: i1$
|
|
958
|
+
}], ctorParameters: () => [{ type: i1$2.AXPAppStartUpService }, { type: i0.Injector }] });
|
|
752
959
|
|
|
753
960
|
/**
|
|
754
961
|
* Generated bundle index. Do not edit.
|
|
755
962
|
*/
|
|
756
963
|
|
|
757
|
-
export { AXPDeviceType, AXPLayoutThemeService, AXPScreenSize, AXPSideMenuState, AXPThemeLayoutActionsComponent, AXPThemeLayoutBlockComponent, AXPThemeLayoutHeaderTemplateComponent, AXPThemeLayoutListComponent, AXPThemeLayoutListItemComponent, AXPThemeLayoutListItemsGroupComponent, AXPThemeLayoutPagePrimaryActionsComponent, AXPThemeLayoutPageSecondaryActionsComponent, AXPThemeLayoutSectionTemplateComponent, AXPThemeLayoutSideTemplateComponent,
|
|
964
|
+
export { AXPDeviceType, AXPLayoutThemeService, AXPScreenSize, AXPSideMenuState, AXPThemeLayoutActionsComponent, AXPThemeLayoutBlockComponent, AXPThemeLayoutHeaderTemplateComponent, AXPThemeLayoutListComponent, AXPThemeLayoutListItemComponent, AXPThemeLayoutListItemsGroupComponent, AXPThemeLayoutPagePrimaryActionsComponent, AXPThemeLayoutPageSecondaryActionsComponent, AXPThemeLayoutSectionTemplateComponent, AXPThemeLayoutSideTemplateComponent, AXPThemeMode, AXPThemePaletteProviderDefault, AXPThemeSlotComponent, AXPThemesSharedModule, AXP_THEME_PALETTE_PROVIDER };
|
|
758
965
|
//# sourceMappingURL=acorex-platform-themes-shared.mjs.map
|