@acorex-platform/module-report-management-client 0.0.56 → 0.0.58
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/{acorex-platform-module-report-management-client-acorex-platform-module-report-management-client-DhTbq8K0.mjs → acorex-platform-module-report-management-client-acorex-platform-module-report-management-client-eSjEqt5D.mjs} +22 -18
- package/fesm2022/{acorex-platform-module-report-management-client-acorex-platform-module-report-management-client-DhTbq8K0.mjs.map → acorex-platform-module-report-management-client-acorex-platform-module-report-management-client-eSjEqt5D.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-report-management-client-entity-reports-page-component.provider-DaX9owYf.mjs → acorex-platform-module-report-management-client-entity-reports-page-component.provider-CaxletoS.mjs} +3 -3
- package/fesm2022/{acorex-platform-module-report-management-client-entity-reports-page-component.provider-DaX9owYf.mjs.map → acorex-platform-module-report-management-client-entity-reports-page-component.provider-CaxletoS.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-report-management-client-entity-reports-page.component-1pkBoTlX.mjs → acorex-platform-module-report-management-client-entity-reports-page.component-CK5bCQhm.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-report-management-client-entity-reports-page.component-1pkBoTlX.mjs.map → acorex-platform-module-report-management-client-entity-reports-page.component-CK5bCQhm.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-report-management-client-report-layout-switcher.util-GNdaXlQx.mjs → acorex-platform-module-report-management-client-report-layout-switcher.util-C3OVIaEz.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-report-management-client-report-layout-switcher.util-GNdaXlQx.mjs.map → acorex-platform-module-report-management-client-report-layout-switcher.util-C3OVIaEz.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-report-management-client-report-popup-viewer.component-Bjb6ECKz.mjs → acorex-platform-module-report-management-client-report-popup-viewer.component-CKE8NG5T.mjs} +3 -3
- package/fesm2022/{acorex-platform-module-report-management-client-report-popup-viewer.component-Bjb6ECKz.mjs.map → acorex-platform-module-report-management-client-report-popup-viewer.component-CKE8NG5T.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-report-management-client-report-viewer-page.component-uKCoRWfX.mjs → acorex-platform-module-report-management-client-report-viewer-page.component-CPlbhBa_.mjs} +3 -3
- package/fesm2022/{acorex-platform-module-report-management-client-report-viewer-page.component-uKCoRWfX.mjs.map → acorex-platform-module-report-management-client-report-viewer-page.component-CPlbhBa_.mjs.map} +1 -1
- package/fesm2022/acorex-platform-module-report-management-client.mjs +1 -1
- package/package.json +1 -1
- package/types/acorex-platform-module-report-management-client.d.ts +1 -0
|
@@ -13,7 +13,7 @@ import { AsyncPipe } from '@angular/common';
|
|
|
13
13
|
import * as i0 from '@angular/core';
|
|
14
14
|
import { input, inject, signal, computed, effect, untracked, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
15
15
|
import { ActivatedRoute } from '@angular/router';
|
|
16
|
-
import { A as AXPReportViewerService, h as bindingShowsOnPage, O as OPEN_REPORT_IN_POPUP_COMMAND, i as buildOpenInPopupCommandOptions, j as resolveBindingTitle, k as resolveBindingDescription } from './acorex-platform-module-report-management-client-acorex-platform-module-report-management-client-
|
|
16
|
+
import { A as AXPReportViewerService, h as bindingShowsOnPage, O as OPEN_REPORT_IN_POPUP_COMMAND, i as buildOpenInPopupCommandOptions, j as resolveBindingTitle, k as resolveBindingDescription } from './acorex-platform-module-report-management-client-acorex-platform-module-report-management-client-eSjEqt5D.mjs';
|
|
17
17
|
|
|
18
18
|
//#region ----- Persisted entity id -----
|
|
19
19
|
/**
|
|
@@ -163,4 +163,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
|
|
|
163
163
|
}], ctorParameters: () => [], propDecorators: { rootContext: [{ type: i0.Input, args: [{ isSignal: true, alias: "rootContext", required: false }] }], pageConfig: [{ type: i0.Input, args: [{ isSignal: true, alias: "pageConfig", required: false }] }], options: [{ type: i0.Input, args: [{ isSignal: true, alias: "options", required: false }] }] } });
|
|
164
164
|
|
|
165
165
|
export { AXMEntityReportsPageComponent };
|
|
166
|
-
//# sourceMappingURL=acorex-platform-module-report-management-client-entity-reports-page.component-
|
|
166
|
+
//# sourceMappingURL=acorex-platform-module-report-management-client-entity-reports-page.component-CK5bCQhm.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-platform-module-report-management-client-entity-reports-page.component-1pkBoTlX.mjs","sources":["../../../../libs/modules/report-management/client/src/lib/features/entity-reports/resolve-entity-record-id.util.ts","../../../../libs/modules/report-management/client/src/lib/features/entity-reports/entity-reports-page.component.ts","../../../../libs/modules/report-management/client/src/lib/features/entity-reports/entity-reports-page.component.html"],"sourcesContent":["//#region ----- Persisted entity id -----\n\n/**\n * Resolves the persisted record id from entity detail page root context.\n */\nexport function resolvePersistedEntityId(\n ctx: Record<string, unknown> | null | undefined,\n): string | undefined {\n if (!ctx) {\n return undefined;\n }\n const raw = ctx['id'] ?? ctx['_id'];\n if (typeof raw === 'string' && raw.length > 0) {\n return raw;\n }\n if (typeof raw === 'number' && !Number.isNaN(raw)) {\n return String(raw);\n }\n return undefined;\n}\n\n//#endregion\n","//#region ----- Imports -----\n\nimport { AXPPageLayoutBase, AXPPageLayoutBaseComponent } from '@acorex-platform/framework-client/layout/views';\nimport { AXPStateMessageComponent } from '@acorex-platform/framework-client/layout/components';\nimport { AXPCommandService } from '@acorex-platform/framework-client/runtime';\nimport type { AXPMultiLanguageString } from '@acorex-platform/framework-shared/core';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXSkeletonModule } from '@acorex/components/skeleton';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AsyncPipe } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n effect,\n inject,\n input,\n signal,\n untracked,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\nimport { AXPReportViewerService } from '../../reports/report-viewer.service';\nimport {\n bindingShowsOnPage,\n buildOpenInPopupCommandOptions,\n OPEN_REPORT_IN_POPUP_COMMAND,\n resolveBindingDescription,\n resolveBindingTitle,\n type AXPEntityBoundReport,\n} from './entity-reports.util';\nimport { resolvePersistedEntityId } from './resolve-entity-record-id.util';\n\n//#endregion\n\n//#region ----- Component -----\n\n@Component({\n selector: 'axm-entity-reports-page',\n standalone: true,\n imports: [\n AXPStateMessageComponent,\n AXButtonModule,\n AXDecoratorModule,\n AXSkeletonModule,\n AXTranslationModule,\n AsyncPipe,\n ],\n templateUrl: './entity-reports-page.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: AXPPageLayoutBase,\n useExisting: AXMEntityReportsPageComponent,\n },\n ],\n host: {\n class: 'flex h-full min-h-0 flex-1 flex-col overflow-hidden',\n },\n})\nexport class AXMEntityReportsPageComponent extends AXPPageLayoutBaseComponent {\n //#region ----- Inputs -----\n\n rootContext = input<Record<string, unknown>>({});\n pageConfig = input<Record<string, unknown>>();\n options = input<Record<string, unknown>>({});\n\n //#endregion\n\n //#region ----- Services & Dependencies -----\n\n private readonly reportViewerService = inject(AXPReportViewerService);\n private readonly commandService = inject(AXPCommandService);\n private readonly route = inject(ActivatedRoute);\n\n //#endregion\n\n //#region ----- State Signals -----\n\n protected readonly isLoading = signal(true);\n protected readonly boundReports = signal<AXPEntityBoundReport[]>([]);\n\n //#endregion\n\n //#region ----- Computed Properties -----\n\n protected readonly entityId = computed(() => resolvePersistedEntityId(this.rootContext()));\n\n protected readonly entityType = computed(() => this.resolveEntityType());\n\n protected readonly pageReports = computed(() =>\n this.boundReports().filter(({ binding }) => bindingShowsOnPage(binding)),\n );\n\n //#endregion\n\n //#region ----- Lifecycle -----\n\n constructor() {\n super();\n effect(() => {\n const entityType = this.entityType();\n untracked(() => {\n void this.loadBoundReports(entityType);\n });\n });\n }\n\n //#endregion\n\n //#region ----- Event Handlers -----\n\n protected async openReport(item: AXPEntityBoundReport): Promise<void> {\n const entityId = this.entityId();\n if (!entityId) {\n return;\n }\n\n await this.commandService.execute(OPEN_REPORT_IN_POPUP_COMMAND, {\n data: this.rootContext() ?? { id: entityId },\n options: buildOpenInPopupCommandOptions(item.report, item.binding),\n });\n }\n\n protected reportTitle(item: AXPEntityBoundReport): AXPMultiLanguageString {\n return resolveBindingTitle(item.report, item.binding);\n }\n\n protected reportDescription(item: AXPEntityBoundReport): AXPMultiLanguageString | undefined {\n return resolveBindingDescription(item.report, item.binding);\n }\n\n //#endregion\n\n //#region ----- Data Loading -----\n\n private resolveEntityType(): string {\n const fromOptions = this.options()?.['entityType'];\n if (typeof fromOptions === 'string' && fromOptions.trim()) {\n return fromOptions.trim();\n }\n const fromConfig = this.pageConfig()?.['entityType'];\n if (typeof fromConfig === 'string' && fromConfig.trim()) {\n return fromConfig.trim();\n }\n\n const ctx = this.rootContext() ?? {};\n const moduleName = typeof ctx['moduleName'] === 'string' ? ctx['moduleName'] : null;\n const entityName = typeof ctx['entityName'] === 'string' ? ctx['entityName'] : null;\n if (moduleName && entityName) {\n return `${moduleName}.${entityName}`;\n }\n\n const module = this.route.snapshot.parent?.paramMap.get('module');\n const entity = this.route.snapshot.paramMap.get('entity');\n if (module && entity) {\n return `${module}.${entity}`;\n }\n\n return '';\n }\n\n private async loadBoundReports(entityType: string): Promise<void> {\n if (!entityType) {\n this.boundReports.set([]);\n this.isLoading.set(false);\n return;\n }\n\n this.isLoading.set(true);\n try {\n const reports = await this.reportViewerService.getReportsByEntityType(entityType);\n this.boundReports.set(reports);\n } catch {\n this.boundReports.set([]);\n } finally {\n this.isLoading.set(false);\n }\n }\n\n //#endregion\n}\n\n//#endregion\n","@if (isLoading()) {\n <!-- ----- Skeleton while entity-bound reports load ----- -->\n <div class=\"flex h-full min-h-0 flex-1 flex-col gap-3 overflow-auto p-4\" aria-hidden=\"true\">\n @for (widthClass of ['w-2/3', 'w-1/2', 'w-3/5']; track $index) {\n <div class=\"flex items-center gap-4 rounded-lg border border-default bg-lightest p-4\">\n <div class=\"h-10 w-10 shrink-0 rounded-md overflow-hidden\">\n <ax-skeleton\n [animated]=\"true\"\n style=\"display: block; width: 100%; height: 100%\"\n ></ax-skeleton>\n </div>\n <div class=\"min-w-0 flex-1 flex flex-col gap-2\">\n <div class=\"h-4 max-w-full rounded-md overflow-hidden\" [class]=\"widthClass\">\n <ax-skeleton\n [animated]=\"true\"\n style=\"display: block; width: 100%; height: 100%\"\n ></ax-skeleton>\n </div>\n <div class=\"h-3 w-4/5 rounded-md overflow-hidden\">\n <ax-skeleton\n [animated]=\"true\"\n style=\"display: block; width: 100%; height: 100%\"\n ></ax-skeleton>\n </div>\n </div>\n </div>\n }\n </div>\n}\n<!-- ----- Record must be saved before reports can use its id ----- -->\n@else if (!entityId()) {\n <div class=\"flex h-full min-h-[20rem] items-center justify-center p-6\">\n <axp-state-message\n [title]=\"'@report-management:entity-reports.messages.save-record-first.title'\"\n [description]=\"'@report-management:entity-reports.messages.save-record-first.description'\"\n ></axp-state-message>\n </div>\n}\n<!-- ----- No report definitions bound to this entity type ----- -->\n@else if (pageReports().length === 0) {\n <div class=\"flex h-full min-h-[20rem] items-center justify-center p-6\">\n <axp-state-message\n [title]=\"'@report-management:entity-reports.messages.empty.title'\"\n [description]=\"'@report-management:entity-reports.messages.empty.description'\"\n ></axp-state-message>\n </div>\n}\n<!-- ----- Bound reports list ----- -->\n@else {\n <div class=\"flex h-full min-h-0 flex-1 flex-col gap-3 overflow-auto p-4\">\n <p class=\"text-sm opacity-70\">\n {{ '@report-management:entity-reports.page.description' | translate | async }}\n </p>\n @for (item of pageReports(); track item.report.id) {\n <div class=\"flex items-center gap-4 rounded-lg border border-default bg-lightest p-4\">\n <div\n class=\"flex h-10 w-10 shrink-0 items-center justify-center rounded-md bg-primary/10 text-primary text-lg\"\n aria-hidden=\"true\"\n >\n <ax-icon class=\"fa-light fa-file-chart-column\"></ax-icon>\n </div>\n <div class=\"min-w-0 flex-1 flex flex-col gap-1\">\n <span class=\"font-medium truncate\">\n {{ reportTitle(item) | translate | async }}\n </span>\n @if (reportDescription(item); as description) {\n <!-- ----- Optional report description under the title ----- -->\n <span class=\"text-sm opacity-70 line-clamp-2\">\n {{ description | translate | async }}\n </span>\n }\n </div>\n <ax-button\n look=\"solid\"\n color=\"secondary\"\n [text]=\"'@report-management:entity-reports.actions.open.title' | translate | async\"\n (onClick)=\"openReport(item)\">\n <ax-suffix>\n <ax-icon icon=\"fa-light fa-arrow-right\"></ax-icon>\n </ax-suffix>\n </ax-button>\n </div>\n }\n </div>\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA;AAEA;;AAEG;AACG,SAAU,wBAAwB,CACtC,GAA+C,EAAA;IAE/C,IAAI,CAAC,GAAG,EAAE;AACR,QAAA,OAAO,SAAS;IAClB;IACA,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC;IACnC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE;AAC7C,QAAA,OAAO,GAAG;IACZ;AACA,IAAA,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;AACjD,QAAA,OAAO,MAAM,CAAC,GAAG,CAAC;IACpB;AACA,IAAA,OAAO,SAAS;AAClB;AAEA;;ACrBA;AAiCA;AAEA;AAyBM,MAAO,6BAA8B,SAAQ,0BAA0B,CAAA;;;AAsC3E,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE;;QApCT,IAAA,CAAA,WAAW,GAAG,KAAK,CAA0B,EAAE;wFAAC;AAChD,QAAA,IAAA,CAAA,UAAU,GAAG,KAAK;kGAA2B;QAC7C,IAAA,CAAA,OAAO,GAAG,KAAK,CAA0B,EAAE;oFAAC;;;AAM3B,QAAA,IAAA,CAAA,mBAAmB,GAAG,MAAM,CAAC,sBAAsB,CAAC;AACpD,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,iBAAiB,CAAC;AAC1C,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC;;;QAM5B,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,IAAI;sFAAC;QACxB,IAAA,CAAA,YAAY,GAAG,MAAM,CAAyB,EAAE;yFAAC;;;AAMjD,QAAA,IAAA,CAAA,QAAQ,GAAG,QAAQ,CAAC,MAAM,wBAAwB,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;qFAAC;QAEvE,IAAA,CAAA,UAAU,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,iBAAiB,EAAE;uFAAC;QAErD,IAAA,CAAA,WAAW,GAAG,QAAQ,CAAC,MACxC,IAAI,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,kBAAkB,CAAC,OAAO,CAAC,CAAC;wFACzE;QAQC,MAAM,CAAC,MAAK;AACV,YAAA,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,EAAE;YACpC,SAAS,CAAC,MAAK;AACb,gBAAA,KAAK,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC;AACxC,YAAA,CAAC,CAAC;AACJ,QAAA,CAAC,CAAC;IACJ;;;IAMU,MAAM,UAAU,CAAC,IAA0B,EAAA;AACnD,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE;QAChC,IAAI,CAAC,QAAQ,EAAE;YACb;QACF;AAEA,QAAA,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,4BAA4B,EAAE;YAC9D,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE;YAC5C,OAAO,EAAE,8BAA8B,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC;AACnE,SAAA,CAAC;IACJ;AAEU,IAAA,WAAW,CAAC,IAA0B,EAAA;QAC9C,OAAO,mBAAmB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC;IACvD;AAEU,IAAA,iBAAiB,CAAC,IAA0B,EAAA;QACpD,OAAO,yBAAyB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC;IAC7D;;;IAMQ,iBAAiB,GAAA;QACvB,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,YAAY,CAAC;QAClD,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,CAAC,IAAI,EAAE,EAAE;AACzD,YAAA,OAAO,WAAW,CAAC,IAAI,EAAE;QAC3B;QACA,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,EAAE,GAAG,YAAY,CAAC;QACpD,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,CAAC,IAAI,EAAE,EAAE;AACvD,YAAA,OAAO,UAAU,CAAC,IAAI,EAAE;QAC1B;QAEA,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE;QACpC,MAAM,UAAU,GAAG,OAAO,GAAG,CAAC,YAAY,CAAC,KAAK,QAAQ,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,IAAI;QACnF,MAAM,UAAU,GAAG,OAAO,GAAG,CAAC,YAAY,CAAC,KAAK,QAAQ,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,IAAI;AACnF,QAAA,IAAI,UAAU,IAAI,UAAU,EAAE;AAC5B,YAAA,OAAO,CAAA,EAAG,UAAU,CAAA,CAAA,EAAI,UAAU,EAAE;QACtC;AAEA,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC;AACjE,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC;AACzD,QAAA,IAAI,MAAM,IAAI,MAAM,EAAE;AACpB,YAAA,OAAO,CAAA,EAAG,MAAM,CAAA,CAAA,EAAI,MAAM,EAAE;QAC9B;AAEA,QAAA,OAAO,EAAE;IACX;IAEQ,MAAM,gBAAgB,CAAC,UAAkB,EAAA;QAC/C,IAAI,CAAC,UAAU,EAAE;AACf,YAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;AACzB,YAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC;YACzB;QACF;AAEA,QAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC;AACxB,QAAA,IAAI;YACF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,sBAAsB,CAAC,UAAU,CAAC;AACjF,YAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC;QAChC;AAAE,QAAA,MAAM;AACN,YAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;QAC3B;gBAAU;AACR,YAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC;QAC3B;IACF;8GAtHW,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA7B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,6BAA6B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,qDAAA,EAAA,EAAA,SAAA,EAV7B;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,WAAW,EAAE,6BAA6B;AAC3C,aAAA;AACF,SAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECvDH,mhHAqFA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,ED5CI,wBAAwB,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,EAAA,OAAA,EAAA,aAAA,EAAA,aAAA,EAAA,mBAAA,EAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACxB,cAAc,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,UAAA,EAAA,OAAA,EAAA,MAAA,EAAA,MAAA,EAAA,YAAA,EAAA,UAAA,EAAA,UAAA,EAAA,MAAA,EAAA,aAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,EAAA,SAAA,EAAA,SAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,YAAA,EAAA,aAAA,EAAA,gBAAA,EAAA,mBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACd,iBAAiB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,wBAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,2BAAA,EAAA,QAAA,EAAA,8IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACjB,gBAAgB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAChB,mBAAmB,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,IAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EACnB,SAAS,EAAA,IAAA,EAAA,OAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAcA,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBAvBzC,SAAS;+BACE,yBAAyB,EAAA,UAAA,EACvB,IAAI,EAAA,OAAA,EACP;wBACP,wBAAwB;wBACxB,cAAc;wBACd,iBAAiB;wBACjB,gBAAgB;wBAChB,mBAAmB;wBACnB,SAAS;qBACV,EAAA,eAAA,EAEgB,uBAAuB,CAAC,MAAM,EAAA,SAAA,EACpC;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,WAAW,EAAA,6BAA+B;AAC3C,yBAAA;qBACF,EAAA,IAAA,EACK;AACJ,wBAAA,KAAK,EAAE,qDAAqD;AAC7D,qBAAA,EAAA,QAAA,EAAA,mhHAAA,EAAA;;;"}
|
|
1
|
+
{"version":3,"file":"acorex-platform-module-report-management-client-entity-reports-page.component-CK5bCQhm.mjs","sources":["../../../../libs/modules/report-management/client/src/lib/features/entity-reports/resolve-entity-record-id.util.ts","../../../../libs/modules/report-management/client/src/lib/features/entity-reports/entity-reports-page.component.ts","../../../../libs/modules/report-management/client/src/lib/features/entity-reports/entity-reports-page.component.html"],"sourcesContent":["//#region ----- Persisted entity id -----\n\n/**\n * Resolves the persisted record id from entity detail page root context.\n */\nexport function resolvePersistedEntityId(\n ctx: Record<string, unknown> | null | undefined,\n): string | undefined {\n if (!ctx) {\n return undefined;\n }\n const raw = ctx['id'] ?? ctx['_id'];\n if (typeof raw === 'string' && raw.length > 0) {\n return raw;\n }\n if (typeof raw === 'number' && !Number.isNaN(raw)) {\n return String(raw);\n }\n return undefined;\n}\n\n//#endregion\n","//#region ----- Imports -----\n\nimport { AXPPageLayoutBase, AXPPageLayoutBaseComponent } from '@acorex-platform/framework-client/layout/views';\nimport { AXPStateMessageComponent } from '@acorex-platform/framework-client/layout/components';\nimport { AXPCommandService } from '@acorex-platform/framework-client/runtime';\nimport type { AXPMultiLanguageString } from '@acorex-platform/framework-shared/core';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXSkeletonModule } from '@acorex/components/skeleton';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AsyncPipe } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n effect,\n inject,\n input,\n signal,\n untracked,\n} from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\nimport { AXPReportViewerService } from '../../reports/report-viewer.service';\nimport {\n bindingShowsOnPage,\n buildOpenInPopupCommandOptions,\n OPEN_REPORT_IN_POPUP_COMMAND,\n resolveBindingDescription,\n resolveBindingTitle,\n type AXPEntityBoundReport,\n} from './entity-reports.util';\nimport { resolvePersistedEntityId } from './resolve-entity-record-id.util';\n\n//#endregion\n\n//#region ----- Component -----\n\n@Component({\n selector: 'axm-entity-reports-page',\n standalone: true,\n imports: [\n AXPStateMessageComponent,\n AXButtonModule,\n AXDecoratorModule,\n AXSkeletonModule,\n AXTranslationModule,\n AsyncPipe,\n ],\n templateUrl: './entity-reports-page.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: AXPPageLayoutBase,\n useExisting: AXMEntityReportsPageComponent,\n },\n ],\n host: {\n class: 'flex h-full min-h-0 flex-1 flex-col overflow-hidden',\n },\n})\nexport class AXMEntityReportsPageComponent extends AXPPageLayoutBaseComponent {\n //#region ----- Inputs -----\n\n rootContext = input<Record<string, unknown>>({});\n pageConfig = input<Record<string, unknown>>();\n options = input<Record<string, unknown>>({});\n\n //#endregion\n\n //#region ----- Services & Dependencies -----\n\n private readonly reportViewerService = inject(AXPReportViewerService);\n private readonly commandService = inject(AXPCommandService);\n private readonly route = inject(ActivatedRoute);\n\n //#endregion\n\n //#region ----- State Signals -----\n\n protected readonly isLoading = signal(true);\n protected readonly boundReports = signal<AXPEntityBoundReport[]>([]);\n\n //#endregion\n\n //#region ----- Computed Properties -----\n\n protected readonly entityId = computed(() => resolvePersistedEntityId(this.rootContext()));\n\n protected readonly entityType = computed(() => this.resolveEntityType());\n\n protected readonly pageReports = computed(() =>\n this.boundReports().filter(({ binding }) => bindingShowsOnPage(binding)),\n );\n\n //#endregion\n\n //#region ----- Lifecycle -----\n\n constructor() {\n super();\n effect(() => {\n const entityType = this.entityType();\n untracked(() => {\n void this.loadBoundReports(entityType);\n });\n });\n }\n\n //#endregion\n\n //#region ----- Event Handlers -----\n\n protected async openReport(item: AXPEntityBoundReport): Promise<void> {\n const entityId = this.entityId();\n if (!entityId) {\n return;\n }\n\n await this.commandService.execute(OPEN_REPORT_IN_POPUP_COMMAND, {\n data: this.rootContext() ?? { id: entityId },\n options: buildOpenInPopupCommandOptions(item.report, item.binding),\n });\n }\n\n protected reportTitle(item: AXPEntityBoundReport): AXPMultiLanguageString {\n return resolveBindingTitle(item.report, item.binding);\n }\n\n protected reportDescription(item: AXPEntityBoundReport): AXPMultiLanguageString | undefined {\n return resolveBindingDescription(item.report, item.binding);\n }\n\n //#endregion\n\n //#region ----- Data Loading -----\n\n private resolveEntityType(): string {\n const fromOptions = this.options()?.['entityType'];\n if (typeof fromOptions === 'string' && fromOptions.trim()) {\n return fromOptions.trim();\n }\n const fromConfig = this.pageConfig()?.['entityType'];\n if (typeof fromConfig === 'string' && fromConfig.trim()) {\n return fromConfig.trim();\n }\n\n const ctx = this.rootContext() ?? {};\n const moduleName = typeof ctx['moduleName'] === 'string' ? ctx['moduleName'] : null;\n const entityName = typeof ctx['entityName'] === 'string' ? ctx['entityName'] : null;\n if (moduleName && entityName) {\n return `${moduleName}.${entityName}`;\n }\n\n const module = this.route.snapshot.parent?.paramMap.get('module');\n const entity = this.route.snapshot.paramMap.get('entity');\n if (module && entity) {\n return `${module}.${entity}`;\n }\n\n return '';\n }\n\n private async loadBoundReports(entityType: string): Promise<void> {\n if (!entityType) {\n this.boundReports.set([]);\n this.isLoading.set(false);\n return;\n }\n\n this.isLoading.set(true);\n try {\n const reports = await this.reportViewerService.getReportsByEntityType(entityType);\n this.boundReports.set(reports);\n } catch {\n this.boundReports.set([]);\n } finally {\n this.isLoading.set(false);\n }\n }\n\n //#endregion\n}\n\n//#endregion\n","@if (isLoading()) {\n <!-- ----- Skeleton while entity-bound reports load ----- -->\n <div class=\"flex h-full min-h-0 flex-1 flex-col gap-3 overflow-auto p-4\" aria-hidden=\"true\">\n @for (widthClass of ['w-2/3', 'w-1/2', 'w-3/5']; track $index) {\n <div class=\"flex items-center gap-4 rounded-lg border border-default bg-lightest p-4\">\n <div class=\"h-10 w-10 shrink-0 rounded-md overflow-hidden\">\n <ax-skeleton\n [animated]=\"true\"\n style=\"display: block; width: 100%; height: 100%\"\n ></ax-skeleton>\n </div>\n <div class=\"min-w-0 flex-1 flex flex-col gap-2\">\n <div class=\"h-4 max-w-full rounded-md overflow-hidden\" [class]=\"widthClass\">\n <ax-skeleton\n [animated]=\"true\"\n style=\"display: block; width: 100%; height: 100%\"\n ></ax-skeleton>\n </div>\n <div class=\"h-3 w-4/5 rounded-md overflow-hidden\">\n <ax-skeleton\n [animated]=\"true\"\n style=\"display: block; width: 100%; height: 100%\"\n ></ax-skeleton>\n </div>\n </div>\n </div>\n }\n </div>\n}\n<!-- ----- Record must be saved before reports can use its id ----- -->\n@else if (!entityId()) {\n <div class=\"flex h-full min-h-[20rem] items-center justify-center p-6\">\n <axp-state-message\n [title]=\"'@report-management:entity-reports.messages.save-record-first.title'\"\n [description]=\"'@report-management:entity-reports.messages.save-record-first.description'\"\n ></axp-state-message>\n </div>\n}\n<!-- ----- No report definitions bound to this entity type ----- -->\n@else if (pageReports().length === 0) {\n <div class=\"flex h-full min-h-[20rem] items-center justify-center p-6\">\n <axp-state-message\n [title]=\"'@report-management:entity-reports.messages.empty.title'\"\n [description]=\"'@report-management:entity-reports.messages.empty.description'\"\n ></axp-state-message>\n </div>\n}\n<!-- ----- Bound reports list ----- -->\n@else {\n <div class=\"flex h-full min-h-0 flex-1 flex-col gap-3 overflow-auto p-4\">\n <p class=\"text-sm opacity-70\">\n {{ '@report-management:entity-reports.page.description' | translate | async }}\n </p>\n @for (item of pageReports(); track item.report.id) {\n <div class=\"flex items-center gap-4 rounded-lg border border-default bg-lightest p-4\">\n <div\n class=\"flex h-10 w-10 shrink-0 items-center justify-center rounded-md bg-primary/10 text-primary text-lg\"\n aria-hidden=\"true\"\n >\n <ax-icon class=\"fa-light fa-file-chart-column\"></ax-icon>\n </div>\n <div class=\"min-w-0 flex-1 flex flex-col gap-1\">\n <span class=\"font-medium truncate\">\n {{ reportTitle(item) | translate | async }}\n </span>\n @if (reportDescription(item); as description) {\n <!-- ----- Optional report description under the title ----- -->\n <span class=\"text-sm opacity-70 line-clamp-2\">\n {{ description | translate | async }}\n </span>\n }\n </div>\n <ax-button\n look=\"solid\"\n color=\"secondary\"\n [text]=\"'@report-management:entity-reports.actions.open.title' | translate | async\"\n (onClick)=\"openReport(item)\">\n <ax-suffix>\n <ax-icon icon=\"fa-light fa-arrow-right\"></ax-icon>\n </ax-suffix>\n </ax-button>\n </div>\n }\n </div>\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -12,7 +12,7 @@ import * as i2 from '@angular/common';
|
|
|
12
12
|
import { CommonModule } from '@angular/common';
|
|
13
13
|
import * as i0 from '@angular/core';
|
|
14
14
|
import { inject, Injectable, computed, effect, untracked, signal, ChangeDetectionStrategy, Component, ViewEncapsulation, viewChild } from '@angular/core';
|
|
15
|
-
import { r as resolveReportFilterDefaultValue, c as convertContextDataToFilterClause, b as collectReportParameterDefaults, A as AXPReportViewerService, d as queryResultToChartSeries, e as AXLineChartReportMapper, f as AXPieChartReportMapper, g as AXBarChartReportMapper, q as queryResultToPdfSource } from './acorex-platform-module-report-management-client-acorex-platform-module-report-management-client-
|
|
15
|
+
import { r as resolveReportFilterDefaultValue, c as convertContextDataToFilterClause, b as collectReportParameterDefaults, A as AXPReportViewerService, d as queryResultToChartSeries, e as AXLineChartReportMapper, f as AXPieChartReportMapper, g as AXBarChartReportMapper, q as queryResultToPdfSource } from './acorex-platform-module-report-management-client-acorex-platform-module-report-management-client-eSjEqt5D.mjs';
|
|
16
16
|
import { AXButtonModule } from '@acorex/components/button';
|
|
17
17
|
import { AXDecoratorModule } from '@acorex/components/decorators';
|
|
18
18
|
import { DomSanitizer } from '@angular/platform-browser';
|
|
@@ -2263,4 +2263,4 @@ function stripIconStylePrefix(icon) {
|
|
|
2263
2263
|
//#endregion
|
|
2264
2264
|
|
|
2265
2265
|
export { AXPReportViewerViewModel as A, reportLayoutTitleKey as a, reportLayoutGlyph as b, AXPReportTableViewComponent as c, AXPReportChartViewComponent as d, AXPReportPdfViewComponent as e, isDistinctLayoutTitle as i, reportLayoutPageIcon as r };
|
|
2266
|
-
//# sourceMappingURL=acorex-platform-module-report-management-client-report-layout-switcher.util-
|
|
2266
|
+
//# sourceMappingURL=acorex-platform-module-report-management-client-report-layout-switcher.util-C3OVIaEz.mjs.map
|