@acorex/platform 18.2.3 → 18.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/esm2022/common/lib/layout/sticky.directive.mjs +15 -11
  2. package/esm2022/layout/builder/lib/builder/widget-column-renderer.mjs +22 -11
  3. package/esm2022/layout/designer/lib/designer/components/size-mode/view-size-toolbar.component.mjs +27 -32
  4. package/esm2022/layout/entity/lib/entity-master-list.viewmodel.mjs +33 -8
  5. package/esm2022/layout/entity/lib/entity.module.mjs +1 -17
  6. package/esm2022/layout/entity/lib/index.mjs +5 -4
  7. package/esm2022/layout/setting/lib/convert-setting-data.mjs +59 -0
  8. package/esm2022/layout/setting/lib/setting.viewmodel.mjs +123 -41
  9. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/entity-list-view.component.mjs +3 -3
  10. package/esm2022/themes/default/lib/default.module.mjs +83 -39
  11. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.mjs +3 -3
  12. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.mjs +18 -18
  13. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-columns/list-view-option-columns.component.mjs +18 -8
  14. package/esm2022/themes/default/lib/layouts/root-layout/components/menu/root-menu.component.mjs +1 -1
  15. package/esm2022/themes/default/lib/layouts/setting-layout/index.mjs +3 -3
  16. package/esm2022/themes/default/lib/layouts/setting-layout/setting-menu/setting-menu.component.mjs +28 -0
  17. package/esm2022/themes/default/lib/layouts/setting-layout/setting-view/setting-view.component.mjs +42 -0
  18. package/esm2022/widgets/lib/widgets/advance/cron-job/cron-job-widget-edit.component.mjs +2 -2
  19. package/esm2022/widgets/lib/widgets/advance/cron-job/cron-job-widget.config.mjs +3 -2
  20. package/esm2022/workflow/lib/workflow.service.mjs +1 -1
  21. package/fesm2022/acorex-platform-common.mjs +13 -9
  22. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  23. package/fesm2022/acorex-platform-layout-builder.mjs +18 -7
  24. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  25. package/fesm2022/acorex-platform-layout-designer.mjs +25 -30
  26. package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
  27. package/fesm2022/acorex-platform-layout-entity.mjs +842 -833
  28. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  29. package/fesm2022/acorex-platform-layout-setting.mjs +180 -40
  30. package/fesm2022/acorex-platform-layout-setting.mjs.map +1 -1
  31. package/fesm2022/acorex-platform-layouts.mjs.map +1 -1
  32. package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-CJY8R3sa.mjs → acorex-platform-themes-default-entity-master-create-view.component-Bs6fn6z2.mjs} +3 -3
  33. package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-CJY8R3sa.mjs.map → acorex-platform-themes-default-entity-master-create-view.component-Bs6fn6z2.mjs.map} +1 -1
  34. package/fesm2022/{acorex-platform-themes-default-entity-master-list-view.component-C6zgLyry.mjs → acorex-platform-themes-default-entity-master-list-view.component-DPHXeucj.mjs} +39 -30
  35. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-DPHXeucj.mjs.map +1 -0
  36. package/fesm2022/{acorex-platform-themes-default-entity-master-modify-view.component-wPZPhMgy.mjs → acorex-platform-themes-default-entity-master-modify-view.component-CWrpcOC2.mjs} +3 -3
  37. package/fesm2022/{acorex-platform-themes-default-entity-master-modify-view.component-wPZPhMgy.mjs.map → acorex-platform-themes-default-entity-master-modify-view.component-CWrpcOC2.mjs.map} +1 -1
  38. package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-DNXWb6ij.mjs → acorex-platform-themes-default-entity-master-single-view.component-DHfe0Qtu.mjs} +10 -10
  39. package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-DNXWb6ij.mjs.map → acorex-platform-themes-default-entity-master-single-view.component-DHfe0Qtu.mjs.map} +1 -1
  40. package/fesm2022/acorex-platform-themes-default.mjs +153 -257
  41. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  42. package/fesm2022/acorex-platform-widgets.mjs +3 -2
  43. package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
  44. package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
  45. package/layout/builder/lib/builder/widget-column-renderer.d.ts +1 -1
  46. package/layout/entity/lib/entity-master-list.viewmodel.d.ts +6 -2
  47. package/layout/entity/lib/index.d.ts +4 -3
  48. package/layout/setting/README.md +2 -3
  49. package/{themes/default/lib/layouts/setting-layout → layout/setting/lib}/convert-setting-data.d.ts +6 -6
  50. package/layout/setting/lib/setting.viewmodel.d.ts +35 -9
  51. package/package.json +7 -7
  52. package/themes/default/lib/default.module.d.ts +3 -4
  53. package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-columns/list-view-option-columns.component.d.ts +3 -0
  54. package/themes/default/lib/layouts/setting-layout/index.d.ts +2 -2
  55. package/themes/default/lib/layouts/setting-layout/setting-menu/setting-menu.component.d.ts +12 -0
  56. package/themes/default/lib/layouts/setting-layout/setting-view/setting-view.component.d.ts +7 -0
  57. package/widgets/lib/widgets/advance/cron-job/cron-job-widget-edit.component.d.ts +1 -2
  58. package/workflow/lib/workflow.service.d.ts +1 -1
  59. package/esm2022/themes/default/lib/layout.routes.mjs +0 -20
  60. package/esm2022/themes/default/lib/layouts/setting-layout/convert-setting-data.mjs +0 -49
  61. package/esm2022/themes/default/lib/layouts/setting-layout/setting-preview/setting-preview.component.mjs +0 -104
  62. package/esm2022/themes/default/lib/layouts/setting-layout/setting-view/setting-menu.component.mjs +0 -44
  63. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-C6zgLyry.mjs.map +0 -1
  64. package/themes/default/lib/layout.routes.d.ts +0 -2
  65. package/themes/default/lib/layouts/setting-layout/setting-preview/setting-preview.component.d.ts +0 -24
  66. package/themes/default/lib/layouts/setting-layout/setting-view/setting-menu.component.d.ts +0 -20
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-themes-default.mjs","sources":["../../../../libs/platform/themes/default/src/lib/layout.routes.ts","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/footer/footer.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/footer/footer.component.html","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/header/header.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/header/header.component.html","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/menu/root-menu.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/menu/root-menu.component.html","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/root-layout.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/root-layout.component.html","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/root-layout.module.ts","../../../../libs/platform/themes/default/src/lib/entity-reuse.strategy.ts","../../../../libs/platform/themes/default/src/lib/default.module.ts","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.html","../../../../libs/platform/themes/default/src/lib/layouts/setting-layout/convert-setting-data.ts","../../../../libs/platform/themes/default/src/lib/layouts/setting-layout/setting-view/setting-menu.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/setting-layout/setting-view/setting-menu.component.html","../../../../libs/platform/themes/default/src/lib/layouts/setting-layout/setting-preview/setting-preview.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/setting-layout/setting-preview/setting-preview.component.html","../../../../libs/platform/themes/default/src/acorex-platform-themes-default.ts"],"sourcesContent":["import { Route } from '@angular/router';\nexport const routes: Route[] = [\n {\n path: 'error',\n children: [\n {\n path: 'offline',\n loadComponent: () => import('./pages/errors/error-offline/error-offline.component').then(c => c.AXPErrorOfflineComponent),\n },\n {\n path: '404',\n loadComponent: () => import('./pages/errors/error-404/error-404.component').then(c => c.AXPError404Component),\n },\n {\n path: '401',\n loadComponent: () => import('./pages/errors/error-401/error-401.component').then(c => c.AXPError401Component),\n },\n ]\n },\n];\n","import { Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'axp-dashboard-admin-footer',\n templateUrl: './footer.component.html',\n encapsulation: ViewEncapsulation.None,\n providers: [],\n host: {\n class: 'ax-h-10 ax-flex ax-item-center ax-justify-between ax-bg-surface ax-px-6 ax-border-t',\n },\n})\nexport class AXPRootLayoutFooterComponent {\n}\n","<div class=\"ax-flex ax-items-center ax-justify-start ax-gap-1\">\n <axp-component-slot name=\"footer-start\"></axp-component-slot>\n</div>\n<div class=\"ax-flex ax-items-center ax-justify-end ax-gap-1\">\n <axp-component-slot name=\"footer-end\"></axp-component-slot>\n</div>","\nimport { AXPLayoutThemeService } from '@acorex/platform/themes/shared';\nimport { Component, ViewEncapsulation, inject } from '@angular/core';\nimport { Router } from '@angular/router';\n\n\n@Component({\n selector: 'axp-dashboard-admin-header',\n templateUrl: './header.component.html',\n styleUrls: ['./header.component.scss'],\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'ax-h-16 ax-flex ax-justify-between ax-px-4 md:ax-px-0 md:ax-pe-6 ax-py-4 ax-bg-surface ax-border-b',\n },\n})\nexport class AXPRootLayoutHeaderComponent {\n\n protected store = inject(AXPLayoutThemeService);\n private router = inject(Router);\n\n\n menuClick() {\n this.store.toggleSideMenu();\n }\n\n logoClick() {\n this.router.navigate(['/']);\n }\n}\n","<div class=\"ax-w-full ax-flex ax-justify-between\">\n <div class=\"ax-flex ax-items-center md:ax-hidden\">\n <i class=\"fa-solid fa-bars ax-text-lg ax-me-3\" (click)=\"menuClick()\"></i>\n </div>\n <div class=\"ax-flex ax-items-center\">\n <div\n class=\"ax-hidden md:ax-flex ax-items-center ax-justify-center ax-w-8 ax-h-8 ax-bg-on-surface ax-rounded ax-rounded-s-none ax-me-8 ax-cursor-pointer\"\n (click)=\"menuClick()\">\n <i class=\"fa-solid fa-chevrons-left ax-text-sm\" [ngClass]=\"{ 'ax-rotate-180': !store.isSideMenuOpen() }\"> </i>\n </div>\n <axp-component-slot name=\"header-start\"></axp-component-slot>\n </div>\n <div class=\"ax-flex ax-items-center ax-gap-1\">\n <axp-component-slot name=\"header-end\"></axp-component-slot>\n </div>\n</div>","import { Component, inject } from '@angular/core';\nimport { AXPMenuItem, AXPMenuService } from '@acorex/platform/common';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { filter } from 'rxjs';\nimport { sortBy } from 'lodash-es';\n\n@Component({\n selector: 'axp-root-menu',\n templateUrl: './root-menu.component.html',\n styleUrls: ['./root-menu.component.scss'],\n})\nexport class AXPRootLayoutMenuComponent {\n protected menuStore = inject(AXPMenuService);\n protected router = inject(Router);\n\n onMenuItemClick(item: AXPMenuItem): void {\n if (!item.children?.length) {\n this.menuStore.executeCommand(item);\n }\n }\n\n ngOnInit(): void {\n // Select the menu item based on the current route when the page loads\n this.menuStore.selectMenuItemByRoute(this.router.url);\n\n // Update the selected menu item whenever the route changes\n this.router.events.pipe(\n filter(event => event instanceof NavigationEnd)\n ).subscribe((event: NavigationEnd) => {\n this.menuStore.selectMenuItemByRoute(event.urlAfterRedirects);\n });\n }\n\n\n protected sort(items: AXPMenuItem[]): AXPMenuItem[] {\n return sortBy(items, [c => c.priority ?? 0, c => c.text]);\n }\n}","<ax-side-menu>\n <ng-container *ngFor=\"let item of sort(menuStore.items())\" [ngTemplateOutlet]=\"recursiveMenu\"\n [ngTemplateOutletContext]=\"{ item: item }\">\n </ng-container>\n</ax-side-menu>\n\n<ng-template #recursiveMenu let-item=\"item\">\n @if(item.type=='group') {\n <ax-title *permission=\"item.data?.requiredPermission\">{{ item.text | translate | async }}</ax-title>\n } @else {\n <ax-side-menu-item *permission=\"item.data?.requiredPermission\" (onClick)=\"onMenuItemClick( item)\"\n [active]=\"item ===menuStore.selectedMenuItem().item\" [isCollapsed]=\"!menuStore.isItemOpen(item)\">\n <ax-prefix>\n <ax-icon [class]=\"item.icon\"></ax-icon>\n </ax-prefix>\n {{ item.text | translate | async }}\n <ng-container *ngIf=\"item.children?.length\">\n <ng-container *ngFor=\"let child of sort(item.children)\" [ngTemplateOutlet]=\"recursiveMenu\"\n [ngTemplateOutletContext]=\"{ item: child }\">\n </ng-container>\n </ng-container>\n </ax-side-menu-item>\n }\n</ng-template>","import { AXDrawerComponent } from '@acorex/components/drawer';\nimport {\n AXP_PLATFORM_CONFIG_TOKEN,\n} from '@acorex/platform/common';\nimport { AXPLayoutThemeService } from '@acorex/platform/themes/shared';\nimport { Component, ViewChild, ViewEncapsulation, inject } from '@angular/core';\n\n\n@Component({\n templateUrl: './root-layout.component.html',\n encapsulation: ViewEncapsulation.None,\n})\nexport class AXPRootLayoutComponent {\n @ViewChild('drawer') drawer!: AXDrawerComponent;\n\n private config = inject(AXP_PLATFORM_CONFIG_TOKEN);\n\n\n protected store = inject(AXPLayoutThemeService);\n protected logo = this.config.logo;\n\n\n\n constructor() {\n }\n\n protected handleCollapsedChange(value: boolean) {\n if (value) {\n this.store.closeSideMenu();\n };\n }\n}\n","<ax-drawer-container>\n <ax-drawer #drawer location=\"start\" [collapsed]=\"!store.isSideMenuOpen()\"\n [mode]=\"store.isSmall() ? 'overlay' : 'push'\" (collapsedChange)=\"handleCollapsedChange($event)\">\n <ax-content\n class=\"ax-w-72 ax-h-full ax-flex ax-flex-col ax-bg-secondary-600 dark:ax-bg-surface ax-text-primary-fore ax-border-e ax-border-primary-700 dark:ax-border-default\">\n <header class=\"ax-px-7 ax-h-16 ax-flex ax-items-center ax-border-b ax-border-white/10\">\n <axp-logo [source]=\"logo?.light\"></axp-logo>\n </header>\n <nav class=\"ax-px-2 ax-py-4 ax-overflow-y-auto ax-flex-1 ax-h-full\">\n <axp-root-menu></axp-root-menu>\n </nav>\n </ax-content>\n </ax-drawer>\n <ax-content class=\"ax-flex ax-flex-col ax-relative\">\n @if(store.isNavigationLoading()) {\n <div class=\"axp-navigating-progress\">\n <div></div>\n </div>\n }\n <axp-dashboard-admin-header></axp-dashboard-admin-header>\n <div class=\"ax-flex-1 ax-overflow-auto ax-relative\" [axIsLoading]=\"store.isOverlayLoading()\">\n <router-outlet></router-outlet>\n </div>\n <axp-dashboard-admin-footer></axp-dashboard-admin-footer>\n </ax-content>\n</ax-drawer-container>","import { AXAvatarModule } from '@acorex/components/avatar';\nimport { AXBadgeModule } from '@acorex/components/badge';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDrawerModule } from '@acorex/components/drawer';\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { AXImageModule } from '@acorex/components/image';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { AXSideMenuModule } from '@acorex/components/side-menu';\nimport { AXTabsModule } from '@acorex/components/tabs';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPAuthModule } from '@acorex/platform/auth';\nimport { AXPComponentSlotModule, AXPLogoComponent } from '@acorex/platform/common';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { AXPRootLayoutFooterComponent } from './components/footer/footer.component';\nimport { AXPRootLayoutHeaderComponent } from './components/header/header.component';\nimport { AXPRootLayoutMenuComponent } from './components/menu/root-menu.component';\nimport { AXPRootLayoutComponent } from './root-layout.component';\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule,\n AXButtonModule,\n AXTranslationModule,\n AXDecoratorModule,\n AXDropdownModule,\n AXAvatarModule,\n AXImageModule,\n AXImageModule,\n AXPopoverModule,\n AXBadgeModule,\n AXTabsModule,\n AXDrawerModule,\n AXSideMenuModule,\n AXLoadingModule,\n AXPLogoComponent,\n AXPAuthModule,\n AXPComponentSlotModule,\n // AXMConversationModule\n ],\n exports: [],\n declarations: [\n AXPRootLayoutFooterComponent,\n AXPRootLayoutHeaderComponent,\n AXPRootLayoutComponent,\n AXPRootLayoutMenuComponent,\n ],\n providers: [],\n})\nexport class AXPAdminRootLayoutModule {}\n","import { ActivatedRouteSnapshot, DetachedRouteHandle, RouteReuseStrategy } from '@angular/router';\n\nexport class AXPEntityReuseStrategy implements RouteReuseStrategy {\n shouldDetach(route: ActivatedRouteSnapshot): boolean {\n return false;\n }\n\n store(route: ActivatedRouteSnapshot, detachedTree: DetachedRouteHandle): void {}\n\n shouldAttach(route: ActivatedRouteSnapshot): boolean {\n return false;\n }\n\n retrieve(route: ActivatedRouteSnapshot): DetachedRouteHandle | null {\n return null;\n }\n\n shouldReuseRoute(future: ActivatedRouteSnapshot, curr: ActivatedRouteSnapshot): boolean {\n if (future.data && future.data['reuse'] === false) {\n return false;\n }\n return future.routeConfig === curr.routeConfig;\n }\n}\n","import { inject, NgModule } from \"@angular/core\";\nimport { RouteReuseStrategy, RouterModule } from \"@angular/router\";\nimport { routes } from \"./layout.routes\";\nimport { AXPCommonModule } from \"@acorex/platform/common\";\nimport { AXPRootLayoutComponent } from \"./layouts/root-layout\";\nimport { AXPEntityReuseStrategy } from \"./entity-reuse.strategy\";\nimport { AXP_ENTITY_CONFIG_TOKEN, AXPEntityConfigs } from \"@acorex/platform/layout/entity\";\nimport { AXPThemesSharedModule } from \"@acorex/platform/themes/shared\";\n\n@NgModule({\n imports: [\n RouterModule.forChild(routes),\n AXPCommonModule,\n AXPThemesSharedModule\n ],\n exports: [],\n declarations: [],\n providers: [\n\n {\n provide: AXP_ENTITY_CONFIG_TOKEN,\n useValue: {\n viewers: {\n root: () => AXPRootLayoutComponent,\n master: {\n single: () => import('./layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component')\n .then(c => c.AXPEntityMasterSingleViewComponent),\n ///\n create: () => import('./layouts/entity-layouts/entity-master-create-view/entity-master-create-view.component')\n .then(c => c.AXPEntityMasterCreateViewComponent),\n ///\n modify: () => import('./layouts/entity-layouts/entity-master-modify-view/entity-master-modify-view.component')\n .then(c => c.AXPEntityMasterModifyViewComponent),\n //\n list: () => import('./layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component')\n .then(c => c.AXPEntityMasterListViewComponent)\n }\n }\n } as AXPEntityConfigs\n },\n { provide: RouteReuseStrategy, useClass: AXPEntityReuseStrategy }\n ]\n})\nexport class AXPDefaultThemeModule {\n\n}\n","import { AXActionSheetModule, AXActionSheetService } from '@acorex/components/action-sheet';\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 {\n AXDataTableComponent,\n AXDataTableModule,\n AXDataTableRowDbClick,\n AXRowCommandItem,\n AXRowCommandItemClickEvent,\n} from '@acorex/components/data-table';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDialogModule } from '@acorex/components/dialog';\nimport { AXDrawerModule } from '@acorex/components/drawer';\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 } from '@acorex/core/translation';\nimport { AXUnsubscriber } from '@acorex/core/utils';\nimport { AXPAuthModule } from '@acorex/platform/auth';\nimport {\n AXPGridLayoutDirective,\n AXPStickyDirective,\n} from '@acorex/platform/common';\nimport { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\nimport { AXPEntityDetailListViewModel } from '@acorex/platform/layout/entity';\nimport { AXPEntityCreateEvent, AXPEntityDeletedEvent } from '@acorex/platform/layouts';\nimport { AXPLayoutThemeService } from '@acorex/platform/themes/shared';\nimport { AXPWidgetsModule } from '@acorex/platform/widgets';\nimport { AXPWorkflowService, ofType } from '@acorex/platform/workflow';\nimport { CommonModule } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n Input,\n ViewChild,\n ViewEncapsulation,\n computed,\n effect,\n inject,\n} from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { RouterModule } from '@angular/router';\n\nimport { Subject, takeUntil } from 'rxjs';\n\n@Component({\n selector: 'axp-entity-detail-list-view',\n templateUrl: 'entity-detail-list-view.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [AXUnsubscriber],\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 //\n AXPLayoutBuilderModule,\n AXPWidgetsModule,\n AXPStickyDirective,\n AXPGridLayoutDirective,\n AXPAuthModule,\n AXTranslationModule,\n ],\n standalone: true,\n})\nexport class AXPEntityDetailListViewComponent {\n private workflow = inject(AXPWorkflowService);\n protected store = inject(AXPLayoutThemeService)\n\n @Input('viewModel')\n vm: AXPEntityDetailListViewModel;\n\n protected focusedRow: any;\n //\n @ViewChild('grid') grid!: AXDataTableComponent;\n\n constructor(\n private actionSheetService: AXActionSheetService,\n private unsubscriber: AXUnsubscriber,\n ) {\n effect(\n () => {\n this.grid.selectedRows = this.vm.selectedItems();\n },\n { allowSignalWrites: true }\n );\n this.subscribeActionEvents();\n }\n\n\n private readonly destroyed = new Subject<void>();\n\n handleChangeSearchValue(e: AXValueChangedEvent) {\n if (e.isUserInteraction) {\n this.vm.applyInlineFilter(e.value);\n }\n }\n\n protected subscribeActionEvents() {\n this.workflow.events$\n .pipe(ofType(AXPEntityDeletedEvent, AXPEntityCreateEvent))\n .pipe(takeUntil(this.destroyed))\n .subscribe((event) => {\n console.log(event);\n this.grid.refresh();\n });\n }\n\n ngAfterViewInit(): void {\n // this.grid.refresh();\n }\n\n protected dropdownRowItems = computed<AXRowCommandItem[]>(() => {\n return this.vm.secondaryRowActions().map(\n (c) =>\n ({\n icon: c.icon,\n name: c.name,\n text: c.title,\n color: c.color,\n } as AXRowCommandItem)\n );\n });\n\n protected commandRowItems = computed<AXRowCommandItem[]>(() => {\n return this.vm.primaryRowActions().map((c) => {\n return {\n icon: c.icon,\n name: c.name,\n text: c.title,\n color: c.color,\n } as AXRowCommandItem;\n });\n });\n\n protected handleRowDbClick(e: AXDataTableRowDbClick) {\n const item = this.dropdownRowItems()?.[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 getCommandRowItems = (): AXRowCommandItem[] => {\n return this.commandRowItems();\n };\n\n protected getDropdownRowItems = (rowData: unknown): Promise<AXRowCommandItem[]> => {\n return Promise.resolve(this.dropdownRowItems());\n };\n\n protected async handleSelectedRowsChange(rows: unknown[]) {\n this.vm.selectedItems.set(rows);\n }\n\n protected async handleRowCommandClick(e: AXRowCommandItemClickEvent) {\n this.vm.executeCommand(e.name, e.data);\n }\n\n protected destroy() {\n this.destroyed.next();\n this.destroyed.complete();\n }\n\n ngOnDestroy(): void {\n this.destroy();\n }\n}\n","<div class=\"ax-flex ax-p-2\">\n <div class=\"ax-flex ax-flex-col ax-items-end ax-gap-3 ax-flex-1 ax-overflow-auto ax-min-h-72\">\n <div class=\"ax-flex ax-justify-between ax-items-center ax-w-full\">\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 @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 (click)=\"vm.clearSelection()\"\n class=\"ax-text-sm ax-text-primary dark:ax-text-primary-300 ax-underline ax-cursor-pointer\">{{\n 't(\"unselect\", { scope: \"common\" })' | translate | async }}</span>\n </div>\n\n } @else { @if(vm.hasInlineFilters() && !store.isSmall()) {\n <div class=\"ax-w-72\">\n <ax-search-box\n [placeholder]=\"('widget.lookup.search' | translate | async) + vm.inlineFiltersPlaceholders().join(', ')\"\n (onValueChanged)=\"handleChangeSearchValue($event)\"><ax-clear-button></ax-clear-button></ax-search-box>\n </div>\n } }\n </div>\n </div>\n <div class=\"ax-flex ax-items-center ax-gap-3\">\n @for(tr of vm.primaryActions();track $index) {\n <ax-button [text]=\"(tr.title | translate | async)!\" [color]=\"tr.color\" (onClick)=\"vm.executeCommand(tr.name)\">\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=\"ghost\">\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 [text]=\"(tr.title | translate | async)!\" class=\"ax-font-semibold ax-text-{{ tr.color }}\"\n (onClick)=\"vm.executeCommand(tr.name)\">\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 </div>\n\n <ax-data-table #grid [showFooter]=\"false\" class=\"ax-flex-1\" [paging]=\"true\" [fetchDataMode]=\"'manual'\"\n [loading]=\"{ enabled: true, animation: true }\" [dataSource]=\"vm.dataSource\"\n (selectedRowsChange)=\"handleSelectedRowsChange($event)\" (onRowDbClick)=\"handleRowDbClick($event)\">\n <ax-select-column fixed=\"start\" [width]=\"'50px'\"></ax-select-column>\n @for(col of vm.columns();track col.name) { @if(col.visible) {\n <axp-widget-column-renderer [caption]=\"col.title | translate | async\"\n [node]=\"col.node()\"></axp-widget-column-renderer>\n } } @if(getCommandRowItems().length){\n\n <ax-command-column fixed=\"end\" [width]=\"getCommandRowItems().length * 60 + 'px'\" [items]=\"getCommandRowItems()\"\n (onItemClick)=\"handleRowCommandClick($event)\"></ax-command-column>\n\n } @if(dropdownRowItems().length){\n <ax-dropdown-command-column fixed=\"end\" [width]=\"'60px'\" [items]=\"getDropdownRowItems\"\n (onItemClick)=\"handleRowCommandClick($event)\"></ax-dropdown-command-column>\n }\n </ax-data-table>\n </div>\n</div>","import { AXTreeViewSchema } from '@acorex/components/tree-view/lib/tree-view.class';\nimport { AXPSettingDefinitionGroup } from '@acorex/platform/common';\n\n/**\n * Converts a list of AXPSettingDefinitionGroup into a tree structure of AXTreeViewSchema.\n * This function processes groups and their nested sub-groups, recursively creating a tree.\n *\n * @param groups - Array of top-level setting groups to be converted into tree view schema.\n * @param parentId - The parent ID for nested groups, passed down recursively. (Optional, default is undefined)\n *\n * @returns An array of AXTreeViewSchema representing the hierarchical structure of groups.\n */\nexport function convertToTreeViewSchema(\n groups: AXPSettingDefinitionGroup[],\n parentId?: string | number\n): AXTreeViewSchema[] {\n // Helper function to traverse and convert a single group (and its sub-groups)\n const traverseGroups = (group: AXPSettingDefinitionGroup, parent?: string | number): AXTreeViewSchema => {\n const currentId = group.name;\n\n // Schema for the current group\n const schema: AXTreeViewSchema = {\n id: currentId, // Unique identifier for the group (using group name)\n parentId: parent, // Parent group ID, passed down recursively\n text: group.title, // Display title of the group\n tooltip: group.description, // Optional description as tooltip\n hasChild: group.groups.length > 0, // Whether the group has child groups\n isExpanded: false, // Default state for expansion (optional)\n childrens: group.groups.length > 0 ? [] : undefined, // Child groups array (undefined if no children)\n };\n\n // Recursively process nested groups (sub-groups inside the current group)\n group.groups.forEach((subGroup) => {\n const childSchema = traverseGroups(subGroup, currentId); // Create schema for sub-group\n schema.childrens?.push(childSchema); // Add the child schema to the parent group's children\n });\n\n return schema; // Return the group schema with its children (if any)\n };\n\n // Initialize an array to hold the top-level groups' schemas\n const treeViewSchemas: AXTreeViewSchema[] = [];\n\n // Process each top-level group and convert it into tree view schema\n groups.forEach((group) => {\n treeViewSchemas.push(traverseGroups(group, parentId)); // Add the schema for each group\n });\n\n // Return the resulting hierarchical structure\n return treeViewSchemas;\n}\n\n/**\n * Converts nested groups into breadcrumb-like paths.\n * Each path represents the hierarchy of group names leading to a specific group.\n *\n * @param groups - The input array of AXPSettingDefinitionGroup.\n * @param basePath - The current path prefix (optional, default is an empty array).\n *\n * @returns An array of paths where each path is an array of strings representing the breadcrumb.\n */\n","import { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDrawerComponent, AXDrawerModule } from '@acorex/components/drawer';\nimport { AXTreeViewModule } from '@acorex/components/tree-view';\nimport { AXTreeItemClickBaseEvent, AXTreeViewSchema } from '@acorex/components/tree-view/lib/tree-view.class';\nimport { AXPSettingDefinitionItem, AXPSettingDefinitionProviderService } from '@acorex/platform/common';\nimport { CommonModule } from '@angular/common';\nimport {\n afterNextRender,\n ChangeDetectionStrategy,\n Component,\n computed,\n inject,\n OnInit,\n signal,\n viewChild,\n} from '@angular/core';\nimport { ActivatedRoute, Router, RouterOutlet } from '@angular/router';\nimport { convertToTreeViewSchema } from '../convert-setting-data';\n\n@Component({\n templateUrl: 'setting-menu.component.html',\n standalone: true,\n imports: [AXDrawerModule, CommonModule, RouterOutlet, AXDecoratorModule, AXTreeViewModule],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AXPSettingsMenuComponent implements OnInit {\n drawerComp = viewChild<AXDrawerComponent>('drawer');\n settingService = inject(AXPSettingDefinitionProviderService);\n activatedRoute = inject(ActivatedRoute);\n router = inject(Router);\n data = signal<AXPSettingDefinitionItem[]>([]);\n formattedData = computed<AXTreeViewSchema[]>(() => convertToTreeViewSchema(this.data()));\n\n constructor() {\n this.activatedRoute.params.subscribe((i) => {\n i?.['group']\n })\n afterNextRender(() => {\n this.drawerComp()?.open();\n });\n }\n async ngOnInit(): Promise<void> {\n await this.getData();\n }\n\n async getData() {\n this.data.set(await this.settingService.items());\n }\n\n onClick(item: AXTreeItemClickBaseEvent) {\n this.router.navigate([item.data?.['id']], { relativeTo: this.activatedRoute });\n }\n\n // private viewModel = inject(AXPSettingsViewModel);\n // protected dataSource = this.viewModel.dataSource;\n // @ViewChild('grid') grid!: AXDataTableComponent;\n // // عنوان صفحه تنظیمات\n // protected title = this.viewModel.title;\n // // مقدار جستجوی تنظیمات\n // protected searchValue = '';\n // constructor(private cdr: ChangeDetectorRef) {}\n // // هندل تغییرات جستجو\n // handleSearchValueChange(event: AXValueChangedEvent) {\n // if (event.isUserInteraction) {\n // this.viewModel.applySearch(event.value);\n // }\n // }\n // // انتخاب تنظیم یا گروه تنظیم\n // handleRowDbClick(rowData: any) {\n // this.viewModel.selectSetting(rowData);\n // }\n // // ذخیره تغییرات تنظیمات\n // saveSetting(settingKey: string, value: any) {\n // this.viewModel.saveSetting({ key: settingKey, value });\n // }\n}\n","<ax-drawer-container class=\"ax-min-w-96 ax-flex ax-items-center ax-h-[100vh-104px]\">\n <ax-drawer #drawer location=\"start\" mode=\"push\" [collapsed]=\"true\">\n <ax-content class=\"ax-flex ax-min-w-[300px] ax-flex-col ax-p-6 ax-border-r\">\n <p class=\"ax-text-xl ax-font-bold ax-pb-6\">Settings</p>\n @if(data()){\n <ax-tree-view\n (onNodeClick)=\"onClick($event)\"\n [hasChildField]=\"'hasChild'\"\n [selectable]=\"false\"\n [items]=\"formattedData()\"\n ></ax-tree-view>\n }\n </ax-content>\n </ax-drawer>\n\n <ax-content class=\"ax-bg-light-100 dark:ax-bg-dark-500 ax-flex ax-h-full ax-w-full ax-p-3 dark:ax-border-white/30\">\n <router-outlet></router-outlet>\n </ax-content>\n</ax-drawer-container>\n","import { AXBreadcrumbsModule } from '@acorex/components/breadcrumbs';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXToastService } from '@acorex/components/toast';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPGroupDetails, AXPSettingDefinitionProviderService, AXPStickyDirective } from '@acorex/platform/common';\nimport { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\nimport { AsyncPipe } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, effect, inject, signal } from '@angular/core';\nimport { ActivatedRoute, Router, RouterLink } from '@angular/router';\n\n@Component({\n templateUrl: 'setting-preview.component.html',\n standalone: true,\n imports: [\n AXPLayoutBuilderModule,\n AXDecoratorModule,\n AXBreadcrumbsModule,\n RouterLink,\n AXButtonModule,\n AXTranslationModule,\n AsyncPipe,\n AXPStickyDirective,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'ax-w-full',\n },\n})\nexport class AXPSettingsPreviewComponent {\n private readonly activatedRoute = inject(ActivatedRoute);\n private readonly router = inject(Router);\n private readonly toastService = inject(AXToastService);\n\n private readonly settingService = inject(AXPSettingDefinitionProviderService);\n\n protected data = signal<AXPGroupDetails | null>(null);\n protected context = signal<Record<any, any>>({});\n protected setContext(value: any) {\n this.context.set(value);\n }\n\n private isSaving = signal(false);\n private previousContext = signal({});\n protected canCancel = computed(() => this.isObjectEmpty(this.context()));\n protected canSave = computed(\n () =>\n !this.isSaving() &&\n !this.isObjectEmpty(this.context()) &&\n !this.areObjectsEqual(this.context(), this.previousContext())\n );\n\n fullRoute = this.router.url.split('/settings')[0] + '/settings/';\n eff = effect(() => console.log(this.context()));\n\n constructor() {\n debugger;\n this.activatedRoute.params.subscribe((i) => {\n const apiData = this.settingService.findGroupDetails(i?.['group']);\n // console.log(apiData);\n this.data.set(apiData);\n });\n }\n\n private isObjectEmpty(obj: object): boolean {\n // Check if the object has any own properties\n return Object.keys(obj).length === 0;\n }\n\n private areObjectsEqual<T>(obj1: T, obj2: T): boolean {\n // Check if both are not objects or are null, compare directly\n if (typeof obj1 !== 'object' || typeof obj2 !== 'object' || obj1 === null || obj2 === null) {\n return obj1 === obj2;\n }\n\n // Check if the keys' lengths match\n const keys1 = Object.keys(obj1);\n const keys2 = Object.keys(obj2);\n\n if (keys1.length !== keys2.length) {\n return false;\n }\n\n // Recursively compare each key and value\n for (const key of keys1) {\n const keyTyped = key as keyof T;\n if (!obj2.hasOwnProperty(key) || !this.areObjectsEqual(obj1[keyTyped], obj2[keyTyped])) {\n return false;\n }\n }\n\n return true;\n }\n\n protected onCancel(): void {\n this.context.set({});\n }\n\n protected onSave(): void {\n this.previousContext.set(this.context());\n //call api\n this.isSaving.set(true);\n this.toastService.show({\n color: 'success',\n title: `saved successfully`,\n location: 'bottom-center',\n closeButton: true,\n timeOut: 3000,\n timeOutProgress: false,\n });\n //simulate wait until api call is responded\n setTimeout(() => {\n this.isSaving.set(false);\n }, 500);\n }\n}\n","<div #content>\n <div\n class=\"ax-flex ax-flex-col ax-pt-4 ax-sticky ax-top-0 ax-z-10 ax-transition-all\"\n #sticky=\"axpSticky\"\n [axpSticky]=\"'ax-bg-surface ax-px-6 ax-py-3 ax-mx-6 ax-shadow-xl'\"\n [stickyOffset]=\"30\"\n [stickyParent]=\"content\"\n >\n <div class=\"ax-flex ax-justify-between ax-items-center\">\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-2xl ax-font-bold\">{{ data()?.breadcrumb?.[0]?.title }}</div>\n @if(false) {\n <div class=\"ax-text-sm ax-text-neutral-600\">description</div>\n }\n <ax-breadcrumbs class=\"child:ax-font-normal child:ax-text-neutral-400\">\n <ng-template #divider>\n <i class=\"fa-solid fa-chevron-right ax-text-xs ax-mx-2\"></i>\n </ng-template>\n <ax-breadcrumbs-item [active]=\"false\" [routerLink]=\"fullRoute\"> Home </ax-breadcrumbs-item>\n @for(b of data()?.breadcrumb;track $index;let last=$last) {\n <ax-breadcrumbs-item\n [active]=\"last\"\n [class.!ax-font-semibold]=\"last\"\n [class.!ax-text-neutral-600]=\"last\"\n [class.!dark:ax-text-neutral-200]=\"last\"\n [routerLink]=\"fullRoute + b.name\"\n >\n {{ b.title }}\n </ax-breadcrumbs-item>\n }\n </ax-breadcrumbs>\n </div>\n </div>\n </div>\n </div>\n <axp-widgets-container\n class=\"ax-flex ax-flex-col ax-gap-2 ax-p-4 ax-h-full ax-w-full\"\n [context]=\"context()\"\n (contextChange)=\"setContext($event)\"\n >\n <div class=\"ax-bg-surface ax-my-5 ax-border ax-rounded-xl\">\n @if(data()?.sections){ @for(i of data()?.sections; track i.name){\n <div class=\"ax-p-2 ax-w-full\">\n <div class=\"ax-py-4 ax-px-2\">\n <span class=\"ax-font-bold ax-text-xl\">{{ i.title }}</span>\n </div>\n @for(j of i.settings; track j.name){\n <div class=\"ax-p-2\">\n <p class=\"ax-text-sm ax-pb-1 ax-pl-1\">{{ j.title }}:</p>\n <div class=\"ax-max-w-[50%]\">\n <ng-container axp-widget-renderer [node]=\"j.widget\" [mode]=\"'edit'\"> </ng-container>\n </div>\n </div>\n }\n </div>\n }\n <div class=\"ax-w-full ax-gap-3 ax-p-4 ax-pt-6 ax-border-t ax-flex ax-justify-end ax-items-center\">\n <ax-button [disabled]=\"canCancel()\" (onClick)=\"onCancel()\" [text]=\"'cancel' | translate | async\"></ax-button>\n <ax-button\n [disabled]=\"!canSave()\"\n (onClick)=\"onSave()\"\n color=\"primary\"\n [text]=\"'save-changes' | translate | async\"\n ></ax-button>\n </div>\n }@else {\n <div class=\"ax-p-3\">\n @for(group of data()?.childGroups; track $index){\n <div class=\"ax-p-4\">\n <a [routerLink]=\"fullRoute + group.name\" class=\"ax-text-primary-600 ax-underline ax-font-bold ax-text-xl\">{{\n group.title\n }}</a>\n </div>\n }\n </div>\n }\n </div></axp-widgets-container\n >\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i5","i3","i4","i6.AXPRootLayoutFooterComponent","i7.AXPRootLayoutHeaderComponent","i8.AXPRootLayoutMenuComponent"],"mappings":"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"}
1
+ {"version":3,"file":"acorex-platform-themes-default.mjs","sources":["../../../../libs/platform/themes/default/src/lib/entity-reuse.strategy.ts","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/footer/footer.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/footer/footer.component.html","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/header/header.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/header/header.component.html","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/menu/root-menu.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/components/menu/root-menu.component.html","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/root-layout.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/root-layout.component.html","../../../../libs/platform/themes/default/src/lib/layouts/root-layout/root-layout.module.ts","../../../../libs/platform/themes/default/src/lib/layouts/setting-layout/setting-menu/setting-menu.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/setting-layout/setting-menu/setting-menu.component.html","../../../../libs/platform/themes/default/src/lib/layouts/setting-layout/setting-view/setting-view.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/setting-layout/setting-view/setting-view.component.html","../../../../libs/platform/themes/default/src/lib/default.module.ts","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.html","../../../../libs/platform/themes/default/src/acorex-platform-themes-default.ts"],"sourcesContent":["import { ActivatedRouteSnapshot, DetachedRouteHandle, RouteReuseStrategy } from '@angular/router';\n\nexport class AXPEntityReuseStrategy implements RouteReuseStrategy {\n shouldDetach(route: ActivatedRouteSnapshot): boolean {\n return false;\n }\n\n store(route: ActivatedRouteSnapshot, detachedTree: DetachedRouteHandle): void {}\n\n shouldAttach(route: ActivatedRouteSnapshot): boolean {\n return false;\n }\n\n retrieve(route: ActivatedRouteSnapshot): DetachedRouteHandle | null {\n return null;\n }\n\n shouldReuseRoute(future: ActivatedRouteSnapshot, curr: ActivatedRouteSnapshot): boolean {\n if (future.data && future.data['reuse'] === false) {\n return false;\n }\n return future.routeConfig === curr.routeConfig;\n }\n}\n","import { Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'axp-dashboard-admin-footer',\n templateUrl: './footer.component.html',\n encapsulation: ViewEncapsulation.None,\n providers: [],\n host: {\n class: 'ax-h-10 ax-flex ax-item-center ax-justify-between ax-bg-surface ax-px-6 ax-border-t',\n },\n})\nexport class AXPRootLayoutFooterComponent {\n}\n","<div class=\"ax-flex ax-items-center ax-justify-start ax-gap-1\">\n <axp-component-slot name=\"footer-start\"></axp-component-slot>\n</div>\n<div class=\"ax-flex ax-items-center ax-justify-end ax-gap-1\">\n <axp-component-slot name=\"footer-end\"></axp-component-slot>\n</div>","\nimport { AXPLayoutThemeService } from '@acorex/platform/themes/shared';\nimport { Component, ViewEncapsulation, inject } from '@angular/core';\nimport { Router } from '@angular/router';\n\n\n@Component({\n selector: 'axp-dashboard-admin-header',\n templateUrl: './header.component.html',\n styleUrls: ['./header.component.scss'],\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'ax-h-16 ax-flex ax-justify-between ax-px-4 md:ax-px-0 md:ax-pe-6 ax-py-4 ax-bg-surface ax-border-b',\n },\n})\nexport class AXPRootLayoutHeaderComponent {\n\n protected store = inject(AXPLayoutThemeService);\n private router = inject(Router);\n\n\n menuClick() {\n this.store.toggleSideMenu();\n }\n\n logoClick() {\n this.router.navigate(['/']);\n }\n}\n","<div class=\"ax-w-full ax-flex ax-justify-between\">\n <div class=\"ax-flex ax-items-center md:ax-hidden\">\n <i class=\"fa-solid fa-bars ax-text-lg ax-me-3\" (click)=\"menuClick()\"></i>\n </div>\n <div class=\"ax-flex ax-items-center\">\n <div\n class=\"ax-hidden md:ax-flex ax-items-center ax-justify-center ax-w-8 ax-h-8 ax-bg-on-surface ax-rounded ax-rounded-s-none ax-me-8 ax-cursor-pointer\"\n (click)=\"menuClick()\">\n <i class=\"fa-solid fa-chevrons-left ax-text-sm\" [ngClass]=\"{ 'ax-rotate-180': !store.isSideMenuOpen() }\"> </i>\n </div>\n <axp-component-slot name=\"header-start\"></axp-component-slot>\n </div>\n <div class=\"ax-flex ax-items-center ax-gap-1\">\n <axp-component-slot name=\"header-end\"></axp-component-slot>\n </div>\n</div>","import { Component, inject } from '@angular/core';\nimport { AXPMenuItem, AXPMenuService } from '@acorex/platform/common';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { filter } from 'rxjs';\nimport { sortBy } from 'lodash-es';\n\n@Component({\n selector: 'axp-root-menu',\n templateUrl: './root-menu.component.html',\n styleUrls: ['./root-menu.component.scss'],\n})\nexport class AXPRootLayoutMenuComponent {\n protected menuStore = inject(AXPMenuService);\n protected router = inject(Router);\n\n onMenuItemClick(item: AXPMenuItem): void {\n if (!item.children?.length) {\n this.menuStore.executeCommand(item);\n }\n }\n\n ngOnInit(): void {\n // Select the menu item based on the current route when the page loads\n this.menuStore.selectMenuItemByRoute(this.router.url);\n\n // Update the selected menu item whenever the route changes\n this.router.events.pipe(\n filter(event => event instanceof NavigationEnd)\n ).subscribe((event: NavigationEnd) => {\n this.menuStore.selectMenuItemByRoute(event.urlAfterRedirects);\n });\n }\n\n\n protected sort(items: AXPMenuItem[]): AXPMenuItem[] {\n return sortBy(items, [c => c.priority ?? 0, c => c.text]);\n }\n}","<ax-side-menu>\n <ng-container *ngFor=\"let item of sort(menuStore.items())\" [ngTemplateOutlet]=\"recursiveMenu\"\n [ngTemplateOutletContext]=\"{ item: item }\">\n </ng-container>\n</ax-side-menu>\n\n<ng-template #recursiveMenu let-item=\"item\">\n @if(item.type=='group') {\n <ax-title *permission=\"item.data?.requiredPermission\">{{ item.text | translate | async }}</ax-title>\n } @else {\n <ax-side-menu-item *permission=\"item.data?.requiredPermission\" (onClick)=\"onMenuItemClick( item)\"\n [active]=\"item ===menuStore.selectedMenuItem().item\" [isCollapsed]=\"!menuStore.isItemOpen(item)\">\n <ax-prefix>\n <ax-icon [class]=\"item.icon\"></ax-icon>\n </ax-prefix>\n {{ item.text | translate | async }}\n <ng-container *ngIf=\"item.children?.length\">\n <ng-container *ngFor=\"let child of sort(item.children)\" [ngTemplateOutlet]=\"recursiveMenu\"\n [ngTemplateOutletContext]=\"{ item: child }\">\n </ng-container>\n </ng-container>\n </ax-side-menu-item>\n }\n</ng-template>","import { AXDrawerComponent } from '@acorex/components/drawer';\nimport {\n AXP_PLATFORM_CONFIG_TOKEN,\n} from '@acorex/platform/common';\nimport { AXPLayoutThemeService } from '@acorex/platform/themes/shared';\nimport { Component, ViewChild, ViewEncapsulation, inject } from '@angular/core';\n\n\n@Component({\n templateUrl: './root-layout.component.html',\n encapsulation: ViewEncapsulation.None,\n})\nexport class AXPRootLayoutComponent {\n @ViewChild('drawer') drawer!: AXDrawerComponent;\n\n private config = inject(AXP_PLATFORM_CONFIG_TOKEN);\n\n\n protected store = inject(AXPLayoutThemeService);\n protected logo = this.config.logo;\n\n\n\n constructor() {\n }\n\n protected handleCollapsedChange(value: boolean) {\n if (value) {\n this.store.closeSideMenu();\n };\n }\n}\n","<ax-drawer-container>\n <ax-drawer #drawer location=\"start\" [collapsed]=\"!store.isSideMenuOpen()\"\n [mode]=\"store.isSmall() ? 'overlay' : 'push'\" (collapsedChange)=\"handleCollapsedChange($event)\">\n <ax-content\n class=\"ax-w-72 ax-h-full ax-flex ax-flex-col ax-bg-secondary-600 dark:ax-bg-surface ax-text-primary-fore ax-border-e ax-border-primary-700 dark:ax-border-default\">\n <header class=\"ax-px-7 ax-h-16 ax-flex ax-items-center ax-border-b ax-border-white/10\">\n <axp-logo [source]=\"logo?.light\"></axp-logo>\n </header>\n <nav class=\"ax-px-2 ax-py-4 ax-overflow-y-auto ax-flex-1 ax-h-full\">\n <axp-root-menu></axp-root-menu>\n </nav>\n </ax-content>\n </ax-drawer>\n <ax-content class=\"ax-flex ax-flex-col ax-relative\">\n @if(store.isNavigationLoading()) {\n <div class=\"axp-navigating-progress\">\n <div></div>\n </div>\n }\n <axp-dashboard-admin-header></axp-dashboard-admin-header>\n <div class=\"ax-flex-1 ax-overflow-auto ax-relative\" [axIsLoading]=\"store.isOverlayLoading()\">\n <router-outlet></router-outlet>\n </div>\n <axp-dashboard-admin-footer></axp-dashboard-admin-footer>\n </ax-content>\n</ax-drawer-container>","import { AXAvatarModule } from '@acorex/components/avatar';\nimport { AXBadgeModule } from '@acorex/components/badge';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDrawerModule } from '@acorex/components/drawer';\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { AXImageModule } from '@acorex/components/image';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { AXSideMenuModule } from '@acorex/components/side-menu';\nimport { AXTabsModule } from '@acorex/components/tabs';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPAuthModule } from '@acorex/platform/auth';\nimport { AXPComponentSlotModule, AXPLogoComponent } from '@acorex/platform/common';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { AXPRootLayoutFooterComponent } from './components/footer/footer.component';\nimport { AXPRootLayoutHeaderComponent } from './components/header/header.component';\nimport { AXPRootLayoutMenuComponent } from './components/menu/root-menu.component';\nimport { AXPRootLayoutComponent } from './root-layout.component';\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule,\n AXButtonModule,\n AXTranslationModule,\n AXDecoratorModule,\n AXDropdownModule,\n AXAvatarModule,\n AXImageModule,\n AXImageModule,\n AXPopoverModule,\n AXBadgeModule,\n AXTabsModule,\n AXDrawerModule,\n AXSideMenuModule,\n AXLoadingModule,\n AXPLogoComponent,\n AXPAuthModule,\n AXPComponentSlotModule,\n // AXMConversationModule\n ],\n exports: [],\n declarations: [\n AXPRootLayoutFooterComponent,\n AXPRootLayoutHeaderComponent,\n AXPRootLayoutComponent,\n AXPRootLayoutMenuComponent,\n ],\n providers: [],\n})\nexport class AXPAdminRootLayoutModule {}\n","import { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDrawerModule } from '@acorex/components/drawer';\nimport { AXTreeViewComponent, AXTreeViewModule } from '@acorex/components/tree-view';\nimport { AXPSettingsViewModel } from '@acorex/platform/layout/setting';\nimport { CommonModule } from '@angular/common';\nimport { afterNextRender, ChangeDetectionStrategy, Component, inject, viewChild } from '@angular/core';\nimport { ActivatedRoute, RouterOutlet } from '@angular/router';\n\n@Component({\n templateUrl: 'setting-menu.component.html',\n standalone: true,\n imports: [AXDrawerModule, CommonModule, RouterOutlet, AXDecoratorModule, AXTreeViewModule],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AXPSettingsMenuComponent {\n settings = inject(AXPSettingsViewModel);\n activatedRoute = inject(ActivatedRoute);\n tree = viewChild<AXTreeViewComponent>('tree');\n constructor() {\n afterNextRender(() => {\n this.settings.initializeService(this.activatedRoute);\n });\n }\n}\n","<ax-drawer-container class=\"ax-w-full md:ax-min-w-96 ax-flex ax-items-center ax-h-[100vh-104px]\">\n <ax-drawer\n #drawer\n location=\"start\"\n mode=\"push\"\n class=\"ax-w-full ax-max-w-full md:ax-w-auto\"\n [collapsed]=\"settings.isMobile() && !!settings.activatedGroup()\"\n >\n <ax-content class=\"ax-flex ax-min-w-[300px] ax-flex-col ax-p-6 ax-border-r\">\n <p class=\"ax-text-xl ax-font-bold ax-pb-6\">Settings</p>\n <ax-tree-view\n #tree\n (onNodeClick)=\"settings.onChooseGroup($event)\"\n [hasChildField]=\"'hasChild'\"\n [selectable]=\"false\"\n [items]=\"settings.formattedData()\"\n ></ax-tree-view>\n </ax-content>\n </ax-drawer>\n\n <ax-content [class.ax-hidden]=\"settings.isMobile() && !settings.activatedGroup()\">\n <router-outlet></router-outlet>\n </ax-content>\n</ax-drawer-container>\n","import { AXBreadcrumbsModule } from '@acorex/components/breadcrumbs';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXSearchBoxModule } from '@acorex/components/search-box';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPStickyDirective } from '@acorex/platform/common';\nimport { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\nimport { AXPSettingsViewModel } from '@acorex/platform/layout/setting';\nimport { AsyncPipe } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { RouterLink } from '@angular/router';\n\n@Component({\n templateUrl: 'setting-view.component.html',\n standalone: true,\n imports: [\n AXPLayoutBuilderModule,\n AXDecoratorModule,\n AXBreadcrumbsModule,\n RouterLink,\n AXButtonModule,\n AXTranslationModule,\n AsyncPipe,\n AXPStickyDirective,\n AXSearchBoxModule,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'ax-w-full',\n },\n})\nexport class AXPSettingsViewComponent {\n settings = inject(AXPSettingsViewModel);\n}\n","<div #content class=\"ax-overflow-auto ax-h-full\">\n <div\n class=\"ax-flex ax-flex-col ax-px-6 ax-pt-6 ax-sticky ax-top-0 ax-z-10 ax-transition-all\"\n #sticky=\"axpSticky\"\n [axpSticky]=\"'ax-bg-surface ax-py-3 ax-shadow-xl'\"\n [stickyOffset]=\"12\"\n [stickyParent]=\"content\"\n >\n <div class=\"ax-flex ax-justify-between ax-items-center ax-flex-wrap ax-gap-4 ax-pt-4 ax-overflow-x-auto\">\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=\"md:ax-block ax-flex ax-justify-start ax-items-center ax-gap-4\">\n <ax-button class=\"ax-block md:ax-hidden\" color=\"ghost\" [routerLink]=\"settings.fullRoute\">\n <ax-icon> <i class=\"fa-solid fa-chevron-left\"></i></ax-icon\n ></ax-button>\n <div class=\"ax-text-xl md:ax-text-2xl ax-font-bold\">\n {{ settings.dataDetails()?.breadcrumb?.[0]?.title }}\n </div>\n </div>\n @if(false) {\n <div class=\"ax-text-sm ax-text-neutral-600\">description</div>\n }\n <ax-breadcrumbs class=\"child:ax-font-normal child:ax-text-neutral-400 ax-flex-wrap ax-hidden md:ax-block\">\n <ng-template #divider>\n <i class=\"fa-solid fa-chevron-right ax-text-xs ax-mx-2\"></i>\n </ng-template>\n <ax-breadcrumbs-item [active]=\"false\" [routerLink]=\"settings.fullRoute\">\n <i class=\"ax-me-2 ax-text-xs fa-home fa-solid\"></i>Home</ax-breadcrumbs-item\n >\n @for(b of settings.dataDetails()?.breadcrumb;track $index;let last=$last) {\n <ax-breadcrumbs-item\n [active]=\"last\"\n [class.!ax-font-semibold]=\"last\"\n [class.!ax-text-neutral-600]=\"last\"\n [routerLink]=\"settings.fullRoute + b.name\"\n >\n {{ b.title }}\n </ax-breadcrumbs-item>\n }\n </ax-breadcrumbs>\n </div>\n </div>\n <div class=\"ax-pr-1 ax-w-full md:ax-w-96 md:ax-shrink\">\n <ax-search-box>\n <ax-clear-button></ax-clear-button>\n </ax-search-box>\n </div>\n </div>\n </div>\n\n <axp-widgets-container [context]=\"settings.context()\" (contextChange)=\"settings.setContext($event)\">\n <div class=\"ax-bg-surface ax-m-6 ax-px-4 ax-border ax-rounded-md\">\n @if(settings.dataDetails()?.sections){ @for(i of settings.dataDetails()?.sections; track i.name){\n <div class=\"ax-flex ax-py-4 ax-gap-2 ax-justify-start ax-items-center\">\n <p class=\"ax-font-bold ax-text-xl\">{{ i.title }}</p>\n <p class=\"ax-grow ax-h-[1px] ax-bg-neutral-200 ax-mt-1\"></p>\n </div>\n\n @for(j of i.settings; track j.name){\n <div class=\"ax-py-3 ax-w-2/3\">\n <p class=\"ax-font-medium ax-pb-1\">{{ j.title }}</p>\n <p class=\"ax-text-neutral-400\">{{ j.description }}</p>\n <ng-container axp-widget-renderer [node]=\"j.widget\" [mode]=\"'edit'\"> </ng-container>\n </div>\n } }\n <div class=\"ax-w-full ax-gap-3 ax-px-1 ax-pb-4 ax-pt-6 ax-flex ax-justify-end ax-items-center ax-flex-wrap\">\n <ax-button\n [disabled]=\"!settings.canCancel()\"\n (onClick)=\"settings.onCancelSettings()\"\n [text]=\"'cancel' | translate | async\"\n ></ax-button>\n <ax-button\n [disabled]=\"!settings.canSave()\"\n (onClick)=\"settings.onSaveSettings()\"\n color=\"primary\"\n [text]=\"'save-changes' | translate | async\"\n ></ax-button>\n </div>\n }@else {\n <div class=\"ax-p-3\">\n @for(group of settings.dataDetails()?.childGroups; track $index){\n <div class=\"ax-p-4\">\n <a\n [routerLink]=\"settings.fullRoute + group.name\"\n class=\"ax-text-primary-500 dark:ax-text-primary-200 ax-underline ax-font-bold ax-text-xl\"\n >{{ group.title }}</a\n >\n </div>\n }\n </div>\n }\n </div></axp-widgets-container\n >\n</div>\n","import { AXPCommonModule } from '@acorex/platform/common';\nimport { AXP_ENTITY_CONFIG_TOKEN, AXPEntityConfigs } from '@acorex/platform/layout/entity';\nimport { AXPThemesSharedModule } from '@acorex/platform/themes/shared';\nimport { inject, NgModule } from '@angular/core';\nimport { RouteReuseStrategy, Routes, ROUTES } from '@angular/router';\nimport { AXPEntityReuseStrategy } from './entity-reuse.strategy';\nimport { AXPRootLayoutComponent } from './layouts/root-layout';\nimport { AXPSettingsMenuComponent, AXPSettingsViewComponent } from './layouts/setting-layout';\n\nfunction routesFacory() {\n const config = inject(AXP_ENTITY_CONFIG_TOKEN);\n let routes: Routes = [\n {\n path: ':app/settings',\n component: config.viewers.root(),\n children: [\n {\n path: '',\n component: AXPSettingsMenuComponent,\n data: { reuse: true },\n children: [\n {\n path: ':group',\n component: AXPSettingsViewComponent,\n },\n ],\n },\n ],\n },\n\n {\n path: 'error',\n children: [\n {\n path: 'offline',\n loadComponent: () =>\n import('./pages/errors/error-offline/error-offline.component').then((c) => c.AXPErrorOfflineComponent),\n },\n {\n path: '404',\n loadComponent: () =>\n import('./pages/errors/error-404/error-404.component').then((c) => c.AXPError404Component),\n },\n {\n path: '401',\n loadComponent: () =>\n import('./pages/errors/error-401/error-401.component').then((c) => c.AXPError401Component),\n },\n ],\n },\n ];\n return routes;\n}\n\n@NgModule({\n imports: [\n // RouterModule.forChild(routes),\n AXPCommonModule,\n AXPThemesSharedModule,\n ],\n exports: [],\n declarations: [],\n providers: [\n {\n provide: AXP_ENTITY_CONFIG_TOKEN,\n useValue: {\n viewers: {\n root: () => AXPRootLayoutComponent,\n master: {\n single: () =>\n import('./layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component').then(\n (c) => c.AXPEntityMasterSingleViewComponent\n ),\n ///\n create: () =>\n import('./layouts/entity-layouts/entity-master-create-view/entity-master-create-view.component').then(\n (c) => c.AXPEntityMasterCreateViewComponent\n ),\n ///\n modify: () =>\n import('./layouts/entity-layouts/entity-master-modify-view/entity-master-modify-view.component').then(\n (c) => c.AXPEntityMasterModifyViewComponent\n ),\n //\n list: () =>\n import('./layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component').then(\n (c) => c.AXPEntityMasterListViewComponent\n ),\n },\n },\n } as AXPEntityConfigs,\n },\n { provide: RouteReuseStrategy, useClass: AXPEntityReuseStrategy },\n {\n provide: ROUTES,\n multi: true,\n useFactory: routesFacory,\n },\n ],\n})\nexport class AXPDefaultThemeModule { }\n","import { AXActionSheetModule, AXActionSheetService } from '@acorex/components/action-sheet';\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 {\n AXDataTableComponent,\n AXDataTableModule,\n AXDataTableRowDbClick,\n AXRowCommandItem,\n AXRowCommandItemClickEvent,\n} from '@acorex/components/data-table';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDialogModule } from '@acorex/components/dialog';\nimport { AXDrawerModule } from '@acorex/components/drawer';\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 } from '@acorex/core/translation';\nimport { AXUnsubscriber } from '@acorex/core/utils';\nimport { AXPAuthModule } from '@acorex/platform/auth';\nimport {\n AXPGridLayoutDirective,\n AXPStickyDirective,\n} from '@acorex/platform/common';\nimport { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';\nimport { AXPEntityDetailListViewModel } from '@acorex/platform/layout/entity';\nimport { AXPEntityCreateEvent, AXPEntityDeletedEvent } from '@acorex/platform/layouts';\nimport { AXPLayoutThemeService } from '@acorex/platform/themes/shared';\nimport { AXPWidgetsModule } from '@acorex/platform/widgets';\nimport { AXPWorkflowService, ofType } from '@acorex/platform/workflow';\nimport { CommonModule } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n Input,\n ViewChild,\n ViewEncapsulation,\n computed,\n effect,\n inject,\n} from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { RouterModule } from '@angular/router';\n\nimport { Subject, takeUntil } from 'rxjs';\n\n@Component({\n selector: 'axp-entity-detail-list-view',\n templateUrl: 'entity-detail-list-view.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [AXUnsubscriber],\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 //\n AXPLayoutBuilderModule,\n AXPWidgetsModule,\n AXPStickyDirective,\n AXPGridLayoutDirective,\n AXPAuthModule,\n AXTranslationModule,\n ],\n standalone: true,\n})\nexport class AXPEntityDetailListViewComponent {\n private workflow = inject(AXPWorkflowService);\n protected store = inject(AXPLayoutThemeService)\n\n @Input('viewModel')\n vm: AXPEntityDetailListViewModel;\n\n protected focusedRow: any;\n //\n @ViewChild('grid') grid!: AXDataTableComponent;\n\n constructor(\n private actionSheetService: AXActionSheetService,\n private unsubscriber: AXUnsubscriber,\n ) {\n effect(\n () => {\n this.grid.selectedRows = this.vm.selectedItems();\n },\n { allowSignalWrites: true }\n );\n this.subscribeActionEvents();\n }\n\n\n private readonly destroyed = new Subject<void>();\n\n handleChangeSearchValue(e: AXValueChangedEvent) {\n if (e.isUserInteraction) {\n this.vm.applyInlineFilter(e.value);\n }\n }\n\n protected subscribeActionEvents() {\n this.workflow.events$\n .pipe(ofType(AXPEntityDeletedEvent, AXPEntityCreateEvent))\n .pipe(takeUntil(this.destroyed))\n .subscribe((event) => {\n console.log(event);\n this.grid.refresh();\n });\n }\n\n ngAfterViewInit(): void {\n // this.grid.refresh();\n }\n\n protected dropdownRowItems = computed<AXRowCommandItem[]>(() => {\n return this.vm.secondaryRowActions().map(\n (c) =>\n ({\n icon: c.icon,\n name: c.name,\n text: c.title,\n color: c.color,\n } as AXRowCommandItem)\n );\n });\n\n protected commandRowItems = computed<AXRowCommandItem[]>(() => {\n return this.vm.primaryRowActions().map((c) => {\n return {\n icon: c.icon,\n name: c.name,\n text: c.title,\n color: c.color,\n } as AXRowCommandItem;\n });\n });\n\n protected handleRowDbClick(e: AXDataTableRowDbClick) {\n const item = this.dropdownRowItems()?.[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 getCommandRowItems = (): AXRowCommandItem[] => {\n return this.commandRowItems();\n };\n\n protected getDropdownRowItems = (rowData: unknown): Promise<AXRowCommandItem[]> => {\n return Promise.resolve(this.dropdownRowItems());\n };\n\n protected async handleSelectedRowsChange(rows: unknown[]) {\n this.vm.selectedItems.set(rows);\n }\n\n protected async handleRowCommandClick(e: AXRowCommandItemClickEvent) {\n this.vm.executeCommand(e.name, e.data);\n }\n\n protected destroy() {\n this.destroyed.next();\n this.destroyed.complete();\n }\n\n ngOnDestroy(): void {\n this.destroy();\n }\n}\n","<div class=\"ax-flex ax-p-2\">\n <div class=\"ax-flex ax-flex-col ax-items-end ax-gap-3 ax-flex-1 ax-overflow-auto ax-min-h-72\">\n <div class=\"ax-flex ax-justify-between ax-items-center ax-w-full\">\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 @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 dark:ax-text-primary-300 ax-underline ax-cursor-pointer\"\n >{{ 't(\"unselect\", { scope: \"common\" })' | translate | async }}</span\n >\n </div>\n\n } @else { @if(vm.hasInlineFilters() && !store.isSmall()) {\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 </div>\n </div>\n <div class=\"ax-flex ax-items-center ax-gap-3\">\n @for(tr of vm.primaryActions();track $index) {\n <ax-button [text]=\"(tr.title | translate | async)!\" [color]=\"tr.color\" (onClick)=\"vm.executeCommand(tr.name)\">\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=\"ghost\">\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 [text]=\"(tr.title | translate | async)!\"\n class=\"ax-font-semibold ax-text-{{ 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-item>\n </ng-container>\n }\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n }\n </div>\n </div>\n\n <ax-data-table\n #grid\n [showFooter]=\"false\"\n class=\"ax-flex-1\"\n [paging]=\"true\"\n [fetchDataMode]=\"'manual'\"\n [loading]=\"{ enabled: true, animation: true }\"\n [dataSource]=\"vm.dataSource\"\n (selectedRowsChange)=\"handleSelectedRowsChange($event)\"\n (onRowDbClick)=\"handleRowDbClick($event)\"\n >\n <ax-select-column fixed=\"start\" [width]=\"'50px'\"></ax-select-column>\n @for(col of vm.columns();track col.name) { @if(col.visible) {\n <axp-widget-column-renderer\n [caption]=\"col.title | translate | async\"\n [node]=\"col.node()\"\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 } @if(dropdownRowItems().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</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i3","i4","i5","i6.AXPRootLayoutFooterComponent","i7.AXPRootLayoutHeaderComponent","i8.AXPRootLayoutMenuComponent","i6","i10"],"mappings":"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"}
@@ -7970,7 +7970,7 @@ class AXPCronJobWidgetEditComponent extends AXPWidgetComponent {
7970
7970
  this.setValue(e.data);
7971
7971
  }
