@acorex/platform 20.0.5 → 20.0.7
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/auth/index.d.ts +37 -32
- package/common/index.d.ts +104 -4
- package/core/index.d.ts +4 -0
- package/domain/index.d.ts +2010 -42
- package/fesm2022/acorex-platform-auth.mjs +57 -21
- package/fesm2022/acorex-platform-auth.mjs.map +1 -1
- package/fesm2022/acorex-platform-common.mjs +332 -90
- package/fesm2022/acorex-platform-common.mjs.map +1 -1
- package/fesm2022/acorex-platform-core.mjs +54 -42
- package/fesm2022/acorex-platform-core.mjs.map +1 -1
- package/fesm2022/acorex-platform-domain.mjs +3338 -31
- package/fesm2022/acorex-platform-domain.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-builder.mjs +174 -168
- package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-components.mjs +281 -89
- package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-designer.mjs +72 -72
- package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-entity.mjs +210 -130
- package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-views.mjs +342 -119
- package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
- package/fesm2022/acorex-platform-native.mjs +7 -7
- package/fesm2022/acorex-platform-native.mjs.map +1 -1
- package/fesm2022/acorex-platform-runtime.mjs +51 -48
- package/fesm2022/acorex-platform-runtime.mjs.map +1 -1
- package/fesm2022/{acorex-platform-themes-default-create-entity-view.component-BxYe1IlE.mjs → acorex-platform-themes-default-create-entity-view.component-DyVB3PZT.mjs} +4 -4
- package/fesm2022/{acorex-platform-themes-default-create-entity-view.component-BxYe1IlE.mjs.map → acorex-platform-themes-default-create-entity-view.component-DyVB3PZT.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-CzSqhYfE.mjs → acorex-platform-themes-default-entity-master-create-view.component-CsWVOu-r.mjs} +4 -4
- package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-CzSqhYfE.mjs.map → acorex-platform-themes-default-entity-master-create-view.component-CsWVOu-r.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-themes-default-entity-master-list-view.component-BxdQ5JWS.mjs → acorex-platform-themes-default-entity-master-list-view.component-DgyzWR29.mjs} +20 -20
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-DgyzWR29.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-default-entity-master-modify-view.component-12xcM8FJ.mjs → acorex-platform-themes-default-entity-master-modify-view.component-gJap_TBH.mjs} +4 -4
- package/fesm2022/{acorex-platform-themes-default-entity-master-modify-view.component-12xcM8FJ.mjs.map → acorex-platform-themes-default-entity-master-modify-view.component-gJap_TBH.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-D99jLndX.mjs → acorex-platform-themes-default-entity-master-single-view.component-BUNm9JV5.mjs} +8 -8
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-BUNm9JV5.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-default-error-401.component-8QfQ3hNo.mjs → acorex-platform-themes-default-error-401.component-DP3msj3d.mjs} +4 -4
- package/fesm2022/{acorex-platform-themes-default-error-401.component-8QfQ3hNo.mjs.map → acorex-platform-themes-default-error-401.component-DP3msj3d.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-themes-default-error-404.component-D9npA9_W.mjs → acorex-platform-themes-default-error-404.component-uvBHGbHY.mjs} +4 -4
- package/fesm2022/{acorex-platform-themes-default-error-404.component-D9npA9_W.mjs.map → acorex-platform-themes-default-error-404.component-uvBHGbHY.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-themes-default-error-offline.component-BQpVnLzt.mjs → acorex-platform-themes-default-error-offline.component-CdXIik4U.mjs} +4 -4
- package/fesm2022/{acorex-platform-themes-default-error-offline.component-BQpVnLzt.mjs.map → acorex-platform-themes-default-error-offline.component-CdXIik4U.mjs.map} +1 -1
- package/fesm2022/acorex-platform-themes-default.mjs +469 -51
- package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
- package/fesm2022/acorex-platform-themes-shared.mjs +22 -23
- package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
- package/fesm2022/{acorex-platform-widgets-button-widget-designer.component-BIZkWv8q.mjs → acorex-platform-widgets-button-widget-designer.component-CgUkYMwV.mjs} +4 -4
- package/fesm2022/{acorex-platform-widgets-button-widget-designer.component-BIZkWv8q.mjs.map → acorex-platform-widgets-button-widget-designer.component-CgUkYMwV.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-widgets-checkbox-widget-column.component-MjSzOXIJ.mjs → acorex-platform-widgets-checkbox-widget-column.component-Dn0U56O7.mjs} +4 -4
- package/fesm2022/{acorex-platform-widgets-checkbox-widget-column.component-MjSzOXIJ.mjs.map → acorex-platform-widgets-checkbox-widget-column.component-Dn0U56O7.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-widgets-checkbox-widget-designer.component-5kuroU6r.mjs → acorex-platform-widgets-checkbox-widget-designer.component-BD0-kCi0.mjs} +5 -5
- package/fesm2022/acorex-platform-widgets-checkbox-widget-designer.component-BD0-kCi0.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-checkbox-widget-view.component-BgrIeNW0.mjs → acorex-platform-widgets-checkbox-widget-view.component-CzCWGDil.mjs} +4 -4
- package/fesm2022/{acorex-platform-widgets-checkbox-widget-view.component-BgrIeNW0.mjs.map → acorex-platform-widgets-checkbox-widget-view.component-CzCWGDil.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-widgets-color-box-widget-designer.component-BTxAgvMQ.mjs → acorex-platform-widgets-color-box-widget-designer.component-BSRAHIPQ.mjs} +4 -4
- package/fesm2022/{acorex-platform-widgets-color-box-widget-designer.component-BTxAgvMQ.mjs.map → acorex-platform-widgets-color-box-widget-designer.component-BSRAHIPQ.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-widgets-contact-widget-filter.component-DCUfKMJ6.mjs → acorex-platform-widgets-contact-widget-filter.component-CtCAgeH9.mjs} +4 -4
- package/fesm2022/{acorex-platform-widgets-contact-widget-filter.component-DCUfKMJ6.mjs.map → acorex-platform-widgets-contact-widget-filter.component-CtCAgeH9.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-widgets-file-list-popup.component-yqqPJMg2.mjs → acorex-platform-widgets-file-list-popup.component-hyJf0xT2.mjs} +4 -4
- package/fesm2022/{acorex-platform-widgets-file-list-popup.component-yqqPJMg2.mjs.map → acorex-platform-widgets-file-list-popup.component-hyJf0xT2.mjs.map} +1 -1
- package/fesm2022/acorex-platform-widgets-file-rename-popup.component-BSm6Qew2.mjs +211 -0
- package/fesm2022/acorex-platform-widgets-file-rename-popup.component-BSm6Qew2.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-page-widget-designer.component-tITe8tiu.mjs → acorex-platform-widgets-page-widget-designer.component-Dlu4Tkou.mjs} +6 -4
- package/fesm2022/acorex-platform-widgets-page-widget-designer.component-Dlu4Tkou.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-rich-text-popup.component-Bk20MsqK.mjs → acorex-platform-widgets-rich-text-popup.component-DB2IMaLw.mjs} +4 -4
- package/fesm2022/{acorex-platform-widgets-rich-text-popup.component-Bk20MsqK.mjs.map → acorex-platform-widgets-rich-text-popup.component-DB2IMaLw.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-widgets-tabular-data-edit-popup.component-2srL34Aq.mjs → acorex-platform-widgets-tabular-data-edit-popup.component-CBOUSkL4.mjs} +4 -4
- package/fesm2022/{acorex-platform-widgets-tabular-data-edit-popup.component-2srL34Aq.mjs.map → acorex-platform-widgets-tabular-data-edit-popup.component-CBOUSkL4.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-widgets-tabular-data-view-popup.component-D9654sA3.mjs → acorex-platform-widgets-tabular-data-view-popup.component-Dl5U2HFR.mjs} +4 -4
- package/fesm2022/{acorex-platform-widgets-tabular-data-view-popup.component-D9654sA3.mjs.map → acorex-platform-widgets-tabular-data-view-popup.component-Dl5U2HFR.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-widgets-text-block-widget-designer.component-C1VgsL1j.mjs → acorex-platform-widgets-text-block-widget-designer.component-CG_2APU3.mjs} +4 -4
- package/fesm2022/{acorex-platform-widgets-text-block-widget-designer.component-C1VgsL1j.mjs.map → acorex-platform-widgets-text-block-widget-designer.component-CG_2APU3.mjs.map} +1 -1
- package/fesm2022/acorex-platform-widgets.mjs +942 -706
- package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
- package/fesm2022/acorex-platform-workflow.mjs +25 -25
- package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
- package/layout/builder/index.d.ts +21 -13
- package/layout/components/index.d.ts +106 -2
- package/layout/entity/index.d.ts +9 -0
- package/layout/views/index.d.ts +83 -24
- package/package.json +1 -1
- package/runtime/index.d.ts +5 -5
- package/widgets/index.d.ts +16 -4
- package/domain/README.md +0 -3
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-BxdQ5JWS.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-D99jLndX.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-checkbox-widget-designer.component-5kuroU6r.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-page-widget-designer.component-tITe8tiu.mjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-platform-themes-shared.mjs","sources":["../tmp-esm2022/themes/shared/lib/settings.keys.js","../tmp-esm2022/themes/shared/lib/theme.types.js","../tmp-esm2022/themes/shared/lib/theme.service.js","../tmp-esm2022/themes/shared/lib/slots/theme-slot.component.js","../tmp-esm2022/themes/shared/lib/palette.provider.js","../tmp-esm2022/themes/shared/lib/widgets/theme-palette-chooser/theme-palette-chooser-widget.component.js","../tmp-esm2022/themes/shared/lib/widgets/theme-palette-chooser/theme-palette-chooser-widget.config.js","../tmp-esm2022/themes/shared/lib/widgets/theme-mode-chooser/theme-mode-chooser-widget.component.js","../tmp-esm2022/themes/shared/lib/widgets/theme-mode-chooser/theme-mode-chooser-widget.config.js","../tmp-esm2022/themes/shared/lib/widgets/menu-orientation-chooser/menu-orientation-chooser-widget.component.js","../tmp-esm2022/themes/shared/lib/widgets/menu-orientation-chooser/menu-orientation-chooser-widget.config.js","../tmp-esm2022/themes/shared/lib/widgets/font-style-chooser/font-style-chooser-widget.component.js","../tmp-esm2022/themes/shared/lib/widgets/font-style-chooser/font-style-chooser-widget.config.js","../tmp-esm2022/themes/shared/lib/widgets/font-size-chooser/font-size-chooser-widget.component.js","../tmp-esm2022/themes/shared/lib/widgets/font-size-chooser/font-size-chooser-widget.config.js","../tmp-esm2022/themes/shared/lib/shared.module.js","../tmp-esm2022/themes/shared/acorex-platform-themes-shared.js"],"sourcesContent":["export var AXPThemeLayoutSetting;\n(function (AXPThemeLayoutSetting) {\n AXPThemeLayoutSetting[\"Name\"] = \"layout:theme:name\";\n AXPThemeLayoutSetting[\"Layout\"] = \"layout:theme:layout\";\n AXPThemeLayoutSetting[\"Font\"] = \"layout:theme:font:family\";\n AXPThemeLayoutSetting[\"FontSize\"] = \"layout:theme:font:size\";\n AXPThemeLayoutSetting[\"Palette\"] = \"layout:theme:palette\";\n AXPThemeLayoutSetting[\"Mode\"] = \"layout:theme:mode\";\n AXPThemeLayoutSetting[\"SideMenuStatus\"] = \"layout:theme:sidemenu:status\";\n AXPThemeLayoutSetting[\"SideMenuWidth\"] = \"layout:theme:sidemenu:width\";\n AXPThemeLayoutSetting[\"MenuOrientation\"] = \"layout:theme:root-menu:direction\";\n AXPThemeLayoutSetting[\"MenuBadgeVisible\"] = \"layout:theme:root-menu:badge\";\n})(AXPThemeLayoutSetting || (AXPThemeLayoutSetting = {}));\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZ3Mua2V5cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdGhlbWVzL3NoYXJlZC9zcmMvbGliL3NldHRpbmdzLmtleXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVkscUJBV1g7QUFYRCxXQUFZLHFCQUFxQjtJQUM3QixtREFBMEIsQ0FBQTtJQUMxQix1REFBOEIsQ0FBQTtJQUM5QiwwREFBaUMsQ0FBQTtJQUNqQyw0REFBbUMsQ0FBQTtJQUNuQyx5REFBZ0MsQ0FBQTtJQUNoQyxtREFBMEIsQ0FBQTtJQUMxQix3RUFBK0MsQ0FBQTtJQUMvQyxzRUFBNkMsQ0FBQTtJQUM3Qyw2RUFBb0QsQ0FBQTtJQUNwRCwwRUFBaUQsQ0FBQTtBQUNyRCxDQUFDLEVBWFcscUJBQXFCLEtBQXJCLHFCQUFxQixRQVdoQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEFYUFRoZW1lTGF5b3V0U2V0dGluZyB7XG4gICAgTmFtZSA9ICdsYXlvdXQ6dGhlbWU6bmFtZScsXG4gICAgTGF5b3V0ID0gJ2xheW91dDp0aGVtZTpsYXlvdXQnLFxuICAgIEZvbnQgPSAnbGF5b3V0OnRoZW1lOmZvbnQ6ZmFtaWx5JyxcbiAgICBGb250U2l6ZSA9ICdsYXlvdXQ6dGhlbWU6Zm9udDpzaXplJyxcbiAgICBQYWxldHRlID0gJ2xheW91dDp0aGVtZTpwYWxldHRlJyxcbiAgICBNb2RlID0gJ2xheW91dDp0aGVtZTptb2RlJyxcbiAgICBTaWRlTWVudVN0YXR1cyA9ICdsYXlvdXQ6dGhlbWU6c2lkZW1lbnU6c3RhdHVzJyxcbiAgICBTaWRlTWVudVdpZHRoID0gJ2xheW91dDp0aGVtZTpzaWRlbWVudTp3aWR0aCcsXG4gICAgTWVudU9yaWVudGF0aW9uID0gJ2xheW91dDp0aGVtZTpyb290LW1lbnU6ZGlyZWN0aW9uJyxcbiAgICBNZW51QmFkZ2VWaXNpYmxlID0gJ2xheW91dDp0aGVtZTpyb290LW1lbnU6YmFkZ2UnLFxufSJdfQ==","// Theme Enum\nexport var AXPThemeMode;\n(function (AXPThemeMode) {\n AXPThemeMode[\"Light\"] = \"light\";\n AXPThemeMode[\"Dark\"] = \"dark\";\n AXPThemeMode[\"System\"] = \"system\";\n})(AXPThemeMode || (AXPThemeMode = {}));\n// Screen Size Enum\nexport var AXPScreenSize;\n(function (AXPScreenSize) {\n AXPScreenSize[\"Small\"] = \"small\";\n AXPScreenSize[\"Medium\"] = \"medium\";\n AXPScreenSize[\"Large\"] = \"large\";\n})(AXPScreenSize || (AXPScreenSize = {}));\n// Device Type Enum\nexport var AXPDeviceType;\n(function (AXPDeviceType) {\n AXPDeviceType[\"Mobile\"] = \"mobile\";\n AXPDeviceType[\"Tablet\"] = \"tablet\";\n AXPDeviceType[\"Desktop\"] = \"desktop\";\n})(AXPDeviceType || (AXPDeviceType = {}));\n// Side Menu State Enum\nexport var AXPSideMenuState;\n(function (AXPSideMenuState) {\n AXPSideMenuState[\"Opened\"] = \"opened\";\n AXPSideMenuState[\"Closed\"] = \"closed\";\n})(AXPSideMenuState || (AXPSideMenuState = {}));\n// Menu Orientation Enum\nexport var AXPMenuOrientation;\n(function (AXPMenuOrientation) {\n AXPMenuOrientation[\"Vertical\"] = \"vertical\";\n AXPMenuOrientation[\"Horizontal\"] = \"horizontal\";\n})(AXPMenuOrientation || (AXPMenuOrientation = {}));\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUudHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9zaGFyZWQvc3JjL2xpYi90aGVtZS50eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpQkEsYUFBYTtBQUNiLE1BQU0sQ0FBTixJQUFZLFlBSVg7QUFKRCxXQUFZLFlBQVk7SUFDcEIsK0JBQWUsQ0FBQTtJQUNmLDZCQUFhLENBQUE7SUFDYixpQ0FBaUIsQ0FBQTtBQUNyQixDQUFDLEVBSlcsWUFBWSxLQUFaLFlBQVksUUFJdkI7QUFFRCxtQkFBbUI7QUFDbkIsTUFBTSxDQUFOLElBQVksYUFJWDtBQUpELFdBQVksYUFBYTtJQUNyQixnQ0FBZSxDQUFBO0lBQ2Ysa0NBQWlCLENBQUE7SUFDakIsZ0NBQWUsQ0FBQTtBQUNuQixDQUFDLEVBSlcsYUFBYSxLQUFiLGFBQWEsUUFJeEI7QUFFRCxtQkFBbUI7QUFDbkIsTUFBTSxDQUFOLElBQVksYUFJWDtBQUpELFdBQVksYUFBYTtJQUNyQixrQ0FBaUIsQ0FBQTtJQUNqQixrQ0FBaUIsQ0FBQTtJQUNqQixvQ0FBbUIsQ0FBQTtBQUN2QixDQUFDLEVBSlcsYUFBYSxLQUFiLGFBQWEsUUFJeEI7QUFFRCx1QkFBdUI7QUFDdkIsTUFBTSxDQUFOLElBQVksZ0JBR1g7QUFIRCxXQUFZLGdCQUFnQjtJQUN4QixxQ0FBaUIsQ0FBQTtJQUNqQixxQ0FBaUIsQ0FBQTtBQUNyQixDQUFDLEVBSFcsZ0JBQWdCLEtBQWhCLGdCQUFnQixRQUczQjtBQUVELHdCQUF3QjtBQUN4QixNQUFNLENBQU4sSUFBWSxrQkFHWDtBQUhELFdBQVksa0JBQWtCO0lBQzFCLDJDQUFxQixDQUFBO0lBQ3JCLCtDQUF5QixDQUFBO0FBQzdCLENBQUMsRUFIVyxrQkFBa0IsS0FBbEIsa0JBQWtCLFFBRzdCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBBWFBUaGVtZVBhbGV0dGVDb2xvcnMge1xuICAgIHByaW1hcnk6IHN0cmluZztcbiAgICBzZWNvbmRhcnk6IHN0cmluZztcbiAgICBzdWNjZXNzOiBzdHJpbmc7XG4gICAgd2FybmluZzogc3RyaW5nO1xuICAgIGRhbmdlcjogc3RyaW5nO1xuICAgIGFjY2VudHM6IHN0cmluZ1tdO1xuICAgIGRhcms6IHN0cmluZztcbiAgICBsaWdodDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFYUFRoZW1lUGFsZXR0ZSB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIHRpdGxlOiBzdHJpbmc7XG4gICAgY29sb3JzOiBBWFBUaGVtZVBhbGV0dGVDb2xvcnNcbn1cblxuLy8gVGhlbWUgRW51bVxuZXhwb3J0IGVudW0gQVhQVGhlbWVNb2RlIHtcbiAgICBMaWdodCA9ICdsaWdodCcsXG4gICAgRGFyayA9ICdkYXJrJyxcbiAgICBTeXN0ZW0gPSAnc3lzdGVtJyxcbn1cblxuLy8gU2NyZWVuIFNpemUgRW51bVxuZXhwb3J0IGVudW0gQVhQU2NyZWVuU2l6ZSB7XG4gICAgU21hbGwgPSAnc21hbGwnLFxuICAgIE1lZGl1bSA9ICdtZWRpdW0nLFxuICAgIExhcmdlID0gJ2xhcmdlJyxcbn1cblxuLy8gRGV2aWNlIFR5cGUgRW51bVxuZXhwb3J0IGVudW0gQVhQRGV2aWNlVHlwZSB7XG4gICAgTW9iaWxlID0gJ21vYmlsZScsXG4gICAgVGFibGV0ID0gJ3RhYmxldCcsXG4gICAgRGVza3RvcCA9ICdkZXNrdG9wJyxcbn1cblxuLy8gU2lkZSBNZW51IFN0YXRlIEVudW1cbmV4cG9ydCBlbnVtIEFYUFNpZGVNZW51U3RhdGUge1xuICAgIE9wZW5lZCA9ICdvcGVuZWQnLFxuICAgIENsb3NlZCA9ICdjbG9zZWQnLFxufVxuXG4vLyBNZW51IE9yaWVudGF0aW9uIEVudW1cbmV4cG9ydCBlbnVtIEFYUE1lbnVPcmllbnRhdGlvbiB7XG4gICAgVmVydGljYWwgPSAndmVydGljYWwnLFxuICAgIEhvcml6b250YWwgPSAnaG9yaXpvbnRhbCcsXG59XG4iXX0=","import { AXPSettingService } from '@acorex/platform/common';\nimport { computed, inject } from '@angular/core';\nimport { patchState, signalStore, withComputed, withHooks, withMethods, withState } from '@ngrx/signals';\nimport { filter, firstValueFrom, timer, fromEvent, Subscription } from 'rxjs';\nimport { debounceTime } from 'rxjs/operators';\nimport { AXPThemeLayoutSetting } from './settings.keys';\nimport { AXPThemeMode, AXPScreenSize, AXPDeviceType, AXPSideMenuState, AXPMenuOrientation } from './theme.types';\nimport { HttpClient } from '@angular/common/http';\nimport { AXPPlatformScope } from '@acorex/platform/core';\n// ThemeStore - Manages theme settings, system changes, and loading states\nexport const AXPLayoutThemeService = signalStore({ providedIn: 'root' }, \n// Initial State\nwithState(() => {\n const isSystemDark = window.matchMedia('(prefers-color-scheme: dark)').matches;\n // Helper function to get the initial screen size\n const getScreenSize = () => {\n const width = window.innerWidth;\n if (width <= 600)\n return AXPScreenSize.Small;\n if (width <= 1024)\n return AXPScreenSize.Medium;\n return AXPScreenSize.Large;\n };\n // Helper function to determine device type\n const getDeviceType = () => {\n const userAgent = navigator.userAgent.toLowerCase();\n if (/mobile|android|iphone|ipad/.test(userAgent)) {\n return AXPDeviceType.Mobile;\n }\n else if (/tablet/.test(userAgent)) {\n return AXPDeviceType.Tablet;\n }\n return AXPDeviceType.Desktop;\n };\n // Helper function to determine if the device supports touch\n const isTouchDevice = () => {\n return 'ontouchstart' in window || navigator.maxTouchPoints > 0;\n };\n const state = {\n currentMode: AXPThemeMode.System,\n currentPalette: 'default',\n systemThemeMode: (isSystemDark ? AXPThemeMode.Dark : AXPThemeMode.Light),\n font: {\n family: 'system-ui',\n size: 'medium'\n },\n screenSize: getScreenSize(),\n deviceType: getDeviceType(),\n isTouchDevice: isTouchDevice(),\n overlayLoading: false,\n navigationLoading: false,\n overlayLoadingTaskCount: 0,\n navigationLoadingTaskCount: 0,\n sideMenuState: (getScreenSize() === AXPScreenSize.Large ? AXPSideMenuState.Opened : AXPSideMenuState.Closed),\n sideMenuWidth: 288,\n menuOrientation: 'vertical',\n _listener: null,\n _resizeListener: null,\n };\n return state;\n}), \n// Computed Signals\nwithComputed(({ currentMode: currentTheme, systemThemeMode: systemTheme, screenSize, deviceType, isTouchDevice, sideMenuState, overlayLoading, navigationLoading, menuOrientation }) => ({\n isDarkMode: computed(() => currentTheme() === AXPThemeMode.Dark ||\n (currentTheme() === AXPThemeMode.System && systemTheme() === AXPThemeMode.Dark)),\n isLightMode: computed(() => currentTheme() === AXPThemeMode.Light ||\n (currentTheme() === AXPThemeMode.System && systemTheme() === AXPThemeMode.Light)),\n isSystemMode: computed(() => currentTheme() === AXPThemeMode.System),\n isSideMenuOpen: computed(() => sideMenuState() === AXPSideMenuState.Opened),\n isSideMenuOverlay: computed(() => screenSize() === AXPScreenSize.Small || screenSize() === AXPScreenSize.Medium),\n isSmall: computed(() => screenSize() === AXPScreenSize.Small),\n isMedium: computed(() => screenSize() === AXPScreenSize.Medium),\n isLarge: computed(() => screenSize() === AXPScreenSize.Large),\n isMobileDevice: computed(() => deviceType() === AXPDeviceType.Mobile),\n isTabletDevice: computed(() => deviceType() === AXPDeviceType.Tablet),\n isDesktopDevice: computed(() => deviceType() === AXPDeviceType.Desktop),\n isTouchScreen: computed(() => isTouchDevice()),\n isOverlayLoading: computed(() => overlayLoading()),\n isNavigationLoading: computed(() => navigationLoading()),\n isMenuHorizontal: computed(() => menuOrientation() === AXPMenuOrientation.Horizontal),\n})), \n// Methods for State Management\nwithMethods((store, http = inject(HttpClient), settingService = inject(AXPSettingService)) => {\n const _applySettings = async () => {\n console.log('apply settings');\n // Initialize theme and side menu setting from storage\n const settingThemeMode = (await settingService.get(AXPThemeLayoutSetting.Mode)) ?? AXPThemeMode.Light;\n patchState(store, { currentMode: settingThemeMode });\n //\n const settingThemePallete = (await settingService.get(AXPThemeLayoutSetting.Palette)) ?? 'default';\n patchState(store, { currentPalette: settingThemePallete });\n //\n const settingSideMenu = (await settingService.get(AXPThemeLayoutSetting.SideMenuStatus)) ?? store.sideMenuState();\n patchState(store, { sideMenuState: settingSideMenu });\n //\n const settingMenuOrientation = (await settingService.get(AXPThemeLayoutSetting.MenuOrientation)) ?? store.menuOrientation();\n patchState(store, { menuOrientation: settingMenuOrientation });\n // \n const fontFamily = await settingService.get(AXPThemeLayoutSetting.Font);\n const fontSize = await settingService.get(AXPThemeLayoutSetting.FontSize);\n patchState(store, { font: { family: fontFamily, size: fontSize } });\n //\n const sideMenuWidth = await settingService.get(AXPThemeLayoutSetting.SideMenuWidth);\n patchState(store, { sideMenuWidth });\n await _updateHtmlClass();\n };\n // Update HTML class based on theme\n const _updateHtmlClass = async () => {\n const html = document.getElementsByTagName('html')[0];\n //\n store.isDarkMode() ? html.classList.add('ax-dark') : html.classList.remove('ax-dark');\n //\n html.style.fontFamily = store.font().family;\n html.style.fontSize = store.font().size;\n //\n await _applyThemePalette(store.currentPalette());\n };\n // Update screen size based on window width\n const _updateScreenSize = () => {\n const width = window.innerWidth;\n let newScreenSize;\n if (width <= 600) {\n newScreenSize = AXPScreenSize.Small;\n }\n else if (width <= 1024) {\n newScreenSize = AXPScreenSize.Medium;\n }\n else {\n newScreenSize = AXPScreenSize.Large;\n }\n if (newScreenSize !== store.screenSize()) {\n patchState(store, { screenSize: newScreenSize });\n if (!store.isLarge()) {\n patchState(store, { sideMenuState: AXPSideMenuState.Closed });\n settingService.scope(AXPPlatformScope.User).set(AXPThemeLayoutSetting.SideMenuStatus, store.sideMenuState());\n }\n }\n };\n const _setOverlayLoading = async (value, delay = 0) => {\n if (value) {\n let timeoutId = null;\n if (delay > 0) {\n timeoutId = window.setTimeout(() => {\n patchState(store, { overlayLoadingTaskCount: store.overlayLoadingTaskCount() + 1 });\n patchState(store, { overlayLoading: true });\n }, delay);\n }\n else {\n patchState(store, { overlayLoadingTaskCount: store.overlayLoadingTaskCount() + 1 });\n patchState(store, { overlayLoading: true });\n }\n // Store timeout ID to clear it if the loading ends before delay\n store._loadingTimeoutId = timeoutId;\n }\n else {\n if (store.overlayLoadingTaskCount() > 0) {\n patchState(store, { overlayLoadingTaskCount: store.overlayLoadingTaskCount() - 1 });\n }\n if (store.overlayLoadingTaskCount() === 0) {\n const timeoutId = store._loadingTimeoutId;\n if (timeoutId) {\n clearTimeout(timeoutId);\n store._loadingTimeoutId = null;\n }\n timer(minimumDisplayTime).subscribe(() => {\n if (store.overlayLoadingTaskCount() === 0) {\n patchState(store, { overlayLoading: false });\n }\n });\n }\n }\n };\n const _setNavigationLoading = (value, delay) => {\n if (value) {\n patchState(store, { navigationLoadingTaskCount: store.navigationLoadingTaskCount() + 1 });\n patchState(store, { navigationLoading: true });\n }\n else {\n if (store.navigationLoadingTaskCount() > 0) {\n patchState(store, { navigationLoadingTaskCount: store.navigationLoadingTaskCount() - 1 });\n }\n if (store.navigationLoadingTaskCount() === 0) {\n timer(minimumDisplayTime).subscribe(() => {\n if (store.navigationLoadingTaskCount() === 0) {\n patchState(store, { navigationLoading: false });\n }\n });\n }\n }\n };\n // Helper method to apply a cached theme palette\n const _applyThemePalette = async (name) => {\n // TODO: Get the path from the palette provider token\n const path = `/assets/themes/palettes/css/${name}.css`;\n // Check if the current theme is already applied\n const existingStyle = document.querySelector(`style[data-theme=\"${name}\"]`);\n if (existingStyle) {\n return; // Theme is already applied, no need to reapply\n }\n _setNavigationLoading(true);\n try {\n // Fetch the CSS file via HttpClient\n const cssText = await firstValueFrom(http.get(path, { responseType: 'text' }));\n // Create a new <style> tag and apply the CSS\n const style = document.createElement('style');\n style.setAttribute('data-theme', name);\n style.textContent = cssText;\n document.head.appendChild(style);\n // Remove any other outdated theme styles\n document.querySelectorAll('style[data-theme]').forEach(existing => {\n if (existing !== style) {\n existing.remove();\n }\n });\n }\n catch (error) {\n console.error(`Error loading theme CSS:`, error);\n }\n finally {\n _setNavigationLoading(false);\n }\n };\n const minimumDisplayTime = 500; // milliseconds\n return {\n // Change theme and update HTML class\n changeThemeMode(theme) {\n settingService.scope(AXPPlatformScope.User).set(AXPThemeLayoutSetting.Mode, theme);\n patchState(store, { currentMode: theme });\n _updateHtmlClass();\n },\n // Open side menu\n openSideMenu() {\n patchState(store, { sideMenuState: AXPSideMenuState.Opened });\n settingService.scope(AXPPlatformScope.User).set(AXPThemeLayoutSetting.SideMenuStatus, AXPSideMenuState.Opened);\n },\n // Close side menu\n closeSideMenu() {\n patchState(store, { sideMenuState: AXPSideMenuState.Closed });\n settingService.scope(AXPPlatformScope.User).set(AXPThemeLayoutSetting.SideMenuStatus, AXPSideMenuState.Closed);\n },\n // Set side menu width\n setSideMenuWidth(width) {\n patchState(store, { sideMenuWidth: width });\n settingService.scope(AXPPlatformScope.User).set(AXPThemeLayoutSetting.SideMenuWidth, width);\n },\n // Toggle side menu state\n toggleSideMenu() {\n const newSideMenuState = store.sideMenuState() === AXPSideMenuState.Opened ? AXPSideMenuState.Closed : AXPSideMenuState.Opened;\n patchState(store, { sideMenuState: newSideMenuState });\n settingService.scope(AXPPlatformScope.User).set(AXPThemeLayoutSetting.SideMenuStatus, newSideMenuState);\n },\n // Set navigation loading state with a task counter\n setNavigationLoading(value, delay) {\n _setNavigationLoading(value, delay);\n },\n // Set overlay loading state with a task counter\n setOverlayLoading(value, delay) {\n _setOverlayLoading(value, delay);\n },\n async loadSettings() {\n await _applySettings();\n },\n // Set up event listener for system theme changes\n _setupSystemColorListener() {\n const mediaQueryList = window.matchMedia('(prefers-color-scheme: dark)');\n const listener = (e) => {\n patchState(store, { systemThemeMode: e.matches ? AXPThemeMode.Dark : AXPThemeMode.Light });\n _updateHtmlClass();\n };\n mediaQueryList.addEventListener('change', listener);\n return listener;\n },\n // Remove event listener for system theme changes\n _removeSystemColorListener(listener) {\n const mediaQueryList = window.matchMedia('(prefers-color-scheme: dark)');\n mediaQueryList.removeEventListener('change', listener);\n },\n // Set up event listener for window resize\n _setupResizeListener() {\n const subscription = fromEvent(window, 'resize')\n .pipe(debounceTime(250) // 250ms debounce delay\n )\n .subscribe(() => {\n _updateScreenSize();\n });\n return subscription;\n },\n // Remove event listener for window resize\n _removeResizeListener(subscription) {\n if (subscription) {\n subscription.unsubscribe();\n }\n },\n };\n}), \n// Lifecycle Hooks\nwithHooks((store, settingService = inject(AXPSettingService)) => ({\n onInit() {\n //\n settingService.onChanged.pipe(filter(c => c.scope == AXPPlatformScope.User)).subscribe(async (changes) => {\n const keys = Object.values(AXPThemeLayoutSetting);\n if (changes.keys.some((key) => keys.includes(key))) {\n await store.loadSettings();\n }\n });\n //\n settingService.onLoaded.subscribe(async () => {\n await store.loadSettings();\n });\n // Set up event listener for system theme changes\n const listener = store._setupSystemColorListener();\n patchState(store, { _listener: listener });\n // Set up event listener for window resize\n const resizeSubscription = store._setupResizeListener();\n patchState(store, { _resizeListener: resizeSubscription });\n },\n onDestroy() {\n // Clean up event listeners when store is destroyed\n const { _listener: listener, _resizeListener: resizeListener } = store;\n if (listener) {\n store._removeSystemColorListener(listener);\n }\n if (resizeListener instanceof Subscription) {\n store._removeResizeListener(resizeListener);\n }\n },\n})));\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdGhlbWVzL3NoYXJlZC9zcmMvbGliL3RoZW1lLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pHLE9BQU8sRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakgsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXpELDBFQUEwRTtBQUMxRSxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxXQUFXLENBQzlDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRTtBQUV0QixnQkFBZ0I7QUFDaEIsU0FBUyxDQUFDLEdBQUcsRUFBRTtJQUViLE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsOEJBQThCLENBQUMsQ0FBQyxPQUFPLENBQUM7SUFFL0UsaURBQWlEO0lBQ2pE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USxFQUFFLENBQUM7WUFDYixLQUFLLENBQUMsMEJBQTBCLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDN0MsQ0FBQztRQUNELElBQUksY0FBYyxZQUFZLFlBQVksRUFBRSxDQUFDO1lBQzNDLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUM5QyxDQUFDO0lBQ0gsQ0FBQztDQUNGLENBQUMsQ0FBQyxDQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBTZXR0aW5nU2VydmljZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IGNvbXB1dGVkLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHBhdGNoU3RhdGUsIHNpZ25hbFN0b3JlLCB3aXRoQ29tcHV0ZWQsIHdpdGhIb29rcywgd2l0aE1ldGhvZHMsIHdpdGhTdGF0ZSB9IGZyb20gJ0BuZ3J4L3NpZ25hbHMnO1xuaW1wb3J0IHsgZmlsdGVyLCBmaXJzdFZhbHVlRnJvbSwgdGltZXIsIGZyb21FdmVudCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBBWFBUaGVtZUxheW91dFNldHRpbmcgfSBmcm9tICcuL3NldHRpbmdzLmtleXMnO1xuaW1wb3J0IHsgQVhQVGhlbWVNb2RlLCBBWFBTY3JlZW5TaXplLCBBWFBEZXZpY2VUeXBlLCBBWFBTaWRlTWVudVN0YXRlLCBBWFBNZW51T3JpZW50YXRpb24gfSBmcm9tICcuL3RoZW1lLnR5cGVzJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBBWFBQbGF0Zm9ybVNjb3BlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb3JlJztcbmltcG9ydCB7IEFYUFNlc3Npb25TZXJ2aWNlLCBBWFBTZXNzaW9uU3RhdHVzIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9hdXRoJztcbi8vIFRoZW1lU3RvcmUgLSBNYW5hZ2VzIHRoZW1lIHNldHRpbmdzLCBzeXN0ZW0gY2hhbmdlcywgYW5kIGxvYWRpbmcgc3RhdGVzXG5leHBvcnQgY29uc3QgQVhQTGF5b3V0VGhlbWVTZXJ2aWNlID0gc2lnbmFsU3RvcmUoXG4gIHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0sXG5cbiAgLy8gSW5pdGlhbCBTdGF0ZVxuICB3aXRoU3RhdGUoKCkgPT4ge1xuXG4gICAgY29uc3QgaXNTeXN0ZW1EYXJrID0gd2luZG93Lm1hdGNoTWVkaWEoJyhwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyayknKS5tYXRjaGVzO1xuXG4gICAgLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGdldCB0aGUgaW5pdGlhbCBzY3JlZW4gc2l6ZVxuICAgIGNvbnN0IGdldFNjcmVlblNpemUgPSAoKTogQVhQU2NyZWVuU2l6ZSA9PiB7XG4gICAgICBjb25zdCB3aWR0aCA9IHdpbmRvdy5pbm5lcldpZHRoO1xuICAgICAgaWYgKHdpZHRoIDw9IDYwMCkgcmV0dXJuIEFYUFNjcmVlblNpemUuU21hbGw7XG4gICAgICBpZiAod2lkdGggPD0gMTAyNCkgcmV0dXJuIEFYUFNjcmVlblNpemUuTWVkaXVtO1xuICAgICAgcmV0dXJuIEFYUFNjcmVlblNpemUuTGFyZ2U7XG4gICAgfTtcblxuICAgIC8vIEhlbHBlciBmdW5jdGlvbiB0byBkZXRlcm1pbmUgZGV2aWNlIHR5cGVcbiAgICBjb25zdCBnZXREZXZpY2VUeXBlID0gKCk6IEFYUERldmljZVR5cGUgPT4ge1xuICAgICAgY29uc3QgdXNlckFnZW50ID0gbmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpO1xuICAgICAgaWYgKC9tb2JpbGV8YW5kcm9pZHxpcGhvbmV8aXBhZC8udGVzdCh1c2VyQWdlbnQpKSB7XG4gICAgICAgIHJldHVybiBBWFBEZXZpY2VUeXBlLk1vYmlsZTtcbiAgICAgIH0gZWxzZSBpZiAoL3RhYmxldC8udGVzdCh1c2VyQWdlbnQpKSB7XG4gICAgICAgIHJldHVybiBBWFBEZXZpY2VUeXBlLlRhYmxldDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBBWFBEZXZpY2VUeXBlLkRlc2t0b3A7XG4gICAgfTtcblxuICAgIC8vIEhlbHBlciBmdW5jdGlvbiB0byBkZXRlcm1pbmUgaWYgdGhlIGRldmljZSBzdXBwb3J0cyB0b3VjaFxuICAgIGNvbnN0IGlzVG91Y2hEZXZpY2UgPSAoKTogYm9vbGVhbiA9PiB7XG4gICAgICByZXR1cm4gJ29udG91Y2hzdGFydCcgaW4gd2luZG93IHx8IG5hdmlnYXRvci5tYXhUb3VjaFBvaW50cyA+IDA7XG4gICAgfTtcblxuICAgIGNvbnN0IHN0YXRlID0ge1xuICAgICAgY3VycmVudE1vZGU6IEFYUFRoZW1lTW9kZS5TeXN0ZW0sXG4gICAgICBjdXJyZW50UGFsZXR0ZTogJ2RlZmF1bHQnLFxuICAgICAgc3lzdGVtVGhlbWVNb2RlOiAoaXNTeXN0ZW1EYXJrID8gQVhQVGhlbWVNb2RlLkRhcmsgOiBBWFBUaGVtZU1vZGUuTGlnaHQpIGFzIEFYUFRoZW1lTW9kZSxcbiAgICAgIGZvbnQ6IHtcbiAgICAgICAgZmFtaWx5OiAnc3lzdGVtLXVpJyxcbiAgICAgICAgc2l6ZTogJ21lZGl1bSdcbiAgICAgIH0sXG4gICAgICBzY3JlZW5TaXplOiBnZXRTY3JlZW5TaXplKCksXG4gICAgICBkZXZpY2VUeXBlOiBnZXREZXZpY2VUeXBlKCksXG4gICAgICBpc1RvdWNoRGV2aWNlOiBpc1RvdWNoRGV2aWNlKCksXG4gICAgICBvdmVybGF5TG9hZGluZzogZmFsc2UsXG4gICAgICBuYXZpZ2F0aW9uTG9hZGluZzogZmFsc2UsXG4gICAgICBvdmVybGF5TG9hZGluZ1Rhc2tDb3VudDogMCxcbiAgICAgIG5hdmlnYXRpb25Mb2FkaW5nVGFza0NvdW50OiAwLFxuICAgICAgc2lkZU1lbnVTdGF0ZTogKGdldFNjcmVlblNpemUoKSA9PT0gQVhQU2NyZWVuU2l6ZS5MYXJnZSA/IEFYUFNpZGVNZW51U3RhdGUuT3BlbmVkIDogQVhQU2lkZU1lbnVTdGF0ZS5DbG9zZWQpIGFzIEFYUFNpZGVNZW51U3RhdGUsXG4gICAgICBzaWRlTWVudVdpZHRoOiAyODgsXG4gICAgICBtZW51T3JpZW50YXRpb246ICd2ZXJ0aWNhbCcgYXMgQVhQTWVudU9yaWVudGF0aW9uLFxuICAgICAgX2xpc3RlbmVyOiBudWxsIGFzICgoZTogTWVkaWFRdWVyeUxpc3RFdmVudCkgPT4gdm9pZCkgfCBudWxsLFxuICAgICAgX3Jlc2l6ZUxpc3RlbmVyOiBudWxsIGFzIFN1YnNjcmlwdGlvbiB8IG51bGwsXG4gICAgfTtcblxuICAgIHJldHVybiBzdGF0ZTtcbiAgfSksXG5cbiAgLy8gQ29tcHV0ZWQgU2lnbmFsc1xuICB3aXRoQ29tcHV0ZWQoKHsgY3VycmVudE1vZGU6IGN1cnJlbnRUaGVtZSwgc3lzdGVtVGhlbWVNb2RlOiBzeXN0ZW1UaGVtZSwgc2NyZWVuU2l6ZSwgZGV2aWNlVHlwZSwgaXNUb3VjaERldmljZSwgc2lkZU1lbnVTdGF0ZSwgb3ZlcmxheUxvYWRpbmcsIG5hdmlnYXRpb25Mb2FkaW5nLCBtZW51T3JpZW50YXRpb24gfSkgPT4gKHtcbiAgICBpc0RhcmtNb2RlOiBjb21wdXRlZChcbiAgICAgICgpID0+XG4gICAgICAgIGN1cnJlbnRUaGVtZSgpID09PSBBWFBUaGVtZU1vZGUuRGFyayB8fFxuICAgICAgICAoY3VycmVudFRoZW1lKCkgPT09IEFYUFRoZW1lTW9kZS5TeXN0ZW0gJiYgc3lzdGVtVGhlbWUoKSA9PT0gQVhQVGhlbWVNb2RlLkRhcmspXG4gICAgKSxcbiAgICBpc0xpZ2h0TW9kZTogY29tcHV0ZWQoXG4gICAgICAoKSA9PlxuICAgICAgICBjdXJyZW50VGhlbWUoKSA9PT0gQVhQVGhlbWVNb2RlLkxpZ2h0IHx8XG4gICAgICAgIChjdXJyZW50VGhlbWUoKSA9PT0gQVhQVGhlbWVNb2RlLlN5c3RlbSAmJiBzeXN0ZW1UaGVtZSgpID09PSBBWFBUaGVtZU1vZGUuTGlnaHQpXG4gICAgKSxcbiAgICBpc1N5c3RlbU1vZGU6IGNvbXB1dGVkKCgpID0+IGN1cnJlbnRUaGVtZSgpID09PSBBWFBUaGVtZU1vZGUuU3lzdGVtKSxcbiAgICBpc1NpZGVNZW51T3BlbjogY29tcHV0ZWQoKCkgPT4gc2lkZU1lbnVTdGF0ZSgpID09PSBBWFBTaWRlTWVudVN0YXRlLk9wZW5lZCksXG4gICAgaXNTaWRlTWVudU92ZXJsYXk6IGNvbXB1dGVkKCgpID0+IHNjcmVlblNpemUoKSA9PT0gQVhQU2NyZWVuU2l6ZS5TbWFsbCB8fCBzY3JlZW5TaXplKCkgPT09IEFYUFNjcmVlblNpemUuTWVkaXVtKSxcbiAgICBpc1NtYWxsOiBjb21wdXRlZCgoKSA9PiBzY3JlZW5TaXplKCkgPT09IEFYUFNjcmVlblNpemUuU21hbGwpLFxuICAgIGlzTWVkaXVtOiBjb21wdXRlZCgoKSA9PiBzY3JlZW5TaXplKCkgPT09IEFYUFNjcmVlblNpemUuTWVkaXVtKSxcbiAgICBpc0xhcmdlOiBjb21wdXRlZCgoKSA9PiBzY3JlZW5TaXplKCkgPT09IEFYUFNjcmVlblNpemUuTGFyZ2UpLFxuICAgIGlzTW9iaWxlRGV2aWNlOiBjb21wdXRlZCgoKSA9PiBkZXZpY2VUeXBlKCkgPT09IEFYUERldmljZVR5cGUuTW9iaWxlKSxcbiAgICBpc1RhYmxldERldmljZTogY29tcHV0ZWQoKCkgPT4gZGV2aWNlVHlwZSgpID09PSBBWFBEZXZpY2VUeXBlLlRhYmxldCksXG4gICAgaXNEZXNrdG9wRGV2aWNlOiBjb21wdXRlZCgoKSA9PiBkZXZpY2VUeXBlKCkgPT09IEFYUERldmljZVR5cGUuRGVza3RvcCksXG4gICAgaXNUb3VjaFNjcmVlbjogY29tcHV0ZWQoKCkgPT4gaXNUb3VjaERldmljZSgpKSxcbiAgICBpc092ZXJsYXlMb2FkaW5nOiBjb21wdXRlZCgoKSA9PiBvdmVybGF5TG9hZGluZygpKSxcbiAgICBpc05hdmlnYXRpb25Mb2FkaW5nOiBjb21wdXRlZCgoKSA9PiBuYXZpZ2F0aW9uTG9hZGluZygpKSxcbiAgICBpc01lbnVIb3Jpem9udGFsOiBjb21wdXRlZCgoKSA9PiBtZW51T3JpZW50YXRpb24oKSA9PT0gQVhQTWVudU9yaWVudGF0aW9uLkhvcml6b250YWwpLFxuICB9KSksXG5cbiAgLy8gTWV0aG9kcyBmb3IgU3RhdGUgTWFuYWdlbWVudFxuICB3aXRoTWV0aG9kcygoc3RvcmUsIGh0dHAgPSBpbmplY3QoSHR0cENsaWVudCksIHNldHRpbmdTZXJ2aWNlID0gaW5qZWN0KEFYUFNldHRpbmdTZXJ2aWNlKSkgPT4ge1xuXG4gICAgY29uc3QgX2FwcGx5U2V0dGluZ3MgPSBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zb2xlLmxvZygnYXBwbHkgc2V0dGluZ3MnKTtcblxuICAgICAgLy8gSW5pdGlhbGl6ZSB0aGVtZSBhbmQgc2lkZSBtZW51IHNldHRpbmcgZnJvbSBzdG9yYWdlXG4gICAgICBjb25zdCBzZXR0aW5nVGhlbWVNb2RlID0gKChhd2FpdCBzZXR0aW5nU2VydmljZS5nZXQoQVhQVGhlbWVMYXlvdXRTZXR0aW5nLk1vZGUpKSBhcyBBWFBUaGVtZU1vZGUpID8/IEFYUFRoZW1lTW9kZS5MaWdodDtcbiAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgY3VycmVudE1vZGU6IHNldHRpbmdUaGVtZU1vZGUgfSk7XG4gICAgICAvL1xuICAgICAgY29uc3Qgc2V0dGluZ1RoZW1lUGFsbGV0ZSA9ICgoYXdhaXQgc2V0dGluZ1NlcnZpY2UuZ2V0KEFYUFRoZW1lTGF5b3V0U2V0dGluZy5QYWxldHRlKSkgYXMgc3RyaW5nKSA/PyAnZGVmYXVsdCc7XG4gICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7IGN1cnJlbnRQYWxldHRlOiBzZXR0aW5nVGhlbWVQYWxsZXRlIH0pO1xuICAgICAgLy9cbiAgICAgIGNvbnN0IHNldHRpbmdTaWRlTWVudSA9ICgoYXdhaXQgc2V0dGluZ1NlcnZpY2UuZ2V0KEFYUFRoZW1lTGF5b3V0U2V0dGluZy5TaWRlTWVudVN0YXR1cykpIGFzIEFYUFNpZGVNZW51U3RhdGUpID8/IHN0b3JlLnNpZGVNZW51U3RhdGUoKTtcbiAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgc2lkZU1lbnVTdGF0ZTogc2V0dGluZ1NpZGVNZW51IH0pO1xuICAgICAgLy9cbiAgICAgIGNvbnN0IHNldHRpbmdNZW51T3JpZW50YXRpb24gPSAoKGF3YWl0IHNldHRpbmdTZXJ2aWNlLmdldChBWFBUaGVtZUxheW91dFNldHRpbmcuTWVudU9yaWVudGF0aW9uKSkgYXMgQVhQTWVudU9yaWVudGF0aW9uKSA/PyBzdG9yZS5tZW51T3JpZW50YXRpb24oKTtcbiAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgbWVudU9yaWVudGF0aW9uOiBzZXR0aW5nTWVudU9yaWVudGF0aW9uIH0pO1xuICAgICAgLy8gIFxuICAgICAgY29uc3QgZm9udEZhbWlseSA9IGF3YWl0IHNldHRpbmdTZXJ2aWNlLmdldChBWFBUaGVtZUxheW91dFNldHRpbmcuRm9udCk7XG4gICAgICBjb25zdCBmb250U2l6ZSA9IGF3YWl0IHNldHRpbmdTZXJ2aWNlLmdldChBWFBUaGVtZUxheW91dFNldHRpbmcuRm9udFNpemUpO1xuICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwgeyBmb250OiB7IGZhbWlseTogZm9udEZhbWlseSwgc2l6ZTogZm9udFNpemUgfSB9KTtcbiAgICAgIC8vXG4gICAgICBjb25zdCBzaWRlTWVudVdpZHRoID0gYXdhaXQgc2V0dGluZ1NlcnZpY2UuZ2V0KEFYUFRoZW1lTGF5b3V0U2V0dGluZy5TaWRlTWVudVdpZHRoKTtcbiAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgc2lkZU1lbnVXaWR0aCB9KTtcblxuICAgICAgYXdhaXQgX3VwZGF0ZUh0bWxDbGFzcygpO1xuICAgIH1cblxuICAgIC8vIFVwZGF0ZSBIVE1MIGNsYXNzIGJhc2VkIG9uIHRoZW1lXG4gICAgY29uc3QgX3VwZGF0ZUh0bWxDbGFzcyA9IGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGh0bWwgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaHRtbCcpWzBdO1xuICAgICAgLy9cbiAgICAgIHN0b3JlLmlzRGFya01vZGUoKSA/IGh0bWwuY2xhc3NMaXN0LmFkZCgnYXgtZGFyaycpIDogaHRtbC5jbGFzc0xpc3QucmVtb3ZlKCdheC1kYXJrJyk7XG4gICAgICAvL1xuICAgICAgaHRtbC5zdHlsZS5mb250RmFtaWx5ID0gc3RvcmUuZm9udCgpLmZhbWlseTtcbiAgICAgIGh0bWwuc3R5bGUuZm9udFNpemUgPSBzdG9yZS5mb250KCkuc2l6ZTtcbiAgICAgIC8vXG4gICAgICBhd2FpdCBfYXBwbHlUaGVtZVBhbGV0dGUoc3RvcmUuY3VycmVudFBhbGV0dGUoKSlcbiAgICB9O1xuXG4gICAgLy8gVXBkYXRlIHNjcmVlbiBzaXplIGJhc2VkIG9uIHdpbmRvdyB3aWR0aFxuICAgIGNvbnN0IF91cGRhdGVTY3JlZW5TaXplID0gKCkgPT4ge1xuICAgICAgY29uc3Qgd2lkdGggPSB3aW5kb3cuaW5uZXJXaWR0aDtcbiAgICAgIGxldCBuZXdTY3JlZW5TaXplOiBBWFBTY3JlZW5TaXplO1xuXG4gICAgICBpZiAod2lkdGggPD0gNjAwKSB7XG4gICAgICAgIG5ld1NjcmVlblNpemUgPSBBWFBTY3JlZW5TaXplLlNtYWxsO1xuICAgICAgfSBlbHNlIGlmICh3aWR0aCA8PSAxMDI0KSB7XG4gICAgICAgIG5ld1NjcmVlblNpemUgPSBBWFBTY3JlZW5TaXplLk1lZGl1bTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG5ld1NjcmVlblNpemUgPSBBWFBTY3JlZW5TaXplLkxhcmdlO1xuICAgICAgfVxuXG4gICAgICBpZiAobmV3U2NyZWVuU2l6ZSAhPT0gc3RvcmUuc2NyZWVuU2l6ZSgpKSB7XG4gICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgc2NyZWVuU2l6ZTogbmV3U2NyZWVuU2l6ZSB9KTtcbiAgICAgICAgaWYgKCFzdG9yZS5pc0xhcmdlKCkpIHtcbiAgICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7IHNpZGVNZW51U3RhdGU6IEFYUFNpZGVNZW51U3RhdGUuQ2xvc2VkIH0pO1xuICAgICAgICAgIHNldHRpbmdTZXJ2aWNlLnNjb3BlKEFYUFBsYXRmb3JtU2NvcGUuVXNlcikuc2V0KEFYUFRoZW1lTGF5b3V0U2V0dGluZy5TaWRlTWVudVN0YXR1cywgc3RvcmUuc2lkZU1lbnVTdGF0ZSgpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH07XG5cbiAgICBjb25zdCBfc2V0T3ZlcmxheUxvYWRpbmcgPSBhc3luYyAodmFsdWU6IGJvb2xlYW4sIGRlbGF5OiBudW1iZXIgPSAwKTogUHJvbWlzZTx2b2lkPiA9PiB7XG4gICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgbGV0IHRpbWVvdXRJZDogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG5cbiAgICAgICAgaWYgKGRlbGF5ID4gMCkge1xuICAgICAgICAgIHRpbWVvdXRJZCA9IHdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgb3ZlcmxheUxvYWRpbmdUYXNrQ291bnQ6IHN0b3JlLm92ZXJsYXlMb2FkaW5nVGFza0NvdW50KCkgKyAxIH0pO1xuICAgICAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwgeyBvdmVybGF5TG9hZGluZzogdHJ1ZSB9KTtcbiAgICAgICAgICB9LCBkZWxheSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwgeyBvdmVybGF5TG9hZGluZ1Rhc2tDb3VudDogc3RvcmUub3ZlcmxheUxvYWRpbmdUYXNrQ291bnQoKSArIDEgfSk7XG4gICAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwgeyBvdmVybGF5TG9hZGluZzogdHJ1ZSB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFN0b3JlIHRpbWVvdXQgSUQgdG8gY2xlYXIgaXQgaWYgdGhlIGxvYWRpbmcgZW5kcyBiZWZvcmUgZGVsYXlcbiAgICAgICAgKHN0b3JlIGFzIGFueSkuX2xvYWRpbmdUaW1lb3V0SWQgPSB0aW1lb3V0SWQ7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAoc3RvcmUub3ZlcmxheUxvYWRpbmdUYXNrQ291bnQoKSA+IDApIHtcbiAgICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7IG92ZXJsYXlMb2FkaW5nVGFza0NvdW50OiBzdG9yZS5vdmVybGF5TG9hZGluZ1Rhc2tDb3VudCgpIC0gMSB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzdG9yZS5vdmVybGF5TG9hZGluZ1Rhc2tDb3VudCgpID09PSAwKSB7XG4gICAgICAgICAgY29uc3QgdGltZW91dElkID0gKHN0b3JlIGFzIGFueSkuX2xvYWRpbmdUaW1lb3V0SWQ7XG4gICAgICAgICAgaWYgKHRpbWVvdXRJZCkge1xuICAgICAgICAgICAgY2xlYXJUaW1lb3V0KHRpbWVvdXRJZCk7XG4gICAgICAgICAgICAoc3RvcmUgYXMgYW55KS5fbG9hZGluZ1RpbWVvdXRJZCA9IG51bGw7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdGltZXIobWluaW11bURpc3BsYXlUaW1lKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKHN0b3JlLm92ZXJsYXlMb2FkaW5nVGFza0NvdW50KCkgPT09IDApIHtcbiAgICAgICAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwgeyBvdmVybGF5TG9hZGluZzogZmFsc2UgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9O1xuXG5cbiAgICBjb25zdCBfc2V0TmF2aWdhdGlvbkxvYWRpbmcgPSAodmFsdWU6IGJvb2xlYW4sIGRlbGF5PzogbnVtYmVyKSA9PiB7XG4gICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwgeyBuYXZpZ2F0aW9uTG9hZGluZ1Rhc2tDb3VudDogc3RvcmUubmF2aWdhdGlvbkxvYWRpbmdUYXNrQ291bnQoKSArIDEgfSk7XG4gICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgbmF2aWdhdGlvbkxvYWRpbmc6IHRydWUgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAoc3RvcmUubmF2aWdhdGlvbkxvYWRpbmdUYXNrQ291bnQoKSA+IDApIHtcbiAgICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7IG5hdmlnYXRpb25Mb2FkaW5nVGFza0NvdW50OiBzdG9yZS5uYXZpZ2F0aW9uTG9hZGluZ1Rhc2tDb3VudCgpIC0gMSB9KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoc3RvcmUubmF2aWdhdGlvbkxvYWRpbmdUYXNrQ291bnQoKSA9PT0gMCkge1xuICAgICAgICAgIHRpbWVyKG1pbmltdW1EaXNwbGF5VGltZSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIGlmIChzdG9yZS5uYXZpZ2F0aW9uTG9hZGluZ1Rhc2tDb3VudCgpID09PSAwKSB7XG4gICAgICAgICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgbmF2aWdhdGlvbkxvYWRpbmc6IGZhbHNlIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG5cblxuICAgIC8vIEhlbHBlciBtZXRob2QgdG8gYXBwbHkgYSBjYWNoZWQgdGhlbWUgcGFsZXR0ZVxuICAgIGNvbnN0IF9hcHBseVRoZW1lUGFsZXR0ZSA9IGFzeW5jIChuYW1lOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+ID0+IHtcbiAgICAgIC8vIFRPRE86IEdldCB0aGUgcGF0aCBmcm9tIHRoZSBwYWxldHRlIHByb3ZpZGVyIHRva2VuXG4gICAgICBjb25zdCBwYXRoID0gYC9hc3NldHMvdGhlbWVzL3BhbGV0dGVzL2Nzcy8ke25hbWV9LmNzc2A7XG4gICAgICAvLyBDaGVjayBpZiB0aGUgY3VycmVudCB0aGVtZSBpcyBhbHJlYWR5IGFwcGxpZWRcbiAgICAgIGNvbnN0IGV4aXN0aW5nU3R5bGUgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yPEhUTUxTdHlsZUVsZW1lbnQ+KGBzdHlsZVtkYXRhLXRoZW1lPVwiJHtuYW1lfVwiXWApO1xuICAgICAgaWYgKGV4aXN0aW5nU3R5bGUpIHtcbiAgICAgICAgcmV0dXJuOyAvLyBUaGVtZSBpcyBhbHJlYWR5IGFwcGxpZWQsIG5vIG5lZWQgdG8gcmVhcHBseVxuICAgICAgfVxuXG4gICAgICBfc2V0TmF2aWdhdGlvbkxvYWRpbmcodHJ1ZSk7XG5cbiAgICAgIHRyeSB7XG4gICAgICAgIC8vIEZldGNoIHRoZSBDU1MgZmlsZSB2aWEgSHR0cENsaWVudFxuICAgICAgICBjb25zdCBjc3NUZXh0ID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20oaHR0cC5nZXQocGF0aCEsIHsgcmVzcG9uc2VUeXBlOiAndGV4dCcgfSkpO1xuXG4gICAgICAgIC8vIENyZWF0ZSBhIG5ldyA8c3R5bGU+IHRhZyBhbmQgYXBwbHkgdGhlIENTU1xuICAgICAgICBjb25zdCBzdHlsZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3N0eWxlJyk7XG4gICAgICAgIHN0eWxlLnNldEF0dHJpYnV0ZSgnZGF0YS10aGVtZScsIG5hbWUpO1xuICAgICAgICBzdHlsZS50ZXh0Q29udGVudCA9IGNzc1RleHQhO1xuICAgICAgICBkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHN0eWxlKTtcblxuICAgICAgICAvLyBSZW1vdmUgYW55IG90aGVyIG91dGRhdGVkIHRoZW1lIHN0eWxlc1xuICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsPEhUTUxTdHlsZUVsZW1lbnQ+KCdzdHlsZVtkYXRhLXRoZW1lXScpLmZvckVhY2goZXhpc3RpbmcgPT4ge1xuICAgICAgICAgIGlmIChleGlzdGluZyAhPT0gc3R5bGUpIHtcbiAgICAgICAgICAgIGV4aXN0aW5nLnJlbW92ZSgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoYEVycm9yIGxvYWRpbmcgdGhlbWUgQ1NTOmAsIGVycm9yKTtcbiAgICAgIH0gZmluYWxseSB7XG4gICAgICAgIF9zZXROYXZpZ2F0aW9uTG9hZGluZyhmYWxzZSk7XG4gICAgICB9XG4gICAgfTtcblxuXG4gICAgY29uc3QgbWluaW11bURpc3BsYXlUaW1lID0gNTAwOyAvLyBtaWxsaXNlY29uZHNcblxuICAgIHJldHVybiB7XG4gICAgICAvLyBDaGFuZ2UgdGhlbWUgYW5kIHVwZGF0ZSBIVE1MIGNsYXNzXG4gICAgICBjaGFuZ2VUaGVtZU1vZGUodGhlbWU6IEFYUFRoZW1lTW9kZSkge1xuICAgICAgICBzZXR0aW5nU2VydmljZS5zY29wZShBWFBQbGF0Zm9ybVNjb3BlLlVzZXIpLnNldChBWFBUaGVtZUxheW91dFNldHRpbmcuTW9kZSwgdGhlbWUpO1xuICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7IGN1cnJlbnRNb2RlOiB0aGVtZSB9KTtcbiAgICAgICAgX3VwZGF0ZUh0bWxDbGFzcygpO1xuICAgICAgfSxcblxuICAgICAgLy8gT3BlbiBzaWRlIG1lbnVcbiAgICAgIG9wZW5TaWRlTWVudSgpIHtcbiAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwgeyBzaWRlTWVudVN0YXRlOiBBWFBTaWRlTWVudVN0YXRlLk9wZW5lZCB9KTtcbiAgICAgICAgc2V0dGluZ1NlcnZpY2Uuc2NvcGUoQVhQUGxhdGZvcm1TY29wZS5Vc2VyKS5zZXQoQVhQVGhlbWVMYXlvdXRTZXR0aW5nLlNpZGVNZW51U3RhdHVzLCBBWFBTaWRlTWVudVN0YXRlLk9wZW5lZCk7XG4gICAgICB9LFxuXG4gICAgICAvLyBDbG9zZSBzaWRlIG1lbnVcbiAgICAgIGNsb3NlU2lkZU1lbnUoKSB7XG4gICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgc2lkZU1lbnVTdGF0ZTogQVhQU2lkZU1lbnVTdGF0ZS5DbG9zZWQgfSk7XG4gICAgICAgIHNldHRpbmdTZXJ2aWNlLnNjb3BlKEFYUFBsYXRmb3JtU2NvcGUuVXNlcikuc2V0KEFYUFRoZW1lTGF5b3V0U2V0dGluZy5TaWRlTWVudVN0YXR1cywgQVhQU2lkZU1lbnVTdGF0ZS5DbG9zZWQpO1xuICAgICAgfSxcblxuICAgICAgLy8gU2V0IHNpZGUgbWVudSB3aWR0aFxuICAgICAgc2V0U2lkZU1lbnVXaWR0aCh3aWR0aDogbnVtYmVyKSB7XG4gICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgc2lkZU1lbnVXaWR0aDogd2lkdGggfSk7XG4gICAgICAgIHNldHRpbmdTZXJ2aWNlLnNjb3BlKEFYUFBsYXRmb3JtU2NvcGUuVXNlcikuc2V0KEFYUFRoZW1lTGF5b3V0U2V0dGluZy5TaWRlTWVudVdpZHRoLCB3aWR0aCk7XG4gICAgICB9LFxuXG4gICAgICAvLyBUb2dnbGUgc2lkZSBtZW51IHN0YXRlXG4gICAgICB0b2dnbGVTaWRlTWVudSgpIHtcbiAgICAgICAgY29uc3QgbmV3U2lkZU1lbnVTdGF0ZSA9IHN0b3JlLnNpZGVNZW51U3RhdGUoKSA9PT0gQVhQU2lkZU1lbnVTdGF0ZS5PcGVuZWQgPyBBWFBTaWRlTWVudVN0YXRlLkNsb3NlZCA6IEFYUFNpZGVNZW51U3RhdGUuT3BlbmVkO1xuICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7IHNpZGVNZW51U3RhdGU6IG5ld1NpZGVNZW51U3RhdGUgfSk7XG4gICAgICAgIHNldHRpbmdTZXJ2aWNlLnNjb3BlKEFYUFBsYXRmb3JtU2NvcGUuVXNlcikuc2V0KEFYUFRoZW1lTGF5b3V0U2V0dGluZy5TaWRlTWVudVN0YXR1cywgbmV3U2lkZU1lbnVTdGF0ZSk7XG4gICAgICB9LFxuXG4gICAgICAvLyBTZXQgbmF2aWdhdGlvbiBsb2FkaW5nIHN0YXRlIHdpdGggYSB0YXNrIGNvdW50ZXJcbiAgICAgIHNldE5hdmlnYXRpb25Mb2FkaW5nKHZhbHVlOiBib29sZWFuLCBkZWxheT86IG51bWJlcikge1xuICAgICAgICBfc2V0TmF2aWdhdGlvbkxvYWRpbmcodmFsdWUsIGRlbGF5KTtcbiAgICAgIH0sXG5cbiAgICAgIC8vIFNldCBvdmVybGF5IGxvYWRpbmcgc3RhdGUgd2l0aCBhIHRhc2sgY291bnRlclxuICAgICAgc2V0T3ZlcmxheUxvYWRpbmcodmFsdWU6IGJvb2xlYW4sIGRlbGF5PzogbnVtYmVyKSB7XG4gICAgICAgIF9zZXRPdmVybGF5TG9hZGluZyh2YWx1ZSwgZGVsYXkpO1xuICAgICAgfSxcblxuICAgICAgYXN5bmMgbG9hZFNldHRpbmdzKCkge1xuICAgICAgICBhd2FpdCBfYXBwbHlTZXR0aW5ncygpO1xuICAgICAgfSxcblxuICAgICAgLy8gU2V0IHVwIGV2ZW50IGxpc3RlbmVyIGZvciBzeXN0ZW0gdGhlbWUgY2hhbmdlc1xuICAgICAgX3NldHVwU3lzdGVtQ29sb3JMaXN0ZW5lcigpIHtcbiAgICAgICAgY29uc3QgbWVkaWFRdWVyeUxpc3QgPSB3aW5kb3cubWF0Y2hNZWRpYSgnKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKScpO1xuICAgICAgICBjb25zdCBsaXN0ZW5lciA9IChlOiBNZWRpYVF1ZXJ5TGlzdEV2ZW50KSA9PiB7XG4gICAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwgeyBzeXN0ZW1UaGVtZU1vZGU6IGUubWF0Y2hlcyA/IEFYUFRoZW1lTW9kZS5EYXJrIDogQVhQVGhlbWVNb2RlLkxpZ2h0IH0pO1xuICAgICAgICAgIF91cGRhdGVIdG1sQ2xhc3MoKTtcbiAgICAgICAgfTtcbiAgICAgICAgbWVkaWFRdWVyeUxpc3QuYWRkRXZlbnRMaXN0ZW5lcignY2hhbmdlJywgbGlzdGVuZXIpO1xuICAgICAgICByZXR1cm4gbGlzdGVuZXI7XG4gICAgICB9LFxuXG4gICAgICAvLyBSZW1vdmUgZXZlbnQgbGlzdGVuZXIgZm9yIHN5c3RlbSB0aGVtZSBjaGFuZ2VzXG4gICAgICBfcmVtb3ZlU3lzdGVtQ29sb3JMaXN0ZW5lcihsaXN0ZW5lcjogKGU6IE1lZGlhUXVlcnlMaXN0RXZlbnQpID0+IHZvaWQpIHtcbiAgICAgICAgY29uc3QgbWVkaWFRdWVyeUxpc3QgPSB3aW5kb3cubWF0Y2hNZWRpYSgnKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKScpO1xuICAgICAgICBtZWRpYVF1ZXJ5TGlzdC5yZW1vdmVFdmVudExpc3RlbmVyKCdjaGFuZ2UnLCBsaXN0ZW5lcik7XG4gICAgICB9LFxuXG4gICAgICAvLyBTZXQgdXAgZXZlbnQgbGlzdGVuZXIgZm9yIHdpbmRvdyByZXNpemVcbiAgICAgIF9zZXR1cFJlc2l6ZUxpc3RlbmVyKCk6IFN1YnNjcmlwdGlvbiB7XG4gICAgICAgIGNvbnN0IHN1YnNjcmlwdGlvbiA9IGZyb21FdmVudCh3aW5kb3csICdyZXNpemUnKVxuICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgZGVib3VuY2VUaW1lKDI1MCkgLy8gMjUwbXMgZGVib3VuY2UgZGVsYXlcbiAgICAgICAgICApXG4gICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICBfdXBkYXRlU2NyZWVuU2l6ZSgpO1xuICAgICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gc3Vic2NyaXB0aW9uO1xuICAgICAgfSxcblxuICAgICAgLy8gUmVtb3ZlIGV2ZW50IGxpc3RlbmVyIGZvciB3aW5kb3cgcmVzaXplXG4gICAgICBfcmVtb3ZlUmVzaXplTGlzdGVuZXIoc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24pIHtcbiAgICAgICAgaWYgKHN1YnNjcmlwdGlvbikge1xuICAgICAgICAgIHN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgICB9LFxuXG4gICAgfTtcbiAgfSksXG5cbiAgLy8gTGlmZWN5Y2xlIEhvb2tzXG4gIHdpdGhIb29rcygoc3RvcmUsIHNldHRpbmdTZXJ2aWNlID0gaW5qZWN0KEFYUFNldHRpbmdTZXJ2aWNlKSkgPT4gKHtcbiAgICBvbkluaXQoKSB7XG4gICAgICAvL1xuICAgICAgc2V0dGluZ1NlcnZpY2Uub25DaGFuZ2VkLnBpcGUoZmlsdGVyKGMgPT4gYy5zY29wZSA9PSBBWFBQbGF0Zm9ybVNjb3BlLlVzZXIpKS5zdWJzY3JpYmUoYXN5bmMgKGNoYW5nZXMpID0+IHtcbiAgICAgICAgY29uc3Qga2V5cyA9IE9iamVjdC52YWx1ZXMoQVhQVGhlbWVMYXlvdXRTZXR0aW5nKTtcbiAgICAgICAgaWYgKGNoYW5nZXMua2V5cy5zb21lKChrZXkpID0+IGtleXMuaW5jbHVkZXMoa2V5IGFzIGFueSkpKSB7XG4gICAgICAgICAgYXdhaXQgc3RvcmUubG9hZFNldHRpbmdzKCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgLy9cbiAgICAgIHNldHRpbmdTZXJ2aWNlLm9uTG9hZGVkLnN1YnNjcmliZShhc3luYyAoKSA9PiB7XG4gICAgICAgIGF3YWl0IHN0b3JlLmxvYWRTZXR0aW5ncygpO1xuICAgICAgfSk7XG5cbiAgICAgIC8vIFNldCB1cCBldmVudCBsaXN0ZW5lciBmb3Igc3lzdGVtIHRoZW1lIGNoYW5nZXNcbiAgICAgIGNvbnN0IGxpc3RlbmVyID0gc3RvcmUuX3NldHVwU3lzdGVtQ29sb3JMaXN0ZW5lcigpO1xuICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwgeyBfbGlzdGVuZXI6IGxpc3RlbmVyIH0pO1xuXG4gICAgICAvLyBTZXQgdXAgZXZlbnQgbGlzdGVuZXIgZm9yIHdpbmRvdyByZXNpemVcbiAgICAgIGNvbnN0IHJlc2l6ZVN1YnNjcmlwdGlvbiA9IHN0b3JlLl9zZXR1cFJlc2l6ZUxpc3RlbmVyKCk7XG4gICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7IF9yZXNpemVMaXN0ZW5lcjogcmVzaXplU3Vic2NyaXB0aW9uIH0pO1xuICAgIH0sXG5cbiAgICBvbkRlc3Ryb3koKSB7XG4gICAgICAvLyBDbGVhbiB1cCBldmVudCBsaXN0ZW5lcnMgd2hlbiBzdG9yZSBpcyBkZXN0cm95ZWRcbiAgICAgIGNvbnN0IHsgX2xpc3RlbmVyOiBsaXN0ZW5lciwgX3Jlc2l6ZUxpc3RlbmVyOiByZXNpemVMaXN0ZW5lciB9ID0gc3RvcmU7XG4gICAgICBpZiAobGlzdGVuZXIpIHtcbiAgICAgICAgc3RvcmUuX3JlbW92ZVN5c3RlbUNvbG9yTGlzdGVuZXIobGlzdGVuZXIpO1xuICAgICAgfVxuICAgICAgaWYgKHJlc2l6ZUxpc3RlbmVyIGluc3RhbmNlb2YgU3Vic2NyaXB0aW9uKSB7XG4gICAgICAgIHN0b3JlLl9yZW1vdmVSZXNpemVMaXN0ZW5lcihyZXNpemVMaXN0ZW5lcik7XG4gICAgICB9XG4gICAgfSxcbiAgfSkpXG4pO1xuIl19","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { CommonModule } from '@angular/common';\nimport { Component, inject } from '@angular/core';\nimport { AXPLayoutThemeService } from '../theme.service';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPThemeMode } from '../theme.types';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/common\";\nimport * as i2 from \"@acorex/components/button\";\nimport * as i3 from \"@acorex/components/decorators\";\nimport * as i4 from \"@acorex/components/dropdown\";\nimport * as i5 from \"@acorex/core/translation\";\nexport class AXPThemeSlotComponent {\n constructor() {\n this.store = inject(AXPLayoutThemeService);\n this.variants = AXPThemeMode;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXPThemeSlotComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.0.4\", type: AXPThemeSlotComponent, isStandalone: true, selector: \"ng-component\", ngImport: i0, template: `\n <ax-button color=\"primary\">\n <ax-icon\n class=\"fa-regular \"\n [ngClass]=\"{\n 'fa-desktop':store.isSystemMode(),\n 'fa-moon':!store.isSystemMode() && store.isDarkMode(),\n 'fa-brightness':!store.isSystemMode() && !store.isDarkMode(),\n }\"\n >\n </ax-icon>\n <ax-dropdown-panel *translate=\"let t\">\n <ax-button-item-list>\n <ax-button-item\n (onClick)=\"store.changeThemeMode(variants.Light)\"\n [text]=\"(t('theme-modes.light',{scope:'layout'}) | async)!\"\n [selected]=\"!store.isSystemMode() && !store.isDarkMode()\"\n >\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-brightness\"> </ax-icon>\n </ax-prefix>\n </ax-button-item>\n <ax-button-item\n (onClick)=\"store.changeThemeMode(variants.Dark)\"\n [text]=\"(t('theme-modes.dark',{scope:'layout'}) | async)!\"\n [selected]=\"!store.isSystemMode() && store.isDarkMode()\"\n >\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-moon\"> </ax-icon>\n </ax-prefix>\n </ax-button-item>\n <ax-button-item\n (onClick)=\"store.changeThemeMode(variants.System)\"\n [text]=\"(t('theme-modes.system',{scope:'layout'}) | async)!\"\n [selected]=\"store.isSystemMode()\"\n >\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-desktop\"> </ax-icon>\n </ax-prefix>\n </ax-button-item>\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n `, isInline: true, dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"directive\", type: i1.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { kind: \"pipe\", type: i1.AsyncPipe, name: \"async\" }, { kind: \"ngmodule\", type: AXButtonModule }, { kind: \"component\", type: i2.AXButtonComponent, selector: \"ax-button\", inputs: [\"disabled\", \"size\", \"tabIndex\", \"color\", \"look\", \"text\", \"toggleable\", \"selected\", \"iconOnly\", \"type\", \"loadingText\"], outputs: [\"onBlur\", \"onFocus\", \"onClick\", \"selectedChange\", \"toggleableChange\", \"lookChange\", \"colorChange\", \"disabledChange\", \"loadingTextChange\"] }, { kind: \"component\", type: i2.AXButtonItemComponent, selector: \"ax-button-item\", inputs: [\"color\", \"disabled\", \"text\", \"selected\", \"divided\", \"data\", \"name\"], outputs: [\"onClick\", \"onFocus\", \"onBlur\", \"disabledChange\"] }, { kind: \"component\", type: i2.AXButtonItemListComponent, selector: \"ax-button-item-list\", inputs: [\"items\"], outputs: [\"onItemClick\"] }, { kind: \"ngmodule\", type: AXDecoratorModule }, { kind: \"component\", type: i3.AXDecoratorIconComponent, selector: \"ax-icon\", inputs: [\"icon\"] }, { kind: \"component\", type: i3.AXDecoratorGenericComponent, selector: \"ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay\" }, { kind: \"ngmodule\", type: AXDropdownModule }, { kind: \"component\", type: i4.AXDropdownPanelComponent, selector: \"ax-dropdown-panel\", inputs: [\"isOpen\", \"fitParent\", \"dropdownWidth\", \"position\", \"placement\", \"_target\", \"adaptivityEnabled\"], outputs: [\"onOpened\", \"onClosed\"] }, { kind: \"ngmodule\", type: AXTranslationModule }, { kind: \"directive\", type: i5.AXTranslatorDirective, selector: \"[translate]\" }] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXPThemeSlotComponent, decorators: [{\n type: Component,\n args: [{\n template: `\n <ax-button color=\"primary\">\n <ax-icon\n class=\"fa-regular \"\n [ngClass]=\"{\n 'fa-desktop':store.isSystemMode(),\n 'fa-moon':!store.isSystemMode() && store.isDarkMode(),\n 'fa-brightness':!store.isSystemMode() && !store.isDarkMode(),\n }\"\n >\n </ax-icon>\n <ax-dropdown-panel *translate=\"let t\">\n <ax-button-item-list>\n <ax-button-item\n (onClick)=\"store.changeThemeMode(variants.Light)\"\n [text]=\"(t('theme-modes.light',{scope:'layout'}) | async)!\"\n [selected]=\"!store.isSystemMode() && !store.isDarkMode()\"\n >\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-brightness\"> </ax-icon>\n </ax-prefix>\n </ax-button-item>\n <ax-button-item\n (onClick)=\"store.changeThemeMode(variants.Dark)\"\n [text]=\"(t('theme-modes.dark',{scope:'layout'}) | async)!\"\n [selected]=\"!store.isSystemMode() && store.isDarkMode()\"\n >\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-moon\"> </ax-icon>\n </ax-prefix>\n </ax-button-item>\n <ax-button-item\n (onClick)=\"store.changeThemeMode(variants.System)\"\n [text]=\"(t('theme-modes.system',{scope:'layout'}) | async)!\"\n [selected]=\"store.isSystemMode()\"\n >\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-desktop\"> </ax-icon>\n </ax-prefix>\n </ax-button-item>\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n `,\n imports: [CommonModule, AXButtonModule, AXDecoratorModule, AXDropdownModule, AXTranslationModule]\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtc2xvdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9zaGFyZWQvc3JjL2xpYi9zbG90cy90aGVtZS1zbG90LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDL0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7OztBQWlEOUMsTUFBTSxPQUFPLHFCQUFxQjtJQS9DbEM7UUFnRFksVUFBSyxHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBRXRDLGFBQVEsR0FBRyxZQUFZLENBQUM7S0FDbkM7OEdBSlkscUJBQXFCO2tHQUFyQixxQkFBcUIsd0VBOUN0Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTJDVCwyREFDUyxZQUFZLGlMQUFFLGNBQWMsb3VCQUFFLGlCQUFpQixzVkFBRSxnQkFBZ0IscVFBQUUsbUJBQW1COzsyRkFFckYscUJBQXFCO2tCQS9DakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EyQ1Q7b0JBQ0QsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxtQkFBbUIsQ0FBQztpQkFDbEciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWERyb3Bkb3duTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2Ryb3Bkb3duJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhQTGF5b3V0VGhlbWVTZXJ2aWNlIH0gZnJvbSAnLi4vdGhlbWUuc2VydmljZSc7XG5pbXBvcnQgeyBBWFRyYW5zbGF0aW9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlL3RyYW5zbGF0aW9uJztcbmltcG9ydCB7IEFYUFRoZW1lTW9kZSB9IGZyb20gJy4uL3RoZW1lLnR5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiBgXG4gICAgPGF4LWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIj5cbiAgICAgIDxheC1pY29uXG4gICAgICAgIGNsYXNzPVwiZmEtcmVndWxhciBcIlxuICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgJ2ZhLWRlc2t0b3AnOnN0b3JlLmlzU3lzdGVtTW9kZSgpLFxuICAgICAgICAgICAgICAgICdmYS1tb29uJzohc3RvcmUuaXNTeXN0ZW1Nb2RlKCkgJiYgc3RvcmUuaXNEYXJrTW9kZSgpLFxuICAgICAgICAgICAgICAgICdmYS1icmlnaHRuZXNzJzohc3RvcmUuaXNTeXN0ZW1Nb2RlKCkgJiYgIXN0b3JlLmlzRGFya01vZGUoKSxcbiAgICAgICAgICAgIH1cIlxuICAgICAgPlxuICAgICAgPC9heC1pY29uPlxuICAgICAgPGF4LWRyb3Bkb3duLXBhbmVsICp0cmFuc2xhdGU9XCJsZXQgdFwiPlxuICAgICAgICA8YXgtYnV0dG9uLWl0ZW0tbGlzdD5cbiAgICAgICAgICA8YXgtYnV0dG9uLWl0ZW1cbiAgICAgICAgICAgIChvbkNsaWNrKT1cInN0b3JlLmNoYW5nZVRoZW1lTW9kZSh2YXJpYW50cy5MaWdodClcIlxuICAgICAgICAgICAgW3RleHRdPVwiKHQoJ3RoZW1lLW1vZGVzLmxpZ2h0Jyx7c2NvcGU6J2xheW91dCd9KSB8IGFzeW5jKSFcIlxuICAgICAgICAgICAgW3NlbGVjdGVkXT1cIiFzdG9yZS5pc1N5c3RlbU1vZGUoKSAmJiAhc3RvcmUuaXNEYXJrTW9kZSgpXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8YXgtcHJlZml4PlxuICAgICAgICAgICAgICA8YXgtaWNvbiBpY29uPVwiZmEtbGlnaHQgZmEtYnJpZ2h0bmVzc1wiPiA8L2F4LWljb24+XG4gICAgICAgICAgICA8L2F4LXByZWZpeD5cbiAgICAgICAgICA8L2F4LWJ1dHRvbi1pdGVtPlxuICAgICAgICAgIDxheC1idXR0b24taXRlbVxuICAgICAgICAgICAgKG9uQ2xpY2spPVwic3RvcmUuY2hhbmdlVGhlbWVNb2RlKHZhcmlhbnRzLkRhcmspXCJcbiAgICAgICAgICAgIFt0ZXh0XT1cIih0KCd0aGVtZS1tb2Rlcy5kYXJrJyx7c2NvcGU6J2xheW91dCd9KSB8IGFzeW5jKSFcIlxuICAgICAgICAgICAgW3NlbGVjdGVkXT1cIiFzdG9yZS5pc1N5c3RlbU1vZGUoKSAmJiBzdG9yZS5pc0RhcmtNb2RlKClcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxheC1wcmVmaXg+XG4gICAgICAgICAgICAgIDxheC1pY29uIGljb249XCJmYS1saWdodCBmYS1tb29uXCI+IDwvYXgtaWNvbj5cbiAgICAgICAgICAgIDwvYXgtcHJlZml4PlxuICAgICAgICAgIDwvYXgtYnV0dG9uLWl0ZW0+XG4gICAgICAgICAgPGF4LWJ1dHRvbi1pdGVtXG4gICAgICAgICAgICAob25DbGljayk9XCJzdG9yZS5jaGFuZ2VUaGVtZU1vZGUodmFyaWFudHMuU3lzdGVtKVwiXG4gICAgICAgICAgICBbdGV4dF09XCIodCgndGhlbWUtbW9kZXMuc3lzdGVtJyx7c2NvcGU6J2xheW91dCd9KSB8IGFzeW5jKSFcIlxuICAgICAgICAgICAgW3NlbGVjdGVkXT1cInN0b3JlLmlzU3lzdGVtTW9kZSgpXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8YXgtcHJlZml4PlxuICAgICAgICAgICAgICA8YXgtaWNvbiBpY29uPVwiZmEtbGlnaHQgZmEtZGVza3RvcFwiPiA8L2F4LWljb24+XG4gICAgICAgICAgICA8L2F4LXByZWZpeD5cbiAgICAgICAgICA8L2F4LWJ1dHRvbi1pdGVtPlxuICAgICAgICA8L2F4LWJ1dHRvbi1pdGVtLWxpc3Q+XG4gICAgICA8L2F4LWRyb3Bkb3duLXBhbmVsPlxuICAgIDwvYXgtYnV0dG9uPlxuICBgLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBBWEJ1dHRvbk1vZHVsZSwgQVhEZWNvcmF0b3JNb2R1bGUsIEFYRHJvcGRvd25Nb2R1bGUsIEFYVHJhbnNsYXRpb25Nb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIEFYUFRoZW1lU2xvdENvbXBvbmVudCB7XG4gIHByb3RlY3RlZCBzdG9yZSA9IGluamVjdChBWFBMYXlvdXRUaGVtZVNlcnZpY2UpO1xuXG4gIHByb3RlY3RlZCB2YXJpYW50cyA9IEFYUFRoZW1lTW9kZTtcbn1cbiJdfQ==","import { InjectionToken } from '@angular/core';\nexport const AXP_THEME_PALETTE_PROVIDER = new InjectionToken('AXP_THEME_PALETTE_PROVIDER', {\n providedIn: 'root',\n factory: async () => {\n return new AXPThemePaletteProviderDefault();\n },\n});\nexport class AXPThemePaletteProviderDefault {\n getList() {\n return Promise.resolve([\n {\n name: 'default',\n title: 'Default',\n path: '/assets/themes/palletes/default.css',\n colors: {\n primary: '#113b53',\n secondary: '#1a6ab1',\n neutral: '#606c76',\n success: '#2d9c67',\n warning: '#e9a01b',\n danger: '#c02f1d',\n accents: ['#d6a7a6', '#a0897e', '#8bf4d9'],\n dark: '#2a2d30',\n light: '#ffffff',\n },\n },\n ]);\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFsZXR0ZS5wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdGhlbWVzL3NoYXJlZC9zcmMvbGliL3BhbGV0dGUucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQU8vQyxNQUFNLENBQUMsTUFBTSwwQkFBMEIsR0FBRyxJQUFJLGNBQWMsQ0FBbUMsNEJBQTRCLEVBQUU7SUFDM0gsVUFBVSxFQUFFLE1BQU07SUFDbEIsT0FBTyxFQUFFLEtBQUssSUFBSSxFQUFFO1FBQ2xCLE9BQU8sSUFBSSw4QkFBOEIsRUFBRSxDQUFDO0lBQzlDLENBQUM7Q0FDRixDQUFDLENBQUM7QUFFSCxNQUFNLE9BQU8sOEJBQThCO0lBQ3pDLE9BQU87UUFDTCxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUM7WUFDckI7Z0JBQ0UsSUFBSSxFQUFFLFNBQVM7Z0JBQ2YsS0FBSyxFQUFFLFNBQVM7Z0JBQ2hCLElBQUksRUFBRSxxQ0FBcUM7Z0JBQzNDLE1BQU0sRUFBRTtvQkFDTixPQUFPLEVBQUUsU0FBUztvQkFDbEIsU0FBUyxFQUFFLFNBQVM7b0JBQ3BCLE9BQU8sRUFBRSxTQUFTO29CQUNsQixPQUFPLEVBQUUsU0FBUztvQkFDbEIsT0FBTyxFQUFFLFNBQVM7b0JBQ2xCLE1BQU0sRUFBRSxTQUFTO29CQUNqQixPQUFPLEVBQUUsQ0FBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsQ0FBQztvQkFDMUMsSUFBSSxFQUFFLFNBQVM7b0JBQ2YsS0FBSyxFQUFFLFNBQVM7aUJBQ2pCO2FBQ0Y7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhQVGhlbWVQYWxldHRlIH0gZnJvbSAnLi90aGVtZS50eXBlcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhQVGhlbWVQYWxldHRlUHJvdmlkZXIge1xuICBnZXRMaXN0KCk6IFByb21pc2U8QVhQVGhlbWVQYWxldHRlW10+O1xufVxuXG5leHBvcnQgY29uc3QgQVhQX1RIRU1FX1BBTEVUVEVfUFJPVklERVIgPSBuZXcgSW5qZWN0aW9uVG9rZW48UHJvbWlzZTxBWFBUaGVtZVBhbGV0dGVQcm92aWRlcj4+KCdBWFBfVEhFTUVfUEFMRVRURV9QUk9WSURFUicsIHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxuICBmYWN0b3J5OiBhc3luYyAoKSA9PiB7XG4gICAgcmV0dXJuIG5ldyBBWFBUaGVtZVBhbGV0dGVQcm92aWRlckRlZmF1bHQoKTtcbiAgfSxcbn0pO1xuXG5leHBvcnQgY2xhc3MgQVhQVGhlbWVQYWxldHRlUHJvdmlkZXJEZWZhdWx0IGltcGxlbWVudHMgQVhQVGhlbWVQYWxldHRlUHJvdmlkZXIge1xuICBnZXRMaXN0KCk6IFByb21pc2U8QVhQVGhlbWVQYWxldHRlW10+IHtcbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2RlZmF1bHQnLFxuICAgICAgICB0aXRsZTogJ0RlZmF1bHQnLFxuICAgICAgICBwYXRoOiAnL2Fzc2V0cy90aGVtZXMvcGFsbGV0ZXMvZGVmYXVsdC5jc3MnLFxuICAgICAgICBjb2xvcnM6IHtcbiAgICAgICAgICBwcmltYXJ5OiAnIzExM2I1MycsXG4gICAgICAgICAgc2Vjb25kYXJ5OiAnIzFhNmFiMScsXG4gICAgICAgICAgbmV1dHJhbDogJyM2MDZjNzYnLFxuICAgICAgICAgIHN1Y2Nlc3M6ICcjMmQ5YzY3JyxcbiAgICAgICAgICB3YXJuaW5nOiAnI2U5YTAxYicsXG4gICAgICAgICAgZGFuZ2VyOiAnI2MwMmYxZCcsXG4gICAgICAgICAgYWNjZW50czogWycjZDZhN2E2JywgJyNhMDg5N2UnLCAnIzhiZjRkOSddLFxuICAgICAgICAgIGRhcms6ICcjMmEyZDMwJyxcbiAgICAgICAgICBsaWdodDogJyNmZmZmZmYnLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICBdKTtcbiAgfVxufVxuIl19","import { AXSelectionCdkModule } from '@acorex/cdk/selection';\nimport { AXPValueWidgetComponent } from '@acorex/platform/layout/builder';\nimport { ChangeDetectionStrategy, Component, effect, inject, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXP_THEME_PALETTE_PROVIDER } from '../../palette.provider';\nimport * as i0 from \"@angular/core\";\nexport class AXPThemePaletteChooserWidgetComponent extends AXPValueWidgetComponent {\n constructor() {\n super(...arguments);\n this.paletteService = inject(AXP_THEME_PALETTE_PROVIDER);\n this.palettes = signal([]);\n this.selectedPalette = signal(null);\n this.#eff = effect(() => {\n if (this.getValue()) {\n this.selectedPalette.set(this.palettes().find((p) => p.name === this.getValue()) ??\n this.palettes().find((p) => p.name === 'default') ??\n this.palettes()[0]);\n }\n });\n }\n #eff;\n async ngOnInit() {\n super.ngOnInit();\n const palletsProviderInstance = await this.paletteService;\n this.palettes.set(await palletsProviderInstance.getList());\n }\n onPaletteClick(palette) {\n this.setValue(palette.name);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXPThemePaletteChooserWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.4\", type: AXPThemePaletteChooserWidgetComponent, isStandalone: true, selector: \"ng-component\", usesInheritance: true, ngImport: i0, template: `\n @for (palette of palettes(); track palette.name) {\n <div (click)=\"onPaletteClick(palette)\" [class.--selected]=\"palette.name === selectedPalette()?.name\">\n <span>{{ palette.title }}</span>\n <div>\n <div [style.background-color]=\"palette.colors.primary\" class=\"ax-end-7 ax-z-[2]\"></div>\n <div [style.background-color]=\"palette.colors.secondary\" class=\"ax-end-3.5 ax-z-[1]\"></div>\n <div [style.background-color]=\"palette.colors.accents[0]\" class=\"ax-end-0 ax-z-0\"></div>\n </div>\n </div>\n }\n `, isInline: true, styles: [\":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}:host>div{height:3rem;min-width:100%}@media (min-width: 768px){:host>div{min-width:16rem}}:host>div>div{position:relative;height:100%;width:fit-content}:host>div>div div{position:absolute;height:2rem;width:2rem;border-radius:9999px;border-width:1px;border-color:rgba(255,255,255,.5);--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}\\n\"], dependencies: [{ kind: \"ngmodule\", type: FormsModule }, { kind: \"ngmodule\", type: AXSelectionCdkModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXPThemePaletteChooserWidgetComponent, decorators: [{\n type: Component,\n args: [{ template: `\n @for (palette of palettes(); track palette.name) {\n <div (click)=\"onPaletteClick(palette)\" [class.--selected]=\"palette.name === selectedPalette()?.name\">\n <span>{{ palette.title }}</span>\n <div>\n <div [style.background-color]=\"palette.colors.primary\" class=\"ax-end-7 ax-z-[2]\"></div>\n <div [style.background-color]=\"palette.colors.secondary\" class=\"ax-end-3.5 ax-z-[1]\"></div>\n <div [style.background-color]=\"palette.colors.accents[0]\" class=\"ax-end-0 ax-z-0\"></div>\n </div>\n </div>\n }\n `, standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [FormsModule, AXSelectionCdkModule], styles: [\":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}:host>div{height:3rem;min-width:100%}@media (min-width: 768px){:host>div{min-width:16rem}}:host>div>div{position:relative;height:100%;width:fit-content}:host>div>div div{position:absolute;height:2rem;width:2rem;border-radius:9999px;border-width:1px;border-color:rgba(255,255,255,.5);--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtcGFsZXR0ZS1jaG9vc2VyLXdpZGdldC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9zaGFyZWQvc3JjL2xpYi93aWRnZXRzL3RoZW1lLXBhbGV0dGUtY2hvb3Nlci90aGVtZS1wYWxldHRlLWNob29zZXItd2lkZ2V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUUxRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7QUFxQnBFLE1BQU0sT0FBTyxxQ0FBc0MsU0FBUSx1QkFBK0I7SUFsQjFGOztRQW1CbUIsbUJBQWMsR0FBRyxNQUFNLENBQUMsMEJBQTBCLENBQUMsQ0FBQztRQUNsRCxhQUFRLEdBQUcsTUFBTSxDQUFvQixFQUFFLENBQUMsQ0FBQztRQUNsRCxvQkFBZSxHQUFHLE1BQU0sQ0FBeUIsSUFBSSxDQUFDLENBQUM7UUFFakUsU0FBSSxHQUFHLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDakIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQztnQkFDcEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQ3RCLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO29CQUNyRCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQztvQkFDakQsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUNyQixDQUFDO1lBQ0osQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0tBV0o7SUFuQkMsSUFBSSxDQVFEO0lBRU0sS0FBSyxDQUFDLFFBQVE7UUFDckIsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLE1BQU0sdUJBQXVCLEdBQUcsTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDO1FBQzFELElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLE1BQU0sdUJBQXVCLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRVMsY0FBYyxDQUFDLE9BQXdCO1FBQy9DLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzlCLENBQUM7OEdBdkJVLHFDQUFxQztrR0FBckMscUNBQXFDLCtGQWpCdEM7Ozs7Ozs7Ozs7O0dBV1QsazNEQUlTLFdBQVcsOEJBQUUsb0JBQW9COzsyRkFFaEMscUNBQXFDO2tCQWxCakQsU0FBUzsrQkFDRTs7Ozs7Ozs7Ozs7R0FXVCxjQUVXLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxXQUN0QyxDQUFDLFdBQVcsRUFBRSxvQkFBb0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYU2VsZWN0aW9uQ2RrTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jZGsvc2VsZWN0aW9uJztcbmltcG9ydCB7IEFYUFZhbHVlV2lkZ2V0Q29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5cbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGVmZmVjdCwgaW5qZWN0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQVhQX1RIRU1FX1BBTEVUVEVfUFJPVklERVIgfSBmcm9tICcuLi8uLi9wYWxldHRlLnByb3ZpZGVyJztcbmltcG9ydCB7IEFYUFRoZW1lUGFsZXR0ZSB9IGZyb20gJy4uLy4uL3RoZW1lLnR5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiBgXG4gICAgQGZvciAocGFsZXR0ZSBvZiBwYWxldHRlcygpOyB0cmFjayBwYWxldHRlLm5hbWUpIHtcbiAgICAgIDxkaXYgKGNsaWNrKT1cIm9uUGFsZXR0ZUNsaWNrKHBhbGV0dGUpXCIgW2NsYXNzLi0tc2VsZWN0ZWRdPVwicGFsZXR0ZS5uYW1lID09PSBzZWxlY3RlZFBhbGV0dGUoKT8ubmFtZVwiPlxuICAgICAgICA8c3Bhbj57eyBwYWxldHRlLnRpdGxlIH19PC9zcGFuPlxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIDxkaXYgW3N0eWxlLmJhY2tncm91bmQtY29sb3JdPVwicGFsZXR0ZS5jb2xvcnMucHJpbWFyeVwiIGNsYXNzPVwiYXgtZW5kLTcgYXgtei1bMl1cIj48L2Rpdj5cbiAgICAgICAgICA8ZGl2IFtzdHlsZS5iYWNrZ3JvdW5kLWNvbG9yXT1cInBhbGV0dGUuY29sb3JzLnNlY29uZGFyeVwiIGNsYXNzPVwiYXgtZW5kLTMuNSBheC16LVsxXVwiPjwvZGl2PlxuICAgICAgICAgIDxkaXYgW3N0eWxlLmJhY2tncm91bmQtY29sb3JdPVwicGFsZXR0ZS5jb2xvcnMuYWNjZW50c1swXVwiIGNsYXNzPVwiYXgtZW5kLTAgYXgtei0wXCI+PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgfVxuICBgLFxuICBzdHlsZVVybDogJy4vdGhlbWUtcGFsZXR0ZS1jaG9vc2VyLXdpZGdldC5zY3NzJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtGb3Jtc01vZHVsZSwgQVhTZWxlY3Rpb25DZGtNb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBBWFBUaGVtZVBhbGV0dGVDaG9vc2VyV2lkZ2V0Q29tcG9uZW50IGV4dGVuZHMgQVhQVmFsdWVXaWRnZXRDb21wb25lbnQ8c3RyaW5nPiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgcGFsZXR0ZVNlcnZpY2UgPSBpbmplY3QoQVhQX1RIRU1FX1BBTEVUVEVfUFJPVklERVIpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgcGFsZXR0ZXMgPSBzaWduYWw8QVhQVGhlbWVQYWxldHRlW10+KFtdKTtcbiAgcHJvdGVjdGVkIHNlbGVjdGVkUGFsZXR0ZSA9IHNpZ25hbDxBWFBUaGVtZVBhbGV0dGUgfCBudWxsPihudWxsKTtcblxuICAjZWZmID0gZWZmZWN0KCgpID0+IHtcbiAgICBpZiAodGhpcy5nZXRWYWx1ZSgpKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkUGFsZXR0ZS5zZXQoXG4gICAgICAgIHRoaXMucGFsZXR0ZXMoKS5maW5kKChwKSA9PiBwLm5hbWUgPT09IHRoaXMuZ2V0VmFsdWUoKSkgPz9cbiAgICAgICAgICB0aGlzLnBhbGV0dGVzKCkuZmluZCgocCkgPT4gcC5uYW1lID09PSAnZGVmYXVsdCcpID8/XG4gICAgICAgICAgdGhpcy5wYWxldHRlcygpWzBdLFxuICAgICAgKTtcbiAgICB9XG4gIH0pO1xuXG4gIG92ZXJyaWRlIGFzeW5jIG5nT25Jbml0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgY29uc3QgcGFsbGV0c1Byb3ZpZGVySW5zdGFuY2UgPSBhd2FpdCB0aGlzLnBhbGV0dGVTZXJ2aWNlO1xuICAgIHRoaXMucGFsZXR0ZXMuc2V0KGF3YWl0IHBhbGxldHNQcm92aWRlckluc3RhbmNlLmdldExpc3QoKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb25QYWxldHRlQ2xpY2socGFsZXR0ZTogQVhQVGhlbWVQYWxldHRlKSB7XG4gICAgdGhpcy5zZXRWYWx1ZShwYWxldHRlLm5hbWUpO1xuICB9XG59XG4iXX0=","import { AXP_WIDGETS_LAYOUT_CATEGORY } from '@acorex/platform/layout/builder';\nimport { AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DISABLED_PROPERTY } from '@acorex/platform/widgets';\nexport const AXPThemePaletteChooserWidget = {\n name: \"theme-palette-chooser\",\n title: \"Theme Palette Chooser\",\n icon: \"fa-solid fa-square\",\n type: 'editor',\n categories: AXP_WIDGETS_LAYOUT_CATEGORY,\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n ],\n components: {\n edit: {\n component: () => import('./theme-palette-chooser-widget.component').then((c) => c.AXPThemePaletteChooserWidgetComponent),\n },\n }\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtcGFsZXR0ZS1jaG9vc2VyLXdpZGdldC5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9zaGFyZWQvc3JjL2xpYi93aWRnZXRzL3RoZW1lLXBhbGV0dGUtY2hvb3Nlci90aGVtZS1wYWxldHRlLWNob29zZXItd2lkZ2V0LmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsMkJBQTJCLEVBQW1CLE1BQU0saUNBQWlDLENBQUM7QUFDL0YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLHNCQUFzQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFNUcsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQW9CO0lBQzNELElBQUksRUFBRSx1QkFBdUI7SUFDN0IsS0FBSyxFQUFFLHVCQUF1QjtJQUM5QixJQUFJLEVBQUUsb0JBQW9CO0lBQzFCLElBQUksRUFBRSxRQUFRO0lBQ2QsVUFBVSxFQUFFLDJCQUEyQjtJQUN2QyxVQUFVLEVBQUU7UUFDVixpQkFBaUI7UUFDakIsc0JBQXNCO1FBQ3RCLHFCQUFxQjtLQUN0QjtJQUNELFVBQVUsRUFBRTtRQUNWLElBQUksRUFBRTtZQUNKLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsMENBQTBDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxxQ0FBcUMsQ0FBQztTQUN6SDtLQUNGO0NBQ0YsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUF9XSURHRVRTX0xBWU9VVF9DQVRFR09SWSwgQVhQV2lkZ2V0Q29uZmlnIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBBWFBfTkFNRV9QUk9QRVJUWSwgQVhQX0RBVEFfUEFUSF9QUk9QRVJUWSwgQVhQX0RJU0FCTEVEX1BST1BFUlRZIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS93aWRnZXRzJztcblxuZXhwb3J0IGNvbnN0IEFYUFRoZW1lUGFsZXR0ZUNob29zZXJXaWRnZXQ6IEFYUFdpZGdldENvbmZpZyA9IHtcbiAgbmFtZTogXCJ0aGVtZS1wYWxldHRlLWNob29zZXJcIixcbiAgdGl0bGU6IFwiVGhlbWUgUGFsZXR0ZSBDaG9vc2VyXCIsXG4gIGljb246IFwiZmEtc29saWQgZmEtc3F1YXJlXCIsXG4gIHR5cGU6ICdlZGl0b3InLFxuICBjYXRlZ29yaWVzOiBBWFBfV0lER0VUU19MQVlPVVRfQ0FURUdPUlksXG4gIHByb3BlcnRpZXM6IFtcbiAgICBBWFBfTkFNRV9QUk9QRVJUWSxcbiAgICBBWFBfREFUQV9QQVRIX1BST1BFUlRZLFxuICAgIEFYUF9ESVNBQkxFRF9QUk9QRVJUWSxcbiAgXSxcbiAgY29tcG9uZW50czoge1xuICAgIGVkaXQ6IHtcbiAgICAgIGNvbXBvbmVudDogKCkgPT4gaW1wb3J0KCcuL3RoZW1lLXBhbGV0dGUtY2hvb3Nlci13aWRnZXQuY29tcG9uZW50JykudGhlbigoYykgPT4gYy5BWFBUaGVtZVBhbGV0dGVDaG9vc2VyV2lkZ2V0Q29tcG9uZW50KSxcbiAgICB9LFxuICB9XG59XG5cbmRlY2xhcmUgbW9kdWxlICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJyB7XG4gIGludGVyZmFjZSBBWFBXaWRnZXRUeXBlc01hcCB7XG4gICAgdGhlbWVQYWxldHRlQ2hvb3NlcjogJ3RoZW1lLXBhbGV0dGUtY2hvb3Nlcic7XG4gIH1cbn0iXX0=","import { AXSelectionCdkModule } from '@acorex/cdk/selection';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPValueWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, effect, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXPThemeMode } from '../../theme.types';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/common\";\nimport * as i2 from \"@acorex/core/translation\";\nexport class AXPThemeModeChooserWidgetComponent extends AXPValueWidgetComponent {\n constructor() {\n super(...arguments);\n this.modes = signal([\n { id: AXPThemeMode.Light, icon: 'fa-light fa-brightness' },\n { id: AXPThemeMode.Dark, icon: 'fa-light fa-moon' },\n { id: AXPThemeMode.System, icon: 'fa-light fa-desktop' },\n ]);\n this.selectedMode = signal(null);\n this.#eff = effect(() => {\n if (this.getValue()) {\n this.selectedMode.set(this.modes().find((m) => m.id === this.getValue()) ?? this.modes()[0]);\n }\n });\n }\n #eff;\n onModeClick(mode) {\n this.setValue(mode.id);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXPThemeModeChooserWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.4\", type: AXPThemeModeChooserWidgetComponent, isStandalone: true, selector: \"ng-component\", usesInheritance: true, ngImport: i0, template: `\n @for (mode of modes(); track mode.id) {\n <div (click)=\"onModeClick(mode)\" [class.--selected]=\"mode.id === selectedMode()?.id\">\n <div>\n <i [class]=\"mode.icon\"></i>\n </div>\n <span>{{ 'theme-modes.' + mode.id | translate: { scope: 'layout' } | async }}</span>\n </div>\n }\n `, isInline: true, styles: [\":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}:host>div{padding-top:.25rem!important;padding-bottom:.25rem!important}\\n\"], dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"pipe\", type: i1.AsyncPipe, name: \"async\" }, { kind: \"ngmodule\", type: FormsModule }, { kind: \"ngmodule\", type: AXSelectionCdkModule }, { kind: \"ngmodule\", type: AXTranslationModule }, { kind: \"pipe\", type: i2.AXTranslatorPipe, name: \"translate\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXPThemeModeChooserWidgetComponent, decorators: [{\n type: Component,\n args: [{ template: `\n @for (mode of modes(); track mode.id) {\n <div (click)=\"onModeClick(mode)\" [class.--selected]=\"mode.id === selectedMode()?.id\">\n <div>\n <i [class]=\"mode.icon\"></i>\n </div>\n <span>{{ 'theme-modes.' + mode.id | translate: { scope: 'layout' } | async }}</span>\n </div>\n }\n `, standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, FormsModule, AXSelectionCdkModule, AXTranslationModule], styles: [\":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}:host>div{padding-top:.25rem!important;padding-bottom:.25rem!important}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtbW9kZS1jaG9vc2VyLXdpZGdldC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9zaGFyZWQvc3JjL2xpYi93aWRnZXRzL3RoZW1lLW1vZGUtY2hvb3Nlci90aGVtZS1tb2RlLWNob29zZXItd2lkZ2V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25GLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7QUF1QmpELE1BQU0sT0FBTyxrQ0FBbUMsU0FBUSx1QkFBK0I7SUFoQnZGOztRQWlCcUIsVUFBSyxHQUFHLE1BQU0sQ0FBb0I7WUFDbkQsRUFBRSxFQUFFLEVBQUUsWUFBWSxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsd0JBQXdCLEVBQUU7WUFDMUQsRUFBRSxFQUFFLEVBQUUsWUFBWSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsa0JBQWtCLEVBQUU7WUFDbkQsRUFBRSxFQUFFLEVBQUUsWUFBWSxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUscUJBQXFCLEVBQUU7U0FDekQsQ0FBQyxDQUFDO1FBRU8saUJBQVksR0FBRyxNQUFNLENBQXlCLElBQUksQ0FBQyxDQUFDO1FBRTlELFNBQUksR0FBRyxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQ2pCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUM7Z0JBQ3BCLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDL0YsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0tBS0o7SUFUQyxJQUFJLENBSUQ7SUFFTyxXQUFXLENBQUMsSUFBcUI7UUFDekMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDekIsQ0FBQzs4R0FqQlUsa0NBQWtDO2tHQUFsQyxrQ0FBa0MsK0ZBZm5DOzs7Ozs7Ozs7R0FTVCx1OUNBSVMsWUFBWSxtRkFBRSxXQUFXLDhCQUFFLG9CQUFvQiw4QkFBRSxtQkFBbUI7OzJGQUVuRSxrQ0FBa0M7a0JBaEI5QyxTQUFTOytCQUNFOzs7Ozs7Ozs7R0FTVCxjQUVXLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxXQUN0QyxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsb0JBQW9CLEVBQUUsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFNlbGVjdGlvbkNka01vZHVsZSB9IGZyb20gJ0BhY29yZXgvY2RrL3NlbGVjdGlvbic7XG5pbXBvcnQgeyBBWFRyYW5zbGF0aW9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlL3RyYW5zbGF0aW9uJztcbmltcG9ydCB7IEFYUFZhbHVlV2lkZ2V0Q29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgZWZmZWN0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQVhQVGhlbWVNb2RlIH0gZnJvbSAnLi4vLi4vdGhlbWUudHlwZXMnO1xuXG5pbnRlcmZhY2UgVGhlbWVNb2RlT3B0aW9uIHtcbiAgaWQ6IEFYUFRoZW1lTW9kZTtcbiAgaWNvbjogc3RyaW5nO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6IGBcbiAgICBAZm9yIChtb2RlIG9mIG1vZGVzKCk7IHRyYWNrIG1vZGUuaWQpIHtcbiAgICAgIDxkaXYgKGNsaWNrKT1cIm9uTW9kZUNsaWNrKG1vZGUpXCIgW2NsYXNzLi0tc2VsZWN0ZWRdPVwibW9kZS5pZCA9PT0gc2VsZWN0ZWRNb2RlKCk/LmlkXCI+XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAgPGkgW2NsYXNzXT1cIm1vZGUuaWNvblwiPjwvaT5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxzcGFuPnt7ICd0aGVtZS1tb2Rlcy4nICsgbW9kZS5pZCB8IHRyYW5zbGF0ZTogeyBzY29wZTogJ2xheW91dCcgfSB8IGFzeW5jIH19PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgfVxuICBgLFxuICBzdHlsZVVybDogJy4vdGhlbWUtbW9kZS1jaG9vc2VyLXdpZGdldC5zY3NzJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEZvcm1zTW9kdWxlLCBBWFNlbGVjdGlvbkNka01vZHVsZSwgQVhUcmFuc2xhdGlvbk1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIEFYUFRoZW1lTW9kZUNob29zZXJXaWRnZXRDb21wb25lbnQgZXh0ZW5kcyBBWFBWYWx1ZVdpZGdldENvbXBvbmVudDxzdHJpbmc+IHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IG1vZGVzID0gc2lnbmFsPFRoZW1lTW9kZU9wdGlvbltdPihbXG4gICAgeyBpZDogQVhQVGhlbWVNb2RlLkxpZ2h0LCBpY29uOiAnZmEtbGlnaHQgZmEtYnJpZ2h0bmVzcycgfSxcbiAgICB7IGlkOiBBWFBUaGVtZU1vZGUuRGFyaywgaWNvbjogJ2ZhLWxpZ2h0IGZhLW1vb24nIH0sXG4gICAgeyBpZDogQVhQVGhlbWVNb2RlLlN5c3RlbSwgaWNvbjogJ2ZhLWxpZ2h0IGZhLWRlc2t0b3AnIH0sXG4gIF0pO1xuXG4gIHByb3RlY3RlZCBzZWxlY3RlZE1vZGUgPSBzaWduYWw8VGhlbWVNb2RlT3B0aW9uIHwgbnVsbD4obnVsbCk7XG5cbiAgI2VmZiA9IGVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHRoaXMuZ2V0VmFsdWUoKSkge1xuICAgICAgdGhpcy5zZWxlY3RlZE1vZGUuc2V0KHRoaXMubW9kZXMoKS5maW5kKChtKSA9PiBtLmlkID09PSB0aGlzLmdldFZhbHVlKCkpID8/IHRoaXMubW9kZXMoKVswXSk7XG4gICAgfVxuICB9KTtcblxuICBwcm90ZWN0ZWQgb25Nb2RlQ2xpY2sobW9kZTogVGhlbWVNb2RlT3B0aW9uKSB7XG4gICAgdGhpcy5zZXRWYWx1ZShtb2RlLmlkKTtcbiAgfVxufVxuIl19","import { AXP_WIDGETS_LAYOUT_CATEGORY } from '@acorex/platform/layout/builder';\nimport { AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DISABLED_PROPERTY } from '@acorex/platform/widgets';\nexport const AXPThemeModeChooserWidget = {\n name: \"theme-mode-chooser\",\n title: \"Theme Mode Chooser\",\n icon: \"fa-solid fa-square\",\n type: 'editor',\n categories: AXP_WIDGETS_LAYOUT_CATEGORY,\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n ],\n components: {\n edit: {\n component: () => import('./theme-mode-chooser-widget.component').then((c) => c.AXPThemeModeChooserWidgetComponent),\n },\n }\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtbW9kZS1jaG9vc2VyLXdpZGdldC5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9zaGFyZWQvc3JjL2xpYi93aWRnZXRzL3RoZW1lLW1vZGUtY2hvb3Nlci90aGVtZS1tb2RlLWNob29zZXItd2lkZ2V0LmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsMkJBQTJCLEVBQW1CLE1BQU0saUNBQWlDLENBQUM7QUFDL0YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLHNCQUFzQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFNUcsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQW9CO0lBQ3hELElBQUksRUFBRSxvQkFBb0I7SUFDMUIsS0FBSyxFQUFFLG9CQUFvQjtJQUMzQixJQUFJLEVBQUUsb0JBQW9CO0lBQzFCLElBQUksRUFBRSxRQUFRO0lBQ2QsVUFBVSxFQUFFLDJCQUEyQjtJQUN2QyxVQUFVLEVBQUU7UUFDVixpQkFBaUI7UUFDakIsc0JBQXNCO1FBQ3RCLHFCQUFxQjtLQUN0QjtJQUNELFVBQVUsRUFBRTtRQUNWLElBQUksRUFBRTtZQUNKLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsdUNBQXVDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxrQ0FBa0MsQ0FBQztTQUNuSDtLQUNGO0NBQ0YsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUF9XSURHRVRTX0xBWU9VVF9DQVRFR09SWSwgQVhQV2lkZ2V0Q29uZmlnIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBBWFBfTkFNRV9QUk9QRVJUWSwgQVhQX0RBVEFfUEFUSF9QUk9QRVJUWSwgQVhQX0RJU0FCTEVEX1BST1BFUlRZIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS93aWRnZXRzJztcblxuZXhwb3J0IGNvbnN0IEFYUFRoZW1lTW9kZUNob29zZXJXaWRnZXQ6IEFYUFdpZGdldENvbmZpZyA9IHtcbiAgbmFtZTogXCJ0aGVtZS1tb2RlLWNob29zZXJcIixcbiAgdGl0bGU6IFwiVGhlbWUgTW9kZSBDaG9vc2VyXCIsXG4gIGljb246IFwiZmEtc29saWQgZmEtc3F1YXJlXCIsXG4gIHR5cGU6ICdlZGl0b3InLFxuICBjYXRlZ29yaWVzOiBBWFBfV0lER0VUU19MQVlPVVRfQ0FURUdPUlksXG4gIHByb3BlcnRpZXM6IFtcbiAgICBBWFBfTkFNRV9QUk9QRVJUWSxcbiAgICBBWFBfREFUQV9QQVRIX1BST1BFUlRZLFxuICAgIEFYUF9ESVNBQkxFRF9QUk9QRVJUWSxcbiAgXSxcbiAgY29tcG9uZW50czoge1xuICAgIGVkaXQ6IHtcbiAgICAgIGNvbXBvbmVudDogKCkgPT4gaW1wb3J0KCcuL3RoZW1lLW1vZGUtY2hvb3Nlci13aWRnZXQuY29tcG9uZW50JykudGhlbigoYykgPT4gYy5BWFBUaGVtZU1vZGVDaG9vc2VyV2lkZ2V0Q29tcG9uZW50KSxcbiAgICB9LFxuICB9XG59XG5cbmRlY2xhcmUgbW9kdWxlICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJyB7XG4gIGludGVyZmFjZSBBWFBXaWRnZXRUeXBlc01hcCB7XG4gICAgdGhlbWVNb2RlQ2hvb3NlcjogJ3RoZW1lLW1vZGUtY2hvb3Nlcic7XG4gIH1cbn0iXX0=","import { AXSelectionCdkModule } from '@acorex/cdk/selection';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPValueWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, effect, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/common\";\nimport * as i2 from \"@acorex/core/translation\";\nexport class AXPMenuOrientationChooserWidgetComponent extends AXPValueWidgetComponent {\n constructor() {\n super(...arguments);\n this.orientations = signal([\n { id: 'vertical', icon: 'fa-regular fa-square-ellipsis-vertical' },\n { id: 'horizontal', icon: 'fa-regular fa-square-ellipsis' },\n ]);\n this.selectedOrientation = signal(null);\n this.#eff = effect(() => {\n if (this.getValue()) {\n this.selectedOrientation.set(this.orientations().find((o) => o.id === this.getValue()) ?? this.orientations()[0]);\n }\n });\n }\n #eff;\n onOrientationClick(orientation) {\n this.setValue(orientation.id);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXPMenuOrientationChooserWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.4\", type: AXPMenuOrientationChooserWidgetComponent, isStandalone: true, selector: \"ng-component\", usesInheritance: true, ngImport: i0, template: `\n @for (orientation of orientations(); track orientation.id) {\n <div (click)=\"onOrientationClick(orientation)\" [class.--selected]=\"orientation.id === selectedOrientation()?.id\">\n <div>\n <i [class]=\"orientation.icon\"></i>\n </div>\n <span>{{ 'menu-modes.' + orientation.id | translate: { scope: 'layout' } | async }}</span>\n </div>\n }\n `, isInline: true, styles: [\":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}:host>div{padding-top:.25rem!important;padding-bottom:.25rem!important}\\n\"], dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"pipe\", type: i1.AsyncPipe, name: \"async\" }, { kind: \"ngmodule\", type: FormsModule }, { kind: \"ngmodule\", type: AXSelectionCdkModule }, { kind: \"ngmodule\", type: AXTranslationModule }, { kind: \"pipe\", type: i2.AXTranslatorPipe, name: \"translate\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXPMenuOrientationChooserWidgetComponent, decorators: [{\n type: Component,\n args: [{ template: `\n @for (orientation of orientations(); track orientation.id) {\n <div (click)=\"onOrientationClick(orientation)\" [class.--selected]=\"orientation.id === selectedOrientation()?.id\">\n <div>\n <i [class]=\"orientation.icon\"></i>\n </div>\n <span>{{ 'menu-modes.' + orientation.id | translate: { scope: 'layout' } | async }}</span>\n </div>\n }\n `, standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, FormsModule, AXSelectionCdkModule, AXTranslationModule], styles: [\":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}:host>div{padding-top:.25rem!important;padding-bottom:.25rem!important}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1vcmllbnRhdGlvbi1jaG9vc2VyLXdpZGdldC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9zaGFyZWQvc3JjL2xpYi93aWRnZXRzL21lbnUtb3JpZW50YXRpb24tY2hvb3Nlci9tZW51LW9yaWVudGF0aW9uLWNob29zZXItd2lkZ2V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25GLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQXVCN0MsTUFBTSxPQUFPLHdDQUF5QyxTQUFRLHVCQUErQjtJQWhCN0Y7O1FBaUJxQixpQkFBWSxHQUFHLE1BQU0sQ0FBMEI7WUFDaEUsRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSx3Q0FBd0MsRUFBRTtZQUNsRSxFQUFFLEVBQUUsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLCtCQUErQixFQUFFO1NBQzVELENBQUMsQ0FBQztRQUVPLHdCQUFtQixHQUFHLE1BQU0sQ0FBK0IsSUFBSSxDQUFDLENBQUM7UUFFM0UsU0FBSSxHQUFHLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDakIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQztnQkFDcEIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3BILENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztLQUtKO0lBVEMsSUFBSSxDQUlEO0lBRU8sa0JBQWtCLENBQUMsV0FBa0M7UUFDN0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDaEMsQ0FBQzs4R0FoQlUsd0NBQXdDO2tHQUF4Qyx3Q0FBd0MsK0ZBZnpDOzs7Ozs7Ozs7R0FTVCx1OUNBSVMsWUFBWSxtRkFBRSxXQUFXLDhCQUFFLG9CQUFvQiw4QkFBRSxtQkFBbUI7OzJGQUVuRSx3Q0FBd0M7a0JBaEJwRCxTQUFTOytCQUNFOzs7Ozs7Ozs7R0FTVCxjQUVXLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxXQUN0QyxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsb0JBQW9CLEVBQUUsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFNlbGVjdGlvbkNka01vZHVsZSB9IGZyb20gJ0BhY29yZXgvY2RrL3NlbGVjdGlvbic7XG5pbXBvcnQgeyBBWFRyYW5zbGF0aW9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlL3RyYW5zbGF0aW9uJztcbmltcG9ydCB7IEFYUFZhbHVlV2lkZ2V0Q29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgZWZmZWN0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbnRlcmZhY2UgTWVudU9yaWVudGF0aW9uT3B0aW9uIHtcbiAgaWQ6IHN0cmluZztcbiAgaWNvbjogc3RyaW5nO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6IGBcbiAgICBAZm9yIChvcmllbnRhdGlvbiBvZiBvcmllbnRhdGlvbnMoKTsgdHJhY2sgb3JpZW50YXRpb24uaWQpIHtcbiAgICAgIDxkaXYgKGNsaWNrKT1cIm9uT3JpZW50YXRpb25DbGljayhvcmllbnRhdGlvbilcIiBbY2xhc3MuLS1zZWxlY3RlZF09XCJvcmllbnRhdGlvbi5pZCA9PT0gc2VsZWN0ZWRPcmllbnRhdGlvbigpPy5pZFwiPlxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIDxpIFtjbGFzc109XCJvcmllbnRhdGlvbi5pY29uXCI+PC9pPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPHNwYW4+e3sgJ21lbnUtbW9kZXMuJyArIG9yaWVudGF0aW9uLmlkIHwgdHJhbnNsYXRlOiB7IHNjb3BlOiAnbGF5b3V0JyB9IHwgYXN5bmMgfX08L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICB9XG4gIGAsXG4gIHN0eWxlVXJsOiAnLi9tZW51LW9yaWVudGF0aW9uLWNob29zZXItd2lkZ2V0LnNjc3MnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRm9ybXNNb2R1bGUsIEFYU2VsZWN0aW9uQ2RrTW9kdWxlLCBBWFRyYW5zbGF0aW9uTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQTWVudU9yaWVudGF0aW9uQ2hvb3NlcldpZGdldENvbXBvbmVudCBleHRlbmRzIEFYUFZhbHVlV2lkZ2V0Q29tcG9uZW50PHN0cmluZz4ge1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgb3JpZW50YXRpb25zID0gc2lnbmFsPE1lbnVPcmllbnRhdGlvbk9wdGlvbltdPihbXG4gICAgeyBpZDogJ3ZlcnRpY2FsJywgaWNvbjogJ2ZhLXJlZ3VsYXIgZmEtc3F1YXJlLWVsbGlwc2lzLXZlcnRpY2FsJyB9LFxuICAgIHsgaWQ6ICdob3Jpem9udGFsJywgaWNvbjogJ2ZhLXJlZ3VsYXIgZmEtc3F1YXJlLWVsbGlwc2lzJyB9LFxuICBdKTtcblxuICBwcm90ZWN0ZWQgc2VsZWN0ZWRPcmllbnRhdGlvbiA9IHNpZ25hbDxNZW51T3JpZW50YXRpb25PcHRpb24gfCBudWxsPihudWxsKTtcblxuICAjZWZmID0gZWZmZWN0KCgpID0+IHtcbiAgICBpZiAodGhpcy5nZXRWYWx1ZSgpKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkT3JpZW50YXRpb24uc2V0KHRoaXMub3JpZW50YXRpb25zKCkuZmluZCgobykgPT4gby5pZCA9PT0gdGhpcy5nZXRWYWx1ZSgpKSA/PyB0aGlzLm9yaWVudGF0aW9ucygpWzBdKTtcbiAgICB9XG4gIH0pO1xuXG4gIHByb3RlY3RlZCBvbk9yaWVudGF0aW9uQ2xpY2sob3JpZW50YXRpb246IE1lbnVPcmllbnRhdGlvbk9wdGlvbikge1xuICAgIHRoaXMuc2V0VmFsdWUob3JpZW50YXRpb24uaWQpO1xuICB9XG59XG4iXX0=","import { AXP_WIDGETS_LAYOUT_CATEGORY } from '@acorex/platform/layout/builder';\nimport { AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DISABLED_PROPERTY } from '@acorex/platform/widgets';\nexport const AXPMenuOrientationChooserWidget = {\n name: \"menu-orientation-chooser\",\n title: \"Menu Orientation Chooser\",\n icon: \"fa-light fa-bars-staggered\",\n type: 'editor',\n categories: AXP_WIDGETS_LAYOUT_CATEGORY,\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n ],\n components: {\n edit: {\n component: () => import('./menu-orientation-chooser-widget.component').then((c) => c.AXPMenuOrientationChooserWidgetComponent),\n },\n }\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1vcmllbnRhdGlvbi1jaG9vc2VyLXdpZGdldC5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9zaGFyZWQvc3JjL2xpYi93aWRnZXRzL21lbnUtb3JpZW50YXRpb24tY2hvb3Nlci9tZW51LW9yaWVudGF0aW9uLWNob29zZXItd2lkZ2V0LmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsMkJBQTJCLEVBQW1CLE1BQU0saUNBQWlDLENBQUM7QUFDL0YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLHNCQUFzQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFNUcsTUFBTSxDQUFDLE1BQU0sK0JBQStCLEdBQW9CO0lBQzVELElBQUksRUFBRSwwQkFBMEI7SUFDaEMsS0FBSyxFQUFFLDBCQUEwQjtJQUNqQyxJQUFJLEVBQUUsNEJBQTRCO0lBQ2xDLElBQUksRUFBRSxRQUFRO0lBQ2QsVUFBVSxFQUFFLDJCQUEyQjtJQUN2QyxVQUFVLEVBQUU7UUFDUixpQkFBaUI7UUFDakIsc0JBQXNCO1FBQ3RCLHFCQUFxQjtLQUN4QjtJQUNELFVBQVUsRUFBRTtRQUNSLElBQUksRUFBRTtZQUNGLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsNkNBQTZDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyx3Q0FBd0MsQ0FBQztTQUNqSTtLQUNKO0NBQ0osQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUF9XSURHRVRTX0xBWU9VVF9DQVRFR09SWSwgQVhQV2lkZ2V0Q29uZmlnIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBBWFBfTkFNRV9QUk9QRVJUWSwgQVhQX0RBVEFfUEFUSF9QUk9QRVJUWSwgQVhQX0RJU0FCTEVEX1BST1BFUlRZIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS93aWRnZXRzJztcblxuZXhwb3J0IGNvbnN0IEFYUE1lbnVPcmllbnRhdGlvbkNob29zZXJXaWRnZXQ6IEFYUFdpZGdldENvbmZpZyA9IHtcbiAgICBuYW1lOiBcIm1lbnUtb3JpZW50YXRpb24tY2hvb3NlclwiLFxuICAgIHRpdGxlOiBcIk1lbnUgT3JpZW50YXRpb24gQ2hvb3NlclwiLFxuICAgIGljb246IFwiZmEtbGlnaHQgZmEtYmFycy1zdGFnZ2VyZWRcIixcbiAgICB0eXBlOiAnZWRpdG9yJyxcbiAgICBjYXRlZ29yaWVzOiBBWFBfV0lER0VUU19MQVlPVVRfQ0FURUdPUlksXG4gICAgcHJvcGVydGllczogW1xuICAgICAgICBBWFBfTkFNRV9QUk9QRVJUWSxcbiAgICAgICAgQVhQX0RBVEFfUEFUSF9QUk9QRVJUWSxcbiAgICAgICAgQVhQX0RJU0FCTEVEX1BST1BFUlRZLFxuICAgIF0sXG4gICAgY29tcG9uZW50czoge1xuICAgICAgICBlZGl0OiB7XG4gICAgICAgICAgICBjb21wb25lbnQ6ICgpID0+IGltcG9ydCgnLi9tZW51LW9yaWVudGF0aW9uLWNob29zZXItd2lkZ2V0LmNvbXBvbmVudCcpLnRoZW4oKGMpID0+IGMuQVhQTWVudU9yaWVudGF0aW9uQ2hvb3NlcldpZGdldENvbXBvbmVudCksXG4gICAgICAgIH0sXG4gICAgfVxufVxuXG5kZWNsYXJlIG1vZHVsZSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcicge1xuICAgIGludGVyZmFjZSBBWFBXaWRnZXRUeXBlc01hcCB7XG4gICAgICAgIG1lbnVPcmllbnRhdGlvbkNob29zZXI6ICdtZW51LW9yaWVudGF0aW9uLWNob29zZXInO1xuICAgIH1cbn0gIl19","import { AXSelectionCdkModule } from '@acorex/cdk/selection';\nimport { AXPValueWidgetComponent } from '@acorex/platform/layout/builder';\nimport { ChangeDetectionStrategy, Component, effect, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport * as i0 from \"@angular/core\";\nexport class AXPFontStyleChooserWidgetComponent extends AXPValueWidgetComponent {\n constructor() {\n super(...arguments);\n this.fonts = signal([\n { id: 'system-ui', title: 'Default' },\n { id: 'serif', title: 'Serif' },\n { id: 'sans-serif', title: 'Sans-serif' },\n { id: 'monospace', title: 'Monospace' },\n { id: 'arial', title: 'Arial' },\n { id: 'verdana', title: 'Verdana' },\n { id: 'tahoma', title: 'Tahoma' },\n { id: 'times-new-roman', title: 'Times New Roman' },\n { id: 'georgia', title: 'Georgia' },\n { id: 'helvetica', title: 'Helvetica' },\n { id: 'calibri', title: 'Calibri' },\n { id: 'cursive', title: 'Cursive' },\n { id: 'vazirmatn', title: 'Vazir وزیر' },\n ]);\n this.selectedFont = signal(null);\n this.#eff = effect(() => {\n if (this.getValue()) {\n this.selectedFont.set(this.fonts().find((f) => f.id === this.getValue()) ?? this.fonts()[0]);\n }\n });\n }\n #eff;\n onFontClick(font) {\n this.setValue(font.id);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXPFontStyleChooserWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.4\", type: AXPFontStyleChooserWidgetComponent, isStandalone: true, selector: \"ng-component\", usesInheritance: true, ngImport: i0, template: `\n @for (font of fonts(); track font.id) {\n <div\n (click)=\"onFontClick(font)\"\n [class.--selected]=\"font.id === selectedFont()?.id\"\n [style.font-family]=\"font.id\"\n >\n <div>\n <span>{{ font.title }}</span>\n </div>\n </div>\n }\n `, isInline: true, styles: [\":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}\\n\"], dependencies: [{ kind: \"ngmodule\", type: FormsModule }, { kind: \"ngmodule\", type: AXSelectionCdkModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXPFontStyleChooserWidgetComponent, decorators: [{\n type: Component,\n args: [{ template: `\n @for (font of fonts(); track font.id) {\n <div\n (click)=\"onFontClick(font)\"\n [class.--selected]=\"font.id === selectedFont()?.id\"\n [style.font-family]=\"font.id\"\n >\n <div>\n <span>{{ font.title }}</span>\n </div>\n </div>\n }\n `, standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [FormsModule, AXSelectionCdkModule], styles: [\":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9udC1zdHlsZS1jaG9vc2VyLXdpZGdldC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9zaGFyZWQvc3JjL2xpYi93aWRnZXRzL2ZvbnQtc3R5bGUtY2hvb3Nlci9mb250LXN0eWxlLWNob29zZXItd2lkZ2V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUUxRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQTBCN0MsTUFBTSxPQUFPLGtDQUFtQyxTQUFRLHVCQUErQjtJQW5CdkY7O1FBb0JxQixVQUFLLEdBQUcsTUFBTSxDQUFvQjtZQUNuRCxFQUFFLEVBQUUsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRTtZQUNyQyxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRTtZQUMvQixFQUFFLEVBQUUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRTtZQUN6QyxFQUFFLEVBQUUsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRTtZQUN2QyxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRTtZQUMvQixFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRTtZQUNuQyxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRTtZQUNqQyxFQUFFLEVBQUUsRUFBRSxpQkFBaUIsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUU7WUFDbkQsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUU7WUFDbkMsRUFBRSxFQUFFLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUU7WUFDdkMsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUU7WUFDbkMsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUU7WUFDbkMsRUFBRSxFQUFFLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUU7U0FDekMsQ0FBQyxDQUFDO1FBRU8saUJBQVksR0FBRyxNQUFNLENBQXlCLElBQUksQ0FBQyxDQUFDO1FBRTlELFNBQUksR0FBRyxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQ2pCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUM7Z0JBQ3BCLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDL0YsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0tBS0o7SUFUQyxJQUFJLENBSUQ7SUFFTyxXQUFXLENBQUMsSUFBcUI7UUFDekMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDekIsQ0FBQzs4R0EzQlUsa0NBQWtDO2tHQUFsQyxrQ0FBa0MsK0ZBbEJuQzs7Ozs7Ozs7Ozs7O0dBWVQsZzVDQUlTLFdBQVcsOEJBQUUsb0JBQW9COzsyRkFFaEMsa0NBQWtDO2tCQW5COUMsU0FBUzsrQkFDRTs7Ozs7Ozs7Ozs7O0dBWVQsY0FFVyxJQUFJLG1CQUNDLHVCQUF1QixDQUFDLE1BQU0sV0FDdEMsQ0FBQyxXQUFXLEVBQUUsb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFNlbGVjdGlvbkNka01vZHVsZSB9IGZyb20gJ0BhY29yZXgvY2RrL3NlbGVjdGlvbic7XG5pbXBvcnQgeyBBWFBWYWx1ZVdpZGdldENvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBlZmZlY3QsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmludGVyZmFjZSBGb250U3R5bGVPcHRpb24ge1xuICBpZDogc3RyaW5nO1xuICB0aXRsZTogc3RyaW5nO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6IGBcbiAgICBAZm9yIChmb250IG9mIGZvbnRzKCk7IHRyYWNrIGZvbnQuaWQpIHtcbiAgICAgIDxkaXZcbiAgICAgICAgKGNsaWNrKT1cIm9uRm9udENsaWNrKGZvbnQpXCJcbiAgICAgICAgW2NsYXNzLi0tc2VsZWN0ZWRdPVwiZm9udC5pZCA9PT0gc2VsZWN0ZWRGb250KCk/LmlkXCJcbiAgICAgICAgW3N0eWxlLmZvbnQtZmFtaWx5XT1cImZvbnQuaWRcIlxuICAgICAgPlxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIDxzcGFuPnt7IGZvbnQudGl0bGUgfX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgfVxuICBgLFxuICBzdHlsZVVybDogJy4vZm9udC1zdHlsZS1jaG9vc2VyLXdpZGdldC5zY3NzJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtGb3Jtc01vZHVsZSwgQVhTZWxlY3Rpb25DZGtNb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBBWFBGb250U3R5bGVDaG9vc2VyV2lkZ2V0Q29tcG9uZW50IGV4dGVuZHMgQVhQVmFsdWVXaWRnZXRDb21wb25lbnQ8c3RyaW5nPiB7XG4gIHByb3RlY3RlZCByZWFkb25seSBmb250cyA9IHNpZ25hbDxGb250U3R5bGVPcHRpb25bXT4oW1xuICAgIHsgaWQ6ICdzeXN0ZW0tdWknLCB0aXRsZTogJ0RlZmF1bHQnIH0sXG4gICAgeyBpZDogJ3NlcmlmJywgdGl0bGU6ICdTZXJpZicgfSxcbiAgICB7IGlkOiAnc2Fucy1zZXJpZicsIHRpdGxlOiAnU2Fucy1zZXJpZicgfSxcbiAgICB7IGlkOiAnbW9ub3NwYWNlJywgdGl0bGU6ICdNb25vc3BhY2UnIH0sXG4gICAgeyBpZDogJ2FyaWFsJywgdGl0bGU6ICdBcmlhbCcgfSxcbiAgICB7IGlkOiAndmVyZGFuYScsIHRpdGxlOiAnVmVyZGFuYScgfSxcbiAgICB7IGlkOiAndGFob21hJywgdGl0bGU6ICdUYWhvbWEnIH0sXG4gICAgeyBpZDogJ3RpbWVzLW5ldy1yb21hbicsIHRpdGxlOiAnVGltZXMgTmV3IFJvbWFuJyB9LFxuICAgIHsgaWQ6ICdnZW9yZ2lhJywgdGl0bGU6ICdHZW9yZ2lhJyB9LFxuICAgIHsgaWQ6ICdoZWx2ZXRpY2EnLCB0aXRsZTogJ0hlbHZldGljYScgfSxcbiAgICB7IGlkOiAnY2FsaWJyaScsIHRpdGxlOiAnQ2FsaWJyaScgfSxcbiAgICB7IGlkOiAnY3Vyc2l2ZScsIHRpdGxlOiAnQ3Vyc2l2ZScgfSxcbiAgICB7IGlkOiAndmF6aXJtYXRuJywgdGl0bGU6ICdWYXppciDZiNiy24zYsScgfSxcbiAgXSk7XG5cbiAgcHJvdGVjdGVkIHNlbGVjdGVkRm9udCA9IHNpZ25hbDxGb250U3R5bGVPcHRpb24gfCBudWxsPihudWxsKTtcblxuICAjZWZmID0gZWZmZWN0KCgpID0+IHtcbiAgICBpZiAodGhpcy5nZXRWYWx1ZSgpKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkRm9udC5zZXQodGhpcy5mb250cygpLmZpbmQoKGYpID0+IGYuaWQgPT09IHRoaXMuZ2V0VmFsdWUoKSkgPz8gdGhpcy5mb250cygpWzBdKTtcbiAgICB9XG4gIH0pO1xuXG4gIHByb3RlY3RlZCBvbkZvbnRDbGljayhmb250OiBGb250U3R5bGVPcHRpb24pIHtcbiAgICB0aGlzLnNldFZhbHVlKGZvbnQuaWQpO1xuICB9XG59XG4iXX0=","import { AXP_WIDGETS_LAYOUT_CATEGORY } from '@acorex/platform/layout/builder';\nimport { AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DISABLED_PROPERTY } from '@acorex/platform/widgets';\nexport const AXPFontStyleChooserWidget = {\n name: \"font-style-chooser\",\n title: \"Font Style Chooser\",\n icon: \"fa-light fa-font\",\n type: 'editor',\n categories: AXP_WIDGETS_LAYOUT_CATEGORY,\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n ],\n components: {\n edit: {\n component: () => import('./font-style-chooser-widget.component').then((c) => c.AXPFontStyleChooserWidgetComponent),\n },\n }\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9udC1zdHlsZS1jaG9vc2VyLXdpZGdldC5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9zaGFyZWQvc3JjL2xpYi93aWRnZXRzL2ZvbnQtc3R5bGUtY2hvb3Nlci9mb250LXN0eWxlLWNob29zZXItd2lkZ2V0LmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsMkJBQTJCLEVBQW1CLE1BQU0saUNBQWlDLENBQUM7QUFDL0YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLHNCQUFzQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFNUcsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQW9CO0lBQ3RELElBQUksRUFBRSxvQkFBb0I7SUFDMUIsS0FBSyxFQUFFLG9CQUFvQjtJQUMzQixJQUFJLEVBQUUsa0JBQWtCO0lBQ3hCLElBQUksRUFBRSxRQUFRO0lBQ2QsVUFBVSxFQUFFLDJCQUEyQjtJQUN2QyxVQUFVLEVBQUU7UUFDUixpQkFBaUI7UUFDakIsc0JBQXNCO1FBQ3RCLHFCQUFxQjtLQUN4QjtJQUNELFVBQVUsRUFBRTtRQUNSLElBQUksRUFBRTtZQUNGLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsdUNBQXVDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxrQ0FBa0MsQ0FBQztTQUNySDtLQUNKO0NBQ0osQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUF9XSURHRVRTX0xBWU9VVF9DQVRFR09SWSwgQVhQV2lkZ2V0Q29uZmlnIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBBWFBfTkFNRV9QUk9QRVJUWSwgQVhQX0RBVEFfUEFUSF9QUk9QRVJUWSwgQVhQX0RJU0FCTEVEX1BST1BFUlRZIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS93aWRnZXRzJztcblxuZXhwb3J0IGNvbnN0IEFYUEZvbnRTdHlsZUNob29zZXJXaWRnZXQ6IEFYUFdpZGdldENvbmZpZyA9IHtcbiAgICBuYW1lOiBcImZvbnQtc3R5bGUtY2hvb3NlclwiLFxuICAgIHRpdGxlOiBcIkZvbnQgU3R5bGUgQ2hvb3NlclwiLFxuICAgIGljb246IFwiZmEtbGlnaHQgZmEtZm9udFwiLFxuICAgIHR5cGU6ICdlZGl0b3InLFxuICAgIGNhdGVnb3JpZXM6IEFYUF9XSURHRVRTX0xBWU9VVF9DQVRFR09SWSxcbiAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgIEFYUF9OQU1FX1BST1BFUlRZLFxuICAgICAgICBBWFBfREFUQV9QQVRIX1BST1BFUlRZLFxuICAgICAgICBBWFBfRElTQUJMRURfUFJPUEVSVFksXG4gICAgXSxcbiAgICBjb21wb25lbnRzOiB7XG4gICAgICAgIGVkaXQ6IHtcbiAgICAgICAgICAgIGNvbXBvbmVudDogKCkgPT4gaW1wb3J0KCcuL2ZvbnQtc3R5bGUtY2hvb3Nlci13aWRnZXQuY29tcG9uZW50JykudGhlbigoYykgPT4gYy5BWFBGb250U3R5bGVDaG9vc2VyV2lkZ2V0Q29tcG9uZW50KSxcbiAgICAgICAgfSxcbiAgICB9XG59XG5cbmRlY2xhcmUgbW9kdWxlICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJyB7XG4gICAgaW50ZXJmYWNlIEFYUFdpZGdldFR5cGVzTWFwIHtcbiAgICAgICAgZm9udFN0eWxlQ2hvb3NlcjogJ2ZvbnQtc3R5bGUtY2hvb3Nlcic7XG4gICAgfVxufSAiXX0=","import { AXSelectionCdkModule } from '@acorex/cdk/selection';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPValueWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, effect, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/common\";\nimport * as i2 from \"@acorex/core/translation\";\nexport class AXPFontSizeChooserWidgetComponent extends AXPValueWidgetComponent {\n constructor() {\n super(...arguments);\n this.sizes = signal(['small', 'medium', 'large', 'x-large']);\n this.selectedSize = signal(null);\n this.#eff = effect(() => {\n if (this.getValue()) {\n this.selectedSize.set(this.sizes().find((s) => s === this.getValue()) ?? this.sizes()[0]);\n }\n });\n }\n #eff;\n onSizeClick(size) {\n this.setValue(size);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXPFontSizeChooserWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.4\", type: AXPFontSizeChooserWidgetComponent, isStandalone: true, selector: \"ng-component\", usesInheritance: true, ngImport: i0, template: `\n @for (size of sizes(); track size) {\n <div (click)=\"onSizeClick(size)\" [style.font-size]=\"size\" [class.--selected]=\"size === selectedSize()\">\n <div>\n <span>{{ 'font-sizes.' + size | translate: { scope: 'layout' } | async }}</span>\n </div>\n </div>\n }\n `, isInline: true, styles: [\":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}\\n\"], dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"pipe\", type: i1.AsyncPipe, name: \"async\" }, { kind: \"ngmodule\", type: FormsModule }, { kind: \"ngmodule\", type: AXSelectionCdkModule }, { kind: \"ngmodule\", type: AXTranslationModule }, { kind: \"pipe\", type: i2.AXTranslatorPipe, name: \"translate\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXPFontSizeChooserWidgetComponent, decorators: [{\n type: Component,\n args: [{ template: `\n @for (size of sizes(); track size) {\n <div (click)=\"onSizeClick(size)\" [style.font-size]=\"size\" [class.--selected]=\"size === selectedSize()\">\n <div>\n <span>{{ 'font-sizes.' + size | translate: { scope: 'layout' } | async }}</span>\n </div>\n </div>\n }\n `, standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, FormsModule, AXSelectionCdkModule, AXTranslationModule], styles: [\":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9udC1zaXplLWNob29zZXItd2lkZ2V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdGhlbWVzL3NoYXJlZC9zcmMvbGliL3dpZGdldHMvZm9udC1zaXplLWNob29zZXIvZm9udC1zaXplLWNob29zZXItd2lkZ2V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25GLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQWlCN0MsTUFBTSxPQUFPLGlDQUFrQyxTQUFRLHVCQUErQjtJQWZ0Rjs7UUFnQnFCLFVBQUssR0FBRyxNQUFNLENBQVcsQ0FBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDO1FBRTNFLGlCQUFZLEdBQUcsTUFBTSxDQUFnQixJQUFJLENBQUMsQ0FBQztRQUVyRCxTQUFJLEdBQUcsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUNqQixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDO2dCQUNwQixJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDNUYsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0tBS0o7SUFUQyxJQUFJLENBSUQ7SUFFTyxXQUFXLENBQUMsSUFBWTtRQUNoQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RCLENBQUM7OEdBYlUsaUNBQWlDO2tHQUFqQyxpQ0FBaUMsK0ZBZGxDOzs7Ozs7OztHQVFULGc1Q0FJUyxZQUFZLG1GQUFFLFdBQVcsOEJBQUUsb0JBQW9CLDhCQUFFLG1CQUFtQjs7MkZBRW5FLGlDQUFpQztrQkFmN0MsU0FBUzsrQkFDRTs7Ozs7Ozs7R0FRVCxjQUVXLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxXQUN0QyxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsb0JBQW9CLEVBQUUsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFNlbGVjdGlvbkNka01vZHVsZSB9IGZyb20gJ0BhY29yZXgvY2RrL3NlbGVjdGlvbic7XG5pbXBvcnQgeyBBWFRyYW5zbGF0aW9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlL3RyYW5zbGF0aW9uJztcbmltcG9ydCB7IEFYUFZhbHVlV2lkZ2V0Q29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgZWZmZWN0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6IGBcbiAgICBAZm9yIChzaXplIG9mIHNpemVzKCk7IHRyYWNrIHNpemUpIHtcbiAgICAgIDxkaXYgKGNsaWNrKT1cIm9uU2l6ZUNsaWNrKHNpemUpXCIgW3N0eWxlLmZvbnQtc2l6ZV09XCJzaXplXCIgW2NsYXNzLi0tc2VsZWN0ZWRdPVwic2l6ZSA9PT0gc2VsZWN0ZWRTaXplKClcIj5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICA8c3Bhbj57eyAnZm9udC1zaXplcy4nICsgc2l6ZSB8IHRyYW5zbGF0ZTogeyBzY29wZTogJ2xheW91dCcgfSB8IGFzeW5jIH19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIH1cbiAgYCxcbiAgc3R5bGVVcmw6ICcuL2ZvbnQtc2l6ZS1jaG9vc2VyLXdpZGdldC5zY3NzJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEZvcm1zTW9kdWxlLCBBWFNlbGVjdGlvbkNka01vZHVsZSwgQVhUcmFuc2xhdGlvbk1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIEFYUEZvbnRTaXplQ2hvb3NlcldpZGdldENvbXBvbmVudCBleHRlbmRzIEFYUFZhbHVlV2lkZ2V0Q29tcG9uZW50PHN0cmluZz4ge1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgc2l6ZXMgPSBzaWduYWw8c3RyaW5nW10+KFsnc21hbGwnLCAnbWVkaXVtJywgJ2xhcmdlJywgJ3gtbGFyZ2UnXSk7XG5cbiAgcHJvdGVjdGVkIHNlbGVjdGVkU2l6ZSA9IHNpZ25hbDxzdHJpbmcgfCBudWxsPihudWxsKTtcblxuICAjZWZmID0gZWZmZWN0KCgpID0+IHtcbiAgICBpZiAodGhpcy5nZXRWYWx1ZSgpKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkU2l6ZS5zZXQodGhpcy5zaXplcygpLmZpbmQoKHMpID0+IHMgPT09IHRoaXMuZ2V0VmFsdWUoKSkgPz8gdGhpcy5zaXplcygpWzBdKTtcbiAgICB9XG4gIH0pO1xuXG4gIHByb3RlY3RlZCBvblNpemVDbGljayhzaXplOiBzdHJpbmcpIHtcbiAgICB0aGlzLnNldFZhbHVlKHNpemUpO1xuICB9XG59XG4iXX0=","import { AXP_WIDGETS_LAYOUT_CATEGORY } from '@acorex/platform/layout/builder';\nimport { AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DISABLED_PROPERTY } from '@acorex/platform/widgets';\nexport const AXPFontSizeChooserWidget = {\n name: \"font-size-chooser\",\n title: \"Font Size Chooser\",\n icon: \"fa-light fa-text-size\",\n type: 'editor',\n categories: AXP_WIDGETS_LAYOUT_CATEGORY,\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n ],\n components: {\n edit: {\n component: () => import('./font-size-chooser-widget.component').then((c) => c.AXPFontSizeChooserWidgetComponent),\n },\n }\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9udC1zaXplLWNob29zZXItd2lkZ2V0LmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdGhlbWVzL3NoYXJlZC9zcmMvbGliL3dpZGdldHMvZm9udC1zaXplLWNob29zZXIvZm9udC1zaXplLWNob29zZXItd2lkZ2V0LmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsMkJBQTJCLEVBQW1CLE1BQU0saUNBQWlDLENBQUM7QUFDL0YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLHNCQUFzQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFNUcsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQW9CO0lBQ3JELElBQUksRUFBRSxtQkFBbUI7SUFDekIsS0FBSyxFQUFFLG1CQUFtQjtJQUMxQixJQUFJLEVBQUUsdUJBQXVCO0lBQzdCLElBQUksRUFBRSxRQUFRO0lBQ2QsVUFBVSxFQUFFLDJCQUEyQjtJQUN2QyxVQUFVLEVBQUU7UUFDUixpQkFBaUI7UUFDakIsc0JBQXNCO1FBQ3RCLHFCQUFxQjtLQUN4QjtJQUNELFVBQVUsRUFBRTtRQUNSLElBQUksRUFBRTtZQUNGLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsc0NBQXNDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxpQ0FBaUMsQ0FBQztTQUNuSDtLQUNKO0NBQ0osQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUF9XSURHRVRTX0xBWU9VVF9DQVRFR09SWSwgQVhQV2lkZ2V0Q29uZmlnIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBBWFBfTkFNRV9QUk9QRVJUWSwgQVhQX0RBVEFfUEFUSF9QUk9QRVJUWSwgQVhQX0RJU0FCTEVEX1BST1BFUlRZIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS93aWRnZXRzJztcblxuZXhwb3J0IGNvbnN0IEFYUEZvbnRTaXplQ2hvb3NlcldpZGdldDogQVhQV2lkZ2V0Q29uZmlnID0ge1xuICAgIG5hbWU6IFwiZm9udC1zaXplLWNob29zZXJcIixcbiAgICB0aXRsZTogXCJGb250IFNpemUgQ2hvb3NlclwiLFxuICAgIGljb246IFwiZmEtbGlnaHQgZmEtdGV4dC1zaXplXCIsXG4gICAgdHlwZTogJ2VkaXRvcicsXG4gICAgY2F0ZWdvcmllczogQVhQX1dJREdFVFNfTEFZT1VUX0NBVEVHT1JZLFxuICAgIHByb3BlcnRpZXM6IFtcbiAgICAgICAgQVhQX05BTUVfUFJPUEVSVFksXG4gICAgICAgIEFYUF9EQVRBX1BBVEhfUFJPUEVSVFksXG4gICAgICAgIEFYUF9ESVNBQkxFRF9QUk9QRVJUWSxcbiAgICBdLFxuICAgIGNvbXBvbmVudHM6IHtcbiAgICAgICAgZWRpdDoge1xuICAgICAgICAgICAgY29tcG9uZW50OiAoKSA9PiBpbXBvcnQoJy4vZm9udC1zaXplLWNob29zZXItd2lkZ2V0LmNvbXBvbmVudCcpLnRoZW4oKGMpID0+IGMuQVhQRm9udFNpemVDaG9vc2VyV2lkZ2V0Q29tcG9uZW50KSxcbiAgICAgICAgfSxcbiAgICB9XG59XG5cbmRlY2xhcmUgbW9kdWxlICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJyB7XG4gICAgaW50ZXJmYWNlIEFYUFdpZGdldFR5cGVzTWFwIHtcbiAgICAgICAgZm9udFNpemVDaG9vc2VyOiAnZm9udC1zaXplLWNob29zZXInO1xuICAgIH1cbn0gIl19","import { AXP_SETTING_DEFINITION_PROVIDER } from '@acorex/platform/common';\nimport { inject, Injector, NgModule } from '@angular/core';\nimport { AXPThemeSlotComponent } from './slots/theme-slot.component';\nimport { AXPLayoutThemeService } from './theme.service';\nimport { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\nimport { AXPThemePaletteChooserWidget } from './widgets/theme-palette-chooser';\nimport { AXPThemeModeChooserWidget } from './widgets/theme-mode-chooser';\nimport { AXPMenuOrientationChooserWidget } from './widgets/menu-orientation-chooser';\nimport { AXPFontStyleChooserWidget } from './widgets/font-style-chooser';\nimport { AXPFontSizeChooserWidget } from './widgets/font-size-chooser';\nimport { AXPAppStartUpService } from '@acorex/platform/core';\nimport { AXPComponentSlotModule } from '@acorex/platform/layout/components';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/platform/core\";\nimport * as i2 from \"@acorex/platform/layout/components\";\nimport * as i3 from \"@acorex/platform/layout/builder\";\nexport class AXPThemesSharedModule {\n constructor(appInitService, injector) {\n const service = injector.get(AXPLayoutThemeService);\n appInitService.registerTask({\n name: 'layout-theme',\n statusText: 'Applying layout theme settings ...',\n priority: 100,\n run: async () => {\n await service.loadSettings();\n }\n });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXPThemesSharedModule, deps: [{ token: i1.AXPAppStartUpService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.0.4\", ngImport: i0, type: AXPThemesSharedModule, imports: [i2.AXPComponentSlotModule, i3.AXPLayoutBuilderModule] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXPThemesSharedModule, providers: [\n {\n provide: AXP_SETTING_DEFINITION_PROVIDER,\n useFactory: async () => {\n const injector = inject(Injector);\n const provider = (await import('./settings.provider')).AXPThemeSettingProvider;\n return new provider(injector);\n },\n multi: true\n }\n ], imports: [AXPComponentSlotModule.forRoot({\n 'root-header-end': [\n {\n priority: 50,\n name: 'theme',\n component: AXPThemeSlotComponent,\n },\n ],\n }),\n AXPLayoutBuilderModule.forChild({\n widgets: [\n AXPThemePaletteChooserWidget,\n AXPThemeModeChooserWidget,\n AXPMenuOrientationChooserWidget,\n AXPFontSizeChooserWidget,\n AXPFontStyleChooserWidget\n ]\n })] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXPThemesSharedModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [\n AXPComponentSlotModule.forRoot({\n 'root-header-end': [\n {\n priority: 50,\n name: 'theme',\n component: AXPThemeSlotComponent,\n },\n ],\n }),\n AXPLayoutBuilderModule.forChild({\n widgets: [\n AXPThemePaletteChooserWidget,\n AXPThemeModeChooserWidget,\n AXPMenuOrientationChooserWidget,\n AXPFontSizeChooserWidget,\n AXPFontStyleChooserWidget\n ]\n })\n ],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXP_SETTING_DEFINITION_PROVIDER,\n useFactory: async () => {\n const injector = inject(Injector);\n const provider = (await import('./settings.provider')).AXPThemeSettingProvider;\n return new provider(injector);\n },\n multi: true\n }\n ],\n }]\n }], ctorParameters: () => [{ type: i1.AXPAppStartUpService }, { type: i0.Injector }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdGhlbWVzL3NoYXJlZC9zcmMvbGliL3NoYXJlZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDMUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3pFLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3pFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzdELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOzs7OztBQW9DNUUsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQyxZQUNFLGNBQW9DLEVBQ3BDLFFBQWtCO1FBRWxCLE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUNwRCxjQUFjLENBQUMsWUFBWSxDQUFDO1lBQzFCLElBQUksRUFBRSxjQUFjO1lBQ3BCLFVBQVUsRUFBRSxvQ0FBb0M7WUFDaEQsUUFBUSxFQUFFLEdBQUc7WUFDYixHQUFHLEVBQUUsS0FBSyxJQUFJLEVBQUU7Z0JBQ2QsTUFBTSxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDL0IsQ0FBQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7OEdBZFUscUJBQXFCOytHQUFyQixxQkFBcUI7K0dBQXJCLHFCQUFxQixhQVpyQjtZQUNUO2dCQUNFLE9BQU8sRUFBRSwrQkFBK0I7Z0JBQ3hDLFVBQVUsRUFBRSxLQUFLLElBQUksRUFBRTtvQkFDckIsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO29CQUNsQyxNQUFNLFFBQVEsR0FBRyxDQUFDLE1BQU0sTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQztvQkFDL0UsT0FBTyxJQUFJLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDaEMsQ0FBQztnQkFDRCxLQUFLLEVBQUUsSUFBSTthQUNaO1NBQ0YsWUEvQkMsc0JBQXNCLENBQUMsT0FBTyxDQUFDO2dCQUM3QixpQkFBaUIsRUFBRTtvQkFDakI7d0JBQ0UsUUFBUSxFQUFFLEVBQUU7d0JBQ1osSUFBSSxFQUFFLE9BQU87d0JBQ2IsU0FBUyxFQUFFLHFCQUFxQjtxQkFDakM7aUJBQ0Y7YUFDRixDQUFDO1lBQ0Ysc0JBQXNCLENBQUMsUUFBUSxDQUFDO2dCQUM5QixPQUFPLEVBQUU7b0JBQ1AsNEJBQTRCO29CQUM1Qix5QkFBeUI7b0JBQ3pCLCtCQUErQjtvQkFDL0Isd0JBQXdCO29CQUN4Qix5QkFBeUI7aUJBQzFCO2FBQ0YsQ0FBQzs7MkZBZ0JPLHFCQUFxQjtrQkFuQ2pDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLHNCQUFzQixDQUFDLE9BQU8sQ0FBQzs0QkFDN0IsaUJBQWlCLEVBQUU7Z0NBQ2pCO29DQUNFLFFBQVEsRUFBRSxFQUFFO29DQUNaLElBQUksRUFBRSxPQUFPO29DQUNiLFNBQVMsRUFBRSxxQkFBcUI7aUNBQ2pDOzZCQUNGO3lCQUNGLENBQUM7d0JBQ0Ysc0JBQXNCLENBQUMsUUFBUSxDQUFDOzRCQUM5QixPQUFPLEVBQUU7Z0NBQ1AsNEJBQTRCO2dDQUM1Qix5QkFBeUI7Z0NBQ3pCLCtCQUErQjtnQ0FDL0Isd0JBQXdCO2dDQUN4Qix5QkFBeUI7NkJBQzFCO3lCQUNGLENBQUM7cUJBQ0g7b0JBQ0QsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsWUFBWSxFQUFFLEVBQUU7b0JBQ2hCLFNBQVMsRUFBRTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsK0JBQStCOzRCQUN4QyxVQUFVLEVBQUUsS0FBSyxJQUFJLEVBQUU7Z0NBQ3JCLE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztnQ0FDbEMsTUFBTSxRQUFRLEdBQUcsQ0FBQyxNQUFNLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsdUJBQXVCLENBQUM7Z0NBQy9FLE9BQU8sSUFBSSxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7NEJBQ2hDLENBQUM7NEJBQ0QsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBfU0VUVElOR19ERUZJTklUSU9OX1BST1ZJREVSIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RvciwgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYUFRoZW1lU2xvdENvbXBvbmVudCB9IGZyb20gJy4vc2xvdHMvdGhlbWUtc2xvdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQVhQTGF5b3V0VGhlbWVTZXJ2aWNlIH0gZnJvbSAnLi90aGVtZS5zZXJ2aWNlJztcbmltcG9ydCB7IEFYUExheW91dEJ1aWxkZXJNb2R1bGUgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJztcbmltcG9ydCB7IEFYUFRoZW1lUGFsZXR0ZUNob29zZXJXaWRnZXQgfSBmcm9tICcuL3dpZGdldHMvdGhlbWUtcGFsZXR0ZS1jaG9vc2VyJztcbmltcG9ydCB7IEFYUFRoZW1lTW9kZUNob29zZXJXaWRnZXQgfSBmcm9tICcuL3dpZGdldHMvdGhlbWUtbW9kZS1jaG9vc2VyJztcbmltcG9ydCB7IEFYUE1lbnVPcmllbnRhdGlvbkNob29zZXJXaWRnZXQgfSBmcm9tICcuL3dpZGdldHMvbWVudS1vcmllbnRhdGlvbi1jaG9vc2VyJztcbmltcG9ydCB7IEFYUEZvbnRTdHlsZUNob29zZXJXaWRnZXQgfSBmcm9tICcuL3dpZGdldHMvZm9udC1zdHlsZS1jaG9vc2VyJztcbmltcG9ydCB7IEFYUEZvbnRTaXplQ2hvb3NlcldpZGdldCB9IGZyb20gJy4vd2lkZ2V0cy9mb250LXNpemUtY2hvb3Nlcic7XG5pbXBvcnQgeyBBWFBBcHBTdGFydFVwU2VydmljZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29yZSc7XG5pbXBvcnQgeyBBWFBDb21wb25lbnRTbG90TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvY29tcG9uZW50cyc7XG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQVhQQ29tcG9uZW50U2xvdE1vZHVsZS5mb3JSb290KHtcbiAgICAgICdyb290LWhlYWRlci1lbmQnOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBwcmlvcml0eTogNTAsXG4gICAgICAgICAgbmFtZTogJ3RoZW1lJyxcbiAgICAgICAgICBjb21wb25lbnQ6IEFYUFRoZW1lU2xvdENvbXBvbmVudCxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSksXG4gICAgQVhQTGF5b3V0QnVpbGRlck1vZHVsZS5mb3JDaGlsZCh7XG4gICAgICB3aWRnZXRzOiBbXG4gICAgICAgIEFYUFRoZW1lUGFsZXR0ZUNob29zZXJXaWRnZXQsXG4gICAgICAgIEFYUFRoZW1lTW9kZUNob29zZXJXaWRnZXQsXG4gICAgICAgIEFYUE1lbnVPcmllbnRhdGlvbkNob29zZXJXaWRnZXQsXG4gICAgICAgIEFYUEZvbnRTaXplQ2hvb3NlcldpZGdldCxcbiAgICAgICAgQVhQRm9udFN0eWxlQ2hvb3NlcldpZGdldFxuICAgICAgXVxuICAgIH0pXG4gIF0sXG4gIGV4cG9ydHM6IFtdLFxuICBkZWNsYXJhdGlvbnM6IFtdLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBBWFBfU0VUVElOR19ERUZJTklUSU9OX1BST1ZJREVSLFxuICAgICAgdXNlRmFjdG9yeTogYXN5bmMgKCkgPT4ge1xuICAgICAgICBjb25zdCBpbmplY3RvciA9IGluamVjdChJbmplY3Rvcik7XG4gICAgICAgIGNvbnN0IHByb3ZpZGVyID0gKGF3YWl0IGltcG9ydCgnLi9zZXR0aW5ncy5wcm92aWRlcicpKS5BWFBUaGVtZVNldHRpbmdQcm92aWRlcjtcbiAgICAgICAgcmV0dXJuIG5ldyBwcm92aWRlcihpbmplY3Rvcik7XG4gICAgICB9LFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9XG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEFYUFRoZW1lc1NoYXJlZE1vZHVsZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIGFwcEluaXRTZXJ2aWNlOiBBWFBBcHBTdGFydFVwU2VydmljZSxcbiAgICBpbmplY3RvcjogSW5qZWN0b3JcbiAgKSB7XG4gICAgY29uc3Qgc2VydmljZSA9IGluamVjdG9yLmdldChBWFBMYXlvdXRUaGVtZVNlcnZpY2UpO1xuICAgIGFwcEluaXRTZXJ2aWNlLnJlZ2lzdGVyVGFzayh7XG4gICAgICBuYW1lOiAnbGF5b3V0LXRoZW1lJyxcbiAgICAgIHN0YXR1c1RleHQ6ICdBcHBseWluZyBsYXlvdXQgdGhlbWUgc2V0dGluZ3MgLi4uJyxcbiAgICAgIHByaW9yaXR5OiAxMDAsXG4gICAgICBydW46IGFzeW5jICgpID0+IHtcbiAgICAgICAgYXdhaXQgc2VydmljZS5sb2FkU2V0dGluZ3MoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LXBsYXRmb3JtLXRoZW1lcy1zaGFyZWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9zaGFyZWQvc3JjL2Fjb3JleC1wbGF0Zm9ybS10aGVtZXMtc2hhcmVkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":["i5","i2","i1","i3"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"acorex-platform-themes-shared.mjs","sources":["../tmp-esm2022/themes/shared/lib/settings.keys.js","../tmp-esm2022/themes/shared/lib/theme.types.js","../tmp-esm2022/themes/shared/lib/theme.service.js","../tmp-esm2022/themes/shared/lib/slots/theme-slot.component.js","../tmp-esm2022/themes/shared/lib/palette.provider.js","../tmp-esm2022/themes/shared/lib/widgets/theme-palette-chooser/theme-palette-chooser-widget.component.js","../tmp-esm2022/themes/shared/lib/widgets/theme-palette-chooser/theme-palette-chooser-widget.config.js","../tmp-esm2022/themes/shared/lib/widgets/theme-mode-chooser/theme-mode-chooser-widget.component.js","../tmp-esm2022/themes/shared/lib/widgets/theme-mode-chooser/theme-mode-chooser-widget.config.js","../tmp-esm2022/themes/shared/lib/widgets/menu-orientation-chooser/menu-orientation-chooser-widget.component.js","../tmp-esm2022/themes/shared/lib/widgets/menu-orientation-chooser/menu-orientation-chooser-widget.config.js","../tmp-esm2022/themes/shared/lib/widgets/font-style-chooser/font-style-chooser-widget.component.js","../tmp-esm2022/themes/shared/lib/widgets/font-style-chooser/font-style-chooser-widget.config.js","../tmp-esm2022/themes/shared/lib/widgets/font-size-chooser/font-size-chooser-widget.component.js","../tmp-esm2022/themes/shared/lib/widgets/font-size-chooser/font-size-chooser-widget.config.js","../tmp-esm2022/themes/shared/lib/shared.module.js","../tmp-esm2022/themes/shared/acorex-platform-themes-shared.js"],"sourcesContent":["export var AXPThemeLayoutSetting;\n(function (AXPThemeLayoutSetting) {\n AXPThemeLayoutSetting[\"Name\"] = \"layout:theme:name\";\n AXPThemeLayoutSetting[\"Layout\"] = \"layout:theme:layout\";\n AXPThemeLayoutSetting[\"Font\"] = \"layout:theme:font:family\";\n AXPThemeLayoutSetting[\"FontSize\"] = \"layout:theme:font:size\";\n AXPThemeLayoutSetting[\"Palette\"] = \"layout:theme:palette\";\n AXPThemeLayoutSetting[\"Mode\"] = \"layout:theme:mode\";\n AXPThemeLayoutSetting[\"SideMenuStatus\"] = \"layout:theme:sidemenu:status\";\n AXPThemeLayoutSetting[\"SideMenuWidth\"] = \"layout:theme:sidemenu:width\";\n AXPThemeLayoutSetting[\"MenuOrientation\"] = \"layout:theme:root-menu:direction\";\n AXPThemeLayoutSetting[\"MenuBadgeVisible\"] = \"layout:theme:root-menu:badge\";\n})(AXPThemeLayoutSetting || (AXPThemeLayoutSetting = {}));\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZ3Mua2V5cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdGhlbWVzL3NoYXJlZC9zcmMvbGliL3NldHRpbmdzLmtleXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVkscUJBV1g7QUFYRCxXQUFZLHFCQUFxQjtJQUM3QixtREFBMEIsQ0FBQTtJQUMxQix1REFBOEIsQ0FBQTtJQUM5QiwwREFBaUMsQ0FBQTtJQUNqQyw0REFBbUMsQ0FBQTtJQUNuQyx5REFBZ0MsQ0FBQTtJQUNoQyxtREFBMEIsQ0FBQTtJQUMxQix3RUFBK0MsQ0FBQTtJQUMvQyxzRUFBNkMsQ0FBQTtJQUM3Qyw2RUFBb0QsQ0FBQTtJQUNwRCwwRUFBaUQsQ0FBQTtBQUNyRCxDQUFDLEVBWFcscUJBQXFCLEtBQXJCLHFCQUFxQixRQVdoQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEFYUFRoZW1lTGF5b3V0U2V0dGluZyB7XG4gICAgTmFtZSA9ICdsYXlvdXQ6dGhlbWU6bmFtZScsXG4gICAgTGF5b3V0ID0gJ2xheW91dDp0aGVtZTpsYXlvdXQnLFxuICAgIEZvbnQgPSAnbGF5b3V0OnRoZW1lOmZvbnQ6ZmFtaWx5JyxcbiAgICBGb250U2l6ZSA9ICdsYXlvdXQ6dGhlbWU6Zm9udDpzaXplJyxcbiAgICBQYWxldHRlID0gJ2xheW91dDp0aGVtZTpwYWxldHRlJyxcbiAgICBNb2RlID0gJ2xheW91dDp0aGVtZTptb2RlJyxcbiAgICBTaWRlTWVudVN0YXR1cyA9ICdsYXlvdXQ6dGhlbWU6c2lkZW1lbnU6c3RhdHVzJyxcbiAgICBTaWRlTWVudVdpZHRoID0gJ2xheW91dDp0aGVtZTpzaWRlbWVudTp3aWR0aCcsXG4gICAgTWVudU9yaWVudGF0aW9uID0gJ2xheW91dDp0aGVtZTpyb290LW1lbnU6ZGlyZWN0aW9uJyxcbiAgICBNZW51QmFkZ2VWaXNpYmxlID0gJ2xheW91dDp0aGVtZTpyb290LW1lbnU6YmFkZ2UnLFxufSJdfQ==","// Theme Enum\nexport var AXPThemeMode;\n(function (AXPThemeMode) {\n AXPThemeMode[\"Light\"] = \"light\";\n AXPThemeMode[\"Dark\"] = \"dark\";\n AXPThemeMode[\"System\"] = \"system\";\n})(AXPThemeMode || (AXPThemeMode = {}));\n// Screen Size Enum\nexport var AXPScreenSize;\n(function (AXPScreenSize) {\n AXPScreenSize[\"Small\"] = \"small\";\n AXPScreenSize[\"Medium\"] = \"medium\";\n AXPScreenSize[\"Large\"] = \"large\";\n})(AXPScreenSize || (AXPScreenSize = {}));\n// Device Type Enum\nexport var AXPDeviceType;\n(function (AXPDeviceType) {\n AXPDeviceType[\"Mobile\"] = \"mobile\";\n AXPDeviceType[\"Tablet\"] = \"tablet\";\n AXPDeviceType[\"Desktop\"] = \"desktop\";\n})(AXPDeviceType || (AXPDeviceType = {}));\n// Side Menu State Enum\nexport var AXPSideMenuState;\n(function (AXPSideMenuState) {\n AXPSideMenuState[\"Opened\"] = \"opened\";\n AXPSideMenuState[\"Closed\"] = \"closed\";\n})(AXPSideMenuState || (AXPSideMenuState = {}));\n// Menu Orientation Enum\nexport var AXPMenuOrientation;\n(function (AXPMenuOrientation) {\n AXPMenuOrientation[\"Vertical\"] = \"vertical\";\n AXPMenuOrientation[\"Horizontal\"] = \"horizontal\";\n})(AXPMenuOrientation || (AXPMenuOrientation = {}));\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUudHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9zaGFyZWQvc3JjL2xpYi90aGVtZS50eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpQkEsYUFBYTtBQUNiLE1BQU0sQ0FBTixJQUFZLFlBSVg7QUFKRCxXQUFZLFlBQVk7SUFDcEIsK0JBQWUsQ0FBQTtJQUNmLDZCQUFhLENBQUE7SUFDYixpQ0FBaUIsQ0FBQTtBQUNyQixDQUFDLEVBSlcsWUFBWSxLQUFaLFlBQVksUUFJdkI7QUFFRCxtQkFBbUI7QUFDbkIsTUFBTSxDQUFOLElBQVksYUFJWDtBQUpELFdBQVksYUFBYTtJQUNyQixnQ0FBZSxDQUFBO0lBQ2Ysa0NBQWlCLENBQUE7SUFDakIsZ0NBQWUsQ0FBQTtBQUNuQixDQUFDLEVBSlcsYUFBYSxLQUFiLGFBQWEsUUFJeEI7QUFFRCxtQkFBbUI7QUFDbkIsTUFBTSxDQUFOLElBQVksYUFJWDtBQUpELFdBQVksYUFBYTtJQUNyQixrQ0FBaUIsQ0FBQTtJQUNqQixrQ0FBaUIsQ0FBQTtJQUNqQixvQ0FBbUIsQ0FBQTtBQUN2QixDQUFDLEVBSlcsYUFBYSxLQUFiLGFBQWEsUUFJeEI7QUFFRCx1QkFBdUI7QUFDdkIsTUFBTSxDQUFOLElBQVksZ0JBR1g7QUFIRCxXQUFZLGdCQUFnQjtJQUN4QixxQ0FBaUIsQ0FBQTtJQUNqQixxQ0FBaUIsQ0FBQTtBQUNyQixDQUFDLEVBSFcsZ0JBQWdCLEtBQWhCLGdCQUFnQixRQUczQjtBQUVELHdCQUF3QjtBQUN4QixNQUFNLENBQU4sSUFBWSxrQkFHWDtBQUhELFdBQVksa0JBQWtCO0lBQzFCLDJDQUFxQixDQUFBO0lBQ3JCLCtDQUF5QixDQUFBO0FBQzdCLENBQUMsRUFIVyxrQkFBa0IsS0FBbEIsa0JBQWtCLFFBRzdCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBBWFBUaGVtZVBhbGV0dGVDb2xvcnMge1xuICAgIHByaW1hcnk6IHN0cmluZztcbiAgICBzZWNvbmRhcnk6IHN0cmluZztcbiAgICBzdWNjZXNzOiBzdHJpbmc7XG4gICAgd2FybmluZzogc3RyaW5nO1xuICAgIGRhbmdlcjogc3RyaW5nO1xuICAgIGFjY2VudHM6IHN0cmluZ1tdO1xuICAgIGRhcms6IHN0cmluZztcbiAgICBsaWdodDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFYUFRoZW1lUGFsZXR0ZSB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIHRpdGxlOiBzdHJpbmc7XG4gICAgY29sb3JzOiBBWFBUaGVtZVBhbGV0dGVDb2xvcnNcbn1cblxuLy8gVGhlbWUgRW51bVxuZXhwb3J0IGVudW0gQVhQVGhlbWVNb2RlIHtcbiAgICBMaWdodCA9ICdsaWdodCcsXG4gICAgRGFyayA9ICdkYXJrJyxcbiAgICBTeXN0ZW0gPSAnc3lzdGVtJyxcbn1cblxuLy8gU2NyZWVuIFNpemUgRW51bVxuZXhwb3J0IGVudW0gQVhQU2NyZWVuU2l6ZSB7XG4gICAgU21hbGwgPSAnc21hbGwnLFxuICAgIE1lZGl1bSA9ICdtZWRpdW0nLFxuICAgIExhcmdlID0gJ2xhcmdlJyxcbn1cblxuLy8gRGV2aWNlIFR5cGUgRW51bVxuZXhwb3J0IGVudW0gQVhQRGV2aWNlVHlwZSB7XG4gICAgTW9iaWxlID0gJ21vYmlsZScsXG4gICAgVGFibGV0ID0gJ3RhYmxldCcsXG4gICAgRGVza3RvcCA9ICdkZXNrdG9wJyxcbn1cblxuLy8gU2lkZSBNZW51IFN0YXRlIEVudW1cbmV4cG9ydCBlbnVtIEFYUFNpZGVNZW51U3RhdGUge1xuICAgIE9wZW5lZCA9ICdvcGVuZWQnLFxuICAgIENsb3NlZCA9ICdjbG9zZWQnLFxufVxuXG4vLyBNZW51IE9yaWVudGF0aW9uIEVudW1cbmV4cG9ydCBlbnVtIEFYUE1lbnVPcmllbnRhdGlvbiB7XG4gICAgVmVydGljYWwgPSAndmVydGljYWwnLFxuICAgIEhvcml6b250YWwgPSAnaG9yaXpvbnRhbCcsXG59XG4iXX0=","import { AXPSettingService } from '@acorex/platform/common';\nimport { computed, inject } from '@angular/core';\nimport { patchState, signalStore, withComputed, withHooks, withMethods, withState } from '@ngrx/signals';\nimport { filter, firstValueFrom, timer, fromEvent, Subscription } from 'rxjs';\nimport { debounceTime } from 'rxjs/operators';\nimport { AXPThemeLayoutSetting } from './settings.keys';\nimport { AXPThemeMode, AXPScreenSize, AXPDeviceType, AXPSideMenuState, AXPMenuOrientation } from './theme.types';\nimport { HttpClient } from '@angular/common/http';\nimport { AXPPlatformScope } from '@acorex/platform/core';\n// ThemeStore - Manages theme settings, system changes, and loading states\nexport const AXPLayoutThemeService = signalStore({ providedIn: 'root' }, \n// Initial State\nwithState(() => {\n const isSystemDark = window.matchMedia('(prefers-color-scheme: dark)').matches;\n // Helper function to get the initial screen size\n const getScreenSize = () => {\n const width = window.innerWidth;\n if (width <= 600)\n return AXPScreenSize.Small;\n if (width <= 1024)\n return AXPScreenSize.Medium;\n return AXPScreenSize.Large;\n };\n // Helper function to determine device type\n const getDeviceType = () => {\n const userAgent = navigator.userAgent.toLowerCase();\n if (/mobile|android|iphone|ipad/.test(userAgent)) {\n return AXPDeviceType.Mobile;\n }\n else if (/tablet/.test(userAgent)) {\n return AXPDeviceType.Tablet;\n }\n return AXPDeviceType.Desktop;\n };\n // Helper function to determine if the device supports touch\n const isTouchDevice = () => {\n return 'ontouchstart' in window || navigator.maxTouchPoints > 0;\n };\n const state = {\n currentMode: AXPThemeMode.System,\n currentPalette: 'default',\n systemThemeMode: (isSystemDark ? AXPThemeMode.Dark : AXPThemeMode.Light),\n font: {\n family: 'system-ui',\n size: 'medium'\n },\n screenSize: getScreenSize(),\n deviceType: getDeviceType(),\n isTouchDevice: isTouchDevice(),\n overlayLoading: false,\n navigationLoading: false,\n overlayLoadingTaskCount: 0,\n navigationLoadingTaskCount: 0,\n sideMenuState: (getScreenSize() === AXPScreenSize.Large ? AXPSideMenuState.Opened : AXPSideMenuState.Closed),\n sideMenuWidth: 288,\n menuOrientation: 'vertical',\n _listener: null,\n _resizeListener: null,\n };\n return state;\n}), \n// Computed Signals\nwithComputed(({ currentMode: currentTheme, systemThemeMode: systemTheme, screenSize, deviceType, isTouchDevice, sideMenuState, overlayLoading, navigationLoading, menuOrientation }) => ({\n isDarkMode: computed(() => currentTheme() === AXPThemeMode.Dark ||\n (currentTheme() === AXPThemeMode.System && systemTheme() === AXPThemeMode.Dark)),\n isLightMode: computed(() => currentTheme() === AXPThemeMode.Light ||\n (currentTheme() === AXPThemeMode.System && systemTheme() === AXPThemeMode.Light)),\n isSystemMode: computed(() => currentTheme() === AXPThemeMode.System),\n isSideMenuOpen: computed(() => sideMenuState() === AXPSideMenuState.Opened),\n isSideMenuOverlay: computed(() => screenSize() === AXPScreenSize.Small || screenSize() === AXPScreenSize.Medium),\n isSmall: computed(() => screenSize() === AXPScreenSize.Small),\n isMedium: computed(() => screenSize() === AXPScreenSize.Medium),\n isLarge: computed(() => screenSize() === AXPScreenSize.Large),\n isMobileDevice: computed(() => deviceType() === AXPDeviceType.Mobile),\n isTabletDevice: computed(() => deviceType() === AXPDeviceType.Tablet),\n isDesktopDevice: computed(() => deviceType() === AXPDeviceType.Desktop),\n isTouchScreen: computed(() => isTouchDevice()),\n isOverlayLoading: computed(() => overlayLoading()),\n isNavigationLoading: computed(() => navigationLoading()),\n isMenuHorizontal: computed(() => menuOrientation() === AXPMenuOrientation.Horizontal),\n})), \n// Methods for State Management\nwithMethods((store, http = inject(HttpClient), settingService = inject(AXPSettingService)) => {\n const _applySettings = async () => {\n // Initialize theme and side menu setting from storage\n const settingThemeMode = (await settingService.get(AXPThemeLayoutSetting.Mode)) ?? AXPThemeMode.Light;\n patchState(store, { currentMode: settingThemeMode });\n //\n const settingThemePallete = (await settingService.get(AXPThemeLayoutSetting.Palette)) ?? 'default';\n patchState(store, { currentPalette: settingThemePallete });\n //\n const settingSideMenu = (await settingService.get(AXPThemeLayoutSetting.SideMenuStatus)) ?? store.sideMenuState();\n patchState(store, { sideMenuState: settingSideMenu });\n //\n const settingMenuOrientation = (await settingService.get(AXPThemeLayoutSetting.MenuOrientation)) ?? store.menuOrientation();\n patchState(store, { menuOrientation: settingMenuOrientation });\n // \n const fontFamily = await settingService.get(AXPThemeLayoutSetting.Font);\n const fontSize = await settingService.get(AXPThemeLayoutSetting.FontSize);\n patchState(store, { font: { family: fontFamily, size: fontSize } });\n //\n const sideMenuWidth = await settingService.get(AXPThemeLayoutSetting.SideMenuWidth);\n patchState(store, { sideMenuWidth });\n await _updateHtmlClass();\n };\n // Update HTML class based on theme\n const _updateHtmlClass = async () => {\n const html = document.getElementsByTagName('html')[0];\n //\n store.isDarkMode() ? html.classList.add('ax-dark') : html.classList.remove('ax-dark');\n //\n html.style.fontFamily = store.font().family;\n html.style.fontSize = store.font().size;\n //\n await _applyThemePalette(store.currentPalette());\n };\n // Update screen size based on window width\n const _updateScreenSize = () => {\n const width = window.innerWidth;\n let newScreenSize;\n if (width <= 600) {\n newScreenSize = AXPScreenSize.Small;\n }\n else if (width <= 1024) {\n newScreenSize = AXPScreenSize.Medium;\n }\n else {\n newScreenSize = AXPScreenSize.Large;\n }\n if (newScreenSize !== store.screenSize()) {\n patchState(store, { screenSize: newScreenSize });\n if (!store.isLarge()) {\n patchState(store, { sideMenuState: AXPSideMenuState.Closed });\n settingService.scope(AXPPlatformScope.User).set(AXPThemeLayoutSetting.SideMenuStatus, store.sideMenuState());\n }\n }\n };\n const _setOverlayLoading = async (value, delay = 0) => {\n if (value) {\n let timeoutId = null;\n if (delay > 0) {\n timeoutId = window.setTimeout(() => {\n patchState(store, { overlayLoadingTaskCount: store.overlayLoadingTaskCount() + 1 });\n patchState(store, { overlayLoading: true });\n }, delay);\n }\n else {\n patchState(store, { overlayLoadingTaskCount: store.overlayLoadingTaskCount() + 1 });\n patchState(store, { overlayLoading: true });\n }\n // Store timeout ID to clear it if the loading ends before delay\n store._loadingTimeoutId = timeoutId;\n }\n else {\n if (store.overlayLoadingTaskCount() > 0) {\n patchState(store, { overlayLoadingTaskCount: store.overlayLoadingTaskCount() - 1 });\n }\n if (store.overlayLoadingTaskCount() === 0) {\n const timeoutId = store._loadingTimeoutId;\n if (timeoutId) {\n clearTimeout(timeoutId);\n store._loadingTimeoutId = null;\n }\n timer(minimumDisplayTime).subscribe(() => {\n if (store.overlayLoadingTaskCount() === 0) {\n patchState(store, { overlayLoading: false });\n }\n });\n }\n }\n };\n const _setNavigationLoading = (value, delay) => {\n if (value) {\n patchState(store, { navigationLoadingTaskCount: store.navigationLoadingTaskCount() + 1 });\n patchState(store, { navigationLoading: true });\n }\n else {\n if (store.navigationLoadingTaskCount() > 0) {\n patchState(store, { navigationLoadingTaskCount: store.navigationLoadingTaskCount() - 1 });\n }\n if (store.navigationLoadingTaskCount() === 0) {\n timer(minimumDisplayTime).subscribe(() => {\n if (store.navigationLoadingTaskCount() === 0) {\n patchState(store, { navigationLoading: false });\n }\n });\n }\n }\n };\n // Helper method to apply a cached theme palette\n const _applyThemePalette = async (name) => {\n // TODO: Get the path from the palette provider token\n const path = `/assets/themes/palettes/css/${name}.css`;\n // Check if the current theme is already applied\n const existingStyle = document.querySelector(`style[data-theme=\"${name}\"]`);\n if (existingStyle) {\n return; // Theme is already applied, no need to reapply\n }\n _setNavigationLoading(true);\n try {\n // Fetch the CSS file via HttpClient\n const cssText = await firstValueFrom(http.get(path, { responseType: 'text' }));\n // Create a new <style> tag and apply the CSS\n const style = document.createElement('style');\n style.setAttribute('data-theme', name);\n style.textContent = cssText;\n document.head.appendChild(style);\n // Remove any other outdated theme styles\n document.querySelectorAll('style[data-theme]').forEach(existing => {\n if (existing !== style) {\n existing.remove();\n }\n });\n }\n catch (error) {\n console.error(`Error loading theme CSS:`, error);\n }\n finally {\n _setNavigationLoading(false);\n }\n };\n const minimumDisplayTime = 500; // milliseconds\n return {\n // Change theme and update HTML class\n changeThemeMode(theme) {\n settingService.scope(AXPPlatformScope.User).set(AXPThemeLayoutSetting.Mode, theme);\n patchState(store, { currentMode: theme });\n _updateHtmlClass();\n },\n // Open side menu\n openSideMenu() {\n patchState(store, { sideMenuState: AXPSideMenuState.Opened });\n settingService.scope(AXPPlatformScope.User).set(AXPThemeLayoutSetting.SideMenuStatus, AXPSideMenuState.Opened);\n },\n // Close side menu\n closeSideMenu() {\n patchState(store, { sideMenuState: AXPSideMenuState.Closed });\n settingService.scope(AXPPlatformScope.User).set(AXPThemeLayoutSetting.SideMenuStatus, AXPSideMenuState.Closed);\n },\n // Set side menu width\n setSideMenuWidth(width) {\n patchState(store, { sideMenuWidth: width });\n settingService.scope(AXPPlatformScope.User).set(AXPThemeLayoutSetting.SideMenuWidth, width);\n },\n // Toggle side menu state\n toggleSideMenu() {\n const newSideMenuState = store.sideMenuState() === AXPSideMenuState.Opened ? AXPSideMenuState.Closed : AXPSideMenuState.Opened;\n patchState(store, { sideMenuState: newSideMenuState });\n settingService.scope(AXPPlatformScope.User).set(AXPThemeLayoutSetting.SideMenuStatus, newSideMenuState);\n },\n // Set navigation loading state with a task counter\n setNavigationLoading(value, delay) {\n _setNavigationLoading(value, delay);\n },\n // Set overlay loading state with a task counter\n setOverlayLoading(value, delay) {\n _setOverlayLoading(value, delay);\n },\n async loadSettings() {\n await _applySettings();\n },\n // Set up event listener for system theme changes\n _setupSystemColorListener() {\n const mediaQueryList = window.matchMedia('(prefers-color-scheme: dark)');\n const listener = (e) => {\n patchState(store, { systemThemeMode: e.matches ? AXPThemeMode.Dark : AXPThemeMode.Light });\n _updateHtmlClass();\n };\n mediaQueryList.addEventListener('change', listener);\n return listener;\n },\n // Remove event listener for system theme changes\n _removeSystemColorListener(listener) {\n const mediaQueryList = window.matchMedia('(prefers-color-scheme: dark)');\n mediaQueryList.removeEventListener('change', listener);\n },\n // Set up event listener for window resize\n _setupResizeListener() {\n const subscription = fromEvent(window, 'resize')\n .pipe(debounceTime(250) // 250ms debounce delay\n )\n .subscribe(() => {\n _updateScreenSize();\n });\n return subscription;\n },\n // Remove event listener for window resize\n _removeResizeListener(subscription) {\n if (subscription) {\n subscription.unsubscribe();\n }\n },\n };\n}), \n// Lifecycle Hooks\nwithHooks((store, settingService = inject(AXPSettingService)) => ({\n onInit() {\n //\n settingService.onChanged.pipe(filter(c => c.scope == AXPPlatformScope.User)).subscribe(async (changes) => {\n const keys = Object.values(AXPThemeLayoutSetting);\n if (changes.keys.some((key) => keys.includes(key))) {\n await store.loadSettings();\n }\n });\n //\n settingService.onLoaded.subscribe(async () => {\n await store.loadSettings();\n });\n // Set up event listener for system theme changes\n const listener = store._setupSystemColorListener();\n patchState(store, { _listener: listener });\n // Set up event listener for window resize\n const resizeSubscription = store._setupResizeListener();\n patchState(store, { _resizeListener: resizeSubscription });\n },\n onDestroy() {\n // Clean up event listeners when store is destroyed\n const { _listener: listener, _resizeListener: resizeListener } = store;\n if (listener) {\n store._removeSystemColorListener(listener);\n }\n if (resizeListener instanceof Subscription) {\n store._removeResizeListener(resizeListener);\n }\n },\n})));\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdGhlbWVzL3NoYXJlZC9zcmMvbGliL3RoZW1lLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pHLE9BQU8sRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakgsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXpELDBFQUEwRTtBQUMxRSxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxXQUFXLENBQzlDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRTtBQUV0QixnQkFBZ0I7QUFDaEIsU0FBUyxDQUFDLEdBQUcsRUFBRTtJQUViLE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsOEJBQThCLENBQUMsQ0FBQyxPQUFPLENBQUM7SUFFL0UsaURBQWlEO0lBQ2pE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LENBQUMsQ0FBQztRQUM3QyxDQUFDO1FBQ0QsSUFBSSxjQUFjLFlBQVksWUFBWSxFQUFFLENBQUM7WUFDM0MsS0FBSyxDQUFDLHFCQUFxQixDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQzlDLENBQUM7SUFDSCxDQUFDO0NBQ0YsQ0FBQyxDQUFDLENBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUFNldHRpbmdTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgY29tcHV0ZWQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgcGF0Y2hTdGF0ZSwgc2lnbmFsU3RvcmUsIHdpdGhDb21wdXRlZCwgd2l0aEhvb2tzLCB3aXRoTWV0aG9kcywgd2l0aFN0YXRlIH0gZnJvbSAnQG5ncngvc2lnbmFscyc7XG5pbXBvcnQgeyBmaWx0ZXIsIGZpcnN0VmFsdWVGcm9tLCB0aW1lciwgZnJvbUV2ZW50LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEFYUFRoZW1lTGF5b3V0U2V0dGluZyB9IGZyb20gJy4vc2V0dGluZ3Mua2V5cyc7XG5pbXBvcnQgeyBBWFBUaGVtZU1vZGUsIEFYUFNjcmVlblNpemUsIEFYUERldmljZVR5cGUsIEFYUFNpZGVNZW51U3RhdGUsIEFYUE1lbnVPcmllbnRhdGlvbiB9IGZyb20gJy4vdGhlbWUudHlwZXMnO1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEFYUFBsYXRmb3JtU2NvcGUgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvcmUnO1xuaW1wb3J0IHsgQVhQU2Vzc2lvblNlcnZpY2UsIEFYUFNlc3Npb25TdGF0dXMgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2F1dGgnO1xuLy8gVGhlbWVTdG9yZSAtIE1hbmFnZXMgdGhlbWUgc2V0dGluZ3MsIHN5c3RlbSBjaGFuZ2VzLCBhbmQgbG9hZGluZyBzdGF0ZXNcbmV4cG9ydCBjb25zdCBBWFBMYXlvdXRUaGVtZVNlcnZpY2UgPSBzaWduYWxTdG9yZShcbiAgeyBwcm92aWRlZEluOiAncm9vdCcgfSxcblxuICAvLyBJbml0aWFsIFN0YXRlXG4gIHdpdGhTdGF0ZSgoKSA9PiB7XG5cbiAgICBjb25zdCBpc1N5c3RlbURhcmsgPSB3aW5kb3cubWF0Y2hNZWRpYSgnKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKScpLm1hdGNoZXM7XG5cbiAgICAvLyBIZWxwZXIgZnVuY3Rpb24gdG8gZ2V0IHRoZSBpbml0aWFsIHNjcmVlbiBzaXplXG4gICAgY29uc3QgZ2V0U2NyZWVuU2l6ZSA9ICgpOiBBWFBTY3JlZW5TaXplID0+IHtcbiAgICAgIGNvbnN0IHdpZHRoID0gd2luZG93LmlubmVyV2lkdGg7XG4gICAgICBpZiAod2lkdGggPD0gNjAwKSByZXR1cm4gQVhQU2NyZWVuU2l6ZS5TbWFsbDtcbiAgICAgIGlmICh3aWR0aCA8PSAxMDI0KSByZXR1cm4gQVhQU2NyZWVuU2l6ZS5NZWRpdW07XG4gICAgICByZXR1cm4gQVhQU2NyZWVuU2l6ZS5MYXJnZTtcbiAgICB9O1xuXG4gICAgLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGRldGVybWluZSBkZXZpY2UgdHlwZVxuICAgIGNvbnN0IGdldERldmljZVR5cGUgPSAoKTogQVhQRGV2aWNlVHlwZSA9PiB7XG4gICAgICBjb25zdCB1c2VyQWdlbnQgPSBuYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCk7XG4gICAgICBpZiAoL21vYmlsZXxhbmRyb2lkfGlwaG9uZXxpcGFkLy50ZXN0KHVzZXJBZ2VudCkpIHtcbiAgICAgICAgcmV0dXJuIEFYUERldmljZVR5cGUuTW9iaWxlO1xuICAgICAgfSBlbHNlIGlmICgvdGFibGV0Ly50ZXN0KHVzZXJBZ2VudCkpIHtcbiAgICAgICAgcmV0dXJuIEFYUERldmljZVR5cGUuVGFibGV0O1xuICAgICAgfVxuICAgICAgcmV0dXJuIEFYUERldmljZVR5cGUuRGVza3RvcDtcbiAgICB9O1xuXG4gICAgLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGRldGVybWluZSBpZiB0aGUgZGV2aWNlIHN1cHBvcnRzIHRvdWNoXG4gICAgY29uc3QgaXNUb3VjaERldmljZSA9ICgpOiBib29sZWFuID0+IHtcbiAgICAgIHJldHVybiAnb250b3VjaHN0YXJ0JyBpbiB3aW5kb3cgfHwgbmF2aWdhdG9yLm1heFRvdWNoUG9pbnRzID4gMDtcbiAgICB9O1xuXG4gICAgY29uc3Qgc3RhdGUgPSB7XG4gICAgICBjdXJyZW50TW9kZTogQVhQVGhlbWVNb2RlLlN5c3RlbSxcbiAgICAgIGN1cnJlbnRQYWxldHRlOiAnZGVmYXVsdCcsXG4gICAgICBzeXN0ZW1UaGVtZU1vZGU6IChpc1N5c3RlbURhcmsgPyBBWFBUaGVtZU1vZGUuRGFyayA6IEFYUFRoZW1lTW9kZS5MaWdodCkgYXMgQVhQVGhlbWVNb2RlLFxuICAgICAgZm9udDoge1xuICAgICAgICBmYW1pbHk6ICdzeXN0ZW0tdWknLFxuICAgICAgICBzaXplOiAnbWVkaXVtJ1xuICAgICAgfSxcbiAgICAgIHNjcmVlblNpemU6IGdldFNjcmVlblNpemUoKSxcbiAgICAgIGRldmljZVR5cGU6IGdldERldmljZVR5cGUoKSxcbiAgICAgIGlzVG91Y2hEZXZpY2U6IGlzVG91Y2hEZXZpY2UoKSxcbiAgICAgIG92ZXJsYXlMb2FkaW5nOiBmYWxzZSxcbiAgICAgIG5hdmlnYXRpb25Mb2FkaW5nOiBmYWxzZSxcbiAgICAgIG92ZXJsYXlMb2FkaW5nVGFza0NvdW50OiAwLFxuICAgICAgbmF2aWdhdGlvbkxvYWRpbmdUYXNrQ291bnQ6IDAsXG4gICAgICBzaWRlTWVudVN0YXRlOiAoZ2V0U2NyZWVuU2l6ZSgpID09PSBBWFBTY3JlZW5TaXplLkxhcmdlID8gQVhQU2lkZU1lbnVTdGF0ZS5PcGVuZWQgOiBBWFBTaWRlTWVudVN0YXRlLkNsb3NlZCkgYXMgQVhQU2lkZU1lbnVTdGF0ZSxcbiAgICAgIHNpZGVNZW51V2lkdGg6IDI4OCxcbiAgICAgIG1lbnVPcmllbnRhdGlvbjogJ3ZlcnRpY2FsJyBhcyBBWFBNZW51T3JpZW50YXRpb24sXG4gICAgICBfbGlzdGVuZXI6IG51bGwgYXMgKChlOiBNZWRpYVF1ZXJ5TGlzdEV2ZW50KSA9PiB2b2lkKSB8IG51bGwsXG4gICAgICBfcmVzaXplTGlzdGVuZXI6IG51bGwgYXMgU3Vic2NyaXB0aW9uIHwgbnVsbCxcbiAgICB9O1xuXG4gICAgcmV0dXJuIHN0YXRlO1xuICB9KSxcblxuICAvLyBDb21wdXRlZCBTaWduYWxzXG4gIHdpdGhDb21wdXRlZCgoeyBjdXJyZW50TW9kZTogY3VycmVudFRoZW1lLCBzeXN0ZW1UaGVtZU1vZGU6IHN5c3RlbVRoZW1lLCBzY3JlZW5TaXplLCBkZXZpY2VUeXBlLCBpc1RvdWNoRGV2aWNlLCBzaWRlTWVudVN0YXRlLCBvdmVybGF5TG9hZGluZywgbmF2aWdhdGlvbkxvYWRpbmcsIG1lbnVPcmllbnRhdGlvbiB9KSA9PiAoe1xuICAgIGlzRGFya01vZGU6IGNvbXB1dGVkKFxuICAgICAgKCkgPT5cbiAgICAgICAgY3VycmVudFRoZW1lKCkgPT09IEFYUFRoZW1lTW9kZS5EYXJrIHx8XG4gICAgICAgIChjdXJyZW50VGhlbWUoKSA9PT0gQVhQVGhlbWVNb2RlLlN5c3RlbSAmJiBzeXN0ZW1UaGVtZSgpID09PSBBWFBUaGVtZU1vZGUuRGFyaylcbiAgICApLFxuICAgIGlzTGlnaHRNb2RlOiBjb21wdXRlZChcbiAgICAgICgpID0+XG4gICAgICAgIGN1cnJlbnRUaGVtZSgpID09PSBBWFBUaGVtZU1vZGUuTGlnaHQgfHxcbiAgICAgICAgKGN1cnJlbnRUaGVtZSgpID09PSBBWFBUaGVtZU1vZGUuU3lzdGVtICYmIHN5c3RlbVRoZW1lKCkgPT09IEFYUFRoZW1lTW9kZS5MaWdodClcbiAgICApLFxuICAgIGlzU3lzdGVtTW9kZTogY29tcHV0ZWQoKCkgPT4gY3VycmVudFRoZW1lKCkgPT09IEFYUFRoZW1lTW9kZS5TeXN0ZW0pLFxuICAgIGlzU2lkZU1lbnVPcGVuOiBjb21wdXRlZCgoKSA9PiBzaWRlTWVudVN0YXRlKCkgPT09IEFYUFNpZGVNZW51U3RhdGUuT3BlbmVkKSxcbiAgICBpc1NpZGVNZW51T3ZlcmxheTogY29tcHV0ZWQoKCkgPT4gc2NyZWVuU2l6ZSgpID09PSBBWFBTY3JlZW5TaXplLlNtYWxsIHx8IHNjcmVlblNpemUoKSA9PT0gQVhQU2NyZWVuU2l6ZS5NZWRpdW0pLFxuICAgIGlzU21hbGw6IGNvbXB1dGVkKCgpID0+IHNjcmVlblNpemUoKSA9PT0gQVhQU2NyZWVuU2l6ZS5TbWFsbCksXG4gICAgaXNNZWRpdW06IGNvbXB1dGVkKCgpID0+IHNjcmVlblNpemUoKSA9PT0gQVhQU2NyZWVuU2l6ZS5NZWRpdW0pLFxuICAgIGlzTGFyZ2U6IGNvbXB1dGVkKCgpID0+IHNjcmVlblNpemUoKSA9PT0gQVhQU2NyZWVuU2l6ZS5MYXJnZSksXG4gICAgaXNNb2JpbGVEZXZpY2U6IGNvbXB1dGVkKCgpID0+IGRldmljZVR5cGUoKSA9PT0gQVhQRGV2aWNlVHlwZS5Nb2JpbGUpLFxuICAgIGlzVGFibGV0RGV2aWNlOiBjb21wdXRlZCgoKSA9PiBkZXZpY2VUeXBlKCkgPT09IEFYUERldmljZVR5cGUuVGFibGV0KSxcbiAgICBpc0Rlc2t0b3BEZXZpY2U6IGNvbXB1dGVkKCgpID0+IGRldmljZVR5cGUoKSA9PT0gQVhQRGV2aWNlVHlwZS5EZXNrdG9wKSxcbiAgICBpc1RvdWNoU2NyZWVuOiBjb21wdXRlZCgoKSA9PiBpc1RvdWNoRGV2aWNlKCkpLFxuICAgIGlzT3ZlcmxheUxvYWRpbmc6IGNvbXB1dGVkKCgpID0+IG92ZXJsYXlMb2FkaW5nKCkpLFxuICAgIGlzTmF2aWdhdGlvbkxvYWRpbmc6IGNvbXB1dGVkKCgpID0+IG5hdmlnYXRpb25Mb2FkaW5nKCkpLFxuICAgIGlzTWVudUhvcml6b250YWw6IGNvbXB1dGVkKCgpID0+IG1lbnVPcmllbnRhdGlvbigpID09PSBBWFBNZW51T3JpZW50YXRpb24uSG9yaXpvbnRhbCksXG4gIH0pKSxcblxuICAvLyBNZXRob2RzIGZvciBTdGF0ZSBNYW5hZ2VtZW50XG4gIHdpdGhNZXRob2RzKChzdG9yZSwgaHR0cCA9IGluamVjdChIdHRwQ2xpZW50KSwgc2V0dGluZ1NlcnZpY2UgPSBpbmplY3QoQVhQU2V0dGluZ1NlcnZpY2UpKSA9PiB7XG5cbiAgICBjb25zdCBfYXBwbHlTZXR0aW5ncyA9IGFzeW5jICgpID0+IHtcbiAgICAgIC8vIEluaXRpYWxpemUgdGhlbWUgYW5kIHNpZGUgbWVudSBzZXR0aW5nIGZyb20gc3RvcmFnZVxuICAgICAgY29uc3Qgc2V0dGluZ1RoZW1lTW9kZSA9ICgoYXdhaXQgc2V0dGluZ1NlcnZpY2UuZ2V0KEFYUFRoZW1lTGF5b3V0U2V0dGluZy5Nb2RlKSkgYXMgQVhQVGhlbWVNb2RlKSA/PyBBWFBUaGVtZU1vZGUuTGlnaHQ7XG4gICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7IGN1cnJlbnRNb2RlOiBzZXR0aW5nVGhlbWVNb2RlIH0pO1xuICAgICAgLy9cbiAgICAgIGNvbnN0IHNldHRpbmdUaGVtZVBhbGxldGUgPSAoKGF3YWl0IHNldHRpbmdTZXJ2aWNlLmdldChBWFBUaGVtZUxheW91dFNldHRpbmcuUGFsZXR0ZSkpIGFzIHN0cmluZykgPz8gJ2RlZmF1bHQnO1xuICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwgeyBjdXJyZW50UGFsZXR0ZTogc2V0dGluZ1RoZW1lUGFsbGV0ZSB9KTtcbiAgICAgIC8vXG4gICAgICBjb25zdCBzZXR0aW5nU2lkZU1lbnUgPSAoKGF3YWl0IHNldHRpbmdTZXJ2aWNlLmdldChBWFBUaGVtZUxheW91dFNldHRpbmcuU2lkZU1lbnVTdGF0dXMpKSBhcyBBWFBTaWRlTWVudVN0YXRlKSA/PyBzdG9yZS5zaWRlTWVudVN0YXRlKCk7XG4gICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7IHNpZGVNZW51U3RhdGU6IHNldHRpbmdTaWRlTWVudSB9KTtcbiAgICAgIC8vXG4gICAgICBjb25zdCBzZXR0aW5nTWVudU9yaWVudGF0aW9uID0gKChhd2FpdCBzZXR0aW5nU2VydmljZS5nZXQoQVhQVGhlbWVMYXlvdXRTZXR0aW5nLk1lbnVPcmllbnRhdGlvbikpIGFzIEFYUE1lbnVPcmllbnRhdGlvbikgPz8gc3RvcmUubWVudU9yaWVudGF0aW9uKCk7XG4gICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7IG1lbnVPcmllbnRhdGlvbjogc2V0dGluZ01lbnVPcmllbnRhdGlvbiB9KTtcbiAgICAgIC8vICBcbiAgICAgIGNvbnN0IGZvbnRGYW1pbHkgPSBhd2FpdCBzZXR0aW5nU2VydmljZS5nZXQoQVhQVGhlbWVMYXlvdXRTZXR0aW5nLkZvbnQpO1xuICAgICAgY29uc3QgZm9udFNpemUgPSBhd2FpdCBzZXR0aW5nU2VydmljZS5nZXQoQVhQVGhlbWVMYXlvdXRTZXR0aW5nLkZvbnRTaXplKTtcbiAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgZm9udDogeyBmYW1pbHk6IGZvbnRGYW1pbHksIHNpemU6IGZvbnRTaXplIH0gfSk7XG4gICAgICAvL1xuICAgICAgY29uc3Qgc2lkZU1lbnVXaWR0aCA9IGF3YWl0IHNldHRpbmdTZXJ2aWNlLmdldChBWFBUaGVtZUxheW91dFNldHRpbmcuU2lkZU1lbnVXaWR0aCk7XG4gICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7IHNpZGVNZW51V2lkdGggfSk7XG5cbiAgICAgIGF3YWl0IF91cGRhdGVIdG1sQ2xhc3MoKTtcbiAgICB9XG5cbiAgICAvLyBVcGRhdGUgSFRNTCBjbGFzcyBiYXNlZCBvbiB0aGVtZVxuICAgIGNvbnN0IF91cGRhdGVIdG1sQ2xhc3MgPSBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBodG1sID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2h0bWwnKVswXTtcbiAgICAgIC8vXG4gICAgICBzdG9yZS5pc0RhcmtNb2RlKCkgPyBodG1sLmNsYXNzTGlzdC5hZGQoJ2F4LWRhcmsnKSA6IGh0bWwuY2xhc3NMaXN0LnJlbW92ZSgnYXgtZGFyaycpO1xuICAgICAgLy9cbiAgICAgIGh0bWwuc3R5bGUuZm9udEZhbWlseSA9IHN0b3JlLmZvbnQoKS5mYW1pbHk7XG4gICAgICBodG1sLnN0eWxlLmZvbnRTaXplID0gc3RvcmUuZm9udCgpLnNpemU7XG4gICAgICAvL1xuICAgICAgYXdhaXQgX2FwcGx5VGhlbWVQYWxldHRlKHN0b3JlLmN1cnJlbnRQYWxldHRlKCkpXG4gICAgfTtcblxuICAgIC8vIFVwZGF0ZSBzY3JlZW4gc2l6ZSBiYXNlZCBvbiB3aW5kb3cgd2lkdGhcbiAgICBjb25zdCBfdXBkYXRlU2NyZWVuU2l6ZSA9ICgpID0+IHtcbiAgICAgIGNvbnN0IHdpZHRoID0gd2luZG93LmlubmVyV2lkdGg7XG4gICAgICBsZXQgbmV3U2NyZWVuU2l6ZTogQVhQU2NyZWVuU2l6ZTtcblxuICAgICAgaWYgKHdpZHRoIDw9IDYwMCkge1xuICAgICAgICBuZXdTY3JlZW5TaXplID0gQVhQU2NyZWVuU2l6ZS5TbWFsbDtcbiAgICAgIH0gZWxzZSBpZiAod2lkdGggPD0gMTAyNCkge1xuICAgICAgICBuZXdTY3JlZW5TaXplID0gQVhQU2NyZWVuU2l6ZS5NZWRpdW07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBuZXdTY3JlZW5TaXplID0gQVhQU2NyZWVuU2l6ZS5MYXJnZTtcbiAgICAgIH1cblxuICAgICAgaWYgKG5ld1NjcmVlblNpemUgIT09IHN0b3JlLnNjcmVlblNpemUoKSkge1xuICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7IHNjcmVlblNpemU6IG5ld1NjcmVlblNpemUgfSk7XG4gICAgICAgIGlmICghc3RvcmUuaXNMYXJnZSgpKSB7XG4gICAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwgeyBzaWRlTWVudVN0YXRlOiBBWFBTaWRlTWVudVN0YXRlLkNsb3NlZCB9KTtcbiAgICAgICAgICBzZXR0aW5nU2VydmljZS5zY29wZShBWFBQbGF0Zm9ybVNjb3BlLlVzZXIpLnNldChBWFBUaGVtZUxheW91dFNldHRpbmcuU2lkZU1lbnVTdGF0dXMsIHN0b3JlLnNpZGVNZW51U3RhdGUoKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9O1xuXG4gICAgY29uc3QgX3NldE92ZXJsYXlMb2FkaW5nID0gYXN5bmMgKHZhbHVlOiBib29sZWFuLCBkZWxheTogbnVtYmVyID0gMCk6IFByb21pc2U8dm9pZD4gPT4ge1xuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIGxldCB0aW1lb3V0SWQ6IG51bWJlciB8IG51bGwgPSBudWxsO1xuXG4gICAgICAgIGlmIChkZWxheSA+IDApIHtcbiAgICAgICAgICB0aW1lb3V0SWQgPSB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7IG92ZXJsYXlMb2FkaW5nVGFza0NvdW50OiBzdG9yZS5vdmVybGF5TG9hZGluZ1Rhc2tDb3VudCgpICsgMSB9KTtcbiAgICAgICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgb3ZlcmxheUxvYWRpbmc6IHRydWUgfSk7XG4gICAgICAgICAgfSwgZGVsYXkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgb3ZlcmxheUxvYWRpbmdUYXNrQ291bnQ6IHN0b3JlLm92ZXJsYXlMb2FkaW5nVGFza0NvdW50KCkgKyAxIH0pO1xuICAgICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgb3ZlcmxheUxvYWRpbmc6IHRydWUgfSk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTdG9yZSB0aW1lb3V0IElEIHRvIGNsZWFyIGl0IGlmIHRoZSBsb2FkaW5nIGVuZHMgYmVmb3JlIGRlbGF5XG4gICAgICAgIChzdG9yZSBhcyBhbnkpLl9sb2FkaW5nVGltZW91dElkID0gdGltZW91dElkO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKHN0b3JlLm92ZXJsYXlMb2FkaW5nVGFza0NvdW50KCkgPiAwKSB7XG4gICAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwgeyBvdmVybGF5TG9hZGluZ1Rhc2tDb3VudDogc3RvcmUub3ZlcmxheUxvYWRpbmdUYXNrQ291bnQoKSAtIDEgfSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoc3RvcmUub3ZlcmxheUxvYWRpbmdUYXNrQ291bnQoKSA9PT0gMCkge1xuICAgICAgICAgIGNvbnN0IHRpbWVvdXRJZCA9IChzdG9yZSBhcyBhbnkpLl9sb2FkaW5nVGltZW91dElkO1xuICAgICAgICAgIGlmICh0aW1lb3V0SWQpIHtcbiAgICAgICAgICAgIGNsZWFyVGltZW91dCh0aW1lb3V0SWQpO1xuICAgICAgICAgICAgKHN0b3JlIGFzIGFueSkuX2xvYWRpbmdUaW1lb3V0SWQgPSBudWxsO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHRpbWVyKG1pbmltdW1EaXNwbGF5VGltZSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIGlmIChzdG9yZS5vdmVybGF5TG9hZGluZ1Rhc2tDb3VudCgpID09PSAwKSB7XG4gICAgICAgICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgb3ZlcmxheUxvYWRpbmc6IGZhbHNlIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfTtcblxuXG4gICAgY29uc3QgX3NldE5hdmlnYXRpb25Mb2FkaW5nID0gKHZhbHVlOiBib29sZWFuLCBkZWxheT86IG51bWJlcikgPT4ge1xuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgbmF2aWdhdGlvbkxvYWRpbmdUYXNrQ291bnQ6IHN0b3JlLm5hdmlnYXRpb25Mb2FkaW5nVGFza0NvdW50KCkgKyAxIH0pO1xuICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7IG5hdmlnYXRpb25Mb2FkaW5nOiB0cnVlIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKHN0b3JlLm5hdmlnYXRpb25Mb2FkaW5nVGFza0NvdW50KCkgPiAwKSB7XG4gICAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwgeyBuYXZpZ2F0aW9uTG9hZGluZ1Rhc2tDb3VudDogc3RvcmUubmF2aWdhdGlvbkxvYWRpbmdUYXNrQ291bnQoKSAtIDEgfSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHN0b3JlLm5hdmlnYXRpb25Mb2FkaW5nVGFza0NvdW50KCkgPT09IDApIHtcbiAgICAgICAgICB0aW1lcihtaW5pbXVtRGlzcGxheVRpbWUpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICBpZiAoc3RvcmUubmF2aWdhdGlvbkxvYWRpbmdUYXNrQ291bnQoKSA9PT0gMCkge1xuICAgICAgICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7IG5hdmlnYXRpb25Mb2FkaW5nOiBmYWxzZSB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuXG5cbiAgICAvLyBIZWxwZXIgbWV0aG9kIHRvIGFwcGx5IGEgY2FjaGVkIHRoZW1lIHBhbGV0dGVcbiAgICBjb25zdCBfYXBwbHlUaGVtZVBhbGV0dGUgPSBhc3luYyAobmFtZTogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiA9PiB7XG4gICAgICAvLyBUT0RPOiBHZXQgdGhlIHBhdGggZnJvbSB0aGUgcGFsZXR0ZSBwcm92aWRlciB0b2tlblxuICAgICAgY29uc3QgcGF0aCA9IGAvYXNzZXRzL3RoZW1lcy9wYWxldHRlcy9jc3MvJHtuYW1lfS5jc3NgO1xuICAgICAgLy8gQ2hlY2sgaWYgdGhlIGN1cnJlbnQgdGhlbWUgaXMgYWxyZWFkeSBhcHBsaWVkXG4gICAgICBjb25zdCBleGlzdGluZ1N0eWxlID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcjxIVE1MU3R5bGVFbGVtZW50Pihgc3R5bGVbZGF0YS10aGVtZT1cIiR7bmFtZX1cIl1gKTtcbiAgICAgIGlmIChleGlzdGluZ1N0eWxlKSB7XG4gICAgICAgIHJldHVybjsgLy8gVGhlbWUgaXMgYWxyZWFkeSBhcHBsaWVkLCBubyBuZWVkIHRvIHJlYXBwbHlcbiAgICAgIH1cblxuICAgICAgX3NldE5hdmlnYXRpb25Mb2FkaW5nKHRydWUpO1xuXG4gICAgICB0cnkge1xuICAgICAgICAvLyBGZXRjaCB0aGUgQ1NTIGZpbGUgdmlhIEh0dHBDbGllbnRcbiAgICAgICAgY29uc3QgY3NzVGV4dCA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKGh0dHAuZ2V0KHBhdGghLCB7IHJlc3BvbnNlVHlwZTogJ3RleHQnIH0pKTtcblxuICAgICAgICAvLyBDcmVhdGUgYSBuZXcgPHN0eWxlPiB0YWcgYW5kIGFwcGx5IHRoZSBDU1NcbiAgICAgICAgY29uc3Qgc3R5bGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzdHlsZScpO1xuICAgICAgICBzdHlsZS5zZXRBdHRyaWJ1dGUoJ2RhdGEtdGhlbWUnLCBuYW1lKTtcbiAgICAgICAgc3R5bGUudGV4dENvbnRlbnQgPSBjc3NUZXh0ITtcbiAgICAgICAgZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChzdHlsZSk7XG5cbiAgICAgICAgLy8gUmVtb3ZlIGFueSBvdGhlciBvdXRkYXRlZCB0aGVtZSBzdHlsZXNcbiAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbDxIVE1MU3R5bGVFbGVtZW50Pignc3R5bGVbZGF0YS10aGVtZV0nKS5mb3JFYWNoKGV4aXN0aW5nID0+IHtcbiAgICAgICAgICBpZiAoZXhpc3RpbmcgIT09IHN0eWxlKSB7XG4gICAgICAgICAgICBleGlzdGluZy5yZW1vdmUoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICBjb25zb2xlLmVycm9yKGBFcnJvciBsb2FkaW5nIHRoZW1lIENTUzpgLCBlcnJvcik7XG4gICAgICB9IGZpbmFsbHkge1xuICAgICAgICBfc2V0TmF2aWdhdGlvbkxvYWRpbmcoZmFsc2UpO1xuICAgICAgfVxuICAgIH07XG5cblxuICAgIGNvbnN0IG1pbmltdW1EaXNwbGF5VGltZSA9IDUwMDsgLy8gbWlsbGlzZWNvbmRzXG5cbiAgICByZXR1cm4ge1xuICAgICAgLy8gQ2hhbmdlIHRoZW1lIGFuZCB1cGRhdGUgSFRNTCBjbGFzc1xuICAgICAgY2hhbmdlVGhlbWVNb2RlKHRoZW1lOiBBWFBUaGVtZU1vZGUpIHtcbiAgICAgICAgc2V0dGluZ1NlcnZpY2Uuc2NvcGUoQVhQUGxhdGZvcm1TY29wZS5Vc2VyKS5zZXQoQVhQVGhlbWVMYXlvdXRTZXR0aW5nLk1vZGUsIHRoZW1lKTtcbiAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwgeyBjdXJyZW50TW9kZTogdGhlbWUgfSk7XG4gICAgICAgIF91cGRhdGVIdG1sQ2xhc3MoKTtcbiAgICAgIH0sXG5cbiAgICAgIC8vIE9wZW4gc2lkZSBtZW51XG4gICAgICBvcGVuU2lkZU1lbnUoKSB7XG4gICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgc2lkZU1lbnVTdGF0ZTogQVhQU2lkZU1lbnVTdGF0ZS5PcGVuZWQgfSk7XG4gICAgICAgIHNldHRpbmdTZXJ2aWNlLnNjb3BlKEFYUFBsYXRmb3JtU2NvcGUuVXNlcikuc2V0KEFYUFRoZW1lTGF5b3V0U2V0dGluZy5TaWRlTWVudVN0YXR1cywgQVhQU2lkZU1lbnVTdGF0ZS5PcGVuZWQpO1xuICAgICAgfSxcblxuICAgICAgLy8gQ2xvc2Ugc2lkZSBtZW51XG4gICAgICBjbG9zZVNpZGVNZW51KCkge1xuICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7IHNpZGVNZW51U3RhdGU6IEFYUFNpZGVNZW51U3RhdGUuQ2xvc2VkIH0pO1xuICAgICAgICBzZXR0aW5nU2VydmljZS5zY29wZShBWFBQbGF0Zm9ybVNjb3BlLlVzZXIpLnNldChBWFBUaGVtZUxheW91dFNldHRpbmcuU2lkZU1lbnVTdGF0dXMsIEFYUFNpZGVNZW51U3RhdGUuQ2xvc2VkKTtcbiAgICAgIH0sXG5cbiAgICAgIC8vIFNldCBzaWRlIG1lbnUgd2lkdGhcbiAgICAgIHNldFNpZGVNZW51V2lkdGgod2lkdGg6IG51bWJlcikge1xuICAgICAgICBwYXRjaFN0YXRlKHN0b3JlLCB7IHNpZGVNZW51V2lkdGg6IHdpZHRoIH0pO1xuICAgICAgICBzZXR0aW5nU2VydmljZS5zY29wZShBWFBQbGF0Zm9ybVNjb3BlLlVzZXIpLnNldChBWFBUaGVtZUxheW91dFNldHRpbmcuU2lkZU1lbnVXaWR0aCwgd2lkdGgpO1xuICAgICAgfSxcblxuICAgICAgLy8gVG9nZ2xlIHNpZGUgbWVudSBzdGF0ZVxuICAgICAgdG9nZ2xlU2lkZU1lbnUoKSB7XG4gICAgICAgIGNvbnN0IG5ld1NpZGVNZW51U3RhdGUgPSBzdG9yZS5zaWRlTWVudVN0YXRlKCkgPT09IEFYUFNpZGVNZW51U3RhdGUuT3BlbmVkID8gQVhQU2lkZU1lbnVTdGF0ZS5DbG9zZWQgOiBBWFBTaWRlTWVudVN0YXRlLk9wZW5lZDtcbiAgICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwgeyBzaWRlTWVudVN0YXRlOiBuZXdTaWRlTWVudVN0YXRlIH0pO1xuICAgICAgICBzZXR0aW5nU2VydmljZS5zY29wZShBWFBQbGF0Zm9ybVNjb3BlLlVzZXIpLnNldChBWFBUaGVtZUxheW91dFNldHRpbmcuU2lkZU1lbnVTdGF0dXMsIG5ld1NpZGVNZW51U3RhdGUpO1xuICAgICAgfSxcblxuICAgICAgLy8gU2V0IG5hdmlnYXRpb24gbG9hZGluZyBzdGF0ZSB3aXRoIGEgdGFzayBjb3VudGVyXG4gICAgICBzZXROYXZpZ2F0aW9uTG9hZGluZyh2YWx1ZTogYm9vbGVhbiwgZGVsYXk/OiBudW1iZXIpIHtcbiAgICAgICAgX3NldE5hdmlnYXRpb25Mb2FkaW5nKHZhbHVlLCBkZWxheSk7XG4gICAgICB9LFxuXG4gICAgICAvLyBTZXQgb3ZlcmxheSBsb2FkaW5nIHN0YXRlIHdpdGggYSB0YXNrIGNvdW50ZXJcbiAgICAgIHNldE92ZXJsYXlMb2FkaW5nKHZhbHVlOiBib29sZWFuLCBkZWxheT86IG51bWJlcikge1xuICAgICAgICBfc2V0T3ZlcmxheUxvYWRpbmcodmFsdWUsIGRlbGF5KTtcbiAgICAgIH0sXG5cbiAgICAgIGFzeW5jIGxvYWRTZXR0aW5ncygpIHtcbiAgICAgICAgYXdhaXQgX2FwcGx5U2V0dGluZ3MoKTtcbiAgICAgIH0sXG5cbiAgICAgIC8vIFNldCB1cCBldmVudCBsaXN0ZW5lciBmb3Igc3lzdGVtIHRoZW1lIGNoYW5nZXNcbiAgICAgIF9zZXR1cFN5c3RlbUNvbG9yTGlzdGVuZXIoKSB7XG4gICAgICAgIGNvbnN0IG1lZGlhUXVlcnlMaXN0ID0gd2luZG93Lm1hdGNoTWVkaWEoJyhwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyayknKTtcbiAgICAgICAgY29uc3QgbGlzdGVuZXIgPSAoZTogTWVkaWFRdWVyeUxpc3RFdmVudCkgPT4ge1xuICAgICAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgc3lzdGVtVGhlbWVNb2RlOiBlLm1hdGNoZXMgPyBBWFBUaGVtZU1vZGUuRGFyayA6IEFYUFRoZW1lTW9kZS5MaWdodCB9KTtcbiAgICAgICAgICBfdXBkYXRlSHRtbENsYXNzKCk7XG4gICAgICAgIH07XG4gICAgICAgIG1lZGlhUXVlcnlMaXN0LmFkZEV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsIGxpc3RlbmVyKTtcbiAgICAgICAgcmV0dXJuIGxpc3RlbmVyO1xuICAgICAgfSxcblxuICAgICAgLy8gUmVtb3ZlIGV2ZW50IGxpc3RlbmVyIGZvciBzeXN0ZW0gdGhlbWUgY2hhbmdlc1xuICAgICAgX3JlbW92ZVN5c3RlbUNvbG9yTGlzdGVuZXIobGlzdGVuZXI6IChlOiBNZWRpYVF1ZXJ5TGlzdEV2ZW50KSA9PiB2b2lkKSB7XG4gICAgICAgIGNvbnN0IG1lZGlhUXVlcnlMaXN0ID0gd2luZG93Lm1hdGNoTWVkaWEoJyhwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyayknKTtcbiAgICAgICAgbWVkaWFRdWVyeUxpc3QucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2hhbmdlJywgbGlzdGVuZXIpO1xuICAgICAgfSxcblxuICAgICAgLy8gU2V0IHVwIGV2ZW50IGxpc3RlbmVyIGZvciB3aW5kb3cgcmVzaXplXG4gICAgICBfc2V0dXBSZXNpemVMaXN0ZW5lcigpOiBTdWJzY3JpcHRpb24ge1xuICAgICAgICBjb25zdCBzdWJzY3JpcHRpb24gPSBmcm9tRXZlbnQod2luZG93LCAncmVzaXplJylcbiAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgIGRlYm91bmNlVGltZSgyNTApIC8vIDI1MG1zIGRlYm91bmNlIGRlbGF5XG4gICAgICAgICAgKVxuICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgX3VwZGF0ZVNjcmVlblNpemUoKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHN1YnNjcmlwdGlvbjtcbiAgICAgIH0sXG5cbiAgICAgIC8vIFJlbW92ZSBldmVudCBsaXN0ZW5lciBmb3Igd2luZG93IHJlc2l6ZVxuICAgICAgX3JlbW92ZVJlc2l6ZUxpc3RlbmVyKHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uKSB7XG4gICAgICAgIGlmIChzdWJzY3JpcHRpb24pIHtcbiAgICAgICAgICBzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgfVxuICAgICAgfSxcblxuICAgIH07XG4gIH0pLFxuXG4gIC8vIExpZmVjeWNsZSBIb29rc1xuICB3aXRoSG9va3MoKHN0b3JlLCBzZXR0aW5nU2VydmljZSA9IGluamVjdChBWFBTZXR0aW5nU2VydmljZSkpID0+ICh7XG4gICAgb25Jbml0KCkge1xuICAgICAgLy9cbiAgICAgIHNldHRpbmdTZXJ2aWNlLm9uQ2hhbmdlZC5waXBlKGZpbHRlcihjID0+IGMuc2NvcGUgPT0gQVhQUGxhdGZvcm1TY29wZS5Vc2VyKSkuc3Vic2NyaWJlKGFzeW5jIChjaGFuZ2VzKSA9PiB7XG4gICAgICAgIGNvbnN0IGtleXMgPSBPYmplY3QudmFsdWVzKEFYUFRoZW1lTGF5b3V0U2V0dGluZyk7XG4gICAgICAgIGlmIChjaGFuZ2VzLmtleXMuc29tZSgoa2V5KSA9PiBrZXlzLmluY2x1ZGVzKGtleSBhcyBhbnkpKSkge1xuICAgICAgICAgIGF3YWl0IHN0b3JlLmxvYWRTZXR0aW5ncygpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIC8vXG4gICAgICBzZXR0aW5nU2VydmljZS5vbkxvYWRlZC5zdWJzY3JpYmUoYXN5bmMgKCkgPT4ge1xuICAgICAgICBhd2FpdCBzdG9yZS5sb2FkU2V0dGluZ3MoKTtcbiAgICAgIH0pO1xuXG4gICAgICAvLyBTZXQgdXAgZXZlbnQgbGlzdGVuZXIgZm9yIHN5c3RlbSB0aGVtZSBjaGFuZ2VzXG4gICAgICBjb25zdCBsaXN0ZW5lciA9IHN0b3JlLl9zZXR1cFN5c3RlbUNvbG9yTGlzdGVuZXIoKTtcbiAgICAgIHBhdGNoU3RhdGUoc3RvcmUsIHsgX2xpc3RlbmVyOiBsaXN0ZW5lciB9KTtcblxuICAgICAgLy8gU2V0IHVwIGV2ZW50IGxpc3RlbmVyIGZvciB3aW5kb3cgcmVzaXplXG4gICAgICBjb25zdCByZXNpemVTdWJzY3JpcHRpb24gPSBzdG9yZS5fc2V0dXBSZXNpemVMaXN0ZW5lcigpO1xuICAgICAgcGF0Y2hTdGF0ZShzdG9yZSwgeyBfcmVzaXplTGlzdGVuZXI6IHJlc2l6ZVN1YnNjcmlwdGlvbiB9KTtcbiAgICB9LFxuXG4gICAgb25EZXN0cm95KCkge1xuICAgICAgLy8gQ2xlYW4gdXAgZXZlbnQgbGlzdGVuZXJzIHdoZW4gc3RvcmUgaXMgZGVzdHJveWVkXG4gICAgICBjb25zdCB7IF9saXN0ZW5lcjogbGlzdGVuZXIsIF9yZXNpemVMaXN0ZW5lcjogcmVzaXplTGlzdGVuZXIgfSA9IHN0b3JlO1xuICAgICAgaWYgKGxpc3RlbmVyKSB7XG4gICAgICAgIHN0b3JlLl9yZW1vdmVTeXN0ZW1Db2xvckxpc3RlbmVyKGxpc3RlbmVyKTtcbiAgICAgIH1cbiAgICAgIGlmIChyZXNpemVMaXN0ZW5lciBpbnN0YW5jZW9mIFN1YnNjcmlwdGlvbikge1xuICAgICAgICBzdG9yZS5fcmVtb3ZlUmVzaXplTGlzdGVuZXIocmVzaXplTGlzdGVuZXIpO1xuICAgICAgfVxuICAgIH0sXG4gIH0pKVxuKTtcbiJdfQ==","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { CommonModule } from '@angular/common';\nimport { Component, inject } from '@angular/core';\nimport { AXPLayoutThemeService } from '../theme.service';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPThemeMode } from '../theme.types';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/common\";\nimport * as i2 from \"@acorex/components/button\";\nimport * as i3 from \"@acorex/components/decorators\";\nimport * as i4 from \"@acorex/components/dropdown\";\nimport * as i5 from \"@acorex/core/translation\";\nexport class AXPThemeSlotComponent {\n constructor() {\n this.store = inject(AXPLayoutThemeService);\n this.variants = AXPThemeMode;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.6\", ngImport: i0, type: AXPThemeSlotComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.0.6\", type: AXPThemeSlotComponent, isStandalone: true, selector: \"ng-component\", ngImport: i0, template: `\n <ax-button color=\"primary\">\n <ax-icon\n class=\"fa-regular \"\n [ngClass]=\"{\n 'fa-desktop':store.isSystemMode(),\n 'fa-moon':!store.isSystemMode() && store.isDarkMode(),\n 'fa-brightness':!store.isSystemMode() && !store.isDarkMode(),\n }\"\n >\n </ax-icon>\n <ax-dropdown-panel *translate=\"let t\">\n <ax-button-item-list>\n <ax-button-item\n (onClick)=\"store.changeThemeMode(variants.Light)\"\n [text]=\"(t('theme-modes.light',{scope:'layout'}) | async)!\"\n [selected]=\"!store.isSystemMode() && !store.isDarkMode()\"\n >\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-brightness\"> </ax-icon>\n </ax-prefix>\n </ax-button-item>\n <ax-button-item\n (onClick)=\"store.changeThemeMode(variants.Dark)\"\n [text]=\"(t('theme-modes.dark',{scope:'layout'}) | async)!\"\n [selected]=\"!store.isSystemMode() && store.isDarkMode()\"\n >\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-moon\"> </ax-icon>\n </ax-prefix>\n </ax-button-item>\n <ax-button-item\n (onClick)=\"store.changeThemeMode(variants.System)\"\n [text]=\"(t('theme-modes.system',{scope:'layout'}) | async)!\"\n [selected]=\"store.isSystemMode()\"\n >\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-desktop\"> </ax-icon>\n </ax-prefix>\n </ax-button-item>\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n `, isInline: true, dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"directive\", type: i1.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { kind: \"pipe\", type: i1.AsyncPipe, name: \"async\" }, { kind: \"ngmodule\", type: AXButtonModule }, { kind: \"component\", type: i2.AXButtonComponent, selector: \"ax-button\", inputs: [\"disabled\", \"size\", \"tabIndex\", \"color\", \"look\", \"text\", \"toggleable\", \"selected\", \"iconOnly\", \"type\", \"loadingText\"], outputs: [\"onBlur\", \"onFocus\", \"onClick\", \"selectedChange\", \"toggleableChange\", \"lookChange\", \"colorChange\", \"disabledChange\", \"loadingTextChange\"] }, { kind: \"component\", type: i2.AXButtonItemComponent, selector: \"ax-button-item\", inputs: [\"color\", \"disabled\", \"text\", \"selected\", \"divided\", \"data\", \"name\"], outputs: [\"onClick\", \"onFocus\", \"onBlur\", \"disabledChange\"] }, { kind: \"component\", type: i2.AXButtonItemListComponent, selector: \"ax-button-item-list\", inputs: [\"items\"], outputs: [\"onItemClick\"] }, { kind: \"ngmodule\", type: AXDecoratorModule }, { kind: \"component\", type: i3.AXDecoratorIconComponent, selector: \"ax-icon\", inputs: [\"icon\"] }, { kind: \"component\", type: i3.AXDecoratorGenericComponent, selector: \"ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay\" }, { kind: \"ngmodule\", type: AXDropdownModule }, { kind: \"component\", type: i4.AXDropdownPanelComponent, selector: \"ax-dropdown-panel\", inputs: [\"isOpen\", \"fitParent\", \"dropdownWidth\", \"position\", \"placement\", \"_target\", \"adaptivityEnabled\"], outputs: [\"onOpened\", \"onClosed\"] }, { kind: \"ngmodule\", type: AXTranslationModule }, { kind: \"directive\", type: i5.AXTranslatorDirective, selector: \"[translate]\" }] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.6\", ngImport: i0, type: AXPThemeSlotComponent, decorators: [{\n type: Component,\n args: [{\n template: `\n <ax-button color=\"primary\">\n <ax-icon\n class=\"fa-regular \"\n [ngClass]=\"{\n 'fa-desktop':store.isSystemMode(),\n 'fa-moon':!store.isSystemMode() && store.isDarkMode(),\n 'fa-brightness':!store.isSystemMode() && !store.isDarkMode(),\n }\"\n >\n </ax-icon>\n <ax-dropdown-panel *translate=\"let t\">\n <ax-button-item-list>\n <ax-button-item\n (onClick)=\"store.changeThemeMode(variants.Light)\"\n [text]=\"(t('theme-modes.light',{scope:'layout'}) | async)!\"\n [selected]=\"!store.isSystemMode() && !store.isDarkMode()\"\n >\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-brightness\"> </ax-icon>\n </ax-prefix>\n </ax-button-item>\n <ax-button-item\n (onClick)=\"store.changeThemeMode(variants.Dark)\"\n [text]=\"(t('theme-modes.dark',{scope:'layout'}) | async)!\"\n [selected]=\"!store.isSystemMode() && store.isDarkMode()\"\n >\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-moon\"> </ax-icon>\n </ax-prefix>\n </ax-button-item>\n <ax-button-item\n (onClick)=\"store.changeThemeMode(variants.System)\"\n [text]=\"(t('theme-modes.system',{scope:'layout'}) | async)!\"\n [selected]=\"store.isSystemMode()\"\n >\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-desktop\"> </ax-icon>\n </ax-prefix>\n </ax-button-item>\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n `,\n imports: [CommonModule, AXButtonModule, AXDecoratorModule, AXDropdownModule, AXTranslationModule]\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtc2xvdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9zaGFyZWQvc3JjL2xpYi9zbG90cy90aGVtZS1zbG90LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDL0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7OztBQWlEOUMsTUFBTSxPQUFPLHFCQUFxQjtJQS9DbEM7UUFnRFksVUFBSyxHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBRXRDLGFBQVEsR0FBRyxZQUFZLENBQUM7S0FDbkM7OEdBSlkscUJBQXFCO2tHQUFyQixxQkFBcUIsd0VBOUN0Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTJDVCwyREFDUyxZQUFZLGlMQUFFLGNBQWMsb3VCQUFFLGlCQUFpQixzVkFBRSxnQkFBZ0IscVFBQUUsbUJBQW1COzsyRkFFckYscUJBQXFCO2tCQS9DakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EyQ1Q7b0JBQ0QsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxtQkFBbUIsQ0FBQztpQkFDbEciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWERyb3Bkb3duTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2Ryb3Bkb3duJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhQTGF5b3V0VGhlbWVTZXJ2aWNlIH0gZnJvbSAnLi4vdGhlbWUuc2VydmljZSc7XG5pbXBvcnQgeyBBWFRyYW5zbGF0aW9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlL3RyYW5zbGF0aW9uJztcbmltcG9ydCB7IEFYUFRoZW1lTW9kZSB9IGZyb20gJy4uL3RoZW1lLnR5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiBgXG4gICAgPGF4LWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIj5cbiAgICAgIDxheC1pY29uXG4gICAgICAgIGNsYXNzPVwiZmEtcmVndWxhciBcIlxuICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgJ2ZhLWRlc2t0b3AnOnN0b3JlLmlzU3lzdGVtTW9kZSgpLFxuICAgICAgICAgICAgICAgICdmYS1tb29uJzohc3RvcmUuaXNTeXN0ZW1Nb2RlKCkgJiYgc3RvcmUuaXNEYXJrTW9kZSgpLFxuICAgICAgICAgICAgICAgICdmYS1icmlnaHRuZXNzJzohc3RvcmUuaXNTeXN0ZW1Nb2RlKCkgJiYgIXN0b3JlLmlzRGFya01vZGUoKSxcbiAgICAgICAgICAgIH1cIlxuICAgICAgPlxuICAgICAgPC9heC1pY29uPlxuICAgICAgPGF4LWRyb3Bkb3duLXBhbmVsICp0cmFuc2xhdGU9XCJsZXQgdFwiPlxuICAgICAgICA8YXgtYnV0dG9uLWl0ZW0tbGlzdD5cbiAgICAgICAgICA8YXgtYnV0dG9uLWl0ZW1cbiAgICAgICAgICAgIChvbkNsaWNrKT1cInN0b3JlLmNoYW5nZVRoZW1lTW9kZSh2YXJpYW50cy5MaWdodClcIlxuICAgICAgICAgICAgW3RleHRdPVwiKHQoJ3RoZW1lLW1vZGVzLmxpZ2h0Jyx7c2NvcGU6J2xheW91dCd9KSB8IGFzeW5jKSFcIlxuICAgICAgICAgICAgW3NlbGVjdGVkXT1cIiFzdG9yZS5pc1N5c3RlbU1vZGUoKSAmJiAhc3RvcmUuaXNEYXJrTW9kZSgpXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8YXgtcHJlZml4PlxuICAgICAgICAgICAgICA8YXgtaWNvbiBpY29uPVwiZmEtbGlnaHQgZmEtYnJpZ2h0bmVzc1wiPiA8L2F4LWljb24+XG4gICAgICAgICAgICA8L2F4LXByZWZpeD5cbiAgICAgICAgICA8L2F4LWJ1dHRvbi1pdGVtPlxuICAgICAgICAgIDxheC1idXR0b24taXRlbVxuICAgICAgICAgICAgKG9uQ2xpY2spPVwic3RvcmUuY2hhbmdlVGhlbWVNb2RlKHZhcmlhbnRzLkRhcmspXCJcbiAgICAgICAgICAgIFt0ZXh0XT1cIih0KCd0aGVtZS1tb2Rlcy5kYXJrJyx7c2NvcGU6J2xheW91dCd9KSB8IGFzeW5jKSFcIlxuICAgICAgICAgICAgW3NlbGVjdGVkXT1cIiFzdG9yZS5pc1N5c3RlbU1vZGUoKSAmJiBzdG9yZS5pc0RhcmtNb2RlKClcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxheC1wcmVmaXg+XG4gICAgICAgICAgICAgIDxheC1pY29uIGljb249XCJmYS1saWdodCBmYS1tb29uXCI+IDwvYXgtaWNvbj5cbiAgICAgICAgICAgIDwvYXgtcHJlZml4PlxuICAgICAgICAgIDwvYXgtYnV0dG9uLWl0ZW0+XG4gICAgICAgICAgPGF4LWJ1dHRvbi1pdGVtXG4gICAgICAgICAgICAob25DbGljayk9XCJzdG9yZS5jaGFuZ2VUaGVtZU1vZGUodmFyaWFudHMuU3lzdGVtKVwiXG4gICAgICAgICAgICBbdGV4dF09XCIodCgndGhlbWUtbW9kZXMuc3lzdGVtJyx7c2NvcGU6J2xheW91dCd9KSB8IGFzeW5jKSFcIlxuICAgICAgICAgICAgW3NlbGVjdGVkXT1cInN0b3JlLmlzU3lzdGVtTW9kZSgpXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8YXgtcHJlZml4PlxuICAgICAgICAgICAgICA8YXgtaWNvbiBpY29uPVwiZmEtbGlnaHQgZmEtZGVza3RvcFwiPiA8L2F4LWljb24+XG4gICAgICAgICAgICA8L2F4LXByZWZpeD5cbiAgICAgICAgICA8L2F4LWJ1dHRvbi1pdGVtPlxuICAgICAgICA8L2F4LWJ1dHRvbi1pdGVtLWxpc3Q+XG4gICAgICA8L2F4LWRyb3Bkb3duLXBhbmVsPlxuICAgIDwvYXgtYnV0dG9uPlxuICBgLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBBWEJ1dHRvbk1vZHVsZSwgQVhEZWNvcmF0b3JNb2R1bGUsIEFYRHJvcGRvd25Nb2R1bGUsIEFYVHJhbnNsYXRpb25Nb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIEFYUFRoZW1lU2xvdENvbXBvbmVudCB7XG4gIHByb3RlY3RlZCBzdG9yZSA9IGluamVjdChBWFBMYXlvdXRUaGVtZVNlcnZpY2UpO1xuXG4gIHByb3RlY3RlZCB2YXJpYW50cyA9IEFYUFRoZW1lTW9kZTtcbn1cbiJdfQ==","import { InjectionToken } from '@angular/core';\nexport const AXP_THEME_PALETTE_PROVIDER = new InjectionToken('AXP_THEME_PALETTE_PROVIDER', {\n providedIn: 'root',\n factory: async () => {\n return new AXPThemePaletteProviderDefault();\n },\n});\nexport class AXPThemePaletteProviderDefault {\n getList() {\n return Promise.resolve([\n {\n name: 'default',\n title: 'Default',\n path: '/assets/themes/palletes/default.css',\n colors: {\n primary: '#113b53',\n secondary: '#1a6ab1',\n neutral: '#606c76',\n success: '#2d9c67',\n warning: '#e9a01b',\n danger: '#c02f1d',\n accents: ['#d6a7a6', '#a0897e', '#8bf4d9'],\n dark: '#2a2d30',\n light: '#ffffff',\n },\n },\n ]);\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFsZXR0ZS5wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdGhlbWVzL3NoYXJlZC9zcmMvbGliL3BhbGV0dGUucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQU8vQyxNQUFNLENBQUMsTUFBTSwwQkFBMEIsR0FBRyxJQUFJLGNBQWMsQ0FBbUMsNEJBQTRCLEVBQUU7SUFDM0gsVUFBVSxFQUFFLE1BQU07SUFDbEIsT0FBTyxFQUFFLEtBQUssSUFBSSxFQUFFO1FBQ2xCLE9BQU8sSUFBSSw4QkFBOEIsRUFBRSxDQUFDO0lBQzlDLENBQUM7Q0FDRixDQUFDLENBQUM7QUFFSCxNQUFNLE9BQU8sOEJBQThCO0lBQ3pDLE9BQU87UUFDTCxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUM7WUFDckI7Z0JBQ0UsSUFBSSxFQUFFLFNBQVM7Z0JBQ2YsS0FBSyxFQUFFLFNBQVM7Z0JBQ2hCLElBQUksRUFBRSxxQ0FBcUM7Z0JBQzNDLE1BQU0sRUFBRTtvQkFDTixPQUFPLEVBQUUsU0FBUztvQkFDbEIsU0FBUyxFQUFFLFNBQVM7b0JBQ3BCLE9BQU8sRUFBRSxTQUFTO29CQUNsQixPQUFPLEVBQUUsU0FBUztvQkFDbEIsT0FBTyxFQUFFLFNBQVM7b0JBQ2xCLE1BQU0sRUFBRSxTQUFTO29CQUNqQixPQUFPLEVBQUUsQ0FBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsQ0FBQztvQkFDMUMsSUFBSSxFQUFFLFNBQVM7b0JBQ2YsS0FBSyxFQUFFLFNBQVM7aUJBQ2pCO2FBQ0Y7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhQVGhlbWVQYWxldHRlIH0gZnJvbSAnLi90aGVtZS50eXBlcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhQVGhlbWVQYWxldHRlUHJvdmlkZXIge1xuICBnZXRMaXN0KCk6IFByb21pc2U8QVhQVGhlbWVQYWxldHRlW10+O1xufVxuXG5leHBvcnQgY29uc3QgQVhQX1RIRU1FX1BBTEVUVEVfUFJPVklERVIgPSBuZXcgSW5qZWN0aW9uVG9rZW48UHJvbWlzZTxBWFBUaGVtZVBhbGV0dGVQcm92aWRlcj4+KCdBWFBfVEhFTUVfUEFMRVRURV9QUk9WSURFUicsIHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxuICBmYWN0b3J5OiBhc3luYyAoKSA9PiB7XG4gICAgcmV0dXJuIG5ldyBBWFBUaGVtZVBhbGV0dGVQcm92aWRlckRlZmF1bHQoKTtcbiAgfSxcbn0pO1xuXG5leHBvcnQgY2xhc3MgQVhQVGhlbWVQYWxldHRlUHJvdmlkZXJEZWZhdWx0IGltcGxlbWVudHMgQVhQVGhlbWVQYWxldHRlUHJvdmlkZXIge1xuICBnZXRMaXN0KCk6IFByb21pc2U8QVhQVGhlbWVQYWxldHRlW10+IHtcbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2RlZmF1bHQnLFxuICAgICAgICB0aXRsZTogJ0RlZmF1bHQnLFxuICAgICAgICBwYXRoOiAnL2Fzc2V0cy90aGVtZXMvcGFsbGV0ZXMvZGVmYXVsdC5jc3MnLFxuICAgICAgICBjb2xvcnM6IHtcbiAgICAgICAgICBwcmltYXJ5OiAnIzExM2I1MycsXG4gICAgICAgICAgc2Vjb25kYXJ5OiAnIzFhNmFiMScsXG4gICAgICAgICAgbmV1dHJhbDogJyM2MDZjNzYnLFxuICAgICAgICAgIHN1Y2Nlc3M6ICcjMmQ5YzY3JyxcbiAgICAgICAgICB3YXJuaW5nOiAnI2U5YTAxYicsXG4gICAgICAgICAgZGFuZ2VyOiAnI2MwMmYxZCcsXG4gICAgICAgICAgYWNjZW50czogWycjZDZhN2E2JywgJyNhMDg5N2UnLCAnIzhiZjRkOSddLFxuICAgICAgICAgIGRhcms6ICcjMmEyZDMwJyxcbiAgICAgICAgICBsaWdodDogJyNmZmZmZmYnLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICBdKTtcbiAgfVxufVxuIl19","import { AXSelectionCdkModule } from '@acorex/cdk/selection';\nimport { AXPValueWidgetComponent } from '@acorex/platform/layout/builder';\nimport { ChangeDetectionStrategy, Component, effect, inject, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXP_THEME_PALETTE_PROVIDER } from '../../palette.provider';\nimport * as i0 from \"@angular/core\";\nexport class AXPThemePaletteChooserWidgetComponent extends AXPValueWidgetComponent {\n constructor() {\n super(...arguments);\n this.paletteService = inject(AXP_THEME_PALETTE_PROVIDER);\n this.palettes = signal([]);\n this.selectedPalette = signal(null);\n this.#eff = effect(() => {\n if (this.getValue()) {\n this.selectedPalette.set(this.palettes().find((p) => p.name === this.getValue()) ??\n this.palettes().find((p) => p.name === 'default') ??\n this.palettes()[0]);\n }\n });\n }\n #eff;\n async ngOnInit() {\n super.ngOnInit();\n const palletsProviderInstance = await this.paletteService;\n this.palettes.set(await palletsProviderInstance.getList());\n }\n onPaletteClick(palette) {\n this.setValue(palette.name);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.6\", ngImport: i0, type: AXPThemePaletteChooserWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.6\", type: AXPThemePaletteChooserWidgetComponent, isStandalone: true, selector: \"ng-component\", usesInheritance: true, ngImport: i0, template: `\n @for (palette of palettes(); track palette.name) {\n <div (click)=\"onPaletteClick(palette)\" [class.--selected]=\"palette.name === selectedPalette()?.name\">\n <span>{{ palette.title }}</span>\n <div>\n <div [style.background-color]=\"palette.colors.primary\" class=\"ax-end-7 ax-z-[2]\"></div>\n <div [style.background-color]=\"palette.colors.secondary\" class=\"ax-end-3.5 ax-z-[1]\"></div>\n <div [style.background-color]=\"palette.colors.accents[0]\" class=\"ax-end-0 ax-z-0\"></div>\n </div>\n </div>\n }\n `, isInline: true, styles: [\":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}:host>div{height:3rem;min-width:100%}@media (min-width: 768px){:host>div{min-width:16rem}}:host>div>div{position:relative;height:100%;width:fit-content}:host>div>div div{position:absolute;height:2rem;width:2rem;border-radius:9999px;border-width:1px;border-color:rgba(255,255,255,.5);--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}\\n\"], dependencies: [{ kind: \"ngmodule\", type: FormsModule }, { kind: \"ngmodule\", type: AXSelectionCdkModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.6\", ngImport: i0, type: AXPThemePaletteChooserWidgetComponent, decorators: [{\n type: Component,\n args: [{ template: `\n @for (palette of palettes(); track palette.name) {\n <div (click)=\"onPaletteClick(palette)\" [class.--selected]=\"palette.name === selectedPalette()?.name\">\n <span>{{ palette.title }}</span>\n <div>\n <div [style.background-color]=\"palette.colors.primary\" class=\"ax-end-7 ax-z-[2]\"></div>\n <div [style.background-color]=\"palette.colors.secondary\" class=\"ax-end-3.5 ax-z-[1]\"></div>\n <div [style.background-color]=\"palette.colors.accents[0]\" class=\"ax-end-0 ax-z-0\"></div>\n </div>\n </div>\n }\n `, standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [FormsModule, AXSelectionCdkModule], styles: [\":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}:host>div{height:3rem;min-width:100%}@media (min-width: 768px){:host>div{min-width:16rem}}:host>div>div{position:relative;height:100%;width:fit-content}:host>div>div div{position:absolute;height:2rem;width:2rem;border-radius:9999px;border-width:1px;border-color:rgba(255,255,255,.5);--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtcGFsZXR0ZS1jaG9vc2VyLXdpZGdldC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9zaGFyZWQvc3JjL2xpYi93aWRnZXRzL3RoZW1lLXBhbGV0dGUtY2hvb3Nlci90aGVtZS1wYWxldHRlLWNob29zZXItd2lkZ2V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUUxRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7QUFxQnBFLE1BQU0sT0FBTyxxQ0FBc0MsU0FBUSx1QkFBK0I7SUFsQjFGOztRQW1CbUIsbUJBQWMsR0FBRyxNQUFNLENBQUMsMEJBQTBCLENBQUMsQ0FBQztRQUNsRCxhQUFRLEdBQUcsTUFBTSxDQUFvQixFQUFFLENBQUMsQ0FBQztRQUNsRCxvQkFBZSxHQUFHLE1BQU0sQ0FBeUIsSUFBSSxDQUFDLENBQUM7UUFFakUsU0FBSSxHQUFHLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDakIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQztnQkFDcEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQ3RCLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO29CQUNyRCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQztvQkFDakQsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUNyQixDQUFDO1lBQ0osQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0tBV0o7SUFuQkMsSUFBSSxDQVFEO0lBRU0sS0FBSyxDQUFDLFFBQVE7UUFDckIsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLE1BQU0sdUJBQXVCLEdBQUcsTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDO1FBQzFELElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLE1BQU0sdUJBQXVCLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRVMsY0FBYyxDQUFDLE9BQXdCO1FBQy9DLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzlCLENBQUM7OEdBdkJVLHFDQUFxQztrR0FBckMscUNBQXFDLCtGQWpCdEM7Ozs7Ozs7Ozs7O0dBV1QsazNEQUlTLFdBQVcsOEJBQUUsb0JBQW9COzsyRkFFaEMscUNBQXFDO2tCQWxCakQsU0FBUzsrQkFDRTs7Ozs7Ozs7Ozs7R0FXVCxjQUVXLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxXQUN0QyxDQUFDLFdBQVcsRUFBRSxvQkFBb0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYU2VsZWN0aW9uQ2RrTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jZGsvc2VsZWN0aW9uJztcbmltcG9ydCB7IEFYUFZhbHVlV2lkZ2V0Q29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5cbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGVmZmVjdCwgaW5qZWN0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQVhQX1RIRU1FX1BBTEVUVEVfUFJPVklERVIgfSBmcm9tICcuLi8uLi9wYWxldHRlLnByb3ZpZGVyJztcbmltcG9ydCB7IEFYUFRoZW1lUGFsZXR0ZSB9IGZyb20gJy4uLy4uL3RoZW1lLnR5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiBgXG4gICAgQGZvciAocGFsZXR0ZSBvZiBwYWxldHRlcygpOyB0cmFjayBwYWxldHRlLm5hbWUpIHtcbiAgICAgIDxkaXYgKGNsaWNrKT1cIm9uUGFsZXR0ZUNsaWNrKHBhbGV0dGUpXCIgW2NsYXNzLi0tc2VsZWN0ZWRdPVwicGFsZXR0ZS5uYW1lID09PSBzZWxlY3RlZFBhbGV0dGUoKT8ubmFtZVwiPlxuICAgICAgICA8c3Bhbj57eyBwYWxldHRlLnRpdGxlIH19PC9zcGFuPlxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIDxkaXYgW3N0eWxlLmJhY2tncm91bmQtY29sb3JdPVwicGFsZXR0ZS5jb2xvcnMucHJpbWFyeVwiIGNsYXNzPVwiYXgtZW5kLTcgYXgtei1bMl1cIj48L2Rpdj5cbiAgICAgICAgICA8ZGl2IFtzdHlsZS5iYWNrZ3JvdW5kLWNvbG9yXT1cInBhbGV0dGUuY29sb3JzLnNlY29uZGFyeVwiIGNsYXNzPVwiYXgtZW5kLTMuNSBheC16LVsxXVwiPjwvZGl2PlxuICAgICAgICAgIDxkaXYgW3N0eWxlLmJhY2tncm91bmQtY29sb3JdPVwicGFsZXR0ZS5jb2xvcnMuYWNjZW50c1swXVwiIGNsYXNzPVwiYXgtZW5kLTAgYXgtei0wXCI+PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgfVxuICBgLFxuICBzdHlsZVVybDogJy4vdGhlbWUtcGFsZXR0ZS1jaG9vc2VyLXdpZGdldC5zY3NzJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtGb3Jtc01vZHVsZSwgQVhTZWxlY3Rpb25DZGtNb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBBWFBUaGVtZVBhbGV0dGVDaG9vc2VyV2lkZ2V0Q29tcG9uZW50IGV4dGVuZHMgQVhQVmFsdWVXaWRnZXRDb21wb25lbnQ8c3RyaW5nPiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgcGFsZXR0ZVNlcnZpY2UgPSBpbmplY3QoQVhQX1RIRU1FX1BBTEVUVEVfUFJPVklERVIpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgcGFsZXR0ZXMgPSBzaWduYWw8QVhQVGhlbWVQYWxldHRlW10+KFtdKTtcbiAgcHJvdGVjdGVkIHNlbGVjdGVkUGFsZXR0ZSA9IHNpZ25hbDxBWFBUaGVtZVBhbGV0dGUgfCBudWxsPihudWxsKTtcblxuICAjZWZmID0gZWZmZWN0KCgpID0+IHtcbiAgICBpZiAodGhpcy5nZXRWYWx1ZSgpKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkUGFsZXR0ZS5zZXQoXG4gICAgICAgIHRoaXMucGFsZXR0ZXMoKS5maW5kKChwKSA9PiBwLm5hbWUgPT09IHRoaXMuZ2V0VmFsdWUoKSkgPz9cbiAgICAgICAgICB0aGlzLnBhbGV0dGVzKCkuZmluZCgocCkgPT4gcC5uYW1lID09PSAnZGVmYXVsdCcpID8/XG4gICAgICAgICAgdGhpcy5wYWxldHRlcygpWzBdLFxuICAgICAgKTtcbiAgICB9XG4gIH0pO1xuXG4gIG92ZXJyaWRlIGFzeW5jIG5nT25Jbml0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgY29uc3QgcGFsbGV0c1Byb3ZpZGVySW5zdGFuY2UgPSBhd2FpdCB0aGlzLnBhbGV0dGVTZXJ2aWNlO1xuICAgIHRoaXMucGFsZXR0ZXMuc2V0KGF3YWl0IHBhbGxldHNQcm92aWRlckluc3RhbmNlLmdldExpc3QoKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb25QYWxldHRlQ2xpY2socGFsZXR0ZTogQVhQVGhlbWVQYWxldHRlKSB7XG4gICAgdGhpcy5zZXRWYWx1ZShwYWxldHRlLm5hbWUpO1xuICB9XG59XG4iXX0=","import { AXP_WIDGETS_LAYOUT_CATEGORY } from '@acorex/platform/layout/builder';\nimport { AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DISABLED_PROPERTY } from '@acorex/platform/widgets';\nexport const AXPThemePaletteChooserWidget = {\n name: \"theme-palette-chooser\",\n title: \"Theme Palette Chooser\",\n icon: \"fa-solid fa-square\",\n type: 'editor',\n categories: AXP_WIDGETS_LAYOUT_CATEGORY,\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n ],\n components: {\n edit: {\n component: () => import('./theme-palette-chooser-widget.component').then((c) => c.AXPThemePaletteChooserWidgetComponent),\n },\n }\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtcGFsZXR0ZS1jaG9vc2VyLXdpZGdldC5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9zaGFyZWQvc3JjL2xpYi93aWRnZXRzL3RoZW1lLXBhbGV0dGUtY2hvb3Nlci90aGVtZS1wYWxldHRlLWNob29zZXItd2lkZ2V0LmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsMkJBQTJCLEVBQW1CLE1BQU0saUNBQWlDLENBQUM7QUFDL0YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLHNCQUFzQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFNUcsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQW9CO0lBQzNELElBQUksRUFBRSx1QkFBdUI7SUFDN0IsS0FBSyxFQUFFLHVCQUF1QjtJQUM5QixJQUFJLEVBQUUsb0JBQW9CO0lBQzFCLElBQUksRUFBRSxRQUFRO0lBQ2QsVUFBVSxFQUFFLDJCQUEyQjtJQUN2QyxVQUFVLEVBQUU7UUFDVixpQkFBaUI7UUFDakIsc0JBQXNCO1FBQ3RCLHFCQUFxQjtLQUN0QjtJQUNELFVBQVUsRUFBRTtRQUNWLElBQUksRUFBRTtZQUNKLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsMENBQTBDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxxQ0FBcUMsQ0FBQztTQUN6SDtLQUNGO0NBQ0YsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUF9XSURHRVRTX0xBWU9VVF9DQVRFR09SWSwgQVhQV2lkZ2V0Q29uZmlnIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBBWFBfTkFNRV9QUk9QRVJUWSwgQVhQX0RBVEFfUEFUSF9QUk9QRVJUWSwgQVhQX0RJU0FCTEVEX1BST1BFUlRZIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS93aWRnZXRzJztcblxuZXhwb3J0IGNvbnN0IEFYUFRoZW1lUGFsZXR0ZUNob29zZXJXaWRnZXQ6IEFYUFdpZGdldENvbmZpZyA9IHtcbiAgbmFtZTogXCJ0aGVtZS1wYWxldHRlLWNob29zZXJcIixcbiAgdGl0bGU6IFwiVGhlbWUgUGFsZXR0ZSBDaG9vc2VyXCIsXG4gIGljb246IFwiZmEtc29saWQgZmEtc3F1YXJlXCIsXG4gIHR5cGU6ICdlZGl0b3InLFxuICBjYXRlZ29yaWVzOiBBWFBfV0lER0VUU19MQVlPVVRfQ0FURUdPUlksXG4gIHByb3BlcnRpZXM6IFtcbiAgICBBWFBfTkFNRV9QUk9QRVJUWSxcbiAgICBBWFBfREFUQV9QQVRIX1BST1BFUlRZLFxuICAgIEFYUF9ESVNBQkxFRF9QUk9QRVJUWSxcbiAgXSxcbiAgY29tcG9uZW50czoge1xuICAgIGVkaXQ6IHtcbiAgICAgIGNvbXBvbmVudDogKCkgPT4gaW1wb3J0KCcuL3RoZW1lLXBhbGV0dGUtY2hvb3Nlci13aWRnZXQuY29tcG9uZW50JykudGhlbigoYykgPT4gYy5BWFBUaGVtZVBhbGV0dGVDaG9vc2VyV2lkZ2V0Q29tcG9uZW50KSxcbiAgICB9LFxuICB9XG59XG5cbmRlY2xhcmUgbW9kdWxlICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJyB7XG4gIGludGVyZmFjZSBBWFBXaWRnZXRUeXBlc01hcCB7XG4gICAgdGhlbWVQYWxldHRlQ2hvb3NlcjogJ3RoZW1lLXBhbGV0dGUtY2hvb3Nlcic7XG4gIH1cbn0iXX0=","import { AXSelectionCdkModule } from '@acorex/cdk/selection';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPValueWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, effect, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXPThemeMode } from '../../theme.types';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/common\";\nimport * as i2 from \"@acorex/core/translation\";\nexport class AXPThemeModeChooserWidgetComponent extends AXPValueWidgetComponent {\n constructor() {\n super(...arguments);\n this.modes = signal([\n { id: AXPThemeMode.Light, icon: 'fa-light fa-brightness' },\n { id: AXPThemeMode.Dark, icon: 'fa-light fa-moon' },\n { id: AXPThemeMode.System, icon: 'fa-light fa-desktop' },\n ]);\n this.selectedMode = signal(null);\n this.#eff = effect(() => {\n if (this.getValue()) {\n this.selectedMode.set(this.modes().find((m) => m.id === this.getValue()) ?? this.modes()[0]);\n }\n });\n }\n #eff;\n onModeClick(mode) {\n this.setValue(mode.id);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.6\", ngImport: i0, type: AXPThemeModeChooserWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.6\", type: AXPThemeModeChooserWidgetComponent, isStandalone: true, selector: \"ng-component\", usesInheritance: true, ngImport: i0, template: `\n @for (mode of modes(); track mode.id) {\n <div (click)=\"onModeClick(mode)\" [class.--selected]=\"mode.id === selectedMode()?.id\">\n <div>\n <i [class]=\"mode.icon\"></i>\n </div>\n <span>{{ 'theme-modes.' + mode.id | translate: { scope: 'layout' } | async }}</span>\n </div>\n }\n `, isInline: true, styles: [\":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}:host>div{padding-top:.25rem!important;padding-bottom:.25rem!important}\\n\"], dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"pipe\", type: i1.AsyncPipe, name: \"async\" }, { kind: \"ngmodule\", type: FormsModule }, { kind: \"ngmodule\", type: AXSelectionCdkModule }, { kind: \"ngmodule\", type: AXTranslationModule }, { kind: \"pipe\", type: i2.AXTranslatorPipe, name: \"translate\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.6\", ngImport: i0, type: AXPThemeModeChooserWidgetComponent, decorators: [{\n type: Component,\n args: [{ template: `\n @for (mode of modes(); track mode.id) {\n <div (click)=\"onModeClick(mode)\" [class.--selected]=\"mode.id === selectedMode()?.id\">\n <div>\n <i [class]=\"mode.icon\"></i>\n </div>\n <span>{{ 'theme-modes.' + mode.id | translate: { scope: 'layout' } | async }}</span>\n </div>\n }\n `, standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, FormsModule, AXSelectionCdkModule, AXTranslationModule], styles: [\":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}:host>div{padding-top:.25rem!important;padding-bottom:.25rem!important}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtbW9kZS1jaG9vc2VyLXdpZGdldC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9zaGFyZWQvc3JjL2xpYi93aWRnZXRzL3RoZW1lLW1vZGUtY2hvb3Nlci90aGVtZS1tb2RlLWNob29zZXItd2lkZ2V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25GLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7QUF1QmpELE1BQU0sT0FBTyxrQ0FBbUMsU0FBUSx1QkFBK0I7SUFoQnZGOztRQWlCcUIsVUFBSyxHQUFHLE1BQU0sQ0FBb0I7WUFDbkQsRUFBRSxFQUFFLEVBQUUsWUFBWSxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsd0JBQXdCLEVBQUU7WUFDMUQsRUFBRSxFQUFFLEVBQUUsWUFBWSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsa0JBQWtCLEVBQUU7WUFDbkQsRUFBRSxFQUFFLEVBQUUsWUFBWSxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUscUJBQXFCLEVBQUU7U0FDekQsQ0FBQyxDQUFDO1FBRU8saUJBQVksR0FBRyxNQUFNLENBQXlCLElBQUksQ0FBQyxDQUFDO1FBRTlELFNBQUksR0FBRyxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQ2pCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUM7Z0JBQ3BCLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDL0YsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0tBS0o7SUFUQyxJQUFJLENBSUQ7SUFFTyxXQUFXLENBQUMsSUFBcUI7UUFDekMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDekIsQ0FBQzs4R0FqQlUsa0NBQWtDO2tHQUFsQyxrQ0FBa0MsK0ZBZm5DOzs7Ozs7Ozs7R0FTVCx1OUNBSVMsWUFBWSxtRkFBRSxXQUFXLDhCQUFFLG9CQUFvQiw4QkFBRSxtQkFBbUI7OzJGQUVuRSxrQ0FBa0M7a0JBaEI5QyxTQUFTOytCQUNFOzs7Ozs7Ozs7R0FTVCxjQUVXLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxXQUN0QyxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsb0JBQW9CLEVBQUUsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFNlbGVjdGlvbkNka01vZHVsZSB9IGZyb20gJ0BhY29yZXgvY2RrL3NlbGVjdGlvbic7XG5pbXBvcnQgeyBBWFRyYW5zbGF0aW9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlL3RyYW5zbGF0aW9uJztcbmltcG9ydCB7IEFYUFZhbHVlV2lkZ2V0Q29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgZWZmZWN0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQVhQVGhlbWVNb2RlIH0gZnJvbSAnLi4vLi4vdGhlbWUudHlwZXMnO1xuXG5pbnRlcmZhY2UgVGhlbWVNb2RlT3B0aW9uIHtcbiAgaWQ6IEFYUFRoZW1lTW9kZTtcbiAgaWNvbjogc3RyaW5nO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6IGBcbiAgICBAZm9yIChtb2RlIG9mIG1vZGVzKCk7IHRyYWNrIG1vZGUuaWQpIHtcbiAgICAgIDxkaXYgKGNsaWNrKT1cIm9uTW9kZUNsaWNrKG1vZGUpXCIgW2NsYXNzLi0tc2VsZWN0ZWRdPVwibW9kZS5pZCA9PT0gc2VsZWN0ZWRNb2RlKCk/LmlkXCI+XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAgPGkgW2NsYXNzXT1cIm1vZGUuaWNvblwiPjwvaT5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxzcGFuPnt7ICd0aGVtZS1tb2Rlcy4nICsgbW9kZS5pZCB8IHRyYW5zbGF0ZTogeyBzY29wZTogJ2xheW91dCcgfSB8IGFzeW5jIH19PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgfVxuICBgLFxuICBzdHlsZVVybDogJy4vdGhlbWUtbW9kZS1jaG9vc2VyLXdpZGdldC5zY3NzJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEZvcm1zTW9kdWxlLCBBWFNlbGVjdGlvbkNka01vZHVsZSwgQVhUcmFuc2xhdGlvbk1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIEFYUFRoZW1lTW9kZUNob29zZXJXaWRnZXRDb21wb25lbnQgZXh0ZW5kcyBBWFBWYWx1ZVdpZGdldENvbXBvbmVudDxzdHJpbmc+IHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IG1vZGVzID0gc2lnbmFsPFRoZW1lTW9kZU9wdGlvbltdPihbXG4gICAgeyBpZDogQVhQVGhlbWVNb2RlLkxpZ2h0LCBpY29uOiAnZmEtbGlnaHQgZmEtYnJpZ2h0bmVzcycgfSxcbiAgICB7IGlkOiBBWFBUaGVtZU1vZGUuRGFyaywgaWNvbjogJ2ZhLWxpZ2h0IGZhLW1vb24nIH0sXG4gICAgeyBpZDogQVhQVGhlbWVNb2RlLlN5c3RlbSwgaWNvbjogJ2ZhLWxpZ2h0IGZhLWRlc2t0b3AnIH0sXG4gIF0pO1xuXG4gIHByb3RlY3RlZCBzZWxlY3RlZE1vZGUgPSBzaWduYWw8VGhlbWVNb2RlT3B0aW9uIHwgbnVsbD4obnVsbCk7XG5cbiAgI2VmZiA9IGVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHRoaXMuZ2V0VmFsdWUoKSkge1xuICAgICAgdGhpcy5zZWxlY3RlZE1vZGUuc2V0KHRoaXMubW9kZXMoKS5maW5kKChtKSA9PiBtLmlkID09PSB0aGlzLmdldFZhbHVlKCkpID8/IHRoaXMubW9kZXMoKVswXSk7XG4gICAgfVxuICB9KTtcblxuICBwcm90ZWN0ZWQgb25Nb2RlQ2xpY2sobW9kZTogVGhlbWVNb2RlT3B0aW9uKSB7XG4gICAgdGhpcy5zZXRWYWx1ZShtb2RlLmlkKTtcbiAgfVxufVxuIl19","import { AXP_WIDGETS_LAYOUT_CATEGORY } from '@acorex/platform/layout/builder';\nimport { AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DISABLED_PROPERTY } from '@acorex/platform/widgets';\nexport const AXPThemeModeChooserWidget = {\n name: \"theme-mode-chooser\",\n title: \"Theme Mode Chooser\",\n icon: \"fa-solid fa-square\",\n type: 'editor',\n categories: AXP_WIDGETS_LAYOUT_CATEGORY,\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n ],\n components: {\n edit: {\n component: () => import('./theme-mode-chooser-widget.component').then((c) => c.AXPThemeModeChooserWidgetComponent),\n },\n }\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtbW9kZS1jaG9vc2VyLXdpZGdldC5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9zaGFyZWQvc3JjL2xpYi93aWRnZXRzL3RoZW1lLW1vZGUtY2hvb3Nlci90aGVtZS1tb2RlLWNob29zZXItd2lkZ2V0LmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsMkJBQTJCLEVBQW1CLE1BQU0saUNBQWlDLENBQUM7QUFDL0YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLHNCQUFzQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFNUcsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQW9CO0lBQ3hELElBQUksRUFBRSxvQkFBb0I7SUFDMUIsS0FBSyxFQUFFLG9CQUFvQjtJQUMzQixJQUFJLEVBQUUsb0JBQW9CO0lBQzFCLElBQUksRUFBRSxRQUFRO0lBQ2QsVUFBVSxFQUFFLDJCQUEyQjtJQUN2QyxVQUFVLEVBQUU7UUFDVixpQkFBaUI7UUFDakIsc0JBQXNCO1FBQ3RCLHFCQUFxQjtLQUN0QjtJQUNELFVBQVUsRUFBRTtRQUNWLElBQUksRUFBRTtZQUNKLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsdUNBQXVDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxrQ0FBa0MsQ0FBQztTQUNuSDtLQUNGO0NBQ0YsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUF9XSURHRVRTX0xBWU9VVF9DQVRFR09SWSwgQVhQV2lkZ2V0Q29uZmlnIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBBWFBfTkFNRV9QUk9QRVJUWSwgQVhQX0RBVEFfUEFUSF9QUk9QRVJUWSwgQVhQX0RJU0FCTEVEX1BST1BFUlRZIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS93aWRnZXRzJztcblxuZXhwb3J0IGNvbnN0IEFYUFRoZW1lTW9kZUNob29zZXJXaWRnZXQ6IEFYUFdpZGdldENvbmZpZyA9IHtcbiAgbmFtZTogXCJ0aGVtZS1tb2RlLWNob29zZXJcIixcbiAgdGl0bGU6IFwiVGhlbWUgTW9kZSBDaG9vc2VyXCIsXG4gIGljb246IFwiZmEtc29saWQgZmEtc3F1YXJlXCIsXG4gIHR5cGU6ICdlZGl0b3InLFxuICBjYXRlZ29yaWVzOiBBWFBfV0lER0VUU19MQVlPVVRfQ0FURUdPUlksXG4gIHByb3BlcnRpZXM6IFtcbiAgICBBWFBfTkFNRV9QUk9QRVJUWSxcbiAgICBBWFBfREFUQV9QQVRIX1BST1BFUlRZLFxuICAgIEFYUF9ESVNBQkxFRF9QUk9QRVJUWSxcbiAgXSxcbiAgY29tcG9uZW50czoge1xuICAgIGVkaXQ6IHtcbiAgICAgIGNvbXBvbmVudDogKCkgPT4gaW1wb3J0KCcuL3RoZW1lLW1vZGUtY2hvb3Nlci13aWRnZXQuY29tcG9uZW50JykudGhlbigoYykgPT4gYy5BWFBUaGVtZU1vZGVDaG9vc2VyV2lkZ2V0Q29tcG9uZW50KSxcbiAgICB9LFxuICB9XG59XG5cbmRlY2xhcmUgbW9kdWxlICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJyB7XG4gIGludGVyZmFjZSBBWFBXaWRnZXRUeXBlc01hcCB7XG4gICAgdGhlbWVNb2RlQ2hvb3NlcjogJ3RoZW1lLW1vZGUtY2hvb3Nlcic7XG4gIH1cbn0iXX0=","import { AXSelectionCdkModule } from '@acorex/cdk/selection';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPValueWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, effect, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/common\";\nimport * as i2 from \"@acorex/core/translation\";\nexport class AXPMenuOrientationChooserWidgetComponent extends AXPValueWidgetComponent {\n constructor() {\n super(...arguments);\n this.orientations = signal([\n { id: 'vertical', icon: 'fa-regular fa-square-ellipsis-vertical' },\n { id: 'horizontal', icon: 'fa-regular fa-square-ellipsis' },\n ]);\n this.selectedOrientation = signal(null);\n this.#eff = effect(() => {\n if (this.getValue()) {\n this.selectedOrientation.set(this.orientations().find((o) => o.id === this.getValue()) ?? this.orientations()[0]);\n }\n });\n }\n #eff;\n onOrientationClick(orientation) {\n this.setValue(orientation.id);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.6\", ngImport: i0, type: AXPMenuOrientationChooserWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.6\", type: AXPMenuOrientationChooserWidgetComponent, isStandalone: true, selector: \"ng-component\", usesInheritance: true, ngImport: i0, template: `\n @for (orientation of orientations(); track orientation.id) {\n <div (click)=\"onOrientationClick(orientation)\" [class.--selected]=\"orientation.id === selectedOrientation()?.id\">\n <div>\n <i [class]=\"orientation.icon\"></i>\n </div>\n <span>{{ 'menu-modes.' + orientation.id | translate: { scope: 'layout' } | async }}</span>\n </div>\n }\n `, isInline: true, styles: [\":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}:host>div{padding-top:.25rem!important;padding-bottom:.25rem!important}\\n\"], dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"pipe\", type: i1.AsyncPipe, name: \"async\" }, { kind: \"ngmodule\", type: FormsModule }, { kind: \"ngmodule\", type: AXSelectionCdkModule }, { kind: \"ngmodule\", type: AXTranslationModule }, { kind: \"pipe\", type: i2.AXTranslatorPipe, name: \"translate\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.6\", ngImport: i0, type: AXPMenuOrientationChooserWidgetComponent, decorators: [{\n type: Component,\n args: [{ template: `\n @for (orientation of orientations(); track orientation.id) {\n <div (click)=\"onOrientationClick(orientation)\" [class.--selected]=\"orientation.id === selectedOrientation()?.id\">\n <div>\n <i [class]=\"orientation.icon\"></i>\n </div>\n <span>{{ 'menu-modes.' + orientation.id | translate: { scope: 'layout' } | async }}</span>\n </div>\n }\n `, standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, FormsModule, AXSelectionCdkModule, AXTranslationModule], styles: [\":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}:host>div{padding-top:.25rem!important;padding-bottom:.25rem!important}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1vcmllbnRhdGlvbi1jaG9vc2VyLXdpZGdldC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9zaGFyZWQvc3JjL2xpYi93aWRnZXRzL21lbnUtb3JpZW50YXRpb24tY2hvb3Nlci9tZW51LW9yaWVudGF0aW9uLWNob29zZXItd2lkZ2V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25GLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQXVCN0MsTUFBTSxPQUFPLHdDQUF5QyxTQUFRLHVCQUErQjtJQWhCN0Y7O1FBaUJxQixpQkFBWSxHQUFHLE1BQU0sQ0FBMEI7WUFDaEUsRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSx3Q0FBd0MsRUFBRTtZQUNsRSxFQUFFLEVBQUUsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLCtCQUErQixFQUFFO1NBQzVELENBQUMsQ0FBQztRQUVPLHdCQUFtQixHQUFHLE1BQU0sQ0FBK0IsSUFBSSxDQUFDLENBQUM7UUFFM0UsU0FBSSxHQUFHLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDakIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQztnQkFDcEIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3BILENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztLQUtKO0lBVEMsSUFBSSxDQUlEO0lBRU8sa0JBQWtCLENBQUMsV0FBa0M7UUFDN0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDaEMsQ0FBQzs4R0FoQlUsd0NBQXdDO2tHQUF4Qyx3Q0FBd0MsK0ZBZnpDOzs7Ozs7Ozs7R0FTVCx1OUNBSVMsWUFBWSxtRkFBRSxXQUFXLDhCQUFFLG9CQUFvQiw4QkFBRSxtQkFBbUI7OzJGQUVuRSx3Q0FBd0M7a0JBaEJwRCxTQUFTOytCQUNFOzs7Ozs7Ozs7R0FTVCxjQUVXLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxXQUN0QyxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsb0JBQW9CLEVBQUUsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFNlbGVjdGlvbkNka01vZHVsZSB9IGZyb20gJ0BhY29yZXgvY2RrL3NlbGVjdGlvbic7XG5pbXBvcnQgeyBBWFRyYW5zbGF0aW9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlL3RyYW5zbGF0aW9uJztcbmltcG9ydCB7IEFYUFZhbHVlV2lkZ2V0Q29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgZWZmZWN0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbnRlcmZhY2UgTWVudU9yaWVudGF0aW9uT3B0aW9uIHtcbiAgaWQ6IHN0cmluZztcbiAgaWNvbjogc3RyaW5nO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6IGBcbiAgICBAZm9yIChvcmllbnRhdGlvbiBvZiBvcmllbnRhdGlvbnMoKTsgdHJhY2sgb3JpZW50YXRpb24uaWQpIHtcbiAgICAgIDxkaXYgKGNsaWNrKT1cIm9uT3JpZW50YXRpb25DbGljayhvcmllbnRhdGlvbilcIiBbY2xhc3MuLS1zZWxlY3RlZF09XCJvcmllbnRhdGlvbi5pZCA9PT0gc2VsZWN0ZWRPcmllbnRhdGlvbigpPy5pZFwiPlxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIDxpIFtjbGFzc109XCJvcmllbnRhdGlvbi5pY29uXCI+PC9pPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPHNwYW4+e3sgJ21lbnUtbW9kZXMuJyArIG9yaWVudGF0aW9uLmlkIHwgdHJhbnNsYXRlOiB7IHNjb3BlOiAnbGF5b3V0JyB9IHwgYXN5bmMgfX08L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICB9XG4gIGAsXG4gIHN0eWxlVXJsOiAnLi9tZW51LW9yaWVudGF0aW9uLWNob29zZXItd2lkZ2V0LnNjc3MnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRm9ybXNNb2R1bGUsIEFYU2VsZWN0aW9uQ2RrTW9kdWxlLCBBWFRyYW5zbGF0aW9uTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQTWVudU9yaWVudGF0aW9uQ2hvb3NlcldpZGdldENvbXBvbmVudCBleHRlbmRzIEFYUFZhbHVlV2lkZ2V0Q29tcG9uZW50PHN0cmluZz4ge1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgb3JpZW50YXRpb25zID0gc2lnbmFsPE1lbnVPcmllbnRhdGlvbk9wdGlvbltdPihbXG4gICAgeyBpZDogJ3ZlcnRpY2FsJywgaWNvbjogJ2ZhLXJlZ3VsYXIgZmEtc3F1YXJlLWVsbGlwc2lzLXZlcnRpY2FsJyB9LFxuICAgIHsgaWQ6ICdob3Jpem9udGFsJywgaWNvbjogJ2ZhLXJlZ3VsYXIgZmEtc3F1YXJlLWVsbGlwc2lzJyB9LFxuICBdKTtcblxuICBwcm90ZWN0ZWQgc2VsZWN0ZWRPcmllbnRhdGlvbiA9IHNpZ25hbDxNZW51T3JpZW50YXRpb25PcHRpb24gfCBudWxsPihudWxsKTtcblxuICAjZWZmID0gZWZmZWN0KCgpID0+IHtcbiAgICBpZiAodGhpcy5nZXRWYWx1ZSgpKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkT3JpZW50YXRpb24uc2V0KHRoaXMub3JpZW50YXRpb25zKCkuZmluZCgobykgPT4gby5pZCA9PT0gdGhpcy5nZXRWYWx1ZSgpKSA/PyB0aGlzLm9yaWVudGF0aW9ucygpWzBdKTtcbiAgICB9XG4gIH0pO1xuXG4gIHByb3RlY3RlZCBvbk9yaWVudGF0aW9uQ2xpY2sob3JpZW50YXRpb246IE1lbnVPcmllbnRhdGlvbk9wdGlvbikge1xuICAgIHRoaXMuc2V0VmFsdWUob3JpZW50YXRpb24uaWQpO1xuICB9XG59XG4iXX0=","import { AXP_WIDGETS_LAYOUT_CATEGORY } from '@acorex/platform/layout/builder';\nimport { AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DISABLED_PROPERTY } from '@acorex/platform/widgets';\nexport const AXPMenuOrientationChooserWidget = {\n name: \"menu-orientation-chooser\",\n title: \"Menu Orientation Chooser\",\n icon: \"fa-light fa-bars-staggered\",\n type: 'editor',\n categories: AXP_WIDGETS_LAYOUT_CATEGORY,\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n ],\n components: {\n edit: {\n component: () => import('./menu-orientation-chooser-widget.component').then((c) => c.AXPMenuOrientationChooserWidgetComponent),\n },\n }\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1vcmllbnRhdGlvbi1jaG9vc2VyLXdpZGdldC5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9zaGFyZWQvc3JjL2xpYi93aWRnZXRzL21lbnUtb3JpZW50YXRpb24tY2hvb3Nlci9tZW51LW9yaWVudGF0aW9uLWNob29zZXItd2lkZ2V0LmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsMkJBQTJCLEVBQW1CLE1BQU0saUNBQWlDLENBQUM7QUFDL0YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLHNCQUFzQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFNUcsTUFBTSxDQUFDLE1BQU0sK0JBQStCLEdBQW9CO0lBQzVELElBQUksRUFBRSwwQkFBMEI7SUFDaEMsS0FBSyxFQUFFLDBCQUEwQjtJQUNqQyxJQUFJLEVBQUUsNEJBQTRCO0lBQ2xDLElBQUksRUFBRSxRQUFRO0lBQ2QsVUFBVSxFQUFFLDJCQUEyQjtJQUN2QyxVQUFVLEVBQUU7UUFDUixpQkFBaUI7UUFDakIsc0JBQXNCO1FBQ3RCLHFCQUFxQjtLQUN4QjtJQUNELFVBQVUsRUFBRTtRQUNSLElBQUksRUFBRTtZQUNGLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsNkNBQTZDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyx3Q0FBd0MsQ0FBQztTQUNqSTtLQUNKO0NBQ0osQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUF9XSURHRVRTX0xBWU9VVF9DQVRFR09SWSwgQVhQV2lkZ2V0Q29uZmlnIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBBWFBfTkFNRV9QUk9QRVJUWSwgQVhQX0RBVEFfUEFUSF9QUk9QRVJUWSwgQVhQX0RJU0FCTEVEX1BST1BFUlRZIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS93aWRnZXRzJztcblxuZXhwb3J0IGNvbnN0IEFYUE1lbnVPcmllbnRhdGlvbkNob29zZXJXaWRnZXQ6IEFYUFdpZGdldENvbmZpZyA9IHtcbiAgICBuYW1lOiBcIm1lbnUtb3JpZW50YXRpb24tY2hvb3NlclwiLFxuICAgIHRpdGxlOiBcIk1lbnUgT3JpZW50YXRpb24gQ2hvb3NlclwiLFxuICAgIGljb246IFwiZmEtbGlnaHQgZmEtYmFycy1zdGFnZ2VyZWRcIixcbiAgICB0eXBlOiAnZWRpdG9yJyxcbiAgICBjYXRlZ29yaWVzOiBBWFBfV0lER0VUU19MQVlPVVRfQ0FURUdPUlksXG4gICAgcHJvcGVydGllczogW1xuICAgICAgICBBWFBfTkFNRV9QUk9QRVJUWSxcbiAgICAgICAgQVhQX0RBVEFfUEFUSF9QUk9QRVJUWSxcbiAgICAgICAgQVhQX0RJU0FCTEVEX1BST1BFUlRZLFxuICAgIF0sXG4gICAgY29tcG9uZW50czoge1xuICAgICAgICBlZGl0OiB7XG4gICAgICAgICAgICBjb21wb25lbnQ6ICgpID0+IGltcG9ydCgnLi9tZW51LW9yaWVudGF0aW9uLWNob29zZXItd2lkZ2V0LmNvbXBvbmVudCcpLnRoZW4oKGMpID0+IGMuQVhQTWVudU9yaWVudGF0aW9uQ2hvb3NlcldpZGdldENvbXBvbmVudCksXG4gICAgICAgIH0sXG4gICAgfVxufVxuXG5kZWNsYXJlIG1vZHVsZSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcicge1xuICAgIGludGVyZmFjZSBBWFBXaWRnZXRUeXBlc01hcCB7XG4gICAgICAgIG1lbnVPcmllbnRhdGlvbkNob29zZXI6ICdtZW51LW9yaWVudGF0aW9uLWNob29zZXInO1xuICAgIH1cbn0gIl19","import { AXSelectionCdkModule } from '@acorex/cdk/selection';\nimport { AXPValueWidgetComponent } from '@acorex/platform/layout/builder';\nimport { ChangeDetectionStrategy, Component, effect, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport * as i0 from \"@angular/core\";\nexport class AXPFontStyleChooserWidgetComponent extends AXPValueWidgetComponent {\n constructor() {\n super(...arguments);\n this.fonts = signal([\n { id: 'system-ui', title: 'Default' },\n { id: 'serif', title: 'Serif' },\n { id: 'sans-serif', title: 'Sans-serif' },\n { id: 'monospace', title: 'Monospace' },\n { id: 'arial', title: 'Arial' },\n { id: 'verdana', title: 'Verdana' },\n { id: 'tahoma', title: 'Tahoma' },\n { id: 'times-new-roman', title: 'Times New Roman' },\n { id: 'georgia', title: 'Georgia' },\n { id: 'helvetica', title: 'Helvetica' },\n { id: 'calibri', title: 'Calibri' },\n { id: 'cursive', title: 'Cursive' },\n { id: 'vazirmatn', title: 'Vazir وزیر' },\n ]);\n this.selectedFont = signal(null);\n this.#eff = effect(() => {\n if (this.getValue()) {\n this.selectedFont.set(this.fonts().find((f) => f.id === this.getValue()) ?? this.fonts()[0]);\n }\n });\n }\n #eff;\n onFontClick(font) {\n this.setValue(font.id);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.6\", ngImport: i0, type: AXPFontStyleChooserWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.6\", type: AXPFontStyleChooserWidgetComponent, isStandalone: true, selector: \"ng-component\", usesInheritance: true, ngImport: i0, template: `\n @for (font of fonts(); track font.id) {\n <div\n (click)=\"onFontClick(font)\"\n [class.--selected]=\"font.id === selectedFont()?.id\"\n [style.font-family]=\"font.id\"\n >\n <div>\n <span>{{ font.title }}</span>\n </div>\n </div>\n }\n `, isInline: true, styles: [\":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}\\n\"], dependencies: [{ kind: \"ngmodule\", type: FormsModule }, { kind: \"ngmodule\", type: AXSelectionCdkModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.6\", ngImport: i0, type: AXPFontStyleChooserWidgetComponent, decorators: [{\n type: Component,\n args: [{ template: `\n @for (font of fonts(); track font.id) {\n <div\n (click)=\"onFontClick(font)\"\n [class.--selected]=\"font.id === selectedFont()?.id\"\n [style.font-family]=\"font.id\"\n >\n <div>\n <span>{{ font.title }}</span>\n </div>\n </div>\n }\n `, standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [FormsModule, AXSelectionCdkModule], styles: [\":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9udC1zdHlsZS1jaG9vc2VyLXdpZGdldC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9zaGFyZWQvc3JjL2xpYi93aWRnZXRzL2ZvbnQtc3R5bGUtY2hvb3Nlci9mb250LXN0eWxlLWNob29zZXItd2lkZ2V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUUxRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQTBCN0MsTUFBTSxPQUFPLGtDQUFtQyxTQUFRLHVCQUErQjtJQW5CdkY7O1FBb0JxQixVQUFLLEdBQUcsTUFBTSxDQUFvQjtZQUNuRCxFQUFFLEVBQUUsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRTtZQUNyQyxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRTtZQUMvQixFQUFFLEVBQUUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRTtZQUN6QyxFQUFFLEVBQUUsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRTtZQUN2QyxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRTtZQUMvQixFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRTtZQUNuQyxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRTtZQUNqQyxFQUFFLEVBQUUsRUFBRSxpQkFBaUIsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUU7WUFDbkQsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUU7WUFDbkMsRUFBRSxFQUFFLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUU7WUFDdkMsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUU7WUFDbkMsRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUU7WUFDbkMsRUFBRSxFQUFFLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUU7U0FDekMsQ0FBQyxDQUFDO1FBRU8saUJBQVksR0FBRyxNQUFNLENBQXlCLElBQUksQ0FBQyxDQUFDO1FBRTlELFNBQUksR0FBRyxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQ2pCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUM7Z0JBQ3BCLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDL0YsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0tBS0o7SUFUQyxJQUFJLENBSUQ7SUFFTyxXQUFXLENBQUMsSUFBcUI7UUFDekMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDekIsQ0FBQzs4R0EzQlUsa0NBQWtDO2tHQUFsQyxrQ0FBa0MsK0ZBbEJuQzs7Ozs7Ozs7Ozs7O0dBWVQsZzVDQUlTLFdBQVcsOEJBQUUsb0JBQW9COzsyRkFFaEMsa0NBQWtDO2tCQW5COUMsU0FBUzsrQkFDRTs7Ozs7Ozs7Ozs7O0dBWVQsY0FFVyxJQUFJLG1CQUNDLHVCQUF1QixDQUFDLE1BQU0sV0FDdEMsQ0FBQyxXQUFXLEVBQUUsb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFNlbGVjdGlvbkNka01vZHVsZSB9IGZyb20gJ0BhY29yZXgvY2RrL3NlbGVjdGlvbic7XG5pbXBvcnQgeyBBWFBWYWx1ZVdpZGdldENvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbGF5b3V0L2J1aWxkZXInO1xuXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBlZmZlY3QsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmludGVyZmFjZSBGb250U3R5bGVPcHRpb24ge1xuICBpZDogc3RyaW5nO1xuICB0aXRsZTogc3RyaW5nO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6IGBcbiAgICBAZm9yIChmb250IG9mIGZvbnRzKCk7IHRyYWNrIGZvbnQuaWQpIHtcbiAgICAgIDxkaXZcbiAgICAgICAgKGNsaWNrKT1cIm9uRm9udENsaWNrKGZvbnQpXCJcbiAgICAgICAgW2NsYXNzLi0tc2VsZWN0ZWRdPVwiZm9udC5pZCA9PT0gc2VsZWN0ZWRGb250KCk/LmlkXCJcbiAgICAgICAgW3N0eWxlLmZvbnQtZmFtaWx5XT1cImZvbnQuaWRcIlxuICAgICAgPlxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIDxzcGFuPnt7IGZvbnQudGl0bGUgfX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgfVxuICBgLFxuICBzdHlsZVVybDogJy4vZm9udC1zdHlsZS1jaG9vc2VyLXdpZGdldC5zY3NzJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtGb3Jtc01vZHVsZSwgQVhTZWxlY3Rpb25DZGtNb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBBWFBGb250U3R5bGVDaG9vc2VyV2lkZ2V0Q29tcG9uZW50IGV4dGVuZHMgQVhQVmFsdWVXaWRnZXRDb21wb25lbnQ8c3RyaW5nPiB7XG4gIHByb3RlY3RlZCByZWFkb25seSBmb250cyA9IHNpZ25hbDxGb250U3R5bGVPcHRpb25bXT4oW1xuICAgIHsgaWQ6ICdzeXN0ZW0tdWknLCB0aXRsZTogJ0RlZmF1bHQnIH0sXG4gICAgeyBpZDogJ3NlcmlmJywgdGl0bGU6ICdTZXJpZicgfSxcbiAgICB7IGlkOiAnc2Fucy1zZXJpZicsIHRpdGxlOiAnU2Fucy1zZXJpZicgfSxcbiAgICB7IGlkOiAnbW9ub3NwYWNlJywgdGl0bGU6ICdNb25vc3BhY2UnIH0sXG4gICAgeyBpZDogJ2FyaWFsJywgdGl0bGU6ICdBcmlhbCcgfSxcbiAgICB7IGlkOiAndmVyZGFuYScsIHRpdGxlOiAnVmVyZGFuYScgfSxcbiAgICB7IGlkOiAndGFob21hJywgdGl0bGU6ICdUYWhvbWEnIH0sXG4gICAgeyBpZDogJ3RpbWVzLW5ldy1yb21hbicsIHRpdGxlOiAnVGltZXMgTmV3IFJvbWFuJyB9LFxuICAgIHsgaWQ6ICdnZW9yZ2lhJywgdGl0bGU6ICdHZW9yZ2lhJyB9LFxuICAgIHsgaWQ6ICdoZWx2ZXRpY2EnLCB0aXRsZTogJ0hlbHZldGljYScgfSxcbiAgICB7IGlkOiAnY2FsaWJyaScsIHRpdGxlOiAnQ2FsaWJyaScgfSxcbiAgICB7IGlkOiAnY3Vyc2l2ZScsIHRpdGxlOiAnQ3Vyc2l2ZScgfSxcbiAgICB7IGlkOiAndmF6aXJtYXRuJywgdGl0bGU6ICdWYXppciDZiNiy24zYsScgfSxcbiAgXSk7XG5cbiAgcHJvdGVjdGVkIHNlbGVjdGVkRm9udCA9IHNpZ25hbDxGb250U3R5bGVPcHRpb24gfCBudWxsPihudWxsKTtcblxuICAjZWZmID0gZWZmZWN0KCgpID0+IHtcbiAgICBpZiAodGhpcy5nZXRWYWx1ZSgpKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkRm9udC5zZXQodGhpcy5mb250cygpLmZpbmQoKGYpID0+IGYuaWQgPT09IHRoaXMuZ2V0VmFsdWUoKSkgPz8gdGhpcy5mb250cygpWzBdKTtcbiAgICB9XG4gIH0pO1xuXG4gIHByb3RlY3RlZCBvbkZvbnRDbGljayhmb250OiBGb250U3R5bGVPcHRpb24pIHtcbiAgICB0aGlzLnNldFZhbHVlKGZvbnQuaWQpO1xuICB9XG59XG4iXX0=","import { AXP_WIDGETS_LAYOUT_CATEGORY } from '@acorex/platform/layout/builder';\nimport { AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DISABLED_PROPERTY } from '@acorex/platform/widgets';\nexport const AXPFontStyleChooserWidget = {\n name: \"font-style-chooser\",\n title: \"Font Style Chooser\",\n icon: \"fa-light fa-font\",\n type: 'editor',\n categories: AXP_WIDGETS_LAYOUT_CATEGORY,\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n ],\n components: {\n edit: {\n component: () => import('./font-style-chooser-widget.component').then((c) => c.AXPFontStyleChooserWidgetComponent),\n },\n }\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9udC1zdHlsZS1jaG9vc2VyLXdpZGdldC5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9zaGFyZWQvc3JjL2xpYi93aWRnZXRzL2ZvbnQtc3R5bGUtY2hvb3Nlci9mb250LXN0eWxlLWNob29zZXItd2lkZ2V0LmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsMkJBQTJCLEVBQW1CLE1BQU0saUNBQWlDLENBQUM7QUFDL0YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLHNCQUFzQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFNUcsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQW9CO0lBQ3RELElBQUksRUFBRSxvQkFBb0I7SUFDMUIsS0FBSyxFQUFFLG9CQUFvQjtJQUMzQixJQUFJLEVBQUUsa0JBQWtCO0lBQ3hCLElBQUksRUFBRSxRQUFRO0lBQ2QsVUFBVSxFQUFFLDJCQUEyQjtJQUN2QyxVQUFVLEVBQUU7UUFDUixpQkFBaUI7UUFDakIsc0JBQXNCO1FBQ3RCLHFCQUFxQjtLQUN4QjtJQUNELFVBQVUsRUFBRTtRQUNSLElBQUksRUFBRTtZQUNGLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsdUNBQXVDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxrQ0FBa0MsQ0FBQztTQUNySDtLQUNKO0NBQ0osQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUF9XSURHRVRTX0xBWU9VVF9DQVRFR09SWSwgQVhQV2lkZ2V0Q29uZmlnIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBBWFBfTkFNRV9QUk9QRVJUWSwgQVhQX0RBVEFfUEFUSF9QUk9QRVJUWSwgQVhQX0RJU0FCTEVEX1BST1BFUlRZIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS93aWRnZXRzJztcblxuZXhwb3J0IGNvbnN0IEFYUEZvbnRTdHlsZUNob29zZXJXaWRnZXQ6IEFYUFdpZGdldENvbmZpZyA9IHtcbiAgICBuYW1lOiBcImZvbnQtc3R5bGUtY2hvb3NlclwiLFxuICAgIHRpdGxlOiBcIkZvbnQgU3R5bGUgQ2hvb3NlclwiLFxuICAgIGljb246IFwiZmEtbGlnaHQgZmEtZm9udFwiLFxuICAgIHR5cGU6ICdlZGl0b3InLFxuICAgIGNhdGVnb3JpZXM6IEFYUF9XSURHRVRTX0xBWU9VVF9DQVRFR09SWSxcbiAgICBwcm9wZXJ0aWVzOiBbXG4gICAgICAgIEFYUF9OQU1FX1BST1BFUlRZLFxuICAgICAgICBBWFBfREFUQV9QQVRIX1BST1BFUlRZLFxuICAgICAgICBBWFBfRElTQUJMRURfUFJPUEVSVFksXG4gICAgXSxcbiAgICBjb21wb25lbnRzOiB7XG4gICAgICAgIGVkaXQ6IHtcbiAgICAgICAgICAgIGNvbXBvbmVudDogKCkgPT4gaW1wb3J0KCcuL2ZvbnQtc3R5bGUtY2hvb3Nlci13aWRnZXQuY29tcG9uZW50JykudGhlbigoYykgPT4gYy5BWFBGb250U3R5bGVDaG9vc2VyV2lkZ2V0Q29tcG9uZW50KSxcbiAgICAgICAgfSxcbiAgICB9XG59XG5cbmRlY2xhcmUgbW9kdWxlICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJyB7XG4gICAgaW50ZXJmYWNlIEFYUFdpZGdldFR5cGVzTWFwIHtcbiAgICAgICAgZm9udFN0eWxlQ2hvb3NlcjogJ2ZvbnQtc3R5bGUtY2hvb3Nlcic7XG4gICAgfVxufSAiXX0=","import { AXSelectionCdkModule } from '@acorex/cdk/selection';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPValueWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, effect, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/common\";\nimport * as i2 from \"@acorex/core/translation\";\nexport class AXPFontSizeChooserWidgetComponent extends AXPValueWidgetComponent {\n constructor() {\n super(...arguments);\n this.sizes = signal(['small', 'medium', 'large', 'x-large']);\n this.selectedSize = signal(null);\n this.#eff = effect(() => {\n if (this.getValue()) {\n this.selectedSize.set(this.sizes().find((s) => s === this.getValue()) ?? this.sizes()[0]);\n }\n });\n }\n #eff;\n onSizeClick(size) {\n this.setValue(size);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.6\", ngImport: i0, type: AXPFontSizeChooserWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.6\", type: AXPFontSizeChooserWidgetComponent, isStandalone: true, selector: \"ng-component\", usesInheritance: true, ngImport: i0, template: `\n @for (size of sizes(); track size) {\n <div (click)=\"onSizeClick(size)\" [style.font-size]=\"size\" [class.--selected]=\"size === selectedSize()\">\n <div>\n <span>{{ 'font-sizes.' + size | translate: { scope: 'layout' } | async }}</span>\n </div>\n </div>\n }\n `, isInline: true, styles: [\":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}\\n\"], dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"pipe\", type: i1.AsyncPipe, name: \"async\" }, { kind: \"ngmodule\", type: FormsModule }, { kind: \"ngmodule\", type: AXSelectionCdkModule }, { kind: \"ngmodule\", type: AXTranslationModule }, { kind: \"pipe\", type: i2.AXTranslatorPipe, name: \"translate\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.6\", ngImport: i0, type: AXPFontSizeChooserWidgetComponent, decorators: [{\n type: Component,\n args: [{ template: `\n @for (size of sizes(); track size) {\n <div (click)=\"onSizeClick(size)\" [style.font-size]=\"size\" [class.--selected]=\"size === selectedSize()\">\n <div>\n <span>{{ 'font-sizes.' + size | translate: { scope: 'layout' } | async }}</span>\n </div>\n </div>\n }\n `, standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, FormsModule, AXSelectionCdkModule, AXTranslationModule], styles: [\":host{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem}:host>div{display:flex;cursor:pointer;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}:host>div:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border-color:rgb(var(--ax-sys-color-border-surface))}:host>div{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s}:host>div:hover{background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>div.--selected{background-color:rgb(var(--ax-sys-color-primary-lighter-surface));color:rgb(var(--ax-sys-color-on-primary-lighter-surface));border-color:rgb(var(--ax-sys-color-border-primary-lighter-surface))}:host>div>div{display:flex;align-items:center;justify-content:center}:host>div>div i{font-size:1.25rem;line-height:1.75rem}:host>div>span{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.625}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9udC1zaXplLWNob29zZXItd2lkZ2V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdGhlbWVzL3NoYXJlZC9zcmMvbGliL3dpZGdldHMvZm9udC1zaXplLWNob29zZXIvZm9udC1zaXplLWNob29zZXItd2lkZ2V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25GLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQWlCN0MsTUFBTSxPQUFPLGlDQUFrQyxTQUFRLHVCQUErQjtJQWZ0Rjs7UUFnQnFCLFVBQUssR0FBRyxNQUFNLENBQVcsQ0FBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDO1FBRTNFLGlCQUFZLEdBQUcsTUFBTSxDQUFnQixJQUFJLENBQUMsQ0FBQztRQUVyRCxTQUFJLEdBQUcsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUNqQixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDO2dCQUNwQixJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDNUYsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0tBS0o7SUFUQyxJQUFJLENBSUQ7SUFFTyxXQUFXLENBQUMsSUFBWTtRQUNoQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RCLENBQUM7OEdBYlUsaUNBQWlDO2tHQUFqQyxpQ0FBaUMsK0ZBZGxDOzs7Ozs7OztHQVFULGc1Q0FJUyxZQUFZLG1GQUFFLFdBQVcsOEJBQUUsb0JBQW9CLDhCQUFFLG1CQUFtQjs7MkZBRW5FLGlDQUFpQztrQkFmN0MsU0FBUzsrQkFDRTs7Ozs7Ozs7R0FRVCxjQUVXLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxXQUN0QyxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsb0JBQW9CLEVBQUUsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFNlbGVjdGlvbkNka01vZHVsZSB9IGZyb20gJ0BhY29yZXgvY2RrL3NlbGVjdGlvbic7XG5pbXBvcnQgeyBBWFRyYW5zbGF0aW9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlL3RyYW5zbGF0aW9uJztcbmltcG9ydCB7IEFYUFZhbHVlV2lkZ2V0Q29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgZWZmZWN0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6IGBcbiAgICBAZm9yIChzaXplIG9mIHNpemVzKCk7IHRyYWNrIHNpemUpIHtcbiAgICAgIDxkaXYgKGNsaWNrKT1cIm9uU2l6ZUNsaWNrKHNpemUpXCIgW3N0eWxlLmZvbnQtc2l6ZV09XCJzaXplXCIgW2NsYXNzLi0tc2VsZWN0ZWRdPVwic2l6ZSA9PT0gc2VsZWN0ZWRTaXplKClcIj5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICA8c3Bhbj57eyAnZm9udC1zaXplcy4nICsgc2l6ZSB8IHRyYW5zbGF0ZTogeyBzY29wZTogJ2xheW91dCcgfSB8IGFzeW5jIH19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIH1cbiAgYCxcbiAgc3R5bGVVcmw6ICcuL2ZvbnQtc2l6ZS1jaG9vc2VyLXdpZGdldC5zY3NzJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEZvcm1zTW9kdWxlLCBBWFNlbGVjdGlvbkNka01vZHVsZSwgQVhUcmFuc2xhdGlvbk1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIEFYUEZvbnRTaXplQ2hvb3NlcldpZGdldENvbXBvbmVudCBleHRlbmRzIEFYUFZhbHVlV2lkZ2V0Q29tcG9uZW50PHN0cmluZz4ge1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgc2l6ZXMgPSBzaWduYWw8c3RyaW5nW10+KFsnc21hbGwnLCAnbWVkaXVtJywgJ2xhcmdlJywgJ3gtbGFyZ2UnXSk7XG5cbiAgcHJvdGVjdGVkIHNlbGVjdGVkU2l6ZSA9IHNpZ25hbDxzdHJpbmcgfCBudWxsPihudWxsKTtcblxuICAjZWZmID0gZWZmZWN0KCgpID0+IHtcbiAgICBpZiAodGhpcy5nZXRWYWx1ZSgpKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkU2l6ZS5zZXQodGhpcy5zaXplcygpLmZpbmQoKHMpID0+IHMgPT09IHRoaXMuZ2V0VmFsdWUoKSkgPz8gdGhpcy5zaXplcygpWzBdKTtcbiAgICB9XG4gIH0pO1xuXG4gIHByb3RlY3RlZCBvblNpemVDbGljayhzaXplOiBzdHJpbmcpIHtcbiAgICB0aGlzLnNldFZhbHVlKHNpemUpO1xuICB9XG59XG4iXX0=","import { AXP_WIDGETS_LAYOUT_CATEGORY } from '@acorex/platform/layout/builder';\nimport { AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DISABLED_PROPERTY } from '@acorex/platform/widgets';\nexport const AXPFontSizeChooserWidget = {\n name: \"font-size-chooser\",\n title: \"Font Size Chooser\",\n icon: \"fa-light fa-text-size\",\n type: 'editor',\n categories: AXP_WIDGETS_LAYOUT_CATEGORY,\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n ],\n components: {\n edit: {\n component: () => import('./font-size-chooser-widget.component').then((c) => c.AXPFontSizeChooserWidgetComponent),\n },\n }\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9udC1zaXplLWNob29zZXItd2lkZ2V0LmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdGhlbWVzL3NoYXJlZC9zcmMvbGliL3dpZGdldHMvZm9udC1zaXplLWNob29zZXIvZm9udC1zaXplLWNob29zZXItd2lkZ2V0LmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsMkJBQTJCLEVBQW1CLE1BQU0saUNBQWlDLENBQUM7QUFDL0YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLHNCQUFzQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFNUcsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQW9CO0lBQ3JELElBQUksRUFBRSxtQkFBbUI7SUFDekIsS0FBSyxFQUFFLG1CQUFtQjtJQUMxQixJQUFJLEVBQUUsdUJBQXVCO0lBQzdCLElBQUksRUFBRSxRQUFRO0lBQ2QsVUFBVSxFQUFFLDJCQUEyQjtJQUN2QyxVQUFVLEVBQUU7UUFDUixpQkFBaUI7UUFDakIsc0JBQXNCO1FBQ3RCLHFCQUFxQjtLQUN4QjtJQUNELFVBQVUsRUFBRTtRQUNSLElBQUksRUFBRTtZQUNGLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsc0NBQXNDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxpQ0FBaUMsQ0FBQztTQUNuSDtLQUNKO0NBQ0osQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUF9XSURHRVRTX0xBWU9VVF9DQVRFR09SWSwgQVhQV2lkZ2V0Q29uZmlnIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlcic7XG5pbXBvcnQgeyBBWFBfTkFNRV9QUk9QRVJUWSwgQVhQX0RBVEFfUEFUSF9QUk9QRVJUWSwgQVhQX0RJU0FCTEVEX1BST1BFUlRZIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS93aWRnZXRzJztcblxuZXhwb3J0IGNvbnN0IEFYUEZvbnRTaXplQ2hvb3NlcldpZGdldDogQVhQV2lkZ2V0Q29uZmlnID0ge1xuICAgIG5hbWU6IFwiZm9udC1zaXplLWNob29zZXJcIixcbiAgICB0aXRsZTogXCJGb250IFNpemUgQ2hvb3NlclwiLFxuICAgIGljb246IFwiZmEtbGlnaHQgZmEtdGV4dC1zaXplXCIsXG4gICAgdHlwZTogJ2VkaXRvcicsXG4gICAgY2F0ZWdvcmllczogQVhQX1dJREdFVFNfTEFZT1VUX0NBVEVHT1JZLFxuICAgIHByb3BlcnRpZXM6IFtcbiAgICAgICAgQVhQX05BTUVfUFJPUEVSVFksXG4gICAgICAgIEFYUF9EQVRBX1BBVEhfUFJPUEVSVFksXG4gICAgICAgIEFYUF9ESVNBQkxFRF9QUk9QRVJUWSxcbiAgICBdLFxuICAgIGNvbXBvbmVudHM6IHtcbiAgICAgICAgZWRpdDoge1xuICAgICAgICAgICAgY29tcG9uZW50OiAoKSA9PiBpbXBvcnQoJy4vZm9udC1zaXplLWNob29zZXItd2lkZ2V0LmNvbXBvbmVudCcpLnRoZW4oKGMpID0+IGMuQVhQRm9udFNpemVDaG9vc2VyV2lkZ2V0Q29tcG9uZW50KSxcbiAgICAgICAgfSxcbiAgICB9XG59XG5cbmRlY2xhcmUgbW9kdWxlICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJyB7XG4gICAgaW50ZXJmYWNlIEFYUFdpZGdldFR5cGVzTWFwIHtcbiAgICAgICAgZm9udFNpemVDaG9vc2VyOiAnZm9udC1zaXplLWNob29zZXInO1xuICAgIH1cbn0gIl19","import { AXP_SETTING_DEFINITION_PROVIDER } from '@acorex/platform/common';\nimport { inject, Injector, NgModule } from '@angular/core';\nimport { AXPThemeSlotComponent } from './slots/theme-slot.component';\nimport { AXPLayoutThemeService } from './theme.service';\nimport { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\nimport { AXPThemePaletteChooserWidget } from './widgets/theme-palette-chooser';\nimport { AXPThemeModeChooserWidget } from './widgets/theme-mode-chooser';\nimport { AXPMenuOrientationChooserWidget } from './widgets/menu-orientation-chooser';\nimport { AXPFontStyleChooserWidget } from './widgets/font-style-chooser';\nimport { AXPFontSizeChooserWidget } from './widgets/font-size-chooser';\nimport { AXPAppStartUpService } from '@acorex/platform/core';\nimport { AXPComponentSlotModule } from '@acorex/platform/layout/components';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/platform/core\";\nimport * as i2 from \"@acorex/platform/layout/components\";\nimport * as i3 from \"@acorex/platform/layout/builder\";\nexport class AXPThemesSharedModule {\n constructor(appInitService, injector) {\n const service = injector.get(AXPLayoutThemeService);\n appInitService.registerTask({\n name: 'layout-theme',\n statusText: 'Applying layout theme settings ...',\n priority: 100,\n run: async () => {\n await service.loadSettings();\n }\n });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.6\", ngImport: i0, type: AXPThemesSharedModule, deps: [{ token: i1.AXPAppStartUpService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.0.6\", ngImport: i0, type: AXPThemesSharedModule, imports: [i2.AXPComponentSlotModule, i3.AXPLayoutBuilderModule] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.0.6\", ngImport: i0, type: AXPThemesSharedModule, providers: [\n {\n provide: AXP_SETTING_DEFINITION_PROVIDER,\n useFactory: async () => {\n const injector = inject(Injector);\n const provider = (await import('./settings.provider')).AXPThemeSettingProvider;\n return new provider(injector);\n },\n multi: true\n }\n ], imports: [AXPComponentSlotModule.forRoot({\n 'root-header-end': [\n {\n priority: 50,\n name: 'theme',\n component: AXPThemeSlotComponent,\n },\n ],\n }),\n AXPLayoutBuilderModule.forChild({\n widgets: [\n AXPThemePaletteChooserWidget,\n AXPThemeModeChooserWidget,\n AXPMenuOrientationChooserWidget,\n AXPFontSizeChooserWidget,\n AXPFontStyleChooserWidget\n ]\n })] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.6\", ngImport: i0, type: AXPThemesSharedModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [\n AXPComponentSlotModule.forRoot({\n 'root-header-end': [\n {\n priority: 50,\n name: 'theme',\n component: AXPThemeSlotComponent,\n },\n ],\n }),\n AXPLayoutBuilderModule.forChild({\n widgets: [\n AXPThemePaletteChooserWidget,\n AXPThemeModeChooserWidget,\n AXPMenuOrientationChooserWidget,\n AXPFontSizeChooserWidget,\n AXPFontStyleChooserWidget\n ]\n })\n ],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXP_SETTING_DEFINITION_PROVIDER,\n useFactory: async () => {\n const injector = inject(Injector);\n const provider = (await import('./settings.provider')).AXPThemeSettingProvider;\n return new provider(injector);\n },\n multi: true\n }\n ],\n }]\n }], ctorParameters: () => [{ type: i1.AXPAppStartUpService }, { type: i0.Injector }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vdGhlbWVzL3NoYXJlZC9zcmMvbGliL3NoYXJlZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDMUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3pFLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3pFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzdELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOzs7OztBQW9DNUUsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQyxZQUNFLGNBQW9DLEVBQ3BDLFFBQWtCO1FBRWxCLE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUNwRCxjQUFjLENBQUMsWUFBWSxDQUFDO1lBQzFCLElBQUksRUFBRSxjQUFjO1lBQ3BCLFVBQVUsRUFBRSxvQ0FBb0M7WUFDaEQsUUFBUSxFQUFFLEdBQUc7WUFDYixHQUFHLEVBQUUsS0FBSyxJQUFJLEVBQUU7Z0JBQ2QsTUFBTSxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDL0IsQ0FBQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7OEdBZFUscUJBQXFCOytHQUFyQixxQkFBcUI7K0dBQXJCLHFCQUFxQixhQVpyQjtZQUNUO2dCQUNFLE9BQU8sRUFBRSwrQkFBK0I7Z0JBQ3hDLFVBQVUsRUFBRSxLQUFLLElBQUksRUFBRTtvQkFDckIsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO29CQUNsQyxNQUFNLFFBQVEsR0FBRyxDQUFDLE1BQU0sTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQztvQkFDL0UsT0FBTyxJQUFJLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDaEMsQ0FBQztnQkFDRCxLQUFLLEVBQUUsSUFBSTthQUNaO1NBQ0YsWUEvQkMsc0JBQXNCLENBQUMsT0FBTyxDQUFDO2dCQUM3QixpQkFBaUIsRUFBRTtvQkFDakI7d0JBQ0UsUUFBUSxFQUFFLEVBQUU7d0JBQ1osSUFBSSxFQUFFLE9BQU87d0JBQ2IsU0FBUyxFQUFFLHFCQUFxQjtxQkFDakM7aUJBQ0Y7YUFDRixDQUFDO1lBQ0Ysc0JBQXNCLENBQUMsUUFBUSxDQUFDO2dCQUM5QixPQUFPLEVBQUU7b0JBQ1AsNEJBQTRCO29CQUM1Qix5QkFBeUI7b0JBQ3pCLCtCQUErQjtvQkFDL0Isd0JBQXdCO29CQUN4Qix5QkFBeUI7aUJBQzFCO2FBQ0YsQ0FBQzs7MkZBZ0JPLHFCQUFxQjtrQkFuQ2pDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLHNCQUFzQixDQUFDLE9BQU8sQ0FBQzs0QkFDN0IsaUJBQWlCLEVBQUU7Z0NBQ2pCO29DQUNFLFFBQVEsRUFBRSxFQUFFO29DQUNaLElBQUksRUFBRSxPQUFPO29DQUNiLFNBQVMsRUFBRSxxQkFBcUI7aUNBQ2pDOzZCQUNGO3lCQUNGLENBQUM7d0JBQ0Ysc0JBQXNCLENBQUMsUUFBUSxDQUFDOzRCQUM5QixPQUFPLEVBQUU7Z0NBQ1AsNEJBQTRCO2dDQUM1Qix5QkFBeUI7Z0NBQ3pCLCtCQUErQjtnQ0FDL0Isd0JBQXdCO2dDQUN4Qix5QkFBeUI7NkJBQzFCO3lCQUNGLENBQUM7cUJBQ0g7b0JBQ0QsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsWUFBWSxFQUFFLEVBQUU7b0JBQ2hCLFNBQVMsRUFBRTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsK0JBQStCOzRCQUN4QyxVQUFVLEVBQUUsS0FBSyxJQUFJLEVBQUU7Z0NBQ3JCLE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztnQ0FDbEMsTUFBTSxRQUFRLEdBQUcsQ0FBQyxNQUFNLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsdUJBQXVCLENBQUM7Z0NBQy9FLE9BQU8sSUFBSSxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7NEJBQ2hDLENBQUM7NEJBQ0QsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFBfU0VUVElOR19ERUZJTklUSU9OX1BST1ZJREVSIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RvciwgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYUFRoZW1lU2xvdENvbXBvbmVudCB9IGZyb20gJy4vc2xvdHMvdGhlbWUtc2xvdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQVhQTGF5b3V0VGhlbWVTZXJ2aWNlIH0gZnJvbSAnLi90aGVtZS5zZXJ2aWNlJztcbmltcG9ydCB7IEFYUExheW91dEJ1aWxkZXJNb2R1bGUgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJztcbmltcG9ydCB7IEFYUFRoZW1lUGFsZXR0ZUNob29zZXJXaWRnZXQgfSBmcm9tICcuL3dpZGdldHMvdGhlbWUtcGFsZXR0ZS1jaG9vc2VyJztcbmltcG9ydCB7IEFYUFRoZW1lTW9kZUNob29zZXJXaWRnZXQgfSBmcm9tICcuL3dpZGdldHMvdGhlbWUtbW9kZS1jaG9vc2VyJztcbmltcG9ydCB7IEFYUE1lbnVPcmllbnRhdGlvbkNob29zZXJXaWRnZXQgfSBmcm9tICcuL3dpZGdldHMvbWVudS1vcmllbnRhdGlvbi1jaG9vc2VyJztcbmltcG9ydCB7IEFYUEZvbnRTdHlsZUNob29zZXJXaWRnZXQgfSBmcm9tICcuL3dpZGdldHMvZm9udC1zdHlsZS1jaG9vc2VyJztcbmltcG9ydCB7IEFYUEZvbnRTaXplQ2hvb3NlcldpZGdldCB9IGZyb20gJy4vd2lkZ2V0cy9mb250LXNpemUtY2hvb3Nlcic7XG5pbXBvcnQgeyBBWFBBcHBTdGFydFVwU2VydmljZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29yZSc7XG5pbXBvcnQgeyBBWFBDb21wb25lbnRTbG90TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXQvY29tcG9uZW50cyc7XG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQVhQQ29tcG9uZW50U2xvdE1vZHVsZS5mb3JSb290KHtcbiAgICAgICdyb290LWhlYWRlci1lbmQnOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBwcmlvcml0eTogNTAsXG4gICAgICAgICAgbmFtZTogJ3RoZW1lJyxcbiAgICAgICAgICBjb21wb25lbnQ6IEFYUFRoZW1lU2xvdENvbXBvbmVudCxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSksXG4gICAgQVhQTGF5b3V0QnVpbGRlck1vZHVsZS5mb3JDaGlsZCh7XG4gICAgICB3aWRnZXRzOiBbXG4gICAgICAgIEFYUFRoZW1lUGFsZXR0ZUNob29zZXJXaWRnZXQsXG4gICAgICAgIEFYUFRoZW1lTW9kZUNob29zZXJXaWRnZXQsXG4gICAgICAgIEFYUE1lbnVPcmllbnRhdGlvbkNob29zZXJXaWRnZXQsXG4gICAgICAgIEFYUEZvbnRTaXplQ2hvb3NlcldpZGdldCxcbiAgICAgICAgQVhQRm9udFN0eWxlQ2hvb3NlcldpZGdldFxuICAgICAgXVxuICAgIH0pXG4gIF0sXG4gIGV4cG9ydHM6IFtdLFxuICBkZWNsYXJhdGlvbnM6IFtdLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBBWFBfU0VUVElOR19ERUZJTklUSU9OX1BST1ZJREVSLFxuICAgICAgdXNlRmFjdG9yeTogYXN5bmMgKCkgPT4ge1xuICAgICAgICBjb25zdCBpbmplY3RvciA9IGluamVjdChJbmplY3Rvcik7XG4gICAgICAgIGNvbnN0IHByb3ZpZGVyID0gKGF3YWl0IGltcG9ydCgnLi9zZXR0aW5ncy5wcm92aWRlcicpKS5BWFBUaGVtZVNldHRpbmdQcm92aWRlcjtcbiAgICAgICAgcmV0dXJuIG5ldyBwcm92aWRlcihpbmplY3Rvcik7XG4gICAgICB9LFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9XG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEFYUFRoZW1lc1NoYXJlZE1vZHVsZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIGFwcEluaXRTZXJ2aWNlOiBBWFBBcHBTdGFydFVwU2VydmljZSxcbiAgICBpbmplY3RvcjogSW5qZWN0b3JcbiAgKSB7XG4gICAgY29uc3Qgc2VydmljZSA9IGluamVjdG9yLmdldChBWFBMYXlvdXRUaGVtZVNlcnZpY2UpO1xuICAgIGFwcEluaXRTZXJ2aWNlLnJlZ2lzdGVyVGFzayh7XG4gICAgICBuYW1lOiAnbGF5b3V0LXRoZW1lJyxcbiAgICAgIHN0YXR1c1RleHQ6ICdBcHBseWluZyBsYXlvdXQgdGhlbWUgc2V0dGluZ3MgLi4uJyxcbiAgICAgIHByaW9yaXR5OiAxMDAsXG4gICAgICBydW46IGFzeW5jICgpID0+IHtcbiAgICAgICAgYXdhaXQgc2VydmljZS5sb2FkU2V0dGluZ3MoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LXBsYXRmb3JtLXRoZW1lcy1zaGFyZWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL3RoZW1lcy9zaGFyZWQvc3JjL2Fjb3JleC1wbGF0Zm9ybS10aGVtZXMtc2hhcmVkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":["i5","i2","i1","i3"],"mappings":"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"}
|