@acorex-platform/module-workflow-management-client 0.0.38 → 0.0.48

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 (47) hide show
  1. package/fesm2022/{acorex-platform-module-workflow-management-client-acorex-platform-module-workflow-management-client-CKudtLpx.mjs → acorex-platform-module-workflow-management-client-acorex-platform-module-workflow-management-client-mxu-pura.mjs} +100 -49
  2. package/fesm2022/acorex-platform-module-workflow-management-client-acorex-platform-module-workflow-management-client-mxu-pura.mjs.map +1 -0
  3. package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entities-activity-category.mjs +12 -0
  4. package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entities-activity-category.mjs.map +1 -1
  5. package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entities-activity-definition.mjs +14 -0
  6. package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entities-activity-definition.mjs.map +1 -1
  7. package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entities-automation.mjs +14 -0
  8. package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entities-automation.mjs.map +1 -1
  9. package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entities-workflow-definition.mjs +14 -0
  10. package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entities-workflow-definition.mjs.map +1 -1
  11. package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entities-workflow-instance.mjs +14 -0
  12. package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entities-workflow-instance.mjs.map +1 -1
  13. package/fesm2022/{acorex-platform-module-workflow-management-client-contracts-entity-catalog-acorex-platform-module-workflow-management-client-contracts-entity-catalog-DKDogTU7.mjs → acorex-platform-module-workflow-management-client-contracts-entity-catalog-acorex-platform-module-workflow-management-client-contracts-entity-catalog-Drne-WcE.mjs} +6 -6
  14. package/fesm2022/{acorex-platform-module-workflow-management-client-contracts-entity-catalog-acorex-platform-module-workflow-management-client-contracts-entity-catalog-DKDogTU7.mjs.map → acorex-platform-module-workflow-management-client-contracts-entity-catalog-acorex-platform-module-workflow-management-client-contracts-entity-catalog-Drne-WcE.mjs.map} +1 -1
  15. package/fesm2022/{acorex-platform-module-workflow-management-client-contracts-entity-catalog-activity-category.entity-1EWdojoP.mjs → acorex-platform-module-workflow-management-client-contracts-entity-catalog-activity-category.entity-3VLEu-L6.mjs} +14 -2
  16. package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entity-catalog-activity-category.entity-3VLEu-L6.mjs.map +1 -0
  17. package/fesm2022/{acorex-platform-module-workflow-management-client-contracts-entity-catalog-activity-definition.entity-DYoF3vVe.mjs → acorex-platform-module-workflow-management-client-contracts-entity-catalog-activity-definition.entity-ClVokZpw.mjs} +16 -2
  18. package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entity-catalog-activity-definition.entity-ClVokZpw.mjs.map +1 -0
  19. package/fesm2022/{acorex-platform-module-workflow-management-client-contracts-entity-catalog-automation.entity-DbJeeZpQ.mjs → acorex-platform-module-workflow-management-client-contracts-entity-catalog-automation.entity-BY4uwLMZ.mjs} +16 -2
  20. package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entity-catalog-automation.entity-BY4uwLMZ.mjs.map +1 -0
  21. package/fesm2022/{acorex-platform-module-workflow-management-client-contracts-entity-catalog-workflow-definition.entity-BVSAGT0z.mjs → acorex-platform-module-workflow-management-client-contracts-entity-catalog-workflow-definition.entity-DN9KS_mu.mjs} +16 -2
  22. package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entity-catalog-workflow-definition.entity-DN9KS_mu.mjs.map +1 -0
  23. package/fesm2022/{acorex-platform-module-workflow-management-client-contracts-entity-catalog-workflow-instance.entity-BEA4WQX2.mjs → acorex-platform-module-workflow-management-client-contracts-entity-catalog-workflow-instance.entity-BnfbJExU.mjs} +16 -2
  24. package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entity-catalog-workflow-instance.entity-BnfbJExU.mjs.map +1 -0
  25. package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entity-catalog.mjs +1 -1
  26. package/fesm2022/acorex-platform-module-workflow-management-client-contracts.mjs +20 -1
  27. package/fesm2022/acorex-platform-module-workflow-management-client-contracts.mjs.map +1 -1
  28. package/fesm2022/{acorex-platform-module-workflow-management-client-index-BKMDbQ8Z.mjs → acorex-platform-module-workflow-management-client-index-BhzGxdyE.mjs} +3 -3
  29. package/fesm2022/{acorex-platform-module-workflow-management-client-index-BKMDbQ8Z.mjs.map → acorex-platform-module-workflow-management-client-index-BhzGxdyE.mjs.map} +1 -1
  30. package/fesm2022/{acorex-platform-module-workflow-management-client-index-C3pkrctS.mjs → acorex-platform-module-workflow-management-client-index-C7OwbRxk.mjs} +2 -2
  31. package/fesm2022/{acorex-platform-module-workflow-management-client-index-C3pkrctS.mjs.map → acorex-platform-module-workflow-management-client-index-C7OwbRxk.mjs.map} +1 -1
  32. package/fesm2022/{acorex-platform-module-workflow-management-client-workflow-run-history-popup.component-DbeueT-X.mjs → acorex-platform-module-workflow-management-client-workflow-run-history-popup.component-DBswxGAs.mjs} +5 -5
  33. package/fesm2022/{acorex-platform-module-workflow-management-client-workflow-run-history-popup.component-DbeueT-X.mjs.map → acorex-platform-module-workflow-management-client-workflow-run-history-popup.component-DBswxGAs.mjs.map} +1 -1
  34. package/fesm2022/{acorex-platform-module-workflow-management-client-workflow-run-history-visual-tab.component-Bw68Jwcb.mjs → acorex-platform-module-workflow-management-client-workflow-run-history-visual-tab.component-34kIeL5C.mjs} +2 -2
  35. package/fesm2022/{acorex-platform-module-workflow-management-client-workflow-run-history-visual-tab.component-Bw68Jwcb.mjs.map → acorex-platform-module-workflow-management-client-workflow-run-history-visual-tab.component-34kIeL5C.mjs.map} +1 -1
  36. package/fesm2022/{acorex-platform-module-workflow-management-client-workflow-task-popover.component-Y9rWe3O6.mjs → acorex-platform-module-workflow-management-client-workflow-task-popover.component-BDhOlDkg.mjs} +2 -2
  37. package/fesm2022/{acorex-platform-module-workflow-management-client-workflow-task-popover.component-Y9rWe3O6.mjs.map → acorex-platform-module-workflow-management-client-workflow-task-popover.component-BDhOlDkg.mjs.map} +1 -1
  38. package/fesm2022/acorex-platform-module-workflow-management-client.mjs +1 -1
  39. package/package.json +2 -2
  40. package/types/acorex-platform-module-workflow-management-client-contracts.d.ts +8 -2
  41. package/types/acorex-platform-module-workflow-management-client.d.ts +13 -0
  42. package/fesm2022/acorex-platform-module-workflow-management-client-acorex-platform-module-workflow-management-client-CKudtLpx.mjs.map +0 -1
  43. package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entity-catalog-activity-category.entity-1EWdojoP.mjs.map +0 -1
  44. package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entity-catalog-activity-definition.entity-DYoF3vVe.mjs.map +0 -1
  45. package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entity-catalog-automation.entity-DbJeeZpQ.mjs.map +0 -1
  46. package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entity-catalog-workflow-definition.entity-BVSAGT0z.mjs.map +0 -1
  47. package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entity-catalog-workflow-instance.entity-BEA4WQX2.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-module-workflow-management-client-workflow-task-popover.component-Y9rWe3O6.mjs","sources":["../../../../libs/modules/workflow-management/client/src/lib/features/task-provider/workflow-task-popover.component.ts","../../../../libs/modules/workflow-management/client/src/lib/features/task-provider/workflow-task-popover.component.html"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXPContextChangeEvent, type AXPWidgetNode, AXPWidgetsList } from '@acorex-platform/framework-shared/core';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { AXSkeletonModule } from '@acorex/components/skeleton';\n\nimport { AXFormatService } from '@acorex/core/format';\nimport { AXLocaleService } from '@acorex/core/locale';\nimport {\n AXPTask,\n AXPTaskActionMenuItem,\n AXPTaskBoardService,\n AXPTaskPopoverComponent,\n AXPTaskPopoverMetadata,\n formatTaskI18nParamsForTranslate,\n getTaskTranslationKey,\n} from '@acorex-platform/module-task-management-client';\nimport { AXPSettingsService } from '@acorex-platform/framework-client/common';\nimport { AXPWidgetCoreModule, AXPWidgetSerializationHelper } from '@acorex-platform/framework-client/layout/widget-core';\nimport { AXMWorkflowManagementCommandKeys } from '../workflow-run-plugin/commands.keys';\n\nimport { AXTranslationModule, AXTranslationService } from '@acorex/core/translation';\n\nimport { CommonModule } from '@angular/common';\nimport { get } from 'lodash';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n CUSTOM_ELEMENTS_SCHEMA,\n effect,\n inject,\n input,\n signal,\n ViewEncapsulation,\n} from '@angular/core';\n\n//#endregion\n\n//#region ---- Types ----\n\n/**\n * Field definition for workflow task form (from payload.context._fields).\n */\ninterface WorkflowTaskFormField {\n name: string;\n label?: string;\n type?: 'string' | 'number' | 'date' | 'boolean' | 'text';\n value?: unknown;\n placeholder?: string;\n}\n\n/**\n * Payload shape for human-task bookmark (context, actions, optional layout).\n */\ninterface HumanTaskPayload {\n activityName?: string;\n dueDate?: string | Date | null;\n context?: Record<string, unknown> & { _fields?: WorkflowTaskFormField[] };\n actions?: { prefix?: unknown[]; suffix?: unknown[] };\n layout?: string;\n}\n\n//#endregion\n\n//#region ---- Component ----\n\n@Component({\n selector: 'axm-workflow-task-popover',\n templateUrl: './workflow-task-popover.component.html',\n styleUrls: ['./workflow-task-popover.component.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n imports: [\n AXPWidgetCoreModule,\n AXButtonModule,\n AXDecoratorModule,\n AXDropdownModule,\n AXSkeletonModule,\n CommonModule,\n AXTranslationModule,\n ],\n})\nexport class AXMWorkflowTaskPopoverComponent extends AXPTaskPopoverComponent {\n //#region ---- Inputs ----\n\n task = input.required<AXPTask>();\n\n //#endregion\n\n //#region ---- Services & Dependencies ----\n\n private readonly taskBoardService = inject(AXPTaskBoardService);\n private readonly localeService = inject(AXLocaleService);\n private readonly formatService = inject(AXFormatService);\n private readonly settingsService = inject(AXPSettingsService);\n private readonly translationService = inject(AXTranslationService);\n\n protected readonly i18nParams = signal<Record<string, string>>({});\n protected readonly descriptionKey = computed(() => getTaskTranslationKey(this.task(), 'description'));\n\n private readonly i18nParamsEffect = effect(() => {\n const task = this.task();\n void this.localeService.activeProfile().localeInfo?.code;\n const raw = get(task.data, 'taskI18nParams') as Record<string, unknown> | undefined;\n void formatTaskI18nParamsForTranslate(\n raw,\n this.translationService,\n this.formatService,\n this.settingsService,\n ).then((params) => this.i18nParams.set(params));\n });\n\n //#endregion\n\n //#region ---- Popover metadata (from provider) ----\n\n protected readonly isLoadingMetadata = signal(false);\n protected readonly popoverMetadata = signal<AXPTaskPopoverMetadata | null>(null);\n\n /** Placeholder rows for the metadata loading skeleton. */\n protected readonly loadingSkeletonRows = [1, 2, 3, 4, 5, 6] as const;\n\n protected readonly metadataFields = computed(() => this.popoverMetadata()?.fields ?? []);\n protected readonly metadataContext = computed(() => this.popoverMetadata()?.context ?? {});\n\n //#endregion\n\n //#region ---- Payload ----\n\n protected readonly bookmarkPayload = computed((): HumanTaskPayload | null => {\n const data = this.task()?.data as { payload?: HumanTaskPayload } | undefined;\n const payload = data?.payload;\n return payload && typeof payload === 'object' ? payload : null;\n });\n\n //#endregion\n\n //#region ---- Form context (for userInput on resume) ----\n\n /** Current form values; passed as userInput when executing an action. */\n protected readonly formValues = signal<Record<string, unknown>>({});\n\n protected onFormContextChanged(event: AXPContextChangeEvent): void {\n const data = event?.data;\n if (data && typeof data === 'object') {\n const filtered: Record<string, unknown> = {};\n for (const [key, value] of Object.entries(data)) {\n if (key !== 'task' && key !== '_fields') filtered[key] = value;\n }\n this.formValues.set(filtered);\n }\n }\n\n //#endregion\n\n //#region ---- Content node from payload.layout or payload.context ----\n\n protected readonly contentNode = computed<AXPWidgetNode | null>(() => {\n const t = this.task();\n const taskData = t?.data as { payload?: HumanTaskPayload } | undefined;\n const payload = taskData?.payload;\n const layoutStr = payload?.layout;\n if (typeof layoutStr === 'string' && layoutStr.trim().length > 0) {\n try {\n return AXPWidgetSerializationHelper.fromJson(layoutStr);\n } catch {\n return null;\n }\n }\n const context = payload?.context;\n const fields =\n context && typeof context === 'object' && Array.isArray((context as { _fields?: unknown })._fields)\n ? ((context as { _fields: WorkflowTaskFormField[] })._fields)\n : null;\n\n if (!fields || fields.length === 0) return null;\n\n const children: AXPWidgetNode[] = fields.map((f) => ({\n type: 'grid-item-layout',\n name: f.name,\n options: { colSpan: 12 },\n children: [\n {\n type: 'form-field',\n options: {\n label: f.label ?? f.name,\n showLabel: true,\n },\n children: [this.buildWidgetNode(f)],\n },\n ],\n }));\n\n return {\n type: 'grid-layout',\n mode: 'edit',\n options: {\n grid: {\n default: {\n columns: 'repeat(12, 1fr)',\n rows: 'repeat(1, 1fr)',\n gap: '12px',\n },\n },\n },\n children,\n };\n });\n\n private buildWidgetNode(f: WorkflowTaskFormField): AXPWidgetNode {\n const type = (f.type ?? 'string').toLowerCase();\n const path = f.name;\n const defaultValue = f.value;\n\n switch (type) {\n case 'number':\n return {\n type: AXPWidgetsList.Editors.NumberBox,\n path,\n name: path,\n defaultValue,\n options: {},\n };\n case 'date':\n return {\n type: AXPWidgetsList.Editors.DateTimeBox,\n path,\n name: path,\n defaultValue,\n options: { showTime: true },\n };\n case 'boolean':\n return {\n type: AXPWidgetsList.Editors.CheckBox,\n path,\n name: path,\n defaultValue: Boolean(defaultValue),\n options: {},\n };\n case 'text':\n return {\n type: AXPWidgetsList.Editors.LargeTextBox,\n path,\n name: path,\n defaultValue,\n options: { rows: 3, placeholder: f.placeholder },\n };\n default:\n return {\n type: AXPWidgetsList.Editors.TextBox,\n path,\n name: path,\n defaultValue,\n options: { placeholder: f.placeholder },\n };\n }\n }\n\n protected readonly popoverContext = computed<Record<string, unknown>>(() => {\n const t = this.task();\n const payload = (t?.data as { payload?: HumanTaskPayload })?.payload;\n const ctx = payload?.context;\n const base: Record<string, unknown> = ctx && typeof ctx === 'object' ? { ...ctx } : {};\n base['task'] = t;\n const fields = Array.isArray(base['_fields']) ? (base['_fields'] as WorkflowTaskFormField[]) : [];\n for (const f of fields) {\n if (f.name && !(f.name in base)) base[f.name] = f.value;\n }\n return base;\n });\n\n //#endregion\n\n //#region ---- Actions ----\n\n protected readonly taskActions = signal<AXPTaskActionMenuItem[]>([]);\n\n protected readonly primaryActions = computed(() =>\n this.taskActions().filter((a) => (a.priority ?? 'secondary') === 'primary'),\n );\n\n protected readonly secondaryActions = computed(() =>\n this.taskActions().filter((a) => (a.priority ?? 'secondary') === 'secondary'),\n );\n\n constructor() {\n super();\n effect((onCleanup) => {\n const t = this.task();\n if (!t?.provider) {\n this.popoverMetadata.set(null);\n this.isLoadingMetadata.set(false);\n this.taskActions.set([]);\n return;\n }\n\n const provider = this.taskBoardService.getProvider(t.provider);\n if (!provider) {\n this.popoverMetadata.set(null);\n this.isLoadingMetadata.set(false);\n this.taskActions.set([]);\n return;\n }\n\n let cancelled = false;\n onCleanup(() => {\n cancelled = true;\n });\n\n if (typeof provider.getPopoverMetadata === 'function') {\n this.isLoadingMetadata.set(true);\n this.popoverMetadata.set(null);\n void provider.getPopoverMetadata(t).then(\n (metadata) => {\n if (!cancelled) {\n this.popoverMetadata.set(metadata);\n this.isLoadingMetadata.set(false);\n }\n },\n () => {\n if (!cancelled) {\n this.popoverMetadata.set(null);\n this.isLoadingMetadata.set(false);\n }\n },\n );\n } else {\n this.popoverMetadata.set(null);\n this.isLoadingMetadata.set(false);\n }\n\n void provider.getActions(t).then((actions) => {\n if (!cancelled) {\n this.taskActions.set(actions);\n }\n });\n });\n }\n\n protected getActionColor(action: AXPTaskActionMenuItem): string | null {\n return (action.color as string) ?? null;\n }\n\n protected async executeAction(action: AXPTaskActionMenuItem): Promise<void> {\n const t = this.task();\n if (!t || !action.command || !t.provider) return;\n const userInput = this.formValues();\n const command = {\n ...action.command,\n options: {\n ...action.command.options,\n userInput:\n userInput && Object.keys(userInput).length > 0 ? userInput : (action.command.options?.['userInput'] ?? {}),\n },\n };\n const keepPopoverOpen = command.name === AXMWorkflowManagementCommandKeys.WorkflowRun.ShowHistory;\n try {\n await this.taskBoardService.executeCommand(command, t.provider);\n } catch (error) {\n console.error('[WorkflowTaskPopover] executeAction failed:', error);\n } finally {\n if (!keepPopoverOpen) {\n this.refreshPopover();\n this.closePopover();\n }\n }\n }\n\n //#endregion\n}\n\n//#endregion\n","<div class=\"workflow-task-popover\">\n @if (isLoadingMetadata()) {\n <div class=\"workflow-task-popover__metadata\">\n @for (row of loadingSkeletonRows; track row) {\n <div class=\"__row __row--loading\">\n <ax-skeleton [animated]=\"true\" class=\"__skeleton-label\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"__skeleton-value\"></ax-skeleton>\n </div>\n }\n </div>\n } @else if (metadataFields().length > 0) {\n <div class=\"workflow-task-popover__metadata\">\n <axp-widgets-container [context]=\"metadataContext()\">\n @for (item of metadataFields(); track item.name) {\n <div class=\"__row\">\n <span class=\"__label\">{{ item.title | translate | async }}:</span>\n <div class=\"__value\">\n <ng-container axp-widget-renderer [node]=\"item.node\" [mode]=\"'view'\"></ng-container>\n </div>\n </div>\n }\n </axp-widgets-container>\n </div>\n }\n\n <axp-widgets-container [context]=\"popoverContext()\" (onContextChanged)=\"onFormContextChanged($event)\"\n class=\"workflow-task-popover__content\">\n @if (contentNode(); as node) {\n <ng-container axp-widget-renderer [node]=\"node\" [mode]=\"'edit'\"></ng-container>\n } @else {\n <div class=\"workflow-task-popover__fallback\">\n @if (descriptionKey(); as key) {\n <p class=\"task-popover__description\">{{ key | translate: { params: i18nParams() } | async }}</p>\n } @else if (task().description) {\n <p class=\"task-popover__description\">{{ task().description }}</p>\n }\n </div>\n }\n </axp-widgets-container>\n\n @if (taskActions().length > 0) {\n <div class=\"workflow-task-popover__actions ax-sm\">\n @if (primaryActions().length > 0) {\n @for (action of primaryActions(); track action.name || action.title) {\n <ax-button [look]=\"'solid'\" [color]=\"getActionColor(action)\" (onClick)=\"executeAction(action)\"\n [disabled]=\"action.disabled === true\" [text]=\"(action.title | translate | async)!\">\n @if (action.icon) {\n <ax-prefix>\n <ax-icon>\n <i [class]=\"action.icon\"></i>\n </ax-icon>\n </ax-prefix>\n }\n </ax-button>\n }\n }\n\n @if (secondaryActions().length > 0) {\n <ax-button class=\"workflow-task-popover__more-btn\" [look]=\"'blank'\" [color]=\"'default'\" [iconOnly]=\"true\"\n [attr.aria-label]=\"('@workflow-management:tasks.popover.more' | translate | async) ?? ''\">\n <ax-icon icon=\"fa-light fa-ellipsis-vertical\"></ax-icon>\n <ax-dropdown-panel>\n <ax-button-item-list>\n @for (action of secondaryActions(); track action.name || action.title) {\n <ax-button-item [text]=\"(action.title | translate | async)!\" [disabled]=\"action.disabled === true\"\n (onClick)=\"executeAction(action)\">\n @if (action.icon) {\n <ax-prefix>\n <ax-icon>\n <i [class]=\"action.icon\"></i>\n </ax-icon>\n </ax-prefix>\n }\n </ax-button-item>\n }\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n }\n </div>\n }\n</div>"],"names":["i3","i4","i6"],"mappings":"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"}
