@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.
- package/common/index.d.ts +2 -0
- package/common/lib/app/application.types.d.ts +12 -10
- package/common/lib/configs/app.config.d.ts +0 -1
- 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.service.d.ts +8 -0
- package/common/lib/filters/filters.types.d.ts +19 -0
- package/common/lib/filters/index.d.ts +2 -0
- package/common/lib/settings/setting-definition.provider.d.ts +13 -4
- package/common/lib/settings/setting.builder.d.ts +7 -8
- 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-auth.mjs +5 -4
- package/fesm2022/acorex-platform-auth.mjs.map +1 -1
- package/fesm2022/acorex-platform-common.mjs +264 -87
- 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 +286 -440
- package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-designer.mjs +18 -18
- package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-entity.mjs +335 -232
- package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-filters.mjs +124 -0
- package/fesm2022/acorex-platform-layout-filters.mjs.map +1 -0
- package/fesm2022/acorex-platform-layout-setting.mjs +219 -132
- package/fesm2022/acorex-platform-layout-setting.mjs.map +1 -1
- package/fesm2022/acorex-platform-layouts.mjs +4 -5
- 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 +40 -114
- package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
- package/fesm2022/acorex-platform-themes-shared.mjs +465 -157
- 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-juhKoygA.mjs → acorex-platform-widgets-checkbox-widget-designer.component-RCi5IJOR.mjs} +5 -5
- package/fesm2022/acorex-platform-widgets-checkbox-widget-designer.component-RCi5IJOR.mjs.map +1 -0
- 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 +1396 -286
- 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} +29 -4
- package/layout/builder/lib/builder/widget-status.types.d.ts +14 -0
- package/layout/builder/lib/builder/widget.types.d.ts +51 -59
- 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 +8 -2
- package/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.d.ts +0 -1
- package/layout/entity/lib/workflows/modify-entity.workflow.d.ts +14 -0
- package/layout/filters/README.md +3 -0
- package/layout/filters/index.d.ts +1 -0
- package/layout/filters/lib/filters.viewmodel.d.ts +30 -0
- package/layout/setting/lib/convert-setting-data.d.ts +0 -20
- package/layout/setting/lib/setting.viewmodel.d.ts +85 -22
- package/layouts/lib/admin/entity-layout/entity-details-view/entity-details-view.component.d.ts +15 -5
- package/package.json +13 -9
- package/themes/default/index.d.ts +0 -1
- package/themes/default/lib/layouts/base/simple-page/simple-page.layout.d.ts +20 -10
- 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 +14 -0
- 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 +13 -0
- 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 +2 -4
- package/themes/default/lib/layouts/setting-layout/setting-view/setting-view.component.d.ts +57 -0
- package/themes/shared/index.d.ts +3 -1
- package/themes/shared/lib/components/layout-elements/index.d.ts +5 -3
- package/themes/shared/lib/components/layout-elements/{layout-page-actions.component.d.ts → layout-actions.component.d.ts} +5 -5
- package/themes/shared/lib/components/layout-elements/layout-blocks.component.d.ts +1 -1
- package/themes/shared/lib/components/layout-elements/layout-header.component.d.ts +12 -0
- package/themes/shared/lib/components/layout-elements/layout-list-component.d.ts +13 -0
- package/themes/shared/lib/components/layout-elements/layout-section.component.d.ts +9 -0
- package/themes/shared/lib/components/layout-elements/layout-side.component.d.ts +9 -0
- 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 +5 -2
- 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/editors.props.d.ts +2 -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/select/select-box-widget-edit.component.d.ts +1 -0
- 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 -6
- 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 +20 -7
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-B13KvLX4.mjs +0 -108
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-B13KvLX4.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-B6MXHPWi.mjs +0 -305
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-B6MXHPWi.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-tKCGSRQT.mjs +0 -87
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-tKCGSRQT.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-CHvC0IAV.mjs +0 -130
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-CHvC0IAV.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-designer.component-juhKoygA.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/themes/default/lib/layouts/setting-layout/index.d.ts +0 -1
- package/themes/shared/lib/components/layout-elements/layout-page-header.component.d.ts +0 -11
- package/themes/shared/lib/components/layout-elements/layout-page-side.component.d.ts +0 -5
- 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 -10
|
@@ -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,29 +8,43 @@ 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 * 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';
|
|
17
23
|
|
|
18
24
|
class AXPThemeLayoutBlockComponent {
|
|
19
25
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemeLayoutBlockComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
20
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.3", type: AXPThemeLayoutBlockComponent, isStandalone: true, selector: "\n axp-
|
|
26
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.3", type: AXPThemeLayoutBlockComponent, isStandalone: true, selector: "\n axp-layout-content, \n axp-layout-header-container,\n axp-layout-footer-container,\n axp-layout-side-container,\n axp-layout-sections,\n axp-layout-section-container,\n axp-layout-body,\n axp-layout-suffix,\n axp-layout-prefix,\n axp-layout-title, \n axp-layout-nav-button, \n axp-layout-description, \n axp-layout-toolbar,\n axp-layout-title-bar,\n axp-layout-breadcrumbs\n ", ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
21
27
|
}
|
|
22
28
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemeLayoutBlockComponent, decorators: [{
|
|
23
29
|
type: Component,
|
|
24
30
|
args: [{
|
|
25
31
|
standalone: true,
|
|
26
32
|
selector: `
|
|
27
|
-
axp-
|
|
28
|
-
axp-
|
|
29
|
-
axp-
|
|
30
|
-
axp-
|
|
31
|
-
axp-
|
|
32
|
-
axp-
|
|
33
|
-
axp-
|
|
33
|
+
axp-layout-content,
|
|
34
|
+
axp-layout-header-container,
|
|
35
|
+
axp-layout-footer-container,
|
|
36
|
+
axp-layout-side-container,
|
|
37
|
+
axp-layout-sections,
|
|
38
|
+
axp-layout-section-container,
|
|
39
|
+
axp-layout-body,
|
|
40
|
+
axp-layout-suffix,
|
|
41
|
+
axp-layout-prefix,
|
|
42
|
+
axp-layout-title,
|
|
43
|
+
axp-layout-nav-button,
|
|
44
|
+
axp-layout-description,
|
|
45
|
+
axp-layout-toolbar,
|
|
46
|
+
axp-layout-title-bar,
|
|
47
|
+
axp-layout-breadcrumbs
|
|
34
48
|
`,
|
|
35
49
|
template: '<ng-content></ng-content>',
|
|
36
50
|
encapsulation: ViewEncapsulation.None,
|
|
@@ -40,33 +54,33 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
|
40
54
|
|
|
41
55
|
class AXPThemeLayoutPagePrimaryActionsComponent {
|
|
42
56
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemeLayoutPagePrimaryActionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
43
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.3", type: AXPThemeLayoutPagePrimaryActionsComponent, isStandalone: true, selector: "axp-
|
|
57
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.3", type: AXPThemeLayoutPagePrimaryActionsComponent, isStandalone: true, selector: "axp-layout-actions-primary", ngImport: i0, template: `<ng-content select="ax-button,ax-dropdown-button"></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
44
58
|
}
|
|
45
59
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemeLayoutPagePrimaryActionsComponent, decorators: [{
|
|
46
60
|
type: Component,
|
|
47
61
|
args: [{
|
|
48
62
|
standalone: true,
|
|
49
|
-
selector: 'axp-
|
|
50
|
-
template: `<ng-content select="ax-button"></ng-content>`,
|
|
63
|
+
selector: 'axp-layout-actions-primary',
|
|
64
|
+
template: `<ng-content select="ax-button,ax-dropdown-button"></ng-content>`,
|
|
51
65
|
encapsulation: ViewEncapsulation.None,
|
|
52
66
|
changeDetection: ChangeDetectionStrategy.OnPush
|
|
53
67
|
}]
|
|
54
68
|
}] });
|
|
55
69
|
class AXPThemeLayoutPageSecondaryActionsComponent {
|
|
56
70
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemeLayoutPageSecondaryActionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
57
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.3", type: AXPThemeLayoutPageSecondaryActionsComponent, isStandalone: true, selector: "axp-
|
|
71
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.3", type: AXPThemeLayoutPageSecondaryActionsComponent, isStandalone: true, selector: "axp-layout-actions-secondary", ngImport: i0, template: `<ng-content select="ax-button-item"></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
58
72
|
}
|
|
59
73
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemeLayoutPageSecondaryActionsComponent, decorators: [{
|
|
60
74
|
type: Component,
|
|
61
75
|
args: [{
|
|
62
76
|
standalone: true,
|
|
63
|
-
selector: 'axp-
|
|
77
|
+
selector: 'axp-layout-actions-secondary',
|
|
64
78
|
template: `<ng-content select="ax-button-item"></ng-content>`,
|
|
65
79
|
encapsulation: ViewEncapsulation.None,
|
|
66
80
|
changeDetection: ChangeDetectionStrategy.OnPush
|
|
67
81
|
}]
|
|
68
82
|
}] });
|
|
69
|
-
class
|
|
83
|
+
class AXPThemeLayoutActionsComponent {
|
|
70
84
|
constructor() {
|
|
71
85
|
this.primaryTemplate = viewChild('primary');
|
|
72
86
|
this.primaryContent = contentChild(AXPThemeLayoutPagePrimaryActionsComponent);
|
|
@@ -75,34 +89,34 @@ class AXPThemeLayoutPageActionsComponent {
|
|
|
75
89
|
this.secondaryContent = contentChild(AXPThemeLayoutPageSecondaryActionsComponent);
|
|
76
90
|
this.hasSecondary = computed(() => this.secondaryContent() != null);
|
|
77
91
|
}
|
|
78
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type:
|
|
79
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "19.0.3", type:
|
|
92
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemeLayoutActionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
93
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "19.0.3", type: AXPThemeLayoutActionsComponent, isStandalone: true, selector: "axp-layout-actions", queries: [{ propertyName: "primaryContent", first: true, predicate: AXPThemeLayoutPagePrimaryActionsComponent, descendants: true, isSignal: true }, { propertyName: "secondaryContent", first: true, predicate: AXPThemeLayoutPageSecondaryActionsComponent, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "primaryTemplate", first: true, predicate: ["primary"], descendants: true, isSignal: true }, { propertyName: "secondaryTemplate", first: true, predicate: ["secondary"], descendants: true, isSignal: true }], ngImport: i0, template: `
|
|
80
94
|
|
|
81
95
|
<ng-template #primary>
|
|
82
|
-
<ng-content select="axp-
|
|
96
|
+
<ng-content select="axp-layout-actions-primary"></ng-content>
|
|
83
97
|
</ng-template>
|
|
84
98
|
|
|
85
99
|
<ng-template #secondary>
|
|
86
|
-
<ng-content select="axp-
|
|
100
|
+
<ng-content select="axp-layout-actions-secondary"></ng-content>
|
|
87
101
|
</ng-template>
|
|
88
102
|
|
|
89
103
|
<ng-content></ng-content>
|
|
90
104
|
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
91
105
|
}
|
|
92
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type:
|
|
106
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemeLayoutActionsComponent, decorators: [{
|
|
93
107
|
type: Component,
|
|
94
108
|
args: [{
|
|
95
109
|
imports: [CommonModule],
|
|
96
110
|
standalone: true,
|
|
97
|
-
selector: 'axp-
|
|
111
|
+
selector: 'axp-layout-actions',
|
|
98
112
|
template: `
|
|
99
113
|
|
|
100
114
|
<ng-template #primary>
|
|
101
|
-
<ng-content select="axp-
|
|
115
|
+
<ng-content select="axp-layout-actions-primary"></ng-content>
|
|
102
116
|
</ng-template>
|
|
103
117
|
|
|
104
118
|
<ng-template #secondary>
|
|
105
|
-
<ng-content select="axp-
|
|
119
|
+
<ng-content select="axp-layout-actions-secondary"></ng-content>
|
|
106
120
|
</ng-template>
|
|
107
121
|
|
|
108
122
|
<ng-content></ng-content>
|
|
@@ -112,108 +126,205 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
|
112
126
|
}]
|
|
113
127
|
}] });
|
|
114
128
|
|
|
115
|
-
class
|
|
116
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemeLayoutPageSideComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
117
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.3", type: AXPThemeLayoutPageSideComponent, isStandalone: true, selector: "axp-page-side", ngImport: i0, template: `
|
|
118
|
-
<ng-content></ng-content>
|
|
119
|
-
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
120
|
-
}
|
|
121
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemeLayoutPageSideComponent, decorators: [{
|
|
122
|
-
type: Component,
|
|
123
|
-
args: [{
|
|
124
|
-
imports: [CommonModule],
|
|
125
|
-
standalone: true,
|
|
126
|
-
selector: 'axp-page-side',
|
|
127
|
-
template: `
|
|
128
|
-
<ng-content></ng-content>
|
|
129
|
-
`,
|
|
130
|
-
encapsulation: ViewEncapsulation.None,
|
|
131
|
-
changeDetection: ChangeDetectionStrategy.OnPush
|
|
132
|
-
}]
|
|
133
|
-
}] });
|
|
134
|
-
|
|
135
|
-
class AXPThemeLayoutPageHeaderComponent {
|
|
129
|
+
class AXPThemeLayoutHeaderTemplateComponent {
|
|
136
130
|
constructor() {
|
|
137
131
|
this.title = viewChild('title');
|
|
138
132
|
this.description = viewChild('description');
|
|
139
133
|
this.actions = viewChild('actions');
|
|
140
134
|
this.navbar = viewChild('navbar');
|
|
141
135
|
this.breadcrumbs = viewChild('breadcrumbs');
|
|
136
|
+
this.navButton = viewChild('navButton');
|
|
142
137
|
}
|
|
143
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type:
|
|
144
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "19.0.3", type:
|
|
145
|
-
|
|
138
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemeLayoutHeaderTemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
139
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "19.0.3", type: AXPThemeLayoutHeaderTemplateComponent, isStandalone: true, selector: "axp-layout-header", viewQueries: [{ propertyName: "title", first: true, predicate: ["title"], descendants: true, isSignal: true }, { propertyName: "description", first: true, predicate: ["description"], descendants: true, isSignal: true }, { propertyName: "actions", first: true, predicate: ["actions"], descendants: true, isSignal: true }, { propertyName: "navbar", first: true, predicate: ["navbar"], descendants: true, isSignal: true }, { propertyName: "breadcrumbs", first: true, predicate: ["breadcrumbs"], descendants: true, isSignal: true }, { propertyName: "navButton", first: true, predicate: ["navButton"], descendants: true, isSignal: true }], ngImport: i0, template: `
|
|
146
140
|
<ng-template #breadcrumbs>
|
|
147
|
-
<ng-content select="axp-
|
|
141
|
+
<ng-content select="axp-layout-breadcrumbs"></ng-content>
|
|
148
142
|
</ng-template>
|
|
149
143
|
|
|
150
144
|
<ng-template #navbar>
|
|
151
|
-
<ng-content select="axp-
|
|
145
|
+
<ng-content select="axp-layout-toolbar"></ng-content>
|
|
152
146
|
</ng-template>
|
|
153
147
|
|
|
154
148
|
<ng-template #actions>
|
|
155
|
-
<ng-content select="axp-
|
|
149
|
+
<ng-content select="axp-layout-actions"></ng-content>
|
|
156
150
|
</ng-template>
|
|
157
151
|
|
|
158
152
|
<ng-template #description>
|
|
159
|
-
<ng-content select="axp-
|
|
153
|
+
<ng-content select="axp-layout-description"></ng-content>
|
|
160
154
|
</ng-template>
|
|
161
155
|
|
|
162
156
|
<ng-template #title>
|
|
163
|
-
<ng-content select="axp-
|
|
157
|
+
<ng-content select="axp-layout-title"></ng-content>
|
|
158
|
+
</ng-template>
|
|
159
|
+
<ng-template #navButton>
|
|
160
|
+
<ng-content select="axp-layout-nav-button"></ng-content>
|
|
164
161
|
</ng-template>
|
|
165
|
-
|
|
166
|
-
<ng-content></ng-content>
|
|
167
162
|
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
168
163
|
}
|
|
169
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type:
|
|
164
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemeLayoutHeaderTemplateComponent, decorators: [{
|
|
170
165
|
type: Component,
|
|
171
166
|
args: [{
|
|
172
167
|
imports: [CommonModule],
|
|
173
168
|
standalone: true,
|
|
174
|
-
selector: 'axp-
|
|
169
|
+
selector: 'axp-layout-header',
|
|
175
170
|
template: `
|
|
176
|
-
|
|
177
171
|
<ng-template #breadcrumbs>
|
|
178
|
-
<ng-content select="axp-
|
|
172
|
+
<ng-content select="axp-layout-breadcrumbs"></ng-content>
|
|
179
173
|
</ng-template>
|
|
180
174
|
|
|
181
175
|
<ng-template #navbar>
|
|
182
|
-
<ng-content select="axp-
|
|
176
|
+
<ng-content select="axp-layout-toolbar"></ng-content>
|
|
183
177
|
</ng-template>
|
|
184
178
|
|
|
185
179
|
<ng-template #actions>
|
|
186
|
-
<ng-content select="axp-
|
|
180
|
+
<ng-content select="axp-layout-actions"></ng-content>
|
|
187
181
|
</ng-template>
|
|
188
182
|
|
|
189
183
|
<ng-template #description>
|
|
190
|
-
<ng-content select="axp-
|
|
184
|
+
<ng-content select="axp-layout-description"></ng-content>
|
|
191
185
|
</ng-template>
|
|
192
186
|
|
|
193
187
|
<ng-template #title>
|
|
194
|
-
<ng-content select="axp-
|
|
188
|
+
<ng-content select="axp-layout-title"></ng-content>
|
|
189
|
+
</ng-template>
|
|
190
|
+
<ng-template #navButton>
|
|
191
|
+
<ng-content select="axp-layout-nav-button"></ng-content>
|
|
195
192
|
</ng-template>
|
|
196
|
-
|
|
197
|
-
<ng-content></ng-content>
|
|
198
193
|
`,
|
|
199
194
|
encapsulation: ViewEncapsulation.None,
|
|
200
195
|
changeDetection: ChangeDetectionStrategy.OnPush
|
|
201
196
|
}]
|
|
202
197
|
}] });
|
|
203
198
|
|
|
199
|
+
class AXPThemeLayoutSectionTemplateComponent {
|
|
200
|
+
constructor() {
|
|
201
|
+
this.header = contentChild(AXPThemeLayoutHeaderTemplateComponent);
|
|
202
|
+
this.content = viewChild('content');
|
|
203
|
+
}
|
|
204
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemeLayoutSectionTemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
205
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "19.0.3", type: AXPThemeLayoutSectionTemplateComponent, isStandalone: true, selector: "axp-layout-section", queries: [{ propertyName: "header", first: true, predicate: AXPThemeLayoutHeaderTemplateComponent, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true, isSignal: true }], ngImport: i0, template: `
|
|
206
|
+
<ng-template #header>
|
|
207
|
+
<ng-content select="axp-layout-header"></ng-content>
|
|
208
|
+
</ng-template>
|
|
209
|
+
<ng-template #content>
|
|
210
|
+
<ng-content select="axp-layout-content"></ng-content>
|
|
211
|
+
</ng-template>
|
|
212
|
+
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
213
|
+
}
|
|
214
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemeLayoutSectionTemplateComponent, decorators: [{
|
|
215
|
+
type: Component,
|
|
216
|
+
args: [{
|
|
217
|
+
imports: [CommonModule],
|
|
218
|
+
standalone: true,
|
|
219
|
+
selector: 'axp-layout-section',
|
|
220
|
+
template: `
|
|
221
|
+
<ng-template #header>
|
|
222
|
+
<ng-content select="axp-layout-header"></ng-content>
|
|
223
|
+
</ng-template>
|
|
224
|
+
<ng-template #content>
|
|
225
|
+
<ng-content select="axp-layout-content"></ng-content>
|
|
226
|
+
</ng-template>
|
|
227
|
+
`,
|
|
228
|
+
encapsulation: ViewEncapsulation.None,
|
|
229
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
230
|
+
}]
|
|
231
|
+
}] });
|
|
232
|
+
|
|
233
|
+
class AXPThemeLayoutSideTemplateComponent {
|
|
234
|
+
constructor() {
|
|
235
|
+
this.header = contentChild(AXPThemeLayoutHeaderTemplateComponent);
|
|
236
|
+
this.content = viewChild('content');
|
|
237
|
+
}
|
|
238
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemeLayoutSideTemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
239
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "19.0.3", type: AXPThemeLayoutSideTemplateComponent, isStandalone: true, selector: "axp-layout-side", queries: [{ propertyName: "header", first: true, predicate: AXPThemeLayoutHeaderTemplateComponent, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true, isSignal: true }], ngImport: i0, template: `
|
|
240
|
+
<ng-template #header>
|
|
241
|
+
<ng-content select="axp-layout-header"></ng-content>
|
|
242
|
+
</ng-template>
|
|
243
|
+
<ng-template #content>
|
|
244
|
+
<ng-content select="axp-layout-content"></ng-content>
|
|
245
|
+
</ng-template>
|
|
246
|
+
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
247
|
+
}
|
|
248
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemeLayoutSideTemplateComponent, decorators: [{
|
|
249
|
+
type: Component,
|
|
250
|
+
args: [{
|
|
251
|
+
imports: [CommonModule],
|
|
252
|
+
standalone: true,
|
|
253
|
+
selector: 'axp-layout-side',
|
|
254
|
+
template: `
|
|
255
|
+
<ng-template #header>
|
|
256
|
+
<ng-content select="axp-layout-header"></ng-content>
|
|
257
|
+
</ng-template>
|
|
258
|
+
<ng-template #content>
|
|
259
|
+
<ng-content select="axp-layout-content"></ng-content>
|
|
260
|
+
</ng-template>
|
|
261
|
+
`,
|
|
262
|
+
encapsulation: ViewEncapsulation.None,
|
|
263
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
264
|
+
}]
|
|
265
|
+
}] });
|
|
266
|
+
|
|
267
|
+
class AXPThemeLayoutListComponent {
|
|
268
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemeLayoutListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
269
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.3", type: AXPThemeLayoutListComponent, isStandalone: true, selector: "axp-layout-list", ngImport: i0, template: `<ng-content select="axp-layout-list-item,axp-layout-list-group"></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
270
|
+
}
|
|
271
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemeLayoutListComponent, decorators: [{
|
|
272
|
+
type: Component,
|
|
273
|
+
args: [{
|
|
274
|
+
standalone: true,
|
|
275
|
+
selector: 'axp-layout-list',
|
|
276
|
+
template: `<ng-content select="axp-layout-list-item,axp-layout-list-group"></ng-content>`,
|
|
277
|
+
encapsulation: ViewEncapsulation.None,
|
|
278
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
279
|
+
}]
|
|
280
|
+
}] });
|
|
281
|
+
class AXPThemeLayoutListItemsGroupComponent {
|
|
282
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemeLayoutListItemsGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
283
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.3", type: AXPThemeLayoutListItemsGroupComponent, isStandalone: true, selector: "axp-layout-list-group", ngImport: i0, template: `<ng-content select="axp-layout-list-item"></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
284
|
+
}
|
|
285
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemeLayoutListItemsGroupComponent, decorators: [{
|
|
286
|
+
type: Component,
|
|
287
|
+
args: [{
|
|
288
|
+
standalone: true,
|
|
289
|
+
selector: 'axp-layout-list-group',
|
|
290
|
+
template: `<ng-content select="axp-layout-list-item"></ng-content>`,
|
|
291
|
+
encapsulation: ViewEncapsulation.None,
|
|
292
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
293
|
+
}]
|
|
294
|
+
}] });
|
|
295
|
+
class AXPThemeLayoutListItemComponent {
|
|
296
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemeLayoutListItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
297
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.3", type: AXPThemeLayoutListItemComponent, isStandalone: true, selector: "axp-layout-list-item", ngImport: i0, template: `<ng-content select="axp-layout-content,axp-layout-prefix,axp-layout-suffix"></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
298
|
+
}
|
|
299
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemeLayoutListItemComponent, decorators: [{
|
|
300
|
+
type: Component,
|
|
301
|
+
args: [{
|
|
302
|
+
standalone: true,
|
|
303
|
+
selector: 'axp-layout-list-item',
|
|
304
|
+
template: `<ng-content select="axp-layout-content,axp-layout-prefix,axp-layout-suffix"></ng-content>`,
|
|
305
|
+
encapsulation: ViewEncapsulation.None,
|
|
306
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
307
|
+
}]
|
|
308
|
+
}] });
|
|
309
|
+
|
|
204
310
|
var AXPThemeLayoutSetting;
|
|
205
311
|
(function (AXPThemeLayoutSetting) {
|
|
206
|
-
AXPThemeLayoutSetting["
|
|
207
|
-
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";
|
|
208
319
|
})(AXPThemeLayoutSetting || (AXPThemeLayoutSetting = {}));
|
|
209
320
|
|
|
210
321
|
// Theme Enum
|
|
211
|
-
var
|
|
212
|
-
(function (
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
})(
|
|
322
|
+
var AXPThemeMode;
|
|
323
|
+
(function (AXPThemeMode) {
|
|
324
|
+
AXPThemeMode["Light"] = "light";
|
|
325
|
+
AXPThemeMode["Dark"] = "dark";
|
|
326
|
+
AXPThemeMode["System"] = "system";
|
|
327
|
+
})(AXPThemeMode || (AXPThemeMode = {}));
|
|
217
328
|
// Screen Size Enum
|
|
218
329
|
var AXPScreenSize;
|
|
219
330
|
(function (AXPScreenSize) {
|
|
@@ -234,12 +345,31 @@ var AXPSideMenuState;
|
|
|
234
345
|
AXPSideMenuState["Opened"] = "opened";
|
|
235
346
|
AXPSideMenuState["Closed"] = "closed";
|
|
236
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
|
+
|
|
237
368
|
// ThemeStore - Manages theme settings, system changes, and loading states
|
|
238
369
|
const AXPLayoutThemeService = signalStore({ providedIn: 'root' },
|
|
239
370
|
// Initial State
|
|
240
371
|
withState(() => {
|
|
241
|
-
const
|
|
242
|
-
const systemPrefersDark = window.matchMedia('(prefers-color-scheme: dark)').matches;
|
|
372
|
+
const isSystemDark = window.matchMedia('(prefers-color-scheme: dark)').matches;
|
|
243
373
|
// Helper function to get the initial screen size
|
|
244
374
|
const getScreenSize = () => {
|
|
245
375
|
const width = window.innerWidth;
|
|
@@ -265,8 +395,13 @@ withState(() => {
|
|
|
265
395
|
return 'ontouchstart' in window || navigator.maxTouchPoints > 0;
|
|
266
396
|
};
|
|
267
397
|
const state = {
|
|
268
|
-
|
|
269
|
-
|
|
398
|
+
currentMode: AXPThemeMode.System,
|
|
399
|
+
currentPallete: 'default',
|
|
400
|
+
systemThemeMode: (isSystemDark ? AXPThemeMode.Dark : AXPThemeMode.Light),
|
|
401
|
+
font: {
|
|
402
|
+
family: 'system-ui',
|
|
403
|
+
size: 'medium'
|
|
404
|
+
},
|
|
270
405
|
screenSize: getScreenSize(),
|
|
271
406
|
deviceType: getDeviceType(),
|
|
272
407
|
isTouchDevice: isTouchDevice(),
|
|
@@ -281,12 +416,12 @@ withState(() => {
|
|
|
281
416
|
return state;
|
|
282
417
|
}),
|
|
283
418
|
// Computed Signals
|
|
284
|
-
withComputed(({ currentTheme, systemTheme, screenSize, deviceType, isTouchDevice, sideMenuState, overlayLoading, navigationLoading }) => ({
|
|
285
|
-
isDarkMode: computed(() => currentTheme() ===
|
|
286
|
-
(currentTheme() ===
|
|
287
|
-
isLightMode: computed(() => currentTheme() ===
|
|
288
|
-
(currentTheme() ===
|
|
289
|
-
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),
|
|
290
425
|
isSideMenuOpen: computed(() => sideMenuState() === AXPSideMenuState.Opened),
|
|
291
426
|
isSmall: computed(() => screenSize() === AXPScreenSize.Small),
|
|
292
427
|
isMedium: computed(() => screenSize() === AXPScreenSize.Medium),
|
|
@@ -299,22 +434,37 @@ withComputed(({ currentTheme, systemTheme, screenSize, deviceType, isTouchDevice
|
|
|
299
434
|
isNavigationLoading: computed(() => navigationLoading()),
|
|
300
435
|
})),
|
|
301
436
|
// Methods for State Management
|
|
302
|
-
withMethods((store, settingService = inject(AXPSettingValueProviderService)) => {
|
|
303
|
-
const
|
|
437
|
+
withMethods((store, settingService = inject(AXPSettingValueProviderService), pallets = inject(AXP_THEME_PALETTE_PROVIDER)) => {
|
|
438
|
+
const _applySettings = async () => {
|
|
304
439
|
// Initialize theme and side menu setting from storage
|
|
305
|
-
const
|
|
306
|
-
patchState(store, {
|
|
307
|
-
|
|
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();
|
|
308
447
|
patchState(store, { sideMenuState: settingSideMenu });
|
|
309
|
-
|
|
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();
|
|
310
454
|
};
|
|
311
455
|
// Update HTML class based on theme
|
|
312
|
-
const
|
|
456
|
+
const _updateHtmlClass = async () => {
|
|
313
457
|
const html = document.getElementsByTagName('html')[0];
|
|
314
|
-
|
|
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());
|
|
315
465
|
};
|
|
316
466
|
// Update screen size based on window width
|
|
317
|
-
const
|
|
467
|
+
const _updateScreenSize = () => {
|
|
318
468
|
const width = window.innerWidth;
|
|
319
469
|
let newScreenSize;
|
|
320
470
|
if (width <= 600) {
|
|
@@ -330,39 +480,53 @@ withMethods((store, settingService = inject(AXPSettingValueProviderService)) =>
|
|
|
330
480
|
patchState(store, { screenSize: newScreenSize });
|
|
331
481
|
if (store.sideMenuState() !== AXPSideMenuState.Closed) {
|
|
332
482
|
patchState(store, { sideMenuState: newScreenSize === AXPScreenSize.Small ? AXPSideMenuState.Closed : AXPSideMenuState.Opened });
|
|
333
|
-
settingService.set(AXPThemeLayoutSetting.
|
|
483
|
+
settingService.scope(AXPSettingScope.User).set(AXPThemeLayoutSetting.SideMenuStatus, store.sideMenuState());
|
|
334
484
|
}
|
|
335
485
|
}
|
|
336
486
|
};
|
|
337
|
-
//
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
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;
|
|
341
492
|
}
|
|
342
|
-
|
|
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
|
+
};
|
|
343
507
|
const minimumDisplayTime = 500; // milliseconds
|
|
344
508
|
return {
|
|
345
509
|
// Change theme and update HTML class
|
|
346
|
-
|
|
347
|
-
settingService.set(AXPThemeLayoutSetting.
|
|
348
|
-
patchState(store, {
|
|
349
|
-
|
|
510
|
+
changeThemeMode(theme) {
|
|
511
|
+
settingService.scope(AXPSettingScope.User).set(AXPThemeLayoutSetting.Mode, theme);
|
|
512
|
+
patchState(store, { currentMode: theme });
|
|
513
|
+
_updateHtmlClass();
|
|
350
514
|
},
|
|
351
515
|
// Open side menu
|
|
352
516
|
openSideMenu() {
|
|
353
517
|
patchState(store, { sideMenuState: AXPSideMenuState.Opened });
|
|
354
|
-
settingService.set(AXPThemeLayoutSetting.
|
|
518
|
+
settingService.scope(AXPSettingScope.User).set(AXPThemeLayoutSetting.SideMenuStatus, AXPSideMenuState.Opened);
|
|
355
519
|
},
|
|
356
520
|
// Close side menu
|
|
357
521
|
closeSideMenu() {
|
|
358
522
|
patchState(store, { sideMenuState: AXPSideMenuState.Closed });
|
|
359
|
-
settingService.set(AXPThemeLayoutSetting.
|
|
523
|
+
settingService.scope(AXPSettingScope.User).set(AXPThemeLayoutSetting.SideMenuStatus, AXPSideMenuState.Closed);
|
|
360
524
|
},
|
|
361
525
|
// Toggle side menu state
|
|
362
526
|
toggleSideMenu() {
|
|
363
527
|
const newSideMenuState = store.sideMenuState() === AXPSideMenuState.Opened ? AXPSideMenuState.Closed : AXPSideMenuState.Opened;
|
|
364
528
|
patchState(store, { sideMenuState: newSideMenuState });
|
|
365
|
-
settingService.set(AXPThemeLayoutSetting.
|
|
529
|
+
settingService.scope(AXPSettingScope.User).set(AXPThemeLayoutSetting.SideMenuStatus, newSideMenuState);
|
|
366
530
|
},
|
|
367
531
|
// Set navigation loading state with a task counter
|
|
368
532
|
setNavigationLoading(value) {
|
|
@@ -402,16 +566,15 @@ withMethods((store, settingService = inject(AXPSettingValueProviderService)) =>
|
|
|
402
566
|
}
|
|
403
567
|
}
|
|
404
568
|
},
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
updateHtmlClass(store.isDarkMode());
|
|
569
|
+
async loadSettings() {
|
|
570
|
+
await _applySettings();
|
|
408
571
|
},
|
|
409
572
|
// Set up event listener for system theme changes
|
|
410
573
|
_setupSystemColorListener() {
|
|
411
574
|
const mediaQueryList = window.matchMedia('(prefers-color-scheme: dark)');
|
|
412
575
|
const listener = (e) => {
|
|
413
|
-
patchState(store, {
|
|
414
|
-
|
|
576
|
+
patchState(store, { systemThemeMode: e.matches ? AXPThemeMode.Dark : AXPThemeMode.Light });
|
|
577
|
+
_updateHtmlClass();
|
|
415
578
|
};
|
|
416
579
|
mediaQueryList.addEventListener('change', listener);
|
|
417
580
|
return listener;
|
|
@@ -424,7 +587,7 @@ withMethods((store, settingService = inject(AXPSettingValueProviderService)) =>
|
|
|
424
587
|
// Set up event listener for window resize
|
|
425
588
|
_setupResizeListener() {
|
|
426
589
|
const listener = () => {
|
|
427
|
-
|
|
590
|
+
_updateScreenSize();
|
|
428
591
|
};
|
|
429
592
|
window.addEventListener('resize', listener);
|
|
430
593
|
return listener;
|
|
@@ -433,17 +596,18 @@ withMethods((store, settingService = inject(AXPSettingValueProviderService)) =>
|
|
|
433
596
|
_removeResizeListener(listener) {
|
|
434
597
|
window.removeEventListener('resize', listener);
|
|
435
598
|
},
|
|
436
|
-
async loadSettings() {
|
|
437
|
-
applySettings();
|
|
438
|
-
}
|
|
439
599
|
};
|
|
440
600
|
}),
|
|
441
601
|
// Lifecycle Hooks
|
|
442
|
-
withHooks((store) => ({
|
|
602
|
+
withHooks((store, settingService = inject(AXPSettingValueProviderService)) => ({
|
|
443
603
|
onInit() {
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
604
|
+
//
|
|
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))) {
|
|
608
|
+
await store.loadSettings();
|
|
609
|
+
}
|
|
610
|
+
});
|
|
447
611
|
// Set up event listener for system theme changes
|
|
448
612
|
const listener = store._setupSystemColorListener();
|
|
449
613
|
patchState(store, { _listener: listener });
|
|
@@ -466,7 +630,7 @@ withHooks((store) => ({
|
|
|
466
630
|
class AXPThemeSlotComponent {
|
|
467
631
|
constructor() {
|
|
468
632
|
this.store = inject(AXPLayoutThemeService);
|
|
469
|
-
this.variants =
|
|
633
|
+
this.variants = AXPThemeMode;
|
|
470
634
|
}
|
|
471
635
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemeSlotComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
472
636
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.3", type: AXPThemeSlotComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: `
|
|
@@ -483,7 +647,7 @@ class AXPThemeSlotComponent {
|
|
|
483
647
|
<ax-dropdown-panel *translate="let t">
|
|
484
648
|
<ax-button-item-list>
|
|
485
649
|
<ax-button-item
|
|
486
|
-
(onClick)="store.
|
|
650
|
+
(onClick)="store.changeThemeMode(variants.Light)"
|
|
487
651
|
[text]="(t('theme.light') | async)!"
|
|
488
652
|
[selected]="!store.isSystemMode() && !store.isDarkMode()"
|
|
489
653
|
>
|
|
@@ -492,7 +656,7 @@ class AXPThemeSlotComponent {
|
|
|
492
656
|
</ax-prefix>
|
|
493
657
|
</ax-button-item>
|
|
494
658
|
<ax-button-item
|
|
495
|
-
(onClick)="store.
|
|
659
|
+
(onClick)="store.changeThemeMode(variants.Dark)"
|
|
496
660
|
[text]="(t('theme.dark') | async)!"
|
|
497
661
|
[selected]="!store.isSystemMode() && store.isDarkMode()"
|
|
498
662
|
>
|
|
@@ -501,7 +665,7 @@ class AXPThemeSlotComponent {
|
|
|
501
665
|
</ax-prefix>
|
|
502
666
|
</ax-button-item>
|
|
503
667
|
<ax-button-item
|
|
504
|
-
(onClick)="store.
|
|
668
|
+
(onClick)="store.changeThemeMode(variants.System)"
|
|
505
669
|
[text]="(t('theme.system') | async)!"
|
|
506
670
|
[selected]="store.isSystemMode()"
|
|
507
671
|
>
|
|
@@ -531,7 +695,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
|
531
695
|
<ax-dropdown-panel *translate="let t">
|
|
532
696
|
<ax-button-item-list>
|
|
533
697
|
<ax-button-item
|
|
534
|
-
(onClick)="store.
|
|
698
|
+
(onClick)="store.changeThemeMode(variants.Light)"
|
|
535
699
|
[text]="(t('theme.light') | async)!"
|
|
536
700
|
[selected]="!store.isSystemMode() && !store.isDarkMode()"
|
|
537
701
|
>
|
|
@@ -540,7 +704,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
|
540
704
|
</ax-prefix>
|
|
541
705
|
</ax-button-item>
|
|
542
706
|
<ax-button-item
|
|
543
|
-
(onClick)="store.
|
|
707
|
+
(onClick)="store.changeThemeMode(variants.Dark)"
|
|
544
708
|
[text]="(t('theme.dark') | async)!"
|
|
545
709
|
[selected]="!store.isSystemMode() && store.isDarkMode()"
|
|
546
710
|
>
|
|
@@ -549,7 +713,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
|
549
713
|
</ax-prefix>
|
|
550
714
|
</ax-button-item>
|
|
551
715
|
<ax-button-item
|
|
552
|
-
(onClick)="store.
|
|
716
|
+
(onClick)="store.changeThemeMode(variants.System)"
|
|
553
717
|
[text]="(t('theme.system') | async)!"
|
|
554
718
|
[selected]="store.isSystemMode()"
|
|
555
719
|
>
|
|
@@ -566,47 +730,181 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
|
566
730
|
}] });
|
|
567
731
|
|
|
568
732
|
class AXPThemeSettingProvider {
|
|
733
|
+
constructor() {
|
|
734
|
+
this.pallets = inject(AXP_THEME_PALETTE_PROVIDER);
|
|
735
|
+
}
|
|
569
736
|
async provide(context) {
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
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',
|
|
745
|
+
scope: 'U',
|
|
746
|
+
isInherited: true,
|
|
747
|
+
defaultValue: AXPThemeMode.Light,
|
|
748
|
+
valueTransforms: objectKeyValueTransforms('id'),
|
|
749
|
+
widget: {
|
|
750
|
+
type: AXPWidgetsCatalog.select,
|
|
751
|
+
options: {
|
|
752
|
+
dataSource: Object.entries(AXPThemeMode).map(([key, value]) => ({
|
|
753
|
+
id: value,
|
|
754
|
+
title: key.charAt(0).toUpperCase() + key.slice(1).toLowerCase(),
|
|
755
|
+
})),
|
|
756
|
+
},
|
|
757
|
+
},
|
|
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
|
|
573
778
|
.endSection()
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
.
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
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
|
+
],
|
|
587
806
|
},
|
|
588
|
-
setter: (value) => {
|
|
589
|
-
return typeof value == 'object' ? value['id'] : value;
|
|
590
|
-
}
|
|
591
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'),
|
|
592
818
|
widget: {
|
|
593
819
|
type: 'select-editor',
|
|
594
820
|
options: {
|
|
595
|
-
dataSource:
|
|
596
|
-
id:
|
|
597
|
-
title:
|
|
598
|
-
|
|
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
|
+
],
|
|
599
827
|
},
|
|
600
828
|
},
|
|
601
|
-
description: '
|
|
602
|
-
})
|
|
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();
|
|
603
835
|
}
|
|
604
836
|
}
|
|
605
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
|
+
|
|
606
895
|
class AXPThemesSharedModule {
|
|
607
|
-
constructor() {
|
|
608
|
-
|
|
609
|
-
|
|
896
|
+
constructor(appInitService, injector) {
|
|
897
|
+
const service = injector.get(AXPLayoutThemeService);
|
|
898
|
+
appInitService.registerTask({
|
|
899
|
+
name: 'layout-theme',
|
|
900
|
+
statusText: 'Applying layout theme settings ...',
|
|
901
|
+
run: async () => {
|
|
902
|
+
await service.loadSettings();
|
|
903
|
+
}
|
|
904
|
+
});
|
|
905
|
+
}
|
|
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] }); }
|
|
610
908
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemesSharedModule, providers: [
|
|
611
909
|
{
|
|
612
910
|
provide: AXP_SETTING_DEFINITION_PROVIDER,
|
|
@@ -621,6 +919,11 @@ class AXPThemesSharedModule {
|
|
|
621
919
|
component: AXPThemeSlotComponent,
|
|
622
920
|
},
|
|
623
921
|
],
|
|
922
|
+
}),
|
|
923
|
+
AXPLayoutBuilderModule.forChild({
|
|
924
|
+
widgets: [
|
|
925
|
+
AXPThemeColorSelectionWidget
|
|
926
|
+
]
|
|
624
927
|
})] }); }
|
|
625
928
|
}
|
|
626
929
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPThemesSharedModule, decorators: [{
|
|
@@ -636,6 +939,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
|
636
939
|
},
|
|
637
940
|
],
|
|
638
941
|
}),
|
|
942
|
+
AXPLayoutBuilderModule.forChild({
|
|
943
|
+
widgets: [
|
|
944
|
+
AXPThemeColorSelectionWidget
|
|
945
|
+
]
|
|
946
|
+
})
|
|
639
947
|
],
|
|
640
948
|
exports: [],
|
|
641
949
|
declarations: [],
|
|
@@ -647,11 +955,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImpor
|
|
|
647
955
|
}
|
|
648
956
|
],
|
|
649
957
|
}]
|
|
650
|
-
}], ctorParameters: () => [] });
|
|
958
|
+
}], ctorParameters: () => [{ type: i1$2.AXPAppStartUpService }, { type: i0.Injector }] });
|
|
651
959
|
|
|
652
960
|
/**
|
|
653
961
|
* Generated bundle index. Do not edit.
|
|
654
962
|
*/
|
|
655
963
|
|
|
656
|
-
export { AXPDeviceType, AXPLayoutThemeService, AXPScreenSize, AXPSideMenuState, AXPThemeLayoutBlockComponent,
|
|
964
|
+
export { AXPDeviceType, AXPLayoutThemeService, AXPScreenSize, AXPSideMenuState, AXPThemeLayoutActionsComponent, AXPThemeLayoutBlockComponent, AXPThemeLayoutHeaderTemplateComponent, AXPThemeLayoutListComponent, AXPThemeLayoutListItemComponent, AXPThemeLayoutListItemsGroupComponent, AXPThemeLayoutPagePrimaryActionsComponent, AXPThemeLayoutPageSecondaryActionsComponent, AXPThemeLayoutSectionTemplateComponent, AXPThemeLayoutSideTemplateComponent, AXPThemeMode, AXPThemePaletteProviderDefault, AXPThemeSlotComponent, AXPThemesSharedModule, AXP_THEME_PALETTE_PROVIDER };
|
|
657
965
|
//# sourceMappingURL=acorex-platform-themes-shared.mjs.map
|