@acorex/platform 19.2.16 → 19.2.17-next.0
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/fesm2022/{acorex-platform-themes-default-entity-master-list-view.component-ewOei4ta.mjs → acorex-platform-themes-default-entity-master-list-view.component-BLM2kf7R.mjs} +25 -10
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-BLM2kf7R.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-DcSk0ia4.mjs → acorex-platform-themes-default-entity-master-single-view.component-BmBPyfQY.mjs} +3 -3
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-BmBPyfQY.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default.mjs +10 -9
- package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
- package/fesm2022/acorex-platform-themes-shared.mjs +48 -8
- package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
- package/package.json +1 -1
- package/themes/default/lib/layouts/base/simple-page/simple-page.layout.d.ts +3 -2
- package/themes/shared/lib/components/layout-elements/layout-side.component.d.ts +9 -2
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-ewOei4ta.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-DcSk0ia4.mjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-platform-themes-shared.mjs","sources":["../../../../libs/platform/themes/shared/src/lib/components/layout-elements/layout-blocks.component.ts","../../../../libs/platform/themes/shared/src/lib/components/layout-elements/layout-actions.component.ts","../../../../libs/platform/themes/shared/src/lib/components/layout-elements/layout-header.component.ts","../../../../libs/platform/themes/shared/src/lib/components/layout-elements/layout-section.component.ts","../../../../libs/platform/themes/shared/src/lib/components/layout-elements/layout-side.component.ts","../../../../libs/platform/themes/shared/src/lib/components/layout-elements/layout-footer.component.ts","../../../../libs/platform/themes/shared/src/lib/components/layout-elements/layout-tool-bar.component.ts","../../../../libs/platform/themes/shared/src/lib/components/layout-elements/layout-list.component.ts","../../../../libs/platform/themes/shared/src/lib/setting.keys.ts","../../../../libs/platform/themes/shared/src/lib/theme.types.ts","../../../../libs/platform/themes/shared/src/lib/palette.provider.ts","../../../../libs/platform/themes/shared/src/lib/theme.service.ts","../../../../libs/platform/themes/shared/src/lib/components/slots/theme-slot.component.ts","../../../../libs/platform/themes/shared/src/lib/setting.provider.ts","../../../../libs/platform/themes/shared/src/lib/widgets/theme-color-selection/theme-color-selection-widget-edit.component.ts","../../../../libs/platform/themes/shared/src/lib/widgets/theme-color-selection/theme-color-selection-widget.config.ts","../../../../libs/platform/themes/shared/src/lib/shared.module.ts","../../../../libs/platform/themes/shared/src/acorex-platform-themes-shared.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n standalone: true,\n selector: `\n axp-layout-content, \n axp-layout-header-container,\n axp-layout-side-container,\n axp-layout-sections,\n axp-layout-section-container,\n axp-layout-body,\n axp-layout-prefix,\n axp-layout-suffix,\n axp-layout-title, \n axp-layout-nav-button, \n axp-layout-description, \n axp-layout-title-bar,\n axp-layout-breadcrumbs,\n axp-layout-list-action,\n `,\n template: '<ng-content></ng-content>',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\n\nexport class AXPThemeLayoutBlockComponent {\n}\n\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, contentChild, TemplateRef, viewChild, ViewEncapsulation } from '@angular/core';\n\n\n@Component({\n standalone: true,\n selector: 'axp-layout-actions-primary',\n template: `<ng-content select=\"ax-button,ax-dropdown-button\"></ng-content>`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class AXPThemeLayoutPagePrimaryActionsComponent {\n}\n\n@Component({\n standalone: true,\n selector: 'axp-layout-actions-secondary',\n template: `<ng-content select=\"ax-button-item\"></ng-content>`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class AXPThemeLayoutPageSecondaryActionsComponent {\n}\n\n@Component({\n imports: [CommonModule],\n standalone: true,\n selector: 'axp-layout-actions',\n template: `\n\n <ng-template #primary>\n <ng-content select=\"axp-layout-actions-primary\"></ng-content>\n </ng-template>\n\n <ng-template #secondary>\n <ng-content select=\"axp-layout-actions-secondary\"></ng-content>\n </ng-template>\n\n <ng-content></ng-content>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\n\nexport class AXPThemeLayoutActionsComponent {\n\n public readonly primaryTemplate = viewChild<TemplateRef<any>>('primary');\n private readonly primaryContent = contentChild(AXPThemeLayoutPagePrimaryActionsComponent);\n public hasPrimary = computed(() => this.primaryContent() != null);\n\n public readonly secondaryTemplate = viewChild<TemplateRef<any>>('secondary');\n private readonly secondaryContent = contentChild(AXPThemeLayoutPageSecondaryActionsComponent);\n public hasSecondary = computed(() => this.secondaryContent() != null);\n\n}\n\n\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, TemplateRef, viewChild, ViewEncapsulation } from '@angular/core';\n\n@Component({\n imports: [CommonModule],\n standalone: true,\n selector: 'axp-layout-header',\n template: `\n <ng-template #breadcrumbs>\n <ng-content select=\"axp-layout-breadcrumbs\"></ng-content>\n </ng-template>\n\n <ng-template #navbar>\n <ng-content select=\"axp-layout-toolbar\"></ng-content>\n </ng-template>\n\n <ng-template #actions>\n <ng-content select=\"axp-layout-actions\"></ng-content>\n </ng-template>\n\n <ng-template #description>\n <ng-content select=\"axp-layout-description\"></ng-content>\n </ng-template>\n\n <ng-template #title>\n <ng-content select=\"axp-layout-title\"></ng-content>\n </ng-template>\n <ng-template #navButton>\n <ng-content select=\"axp-layout-nav-button\"></ng-content>\n </ng-template>\n <ng-content select=\"axp-layout-prefix\"></ng-content>\n <ng-content select=\"axp-layout-suffix\"></ng-content>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\n\nexport class AXPThemeLayoutHeaderTemplateComponent {\n\n public readonly title = viewChild<TemplateRef<any>>('title');\n public readonly description = viewChild<TemplateRef<any>>('description');\n public readonly actions = viewChild<TemplateRef<any>>('actions');\n public readonly navbar = viewChild<TemplateRef<any>>('navbar');\n public readonly breadcrumbs = viewChild<TemplateRef<any>>('breadcrumbs');\n public readonly navButton = viewChild<TemplateRef<any>>('navButton');\n\n\n}\n\n\n","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, contentChild, input, TemplateRef, viewChild, ViewEncapsulation } from \"@angular/core\";\nimport { AXPThemeLayoutHeaderTemplateComponent } from \"./layout-header.component\";\n\n@Component({\n imports: [CommonModule],\n standalone: true,\n selector: 'axp-layout-section',\n template: `\n <ng-template #header>\n <ng-content select=\"axp-layout-header\"></ng-content>\n </ng-template>\n <ng-template #content>\n <ng-content select=\"axp-layout-content\"></ng-content>\n </ng-template>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\n\nexport class AXPThemeLayoutSectionTemplateComponent {\n public readonly header = contentChild(AXPThemeLayoutHeaderTemplateComponent);\n public readonly content = viewChild<TemplateRef<any>>('content');\n}","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, contentChild, input, TemplateRef, viewChild, ViewEncapsulation } from \"@angular/core\";\nimport { AXPThemeLayoutHeaderTemplateComponent } from \"./layout-header.component\";\n\n@Component({\n imports: [CommonModule],\n standalone: true,\n selector: 'axp-layout-side',\n template: `\n <ng-template #header>\n <ng-content select=\"axp-layout-header\"></ng-content>\n </ng-template>\n <ng-template #content>\n <ng-content select=\"axp-layout-content\"></ng-content>\n </ng-template>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\n\nexport class AXPThemeLayoutSideTemplateComponent {\n public readonly header = contentChild(AXPThemeLayoutHeaderTemplateComponent);\n public readonly content = viewChild<TemplateRef<any>>('content');\n}","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, TemplateRef, viewChild, ViewEncapsulation } from '@angular/core';\n\n@Component({\n imports: [CommonModule],\n standalone: true,\n selector: 'axp-layout-footer',\n template: `\n <ng-content select=\"axp-layout-prefix\"></ng-content>\n <ng-content select=\"axp-layout-suffix\"></ng-content>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\n\nexport class AXPThemeLayoutFooterComponent {\n\n}\n\n\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n imports: [CommonModule],\n standalone: true,\n selector: 'axp-layout-toolbar',\n template: `\n <ng-content select=\"axp-layout-prefix\"></ng-content>\n <ng-content select=\"axp-layout-suffix\"></ng-content>\n <ng-content></ng-content>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\n\nexport class AXPThemeLayoutToolbarComponent {\n\n}\n\n\n","import { ChangeDetectionStrategy, Component, contentChild, ViewEncapsulation } from '@angular/core';\n\n\n@Component({\n standalone: true,\n selector: 'axp-layout-list',\n template: `<ng-content select=\"axp-layout-list-item,axp-layout-list-group,ng-container\"></ng-content>`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class AXPThemeLayoutListComponent {\n}\n\n@Component({\n standalone: true,\n selector: 'axp-layout-list-group',\n template: `<ng-content select=\"axp-layout-list-item, axp-layout-title, axp-layout-header ,ng-container\"></ng-content>`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class AXPThemeLayoutListItemsGroupComponent {\n}\n\n@Component({\n standalone: true,\n selector: 'axp-layout-list-item',\n template: `<ng-content select=\"axp-layout-content,axp-layout-prefix,axp-layout-suffix,ng-container\"></ng-content>`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class AXPThemeLayoutListItemComponent {\n\n}","export enum AXPThemeLayoutSetting {\n Name = 'layout:theme:name',\n Layout = 'layout:theme:layout',\n Font = 'layout:theme:font:family',\n FontSize = 'layout:theme:font:size',\n Palette = 'layout:theme:palette',\n Mode = 'layout:theme:mode',\n SideMenuStatus = 'layout:theme:sidemenu:status',\n SideMenuWidth = 'layout:theme:sidemenu:width',\n}","export interface AXPThemePalette {\n name: string;\n title: string;\n colors: string[]\n path: string,\n \n}\n\n// Theme Enum\nexport enum AXPThemeMode {\n Light = 'light',\n Dark = 'dark',\n System = 'system',\n}\n\n// Screen Size Enum\nexport enum AXPScreenSize {\n Small = 'small',\n Medium = 'medium',\n Large = 'large',\n}\n\n// Device Type Enum\nexport enum AXPDeviceType {\n Mobile = 'mobile',\n Tablet = 'tablet',\n Desktop = 'desktop',\n}\n\n// Side Menu State Enum\nexport enum AXPSideMenuState {\n Opened = 'opened',\n Closed = 'closed',\n}","import { InjectionToken } from '@angular/core';\nimport { AXPThemePalette } from './theme.types';\n\nexport interface AXPThemePaletteProvider {\n getList(): Promise<AXPThemePalette[]>;\n}\n\nexport const AXP_THEME_PALETTE_PROVIDER = new InjectionToken<AXPThemePaletteProvider>('AXP_THEME_PALETTE_PROVIDER', {\n providedIn: 'root',\n factory: () => {\n return new AXPThemePaletteProviderDefault();\n },\n});\n\nexport class AXPThemePaletteProviderDefault implements AXPThemePaletteProvider {\n getList(): Promise<AXPThemePalette[]> {\n return Promise.resolve([\n {\n name: 'default',\n title: 'Default',\n path: '/assets/themes/palletes/default.css',\n colors: [],\n },\n ]);\n }\n}\n","import { AXPSettingScope, 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 } from 'rxjs';\nimport { AXPThemeLayoutSetting } from './setting.keys';\nimport { AXPThemeMode, AXPScreenSize, AXPDeviceType, AXPSideMenuState } from './theme.types';\nimport { AXP_THEME_PALETTE_PROVIDER } from './palette.provider';\nimport { HttpClient } from '@angular/common/http';\n\n// ThemeStore - Manages theme settings, system changes, and loading states\nexport const AXPLayoutThemeService = signalStore(\n { providedIn: 'root' },\n\n // Initial State\n withState(() => {\n\n const isSystemDark = window.matchMedia('(prefers-color-scheme: dark)').matches;\n\n // Helper function to get the initial screen size\n const getScreenSize = (): AXPScreenSize => {\n const width = window.innerWidth;\n if (width <= 600) return AXPScreenSize.Small;\n if (width <= 1024) return AXPScreenSize.Medium;\n return AXPScreenSize.Large;\n };\n\n // Helper function to determine device type\n const getDeviceType = (): AXPDeviceType => {\n const userAgent = navigator.userAgent.toLowerCase();\n if (/mobile|android|iphone|ipad/.test(userAgent)) {\n return AXPDeviceType.Mobile;\n } else if (/tablet/.test(userAgent)) {\n return AXPDeviceType.Tablet;\n }\n return AXPDeviceType.Desktop;\n };\n\n // Helper function to determine if the device supports touch\n const isTouchDevice = (): boolean => {\n return 'ontouchstart' in window || navigator.maxTouchPoints > 0;\n };\n\n const state = {\n currentMode: AXPThemeMode.System,\n currentPallete: 'default',\n systemThemeMode: (isSystemDark ? AXPThemeMode.Dark : AXPThemeMode.Light) as AXPThemeMode,\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) as AXPSideMenuState,\n sideMenuWidth: 288,\n _listener: null as ((e: MediaQueryListEvent) => void) | null,\n _resizeListener: null as (() => void) | null,\n };\n\n return state;\n }),\n\n // Computed Signals\n withComputed(({ currentMode: currentTheme, systemThemeMode: systemTheme, screenSize, deviceType, isTouchDevice, sideMenuState, overlayLoading, navigationLoading }) => ({\n isDarkMode: computed(\n () =>\n currentTheme() === AXPThemeMode.Dark ||\n (currentTheme() === AXPThemeMode.System && systemTheme() === AXPThemeMode.Dark)\n ),\n isLightMode: computed(\n () =>\n currentTheme() === AXPThemeMode.Light ||\n (currentTheme() === AXPThemeMode.System && systemTheme() === AXPThemeMode.Light)\n ),\n isSystemMode: computed(() => currentTheme() === AXPThemeMode.System),\n isSideMenuOpen: computed(() => sideMenuState() === AXPSideMenuState.Opened),\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 })),\n\n // Methods for State Management\n withMethods((store, http = inject(HttpClient), settingService = inject(AXPSettingService), pallets = inject(AXP_THEME_PALETTE_PROVIDER)) => {\n\n const _applySettings = async () => {\n // Initialize theme and side menu setting from storage\n const settingThemeMode = ((await settingService.get(AXPThemeLayoutSetting.Mode)) as AXPThemeMode) ?? AXPThemeMode.Light;\n patchState(store, { currentMode: settingThemeMode });\n //\n const settingThemePallete = ((await settingService.get(AXPThemeLayoutSetting.Palette)) as string) ?? 'default';\n patchState(store, { currentPallete: settingThemePallete });\n //\n const settingSideMenu = ((await settingService.get(AXPThemeLayoutSetting.SideMenuStatus)) as AXPSideMenuState) ?? store.sideMenuState();\n patchState(store, { sideMenuState: settingSideMenu });\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\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.currentPallete())\n };\n\n // Update screen size based on window width\n const _updateScreenSize = () => {\n const width = window.innerWidth;\n let newScreenSize: AXPScreenSize;\n\n if (width <= 600) {\n newScreenSize = AXPScreenSize.Small;\n } else if (width <= 1024) {\n newScreenSize = AXPScreenSize.Medium;\n } else {\n newScreenSize = AXPScreenSize.Large;\n }\n\n if (newScreenSize !== store.screenSize()) {\n patchState(store, { screenSize: newScreenSize });\n if (store.sideMenuState() !== AXPSideMenuState.Closed) {\n patchState(store, { sideMenuState: newScreenSize === AXPScreenSize.Small ? AXPSideMenuState.Closed : AXPSideMenuState.Opened });\n settingService.scope(AXPSettingScope.User).set(AXPThemeLayoutSetting.SideMenuStatus, store.sideMenuState());\n }\n }\n };\n\n const _setOverlayLoading = async (value: boolean, delay: number = 0): Promise<void> => {\n if (value) {\n let timeoutId: number | null = null;\n\n if (delay > 0) {\n timeoutId = window.setTimeout(() => {\n patchState(store, { overlayLoadingTaskCount: store.overlayLoadingTaskCount() + 1 });\n patchState(store, { overlayLoading: true });\n }, delay);\n } else {\n patchState(store, { overlayLoadingTaskCount: store.overlayLoadingTaskCount() + 1 });\n patchState(store, { overlayLoading: true });\n }\n\n // Store timeout ID to clear it if the loading ends before delay\n (store as any)._loadingTimeoutId = timeoutId;\n } else {\n if (store.overlayLoadingTaskCount() > 0) {\n patchState(store, { overlayLoadingTaskCount: store.overlayLoadingTaskCount() - 1 });\n }\n\n if (store.overlayLoadingTaskCount() === 0) {\n const timeoutId = (store as any)._loadingTimeoutId;\n if (timeoutId) {\n clearTimeout(timeoutId);\n (store as any)._loadingTimeoutId = null;\n }\n\n timer(minimumDisplayTime).subscribe(() => {\n if (store.overlayLoadingTaskCount() === 0) {\n patchState(store, { overlayLoading: false });\n }\n });\n }\n }\n };\n\n\n const _setNavigationLoading = (value: boolean, delay?: number) => {\n if (value) {\n patchState(store, { navigationLoadingTaskCount: store.navigationLoadingTaskCount() + 1 });\n patchState(store, { navigationLoading: true });\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\n\n\n // Helper method to apply a cached theme palette\n const _applyThemePalette = async (name: string): Promise<void> => {\n const pallete = (await pallets.getList()).find(c => c.name === name);\n if (!pallete) {\n return;\n }\n\n // Check if the current theme is already applied\n const existingStyle = document.querySelector<HTMLStyleElement>(`style[data-theme=\"${name}\"]`);\n if (existingStyle) {\n return; // Theme is already applied, no need to reapply\n }\n\n _setNavigationLoading(true);\n\n try {\n // Fetch the CSS file via HttpClient\n const cssText = await firstValueFrom(http.get(pallete.path!, { responseType: 'text' }));\n\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\n // Remove any other outdated theme styles\n document.querySelectorAll<HTMLStyleElement>('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 } finally {\n _setNavigationLoading(false);\n }\n };\n\n\n const minimumDisplayTime = 500; // milliseconds\n\n return {\n // Change theme and update HTML class\n changeThemeMode(theme: AXPThemeMode) {\n settingService.scope(AXPSettingScope.User).set(AXPThemeLayoutSetting.Mode, theme);\n patchState(store, { currentMode: theme });\n _updateHtmlClass();\n },\n\n // Open side menu\n openSideMenu() {\n patchState(store, { sideMenuState: AXPSideMenuState.Opened });\n settingService.scope(AXPSettingScope.User).set(AXPThemeLayoutSetting.SideMenuStatus, AXPSideMenuState.Opened);\n },\n\n // Close side menu\n closeSideMenu() {\n patchState(store, { sideMenuState: AXPSideMenuState.Closed });\n settingService.scope(AXPSettingScope.User).set(AXPThemeLayoutSetting.SideMenuStatus, AXPSideMenuState.Closed);\n },\n\n // Set side menu width\n setSideMenuWidth(width: number) {\n patchState(store, { sideMenuWidth: width });\n settingService.scope(AXPSettingScope.User).set(AXPThemeLayoutSetting.SideMenuWidth, width);\n },\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(AXPSettingScope.User).set(AXPThemeLayoutSetting.SideMenuStatus, newSideMenuState);\n },\n\n // Set navigation loading state with a task counter\n setNavigationLoading(value: boolean, delay?: number) {\n _setNavigationLoading(value, delay);\n },\n\n // Set overlay loading state with a task counter\n setOverlayLoading(value: boolean, delay?: number) {\n _setOverlayLoading(value, delay);\n },\n\n async loadSettings() {\n await _applySettings();\n },\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: MediaQueryListEvent) => {\n patchState(store, { systemThemeMode: e.matches ? AXPThemeMode.Dark : AXPThemeMode.Light });\n _updateHtmlClass();\n };\n mediaQueryList.addEventListener('change', listener);\n return listener;\n },\n\n // Remove event listener for system theme changes\n _removeSystemColorListener(listener: (e: MediaQueryListEvent) => void) {\n const mediaQueryList = window.matchMedia('(prefers-color-scheme: dark)');\n mediaQueryList.removeEventListener('change', listener);\n },\n\n // Set up event listener for window resize\n _setupResizeListener() {\n const listener = () => {\n _updateScreenSize();\n };\n window.addEventListener('resize', listener);\n return listener;\n },\n\n // Remove event listener for window resize\n _removeResizeListener(listener: () => void) {\n window.removeEventListener('resize', listener);\n },\n\n };\n }),\n\n // Lifecycle Hooks\n withHooks((store, settingService = inject(AXPSettingService)) => ({\n onInit() {\n //\n settingService.onChanged.pipe(filter(c => c.scope == AXPSettingScope.User)).subscribe(async (changes) => {\n const keys = Object.values(AXPThemeLayoutSetting);\n if (changes.keys.some((key) => keys.includes(key as any))) {\n await store.loadSettings();\n }\n });\n\n // Set up event listener for system theme changes\n const listener = store._setupSystemColorListener();\n patchState(store, { _listener: listener });\n\n // Set up event listener for window resize\n const resizeListener = store._setupResizeListener();\n patchState(store, { _resizeListener: resizeListener });\n },\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) {\n store._removeResizeListener(resizeListener);\n }\n },\n }))\n);\n","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';\n\n@Component({\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.light') | async)!\"\n [selected]=\"!store.isSystemMode() && !store.isDarkMode()\"\n >\n <ax-prefix>\n <ax-icon icon=\"fa-solid 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.dark') | async)!\"\n [selected]=\"!store.isSystemMode() && store.isDarkMode()\"\n >\n <ax-prefix>\n <ax-icon icon=\"fa-solid 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.system') | async)!\"\n [selected]=\"store.isSystemMode()\"\n >\n <ax-prefix>\n <ax-icon icon=\"fa-solid 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})\nexport class AXPThemeSlotComponent {\n protected store = inject(AXPLayoutThemeService);\n\n protected variants = AXPThemeMode;\n}\n","import { AXPSettingDefinitionProvider, AXPSettingDefinitionProviderContext } from '@acorex/platform/common';\nimport { AXPThemeLayoutSetting } from './setting.keys';\nimport { AXPWidgetsCatalog, objectKeyValueTransforms } from '@acorex/platform/layout/builder';\nimport { AXPThemeMode } from './theme.types';\nimport { AXP_THEME_PALETTE_PROVIDER } from './palette.provider';\nimport { inject } from '@angular/core';\n\nexport class AXPThemeSettingProvider implements AXPSettingDefinitionProvider {\n\n private pallets = inject(AXP_THEME_PALETTE_PROVIDER);\n\n async provide(context: AXPSettingDefinitionProviderContext): Promise<void> {\n // Define the 'Appearance Settings' group\n context.addGroup('appearance', 'Appearance Settings', 'Customize the overall look and feel of the application.', 'fa-light fa-palette')\n\n // Add the 'Brightness & Color' section\n .addSection('color', 'Brightness & Color', 'Adjust the theme settings, including brightness, colors, and modes.')\n\n // Add the 'Theme Mode' setting\n .addSetting({\n key: AXPThemeLayoutSetting.Mode,\n title: 'Theme Mode',\n scope: 'U',\n isInherited: true,\n defaultValue: AXPThemeMode.Light,\n valueTransforms: objectKeyValueTransforms('id'),\n widget: {\n type: AXPWidgetsCatalog.select,\n options: {\n dataSource: Object.entries(AXPThemeMode).map(([key, value]) => ({\n id: value,\n title: key.charAt(0).toUpperCase() + key.slice(1).toLowerCase(),\n })),\n },\n },\n description: 'Switch between Light and Dark themes for the application.',\n })\n\n // Add the 'Palette' setting\n .addSetting({\n key: AXPThemeLayoutSetting.Palette,\n title: 'Palette',\n scope: 'U',\n isInherited: true,\n defaultValue: 'default',\n valueTransforms: objectKeyValueTransforms('name'),\n widget: {\n type: AXPWidgetsCatalog.select,\n options: {\n valueField: 'name',\n dataSource: await this.pallets.getList(),\n },\n },\n description: 'Choose a color palette for the application interface.',\n })\n\n // End the 'Brightness & Color' section\n .endSection()\n\n // Add the 'Scale & Layout' section\n .addSection('layout', 'Scale & Layout', 'Customize the application’s layout and scaling options.')\n\n // Add the 'Font Style' setting\n .addSetting({\n key: AXPThemeLayoutSetting.Font,\n title: 'Font Style',\n scope: 'U',\n isInherited: true,\n defaultValue: 'system-ui',\n valueTransforms: objectKeyValueTransforms('id'),\n widget: {\n type: 'select-editor',\n options: {\n dataSource: [\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 ],\n },\n },\n description: 'Set the font style for application text.',\n })\n\n // Add the 'Font Size' setting\n .addSetting({\n key: AXPThemeLayoutSetting.FontSize,\n title: 'Font Size',\n scope: 'U',\n isInherited: true,\n defaultValue: 'medium',\n valueTransforms: objectKeyValueTransforms('id'),\n widget: {\n type: 'select-editor',\n options: {\n dataSource: [\n { id: 'small', title: 'Small' },\n { id: 'medium', title: 'Medium' },\n { id: 'large', title: 'Large' },\n { id: 'x-large', title: 'Extra Large' },\n ],\n },\n },\n description: 'Adjust the font size for application text.',\n })\n\n // End the 'Scale & Layout' section\n .endSection()\n\n // End the 'Appearance Settings' group\n .endGroup();\n\n\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXSelectionModule } from '@acorex/cdk/selection';\n\n@Component({\n template: ` \n <div axSelectionGroup [multiple]=\"false\" [selectedKeys]=\"'1'\" >\n <div axSelectionItem #a=\"axSelectionItem\" key=\"1\" [class.ax-text-primary-500]=\"a.isActive()\">\n item 1\n </div>\n <div axSelectionItem #b=\"axSelectionItem\" key=\"2\" [class.ax-text-primary-500]=\"b.isActive()\">\n item 1\n </div>\n </div> \n \n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule, AXSelectionModule],\n})\nexport class AXPThemeColorSelectionWidgetEditComponent extends AXPWidgetComponent<any> { }","import { AXP_WIDGETS_LAYOUT_GROUP, AXPWidgetConfig } from '@acorex/platform/layout/builder';\nimport { AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DISABLED_PROPERTY } from '@acorex/platform/widgets';\n\nexport const AXPThemeColorSelectionWidget: AXPWidgetConfig = {\n name: \"theme-color-selection\",\n title: \"Theme Color Selection\",\n icon: \"fa-solid fa-square\",\n type: 'editor',\n visible: false,\n group: AXP_WIDGETS_LAYOUT_GROUP,\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n ],\n components: {\n edit: {\n component: () => import('./theme-color-selection-widget-edit.component').then((c) => c.AXPThemeColorSelectionWidgetEditComponent),\n },\n }\n}\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n themeColorSelection: 'theme-color-selection';\n }\n}","import { AXP_SETTING_DEFINITION_PROVIDER, AXPAppStartUpService, AXPComponentSlotModule } from '@acorex/platform/common';\nimport { Injector, NgModule } from '@angular/core';\nimport { AXPThemeSlotComponent } from './components/slots/theme-slot.component';\nimport { AXPThemeSettingProvider } from './setting.provider';\nimport { AXPLayoutThemeService } from './theme.service';\nimport { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\nimport { AXPThemeColorSelectionWidget } from './widgets/theme-color-selection';\n@NgModule({\n imports: [\n AXPComponentSlotModule.forRoot({\n 'header-end': [\n {\n priority: 50,\n name: 'theme',\n component: AXPThemeSlotComponent,\n },\n ],\n }),\n AXPLayoutBuilderModule.forChild({\n widgets: [\n AXPThemeColorSelectionWidget\n ]\n })\n ],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXP_SETTING_DEFINITION_PROVIDER,\n useClass: AXPThemeSettingProvider,\n multi: true\n }\n ],\n})\nexport class AXPThemesSharedModule {\n constructor(\n appInitService: AXPAppStartUpService,\n injector: Injector\n ) {\n const service = injector.get(AXPLayoutThemeService);\n appInitService.registerTask({\n name: 'layout-theme',\n statusText: 'Applying layout theme settings ...',\n run: async () => {\n await service.loadSettings();\n }\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"acorex-platform-themes-shared.mjs","sources":["../../../../libs/platform/themes/shared/src/lib/components/layout-elements/layout-blocks.component.ts","../../../../libs/platform/themes/shared/src/lib/components/layout-elements/layout-actions.component.ts","../../../../libs/platform/themes/shared/src/lib/components/layout-elements/layout-header.component.ts","../../../../libs/platform/themes/shared/src/lib/components/layout-elements/layout-section.component.ts","../../../../libs/platform/themes/shared/src/lib/components/layout-elements/layout-side.component.ts","../../../../libs/platform/themes/shared/src/lib/components/layout-elements/layout-footer.component.ts","../../../../libs/platform/themes/shared/src/lib/components/layout-elements/layout-tool-bar.component.ts","../../../../libs/platform/themes/shared/src/lib/components/layout-elements/layout-list.component.ts","../../../../libs/platform/themes/shared/src/lib/setting.keys.ts","../../../../libs/platform/themes/shared/src/lib/theme.types.ts","../../../../libs/platform/themes/shared/src/lib/palette.provider.ts","../../../../libs/platform/themes/shared/src/lib/theme.service.ts","../../../../libs/platform/themes/shared/src/lib/components/slots/theme-slot.component.ts","../../../../libs/platform/themes/shared/src/lib/setting.provider.ts","../../../../libs/platform/themes/shared/src/lib/widgets/theme-color-selection/theme-color-selection-widget-edit.component.ts","../../../../libs/platform/themes/shared/src/lib/widgets/theme-color-selection/theme-color-selection-widget.config.ts","../../../../libs/platform/themes/shared/src/lib/shared.module.ts","../../../../libs/platform/themes/shared/src/acorex-platform-themes-shared.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n standalone: true,\n selector: `\n axp-layout-content, \n axp-layout-header-container,\n axp-layout-side-container,\n axp-layout-sections,\n axp-layout-section-container,\n axp-layout-body,\n axp-layout-prefix,\n axp-layout-suffix,\n axp-layout-title, \n axp-layout-nav-button, \n axp-layout-description, \n axp-layout-title-bar,\n axp-layout-breadcrumbs,\n axp-layout-list-action,\n `,\n template: '<ng-content></ng-content>',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\n\nexport class AXPThemeLayoutBlockComponent {\n}\n\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, contentChild, TemplateRef, viewChild, ViewEncapsulation } from '@angular/core';\n\n\n@Component({\n standalone: true,\n selector: 'axp-layout-actions-primary',\n template: `<ng-content select=\"ax-button,ax-dropdown-button\"></ng-content>`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class AXPThemeLayoutPagePrimaryActionsComponent {\n}\n\n@Component({\n standalone: true,\n selector: 'axp-layout-actions-secondary',\n template: `<ng-content select=\"ax-button-item\"></ng-content>`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class AXPThemeLayoutPageSecondaryActionsComponent {\n}\n\n@Component({\n imports: [CommonModule],\n standalone: true,\n selector: 'axp-layout-actions',\n template: `\n\n <ng-template #primary>\n <ng-content select=\"axp-layout-actions-primary\"></ng-content>\n </ng-template>\n\n <ng-template #secondary>\n <ng-content select=\"axp-layout-actions-secondary\"></ng-content>\n </ng-template>\n\n <ng-content></ng-content>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\n\nexport class AXPThemeLayoutActionsComponent {\n\n public readonly primaryTemplate = viewChild<TemplateRef<any>>('primary');\n private readonly primaryContent = contentChild(AXPThemeLayoutPagePrimaryActionsComponent);\n public hasPrimary = computed(() => this.primaryContent() != null);\n\n public readonly secondaryTemplate = viewChild<TemplateRef<any>>('secondary');\n private readonly secondaryContent = contentChild(AXPThemeLayoutPageSecondaryActionsComponent);\n public hasSecondary = computed(() => this.secondaryContent() != null);\n\n}\n\n\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, TemplateRef, viewChild, ViewEncapsulation } from '@angular/core';\n\n@Component({\n imports: [CommonModule],\n standalone: true,\n selector: 'axp-layout-header',\n template: `\n <ng-template #breadcrumbs>\n <ng-content select=\"axp-layout-breadcrumbs\"></ng-content>\n </ng-template>\n\n <ng-template #navbar>\n <ng-content select=\"axp-layout-toolbar\"></ng-content>\n </ng-template>\n\n <ng-template #actions>\n <ng-content select=\"axp-layout-actions\"></ng-content>\n </ng-template>\n\n <ng-template #description>\n <ng-content select=\"axp-layout-description\"></ng-content>\n </ng-template>\n\n <ng-template #title>\n <ng-content select=\"axp-layout-title\"></ng-content>\n </ng-template>\n <ng-template #navButton>\n <ng-content select=\"axp-layout-nav-button\"></ng-content>\n </ng-template>\n <ng-content select=\"axp-layout-prefix\"></ng-content>\n <ng-content select=\"axp-layout-suffix\"></ng-content>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\n\nexport class AXPThemeLayoutHeaderTemplateComponent {\n\n public readonly title = viewChild<TemplateRef<any>>('title');\n public readonly description = viewChild<TemplateRef<any>>('description');\n public readonly actions = viewChild<TemplateRef<any>>('actions');\n public readonly navbar = viewChild<TemplateRef<any>>('navbar');\n public readonly breadcrumbs = viewChild<TemplateRef<any>>('breadcrumbs');\n public readonly navButton = viewChild<TemplateRef<any>>('navButton');\n\n\n}\n\n\n","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, contentChild, input, TemplateRef, viewChild, ViewEncapsulation } from \"@angular/core\";\nimport { AXPThemeLayoutHeaderTemplateComponent } from \"./layout-header.component\";\n\n@Component({\n imports: [CommonModule],\n standalone: true,\n selector: 'axp-layout-section',\n template: `\n <ng-template #header>\n <ng-content select=\"axp-layout-header\"></ng-content>\n </ng-template>\n <ng-template #content>\n <ng-content select=\"axp-layout-content\"></ng-content>\n </ng-template>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\n\nexport class AXPThemeLayoutSectionTemplateComponent {\n public readonly header = contentChild(AXPThemeLayoutHeaderTemplateComponent);\n public readonly content = viewChild<TemplateRef<any>>('content');\n}","import { CommonModule } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n contentChild,\n TemplateRef,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXPThemeLayoutHeaderTemplateComponent } from './layout-header.component';\n\n@Component({\n imports: [CommonModule],\n standalone: true,\n selector: 'axp-layout-side',\n template: `\n <ng-template #header>\n <ng-content select=\"axp-layout-header\"></ng-content>\n </ng-template>\n <ng-template #content>\n <ng-content select=\"axp-layout-content\"></ng-content>\n </ng-template>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AXPThemeLayoutSideTemplateComponent {\n public readonly header = contentChild(AXPThemeLayoutHeaderTemplateComponent);\n public readonly content = viewChild<TemplateRef<any>>('content');\n}\n\n@Component({\n imports: [CommonModule],\n standalone: true,\n selector: 'axp-layout-end-side',\n template: `\n <ng-template #header>\n <ng-content select=\"axp-layout-header\"></ng-content>\n </ng-template>\n <ng-template #content>\n <ng-content select=\"axp-layout-content\"></ng-content>\n </ng-template>\n <ng-template #footer>\n <ng-content select=\"axp-layout-footer\"></ng-content>\n </ng-template>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AXPThemeLayoutEndSideTemplateComponent {\n public readonly header = contentChild(AXPThemeLayoutHeaderTemplateComponent);\n public readonly content = viewChild<TemplateRef<any>>('content');\n public readonly footer = viewChild<TemplateRef<any>>('footer');\n}\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, TemplateRef, viewChild, ViewEncapsulation } from '@angular/core';\n\n@Component({\n imports: [CommonModule],\n standalone: true,\n selector: 'axp-layout-footer',\n template: `\n <ng-content select=\"axp-layout-prefix\"></ng-content>\n <ng-content select=\"axp-layout-suffix\"></ng-content>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\n\nexport class AXPThemeLayoutFooterComponent {\n\n}\n\n\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n imports: [CommonModule],\n standalone: true,\n selector: 'axp-layout-toolbar',\n template: `\n <ng-content select=\"axp-layout-prefix\"></ng-content>\n <ng-content select=\"axp-layout-suffix\"></ng-content>\n <ng-content></ng-content>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\n\nexport class AXPThemeLayoutToolbarComponent {\n\n}\n\n\n","import { ChangeDetectionStrategy, Component, contentChild, ViewEncapsulation } from '@angular/core';\n\n\n@Component({\n standalone: true,\n selector: 'axp-layout-list',\n template: `<ng-content select=\"axp-layout-list-item,axp-layout-list-group,ng-container\"></ng-content>`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class AXPThemeLayoutListComponent {\n}\n\n@Component({\n standalone: true,\n selector: 'axp-layout-list-group',\n template: `<ng-content select=\"axp-layout-list-item, axp-layout-title, axp-layout-header ,ng-container\"></ng-content>`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class AXPThemeLayoutListItemsGroupComponent {\n}\n\n@Component({\n standalone: true,\n selector: 'axp-layout-list-item',\n template: `<ng-content select=\"axp-layout-content,axp-layout-prefix,axp-layout-suffix,ng-container\"></ng-content>`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class AXPThemeLayoutListItemComponent {\n\n}","export enum AXPThemeLayoutSetting {\n Name = 'layout:theme:name',\n Layout = 'layout:theme:layout',\n Font = 'layout:theme:font:family',\n FontSize = 'layout:theme:font:size',\n Palette = 'layout:theme:palette',\n Mode = 'layout:theme:mode',\n SideMenuStatus = 'layout:theme:sidemenu:status',\n SideMenuWidth = 'layout:theme:sidemenu:width',\n}","export interface AXPThemePalette {\n name: string;\n title: string;\n colors: string[]\n path: string,\n \n}\n\n// Theme Enum\nexport enum AXPThemeMode {\n Light = 'light',\n Dark = 'dark',\n System = 'system',\n}\n\n// Screen Size Enum\nexport enum AXPScreenSize {\n Small = 'small',\n Medium = 'medium',\n Large = 'large',\n}\n\n// Device Type Enum\nexport enum AXPDeviceType {\n Mobile = 'mobile',\n Tablet = 'tablet',\n Desktop = 'desktop',\n}\n\n// Side Menu State Enum\nexport enum AXPSideMenuState {\n Opened = 'opened',\n Closed = 'closed',\n}","import { InjectionToken } from '@angular/core';\nimport { AXPThemePalette } from './theme.types';\n\nexport interface AXPThemePaletteProvider {\n getList(): Promise<AXPThemePalette[]>;\n}\n\nexport const AXP_THEME_PALETTE_PROVIDER = new InjectionToken<AXPThemePaletteProvider>('AXP_THEME_PALETTE_PROVIDER', {\n providedIn: 'root',\n factory: () => {\n return new AXPThemePaletteProviderDefault();\n },\n});\n\nexport class AXPThemePaletteProviderDefault implements AXPThemePaletteProvider {\n getList(): Promise<AXPThemePalette[]> {\n return Promise.resolve([\n {\n name: 'default',\n title: 'Default',\n path: '/assets/themes/palletes/default.css',\n colors: [],\n },\n ]);\n }\n}\n","import { AXPSettingScope, 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 } from 'rxjs';\nimport { AXPThemeLayoutSetting } from './setting.keys';\nimport { AXPThemeMode, AXPScreenSize, AXPDeviceType, AXPSideMenuState } from './theme.types';\nimport { AXP_THEME_PALETTE_PROVIDER } from './palette.provider';\nimport { HttpClient } from '@angular/common/http';\n\n// ThemeStore - Manages theme settings, system changes, and loading states\nexport const AXPLayoutThemeService = signalStore(\n { providedIn: 'root' },\n\n // Initial State\n withState(() => {\n\n const isSystemDark = window.matchMedia('(prefers-color-scheme: dark)').matches;\n\n // Helper function to get the initial screen size\n const getScreenSize = (): AXPScreenSize => {\n const width = window.innerWidth;\n if (width <= 600) return AXPScreenSize.Small;\n if (width <= 1024) return AXPScreenSize.Medium;\n return AXPScreenSize.Large;\n };\n\n // Helper function to determine device type\n const getDeviceType = (): AXPDeviceType => {\n const userAgent = navigator.userAgent.toLowerCase();\n if (/mobile|android|iphone|ipad/.test(userAgent)) {\n return AXPDeviceType.Mobile;\n } else if (/tablet/.test(userAgent)) {\n return AXPDeviceType.Tablet;\n }\n return AXPDeviceType.Desktop;\n };\n\n // Helper function to determine if the device supports touch\n const isTouchDevice = (): boolean => {\n return 'ontouchstart' in window || navigator.maxTouchPoints > 0;\n };\n\n const state = {\n currentMode: AXPThemeMode.System,\n currentPallete: 'default',\n systemThemeMode: (isSystemDark ? AXPThemeMode.Dark : AXPThemeMode.Light) as AXPThemeMode,\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) as AXPSideMenuState,\n sideMenuWidth: 288,\n _listener: null as ((e: MediaQueryListEvent) => void) | null,\n _resizeListener: null as (() => void) | null,\n };\n\n return state;\n }),\n\n // Computed Signals\n withComputed(({ currentMode: currentTheme, systemThemeMode: systemTheme, screenSize, deviceType, isTouchDevice, sideMenuState, overlayLoading, navigationLoading }) => ({\n isDarkMode: computed(\n () =>\n currentTheme() === AXPThemeMode.Dark ||\n (currentTheme() === AXPThemeMode.System && systemTheme() === AXPThemeMode.Dark)\n ),\n isLightMode: computed(\n () =>\n currentTheme() === AXPThemeMode.Light ||\n (currentTheme() === AXPThemeMode.System && systemTheme() === AXPThemeMode.Light)\n ),\n isSystemMode: computed(() => currentTheme() === AXPThemeMode.System),\n isSideMenuOpen: computed(() => sideMenuState() === AXPSideMenuState.Opened),\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 })),\n\n // Methods for State Management\n withMethods((store, http = inject(HttpClient), settingService = inject(AXPSettingService), pallets = inject(AXP_THEME_PALETTE_PROVIDER)) => {\n\n const _applySettings = async () => {\n // Initialize theme and side menu setting from storage\n const settingThemeMode = ((await settingService.get(AXPThemeLayoutSetting.Mode)) as AXPThemeMode) ?? AXPThemeMode.Light;\n patchState(store, { currentMode: settingThemeMode });\n //\n const settingThemePallete = ((await settingService.get(AXPThemeLayoutSetting.Palette)) as string) ?? 'default';\n patchState(store, { currentPallete: settingThemePallete });\n //\n const settingSideMenu = ((await settingService.get(AXPThemeLayoutSetting.SideMenuStatus)) as AXPSideMenuState) ?? store.sideMenuState();\n patchState(store, { sideMenuState: settingSideMenu });\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\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.currentPallete())\n };\n\n // Update screen size based on window width\n const _updateScreenSize = () => {\n const width = window.innerWidth;\n let newScreenSize: AXPScreenSize;\n\n if (width <= 600) {\n newScreenSize = AXPScreenSize.Small;\n } else if (width <= 1024) {\n newScreenSize = AXPScreenSize.Medium;\n } else {\n newScreenSize = AXPScreenSize.Large;\n }\n\n if (newScreenSize !== store.screenSize()) {\n patchState(store, { screenSize: newScreenSize });\n if (store.sideMenuState() !== AXPSideMenuState.Closed) {\n patchState(store, { sideMenuState: newScreenSize === AXPScreenSize.Small ? AXPSideMenuState.Closed : AXPSideMenuState.Opened });\n settingService.scope(AXPSettingScope.User).set(AXPThemeLayoutSetting.SideMenuStatus, store.sideMenuState());\n }\n }\n };\n\n const _setOverlayLoading = async (value: boolean, delay: number = 0): Promise<void> => {\n if (value) {\n let timeoutId: number | null = null;\n\n if (delay > 0) {\n timeoutId = window.setTimeout(() => {\n patchState(store, { overlayLoadingTaskCount: store.overlayLoadingTaskCount() + 1 });\n patchState(store, { overlayLoading: true });\n }, delay);\n } else {\n patchState(store, { overlayLoadingTaskCount: store.overlayLoadingTaskCount() + 1 });\n patchState(store, { overlayLoading: true });\n }\n\n // Store timeout ID to clear it if the loading ends before delay\n (store as any)._loadingTimeoutId = timeoutId;\n } else {\n if (store.overlayLoadingTaskCount() > 0) {\n patchState(store, { overlayLoadingTaskCount: store.overlayLoadingTaskCount() - 1 });\n }\n\n if (store.overlayLoadingTaskCount() === 0) {\n const timeoutId = (store as any)._loadingTimeoutId;\n if (timeoutId) {\n clearTimeout(timeoutId);\n (store as any)._loadingTimeoutId = null;\n }\n\n timer(minimumDisplayTime).subscribe(() => {\n if (store.overlayLoadingTaskCount() === 0) {\n patchState(store, { overlayLoading: false });\n }\n });\n }\n }\n };\n\n\n const _setNavigationLoading = (value: boolean, delay?: number) => {\n if (value) {\n patchState(store, { navigationLoadingTaskCount: store.navigationLoadingTaskCount() + 1 });\n patchState(store, { navigationLoading: true });\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\n\n\n // Helper method to apply a cached theme palette\n const _applyThemePalette = async (name: string): Promise<void> => {\n const pallete = (await pallets.getList()).find(c => c.name === name);\n if (!pallete) {\n return;\n }\n\n // Check if the current theme is already applied\n const existingStyle = document.querySelector<HTMLStyleElement>(`style[data-theme=\"${name}\"]`);\n if (existingStyle) {\n return; // Theme is already applied, no need to reapply\n }\n\n _setNavigationLoading(true);\n\n try {\n // Fetch the CSS file via HttpClient\n const cssText = await firstValueFrom(http.get(pallete.path!, { responseType: 'text' }));\n\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\n // Remove any other outdated theme styles\n document.querySelectorAll<HTMLStyleElement>('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 } finally {\n _setNavigationLoading(false);\n }\n };\n\n\n const minimumDisplayTime = 500; // milliseconds\n\n return {\n // Change theme and update HTML class\n changeThemeMode(theme: AXPThemeMode) {\n settingService.scope(AXPSettingScope.User).set(AXPThemeLayoutSetting.Mode, theme);\n patchState(store, { currentMode: theme });\n _updateHtmlClass();\n },\n\n // Open side menu\n openSideMenu() {\n patchState(store, { sideMenuState: AXPSideMenuState.Opened });\n settingService.scope(AXPSettingScope.User).set(AXPThemeLayoutSetting.SideMenuStatus, AXPSideMenuState.Opened);\n },\n\n // Close side menu\n closeSideMenu() {\n patchState(store, { sideMenuState: AXPSideMenuState.Closed });\n settingService.scope(AXPSettingScope.User).set(AXPThemeLayoutSetting.SideMenuStatus, AXPSideMenuState.Closed);\n },\n\n // Set side menu width\n setSideMenuWidth(width: number) {\n patchState(store, { sideMenuWidth: width });\n settingService.scope(AXPSettingScope.User).set(AXPThemeLayoutSetting.SideMenuWidth, width);\n },\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(AXPSettingScope.User).set(AXPThemeLayoutSetting.SideMenuStatus, newSideMenuState);\n },\n\n // Set navigation loading state with a task counter\n setNavigationLoading(value: boolean, delay?: number) {\n _setNavigationLoading(value, delay);\n },\n\n // Set overlay loading state with a task counter\n setOverlayLoading(value: boolean, delay?: number) {\n _setOverlayLoading(value, delay);\n },\n\n async loadSettings() {\n await _applySettings();\n },\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: MediaQueryListEvent) => {\n patchState(store, { systemThemeMode: e.matches ? AXPThemeMode.Dark : AXPThemeMode.Light });\n _updateHtmlClass();\n };\n mediaQueryList.addEventListener('change', listener);\n return listener;\n },\n\n // Remove event listener for system theme changes\n _removeSystemColorListener(listener: (e: MediaQueryListEvent) => void) {\n const mediaQueryList = window.matchMedia('(prefers-color-scheme: dark)');\n mediaQueryList.removeEventListener('change', listener);\n },\n\n // Set up event listener for window resize\n _setupResizeListener() {\n const listener = () => {\n _updateScreenSize();\n };\n window.addEventListener('resize', listener);\n return listener;\n },\n\n // Remove event listener for window resize\n _removeResizeListener(listener: () => void) {\n window.removeEventListener('resize', listener);\n },\n\n };\n }),\n\n // Lifecycle Hooks\n withHooks((store, settingService = inject(AXPSettingService)) => ({\n onInit() {\n //\n settingService.onChanged.pipe(filter(c => c.scope == AXPSettingScope.User)).subscribe(async (changes) => {\n const keys = Object.values(AXPThemeLayoutSetting);\n if (changes.keys.some((key) => keys.includes(key as any))) {\n await store.loadSettings();\n }\n });\n\n // Set up event listener for system theme changes\n const listener = store._setupSystemColorListener();\n patchState(store, { _listener: listener });\n\n // Set up event listener for window resize\n const resizeListener = store._setupResizeListener();\n patchState(store, { _resizeListener: resizeListener });\n },\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) {\n store._removeResizeListener(resizeListener);\n }\n },\n }))\n);\n","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';\n\n@Component({\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.light') | async)!\"\n [selected]=\"!store.isSystemMode() && !store.isDarkMode()\"\n >\n <ax-prefix>\n <ax-icon icon=\"fa-solid 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.dark') | async)!\"\n [selected]=\"!store.isSystemMode() && store.isDarkMode()\"\n >\n <ax-prefix>\n <ax-icon icon=\"fa-solid 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.system') | async)!\"\n [selected]=\"store.isSystemMode()\"\n >\n <ax-prefix>\n <ax-icon icon=\"fa-solid 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})\nexport class AXPThemeSlotComponent {\n protected store = inject(AXPLayoutThemeService);\n\n protected variants = AXPThemeMode;\n}\n","import { AXPSettingDefinitionProvider, AXPSettingDefinitionProviderContext } from '@acorex/platform/common';\nimport { AXPThemeLayoutSetting } from './setting.keys';\nimport { AXPWidgetsCatalog, objectKeyValueTransforms } from '@acorex/platform/layout/builder';\nimport { AXPThemeMode } from './theme.types';\nimport { AXP_THEME_PALETTE_PROVIDER } from './palette.provider';\nimport { inject } from '@angular/core';\n\nexport class AXPThemeSettingProvider implements AXPSettingDefinitionProvider {\n\n private pallets = inject(AXP_THEME_PALETTE_PROVIDER);\n\n async provide(context: AXPSettingDefinitionProviderContext): Promise<void> {\n // Define the 'Appearance Settings' group\n context.addGroup('appearance', 'Appearance Settings', 'Customize the overall look and feel of the application.', 'fa-light fa-palette')\n\n // Add the 'Brightness & Color' section\n .addSection('color', 'Brightness & Color', 'Adjust the theme settings, including brightness, colors, and modes.')\n\n // Add the 'Theme Mode' setting\n .addSetting({\n key: AXPThemeLayoutSetting.Mode,\n title: 'Theme Mode',\n scope: 'U',\n isInherited: true,\n defaultValue: AXPThemeMode.Light,\n valueTransforms: objectKeyValueTransforms('id'),\n widget: {\n type: AXPWidgetsCatalog.select,\n options: {\n dataSource: Object.entries(AXPThemeMode).map(([key, value]) => ({\n id: value,\n title: key.charAt(0).toUpperCase() + key.slice(1).toLowerCase(),\n })),\n },\n },\n description: 'Switch between Light and Dark themes for the application.',\n })\n\n // Add the 'Palette' setting\n .addSetting({\n key: AXPThemeLayoutSetting.Palette,\n title: 'Palette',\n scope: 'U',\n isInherited: true,\n defaultValue: 'default',\n valueTransforms: objectKeyValueTransforms('name'),\n widget: {\n type: AXPWidgetsCatalog.select,\n options: {\n valueField: 'name',\n dataSource: await this.pallets.getList(),\n },\n },\n description: 'Choose a color palette for the application interface.',\n })\n\n // End the 'Brightness & Color' section\n .endSection()\n\n // Add the 'Scale & Layout' section\n .addSection('layout', 'Scale & Layout', 'Customize the application’s layout and scaling options.')\n\n // Add the 'Font Style' setting\n .addSetting({\n key: AXPThemeLayoutSetting.Font,\n title: 'Font Style',\n scope: 'U',\n isInherited: true,\n defaultValue: 'system-ui',\n valueTransforms: objectKeyValueTransforms('id'),\n widget: {\n type: 'select-editor',\n options: {\n dataSource: [\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 ],\n },\n },\n description: 'Set the font style for application text.',\n })\n\n // Add the 'Font Size' setting\n .addSetting({\n key: AXPThemeLayoutSetting.FontSize,\n title: 'Font Size',\n scope: 'U',\n isInherited: true,\n defaultValue: 'medium',\n valueTransforms: objectKeyValueTransforms('id'),\n widget: {\n type: 'select-editor',\n options: {\n dataSource: [\n { id: 'small', title: 'Small' },\n { id: 'medium', title: 'Medium' },\n { id: 'large', title: 'Large' },\n { id: 'x-large', title: 'Extra Large' },\n ],\n },\n },\n description: 'Adjust the font size for application text.',\n })\n\n // End the 'Scale & Layout' section\n .endSection()\n\n // End the 'Appearance Settings' group\n .endGroup();\n\n\n }\n}\n","import { AXPWidgetComponent } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXSelectionModule } from '@acorex/cdk/selection';\n\n@Component({\n template: ` \n <div axSelectionGroup [multiple]=\"false\" [selectedKeys]=\"'1'\" >\n <div axSelectionItem #a=\"axSelectionItem\" key=\"1\" [class.ax-text-primary-500]=\"a.isActive()\">\n item 1\n </div>\n <div axSelectionItem #b=\"axSelectionItem\" key=\"2\" [class.ax-text-primary-500]=\"b.isActive()\">\n item 1\n </div>\n </div> \n \n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule, AXSelectionModule],\n})\nexport class AXPThemeColorSelectionWidgetEditComponent extends AXPWidgetComponent<any> { }","import { AXP_WIDGETS_LAYOUT_GROUP, AXPWidgetConfig } from '@acorex/platform/layout/builder';\nimport { AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DISABLED_PROPERTY } from '@acorex/platform/widgets';\n\nexport const AXPThemeColorSelectionWidget: AXPWidgetConfig = {\n name: \"theme-color-selection\",\n title: \"Theme Color Selection\",\n icon: \"fa-solid fa-square\",\n type: 'editor',\n visible: false,\n group: AXP_WIDGETS_LAYOUT_GROUP,\n properties: [\n AXP_NAME_PROPERTY,\n AXP_DATA_PATH_PROPERTY,\n AXP_DISABLED_PROPERTY,\n ],\n components: {\n edit: {\n component: () => import('./theme-color-selection-widget-edit.component').then((c) => c.AXPThemeColorSelectionWidgetEditComponent),\n },\n }\n}\n\ndeclare module '@acorex/platform/layout/builder' {\n interface AXPWidgetTypesMap {\n themeColorSelection: 'theme-color-selection';\n }\n}","import { AXP_SETTING_DEFINITION_PROVIDER, AXPAppStartUpService, AXPComponentSlotModule } from '@acorex/platform/common';\nimport { Injector, NgModule } from '@angular/core';\nimport { AXPThemeSlotComponent } from './components/slots/theme-slot.component';\nimport { AXPThemeSettingProvider } from './setting.provider';\nimport { AXPLayoutThemeService } from './theme.service';\nimport { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\nimport { AXPThemeColorSelectionWidget } from './widgets/theme-color-selection';\n@NgModule({\n imports: [\n AXPComponentSlotModule.forRoot({\n 'header-end': [\n {\n priority: 50,\n name: 'theme',\n component: AXPThemeSlotComponent,\n },\n ],\n }),\n AXPLayoutBuilderModule.forChild({\n widgets: [\n AXPThemeColorSelectionWidget\n ]\n })\n ],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXP_SETTING_DEFINITION_PROVIDER,\n useClass: AXPThemeSettingProvider,\n multi: true\n }\n ],\n})\nexport class AXPThemesSharedModule {\n constructor(\n appInitService: AXPAppStartUpService,\n injector: Injector\n ) {\n const service = injector.get(AXPLayoutThemeService);\n appInitService.registerTask({\n name: 'layout-theme',\n statusText: 'Applying layout theme settings ...',\n run: async () => {\n await service.loadSettings();\n }\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AXPThemeLayoutActionsComponent, AXPThemeLayoutHeaderTemplateComponent, AXPThemeLayoutSideTemplateComponent } from '@acorex/platform/themes/shared';
|
|
1
|
+
import { AXPThemeLayoutActionsComponent, AXPThemeLayoutEndSideTemplateComponent, AXPThemeLayoutHeaderTemplateComponent, AXPThemeLayoutSideTemplateComponent } from '@acorex/platform/themes/shared';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export declare class AXPSimplePageLayout {
|
|
4
4
|
#private;
|
|
@@ -60,7 +60,8 @@ export declare class AXPSimplePageLayout {
|
|
|
60
60
|
}>;
|
|
61
61
|
protected headerLayout: import("@angular/core").Signal<AXPThemeLayoutHeaderTemplateComponent | undefined>;
|
|
62
62
|
protected layoutSide: import("@angular/core").Signal<AXPThemeLayoutSideTemplateComponent | undefined>;
|
|
63
|
+
protected layoutEndSide: import("@angular/core").Signal<AXPThemeLayoutEndSideTemplateComponent | undefined>;
|
|
63
64
|
protected pageActionsLayout: import("@angular/core").Signal<AXPThemeLayoutActionsComponent | undefined>;
|
|
64
65
|
static ɵfac: i0.ɵɵFactoryDeclaration<AXPSimplePageLayout, never>;
|
|
65
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AXPSimplePageLayout, "axp-layout-simple-page", never, {}, {}, ["headerLayout", "layoutSide", "pageActionsLayout"], ["axp-layout-content", "axp-layout-footer"], true, never>;
|
|
66
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AXPSimplePageLayout, "axp-layout-simple-page", never, {}, {}, ["headerLayout", "layoutSide", "layoutEndSide", "pageActionsLayout"], ["axp-layout-content", "axp-layout-footer"], true, never>;
|
|
66
67
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { TemplateRef } from
|
|
2
|
-
import { AXPThemeLayoutHeaderTemplateComponent } from
|
|
1
|
+
import { TemplateRef } from '@angular/core';
|
|
2
|
+
import { AXPThemeLayoutHeaderTemplateComponent } from './layout-header.component';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
export declare class AXPThemeLayoutSideTemplateComponent {
|
|
5
5
|
readonly header: import("@angular/core").Signal<AXPThemeLayoutHeaderTemplateComponent | undefined>;
|
|
@@ -7,3 +7,10 @@ export declare class AXPThemeLayoutSideTemplateComponent {
|
|
|
7
7
|
static ɵfac: i0.ɵɵFactoryDeclaration<AXPThemeLayoutSideTemplateComponent, never>;
|
|
8
8
|
static ɵcmp: i0.ɵɵComponentDeclaration<AXPThemeLayoutSideTemplateComponent, "axp-layout-side", never, {}, {}, ["header"], ["axp-layout-header", "axp-layout-content"], true, never>;
|
|
9
9
|
}
|
|
10
|
+
export declare class AXPThemeLayoutEndSideTemplateComponent {
|
|
11
|
+
readonly header: import("@angular/core").Signal<AXPThemeLayoutHeaderTemplateComponent | undefined>;
|
|
12
|
+
readonly content: import("@angular/core").Signal<TemplateRef<any> | undefined>;
|
|
13
|
+
readonly footer: import("@angular/core").Signal<TemplateRef<any> | undefined>;
|
|
14
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AXPThemeLayoutEndSideTemplateComponent, never>;
|
|
15
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AXPThemeLayoutEndSideTemplateComponent, "axp-layout-end-side", never, {}, {}, ["header"], ["axp-layout-header", "axp-layout-content", "axp-layout-footer"], true, never>;
|
|
16
|
+
}
|
package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-ewOei4ta.mjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-platform-themes-default-entity-master-list-view.component-ewOei4ta.mjs","sources":["../../../../libs/platform/themes/default/src/lib/layouts/filters-layout/simple-filter-builder/filters-view.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/filters-layout/simple-filter-builder/filters-view.component.html","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-columns/list-view-option-columns.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-columns/list-view-option-columns.component.html","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-filters/list-view-option-filters.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-filters/list-view-option-filters.component.html","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-sorting/list-view-option-sorting.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-sorting/list-view-option-sorting.component.html","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.html"],"sourcesContent":["import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXImageModule } from '@acorex/components/image';\nimport { AXLabelModule } from '@acorex/components/label';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { AXSelectionListModule } from '@acorex/components/selection-list';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPFilterDefinition, AXPFilterQuery } from '@acorex/platform/common';\nimport { AXPLayoutBuilderModule, AXPLayoutBuilderService } from '@acorex/platform/layout/builder';\nimport { AXPFiltersViewModel } from '@acorex/platform/layout/filters';\nimport { CdkDrag, CdkDragHandle, CdkDropList } from '@angular/cdk/drag-drop';\nimport { CommonModule } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n Injector,\n input,\n InputSignal,\n model,\n ModelSignal,\n} from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n selector: 'axp-simple-filters-view',\n templateUrl: 'filters-view.component.html',\n providers: [AXPLayoutBuilderService],\n imports: [\n FormsModule,\n CommonModule,\n AXDecoratorModule,\n AXButtonModule,\n AXTranslationModule,\n AXPLayoutBuilderModule,\n AXImageModule,\n AXLabelModule,\n AXBadgeModule,\n AXSelectionListModule,\n AXPopoverModule,\n CdkDropList,\n CdkDrag,\n CdkDragHandle,\n ],\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AXPSimpleFiltersViewComponent {\n protected vm = inject(AXPFiltersViewModel);\n protected injector = inject(Injector);\n\n availAbleFilters: InputSignal<AXPFilterDefinition[]> = input.required();\n\n filters: ModelSignal<AXPFilterQuery> = model.required();\n\n ngAfterViewInit(): void {\n this.vm.setAvailableFilters(this.availAbleFilters());\n this.vm.setFiltersModel(this.filters);\n this.vm.initializeFilters();\n }\n}\n","<div class=\"ax-flex ax-flex-col ax-justify-center ax-gap-4 ax-select-none\"\n [class.ax-h-[calc(100vh-310px)]]=\"!vm.activeFiltersCount()\">\n @if(!vm.activeFiltersCount()){\n <div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center\">\n <ax-image src=\"assets/documents.svg\"></ax-image>\n <p class=\"ax-mt-6 ax-mb-1 ax-font-bold\">{{ 'filter.emptyTitle' | translate | async }}</p>\n <span class=\"ax-text-neutral-400 ax-text-sm md:ax-text-md\">{{\n 'filter.emptyDescription' | translate | async\n }}</span>\n </div>\n } @else {\n <div class=\"ax-sorted-list ax-max-h-[calc(100vh-310px)] ax-py-1 ax-overflow-auto\">\n <div cdkDropList (cdkDropListDropped)=\"vm.drop($event)\" class=\"ax-flex ax-flex-col ax-gap-2\">\n @for(item of vm.activeFilters(); track $index ){\n <div cdkDrag cdkDragBoundary=\".ax-sorted-list\">\n <div class=\"ax-ms-4 ax-flex ax-items-start ax-gap-2\">\n <ax-label>{{ item.title | translate | async }}</ax-label>\n <!-- @if(getOperatorTitle(item.name,item.operator)){\n <ax-badge\n class=\"ax-text-xs\"\n color=\"primary\"\n [look]=\"'twotone'\"\n [text]=\"getOperatorTitle(item.name, item.operator)\"\n ></ax-badge>\n } -->\n </div>\n <div class=\"ax-flex ax-group ax-items-center ax-gap-2\">\n <ax-icon class=\"fa-solid fa-grip-dots-vertical ax-cursor-move\" cdkDragHandle></ax-icon>\n <div class=\"ax-w-full\">\n <axp-widgets-container [context]=\"vm.context()\" (onContextChanged)=\"vm.context.set($event.data)\">\n <ng-container axp-widget-renderer [node]=\"item.widget\" [mode]=\"'edit'\"></ng-container>\n </axp-widgets-container>\n </div>\n <ax-button look=\"blank\" color=\"danger\" class=\"ax-sm\" (onClick)=\"vm.removeCondition(item)\">\n <ax-icon class=\"fa-solid fa-trash-can\"></ax-icon>\n </ax-button>\n </div>\n </div>\n }\n </div>\n </div>\n }\n <div class=\"ax-flex ax-gap-2\">\n <div class=\"ax-w-full\" #addField>\n @if(vm.activeFiltersCount()){\n <ax-button color=\"primary\" [text]=\"'filter.addField' | translate | async\" look=\"blank\"\n class=\"ax-sm ax-mx-2\"></ax-button>\n }@else {\n <div class=\"ax-flex ax-justify-center ax-w-full\">\n <ax-button color=\"primary\" [text]=\"'filter.addField' | translate | async\" look=\"outline\"\n class=\"ax-md ax-mx-2 ax-w-56\"></ax-button>\n </div>\n }\n </div>\n <ax-popover #fieldsPopover [target]=\"addField\" [openOn]=\"'toggle'\" [closeOn]=\"'clickOut'\" [adaptivityEnabled]=\"true\"\n (onOpened)=\"vm.resetFilterFields()\" [offsetX]=\"15\">\n <div class=\"ax-bg-lightest ax-border ax-border-default ax-rounded-md ax-shadow-md ax-w-full ax-min-w-[250px]\">\n <div class=\"ax-border-b-[1px] ax-pb-2 ax-mb-2 ax-p-3\">\n <ax-title class=\"ax-font-bold\">{{ 'filter.fields' | translate | async }}</ax-title>\n </div>\n <div class=\"ax-max-h-72 2xl:ax-max-h-80 ax-overflow-auto\">\n <ax-selection-list [valueField]=\"'field'\" [textField]=\"'title'\" [ngModel]=\"vm.newFilters()\"\n (onValueChanged)=\"vm.onChoosingFiltersChange($event)\" [direction]=\"'vertical'\"\n [items]=\"vm.availableFilters()\" [multiple]=\"true\"></ax-selection-list>\n </div>\n <div class=\"ax-flex ax-justify-end ax-border-t-[1px] ax-p-3\">\n <ax-button (onClick)=\"vm.onChoosingFiltersConfirm(); fieldsPopover.close()\" class=\"ax-sm\"\n [text]=\"'confirm' | translate | async\" color=\"primary\">\n </ax-button>\n </div>\n </div>\n </ax-popover>\n </div>\n</div>","import { AXButtonModule } from '@acorex/components/button';\nimport { AXValueChangedEvent } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXSwitchModule } from '@acorex/components/switch';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPSettingService } from '@acorex/platform/common';\n\nimport { AXPEntityMasterListViewModel } from '@acorex/platform/layout/entity';\nimport { CdkDrag, CdkDragDrop, CdkDragHandle, CdkDropList, moveItemInArray } from '@angular/cdk/drag-drop';\nimport { CommonModule } from '@angular/common';\nimport { Component, effect, EventEmitter, inject, Input, Output } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { cloneDeep } from 'lodash-es';\n\n@Component({\n selector: 'axp-list-view-option-columns',\n templateUrl: './list-view-option-columns.component.html',\n imports: [\n CommonModule,\n FormsModule,\n CdkDropList,\n CdkDrag,\n CdkDragHandle,\n AXButtonModule,\n AXDecoratorModule,\n AXSwitchModule,\n AXTranslationModule,\n ],\n})\nexport class AXPListViewOptionsColumnsComponent {\n protected settings = inject(AXPSettingService);\n\n @Input('viewModel')\n public vm!: AXPEntityMasterListViewModel;\n\n @Output()\n public onClosed = new EventEmitter<void>();\n\n columnsChanged = effect(() => {\n this.vm.onColumnsChanged(this.vm.columns());\n //.map((c) => ({ visible: c.visible, name: c.name }))\n });\n\n handleVisibilityChange(e: AXValueChangedEvent<boolean>, name: string) {\n if (e.isUserInteraction) {\n this.vm.columns.update((prev) => {\n return prev.map((c: any) => {\n return c.name === name ? { ...c, visible: e.value ?? true } : c;\n });\n });\n }\n }\n\n protected drop(event: CdkDragDrop<unknown[]>) {\n const columns = cloneDeep(this.vm.columns());\n moveItemInArray(columns, event.previousIndex, event.currentIndex);\n this.vm.columns.set(columns);\n }\n\n protected handleClose() {\n this.onClosed.emit();\n }\n protected handleResetClick() {\n this.vm.resetColumns();\n }\n\n protected handleApplyClick() {\n this.onClosed.emit();\n }\n}\n","<ax-header>\n <h2>{{ 'entity.columns' | translate | async }}</h2>\n <ax-button (onClick)=\"handleClose()\" [look]=\"'blank'\">\n <ax-icon class=\"fa-solid fa-close ax-text-neutral-400 ax-text-xl\"> </ax-icon>\n </ax-button>\n</ax-header>\n<div class=\"ax-flex ax-flex-col ax-gap-4 ax-p-4 ax-select-none\" cdkDropList (cdkDropListDropped)=\"drop($event)\">\n <div class=\"ax-flex ax-flex-col ax-gap-3 ax-w-full ax-sorted-list ax-max-h-[calc(100vh-280px)] ax-overflow-auto\">\n @for(item of vm.columns();track item.name) {\n <div class=\"ax-flex ax-py-1 ax-items-center ax-justify-between\" cdkDrag cdkDragBoundary=\".ax-sorted-list\">\n <div class=\"ax-flex ax-items-center ax-gap-3\" cdkDragHandle>\n <ax-icon class=\"fa-solid fa-grip-dots-vertical ax-cursor-move\"></ax-icon>\n <p class=\"ax-font-medium ax-text-sm\">{{ item.title | translate | async }}</p>\n </div>\n <ax-switch class=\"ax-sm\" [ngModel]=\"item.visible\"\n (onValueChanged)=\"handleVisibilityChange($event, item.name)\"></ax-switch>\n </div>\n }\n </div>\n</div>\n<ax-footer>\n <ax-button [text]=\"'apply' | translate | async\" color=\"primary\" (onClick)=\"handleApplyClick()\"></ax-button>\n <ax-button [text]=\"'reset' | translate | async\" [color]=\"'default'\" (onClick)=\"handleResetClick()\"></ax-button>\n</ax-footer>","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDropdownButtonModule } from '@acorex/components/dropdown-button';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPEntityMasterListViewModel } from '@acorex/platform/layout/entity';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'axp-list-view-option-filters',\n templateUrl: './list-view-option-filters.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n standalone: true,\n imports: [CommonModule, AXDecoratorModule, AXButtonModule, AXTranslationModule, AXDropdownButtonModule],\n})\nexport class AXPListViewOptionFiltersComponent {\n constructor() {}\n\n @Input('viewModel')\n public vm!: AXPEntityMasterListViewModel;\n\n @Output()\n public onClosed = new EventEmitter<void>();\n\n protected handleClose() {\n this.onClosed.emit();\n }\n\n protected handleResetClick() {\n this.vm.resetFilters();\n }\n\n protected handleDiscardClick() {\n this.vm.discardFilters();\n }\n\n protected handleApplyClick() {\n this.vm.applyFilterAndSort();\n\n this.onClosed.emit();\n }\n}\n","<ax-header>\n <h2>{{ 'filter.title' | translate | async }}</h2>\n <ax-button (onClick)=\"handleClose()\" [look]=\"'blank'\">\n <ax-icon class=\"fa-solid fa-close ax-text-neutral-400 ax-text-xl\"> </ax-icon>\n </ax-button>\n</ax-header>\n<div class=\"ax-px-4 ax-py-2\">\n <ng-content></ng-content>\n</div>\n<ax-footer>\n <ax-button [text]=\"'filter.apply' | translate | async\" color=\"primary\" (onClick)=\"handleApplyClick()\"></ax-button>\n <ax-dropdown-button [color]=\"'default'\" [text]=\"('filter.discard' | translate | async) || 'discard'\"\n (onClick)=\"handleDiscardClick()\">\n <ax-button-item-list>\n <ax-button-item [text]=\"('filter.reset' | translate | async) || 'reset'\" look=\"solid\"\n (onClick)=\"handleResetClick()\">\n </ax-button-item>\n </ax-button-item-list>\n </ax-dropdown-button>\n</ax-footer>","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXImageModule } from '@acorex/components/image';\nimport { AXSelectBoxModule } from '@acorex/components/select-box';\nimport { AXSwitchModule } from '@acorex/components/switch';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPEntityMasterListViewModel, AXPEntityMasterListViewSortPropViewModel } from '@acorex/platform/layout/entity';\nimport { CdkDrag, CdkDragDrop, CdkDragHandle, CdkDropList, moveItemInArray } from '@angular/cdk/drag-drop';\nimport { CommonModule } from '@angular/common';\nimport { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n selector: 'axp-list-view-option-sorting',\n templateUrl: './list-view-option-sorting.component.html',\n imports: [\n AXTranslationModule,\n CommonModule,\n FormsModule,\n CdkDropList,\n CdkDrag,\n CdkDragHandle,\n AXButtonModule,\n AXImageModule,\n AXDecoratorModule,\n AXSwitchModule,\n AXSelectBoxModule,\n ],\n})\nexport class AXPListViewOptionSortingComponent {\n protected isSM = false;\n\n @Output()\n public onClosed = new EventEmitter<void>();\n\n @Input('viewModel')\n public vm!: AXPEntityMasterListViewModel;\n\n protected drop(event: CdkDragDrop<unknown[]>) {\n moveItemInArray(this.vm.sortedFields(), event.previousIndex, event.currentIndex);\n }\n\n protected changeItemSort(item: AXPEntityMasterListViewSortPropViewModel) {\n const newDirection = item.dir === 'asc' ? 'desc' : item.dir === 'desc' ? undefined : 'asc';\n\n this.vm.sortedFields.update((prev) => {\n return prev.map((field) => {\n if (field.name === item.name) {\n return { ...field, dir: newDirection };\n }\n return field;\n });\n });\n\n item.dir = newDirection;\n }\n\n protected handleClose() {\n this.onClosed.emit();\n }\n protected handleResetClick() {\n this.vm.resetSorts();\n }\n\n protected handleApplyClick() {\n this.vm.applySorts();\n this.onClosed.emit();\n }\n}\n","<ax-header>\n <h2>{{ 'entity.sort' | translate | async }}</h2>\n <ax-button (onClick)=\"handleClose()\" [look]=\"'blank'\">\n <ax-icon class=\"fa-solid fa-close ax-text-neutral-400 ax-text-xl\"> </ax-icon>\n </ax-button>\n</ax-header>\n<div class=\"ax-flex ax-flex-col ax-justify-center ax-gap-4 ax-select-none\">\n <div class=\"ax-flex ax-flex-col ax-gap-4 ax-p-4 ax-select-none\" cdkDropList (cdkDropListDropped)=\"drop($event)\">\n <div class=\"ax-flex ax-flex-col ax-gap-3 ax-w-full ax-sorted-list ax-max-h-[calc(100vh-280px)] ax-overflow-auto\">\n @for(item of vm.sortedFields();track item.name) {\n <div class=\"ax-flex ax-py-1 ax-items-center ax-justify-between\" cdkDrag cdkDragBoundary=\".ax-sorted-list\">\n <div class=\"ax-flex ax-items-center ax-gap-3\" cdkDragHandle>\n <ax-icon class=\"fa-solid fa-grip-dots-vertical ax-cursor-move\"></ax-icon>\n <p class=\"ax-font-medium ax-text-sm\">{{ item.title | translate | async }}</p>\n </div>\n <ax-button [color]=\"'default'\" class=\"ax-sm\" (click)=\"changeItemSort(item)\">\n <ax-icon [class.ax-text-primary]=\"item.dir === 'asc'\"\n class=\"fa-solid fa-arrow-up-long ax-text-neutral-400\"></ax-icon>\n <ax-icon [class.ax-text-primary]=\"item.dir === 'desc'\"\n class=\"fa-solid fa-arrow-down-long ax-text-neutral-400\"></ax-icon>\n </ax-button>\n </div>\n }\n </div>\n </div>\n</div>\n<ax-footer>\n <ax-button [text]=\"'apply' | translate | async\" color=\"primary\" (onClick)=\"handleApplyClick()\"></ax-button>\n <ax-button [text]=\"'reset' | translate | async\" [color]=\"'default'\" (onClick)=\"handleResetClick()\"></ax-button>\n</ax-footer>","import { AXActionSheetModule } from '@acorex/components/action-sheet';\nimport {\n AXDataTableComponent,\n AXDataTableModule,\n AXDataTableRowDbClick,\n AXRowCommandItem,\n AXRowCommandItemClickEvent,\n onColumnSizeChangedEvent,\n} from '@acorex/components/data-table';\nimport { AXDrawerComponent, AXDrawerModule } from '@acorex/components/drawer';\nimport { AXPlatform } from '@acorex/core/platform';\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewChild,\n ViewEncapsulation,\n computed,\n effect,\n inject,\n signal,\n} from '@angular/core';\nimport { ActivatedRoute, RouterModule } from '@angular/router';\n\nimport { AXBadgeModule } from '@acorex/components/badge';\nimport { AXBreadcrumbsModule } from '@acorex/components/breadcrumbs';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXValueChangedEvent } from '@acorex/components/common';\nimport { AXDataPagerChangedEvent } from '@acorex/components/data-pager';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDialogModule } from '@acorex/components/dialog';\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { AXSearchBoxModule } from '@acorex/components/search-box';\nimport { AXTabsModule } from '@acorex/components/tabs';\nimport { AXTooltipModule } from '@acorex/components/tooltip';\nimport { AXTranslationModule, translateSync } from '@acorex/core/translation';\nimport { AXPAuthModule } from '@acorex/platform/auth';\nimport { AXPStickyDirective } from '@acorex/platform/common';\nimport { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\nimport { AXPEntityMasterListViewModel } from '@acorex/platform/layout/entity';\nimport { AXPLayoutThemeService } from '@acorex/platform/themes/shared';\nimport { AXPWidgetsModule } from '@acorex/platform/widgets';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { AXPSimpleFiltersViewComponent } from '../../filters-layout/simple-filter-builder/filters-view.component';\nimport { AXPListViewOptionsColumnsComponent } from './list-view-option-columns/list-view-option-columns.component';\nimport { AXPListViewOptionFiltersComponent } from './list-view-option-filters/list-view-option-filters.component';\nimport { AXPListViewOptionSortingComponent } from './list-view-option-sorting/list-view-option-sorting.component';\n\n@Component({\n templateUrl: 'entity-master-list-view.component.html',\n styleUrls: ['entity-master-list-view.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n CommonModule,\n FormsModule,\n RouterModule,\n AXButtonModule,\n AXDecoratorModule,\n AXBadgeModule,\n AXDropdownModule,\n AXPopoverModule,\n AXFormModule,\n AXActionSheetModule,\n AXDrawerModule,\n AXDialogModule,\n AXLoadingModule,\n AXTabsModule,\n AXTooltipModule,\n AXBreadcrumbsModule,\n AXSearchBoxModule,\n AXDataTableModule,\n AXTranslationModule,\n //\n AXPLayoutBuilderModule,\n AXPWidgetsModule,\n AXPStickyDirective,\n AXPAuthModule,\n //\n AXPListViewOptionsColumnsComponent,\n AXPListViewOptionSortingComponent,\n AXPSimpleFiltersViewComponent,\n AXPListViewOptionFiltersComponent,\n ],\n})\nexport class AXPEntityMasterListViewComponent {\n private activeRoute = inject(ActivatedRoute);\n\n protected readonly vm = this.activeRoute.snapshot.data['vm'] as AXPEntityMasterListViewModel;\n\n //\n protected store = inject(AXPLayoutThemeService);\n //\n protected searchBarShown = signal(true);\n\n @ViewChild('grid', { static: true }) grid: AXDataTableComponent;\n\n constructor(protected platform: AXPlatform) {\n effect(() => {\n this.grid.selectedRows = this.vm.selectedItems();\n });\n //\n this.vm.events$.subscribe(async (e) => {\n const refreshTargetId = e.meta?.refreshTargetId;\n if (e.action == 'refresh') {\n if (refreshTargetId) {\n this.grid.refreshItemChildren(refreshTargetId);\n } else {\n this.grid.refresh();\n }\n }\n });\n }\n\n ngAfterViewInit() {\n this.vm.setView();\n }\n\n protected closeFiltersDrawer(e: AXDrawerComponent, collapsed: boolean) {\n if (collapsed) {\n e.close();\n this.vm.discardFilters();\n }\n }\n\n handleChangeSearchValue(e: AXValueChangedEvent) {\n if (e.isUserInteraction) {\n this.vm.applyInlineFilter(e.value);\n }\n }\n\n protected onColumnSizeChanged(e: onColumnSizeChangedEvent) {\n if (e.isUserInteraction && e.type === 'end') {\n this.vm.saveSettings('columnSizes', e.data);\n }\n }\n\n protected onPageChanged(e: AXDataPagerChangedEvent) {\n if (e.isUserInteraction) {\n const pageSizeChanged = e.take != this.vm.dataSource.pageSize;\n if (pageSizeChanged) {\n this.vm.saveSettings('pageSize', e.take);\n }\n }\n }\n\n protected async dropdownRowItems(rowData: any): Promise<AXRowCommandItem[]> {\n return (await this.vm.secondaryRowActions(rowData)).map((c) => ({\n icon: c.icon,\n name: c.name,\n text: translateSync(c.title),\n color: c.color,\n disabled: c.disabled,\n })) as AXRowCommandItem[];\n }\n\n private commandRowItems = computed<AXRowCommandItem[]>(() => {\n return this.vm.primaryRowActions().map((c) => {\n return {\n icon: c.icon,\n name: c.name,\n text: translateSync(c.title),\n color: c.color,\n disabled: c.disabled,\n } as AXRowCommandItem;\n });\n });\n\n protected async handleRowDbClick(e: AXDataTableRowDbClick) {\n //TODO: find a way for default action\n const item = [...this.commandRowItems(), ...(await this.dropdownRowItems(e.data))][0];\n if (item) {\n const d: AXRowCommandItemClickEvent = {\n component: e.component,\n name: item.name,\n data: e.data,\n };\n this.handleRowCommandClick(d);\n }\n }\n\n protected getDropdownRowItems = (rowData: unknown): Promise<AXRowCommandItem[]> => {\n return Promise.resolve(this.dropdownRowItems(rowData));\n };\n\n protected getCommandRowItems = (): AXRowCommandItem[] => {\n return this.commandRowItems();\n };\n\n protected async handleRowCommandClick(e: AXRowCommandItemClickEvent) {\n this.vm.executeCommand(e.name, e.data);\n }\n\n protected async handleSelectedRowsChange(rows: unknown[]) {\n this.vm.selectedItems.set(rows);\n }\n\n protected makeResponsive<t>(value: t): t | string {\n if (this.platform.is('Mobile') || this.platform.is('SM')) {\n return '';\n } else {\n return value;\n }\n }\n\n protected toggleSearchBar() {\n this.searchBarShown.set(!this.searchBarShown());\n }\n\n ngOnDestroy(): void {\n this.vm.destroy();\n }\n}\n","<ax-drawer-container>\n <ax-content class=\"ax-flex ax-flex-col ax-overflow-hidden\" #content>\n <div class=\"ax-flex ax-flex-col ax-gap-4 ax-px-4 ax-pb-4 md:ax-px-6 ax-border-b md:ax-border-0\">\n <div\n class=\"ax-flex ax-flex-col ax-pt-3 ax-sticky ax-top-0 ax-z-10 ax-transition-all\"\n #sticky=\"axpSticky\"\n [axpSticky]=\"'ax-bg-lightest ax-px-6 ax-py-3 -ax-mx-6 ax-shadow-xl'\"\n [stickyParent]=\"content.getHostElement()\"\n >\n <!-------- Begin Toolbar -------->\n <!-------- Begin Line 1 -------->\n <ax-breadcrumbs [class.ax-hidden]=\"store.isSmall()\" class=\"ax-opacity-50\">\n <ng-template #divider>\n <i class=\"fa-regular fa-slash-forward ax-text-xs\"></i>\n </ng-template>\n @for(b of vm.beardcrumbs();track $index;let last=$last) {\n <ax-breadcrumbs-item [routerLink]=\"b.url\" class=\"!ax-text-xs\">\n {{ b.title | translate | async }}\n </ax-breadcrumbs-item>\n }\n </ax-breadcrumbs>\n <div class=\"ax-flex ax-justify-between ax-items-center ax-mb-4\">\n <!-------- Begin Title -------->\n\n <div class=\"ax-flex ax-gap-1 ax-items-center\">\n <div class=\"ax-flex ax-flex-col ax-gap-2 ax-transition\">\n <div class=\"ax-text-xl md:ax-text-3xl ax-font-medium\">{{ vm.title() | translate | async }}</div>\n @if(vm.description() ) {\n <div class=\"ax-text-sm ax-text-neutral-600\" [class.ax-hidden]=\"sticky.isSticky\">\n {{ vm.description()! | translate | async }}\n </div>\n }\n </div>\n </div>\n <!-------- Finish Title -------->\n <!--------------------------------------------------------------->\n <!-- Begin Action Menu -->\n <div class=\"ax-flex ax-items-center ax-gap-3\">\n @for(tr of vm.primaryActions();track $index) {\n <ax-button\n [disabled]=\"tr.disabled\"\n [text]=\"tr.title | translate | async\"\n [color]=\"tr.color\"\n (onClick)=\"vm.executeCommand(tr.name)\"\n >\n <ax-prefix>\n <ax-icon [icon]=\"tr.icon\"> </ax-icon>\n </ax-prefix>\n </ax-button>\n } @if(vm.secondaryActions().length) {\n <ax-button [text]=\"store.isSmall() ? null : ('actions' | translate | async)\" [color]=\"'default'\">\n <ax-prefix>\n <i class=\"fa-solid fa-ellipsis-vertical\"></i>\n </ax-prefix>\n <ax-dropdown-panel>\n <ax-button-item-list>\n @for(tr of vm.secondaryActions();track $index) {\n <ng-container>\n @if(tr.separated && !$first) {\n <ax-divider></ax-divider>\n }\n <ax-button-item\n [color]=\"tr.color\"\n [disabled]=\"tr.disabled\"\n [text]=\"(tr.title | translate | async)!\"\n (onClick)=\"vm.executeCommand(tr.name)\"\n >\n <ax-prefix>\n <ax-icon [icon]=\"tr.icon\"> </ax-icon>\n </ax-prefix>\n </ax-button-item>\n </ng-container>\n }\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n }\n </div>\n <!-- Finish Action Menu -->\n </div>\n\n <!-------- Finish Line 1 -------->\n\n <!-------- Begin Line 2 -------->\n <div class=\"ax-flex ax-justify-between ax-items-center\">\n <div class=\"ax-flex ax-justify-start ax-items-center ax-gap-4\">\n <!-------- Begin Selection -------->\n\n @if(vm.hasSelectedItems()) {\n <div class=\"ax-flex ax-gap-3 ax-items-center ax-h-10\">\n <span class=\"ax-text-xl ax-font-bold\">\n {{ vm.selectedItems().length }} {{ 't(\"itemsSelected\", { scope: \"common\" })' | translate | async }}\n </span>\n <span\n (click)=\"vm.clearSelection()\"\n class=\"ax-text-sm ax-text-primary-500 ax-underline ax-cursor-pointer\"\n >{{\n 't(\"unselect\", { scope:\n \"common\" })'\n | translate\n | async\n }}</span\n >\n </div>\n\n <!-------- Finish Selection -------->\n\n } @else {\n\n <!-------- Begin View -------->\n\n <ax-button [text]=\"vm.view().title | translate | async\" #views [color]=\"'default'\">\n <ax-prefix>\n <i class=\"fa-solid fa-eye\"></i>\n </ax-prefix>\n <ax-suffix>\n <i class=\"fa-solid fa-caret-down\"></i>\n </ax-suffix>\n <ax-dropdown-panel [adaptivityEnabled]=\"true\">\n <ax-button-item-list class=\"ax-p-2\">\n <ax-title class=\"ax-font-bold ax-opacity-100\">{{\n 'entity.public-view' | translate | async\n }}</ax-title>\n <ax-button-item\n *ngFor=\"let v of vm.views()\"\n [text]=\"(v.title | translate | async)!\"\n [selected]=\"vm.view() == v\"\n (onClick)=\"vm.setView(v.name)\"\n ></ax-button-item>\n <!-- <ax-title class=\"ax-font-bold ax-opacity-100\" *ngIf=\"hasCustomViews$ | async\">Created by me</ax-title>\n <ax-button-item class=\"ax-pe-4 ax-flex ax-justify-between\" *ngFor=\"let v of customViews$ | async\"\n [text]=\"v.title\" [class.ax-bg-on-surface]=\"(view$ | async) == v\" (onClick)=\"loader.setView(v.name)\">\n <ax-suffix>\n <ax-button (onClick)=\"updateViewPopup($event, v)\" class=\"ax-xs\" look=\"none\">\n <ax-icon class=\"far fa-edit\"> </ax-icon>\n </ax-button>\n </ax-suffix>\n </ax-button-item> -->\n <!-- <ng-container *feature=\"'axp-entity-list-custom-view'\">\n <ax-divider></ax-divider>\n <ax-button-item text=\"Add Custom View\" (onClick)=\"addCustomViewPopup()\"\n class=\"ax-font-semibold ax-text-primary\"></ax-button-item>\n </ng-container> -->\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n <!-------- Finish View -------->\n\n <!-------- Begin Inline Search -------->\n @if(vm.hasInlineFilters() && !(this.platform.is('Mobile') || this.platform.is('SM'))) {\n <div class=\"ax-w-72\">\n <ax-search-box\n [placeholder]=\"('widget.lookup.search' | translate | async) + vm.inlineFiltersPlaceholders().join(', ')\"\n (onValueChanged)=\"handleChangeSearchValue($event)\"\n ><ax-clear-button></ax-clear-button\n ></ax-search-box>\n </div>\n } }\n <!-------- Finish Inline Search -------->\n </div>\n <!-- Begin View Action Menu -->\n @if(!vm.hasSelectedItems()) {\n <div class=\"ax-flex ax-gap-3\">\n @if(vm.hasInlineFilters() && (this.platform.is('Mobile') || this.platform.is('SM'))) {\n <ax-button (onClick)=\"toggleSearchBar()\" [color]=\"'default'\">\n <ax-icon class=\"fa-solid fa-search\"> </ax-icon> </ax-button\n >}\n\n <ax-button\n [text]=\"makeResponsive('entity.columns' | translate | async)\"\n [color]=\"'default'\"\n (onClick)=\"columnsDrawer.open()\"\n >\n <ax-prefix>\n <i class=\"fa-solid fa-bars\"></i>\n </ax-prefix>\n <ax-suffix>\n <ax-badge [text]=\"makeResponsive(vm.visibleColumnCount().toString())\" color=\"primary\"></ax-badge>\n </ax-suffix>\n </ax-button>\n <ax-button\n [text]=\"makeResponsive('filter.title' | translate | async)\"\n [color]=\"'default'\"\n (onClick)=\"filtersDrawer.open()\"\n *feature=\"'axp-entity-list-advance-filter'\"\n >\n <ax-prefix>\n <i class=\"fa-solid fa-sliders\"></i>\n </ax-prefix>\n @if(vm.simpleFilters().filters?.length){\n <ax-suffix>\n <ax-badge\n [text]=\"makeResponsive(vm.simpleFilters().filters?.length?.toString() || '0')\"\n color=\"primary\"\n ></ax-badge>\n </ax-suffix>\n }\n </ax-button>\n\n @if(vm.canSort()) {\n <ax-button\n [text]=\"makeResponsive('entity.sort' | translate | async)\"\n [color]=\"'default'\"\n (onClick)=\"sortsDrawer.open()\"\n >\n <ax-prefix>\n <i class=\"fa-solid fa-bars-sort\"></i>\n </ax-prefix>\n @if(vm.sortedCount()) {\n <ax-suffix>\n <ax-badge [text]=\"makeResponsive(vm.sortedCount().toString())\" color=\"primary\"></ax-badge>\n </ax-suffix>\n }\n </ax-button>\n }\n </div>\n }\n <!-- Finish View Action Menu -->\n </div>\n <div>\n @if(vm.hasInlineFilters() && (this.platform.is('Mobile') || this.platform.is('SM'))) {\n <ax-search-box\n [class.collapsed-search-box]=\"searchBarShown()\"\n class=\"ax-transition-all\"\n [placeholder]=\"('widget.lookup.search' | translate | async) + vm.inlineFiltersPlaceholders().join(', ')\"\n (onValueChanged)=\"handleChangeSearchValue($event)\"\n ><ax-clear-button></ax-clear-button\n ></ax-search-box>\n }\n </div>\n <!-------- Finish Line 2 -------->\n\n <!----- Finish Toolbar ----->\n </div>\n </div>\n <!----- Begin DataTable ----->\n <div class=\"ax-flex ax-flex-1 ax-px-6 ax-py-6 ax-pt-0 ax-overflow-auto\">\n <ax-data-table\n #grid\n [showFooter]=\"false\"\n class=\"ax-flex-1\"\n [paging]=\"true\"\n [fetchDataMode]=\"'manual'\"\n [parentField]=\"vm.parentKey()\"\n [loading]=\"{ enabled: true, animation: true }\"\n [dataSource]=\"vm.dataSource\"\n (selectedRowsChange)=\"handleSelectedRowsChange($event)\"\n (onRowDbClick)=\"handleRowDbClick($event)\"\n (onColumnSizeChanged)=\"onColumnSizeChanged($event)\"\n (onPageChanged)=\"onPageChanged($event)\"\n >\n @if(vm.view().indexCol === true){\n <ax-index-column fixed=\"start\" [width]=\"'80px'\" [padZero]=\"true\"></ax-index-column>\n } @if(vm.selectedScopeActionsCount()){\n <ax-select-column fixed=\"start\" [width]=\"'60px'\"></ax-select-column>\n } @for(col of vm.columns();track col.name) { @if(col.visible) {\n <axp-widget-column-renderer\n [expandHandler]=\"$index === 0 && vm.parentKey() ? true : false\"\n [caption]=\"(col.title | translate | async)!\"\n [node]=\"col.node()\"\n [customWidth]=\"col.width\"\n ></axp-widget-column-renderer>\n } } @if(getCommandRowItems().length){\n\n <ax-command-column\n fixed=\"end\"\n [width]=\"getCommandRowItems().length * 60 + 'px'\"\n [items]=\"getCommandRowItems()\"\n (onItemClick)=\"handleRowCommandClick($event)\"\n ></ax-command-column>\n\n }\n <!-- @if(getDropdownRowItems.length){ -->\n <ax-dropdown-command-column\n fixed=\"end\"\n [width]=\"'60px'\"\n [items]=\"getDropdownRowItems\"\n (onItemClick)=\"handleRowCommandClick($event)\"\n ></ax-dropdown-command-column>\n <!-- } -->\n </ax-data-table>\n </div>\n <!----- Finish DataTable ----->\n </ax-content>\n\n <ax-drawer #columnsDrawer location=\"end\" [mode]=\"'overlay'\">\n <ax-content class=\"view-drawer\">\n <axp-list-view-option-columns [viewModel]=\"vm\" (onClosed)=\"columnsDrawer.close()\"></axp-list-view-option-columns>\n </ax-content>\n </ax-drawer>\n <ax-drawer\n #filtersDrawer\n location=\"end\"\n [mode]=\"'overlay'\"\n (collapsedChange)=\"closeFiltersDrawer(filtersDrawer, $event)\"\n >\n <ax-content class=\"view-drawer\">\n <axp-list-view-option-filters (onClosed)=\"closeFiltersDrawer(filtersDrawer, true)\" [viewModel]=\"vm\">\n <axp-simple-filters-view\n [availAbleFilters]=\"vm.filtersDef\"\n [(filters)]=\"vm.simpleFilters\"\n ></axp-simple-filters-view>\n </axp-list-view-option-filters>\n </ax-content>\n </ax-drawer>\n <ax-drawer #sortsDrawer location=\"end\" [mode]=\"'overlay'\">\n <ax-content class=\"view-drawer\">\n <axp-list-view-option-sorting (onClosed)=\"sortsDrawer.close()\" [viewModel]=\"vm\"></axp-list-view-option-sorting>\n </ax-content>\n </ax-drawer>\n</ax-drawer-container>\n"],"names":["i1","i2","i3","i5","i6","i4","i9","i10","i12","i13","i14"],"mappings":"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"}
|