1
+ {"version":3,"file":"acorex-platform-module-workflow-management-client-workflow-task-popover.component-BDhOlDkg.mjs","sources":["../../../../libs/modules/workflow-management/client/src/lib/features/task-provider/workflow-task-popover.component.ts","../../../../libs/modules/workflow-management/client/src/lib/features/task-provider/workflow-task-popover.component.html"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXPContextChangeEvent, type AXPWidgetNode, AXPWidgetsList } from '@acorex-platform/framework-shared/core';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { AXSkeletonModule } from '@acorex/components/skeleton';\n\nimport { AXFormatService } from '@acorex/core/format';\nimport { AXLocaleService } from '@acorex/core/locale';\nimport {\n AXPTask,\n AXPTaskActionMenuItem,\n AXPTaskBoardService,\n AXPTaskPopoverComponent,\n AXPTaskPopoverMetadata,\n formatTaskI18nParamsForTranslate,\n getTaskTranslationKey,\n} from '@acorex-platform/module-task-management-client';\nimport { AXPSettingsService } from '@acorex-platform/framework-client/common';\nimport { AXPWidgetCoreModule, AXPWidgetSerializationHelper } from '@acorex-platform/framework-client/layout/widget-core';\nimport { AXMWorkflowManagementCommandKeys } from '../workflow-run-plugin/commands.keys';\n\nimport { AXTranslationModule, AXTranslationService } from '@acorex/core/translation';\n\nimport { CommonModule } from '@angular/common';\nimport { get } from 'lodash';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n CUSTOM_ELEMENTS_SCHEMA,\n effect,\n inject,\n input,\n signal,\n ViewEncapsulation,\n} from '@angular/core';\n\n//#endregion\n\n//#region ---- Types ----\n\n/**\n * Field definition for workflow task form (from payload.context._fields).\n */\ninterface WorkflowTaskFormField {\n name: string;\n label?: string;\n type?: 'string' | 'number' | 'date' | 'boolean' | 'text';\n value?: unknown;\n placeholder?: string;\n}\n\n/**\n * Payload shape for human-task bookmark (context, actions, optional layout).\n */\ninterface HumanTaskPayload {\n activityName?: string;\n dueDate?: string | Date | null;\n context?: Record<string, unknown> & { _fields?: WorkflowTaskFormField[] };\n actions?: { prefix?: unknown[]; suffix?: unknown[] };\n layout?: string;\n}\n\n//#endregion\n\n//#region ---- Component ----\n\n@Component({\n selector: 'axm-workflow-task-popover',\n templateUrl: './workflow-task-popover.component.html',\n styleUrls: ['./workflow-task-popover.component.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n imports: [\n AXPWidgetCoreModule,\n AXButtonModule,\n AXDecoratorModule,\n AXDropdownModule,\n AXSkeletonModule,\n CommonModule,\n AXTranslationModule,\n ],\n})\nexport class AXMWorkflowTaskPopoverComponent extends AXPTaskPopoverComponent {\n //#region ---- Inputs ----\n\n task = input.required<AXPTask>();\n\n //#endregion\n\n //#region ---- Services & Dependencies ----\n\n private readonly taskBoardService = inject(AXPTaskBoardService);\n private readonly localeService = inject(AXLocaleService);\n private readonly formatService = inject(AXFormatService);\n private readonly settingsService = inject(AXPSettingsService);\n private readonly translationService = inject(AXTranslationService);\n\n protected readonly i18nParams = signal<Record<string, string>>({});\n protected readonly descriptionKey = computed(() => getTaskTranslationKey(this.task(), 'description'));\n\n private readonly i18nParamsEffect = effect(() => {\n const task = this.task();\n void this.localeService.activeProfile().localeInfo?.code;\n const raw = get(task.data, 'taskI18nParams') as Record<string, unknown> | undefined;\n void formatTaskI18nParamsForTranslate(\n raw,\n this.translationService,\n this.formatService,\n this.settingsService,\n ).then((params) => this.i18nParams.set(params));\n });\n\n //#endregion\n\n //#region ---- Popover metadata (from provider) ----\n\n protected readonly isLoadingMetadata = signal(false);\n protected readonly popoverMetadata = signal<AXPTaskPopoverMetadata | null>(null);\n\n /** Placeholder rows for the metadata loading skeleton. */\n protected readonly loadingSkeletonRows = [1, 2, 3, 4, 5, 6] as const;\n\n protected readonly metadataFields = computed(() => this.popoverMetadata()?.fields ?? []);\n protected readonly metadataContext = computed(() => this.popoverMetadata()?.context ?? {});\n\n //#endregion\n\n //#region ---- Payload ----\n\n protected readonly bookmarkPayload = computed((): HumanTaskPayload | null => {\n const data = this.task()?.data as { payload?: HumanTaskPayload } | undefined;\n const payload = data?.payload;\n return payload && typeof payload === 'object' ? payload : null;\n });\n\n //#endregion\n\n //#region ---- Form context (for userInput on resume) ----\n\n /** Current form values; passed as userInput when executing an action. */\n protected readonly formValues = signal<Record<string, unknown>>({});\n\n protected onFormContextChanged(event: AXPContextChangeEvent): void {\n const data = event?.data;\n if (data && typeof data === 'object') {\n const filtered: Record<string, unknown> = {};\n for (const [key, value] of Object.entries(data)) {\n if (key !== 'task' && key !== '_fields') filtered[key] = value;\n }\n this.formValues.set(filtered);\n }\n }\n\n //#endregion\n\n //#region ---- Content node from payload.layout or payload.context ----\n\n protected readonly contentNode = computed<AXPWidgetNode | null>(() => {\n const t = this.task();\n const taskData = t?.data as { payload?: HumanTaskPayload } | undefined;\n const payload = taskData?.payload;\n const layoutStr = payload?.layout;\n if (typeof layoutStr === 'string' && layoutStr.trim().length > 0) {\n try {\n return AXPWidgetSerializationHelper.fromJson(layoutStr);\n } catch {\n return null;\n }\n }\n const context = payload?.context;\n const fields =\n context && typeof context === 'object' && Array.isArray((context as { _fields?: unknown })._fields)\n ? ((context as { _fields: WorkflowTaskFormField[] })._fields)\n : null;\n\n if (!fields || fields.length === 0) return null;\n\n const children: AXPWidgetNode[] = fields.map((f) => ({\n type: 'grid-item-layout',\n name: f.name,\n options: { colSpan: 12 },\n children: [\n {\n type: 'form-field',\n options: {\n label: f.label ?? f.name,\n showLabel: true,\n },\n children: [this.buildWidgetNode(f)],\n },\n ],\n }));\n\n return {\n type: 'grid-layout',\n mode: 'edit',\n options: {\n grid: {\n default: {\n columns: 'repeat(12, 1fr)',\n rows: 'repeat(1, 1fr)',\n gap: '12px',\n },\n },\n },\n children,\n };\n });\n\n private buildWidgetNode(f: WorkflowTaskFormField): AXPWidgetNode {\n const type = (f.type ?? 'string').toLowerCase();\n const path = f.name;\n const defaultValue = f.value;\n\n switch (type) {\n case 'number':\n return {\n type: AXPWidgetsList.Editors.NumberBox,\n path,\n name: path,\n defaultValue,\n options: {},\n };\n case 'date':\n return {\n type: AXPWidgetsList.Editors.DateTimeBox,\n path,\n name: path,\n defaultValue,\n options: { showTime: true },\n };\n case 'boolean':\n return {\n type: AXPWidgetsList.Editors.CheckBox,\n path,\n name: path,\n defaultValue: Boolean(defaultValue),\n options: {},\n };\n case 'text':\n return {\n type: AXPWidgetsList.Editors.LargeTextBox,\n path,\n name: path,\n defaultValue,\n options: { rows: 3, placeholder: f.placeholder },\n };\n default:\n return {\n type: AXPWidgetsList.Editors.TextBox,\n path,\n name: path,\n defaultValue,\n options: { placeholder: f.placeholder },\n };\n }\n }\n\n protected readonly popoverContext = computed<Record<string, unknown>>(() => {\n const t = this.task();\n const payload = (t?.data as { payload?: HumanTaskPayload })?.payload;\n const ctx = payload?.context;\n const base: Record<string, unknown> = ctx && typeof ctx === 'object' ? { ...ctx } : {};\n base['task'] = t;\n const fields = Array.isArray(base['_fields']) ? (base['_fields'] as WorkflowTaskFormField[]) : [];\n for (const f of fields) {\n if (f.name && !(f.name in base)) base[f.name] = f.value;\n }\n return base;\n });\n\n //#endregion\n\n //#region ---- Actions ----\n\n protected readonly taskActions = signal<AXPTaskActionMenuItem[]>([]);\n\n protected readonly primaryActions = computed(() =>\n this.taskActions().filter((a) => (a.priority ?? 'secondary') === 'primary'),\n );\n\n protected readonly secondaryActions = computed(() =>\n this.taskActions().filter((a) => (a.priority ?? 'secondary') === 'secondary'),\n );\n\n constructor() {\n super();\n effect((onCleanup) => {\n const t = this.task();\n if (!t?.provider) {\n this.popoverMetadata.set(null);\n this.isLoadingMetadata.set(false);\n this.taskActions.set([]);\n return;\n }\n\n const provider = this.taskBoardService.getProvider(t.provider);\n if (!provider) {\n this.popoverMetadata.set(null);\n this.isLoadingMetadata.set(false);\n this.taskActions.set([]);\n return;\n }\n\n let cancelled = false;\n onCleanup(() => {\n cancelled = true;\n });\n\n if (typeof provider.getPopoverMetadata === 'function') {\n this.isLoadingMetadata.set(true);\n this.popoverMetadata.set(null);\n void provider.getPopoverMetadata(t).then(\n (metadata) => {\n if (!cancelled) {\n this.popoverMetadata.set(metadata);\n this.isLoadingMetadata.set(false);\n }\n },\n () => {\n if (!cancelled) {\n this.popoverMetadata.set(null);\n this.isLoadingMetadata.set(false);\n }\n },\n );\n } else {\n this.popoverMetadata.set(null);\n this.isLoadingMetadata.set(false);\n }\n\n void provider.getActions(t).then((actions) => {\n if (!cancelled) {\n this.taskActions.set(actions);\n }\n });\n });\n }\n\n protected getActionColor(action: AXPTaskActionMenuItem): string | null {\n return (action.color as string) ?? null;\n }\n\n protected async executeAction(action: AXPTaskActionMenuItem): Promise<void> {\n const t = this.task();\n if (!t || !action.command || !t.provider) return;\n const userInput = this.formValues();\n const command = {\n ...action.command,\n options: {\n ...action.command.options,\n userInput:\n userInput && Object.keys(userInput).length > 0 ? userInput : (action.command.options?.['userInput'] ?? {}),\n },\n };\n const keepPopoverOpen = command.name === AXMWorkflowManagementCommandKeys.WorkflowRun.ShowHistory;\n try {\n await this.taskBoardService.executeCommand(command, t.provider);\n } catch (error) {\n console.error('[WorkflowTaskPopover] executeAction failed:', error);\n } finally {\n if (!keepPopoverOpen) {\n this.refreshPopover();\n this.closePopover();\n }\n }\n }\n\n //#endregion\n}\n\n//#endregion\n","<div class=\"workflow-task-popover\">\n @if (isLoadingMetadata()) {\n <div class=\"workflow-task-popover__metadata\">\n @for (row of loadingSkeletonRows; track row) {\n <div class=\"__row __row--loading\">\n <ax-skeleton [animated]=\"true\" class=\"__skeleton-label\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"__skeleton-value\"></ax-skeleton>\n </div>\n }\n </div>\n } @else if (metadataFields().length > 0) {\n <div class=\"workflow-task-popover__metadata\">\n <axp-widgets-container [context]=\"metadataContext()\">\n @for (item of metadataFields(); track item.name) {\n <div class=\"__row\">\n <span class=\"__label\">{{ item.title | translate | async }}:</span>\n <div class=\"__value\">\n <ng-container axp-widget-renderer [node]=\"item.node\" [mode]=\"'view'\"></ng-container>\n </div>\n </div>\n }\n </axp-widgets-container>\n </div>\n }\n\n <axp-widgets-container [context]=\"popoverContext()\" (onContextChanged)=\"onFormContextChanged($event)\"\n class=\"workflow-task-popover__content\">\n @if (contentNode(); as node) {\n <ng-container axp-widget-renderer [node]=\"node\" [mode]=\"'edit'\"></ng-container>\n } @else {\n <div class=\"workflow-task-popover__fallback\">\n @if (descriptionKey(); as key) {\n <p class=\"task-popover__description\">{{ key | translate: { params: i18nParams() } | async }}</p>\n } @else if (task().description) {\n <p class=\"task-popover__description\">{{ task().description }}</p>\n }\n </div>\n }\n </axp-widgets-container>\n\n @if (taskActions().length > 0) {\n <div class=\"workflow-task-popover__actions ax-sm\">\n @if (primaryActions().length > 0) {\n @for (action of primaryActions(); track action.name || action.title) {\n <ax-button [look]=\"'solid'\" [color]=\"getActionColor(action)\" (onClick)=\"executeAction(action)\"\n [disabled]=\"action.disabled === true\" [text]=\"(action.title | translate | async)!\">\n @if (action.icon) {\n <ax-prefix>\n <ax-icon>\n <i [class]=\"action.icon\"></i>\n </ax-icon>\n </ax-prefix>\n }\n </ax-button>\n }\n }\n\n @if (secondaryActions().length > 0) {\n <ax-button class=\"workflow-task-popover__more-btn\" [look]=\"'blank'\" [color]=\"'default'\" [iconOnly]=\"true\"\n [attr.aria-label]=\"('@workflow-management:tasks.popover.more' | translate | async) ?? ''\">\n <ax-icon icon=\"fa-light fa-ellipsis-vertical\"></ax-icon>\n <ax-dropdown-panel>\n <ax-button-item-list>\n @for (action of secondaryActions(); track action.name || action.title) {\n <ax-button-item [text]=\"(action.title | translate | async)!\" [disabled]=\"action.disabled === true\"\n (onClick)=\"executeAction(action)\">\n @if (action.icon) {\n <ax-prefix>\n <ax-icon>\n <i [class]=\"action.icon\"></i>\n </ax-icon>\n </ax-prefix>\n }\n </ax-button-item>\n }\n </ax-button-item-list>\n </ax-dropdown-panel>\n </ax-button>\n }\n </div>\n }\n</div>"],"names":["i3","i4","i6"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export { e as AXCCategoryProvider, f as AXMMenuProvider, g as AXMWorkflowActivitiesDefinitionProvider, h as AXMWorkflowManagementModule, j as AXPCreateEntityActivity, k as AXPGenericWorkflowTaskProvider, A as AXPWorkflowInstanceHumanTaskService, l as AXPWorkflowTaskContinuationService, m as AXPWorkflowTaskInstanceQueryService, o as AXP_GENERIC_WORKFLOW_TASK_PROVIDER_CONFIG, C as CartableTaskActivity, p as CreateEntityFormActivity, H as HumanTaskActivity, R as RejectionReasonActivity, S as ShowConfirmPopupActivity, q as ShowLayoutPopupActivity, s as ShowToastActivity, t as SignOffActivity, c as createWorkflowInstanceBookmarkAccess, u as discoverWorkflowTaskProviders, v as findActiveHumanTaskAssigneeId, w as findHumanTaskAssigneeIdForActivity, x as getWorkflowInstanceInitiatorUserId, i as isWorkflowPooledClaimablePayload, y as isWorkflowReassignableHumanTaskPayload, z as isWorkflowTaskBoardBookmarkPayload, B as needsTakeOverForWorkflowInteractiveContinuation, D as needsTakeOverForWorkflowTaskContinuation, n as normalizeWorkflowTaskUserIds, E as parseWorkflowTaskContinuationPayload, F as resolveWorkflowHumanTaskAssigneeId, G as resolveWorkflowInitiatorUserIdFromVariables, I as resolveWorkflowTaskContinuationAssigneeId, J as shouldOfferWorkflowContinuationAfterStep, K as shouldOfferWorkflowInteractiveStepContinuation, L as shouldOfferWorkflowTaskContinuation, M as shouldSkipContinuationBeforeInteractive, N as wasWorkflowTaskBoardActivity } from './acorex-platform-module-workflow-management-client-acorex-platform-module-workflow-management-client-CKudtLpx.mjs';
1
+ export { e as AXCCategoryProvider, f as AXMMenuProvider, g as AXMWorkflowActivitiesDefinitionProvider, h as AXMWorkflowManagementModule, j as AXPCreateEntityActivity, k as AXPGenericWorkflowTaskProvider, A as AXPWorkflowInstanceHumanTaskService, l as AXPWorkflowTaskContinuationService, m as AXPWorkflowTaskInstanceQueryService, o as AXP_GENERIC_WORKFLOW_TASK_PROVIDER_CONFIG, C as CartableTaskActivity, p as CreateEntityFormActivity, H as HumanTaskActivity, R as RejectionReasonActivity, S as ShowConfirmPopupActivity, q as ShowLayoutPopupActivity, s as ShowToastActivity, t as SignOffActivity, c as createWorkflowInstanceBookmarkAccess, u as discoverWorkflowTaskProviders, v as findActiveHumanTaskAssigneeId, w as findHumanTaskAssigneeIdForActivity, x as getWorkflowInstanceInitiatorUserId, i as isWorkflowPooledClaimablePayload, y as isWorkflowReassignableHumanTaskPayload, z as isWorkflowTaskBoardBookmarkPayload, B as needsTakeOverForWorkflowInteractiveContinuation, D as needsTakeOverForWorkflowTaskContinuation, n as normalizeWorkflowTaskUserIds, E as parseWorkflowTaskContinuationPayload, F as resolveWorkflowHumanTaskAssigneeId, G as resolveWorkflowInitiatorUserIdFromVariables, I as resolveWorkflowTaskContinuationAssigneeId, J as shouldOfferWorkflowContinuationAfterStep, K as shouldOfferWorkflowInteractiveStepContinuation, L as shouldOfferWorkflowTaskContinuation, M as shouldSkipContinuationBeforeInteractive, N as wasWorkflowTaskBoardActivity } from './acorex-platform-module-workflow-management-client-acorex-platform-module-workflow-management-client-mxu-pura.mjs';
2
2
  //# sourceMappingURL=acorex-platform-module-workflow-management-client.mjs.map
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@acorex-platform/module-workflow-management-client",
3
- "version": "0.0.38",
3
+ "version": "0.0.48",
4
4
  "sideEffects": false,
