@acorex-platform/module-workflow-management-client 0.0.21 → 0.0.25

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.
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-module-workflow-management-client-workflow-live-dashboard.queries--9NtYkau.mjs","sources":["../../../../libs/modules/workflow-management/client/src/lib/features/dashboard-queries/workflow-dashboard-data.util.ts","../../../../libs/modules/workflow-management/client/src/lib/features/dashboard-queries/workflow-live-dashboard.queries.ts"],"sourcesContent":["/**\n * Shared helpers for live WorkflowManagement dashboard queries.\n */\n\nimport { AXPEntityService } from '@acorex-platform/framework-client/layout/entity';\n\n//#region ----- Constants -----\n\nexport const WORKFLOW_DASHBOARD_CHART_COLORS = [\n '#43b57f',\n '#3b82f6',\n '#f59e0b',\n '#ef4444',\n '#8b5cf6',\n '#0ea5e9',\n '#64748b',\n] as const;\n\n//#endregion\n\n//#region ----- Entity helpers -----\n\nexport async function queryEntityTotal(\n entityService: AXPEntityService,\n moduleName: string,\n entityName: string,\n): Promise<number> {\n const data = entityService.withEntity(moduleName, entityName).data();\n const result = await data.query({ skip: 0, take: 1 });\n return typeof result.total === 'number' ? result.total : (result.items?.length ?? 0);\n}\n\nexport async function queryEntityItems(\n entityService: AXPEntityService,\n moduleName: string,\n entityName: string,\n take = 5000,\n): Promise<Record<string, unknown>[]> {\n const data = entityService.withEntity(moduleName, entityName).data();\n const result = await data.query({ skip: 0, take });\n return (result.items ?? []) as unknown as Record<string, unknown>[];\n}\n\nexport function resolveDisplayTitle(value: unknown): string {\n if (value == null) {\n return '';\n }\n if (typeof value === 'string') {\n return value;\n }\n if (typeof value === 'object' && !Array.isArray(value)) {\n const map = value as Record<string, string>;\n return map['en-US'] || map['fa-IR'] || Object.values(map).find((v) => typeof v === 'string' && v) || '';\n }\n return String(value);\n}\n\nexport function titleCaseToken(value: string): string {\n if (!value) {\n return 'Unknown';\n }\n return value\n .split(/[-_]/)\n .filter(Boolean)\n .map((part) => part.charAt(0).toUpperCase() + part.slice(1))\n .join(' ');\n}\n\nexport function countByKey(\n items: Record<string, unknown>[],\n keyFn: (item: Record<string, unknown>) => string,\n): Map<string, number> {\n const counts = new Map<string, number>();\n for (const item of items) {\n const key = keyFn(item) || 'unknown';\n counts.set(key, (counts.get(key) ?? 0) + 1);\n }\n return counts;\n}\n\nexport function mapCountsToSeries(\n counts: Map<string, number>,\n labelFn: (key: string) => string = titleCaseToken,\n): Array<{ id: string; label: string; value: number; color: string }> {\n return [...counts.entries()]\n .sort((a, b) => b[1] - a[1] || a[0].localeCompare(b[0]))\n .map(([key, value], index) => ({\n id: key,\n label: labelFn(key),\n value,\n color: WORKFLOW_DASHBOARD_CHART_COLORS[index % WORKFLOW_DASHBOARD_CHART_COLORS.length],\n }));\n}\n\n//#endregion\n","//#region ----- Imports -----\n\nimport { AXPEntityService } from '@acorex-platform/framework-client/layout/entity';\nimport {\n runtimeQueryFailure,\n runtimeQuerySuccessObject,\n} from '@acorex-platform/framework-shared/core';\nimport { AXPQuery, type AXPQueryFetchResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport type {\n AXPBarChartQueryResult,\n AXPDonutChartQueryResult,\n AXPGaugeChartQueryResult,\n AXPKpiStatCardQueryResult,\n} from '@acorex-platform/module-dashboard-management-contracts';\nimport { Injectable, inject } from '@angular/core';\n\nimport {\n countByKey,\n mapCountsToSeries,\n queryEntityItems,\n queryEntityTotal,\n resolveDisplayTitle,\n titleCaseToken,\n} from './workflow-dashboard-data.util';\n\n//#endregion\n\n//#region ----- KPI -----\n\n@Injectable({ providedIn: 'root' })\nexport class AXMWorkflowDefinitionsKpiQuery implements AXPQuery<void, AXPKpiStatCardQueryResult> {\n private readonly entityService = inject(AXPEntityService);\n\n async fetch(): AXPQueryFetchResultPromise<AXPKpiStatCardQueryResult> {\n try {\n const value = await queryEntityTotal(this.entityService, 'WorkflowManagement', 'WorkflowDefinition');\n return runtimeQuerySuccessObject({\n title: 'Workflow Definitions',\n value,\n icon: 'fa-light fa-diagram-project',\n iconTone: 'primary',\n });\n } catch (error) {\n return runtimeQueryFailure(\n error instanceof Error ? error.message : 'Failed to load workflow definitions KPI',\n );\n }\n }\n}\n\n@Injectable({ providedIn: 'root' })\nexport class AXMWorkflowActivitiesKpiQuery implements AXPQuery<void, AXPKpiStatCardQueryResult> {\n private readonly entityService = inject(AXPEntityService);\n\n async fetch(): AXPQueryFetchResultPromise<AXPKpiStatCardQueryResult> {\n try {\n const value = await queryEntityTotal(this.entityService, 'WorkflowManagement', 'ActivityDefinition');\n return runtimeQuerySuccessObject({\n title: 'Activity Definitions',\n value,\n icon: 'fa-light fa-puzzle-piece',\n iconTone: 'info',\n });\n } catch (error) {\n return runtimeQueryFailure(\n error instanceof Error ? error.message : 'Failed to load activity definitions KPI',\n );\n }\n }\n}\n\n//#endregion\n\n//#region ----- Charts -----\n\n@Injectable({ providedIn: 'root' })\nexport class AXMWorkflowDefinitionsByStatusBarQuery implements AXPQuery<void, AXPBarChartQueryResult> {\n private readonly entityService = inject(AXPEntityService);\n\n async fetch(): AXPQueryFetchResultPromise<AXPBarChartQueryResult> {\n try {\n const definitions = await queryEntityItems(\n this.entityService,\n 'WorkflowManagement',\n 'WorkflowDefinition',\n );\n const counts = countByKey(definitions, (row) =>\n String(row['statusId'] ?? row['status'] ?? 'unknown'),\n );\n return runtimeQuerySuccessObject({ items: mapCountsToSeries(counts) });\n } catch (error) {\n return runtimeQueryFailure(\n error instanceof Error ? error.message : 'Failed to load definitions by status',\n );\n }\n }\n}\n\n@Injectable({ providedIn: 'root' })\nexport class AXMWorkflowActivitiesByCategoryDonutQuery\n implements AXPQuery<void, AXPDonutChartQueryResult>\n{\n private readonly entityService = inject(AXPEntityService);\n\n async fetch(): AXPQueryFetchResultPromise<AXPDonutChartQueryResult> {\n try {\n const activities = await queryEntityItems(\n this.entityService,\n 'WorkflowManagement',\n 'ActivityDefinition',\n );\n const counts = countByKey(activities, (row) => {\n const category = row['category'];\n if (typeof category === 'object' && category) {\n const cat = category as { id?: string; name?: string; title?: unknown };\n const title = resolveDisplayTitle(cat.title);\n if (title) {\n return title;\n }\n if (cat.name) {\n return titleCaseToken(String(cat.name));\n }\n if (cat.id) {\n return String(cat.id);\n }\n }\n return String(row['categoryId'] ?? 'Uncategorized');\n });\n return runtimeQuerySuccessObject({ items: mapCountsToSeries(counts, (k) => k) });\n } catch (error) {\n return runtimeQueryFailure(\n error instanceof Error ? error.message : 'Failed to load activities by category',\n );\n }\n }\n}\n\n@Injectable({ providedIn: 'root' })\nexport class AXMWorkflowPublishedDefinitionsGaugeQuery\n implements AXPQuery<void, AXPGaugeChartQueryResult>\n{\n private readonly entityService = inject(AXPEntityService);\n\n async fetch(): AXPQueryFetchResultPromise<AXPGaugeChartQueryResult> {\n try {\n const definitions = await queryEntityItems(\n this.entityService,\n 'WorkflowManagement',\n 'WorkflowDefinition',\n );\n if (definitions.length === 0) {\n return runtimeQuerySuccessObject({ value: 0 });\n }\n const published = definitions.filter((row) => {\n const status = String(row['statusId'] ?? row['status'] ?? '').toLowerCase();\n return status === 'published';\n }).length;\n return runtimeQuerySuccessObject({\n value: Math.round((published / definitions.length) * 100),\n });\n } catch (error) {\n return runtimeQueryFailure(\n error instanceof Error ? error.message : 'Failed to load published definitions gauge',\n );\n }\n }\n}\n\n//#endregion\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-platform-module-workflow-management-client-workflow-live-dashboard.queries--9NtYkau.mjs","sources":["../../../../libs/modules/workflow-management/client/src/lib/features/dashboard-queries/workflow-dashboard-data.util.ts","../../../../libs/modules/workflow-management/client/src/lib/features/dashboard-queries/workflow-live-dashboard.queries.ts"],"sourcesContent":["/**\n * Shared helpers for live WorkflowManagement dashboard queries.\n */\n\nimport { AXPEntityService } from '@acorex-platform/framework-client/layout/entity';\n\n//#region ----- Constants -----\n\nexport const WORKFLOW_DASHBOARD_CHART_COLORS = [\n '#43b57f',\n '#3b82f6',\n '#f59e0b',\n '#ef4444',\n '#8b5cf6',\n '#0ea5e9',\n '#64748b',\n] as const;\n\n//#endregion\n\n//#region ----- Entity helpers -----\n\nexport async function queryEntityTotal(\n entityService: AXPEntityService,\n moduleName: string,\n entityName: string,\n): Promise<number> {\n const data = entityService.withEntity(moduleName, entityName).data();\n const result = await data.query({ skip: 0, take: 1 });\n return typeof result.total === 'number' ? result.total : (result.items?.length ?? 0);\n}\n\nexport async function queryEntityItems(\n entityService: AXPEntityService,\n moduleName: string,\n entityName: string,\n take = 5000,\n): Promise<Record<string, unknown>[]> {\n const data = entityService.withEntity(moduleName, entityName).data();\n const result = await data.query({ skip: 0, take });\n return (result.items ?? []) as unknown as Record<string, unknown>[];\n}\n\nexport function resolveDisplayTitle(value: unknown): string {\n if (value == null) {\n return '';\n }\n if (typeof value === 'string') {\n return value;\n }\n if (typeof value === 'object' && !Array.isArray(value)) {\n const map = value as Record<string, string>;\n return map['en-US'] || map['fa-IR'] || Object.values(map).find((v) => typeof v === 'string' && v) || '';\n }\n return String(value);\n}\n\nexport function titleCaseToken(value: string): string {\n if (!value) {\n return 'Unknown';\n }\n return value\n .split(/[-_]/)\n .filter(Boolean)\n .map((part) => part.charAt(0).toUpperCase() + part.slice(1))\n .join(' ');\n}\n\nexport function countByKey(\n items: Record<string, unknown>[],\n keyFn: (item: Record<string, unknown>) => string,\n): Map<string, number> {\n const counts = new Map<string, number>();\n for (const item of items) {\n const key = keyFn(item) || 'unknown';\n counts.set(key, (counts.get(key) ?? 0) + 1);\n }\n return counts;\n}\n\nexport function mapCountsToSeries(\n counts: Map<string, number>,\n labelFn: (key: string) => string = titleCaseToken,\n): Array<{ id: string; label: string; value: number; color: string }> {\n return [...counts.entries()]\n .sort((a, b) => b[1] - a[1] || a[0].localeCompare(b[0]))\n .map(([key, value], index) => ({\n id: key,\n label: labelFn(key),\n value,\n color: WORKFLOW_DASHBOARD_CHART_COLORS[index % WORKFLOW_DASHBOARD_CHART_COLORS.length],\n }));\n}\n\n//#endregion\n","//#region ----- Imports -----\n\nimport { AXPEntityService } from '@acorex-platform/framework-client/layout/entity';\nimport {\n runtimeQueryFailure,\n runtimeQuerySuccessObject,\n} from '@acorex-platform/framework-shared/core';\nimport { AXPQuery, type AXPQueryFetchResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport type {\n AXPBarChartQueryResult,\n AXPDonutChartQueryResult,\n AXPGaugeChartQueryResult,\n AXPKpiStatCardQueryResult,\n} from '@acorex-platform/module-dashboard-management-client/contracts';\nimport { Injectable, inject } from '@angular/core';\n\nimport {\n countByKey,\n mapCountsToSeries,\n queryEntityItems,\n queryEntityTotal,\n resolveDisplayTitle,\n titleCaseToken,\n} from './workflow-dashboard-data.util';\n\n//#endregion\n\n//#region ----- KPI -----\n\n@Injectable({ providedIn: 'root' })\nexport class AXMWorkflowDefinitionsKpiQuery implements AXPQuery<void, AXPKpiStatCardQueryResult> {\n private readonly entityService = inject(AXPEntityService);\n\n async fetch(): AXPQueryFetchResultPromise<AXPKpiStatCardQueryResult> {\n try {\n const value = await queryEntityTotal(this.entityService, 'WorkflowManagement', 'WorkflowDefinition');\n return runtimeQuerySuccessObject({\n title: 'Workflow Definitions',\n value,\n icon: 'fa-light fa-diagram-project',\n iconTone: 'primary',\n });\n } catch (error) {\n return runtimeQueryFailure(\n error instanceof Error ? error.message : 'Failed to load workflow definitions KPI',\n );\n }\n }\n}\n\n@Injectable({ providedIn: 'root' })\nexport class AXMWorkflowActivitiesKpiQuery implements AXPQuery<void, AXPKpiStatCardQueryResult> {\n private readonly entityService = inject(AXPEntityService);\n\n async fetch(): AXPQueryFetchResultPromise<AXPKpiStatCardQueryResult> {\n try {\n const value = await queryEntityTotal(this.entityService, 'WorkflowManagement', 'ActivityDefinition');\n return runtimeQuerySuccessObject({\n title: 'Activity Definitions',\n value,\n icon: 'fa-light fa-puzzle-piece',\n iconTone: 'info',\n });\n } catch (error) {\n return runtimeQueryFailure(\n error instanceof Error ? error.message : 'Failed to load activity definitions KPI',\n );\n }\n }\n}\n\n//#endregion\n\n//#region ----- Charts -----\n\n@Injectable({ providedIn: 'root' })\nexport class AXMWorkflowDefinitionsByStatusBarQuery implements AXPQuery<void, AXPBarChartQueryResult> {\n private readonly entityService = inject(AXPEntityService);\n\n async fetch(): AXPQueryFetchResultPromise<AXPBarChartQueryResult> {\n try {\n const definitions = await queryEntityItems(\n this.entityService,\n 'WorkflowManagement',\n 'WorkflowDefinition',\n );\n const counts = countByKey(definitions, (row) =>\n String(row['statusId'] ?? row['status'] ?? 'unknown'),\n );\n return runtimeQuerySuccessObject({ items: mapCountsToSeries(counts) });\n } catch (error) {\n return runtimeQueryFailure(\n error instanceof Error ? error.message : 'Failed to load definitions by status',\n );\n }\n }\n}\n\n@Injectable({ providedIn: 'root' })\nexport class AXMWorkflowActivitiesByCategoryDonutQuery\n implements AXPQuery<void, AXPDonutChartQueryResult>\n{\n private readonly entityService = inject(AXPEntityService);\n\n async fetch(): AXPQueryFetchResultPromise<AXPDonutChartQueryResult> {\n try {\n const activities = await queryEntityItems(\n this.entityService,\n 'WorkflowManagement',\n 'ActivityDefinition',\n );\n const counts = countByKey(activities, (row) => {\n const category = row['category'];\n if (typeof category === 'object' && category) {\n const cat = category as { id?: string; name?: string; title?: unknown };\n const title = resolveDisplayTitle(cat.title);\n if (title) {\n return title;\n }\n if (cat.name) {\n return titleCaseToken(String(cat.name));\n }\n if (cat.id) {\n return String(cat.id);\n }\n }\n return String(row['categoryId'] ?? 'Uncategorized');\n });\n return runtimeQuerySuccessObject({ items: mapCountsToSeries(counts, (k) => k) });\n } catch (error) {\n return runtimeQueryFailure(\n error instanceof Error ? error.message : 'Failed to load activities by category',\n );\n }\n }\n}\n\n@Injectable({ providedIn: 'root' })\nexport class AXMWorkflowPublishedDefinitionsGaugeQuery\n implements AXPQuery<void, AXPGaugeChartQueryResult>\n{\n private readonly entityService = inject(AXPEntityService);\n\n async fetch(): AXPQueryFetchResultPromise<AXPGaugeChartQueryResult> {\n try {\n const definitions = await queryEntityItems(\n this.entityService,\n 'WorkflowManagement',\n 'WorkflowDefinition',\n );\n if (definitions.length === 0) {\n return runtimeQuerySuccessObject({ value: 0 });\n }\n const published = definitions.filter((row) => {\n const status = String(row['statusId'] ?? row['status'] ?? '').toLowerCase();\n return status === 'published';\n }).length;\n return runtimeQuerySuccessObject({\n value: Math.round((published / definitions.length) * 100),\n });\n } catch (error) {\n return runtimeQueryFailure(\n error instanceof Error ? error.message : 'Failed to load published definitions gauge',\n );\n }\n }\n}\n\n//#endregion\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,8 +1,9 @@
1
1
  {
2
2
  "name": "@acorex-platform/module-workflow-management-client",
3
- "version": "0.0.21",
3
+ "version": "0.0.25",
4
4
  "sideEffects": false,
5
5
  "peerDependencies": {
6
+ "@acorex-platform/module-dashboard-management-client": "0.0.25",
6
7
  "@angular/common": "^21.0.0",
7
8
  "@angular/core": "^21.0.0"
8
9
  },