@acorex-platform/module-workflow-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-workflow-management-client-acorex-platform-module-workflow-management-client-Ce2bU1tZ.mjs → acorex-platform-module-workflow-management-client-acorex-platform-module-workflow-management-client-DwHNK7p5.mjs} +84 -68
- package/fesm2022/acorex-platform-module-workflow-management-client-acorex-platform-module-workflow-management-client-DwHNK7p5.mjs.map +1 -0
- package/fesm2022/{acorex-platform-module-workflow-management-client-execute-workflow.command-Cd1vcrzK.mjs → acorex-platform-module-workflow-management-client-execute-workflow.command-D1AQsYgn.mjs} +9 -1
- package/fesm2022/{acorex-platform-module-workflow-management-client-execute-workflow.command-Cd1vcrzK.mjs.map → acorex-platform-module-workflow-management-client-execute-workflow.command-D1AQsYgn.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-workflow-management-client-index-DjvJZef8.mjs → acorex-platform-module-workflow-management-client-index-nljwSnXl.mjs} +11 -6
- package/fesm2022/{acorex-platform-module-workflow-management-client-index-DjvJZef8.mjs.map → acorex-platform-module-workflow-management-client-index-nljwSnXl.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-workflow-management-client-workflow-run-history-popup.component-DMdO3uX7.mjs → acorex-platform-module-workflow-management-client-workflow-run-history-popup.component-BI-h2j5i.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-workflow-management-client-workflow-run-history-popup.component-DMdO3uX7.mjs.map → acorex-platform-module-workflow-management-client-workflow-run-history-popup.component-BI-h2j5i.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-workflow-management-client-workflow-task-popover.component-Dmr9oHBd.mjs → acorex-platform-module-workflow-management-client-workflow-task-popover.component-Cmcd551i.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-workflow-management-client-workflow-task-popover.component-Dmr9oHBd.mjs.map → acorex-platform-module-workflow-management-client-workflow-task-popover.component-Cmcd551i.mjs.map} +1 -1
- package/fesm2022/acorex-platform-module-workflow-management-client.mjs +1 -1
- package/package.json +2 -2
- package/types/acorex-platform-module-workflow-management-client.d.ts +4 -1
- package/fesm2022/acorex-platform-module-workflow-management-client-acorex-platform-module-workflow-management-client-Ce2bU1tZ.mjs.map +0 -1
|
@@ -13,7 +13,7 @@ import { AXPTaskPopoverComponent, AXPTaskBoardService, getTaskTranslationKey, fo
|
|
|
13
13
|
import { AXPSettingsService } from '@acorex-platform/framework-client/common';
|
|
14
14
|
import * as i1 from '@acorex-platform/framework-client/layout/widget-core';
|
|
15
15
|
import { AXPWidgetSerializationHelper, AXPWidgetCoreModule } from '@acorex-platform/framework-client/layout/widget-core';
|
|
16
|
-
import { a as AXMWorkflowManagementCommandKeys } from './acorex-platform-module-workflow-management-client-acorex-platform-module-workflow-management-client-
|
|
16
|
+
import { a as AXMWorkflowManagementCommandKeys } from './acorex-platform-module-workflow-management-client-acorex-platform-module-workflow-management-client-DwHNK7p5.mjs';
|
|
17
17
|
import * as i7 from '@acorex/core/translation';
|
|
18
18
|
import { AXTranslationService, AXTranslationModule } from '@acorex/core/translation';
|
|
19
19
|
import * as i1$1 from '@angular/common';
|
|
@@ -297,4 +297,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
|
|
|
297
297
|
}], ctorParameters: () => [], propDecorators: { task: [{ type: i0.Input, args: [{ isSignal: true, alias: "task", required: true }] }] } });
|
|
298
298
|
|
|
299
299
|
export { AXMWorkflowTaskPopoverComponent };
|
|
300
|
-
//# sourceMappingURL=acorex-platform-module-workflow-management-client-workflow-task-popover.component-
|
|
300
|
+
//# sourceMappingURL=acorex-platform-module-workflow-management-client-workflow-task-popover.component-Cmcd551i.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-platform-module-workflow-management-client-workflow-task-popover.component-Dmr9oHBd.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-Cmcd551i.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-
|
|
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-DwHNK7p5.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.
|
|
3
|
+
"version": "0.0.58",
|
|
4
4
|
"sideEffects": false,
|
|
5
5
|
"peerDependencies": {
|
|
6
|
-
"@acorex-platform/module-dashboard-management-client": "0.0.
|
|
6
|
+
"@acorex-platform/module-dashboard-management-client": "0.0.58",
|
|
7
7
|
"@angular/common": "^21.0.0 || ^22.0.0",
|
|
8
8
|
"@angular/core": "^21.0.0 || ^22.0.0"
|
|
9
9
|
},
|
|
@@ -162,6 +162,7 @@ interface ShowLayoutPopupInput {
|
|
|
162
162
|
*/
|
|
163
163
|
declare class ShowLayoutPopupActivity implements AXPCommand<ShowLayoutPopupInput, Record<string, any>> {
|
|
164
164
|
private readonly popupService;
|
|
165
|
+
private readonly dialogOpener;
|
|
165
166
|
execute(input: ShowLayoutPopupInput): AXPCommandExecuteResultPromise<Record<string, any>>;
|
|
166
167
|
static ɵfac: i0.ɵɵFactoryDeclaration<ShowLayoutPopupActivity, never>;
|
|
167
168
|
static ɵprov: i0.ɵɵInjectableDeclaration<ShowLayoutPopupActivity>;
|
|
@@ -894,7 +895,7 @@ declare class AXPWorkflowTaskContinuationService implements AXPWorkflowContinuat
|
|
|
894
895
|
private readonly dialogService;
|
|
895
896
|
private readonly humanTaskService;
|
|
896
897
|
private readonly bookmarkAccess;
|
|
897
|
-
offerBeforeInteractiveFlow(
|
|
898
|
+
offerBeforeInteractiveFlow(_context: AXPWorkflowContinuationStepContext): Promise<AXPWorkflowContinuationOfferResult>;
|
|
898
899
|
offerAfterWorkflowStep(context: AXPWorkflowContinuationStepContext): Promise<AXPWorkflowContinuationOfferResult>;
|
|
899
900
|
private offerFromPendingNextTask;
|
|
900
901
|
private offerFromInstanceBookmarks;
|
|
@@ -902,6 +903,8 @@ declare class AXPWorkflowTaskContinuationService implements AXPWorkflowContinuat
|
|
|
902
903
|
private isCompletedBookmark;
|
|
903
904
|
private enrichPayloadFromInstance;
|
|
904
905
|
private buildPayloadFromWorkflowTask;
|
|
906
|
+
/** Next human task belongs to another user. Do not ask the starter to take it over. */
|
|
907
|
+
private isAssignedToSomeoneElse;
|
|
905
908
|
private confirmContinueToNextStep;
|
|
906
909
|
static ɵfac: i0.ɵɵFactoryDeclaration<AXPWorkflowTaskContinuationService, never>;
|
|
907
910
|
static ɵprov: i0.ɵɵInjectableDeclaration<AXPWorkflowTaskContinuationService>;
|