@acorex/platform 21.0.0-next.75 → 21.0.0-next.76

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 (40) hide show
  1. package/fesm2022/{acorex-platform-common-common-settings.provider-Ytey9uhY.mjs → acorex-platform-common-common-settings.provider-ChoT4m4k.mjs} +42 -1
  2. package/fesm2022/acorex-platform-common-common-settings.provider-ChoT4m4k.mjs.map +1 -0
  3. package/fesm2022/acorex-platform-common.mjs +1471 -606
  4. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  5. package/fesm2022/acorex-platform-contracts.mjs +1330 -1
  6. package/fesm2022/acorex-platform-contracts.mjs.map +1 -1
  7. package/fesm2022/acorex-platform-core.mjs +208 -5
  8. package/fesm2022/acorex-platform-core.mjs.map +1 -1
  9. package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
  10. package/fesm2022/acorex-platform-layout-entity.mjs +595 -439
  11. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  12. package/fesm2022/acorex-platform-layout-views.mjs +372 -171
  13. package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
  14. package/fesm2022/acorex-platform-layout-widget-core.mjs +3 -103
  15. package/fesm2022/acorex-platform-layout-widget-core.mjs.map +1 -1
  16. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-CFyfix31.mjs +513 -0
  17. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-CFyfix31.mjs.map +1 -0
  18. package/fesm2022/acorex-platform-layout-widgets.mjs +11 -6
  19. package/fesm2022/acorex-platform-layout-widgets.mjs.map +1 -1
  20. package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-Br9p5aXT.mjs → acorex-platform-themes-default-entity-master-single-view.component-DrUwqKKA.mjs} +2 -3
  21. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-DrUwqKKA.mjs.map +1 -0
  22. package/fesm2022/acorex-platform-themes-default.mjs +643 -52
  23. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  24. package/fesm2022/acorex-platform-workflow.mjs +5 -8
  25. package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
  26. package/package.json +1 -1
  27. package/types/acorex-platform-common.d.ts +337 -1056
  28. package/types/acorex-platform-contracts.d.ts +1679 -4
  29. package/types/acorex-platform-core.d.ts +92 -181
  30. package/types/acorex-platform-layout-components.d.ts +2 -1
  31. package/types/acorex-platform-layout-entity.d.ts +68 -176
  32. package/types/acorex-platform-layout-views.d.ts +39 -5
  33. package/types/acorex-platform-layout-widget-core.d.ts +2 -3
  34. package/types/acorex-platform-layout-widgets.d.ts +11 -4
  35. package/types/acorex-platform-themes-default.d.ts +120 -57
  36. package/types/acorex-platform-workflow.d.ts +5 -18
  37. package/fesm2022/acorex-platform-common-common-settings.provider-Ytey9uhY.mjs.map +0 -1
  38. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-J0zcGKBX.mjs +0 -116
  39. package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-J0zcGKBX.mjs.map +0 -1
  40. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-Br9p5aXT.mjs.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-platform-layout-widgets-repeater-widget-column.component-J0zcGKBX.mjs","sources":["../../../../libs/platform/layout/widgets/src/lib/widgets/layout/repeater/repeater-widget-column.component.ts","../../../../libs/platform/layout/widgets/src/lib/widgets/layout/repeater/repeater-widget-column.component.html"],"sourcesContent":["import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXPColumnWidgetComponent, AXPWidgetNode, AXPWidgetCoreModule, AXPWidgetCoreService } from '@acorex/platform/layout/widget-core';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXPopoverComponent, AXPopoverModule } from '@acorex/components/popover';\nimport { ChangeDetectionStrategy, Component, computed, ElementRef, signal, viewChild } from '@angular/core';\n\nimport { isNil } from 'lodash-es';\nimport { AXPContextStore } from '@acorex/platform/core';\n\n@Component({\n selector: 'axp-repeater-widget-column',\n templateUrl: './repeater-widget-column.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AXBadgeModule, AXButtonModule, AXPopoverModule, AXPWidgetCoreModule],\n providers: [AXPWidgetCoreService, AXPContextStore],\n inputs: ['rawValue', 'rowData'],\n})\nexport class AXPRepeaterWidgetColumnComponent extends AXPColumnWidgetComponent<any[]> {\n //#region ---- View Children ----\n\n protected moreButton = viewChild<ElementRef>('moreButton');\n protected morePopover = viewChild<AXPopoverComponent>('morePopover');\n\n //#endregion\n\n //#region ---- Properties ----\n\n protected maxVisible: number = this.options['maxVisible'] ?? 2;\n protected childWidgetNode: AXPWidgetNode | undefined = this.options['children']?.[0];\n\n //#endregion\n\n //#region ---- Signals ----\n\n protected isMorePopoverOpen = signal(false);\n\n //#endregion\n\n //#region ---- Node Cache ----\n\n // Cache nodes by index to prevent recreation on every change detection\n private nodeCache = new Map<number, AXPWidgetNode>();\n private lastItems: any[] = [];\n\n // Clear cache when items change\n private clearCacheIfNeeded(): void {\n const currentItems = this.allItems();\n if (currentItems.length !== this.lastItems.length ||\n currentItems.some((item, idx) => item !== this.lastItems[idx])) {\n this.nodeCache.clear();\n this.lastItems = [...currentItems];\n }\n }\n\n //#endregion\n\n //#region ---- Computed Properties ----\n\n protected displayItems = computed(() => {\n if (isNil(this.rawValue)) {\n return [];\n }\n const items = Array.isArray(this.rawValue) ? this.rawValue : [this.rawValue];\n return items.filter((item) => item != null);\n });\n\n protected allItems = computed(() => this.displayItems());\n\n protected visibleItems = computed(() => {\n const items = this.allItems();\n return items.slice(0, this.maxVisible);\n });\n\n protected hasMoreItems = computed(() => {\n return this.allItems().length > this.maxVisible;\n });\n\n protected remainingItemsCount = computed(() => {\n return this.allItems().length - this.maxVisible;\n });\n\n //#endregion\n\n //#region ---- Public Methods ----\n\n protected showMoreItems(): void {\n this.openMorePopover();\n }\n\n protected onMorePopoverOpenChange(event: any): void {\n this.isMorePopoverOpen.set(event);\n }\n\n protected getItemNode(item: any, index: number): AXPWidgetNode | undefined {\n if (!this.childWidgetNode) {\n return undefined;\n }\n\n // Clear cache if items changed\n this.clearCacheIfNeeded();\n\n // Return cached node if exists\n const cachedNode = this.nodeCache.get(index);\n if (cachedNode) {\n return cachedNode;\n }\n\n const child = this.childWidgetNode;\n const childBindingRaw = child.path ?? child.name;\n const childBinding =\n childBindingRaw != null && String(childBindingRaw).trim() !== '' ? String(childBindingRaw).trim() : '';\n const baseItemPath = `${this.path}[${index}]`;\n const itemPath = childBinding ? `${baseItemPath}.${childBinding}` : baseItemPath;\n\n // Create new node and cache it\n const node: AXPWidgetNode = {\n ...child,\n path: itemPath,\n defaultValue: item,\n options: {\n ...child.options,\n rawValue: item,\n rowData: this.rowData,\n },\n };\n\n this.nodeCache.set(index, node);\n return node;\n }\n\n //#endregion\n\n //#region ---- Private Methods ----\n\n private openMorePopover(): void {\n if (this.morePopover() && this.moreButton()) {\n this.morePopover()!.target = this.moreButton()!.nativeElement;\n this.morePopover()!.open();\n this.isMorePopoverOpen.set(true);\n }\n }\n\n //#endregion\n}\n\n","<div class=\"ax-flex ax-gap-1 ax-items-center \">\n\n @for (item of visibleItems(); track $index) {\n @if (childWidgetNode) {\n <ng-container axp-widget-renderer [node]=\"getItemNode(item, $index)!\" [mode]=\"'view'\" [parentNode]=\"null\"\n [index]=\"$index\"></ng-container>\n }\n }@empty {\n <span class=\"ax-text-muted\">---</span>\n }\n\n\n @if (hasMoreItems()) {\n <span\n class=\"ax-absolute ax-flex ax-items-center ax-end-0 ax-px-1 ax-cursor-pointer ax-h-full hover:ax-primary-lighter\"\n (click)=\"showMoreItems()\" #moreButton>\n <i class=\"fa-light fa-ellipsis-vertical\"></i>\n </span>\n }\n</div>\n\n<!-- More Items Popover -->\n<ax-popover [openOn]=\"'manual'\" #morePopover (openChange)=\"onMorePopoverOpenChange($event)\">\n <div class=\"ax-lightest-surface ax-border ax-rounded-lg ax-shadow-lg ax-p-4 ax-min-w-[280px]\">\n <div class=\"ax-mb-4 ax-border-b ax-pb-2\">\n <h3 class=\"ax-text-base ax-font-semibold\">All {{ allItems().length }} Items</h3>\n </div>\n <div class=\"ax-max-h-64 ax-flex ax-flex-col ax-gap-3 ax-overflow-auto\" style=\"max-height: max(30dvh,10rem)\">\n @for (item of allItems(); track $index) {\n <div>\n @if (childWidgetNode) {\n <ng-container axp-widget-renderer [node]=\"getItemNode(item, $index)!\" [mode]=\"'view'\"\n [parentNode]=\"null\" [index]=\"$index\"></ng-container>\n }\n </div>\n }\n </div>\n </div>\n</ax-popover>"],"names":["i2"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-platform-themes-default-entity-master-single-view.component-Br9p5aXT.mjs","sources":["../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-single-view/overview/entity-single-overview.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-single-view/overview/entity-single-overview.component.html","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.html"],"sourcesContent":["import { AXActionSheetModule } from '@acorex/components/action-sheet';\nimport { AXBreadcrumbsModule } from '@acorex/components/breadcrumbs';\nimport { AXButtonModule } from '@acorex/components/button';\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 { AXTabsModule, AXTabStripChangedEvent } from '@acorex/components/tabs';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPWidgetCoreModule, AXPWidgetContainerComponent } from '@acorex/platform/layout/widget-core';\nimport { AXPEntityMasterSingleViewModel } from '@acorex/platform/layout/entity';\nimport { AXPWidgetsModule } from '@acorex/platform/layout/widgets';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, effect, inject, signal, viewChild } from '@angular/core';\nimport { ActivatedRoute, RouterModule } from '@angular/router';\nimport { AXPEntityDetailListViewComponent } from '../../entity-detail-list-view/entity-detail-list-view.component';\nimport { AXPGridLayoutDirective } from '@acorex/platform/core';\n\n@Component({\n templateUrl: './entity-single-overview.component.html',\n selector: 'axp-entity-single-overview',\n imports: [\n CommonModule,\n RouterModule,\n AXDecoratorModule,\n AXDropdownModule,\n AXPopoverModule,\n AXFormModule,\n AXActionSheetModule,\n AXDrawerModule,\n AXDialogModule,\n AXLoadingModule,\n AXTabsModule,\n AXButtonModule,\n AXBreadcrumbsModule,\n //\n AXPWidgetCoreModule,\n AXPWidgetsModule,\n AXPGridLayoutDirective,\n AXPEntityDetailListViewComponent,\n //\n AXTranslationModule,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AXPEntitySingleOverviewComponent {\n private activeRoute = inject(ActivatedRoute);\n protected readonly vm = this.activeRoute.snapshot.data['vm'] as AXPEntityMasterSingleViewModel;\n\n private widgetContainer = viewChild(AXPWidgetContainerComponent);\n\n protected selectedRelatedIEntityTabIndex = signal(0);\n\n handleActiveRelatedEntityChanged(e: AXTabStripChangedEvent) {\n this.selectedRelatedIEntityTabIndex.set(e.index);\n }\n\n #refresh = effect(() => {\n if (this.vm.updateTrigger()) {\n this.widgetContainer()?.refresh();\n }\n });\n}\n","<div class=\"ax-grid ax-grid-cols-12 ax-gap-4\">\n <axp-widgets-container [context]=\"vm.context()\">\n @for (section of vm.sections(); track section.name()) {\n <div class=\"ax-card ax-mt-2\" [axp-grid-layout]=\"section.layout()\">\n <ax-form #form>\n <div class=\"ax-card-header !ax-py-2 !ax-px-4\">\n <p>\n <span class=\"!ax-text-lg ax-font-semibold\">{{ section.title() | translate | async }}</span>\n <br />\n @if (section.description()) {\n <span class=\"ax-text-sm ax-font-normal ax-opacity-75\">{{ section.description() }}</span>\n }\n </p>\n @if (section.editable()) {\n <ax-button\n class=\"ax-xs\"\n [color]=\"'default'\"\n [look]=\"'blank'\"\n (onClick)=\"vm.executeCommand('modify-entity-section', section)\"\n >\n <ax-icon class=\"fa-solid fa-pen ax-text-gray-600\"> </ax-icon>\n </ax-button>\n }\n </div>\n <div class=\"ax-card-body !ax-grid !ax-grid-cols-12 !ax-gap-4\">\n @for (attr of section.props(); track $index) {\n <div\n class=\"ax-flex ax-flex-col ax-gap-1\"\n [axp-grid-layout]=\"attr.layout()\"\n [class.ax-hidden]=\"widget.options()['visibility'] == false\"\n >\n <div>\n @if (attr.showLabel()) {\n <div class=\"ax-font-semibold ax-mb-1\">\n <span>{{ attr.title() | translate | async }}</span>\n </div>\n }\n </div>\n <div>\n <ng-container\n axp-widget-renderer\n [node]=\"attr.node()\"\n [mode]=\"'view'\"\n #widget=\"widgetRenderer\"\n ></ng-container>\n </div>\n @if (attr.description()) {\n <p class=\"ax-text-sm ax-mt-1 ax-font-normal ax-opacity-75\">\n {{ attr.description() | translate | async }}\n </p>\n }\n </div>\n }\n </div>\n </ax-form>\n </div>\n }\n </axp-widgets-container>\n</div>\n\n@if ((vm.relatedEntities() | async)?.length) {\n <ax-tabs\n [look]=\"'classic'\"\n class=\"ax-mt-4 ax-font-semibold\"\n #tab\n (onActiveTabChanged)=\"handleActiveRelatedEntityChanged($event)\"\n >\n @for (e of vm.relatedEntities() | async; track $index; let index = $index) {\n <ax-tab-item [text]=\"(e.title() | translate | async)!\" [key]=\"index.toString()\"> </ax-tab-item>\n }\n </ax-tabs>\n @for (e of vm.relatedEntities() | async; track $index; let index = $index) {\n <div [class.ax-hidden]=\"$index != selectedRelatedIEntityTabIndex()\">\n <axp-entity-detail-list-view [viewModel]=\"e\"></axp-entity-detail-list-view>\n </div>\n }\n}\n","import { AXActionSheetModule } from '@acorex/components/action-sheet';\nimport { AXBreadcrumbsModule } from '@acorex/components/breadcrumbs';\nimport { AXButtonModule } from '@acorex/components/button';\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 { AXTabsModule, AXTabStripChangedEvent } from '@acorex/components/tabs';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPAuthModule } from '@acorex/platform/auth';\nimport { AXPRefreshEvent, AXPReloadEvent } from '@acorex/platform/common';\nimport {\n AXPActionMenuItem,\n AXPBackButton,\n AXPBreadcrumbItem,\n AXPContextStore,\n AXPExecuteCommand,\n} from '@acorex/platform/core';\nimport { AXPWidgetCoreModule } from '@acorex/platform/layout/widget-core';\nimport { AXPComponentSlotModule } from '@acorex/platform/core';\nimport { AXPThemeLayoutBlockComponent } from '@acorex/platform/layout/components';\nimport { AXPEntityMasterSingleViewModel, AXPEntityService } from '@acorex/platform/layout/entity';\nimport { AXPPageLayoutBase, AXPPageLayoutBaseComponent, AXPPageLayoutComponent } from '@acorex/platform/layout/views';\nimport { AXPLayoutThemeService } from '@acorex/platform/themes/shared';\nimport { AXPWidgetsModule } from '@acorex/platform/layout/widgets';\nimport { AXPWorkflowEventService, AXPWorkflowService, ofType } from '@acorex/platform/workflow';\n\nimport { ChangeDetectionStrategy, Component, effect, inject, signal, untracked } from '@angular/core';\nimport { ActivatedRoute, Router, RouterModule } from '@angular/router';\nimport { Subject, takeUntil } from 'rxjs';\nimport { AXPEntitySingleOverviewComponent } from './overview/entity-single-overview.component';\n\n@Component({\n templateUrl: './entity-master-single-view.component.html',\n imports: [\n RouterModule,\n AXDecoratorModule,\n AXDropdownModule,\n AXPopoverModule,\n AXFormModule,\n AXActionSheetModule,\n AXPAuthModule,\n AXTranslationModule,\n AXDrawerModule,\n AXDialogModule,\n AXLoadingModule,\n AXTabsModule,\n AXButtonModule,\n AXBreadcrumbsModule,\n AXPWidgetCoreModule,\n AXPWidgetsModule,\n AXPEntitySingleOverviewComponent,\n AXPPageLayoutComponent,\n AXPThemeLayoutBlockComponent,\n AXPComponentSlotModule\n],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: AXPPageLayoutBase,\n useExisting: AXPEntityMasterSingleViewComponent,\n },\n ],\n})\nexport class AXPEntityMasterSingleViewComponent extends AXPPageLayoutBaseComponent {\n private activeRoute = inject(ActivatedRoute);\n private router = inject(Router);\n protected readonly vm = this.activeRoute.snapshot.data['vm'] as AXPEntityMasterSingleViewModel;\n protected store = inject(AXPLayoutThemeService);\n protected contextStore = inject(AXPContextStore);\n protected eventService = inject(AXPWorkflowEventService);\n protected workflow = inject(AXPWorkflowService);\n protected entityService = inject(AXPEntityService);\n\n private readonly destroyed = new Subject<void>();\n\n override async ngOnInit(): Promise<void> {\n await super.ngOnInit();\n this.workflow.events$\n .pipe(ofType(AXPReloadEvent))\n .pipe(takeUntil(this.destroyed))\n .subscribe(async (event) => {\n if (event.payload.entity == `${this.vm.entityDef.module}.${this.vm.entityDef.name}`) {\n const fn = this.vm.entityDef.queries?.byKey?.execute as Function;\n if (fn) {\n const data = await fn(this.vm.context().id);\n this.vm.context.set(data);\n }\n if (this.vm.entityDef.relatedEntities?.length) {\n for (const relatedEntity of this.vm.entityDef.relatedEntities) {\n this.eventService.dispatch(\n AXPRefreshEvent({ entity: relatedEntity.entity })\n )\n }\n }\n }\n });\n }\n\n #syncContext = effect(() => {\n // TODO: this is a hack to sync the context with the vm\n untracked(() => {\n this.contextStore.patch({\n entity: this.vm.context(),\n });\n });\n });\n\n\n\n override getPageTitle(): string {\n return this.vm.title();\n }\n\n override getPageDescription(): string {\n return this.vm.description() ?? '';\n }\n\n override getPageBreadcrumbs(): AXPBreadcrumbItem[] {\n return this.vm.beardcrumbs();\n }\n\n override getPrimaryMenuItems(): Promise<AXPActionMenuItem[]> {\n return Promise.all(\n this.vm.primaryActions().map(async (tr) => {\n const hidden = await this.vm.evaluateExpressions(tr.hidden as any, this.vm.context());\n if (hidden) return null;\n const disabled = await this.vm.evaluateExpressions(tr.disabled as any, this.vm.context());\n\n return {\n name: tr.name,\n title: tr.title,\n icon: tr.icon,\n color: tr.color,\n disabled,\n command: {\n name: tr.name,\n options: tr.options,\n metadata: tr.metadata,\n },\n };\n }),\n ).then((items) => items.filter(Boolean) as AXPActionMenuItem[]);\n }\n\n override getSecondaryMenuItems(): Promise<AXPActionMenuItem[]> {\n return Promise.all(\n this.vm.secondaryActions().map(async (tr) => {\n const hidden = await this.vm.evaluateExpressions(tr.hidden as any, this.vm.context());\n if (hidden) return null;\n const disabled = await this.vm.evaluateExpressions(tr.disabled as any, this.vm.context());\n\n return {\n name: tr.name,\n title: tr.title,\n icon: tr.icon,\n color: tr.color,\n disabled,\n separated: tr.separated,\n command: {\n name: tr.name,\n options: tr.options,\n metadata: tr.metadata,\n },\n };\n }),\n ).then((items) => items.filter(Boolean) as AXPActionMenuItem[]);\n }\n\n override execute(command: AXPExecuteCommand): void {\n if (command) {\n this.vm.execute(command);\n }\n }\n override async getBackButton(): Promise<AXPBackButton | null> {\n return {\n title: await this.translateService.translateAsync(this.vm.title()),\n };\n }\n override onBackButtonClick(): void {\n this.vm.navigateToUp();\n }\n\n ngOnDestroy(): void {\n this.vm.destroy();\n this.destroyed.next();\n this.destroyed.complete();\n }\n}\n","<axp-page-layout *translate=\"let t\">\n <axp-page-content>\n <axp-component-slot name=\"entity-detail-header\"></axp-component-slot>\n <axp-entity-single-overview></axp-entity-single-overview>\n <axp-component-slot name=\"entity-detail-footer\"></axp-component-slot>\n </axp-page-content>\n</axp-page-layout>"],"names":["i1","i2","i5","i6","i7"],"mappings":"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"}