7972
7972
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPCronJobWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
7973
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: AXPCronJobWidgetEditComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `<ax-cron-job-container (onExpressionChange)="getExpressionHandler($event)"> </ax-cron-job-container>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXCronJobModule }, { kind: "component", type: i1$8.AXCronJobContainerComponent, selector: "ax-cron-job-container", outputs: ["onExpressionChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
7973
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: AXPCronJobWidgetEditComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `<ax-cron-job-container (onExpressionChange)="getExpressionHandler($event)"> </ax-cron-job-container>`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXCronJobModule }, { kind: "component", type: i1$8.AXCronJobContainerComponent, selector: "ax-cron-job-container", outputs: ["onValueChanged"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
7974
7974
  }
7975
7975
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPCronJobWidgetEditComponent, decorators: [{
7976
7976
  type: Component,
@@ -8070,9 +8070,10 @@ var cronJobWidgetDesigner_component = /*#__PURE__*/Object.freeze({
8070
8070
  const AXPCronJobWidget = {
8071
8071
  name: 'cron-job',
8072
8072
  title: 'Cron Job',
8073
- icon: 'fa-solid fa-square',
8073
+ icon: 'fa-solid fa-alarm-clock',
8074
8074
  group: AXP_WIDGETS_ADVANCE_GROUP,
8075
8075
  type: 'editor',
8076
+ visible: false,
8076
8077
  properties: [AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DISABLED_PROPERTY],
8077
8078
  components: {
8078
8079
  view: {