5
5
  "peerDependencies": {
6
- "@acorex-platform/module-dashboard-management-client": "0.0.38",
6
+ "@acorex-platform/module-dashboard-management-client": "0.0.48",
7
7
  "@angular/common": "^21.0.0 || ^22.0.0",
8
8
  "@angular/core": "^21.0.0 || ^22.0.0"
9
9
  },
@@ -1,4 +1,4 @@
1
- import { AXPActivityCategory, AXPActivityDefinition, AXPFilterClause, AXPWorkflowDefinition, AXPMultiLanguageString, AXPWorkflowStatus, AXPWorkflowSubStatus, AXPWorkflowInstance } from '@acorex-platform/framework-shared/core';
1
+ import { AXPModuleManifest, AXPActivityCategory, AXPActivityDefinition, AXPFilterClause, AXPWorkflowDefinition, AXPMultiLanguageString, AXPWorkflowStatus, AXPWorkflowSubStatus, AXPWorkflowInstance } from '@acorex-platform/framework-shared/core';
2
2
  import { AXPEntityModel } from '@acorex-platform/framework-shared/entity';
3
3
 
4
4
  declare const AXPWorkflowManagementMenuKeys: {
@@ -122,6 +122,12 @@ declare const RootConfig: {
122
122
  };
123
123
  };
124
124
 
125
+ /**
126
+ * Workflow Management Module Manifest.
127
+ * Defines module metadata, features, and provider references.
128
+ */
129
+ declare const WorkflowManagementManifest: AXPModuleManifest;
130
+
125
131
  /** Component key for the Workflow Instance Activity instances tab. Register via AXP_PAGE_COMPONENT_PROVIDER. */
126
132
  declare const WORKFLOW_INSTANCE_ACTIVITY_INSTANCES_PAGE_COMPONENT_KEY = "workflow-instance-activity-instances-page";
127
133
 
@@ -337,5 +343,5 @@ interface AXMWorkflowManagementWorkflowInstanceEntityModel extends AXPEntityMode
337
343
  };
338
344
  }
339
345
 
340
- export { AXMPermissionsKeys, AXPAdministrationPermissionKeys, AXPWorkflowManagementMenuKeys, AXP_WORKFLOW_TASK_CONTEXT_I18N_KEY, AXP_WORKFLOW_TASK_CONTEXT_TITLE_PARTS_KEY, RootConfig, WORKFLOW_DEFINITION_ACTIVITIES_PAGE_COMPONENT_KEY, WORKFLOW_INSTANCE_ACTIVITY_INSTANCES_PAGE_COMPONENT_KEY };
346
+ export { AXMPermissionsKeys, AXPAdministrationPermissionKeys, AXPWorkflowManagementMenuKeys, AXP_WORKFLOW_TASK_CONTEXT_I18N_KEY, AXP_WORKFLOW_TASK_CONTEXT_TITLE_PARTS_KEY, RootConfig, WORKFLOW_DEFINITION_ACTIVITIES_PAGE_COMPONENT_KEY, WORKFLOW_INSTANCE_ACTIVITY_INSTANCES_PAGE_COMPONENT_KEY, WorkflowManagementManifest };
341
347
  export type { AXMWorkflowManagementActivityCategoryEntityModel, AXMWorkflowManagementActivityDefinitionEntityModel, AXMWorkflowManagementAutomationEntityModel, AXMWorkflowManagementWorkflowDefinitionEntityModel, AXMWorkflowManagementWorkflowInstanceEntityModel };
@@ -396,6 +396,14 @@ interface SignOffActivityInput {
396
396
  refId?: string;
397
397
  /** Optional entity type key (`Module.Entity`). */
398
398
  refType?: string;
399
+ /** Signature capture mode. Defaults to inline so the pad is the dialog field. */
400
+ captureMode?: 'inline' | 'popup';
401
+ /**
402
+ * Registered signature provider name.
403
+ * Defaults to the employee profile provider (`hcm-employee`).
404
+ * Pass an empty string to hide the saved-signature action.
405
+ */
406
+ signatureProvider?: string;
399
407
  }
400
408
  /** Output when the user completes or cancels sign-off. */
401
409
  interface SignOffActivityOutput {
@@ -416,6 +424,8 @@ declare class SignOffActivity implements AXPCommand<SignOffActivityInput, SignOf
416
424
  private readonly layoutBuilder;
417
425
  private readonly translationService;
418
426
  execute(input: SignOffActivityInput): AXPCommandExecuteResultPromise<SignOffActivityOutput>;
427
+ private resolveCaptureMode;
428
+ private resolveSignatureProvider;
419
429
  private showSignOffDialog;
420
430
  static ɵfac: i0.ɵɵFactoryDeclaration<SignOffActivity, never>;
421
431
  static ɵprov: i0.ɵɵInjectableDeclaration<SignOffActivity>;
@@ -655,6 +665,9 @@ declare class AXPGenericWorkflowTaskProvider extends AXPWorkflowTaskProvider<Rec
655
665
  private isReassignableHumanTaskPayload;
656
666
  private canTakeOverTask;
657
667
  private isWorkflowRunCommand;
668
+ /** Platform commands (`Module.Entity:Action`) must not resume the human-task bookmark. */
669
+ private isDelegatedPlatformCommand;
670
+ private resolveBookmarkContext;
658
671
  /**
659
672
  * Secondary popover menu: workflow run utilities (history, take over).
660
673
  */