@acorex-platform/module-workflow-management-client 0.0.32 → 0.0.37
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-B_Sl7G2v.mjs → acorex-platform-module-workflow-management-client-acorex-platform-module-workflow-management-client-CKudtLpx.mjs} +14 -14
- package/fesm2022/{acorex-platform-module-workflow-management-client-acorex-platform-module-workflow-management-client-B_Sl7G2v.mjs.map → acorex-platform-module-workflow-management-client-acorex-platform-module-workflow-management-client-CKudtLpx.mjs.map} +1 -1
- package/fesm2022/acorex-platform-module-workflow-management-client-activity-command-configurator-widget-column.component-BPa0Sh6Z.mjs.map +1 -1
- package/fesm2022/acorex-platform-module-workflow-management-client-activity-command-configurator-widget-edit.component-DuYGXzAL.mjs.map +1 -1
- package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entities-activity-category.mjs +200 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entities-activity-category.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entities-activity-definition.mjs +333 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entities-activity-definition.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entities-automation.mjs +357 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entities-automation.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entities-workflow-definition.mjs +394 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entities-workflow-definition.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entities-workflow-instance.mjs +336 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entities-workflow-instance.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entity-catalog-acorex-platform-module-workflow-management-client-contracts-entity-catalog-DKDogTU7.mjs +103 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entity-catalog-acorex-platform-module-workflow-management-client-contracts-entity-catalog-DKDogTU7.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entity-catalog-activity-category.entity-1EWdojoP.mjs +120 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entity-catalog-activity-category.entity-1EWdojoP.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entity-catalog-activity-definition.entity-DYoF3vVe.mjs +253 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entity-catalog-activity-definition.entity-DYoF3vVe.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entity-catalog-automation.entity-DbJeeZpQ.mjs +277 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entity-catalog-automation.entity-DbJeeZpQ.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entity-catalog-workflow-definition.entity-BVSAGT0z.mjs +314 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entity-catalog-workflow-definition.entity-BVSAGT0z.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entity-catalog-workflow-instance.entity-BEA4WQX2.mjs +256 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entity-catalog-workflow-instance.entity-BEA4WQX2.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entity-catalog.mjs +2 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-contracts-entity-catalog.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-contracts.mjs.map +1 -1
- package/fesm2022/acorex-platform-module-workflow-management-client-execute-workflow-with-input.command-BFdyJ4rC.mjs.map +1 -1
- package/fesm2022/acorex-platform-module-workflow-management-client-execute-workflow.command-Cfdm1QAy.mjs.map +1 -1
- package/fesm2022/{acorex-platform-module-workflow-management-client-index-CttfExOC.mjs → acorex-platform-module-workflow-management-client-index-BKMDbQ8Z.mjs} +3 -3
- package/fesm2022/{acorex-platform-module-workflow-management-client-index-CttfExOC.mjs.map → acorex-platform-module-workflow-management-client-index-BKMDbQ8Z.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-workflow-management-client-index-DKZTLui4.mjs → acorex-platform-module-workflow-management-client-index-C3pkrctS.mjs} +2 -4
- package/fesm2022/acorex-platform-module-workflow-management-client-index-C3pkrctS.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-index-C8nsbDAw.mjs.map +1 -1
- package/fesm2022/acorex-platform-module-workflow-management-client-local-entities.mjs +33 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-local-entities.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-save-workflow-definition-activities.command-spFF77AO.mjs.map +1 -1
- package/fesm2022/acorex-platform-module-workflow-management-client-workflow-activity-instance-rows.utils-CMVZYS4y.mjs.map +1 -1
- package/fesm2022/acorex-platform-module-workflow-management-client-workflow-configurator-widget-column.component-D0E2zjIA.mjs.map +1 -1
- package/fesm2022/acorex-platform-module-workflow-management-client-workflow-configurator-widget-edit.component-CVTeOv-q.mjs.map +1 -1
- package/fesm2022/acorex-platform-module-workflow-management-client-workflow-live-dashboard.queries--9NtYkau.mjs.map +1 -1
- package/fesm2022/{acorex-platform-module-workflow-management-client-workflow-run-history-popup.component-BWOyivC5.mjs → acorex-platform-module-workflow-management-client-workflow-run-history-popup.component-DbeueT-X.mjs} +3 -3
- package/fesm2022/{acorex-platform-module-workflow-management-client-workflow-run-history-popup.component-BWOyivC5.mjs.map → acorex-platform-module-workflow-management-client-workflow-run-history-popup.component-DbeueT-X.mjs.map} +1 -1
- package/fesm2022/acorex-platform-module-workflow-management-client-workflow-run-history-timeline-tab.component-AnJ-Pywf.mjs.map +1 -1
- package/fesm2022/acorex-platform-module-workflow-management-client-workflow-run-history-visual-tab.component-Bw68Jwcb.mjs.map +1 -1
- package/fesm2022/{acorex-platform-module-workflow-management-client-workflow-task-popover.component-Cg4gODGo.mjs → acorex-platform-module-workflow-management-client-workflow-task-popover.component-Y9rWe3O6.mjs} +3 -3
- package/fesm2022/{acorex-platform-module-workflow-management-client-workflow-task-popover.component-Cg4gODGo.mjs.map → acorex-platform-module-workflow-management-client-workflow-task-popover.component-Y9rWe3O6.mjs.map} +1 -1
- package/fesm2022/acorex-platform-module-workflow-management-client.mjs +1 -1
- package/package.json +30 -2
- package/types/acorex-platform-module-workflow-management-client-contracts-entities-activity-category.d.ts +6 -0
- package/types/acorex-platform-module-workflow-management-client-contracts-entities-activity-definition.d.ts +5 -0
- package/types/acorex-platform-module-workflow-management-client-contracts-entities-automation.d.ts +5 -0
- package/types/acorex-platform-module-workflow-management-client-contracts-entities-workflow-definition.d.ts +5 -0
- package/types/acorex-platform-module-workflow-management-client-contracts-entities-workflow-instance.d.ts +5 -0
- package/types/acorex-platform-module-workflow-management-client-contracts-entity-catalog.d.ts +10 -0
- package/types/acorex-platform-module-workflow-management-client-local-entities.d.ts +12 -0
- package/fesm2022/acorex-platform-module-workflow-management-client-index-DKZTLui4.mjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-platform-module-workflow-management-client-activity-command-configurator-widget-column.component-BPa0Sh6Z.mjs","sources":["../../../../libs/modules/workflow-management/client/src/lib/features/activity-command-configurator/activity-command-configurator-widget-column.component.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { resolveMultiLanguageString } from '@acorex-platform/framework-shared/core';\nimport { AXPColumnWidgetComponent } from '@acorex-platform/framework-client/layout/widget-core';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n inject,\n} from '@angular/core';\nimport type { ActivityCommandValue } from './activity-command-configurator.types';\n\n//#endregion\n\n//#region ---- Component ----\n\n@Component({\n selector: 'axm-activity-command-configurator-widget-column',\n template: `\n @if (displayTitle()) {\n <span [title]=\"displayTitle()\" class=\"text-xs font-medium\">{{\n displayTitle()\n }}</span>\n } @else {\n <span class=\"text-muted\">---</span>\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [],\n inputs: ['rawValue', 'rowData'],\n})\nexport class AXMActivityCommandConfiguratorWidgetColumnComponent extends AXPColumnWidgetComponent<ActivityCommandValue> {\n private readonly translation = inject(AXTranslationService);\n\n protected displayTitle = computed(() => {\n const value = this.rawValue as ActivityCommandValue | undefined;\n const locale = this.translation.getActiveLang();\n const resolvedTitle = resolveMultiLanguageString(value?.title, locale).trim();\n if (resolvedTitle) {\n // Catalog keys (`@scope:...`) still go through translation.resolve.\n return this.translation.resolve(resolvedTitle) || resolvedTitle;\n }\n return value?.key?.trim() ?? '';\n });\n}\n\n//#endregion\n"],"names":[],"mappings":";;;;;;AAAA;AAaA;AAEA;AAiBM,MAAO,mDAAoD,SAAQ,wBAA8C,CAAA;AAfvH,IAAA,WAAA,GAAA;;AAgBmB,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAC,oBAAoB,CAAC;AAEjD,QAAA,IAAA,CAAA,YAAY,GAAG,QAAQ,CAAC,MAAK;AACrC,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,QAA4C;YAC/D,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE;AAC/C,YAAA,MAAM,aAAa,GAAG,0BAA0B,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE;YAC7E,IAAI,aAAa,EAAE;;gBAEjB,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,aAAa;YACjE;YACA,OAAO,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE;QACjC,CAAC;yFAAC;AACH,IAAA;8GAbY,mDAAmD,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAnD,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mDAAmD,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iDAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAbpD;;;;;;;;AAQT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAKU,mDAAmD,EAAA,UAAA,EAAA,CAAA;kBAf/D,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,iDAAiD;AAC3D,oBAAA,QAAQ,EAAE;;;;;;;;AAQT,EAAA,CAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,OAAO,EAAE,EAAE;AACX,oBAAA,MAAM,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC;AAChC,iBAAA
|
|
1
|
+
{"version":3,"file":"acorex-platform-module-workflow-management-client-activity-command-configurator-widget-column.component-BPa0Sh6Z.mjs","sources":["../../../../libs/modules/workflow-management/client/src/lib/features/activity-command-configurator/activity-command-configurator-widget-column.component.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { resolveMultiLanguageString } from '@acorex-platform/framework-shared/core';\nimport { AXPColumnWidgetComponent } from '@acorex-platform/framework-client/layout/widget-core';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n inject,\n} from '@angular/core';\nimport type { ActivityCommandValue } from './activity-command-configurator.types';\n\n//#endregion\n\n//#region ---- Component ----\n\n@Component({\n selector: 'axm-activity-command-configurator-widget-column',\n template: `\n @if (displayTitle()) {\n <span [title]=\"displayTitle()\" class=\"text-xs font-medium\">{{\n displayTitle()\n }}</span>\n } @else {\n <span class=\"text-muted\">---</span>\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [],\n inputs: ['rawValue', 'rowData'],\n})\nexport class AXMActivityCommandConfiguratorWidgetColumnComponent extends AXPColumnWidgetComponent<ActivityCommandValue> {\n private readonly translation = inject(AXTranslationService);\n\n protected displayTitle = computed(() => {\n const value = this.rawValue as ActivityCommandValue | undefined;\n const locale = this.translation.getActiveLang();\n const resolvedTitle = resolveMultiLanguageString(value?.title, locale).trim();\n if (resolvedTitle) {\n // Catalog keys (`@scope:...`) still go through translation.resolve.\n return this.translation.resolve(resolvedTitle) || resolvedTitle;\n }\n return value?.key?.trim() ?? '';\n });\n}\n\n//#endregion\n"],"names":[],"mappings":";;;;;;AAAA;AAaA;AAEA;AAiBM,MAAO,mDAAoD,SAAQ,wBAA8C,CAAA;AAfvH,IAAA,WAAA,GAAA;;AAgBmB,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAC,oBAAoB,CAAC;AAEjD,QAAA,IAAA,CAAA,YAAY,GAAG,QAAQ,CAAC,MAAK;AACrC,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,QAA4C;YAC/D,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE;AAC/C,YAAA,MAAM,aAAa,GAAG,0BAA0B,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE;YAC7E,IAAI,aAAa,EAAE;;gBAEjB,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,aAAa;YACjE;YACA,OAAO,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE;QACjC,CAAC;yFAAC;AACH,IAAA;8GAbY,mDAAmD,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAnD,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mDAAmD,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iDAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAbpD;;;;;;;;AAQT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAKU,mDAAmD,EAAA,UAAA,EAAA,CAAA;kBAf/D,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,iDAAiD;AAC3D,oBAAA,QAAQ,EAAE;;;;;;;;AAQT,EAAA,CAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,OAAO,EAAE,EAAE;AACX,oBAAA,MAAM,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC;AAChC,iBAAA;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-platform-module-workflow-management-client-activity-command-configurator-widget-edit.component-DuYGXzAL.mjs","sources":["../../../../libs/modules/workflow-management/client/src/lib/features/activity-command-configurator/activity-command-configurator.utils.ts","../../../../libs/modules/workflow-management/client/src/lib/features/activity-command-configurator/activity-command-configurator.component.ts","../../../../libs/modules/workflow-management/client/src/lib/features/activity-command-configurator/activity-command-configurator-widget-edit.component.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport type { AXPProperty } from '@acorex-platform/framework-shared/core';\nimport type { AXPPropertyDefinition } from '@acorex-platform/framework-shared/domain';\nimport type { AXPWidgetProperty, AXPWidgetPropertyGroup } from '@acorex-platform/framework-shared/widget-core';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXDataSourceFilterOption } from '@acorex/cdk/common';\nimport { mapAXPPropertyToWidgetProperty } from '@acorex-platform/framework-client/layout/widget-core';\n\nimport type {\n CommandConfiguratorCapabilitiesFilter,\n CommandConfiguratorListRow,\n} from './activity-command-configurator.types';\n\n//#endregion\n\n//#region ---- Query filters ----\n\nexport function buildCommandDefinitionListQueryFilter(\n executionMode?: 'frontend' | 'backend' | 'both',\n): AXDataSourceFilterOption | undefined {\n if (!executionMode) {\n return undefined;\n }\n\n return {\n logic: 'or',\n filters: [\n { field: 'executionMode', operator: { type: 'equal' }, value: executionMode },\n { field: 'executionMode', operator: { type: 'equal' }, value: 'both' },\n ],\n };\n}\n\nexport function buildActivityDefinitionListQueryFilter(\n executionMode?: 'frontend' | 'backend' | 'both',\n): AXDataSourceFilterOption | undefined {\n return buildCommandDefinitionListQueryFilter(executionMode);\n}\n\nexport function matchesCommandConfiguratorCapabilitiesFilter(\n row: Pick<CommandConfiguratorListRow, 'capabilities'>,\n filter: CommandConfiguratorCapabilitiesFilter | undefined,\n): boolean {\n const anyOf = filter?.anyOf?.filter(Boolean) ?? [];\n if (anyOf.length === 0) {\n return true;\n }\n\n const caps = row.capabilities ?? [];\n return anyOf.some((cap) => caps.includes(cap));\n}\n\n//#endregion\n\n//#region ---- Row mapping ----\n\nexport function mapPropertyDefinitionsToInputs(\n inputs: AXPPropertyDefinition[] | undefined,\n): AXPProperty[] {\n if (!inputs?.length) {\n return [];\n }\n\n return inputs.map((input) => ({\n name: input.name,\n title: input.title,\n description: input.description,\n dataType: input.dataType ?? 'string',\n validations: input.validations,\n interface: {\n type: input.interface.name,\n options: input.interface.options ?? {},\n },\n }));\n}\n\nexport function mapCommandDefinitionEntityRow(row: Record<string, unknown>): CommandConfiguratorListRow {\n return {\n id: String(row['id'] ?? row['name'] ?? ''),\n name: String(row['name'] ?? ''),\n title: typeof row['catalogTitle'] === 'string' ? row['catalogTitle'] : undefined,\n description: typeof row['description'] === 'string' ? row['description'] : undefined,\n icon: 'fa-light fa-server',\n inputs: mapPropertyDefinitionsToInputs(\n Array.isArray(row['inputOptionDefinitions'])\n ? (row['inputOptionDefinitions'] as AXPPropertyDefinition[])\n : undefined,\n ),\n capabilities: Array.isArray(row['capabilities'])\n ? (row['capabilities'] as CommandConfiguratorListRow['capabilities'])\n : undefined,\n active: row['active'] !== false,\n executionMode:\n row['executionMode'] === 'frontend' ||\n row['executionMode'] === 'backend' ||\n row['executionMode'] === 'both'\n ? row['executionMode']\n : undefined,\n };\n}\n\nexport function mapActivityDefinitionEntityRow(row: Record<string, unknown>): CommandConfiguratorListRow {\n const inputs = Array.isArray(row['inputs']) ? (row['inputs'] as AXPProperty[]) : undefined;\n\n return {\n id: String(row['id'] ?? row['name'] ?? ''),\n name: String(row['name'] ?? ''),\n title: typeof row['title'] === 'string' ? row['title'] : undefined,\n description: typeof row['description'] === 'string' ? row['description'] : undefined,\n icon: typeof row['icon'] === 'string' ? row['icon'] : 'fa-light fa-bolt',\n inputs,\n active: true,\n executionMode:\n row['executionMode'] === 'frontend' ||\n row['executionMode'] === 'backend' ||\n row['executionMode'] === 'both'\n ? row['executionMode']\n : undefined,\n };\n}\n\nexport function mapCommandInputsToWidgetProperties(\n inputs: AXPProperty[] | undefined,\n translation: AXTranslationService,\n): AXPWidgetProperty[] {\n const list = inputs ?? [];\n const group: AXPWidgetPropertyGroup = {\n name: 'command-inputs',\n title: '@workflow-management:automations.entities.automation.fields.command.title',\n order: 0,\n };\n\n return list.map((property, index) =>\n mapAXPPropertyToWidgetProperty(property, {\n group,\n order: index,\n valuePathPrefix: 'options',\n resolveTitle: (prop) =>\n typeof prop.title === 'string' ? prop.title : (translation.resolve(prop.title) ?? prop.name),\n resolveDescription: (prop) =>\n prop.description === undefined\n ? undefined\n : typeof prop.description === 'string'\n ? prop.description\n : translation.resolve(prop.description),\n }),\n );\n}\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXTranslationService } from '@acorex/core/translation';\nimport {\n AXPItemConfiguratorComponent,\n ItemConfiguratorListItem,\n} from '@acorex-platform/framework-client/layout/components';\nimport { AXPEntityService } from '@acorex-platform/framework-client/layout/entity';\nimport type { AXPActivityDefinition } from '@acorex-platform/framework-shared/core';\nimport { AXPActivityDefinitionService } from '@acorex-platform/framework-client/workflow';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n effect,\n inject,\n input,\n model,\n signal,\n untracked,\n} from '@angular/core';\nimport { isEqual } from 'lodash';\nimport type {\n ActivityCommandValue,\n CommandConfiguratorListRow,\n} from './activity-command-configurator.types';\nimport {\n buildActivityDefinitionListQueryFilter,\n buildCommandDefinitionListQueryFilter,\n mapActivityDefinitionEntityRow,\n mapCommandDefinitionEntityRow,\n mapCommandInputsToWidgetProperties,\n matchesCommandConfiguratorCapabilitiesFilter,\n} from './activity-command-configurator.utils';\n\n//#endregion\n\n//#region ---- Component ----\n\n/**\n * Select a command/activity and configure its inputs via {@link AXPItemConfiguratorComponent}.\n * Entity-backed modes use the same reactive loading pattern as {@link AXMWorkflowConfiguratorComponent}.\n */\n@Component({\n selector: 'axm-activity-command-configurator',\n template: `\n <axp-item-configurator\n [(selectedItemId)]=\"selectedCommandKeyModel\"\n [(values)]=\"payloadModel\"\n [label]=\"label()\"\n [readonly]=\"readonly()\"\n [items]=\"configuratorItems()\"\n />\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'flex flex-col',\n '[attr.readonly]': 'readonly() ? \"\" : null',\n },\n styles: [\n `\n :host([readonly]) {\n pointer-events: none;\n opacity: 0.7;\n }\n `,\n ],\n imports: [AXPItemConfiguratorComponent],\n})\nexport class AXMActivityCommandConfiguratorComponent {\n //#region ---- Inputs ----\n\n value = model<ActivityCommandValue>({ key: '', payload: {} });\n\n label = input<string>(\n '@workflow-management:automations.entities.automation.fields.command.title',\n );\n\n readonly = input<boolean>(false);\n\n executionModeFilter = input<'frontend' | 'backend' | 'both' | undefined>(\n undefined,\n );\n\n /**\n * - `default`: workflow toolbox activities (in-memory categories).\n * - `flat-query`: query `WorkflowManagement.ActivityDefinition` entity storage.\n * - `command-registry`: query persisted command catalog entity (default `PlatformManagement.CommandDefinition`).\n */\n loadStrategy = input<'default' | 'flat-query' | 'command-registry'>(\n 'default',\n );\n\n capabilitiesFilter = input<\n Array<'ai' | 'workflow' | 'background-job'> | undefined\n >(undefined);\n\n private static readonly COMMAND_DEFINITION_MODULE = 'PlatformManagement';\n private static readonly COMMAND_DEFINITION_ENTITY = 'CommandDefinition';\n\n //#endregion\n\n //#region ---- Services ----\n\n private readonly activityService = inject(AXPActivityDefinitionService);\n private readonly entityService = inject(AXPEntityService);\n private readonly translation = inject(AXTranslationService);\n\n //#endregion\n\n //#region ---- State ----\n\n protected selectedCommandKeyModel = model<string>('');\n\n protected payloadModel = model<Record<string, unknown>>({});\n\n protected catalogRows = signal<CommandConfiguratorListRow[]>([]);\n\n protected configuratorItems = computed<ItemConfiguratorListItem[]>(() =>\n this.catalogRows().map((row) => ({\n id: row.name,\n title: (row.title ?? row.name) as ItemConfiguratorListItem['title'],\n icon: row.icon ?? 'fa-light fa-server',\n description: row.description as ItemConfiguratorListItem['description'],\n propertyDefinitions: mapCommandInputsToWidgetProperties(\n row.inputs,\n this.translation,\n ),\n })),\n );\n\n //#endregion\n\n //#region ---- Lifecycle ----\n\n constructor() {\n effect(() => {\n this.loadStrategy();\n this.executionModeFilter();\n this.capabilitiesFilter();\n untracked(() => {\n void this.loadCatalogRows();\n });\n });\n\n effect(() => {\n const v = this.value();\n const key = v.key?.trim() ?? '';\n const payload = v.payload ?? {};\n\n untracked(() => {\n if (this.selectedCommandKeyModel() !== key) {\n this.selectedCommandKeyModel.set(key);\n }\n if (!isEqual(this.payloadModel(), payload)) {\n this.payloadModel.set({ ...payload });\n }\n });\n });\n\n effect(() => {\n const key = this.selectedCommandKeyModel();\n const payload = this.payloadModel();\n const current = untracked(() => this.value());\n const row = untracked(() =>\n this.catalogRows().find((item) => item.name === key),\n );\n\n const next: ActivityCommandValue = {\n key,\n title: row?.title ?? row?.name ?? current.title,\n payload: { ...payload },\n };\n\n const normalizedCurrent: ActivityCommandValue = {\n key: current.key?.trim() ?? '',\n title: current.title,\n payload: current.payload ?? {},\n };\n\n if (!isEqual(next, normalizedCurrent)) {\n untracked(() => this.value.set(next));\n }\n });\n }\n\n //#endregion\n\n //#region ---- Data loading ----\n\n private async loadCatalogRows(): Promise<void> {\n try {\n const strategy = this.loadStrategy();\n const modeFilter = this.executionModeFilter();\n const caps = this.capabilitiesFilter();\n const capabilityFilter =\n caps && caps.length > 0 ? { anyOf: caps } : undefined;\n const pinnedKey = this.value().key?.trim() ?? '';\n\n let rows: CommandConfiguratorListRow[] = [];\n\n switch (strategy) {\n case 'command-registry':\n rows = await this.queryCommandDefinitionRows(\n modeFilter,\n capabilityFilter,\n );\n break;\n case 'flat-query':\n rows = await this.queryActivityDefinitionRows(modeFilter);\n break;\n default:\n rows = await this.queryToolboxActivities(modeFilter);\n break;\n }\n\n rows = rows\n .filter((r) => !!r.name?.trim() && r.active !== false)\n .sort((a, b) => {\n const ta = (a.title ?? a.name).trim();\n const tb = (b.title ?? b.name).trim();\n return ta.localeCompare(tb, this.translation.getActiveLang(), {\n sensitivity: 'base',\n });\n });\n\n const hydrated = await Promise.all(\n rows.map((row) => this.hydrateCatalogRow(row, strategy)),\n );\n\n if (pinnedKey && !hydrated.some((r) => r.name === pinnedKey)) {\n const pinned = await this.loadPinnedRow(pinnedKey, strategy);\n if (pinned) {\n hydrated.unshift(pinned);\n }\n }\n\n this.catalogRows.set(hydrated);\n } catch {\n this.catalogRows.set([]);\n }\n }\n\n private async queryCommandDefinitionRows(\n executionMode?: 'frontend' | 'backend' | 'both',\n capabilityFilter?: { anyOf: Array<'ai' | 'workflow' | 'background-job'> },\n ): Promise<CommandConfiguratorListRow[]> {\n const page = await this.entityService\n .withEntity(\n AXMActivityCommandConfiguratorComponent.COMMAND_DEFINITION_MODULE,\n AXMActivityCommandConfiguratorComponent.COMMAND_DEFINITION_ENTITY,\n )\n .data()\n .query({\n skip: 0,\n take: 5000,\n filter: buildCommandDefinitionListQueryFilter(executionMode),\n });\n\n return (page.items ?? [])\n .map((row) =>\n mapCommandDefinitionEntityRow(\n row as unknown as Record<string, unknown>,\n ),\n )\n .filter((row) =>\n matchesCommandConfiguratorCapabilitiesFilter(row, capabilityFilter),\n );\n }\n\n private async queryActivityDefinitionRows(\n executionMode?: 'frontend' | 'backend' | 'both',\n ): Promise<CommandConfiguratorListRow[]> {\n const page = await this.entityService\n .withEntity('WorkflowManagement', 'ActivityDefinition')\n .data()\n .query({\n skip: 0,\n take: 2000,\n filter: buildActivityDefinitionListQueryFilter(executionMode),\n });\n\n return (page.items ?? []).map((row) =>\n mapActivityDefinitionEntityRow(row as unknown as Record<string, unknown>),\n );\n }\n\n private async queryToolboxActivities(\n executionMode?: 'frontend' | 'backend' | 'both',\n ): Promise<CommandConfiguratorListRow[]> {\n let activities = await this.activityService.getAllActivities();\n if (executionMode) {\n activities = activities.filter(\n (item) =>\n item.executionMode === executionMode || item.executionMode === 'both',\n );\n }\n\n return activities.map((activity) => this.mapToolboxActivityRow(activity));\n }\n\n private mapToolboxActivityRow(\n activity: AXPActivityDefinition,\n ): CommandConfiguratorListRow {\n return {\n id: activity.name,\n name: activity.name,\n title:\n typeof activity.title === 'string' ? activity.title : activity.name,\n description:\n typeof activity.description === 'string'\n ? activity.description\n : undefined,\n icon: activity.icon ?? 'fa-light fa-bolt',\n inputs: activity.inputs,\n active: true,\n executionMode: activity.executionMode,\n };\n }\n\n private async hydrateCatalogRow(\n row: CommandConfiguratorListRow,\n strategy: 'default' | 'flat-query' | 'command-registry',\n ): Promise<CommandConfiguratorListRow> {\n if ((row.inputs?.length ?? 0) > 0 || strategy === 'default') {\n return row;\n }\n\n const id = row.id?.trim();\n if (!id) {\n return row;\n }\n\n try {\n const module =\n strategy === 'command-registry'\n ? AXMActivityCommandConfiguratorComponent.COMMAND_DEFINITION_MODULE\n : 'WorkflowManagement';\n const entity =\n strategy === 'command-registry'\n ? AXMActivityCommandConfiguratorComponent.COMMAND_DEFINITION_ENTITY\n : 'ActivityDefinition';\n\n const full = (await this.entityService\n .withEntity(module, entity)\n .data()\n .byKey(id)) as Record<string, unknown> | null;\n\n if (!full) {\n return row;\n }\n\n const mapped =\n strategy === 'command-registry'\n ? mapCommandDefinitionEntityRow(full)\n : mapActivityDefinitionEntityRow(full);\n\n return { ...row, ...mapped, inputs: mapped.inputs ?? row.inputs };\n } catch {\n return row;\n }\n }\n\n private async loadPinnedRow(\n commandKey: string,\n strategy: 'default' | 'flat-query' | 'command-registry',\n ): Promise<CommandConfiguratorListRow | null> {\n if (strategy === 'default') {\n const activity = await this.activityService.getActivityByName(commandKey);\n return activity ? this.mapToolboxActivityRow(activity) : null;\n }\n\n try {\n const module =\n strategy === 'command-registry'\n ? AXMActivityCommandConfiguratorComponent.COMMAND_DEFINITION_MODULE\n : 'WorkflowManagement';\n const entity =\n strategy === 'command-registry'\n ? AXMActivityCommandConfiguratorComponent.COMMAND_DEFINITION_ENTITY\n : 'ActivityDefinition';\n\n const page = await this.entityService\n .withEntity(module, entity)\n .data()\n .query({\n skip: 0,\n take: 1,\n filter: {\n field: 'name',\n operator: { type: 'equal' },\n value: commandKey,\n },\n });\n\n const row = page.items?.[0];\n if (!row) {\n return null;\n }\n\n return strategy === 'command-registry'\n ? mapCommandDefinitionEntityRow(\n row as unknown as Record<string, unknown>,\n )\n : mapActivityDefinitionEntityRow(\n row as unknown as Record<string, unknown>,\n );\n } catch {\n return null;\n }\n }\n\n //#endregion\n}\n\nexport type { ActivityCommandValue } from './activity-command-configurator.types';\n\n//#endregion\n","//#region ---- Imports ----\r\r\n\r\r\nimport { AXPValueWidgetComponent } from '@acorex-platform/framework-client/layout/widget-core';\r\r\nimport { ChangeDetectionStrategy, Component, computed, effect, model, signal, untracked } from '@angular/core';\r\r\nimport { isEqual } from 'lodash';\r\r\nimport {\r\r\n AXMActivityCommandConfiguratorComponent,\r\r\n} from './activity-command-configurator.component';\r\r\nimport type { ActivityCommandValue } from './activity-command-configurator.types';\r\r\n\r\r\n//#endregion\r\r\n\r\r\n//#region ---- Component ----\r\r\n\r\r\n@Component({\r\r\n selector: 'axm-activity-command-configurator-widget-edit',\r\r\n template: `\r\r\n @if (isInitialized()) {\r\r\n <axm-activity-command-configurator\r\r\n [(value)]=\"valueModel\"\r\r\n [label]=\"label()\"\r\r\n [readonly]=\"readonly()\"\r\r\n [loadStrategy]=\"loadStrategy()\"\r\r\n [executionModeFilter]=\"executionModeFilter()\"\r\r\n [capabilitiesFilter]=\"capabilitiesFilter()\"\r\r\n ></axm-activity-command-configurator>\r\r\n }\r\r\n `,\r\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\r\n imports: [AXMActivityCommandConfiguratorComponent],\r\r\n})\r\r\nexport class AXMActivityCommandConfiguratorWidgetEditComponent extends AXPValueWidgetComponent<ActivityCommandValue> {\r\r\n protected readonly readonly = computed<boolean>(() => (this.options()['readonly'] as boolean) ?? false);\r\r\n protected label = computed<string>(() => (this.options()['label'] as string) || 'Activity');\r\r\n protected loadStrategy = computed<'default' | 'flat-query' | 'command-registry'>(() => {\r\r\n const value = this.options()['loadStrategy'];\r\r\n return value === 'flat-query' || value === 'command-registry' ? value : 'default';\r\r\n });\r\r\n protected executionModeFilter = computed<'frontend' | 'backend' | 'both' | undefined>(() => {\r\r\n const value = this.options()['executionModeFilter'];\r\r\n return value === 'frontend' || value === 'backend' || value === 'both' ? value : undefined;\r\r\n });\r\r\n protected capabilitiesFilter = computed<Array<'ai' | 'workflow' | 'background-job'> | undefined>(\r\r\n () => this.options()['capabilitiesFilter'] as Array<'ai' | 'workflow' | 'background-job'> | undefined,\r\r\n );\r\r\n\r\r\n protected isInitialized = signal(false);\r\r\n protected valueModel = model<ActivityCommandValue>({ key: '', payload: {} });\r\r\n\r\r\n private syncValueToConfigurator = effect(() => {\r\r\n const value = this.getValue() ?? { key: '', payload: {} };\r\r\n const currentModel = untracked(() => this.valueModel());\r\r\n\r\r\n if (!isEqual(value, currentModel)) {\r\r\n untracked(() => {\r\r\n this.valueModel.set({\r\r\n key: value.key ?? '',\r\r\n title: value.title,\r\r\n payload: value.payload ?? {},\r\r\n });\r\r\n });\r\r\n }\r\r\n\r\r\n untracked(() => {\r\r\n if (!this.isInitialized()) {\r\r\n this.isInitialized.set(true);\r\r\n }\r\r\n });\r\r\n });\r\r\n\r\r\n private syncConfiguratorToValue = effect(() => {\r\r\n const modelValue = this.valueModel();\r\r\n\r\r\n if (!untracked(() => this.isInitialized())) return;\r\r\n\r\r\n const currentValue = untracked(() => this.getValue() ?? { key: '', payload: {} });\r\r\n\r\r\n if (!isEqual(modelValue, currentValue)) {\r\r\n untracked(() => {\r\r\n this.setValue(modelValue ?? { key: '', payload: {} });\r\r\n });\r\r\n }\r\r\n });\r\r\n}\r\r\n\r\r\n//#endregion\r\r\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"acorex-platform-module-workflow-management-client-activity-command-configurator-widget-edit.component-DuYGXzAL.mjs","sources":["../../../../libs/modules/workflow-management/client/src/lib/features/activity-command-configurator/activity-command-configurator.utils.ts","../../../../libs/modules/workflow-management/client/src/lib/features/activity-command-configurator/activity-command-configurator.component.ts","../../../../libs/modules/workflow-management/client/src/lib/features/activity-command-configurator/activity-command-configurator-widget-edit.component.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport type { AXPProperty } from '@acorex-platform/framework-shared/core';\nimport type { AXPPropertyDefinition } from '@acorex-platform/framework-shared/domain';\nimport type { AXPWidgetProperty, AXPWidgetPropertyGroup } from '@acorex-platform/framework-shared/widget-core';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXDataSourceFilterOption } from '@acorex/cdk/common';\nimport { mapAXPPropertyToWidgetProperty } from '@acorex-platform/framework-client/layout/widget-core';\n\nimport type {\n CommandConfiguratorCapabilitiesFilter,\n CommandConfiguratorListRow,\n} from './activity-command-configurator.types';\n\n//#endregion\n\n//#region ---- Query filters ----\n\nexport function buildCommandDefinitionListQueryFilter(\n executionMode?: 'frontend' | 'backend' | 'both',\n): AXDataSourceFilterOption | undefined {\n if (!executionMode) {\n return undefined;\n }\n\n return {\n logic: 'or',\n filters: [\n { field: 'executionMode', operator: { type: 'equal' }, value: executionMode },\n { field: 'executionMode', operator: { type: 'equal' }, value: 'both' },\n ],\n };\n}\n\nexport function buildActivityDefinitionListQueryFilter(\n executionMode?: 'frontend' | 'backend' | 'both',\n): AXDataSourceFilterOption | undefined {\n return buildCommandDefinitionListQueryFilter(executionMode);\n}\n\nexport function matchesCommandConfiguratorCapabilitiesFilter(\n row: Pick<CommandConfiguratorListRow, 'capabilities'>,\n filter: CommandConfiguratorCapabilitiesFilter | undefined,\n): boolean {\n const anyOf = filter?.anyOf?.filter(Boolean) ?? [];\n if (anyOf.length === 0) {\n return true;\n }\n\n const caps = row.capabilities ?? [];\n return anyOf.some((cap) => caps.includes(cap));\n}\n\n//#endregion\n\n//#region ---- Row mapping ----\n\nexport function mapPropertyDefinitionsToInputs(\n inputs: AXPPropertyDefinition[] | undefined,\n): AXPProperty[] {\n if (!inputs?.length) {\n return [];\n }\n\n return inputs.map((input) => ({\n name: input.name,\n title: input.title,\n description: input.description,\n dataType: input.dataType ?? 'string',\n validations: input.validations,\n interface: {\n type: input.interface.name,\n options: input.interface.options ?? {},\n },\n }));\n}\n\nexport function mapCommandDefinitionEntityRow(row: Record<string, unknown>): CommandConfiguratorListRow {\n return {\n id: String(row['id'] ?? row['name'] ?? ''),\n name: String(row['name'] ?? ''),\n title: typeof row['catalogTitle'] === 'string' ? row['catalogTitle'] : undefined,\n description: typeof row['description'] === 'string' ? row['description'] : undefined,\n icon: 'fa-light fa-server',\n inputs: mapPropertyDefinitionsToInputs(\n Array.isArray(row['inputOptionDefinitions'])\n ? (row['inputOptionDefinitions'] as AXPPropertyDefinition[])\n : undefined,\n ),\n capabilities: Array.isArray(row['capabilities'])\n ? (row['capabilities'] as CommandConfiguratorListRow['capabilities'])\n : undefined,\n active: row['active'] !== false,\n executionMode:\n row['executionMode'] === 'frontend' ||\n row['executionMode'] === 'backend' ||\n row['executionMode'] === 'both'\n ? row['executionMode']\n : undefined,\n };\n}\n\nexport function mapActivityDefinitionEntityRow(row: Record<string, unknown>): CommandConfiguratorListRow {\n const inputs = Array.isArray(row['inputs']) ? (row['inputs'] as AXPProperty[]) : undefined;\n\n return {\n id: String(row['id'] ?? row['name'] ?? ''),\n name: String(row['name'] ?? ''),\n title: typeof row['title'] === 'string' ? row['title'] : undefined,\n description: typeof row['description'] === 'string' ? row['description'] : undefined,\n icon: typeof row['icon'] === 'string' ? row['icon'] : 'fa-light fa-bolt',\n inputs,\n active: true,\n executionMode:\n row['executionMode'] === 'frontend' ||\n row['executionMode'] === 'backend' ||\n row['executionMode'] === 'both'\n ? row['executionMode']\n : undefined,\n };\n}\n\nexport function mapCommandInputsToWidgetProperties(\n inputs: AXPProperty[] | undefined,\n translation: AXTranslationService,\n): AXPWidgetProperty[] {\n const list = inputs ?? [];\n const group: AXPWidgetPropertyGroup = {\n name: 'command-inputs',\n title: '@workflow-management:automations.entities.automation.fields.command.title',\n order: 0,\n };\n\n return list.map((property, index) =>\n mapAXPPropertyToWidgetProperty(property, {\n group,\n order: index,\n valuePathPrefix: 'options',\n resolveTitle: (prop) =>\n typeof prop.title === 'string' ? prop.title : (translation.resolve(prop.title) ?? prop.name),\n resolveDescription: (prop) =>\n prop.description === undefined\n ? undefined\n : typeof prop.description === 'string'\n ? prop.description\n : translation.resolve(prop.description),\n }),\n );\n}\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXTranslationService } from '@acorex/core/translation';\nimport {\n AXPItemConfiguratorComponent,\n ItemConfiguratorListItem,\n} from '@acorex-platform/framework-client/layout/components';\nimport { AXPEntityService } from '@acorex-platform/framework-client/layout/entity';\nimport type { AXPActivityDefinition } from '@acorex-platform/framework-shared/core';\nimport { AXPActivityDefinitionService } from '@acorex-platform/framework-client/workflow';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n effect,\n inject,\n input,\n model,\n signal,\n untracked,\n} from '@angular/core';\nimport { isEqual } from 'lodash';\nimport type {\n ActivityCommandValue,\n CommandConfiguratorListRow,\n} from './activity-command-configurator.types';\nimport {\n buildActivityDefinitionListQueryFilter,\n buildCommandDefinitionListQueryFilter,\n mapActivityDefinitionEntityRow,\n mapCommandDefinitionEntityRow,\n mapCommandInputsToWidgetProperties,\n matchesCommandConfiguratorCapabilitiesFilter,\n} from './activity-command-configurator.utils';\n\n//#endregion\n\n//#region ---- Component ----\n\n/**\n * Select a command/activity and configure its inputs via {@link AXPItemConfiguratorComponent}.\n * Entity-backed modes use the same reactive loading pattern as {@link AXMWorkflowConfiguratorComponent}.\n */\n@Component({\n selector: 'axm-activity-command-configurator',\n template: `\n <axp-item-configurator\n [(selectedItemId)]=\"selectedCommandKeyModel\"\n [(values)]=\"payloadModel\"\n [label]=\"label()\"\n [readonly]=\"readonly()\"\n [items]=\"configuratorItems()\"\n />\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'flex flex-col',\n '[attr.readonly]': 'readonly() ? \"\" : null',\n },\n styles: [\n `\n :host([readonly]) {\n pointer-events: none;\n opacity: 0.7;\n }\n `,\n ],\n imports: [AXPItemConfiguratorComponent],\n})\nexport class AXMActivityCommandConfiguratorComponent {\n //#region ---- Inputs ----\n\n value = model<ActivityCommandValue>({ key: '', payload: {} });\n\n label = input<string>(\n '@workflow-management:automations.entities.automation.fields.command.title',\n );\n\n readonly = input<boolean>(false);\n\n executionModeFilter = input<'frontend' | 'backend' | 'both' | undefined>(\n undefined,\n );\n\n /**\n * - `default`: workflow toolbox activities (in-memory categories).\n * - `flat-query`: query `WorkflowManagement.ActivityDefinition` entity storage.\n * - `command-registry`: query persisted command catalog entity (default `PlatformManagement.CommandDefinition`).\n */\n loadStrategy = input<'default' | 'flat-query' | 'command-registry'>(\n 'default',\n );\n\n capabilitiesFilter = input<\n Array<'ai' | 'workflow' | 'background-job'> | undefined\n >(undefined);\n\n private static readonly COMMAND_DEFINITION_MODULE = 'PlatformManagement';\n private static readonly COMMAND_DEFINITION_ENTITY = 'CommandDefinition';\n\n //#endregion\n\n //#region ---- Services ----\n\n private readonly activityService = inject(AXPActivityDefinitionService);\n private readonly entityService = inject(AXPEntityService);\n private readonly translation = inject(AXTranslationService);\n\n //#endregion\n\n //#region ---- State ----\n\n protected selectedCommandKeyModel = model<string>('');\n\n protected payloadModel = model<Record<string, unknown>>({});\n\n protected catalogRows = signal<CommandConfiguratorListRow[]>([]);\n\n protected configuratorItems = computed<ItemConfiguratorListItem[]>(() =>\n this.catalogRows().map((row) => ({\n id: row.name,\n title: (row.title ?? row.name) as ItemConfiguratorListItem['title'],\n icon: row.icon ?? 'fa-light fa-server',\n description: row.description as ItemConfiguratorListItem['description'],\n propertyDefinitions: mapCommandInputsToWidgetProperties(\n row.inputs,\n this.translation,\n ),\n })),\n );\n\n //#endregion\n\n //#region ---- Lifecycle ----\n\n constructor() {\n effect(() => {\n this.loadStrategy();\n this.executionModeFilter();\n this.capabilitiesFilter();\n untracked(() => {\n void this.loadCatalogRows();\n });\n });\n\n effect(() => {\n const v = this.value();\n const key = v.key?.trim() ?? '';\n const payload = v.payload ?? {};\n\n untracked(() => {\n if (this.selectedCommandKeyModel() !== key) {\n this.selectedCommandKeyModel.set(key);\n }\n if (!isEqual(this.payloadModel(), payload)) {\n this.payloadModel.set({ ...payload });\n }\n });\n });\n\n effect(() => {\n const key = this.selectedCommandKeyModel();\n const payload = this.payloadModel();\n const current = untracked(() => this.value());\n const row = untracked(() =>\n this.catalogRows().find((item) => item.name === key),\n );\n\n const next: ActivityCommandValue = {\n key,\n title: row?.title ?? row?.name ?? current.title,\n payload: { ...payload },\n };\n\n const normalizedCurrent: ActivityCommandValue = {\n key: current.key?.trim() ?? '',\n title: current.title,\n payload: current.payload ?? {},\n };\n\n if (!isEqual(next, normalizedCurrent)) {\n untracked(() => this.value.set(next));\n }\n });\n }\n\n //#endregion\n\n //#region ---- Data loading ----\n\n private async loadCatalogRows(): Promise<void> {\n try {\n const strategy = this.loadStrategy();\n const modeFilter = this.executionModeFilter();\n const caps = this.capabilitiesFilter();\n const capabilityFilter =\n caps && caps.length > 0 ? { anyOf: caps } : undefined;\n const pinnedKey = this.value().key?.trim() ?? '';\n\n let rows: CommandConfiguratorListRow[] = [];\n\n switch (strategy) {\n case 'command-registry':\n rows = await this.queryCommandDefinitionRows(\n modeFilter,\n capabilityFilter,\n );\n break;\n case 'flat-query':\n rows = await this.queryActivityDefinitionRows(modeFilter);\n break;\n default:\n rows = await this.queryToolboxActivities(modeFilter);\n break;\n }\n\n rows = rows\n .filter((r) => !!r.name?.trim() && r.active !== false)\n .sort((a, b) => {\n const ta = (a.title ?? a.name).trim();\n const tb = (b.title ?? b.name).trim();\n return ta.localeCompare(tb, this.translation.getActiveLang(), {\n sensitivity: 'base',\n });\n });\n\n const hydrated = await Promise.all(\n rows.map((row) => this.hydrateCatalogRow(row, strategy)),\n );\n\n if (pinnedKey && !hydrated.some((r) => r.name === pinnedKey)) {\n const pinned = await this.loadPinnedRow(pinnedKey, strategy);\n if (pinned) {\n hydrated.unshift(pinned);\n }\n }\n\n this.catalogRows.set(hydrated);\n } catch {\n this.catalogRows.set([]);\n }\n }\n\n private async queryCommandDefinitionRows(\n executionMode?: 'frontend' | 'backend' | 'both',\n capabilityFilter?: { anyOf: Array<'ai' | 'workflow' | 'background-job'> },\n ): Promise<CommandConfiguratorListRow[]> {\n const page = await this.entityService\n .withEntity(\n AXMActivityCommandConfiguratorComponent.COMMAND_DEFINITION_MODULE,\n AXMActivityCommandConfiguratorComponent.COMMAND_DEFINITION_ENTITY,\n )\n .data()\n .query({\n skip: 0,\n take: 5000,\n filter: buildCommandDefinitionListQueryFilter(executionMode),\n });\n\n return (page.items ?? [])\n .map((row) =>\n mapCommandDefinitionEntityRow(\n row as unknown as Record<string, unknown>,\n ),\n )\n .filter((row) =>\n matchesCommandConfiguratorCapabilitiesFilter(row, capabilityFilter),\n );\n }\n\n private async queryActivityDefinitionRows(\n executionMode?: 'frontend' | 'backend' | 'both',\n ): Promise<CommandConfiguratorListRow[]> {\n const page = await this.entityService\n .withEntity('WorkflowManagement', 'ActivityDefinition')\n .data()\n .query({\n skip: 0,\n take: 2000,\n filter: buildActivityDefinitionListQueryFilter(executionMode),\n });\n\n return (page.items ?? []).map((row) =>\n mapActivityDefinitionEntityRow(row as unknown as Record<string, unknown>),\n );\n }\n\n private async queryToolboxActivities(\n executionMode?: 'frontend' | 'backend' | 'both',\n ): Promise<CommandConfiguratorListRow[]> {\n let activities = await this.activityService.getAllActivities();\n if (executionMode) {\n activities = activities.filter(\n (item) =>\n item.executionMode === executionMode || item.executionMode === 'both',\n );\n }\n\n return activities.map((activity) => this.mapToolboxActivityRow(activity));\n }\n\n private mapToolboxActivityRow(\n activity: AXPActivityDefinition,\n ): CommandConfiguratorListRow {\n return {\n id: activity.name,\n name: activity.name,\n title:\n typeof activity.title === 'string' ? activity.title : activity.name,\n description:\n typeof activity.description === 'string'\n ? activity.description\n : undefined,\n icon: activity.icon ?? 'fa-light fa-bolt',\n inputs: activity.inputs,\n active: true,\n executionMode: activity.executionMode,\n };\n }\n\n private async hydrateCatalogRow(\n row: CommandConfiguratorListRow,\n strategy: 'default' | 'flat-query' | 'command-registry',\n ): Promise<CommandConfiguratorListRow> {\n if ((row.inputs?.length ?? 0) > 0 || strategy === 'default') {\n return row;\n }\n\n const id = row.id?.trim();\n if (!id) {\n return row;\n }\n\n try {\n const module =\n strategy === 'command-registry'\n ? AXMActivityCommandConfiguratorComponent.COMMAND_DEFINITION_MODULE\n : 'WorkflowManagement';\n const entity =\n strategy === 'command-registry'\n ? AXMActivityCommandConfiguratorComponent.COMMAND_DEFINITION_ENTITY\n : 'ActivityDefinition';\n\n const full = (await this.entityService\n .withEntity(module, entity)\n .data()\n .byKey(id)) as Record<string, unknown> | null;\n\n if (!full) {\n return row;\n }\n\n const mapped =\n strategy === 'command-registry'\n ? mapCommandDefinitionEntityRow(full)\n : mapActivityDefinitionEntityRow(full);\n\n return { ...row, ...mapped, inputs: mapped.inputs ?? row.inputs };\n } catch {\n return row;\n }\n }\n\n private async loadPinnedRow(\n commandKey: string,\n strategy: 'default' | 'flat-query' | 'command-registry',\n ): Promise<CommandConfiguratorListRow | null> {\n if (strategy === 'default') {\n const activity = await this.activityService.getActivityByName(commandKey);\n return activity ? this.mapToolboxActivityRow(activity) : null;\n }\n\n try {\n const module =\n strategy === 'command-registry'\n ? AXMActivityCommandConfiguratorComponent.COMMAND_DEFINITION_MODULE\n : 'WorkflowManagement';\n const entity =\n strategy === 'command-registry'\n ? AXMActivityCommandConfiguratorComponent.COMMAND_DEFINITION_ENTITY\n : 'ActivityDefinition';\n\n const page = await this.entityService\n .withEntity(module, entity)\n .data()\n .query({\n skip: 0,\n take: 1,\n filter: {\n field: 'name',\n operator: { type: 'equal' },\n value: commandKey,\n },\n });\n\n const row = page.items?.[0];\n if (!row) {\n return null;\n }\n\n return strategy === 'command-registry'\n ? mapCommandDefinitionEntityRow(\n row as unknown as Record<string, unknown>,\n )\n : mapActivityDefinitionEntityRow(\n row as unknown as Record<string, unknown>,\n );\n } catch {\n return null;\n }\n }\n\n //#endregion\n}\n\nexport type { ActivityCommandValue } from './activity-command-configurator.types';\n\n//#endregion\n","//#region ---- Imports ----\r\r\n\r\r\nimport { AXPValueWidgetComponent } from '@acorex-platform/framework-client/layout/widget-core';\r\r\nimport { ChangeDetectionStrategy, Component, computed, effect, model, signal, untracked } from '@angular/core';\r\r\nimport { isEqual } from 'lodash';\r\r\nimport {\r\r\n AXMActivityCommandConfiguratorComponent,\r\r\n} from './activity-command-configurator.component';\r\r\nimport type { ActivityCommandValue } from './activity-command-configurator.types';\r\r\n\r\r\n//#endregion\r\r\n\r\r\n//#region ---- Component ----\r\r\n\r\r\n@Component({\r\r\n selector: 'axm-activity-command-configurator-widget-edit',\r\r\n template: `\r\r\n @if (isInitialized()) {\r\r\n <axm-activity-command-configurator\r\r\n [(value)]=\"valueModel\"\r\r\n [label]=\"label()\"\r\r\n [readonly]=\"readonly()\"\r\r\n [loadStrategy]=\"loadStrategy()\"\r\r\n [executionModeFilter]=\"executionModeFilter()\"\r\r\n [capabilitiesFilter]=\"capabilitiesFilter()\"\r\r\n ></axm-activity-command-configurator>\r\r\n }\r\r\n `,\r\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\r\n imports: [AXMActivityCommandConfiguratorComponent],\r\r\n})\r\r\nexport class AXMActivityCommandConfiguratorWidgetEditComponent extends AXPValueWidgetComponent<ActivityCommandValue> {\r\r\n protected readonly readonly = computed<boolean>(() => (this.options()['readonly'] as boolean) ?? false);\r\r\n protected label = computed<string>(() => (this.options()['label'] as string) || 'Activity');\r\r\n protected loadStrategy = computed<'default' | 'flat-query' | 'command-registry'>(() => {\r\r\n const value = this.options()['loadStrategy'];\r\r\n return value === 'flat-query' || value === 'command-registry' ? value : 'default';\r\r\n });\r\r\n protected executionModeFilter = computed<'frontend' | 'backend' | 'both' | undefined>(() => {\r\r\n const value = this.options()['executionModeFilter'];\r\r\n return value === 'frontend' || value === 'backend' || value === 'both' ? value : undefined;\r\r\n });\r\r\n protected capabilitiesFilter = computed<Array<'ai' | 'workflow' | 'background-job'> | undefined>(\r\r\n () => this.options()['capabilitiesFilter'] as Array<'ai' | 'workflow' | 'background-job'> | undefined,\r\r\n );\r\r\n\r\r\n protected isInitialized = signal(false);\r\r\n protected valueModel = model<ActivityCommandValue>({ key: '', payload: {} });\r\r\n\r\r\n private syncValueToConfigurator = effect(() => {\r\r\n const value = this.getValue() ?? { key: '', payload: {} };\r\r\n const currentModel = untracked(() => this.valueModel());\r\r\n\r\r\n if (!isEqual(value, currentModel)) {\r\r\n untracked(() => {\r\r\n this.valueModel.set({\r\r\n key: value.key ?? '',\r\r\n title: value.title,\r\r\n payload: value.payload ?? {},\r\r\n });\r\r\n });\r\r\n }\r\r\n\r\r\n untracked(() => {\r\r\n if (!this.isInitialized()) {\r\r\n this.isInitialized.set(true);\r\r\n }\r\r\n });\r\r\n });\r\r\n\r\r\n private syncConfiguratorToValue = effect(() => {\r\r\n const modelValue = this.valueModel();\r\r\n\r\r\n if (!untracked(() => this.isInitialized())) return;\r\r\n\r\r\n const currentValue = untracked(() => this.getValue() ?? { key: '', payload: {} });\r\r\n\r\r\n if (!isEqual(modelValue, currentValue)) {\r\r\n untracked(() => {\r\r\n this.setValue(modelValue ?? { key: '', payload: {} });\r\r\n });\r\r\n }\r\r\n });\r\r\n}\r\r\n\r\r\n//#endregion\r\r\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
import { AXPWidgetsCatalog, AXPWidgetsList } from '@acorex-platform/framework-shared/core';
|
|
2
|
+
import { createAllQueryView, entityMasterCrudActions, entityMasterRecordActions, entityMasterDeleteAction } from '@acorex-platform/framework-shared/entity';
|
|
3
|
+
|
|
4
|
+
const config = {
|
|
5
|
+
i18n: 'workflow-management',
|
|
6
|
+
module: 'WorkflowManagement',
|
|
7
|
+
};
|
|
8
|
+
const RootConfig = {
|
|
9
|
+
config,
|
|
10
|
+
module: {
|
|
11
|
+
route: 'workflow-management',
|
|
12
|
+
name: config.module,
|
|
13
|
+
title: '@workflow-management:module.title',
|
|
14
|
+
icon: 'fa-light fa-diagram-project',
|
|
15
|
+
},
|
|
16
|
+
/** Task-board suspend activity type ids (match activity definition keys). */
|
|
17
|
+
activities: {
|
|
18
|
+
humanTask: 'workflow-activity:human-task',
|
|
19
|
+
cartable: 'workflow-activity:cartable',
|
|
20
|
+
},
|
|
21
|
+
entities: {
|
|
22
|
+
workflowDefinition: {
|
|
23
|
+
name: 'WorkflowDefinition',
|
|
24
|
+
fullName: `${config.module}.WorkflowDefinition`,
|
|
25
|
+
title: '@workflow-management:workflow-definitions.entities.workflow-definition.title',
|
|
26
|
+
titlePlural: '@workflow-management:workflow-definitions.entities.workflow-definition.plural',
|
|
27
|
+
icon: 'fa-light fa-diagram-project',
|
|
28
|
+
},
|
|
29
|
+
workflowInstance: {
|
|
30
|
+
name: 'WorkflowInstance',
|
|
31
|
+
fullName: `${config.module}.WorkflowInstance`,
|
|
32
|
+
title: '@workflow-management:workflow-instances.entities.workflow-instance.title',
|
|
33
|
+
titlePlural: '@workflow-management:workflow-instances.entities.workflow-instance.plural',
|
|
34
|
+
icon: 'fa-light fa-play-circle',
|
|
35
|
+
},
|
|
36
|
+
activityDefinition: {
|
|
37
|
+
name: 'ActivityDefinition',
|
|
38
|
+
fullName: `${config.module}.ActivityDefinition`,
|
|
39
|
+
title: '@workflow-management:activities.entities.activity-definition.title',
|
|
40
|
+
titlePlural: '@workflow-management:activities.entities.activity-definition.plural',
|
|
41
|
+
icon: 'fa-light fa-puzzle-piece',
|
|
42
|
+
},
|
|
43
|
+
automation: {
|
|
44
|
+
name: 'Automation',
|
|
45
|
+
fullName: `${config.module}.Automation`,
|
|
46
|
+
title: '@workflow-management:automations.entities.automation.title',
|
|
47
|
+
titlePlural: '@workflow-management:automations.entities.automation.plural',
|
|
48
|
+
icon: 'fa-light fa-bolt',
|
|
49
|
+
},
|
|
50
|
+
},
|
|
51
|
+
/**
|
|
52
|
+
* Live dashboard queries bound to base DashboardManagement chart/KPI widgets.
|
|
53
|
+
* Keys: `{module}:Dashboard:{Name}`.
|
|
54
|
+
*/
|
|
55
|
+
queries: {
|
|
56
|
+
dashboard: {
|
|
57
|
+
definitionsKpi: `${config.module}:Dashboard:DefinitionsKpi`,
|
|
58
|
+
activitiesKpi: `${config.module}:Dashboard:ActivitiesKpi`,
|
|
59
|
+
definitionsByStatusBar: `${config.module}:Dashboard:DefinitionsByStatusBar`,
|
|
60
|
+
activitiesByCategoryDonut: `${config.module}:Dashboard:ActivitiesByCategoryDonut`,
|
|
61
|
+
publishedDefinitionsGauge: `${config.module}:Dashboard:PublishedDefinitionsGauge`,
|
|
62
|
+
/** @deprecated Prefer {@link runningInstancesKpi} for runtime ops dashboards. */
|
|
63
|
+
workflowDefinitionsKpi: `${config.module}:Dashboard:WorkflowDefinitionsKpi`,
|
|
64
|
+
/** @deprecated Prefer {@link instancesBySubStatusDonut} for runtime ops dashboards. */
|
|
65
|
+
workflowsByStatusBar: `${config.module}:Dashboard:WorkflowsByStatusBar`,
|
|
66
|
+
runningInstancesKpi: `${config.module}:Dashboard:RunningInstancesKpi`,
|
|
67
|
+
faultedInstancesKpi: `${config.module}:Dashboard:FaultedInstancesKpi`,
|
|
68
|
+
awaitingActionInstancesKpi: `${config.module}:Dashboard:AwaitingActionInstancesKpi`,
|
|
69
|
+
startedTodayInstancesKpi: `${config.module}:Dashboard:StartedTodayInstancesKpi`,
|
|
70
|
+
completedTodayInstancesKpi: `${config.module}:Dashboard:CompletedTodayInstancesKpi`,
|
|
71
|
+
avgRunningAgeHoursKpi: `${config.module}:Dashboard:AvgRunningAgeHoursKpi`,
|
|
72
|
+
instancesBySubStatusDonut: `${config.module}:Dashboard:InstancesBySubStatusDonut`,
|
|
73
|
+
instancesByDefinitionBar: `${config.module}:Dashboard:InstancesByDefinitionBar`,
|
|
74
|
+
instancesThroughputLine: `${config.module}:Dashboard:InstancesThroughputLine`,
|
|
75
|
+
instancesByCurrentActivityBar: `${config.module}:Dashboard:InstancesByCurrentActivityBar`,
|
|
76
|
+
instancesFaultHeatmap: `${config.module}:Dashboard:InstancesFaultHeatmap`,
|
|
77
|
+
},
|
|
78
|
+
},
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
/** @deprecated Use category plugin (ActivityDefinitionCategory). This entity is no longer loaded by the module. */
|
|
82
|
+
async function factoryActivityCategory() {
|
|
83
|
+
const entityDef = {
|
|
84
|
+
module: RootConfig.module.name,
|
|
85
|
+
name: 'ActivityCategory',
|
|
86
|
+
title: '@workflow-management:activities.entities.activity-category.title',
|
|
87
|
+
icon: 'fa-light fa-folder',
|
|
88
|
+
parentKey: 'parentId',
|
|
89
|
+
formats: {
|
|
90
|
+
individual: '@workflow-management:activities.entities.activity-category.title',
|
|
91
|
+
plural: '@workflow-management:activities.entities.activity-category.plural',
|
|
92
|
+
searchResult: {
|
|
93
|
+
title: '{{ title }}',
|
|
94
|
+
description: '{{ description }}',
|
|
95
|
+
},
|
|
96
|
+
},
|
|
97
|
+
plugins: [{ name: 'history' }],
|
|
98
|
+
groups: [{ id: 'basic-info', title: '@general:terms.interface.basic-info' }],
|
|
99
|
+
properties: [
|
|
100
|
+
{
|
|
101
|
+
name: 'id',
|
|
102
|
+
title: 'ID',
|
|
103
|
+
groupId: 'basic-info',
|
|
104
|
+
schema: { dataType: 'uuid', visible: false, nullable: false, readonly: true, unique: { enabled: true } },
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
name: 'title',
|
|
108
|
+
title: '@general:terms.common.title',
|
|
109
|
+
groupId: 'basic-info',
|
|
110
|
+
schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text } },
|
|
111
|
+
options: { sort: { enabled: true }, filter: { advance: { enabled: true }, inline: { enabled: true } } },
|
|
112
|
+
validations: [{ rule: 'required' }],
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
name: 'parentId',
|
|
116
|
+
title: '@general:terms.classification.parent',
|
|
117
|
+
groupId: 'basic-info',
|
|
118
|
+
schema: {
|
|
119
|
+
dataType: 'string',
|
|
120
|
+
interface: {
|
|
121
|
+
type: AXPWidgetsList.Editors.EntityCategory,
|
|
122
|
+
options: {
|
|
123
|
+
entity: `${RootConfig.module.name}.ActivityCategory`,
|
|
124
|
+
multiple: true,
|
|
125
|
+
textField: 'title',
|
|
126
|
+
valueField: 'id',
|
|
127
|
+
parentKey: 'parentId',
|
|
128
|
+
},
|
|
129
|
+
},
|
|
130
|
+
},
|
|
131
|
+
options: { filter: { advance: { enabled: true }, inline: { enabled: true } } },
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
name: 'description',
|
|
135
|
+
title: '@general:terms.common.description',
|
|
136
|
+
groupId: 'basic-info',
|
|
137
|
+
schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.largeText } },
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
name: 'childrenCount',
|
|
141
|
+
title: '@general:terms.classification.children',
|
|
142
|
+
groupId: 'basic-info',
|
|
143
|
+
schema: { dataType: 'number', interface: { type: AXPWidgetsCatalog.number }, readonly: true },
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
name: 'itemsCount',
|
|
147
|
+
title: '@general:terms.classification.items',
|
|
148
|
+
groupId: 'basic-info',
|
|
149
|
+
schema: { dataType: 'number', interface: { type: AXPWidgetsCatalog.number }, readonly: true },
|
|
150
|
+
},
|
|
151
|
+
],
|
|
152
|
+
columns: [{ name: 'title' }, { name: 'description' }, { name: 'childrenCount' }, { name: 'itemsCount' }],
|
|
153
|
+
interfaces: {
|
|
154
|
+
master: {
|
|
155
|
+
create: {
|
|
156
|
+
sections: [{ id: 'basic-info' }],
|
|
157
|
+
properties: [
|
|
158
|
+
{ name: 'title', layout: { positions: { lg: { colSpan: 12, order: 1 } } } },
|
|
159
|
+
{ name: 'parentId', layout: { positions: { lg: { colSpan: 12, order: 2 } } } },
|
|
160
|
+
{ name: 'description', layout: { positions: { lg: { colSpan: 12, order: 3 } } } },
|
|
161
|
+
],
|
|
162
|
+
},
|
|
163
|
+
update: {
|
|
164
|
+
sections: [{ id: 'basic-info' }],
|
|
165
|
+
properties: [
|
|
166
|
+
{ name: 'title', layout: { positions: { lg: { colSpan: 12, order: 1 } } } },
|
|
167
|
+
{ name: 'parentId', layout: { positions: { lg: { colSpan: 12, order: 2 } } } },
|
|
168
|
+
{ name: 'description', layout: { positions: { lg: { colSpan: 12, order: 3 } } } },
|
|
169
|
+
{ name: 'childrenCount', layout: { positions: { lg: { colSpan: 6, order: 4 } } } },
|
|
170
|
+
{ name: 'itemsCount', layout: { positions: { lg: { colSpan: 6, order: 5 } } } },
|
|
171
|
+
],
|
|
172
|
+
},
|
|
173
|
+
single: {
|
|
174
|
+
title: '{{title}}',
|
|
175
|
+
sections: [{ id: 'basic-info' }],
|
|
176
|
+
properties: [
|
|
177
|
+
{ name: 'title', layout: { positions: { lg: { colSpan: 12, order: 1 } } } },
|
|
178
|
+
{ name: 'parentId', layout: { positions: { lg: { colSpan: 12, order: 2 } } } },
|
|
179
|
+
{ name: 'description', layout: { positions: { lg: { colSpan: 12, order: 3 } } } },
|
|
180
|
+
{ name: 'childrenCount', layout: { positions: { lg: { colSpan: 6, order: 4 } } } },
|
|
181
|
+
{ name: 'itemsCount', layout: { positions: { lg: { colSpan: 6, order: 5 } } } },
|
|
182
|
+
],
|
|
183
|
+
actions: [...entityMasterRecordActions(), entityMasterDeleteAction()],
|
|
184
|
+
},
|
|
185
|
+
list: {
|
|
186
|
+
actions: [...entityMasterCrudActions()],
|
|
187
|
+
views: [createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] })],
|
|
188
|
+
},
|
|
189
|
+
},
|
|
190
|
+
},
|
|
191
|
+
};
|
|
192
|
+
return entityDef;
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
/**
|
|
196
|
+
* Generated bundle index. Do not edit.
|
|
197
|
+
*/
|
|
198
|
+
|
|
199
|
+
export { factoryActivityCategory };
|
|
200
|
+
//# sourceMappingURL=acorex-platform-module-workflow-management-client-contracts-entities-activity-category.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"acorex-platform-module-workflow-management-client-contracts-entities-activity-category.mjs","sources":["../../../../libs/modules/workflow-management/contracts/src/root-config.ts","../../../../libs/modules/workflow-management/contracts/src/entities/activity-category/activity-category.entity.ts","../../../../libs/modules/workflow-management/contracts/src/acorex-platform-module-workflow-management-client-contracts-entities-activity-category.ts"],"sourcesContent":["const config = {\n i18n: 'workflow-management',\n module: 'WorkflowManagement',\n};\n\nexport const RootConfig = {\n config,\n module: {\n route: 'workflow-management',\n name: config.module,\n title: '@workflow-management:module.title',\n icon: 'fa-light fa-diagram-project',\n },\n /** Task-board suspend activity type ids (match activity definition keys). */\n activities: {\n humanTask: 'workflow-activity:human-task',\n cartable: 'workflow-activity:cartable',\n },\n entities: {\n workflowDefinition: {\n name: 'WorkflowDefinition',\n fullName: `${config.module}.WorkflowDefinition`,\n title: '@workflow-management:workflow-definitions.entities.workflow-definition.title',\n titlePlural: '@workflow-management:workflow-definitions.entities.workflow-definition.plural',\n icon: 'fa-light fa-diagram-project',\n },\n workflowInstance: {\n name: 'WorkflowInstance',\n fullName: `${config.module}.WorkflowInstance`,\n title: '@workflow-management:workflow-instances.entities.workflow-instance.title',\n titlePlural: '@workflow-management:workflow-instances.entities.workflow-instance.plural',\n icon: 'fa-light fa-play-circle',\n },\n activityDefinition: {\n name: 'ActivityDefinition',\n fullName: `${config.module}.ActivityDefinition`,\n title: '@workflow-management:activities.entities.activity-definition.title',\n titlePlural: '@workflow-management:activities.entities.activity-definition.plural',\n icon: 'fa-light fa-puzzle-piece',\n },\n automation: {\n name: 'Automation',\n fullName: `${config.module}.Automation`,\n title: '@workflow-management:automations.entities.automation.title',\n titlePlural: '@workflow-management:automations.entities.automation.plural',\n icon: 'fa-light fa-bolt',\n },\n },\n /**\n * Live dashboard queries bound to base DashboardManagement chart/KPI widgets.\n * Keys: `{module}:Dashboard:{Name}`.\n */\n queries: {\n dashboard: {\n definitionsKpi: `${config.module}:Dashboard:DefinitionsKpi`,\n activitiesKpi: `${config.module}:Dashboard:ActivitiesKpi`,\n definitionsByStatusBar: `${config.module}:Dashboard:DefinitionsByStatusBar`,\n activitiesByCategoryDonut: `${config.module}:Dashboard:ActivitiesByCategoryDonut`,\n publishedDefinitionsGauge: `${config.module}:Dashboard:PublishedDefinitionsGauge`,\n /** @deprecated Prefer {@link runningInstancesKpi} for runtime ops dashboards. */\n workflowDefinitionsKpi: `${config.module}:Dashboard:WorkflowDefinitionsKpi`,\n /** @deprecated Prefer {@link instancesBySubStatusDonut} for runtime ops dashboards. */\n workflowsByStatusBar: `${config.module}:Dashboard:WorkflowsByStatusBar`,\n runningInstancesKpi: `${config.module}:Dashboard:RunningInstancesKpi`,\n faultedInstancesKpi: `${config.module}:Dashboard:FaultedInstancesKpi`,\n awaitingActionInstancesKpi: `${config.module}:Dashboard:AwaitingActionInstancesKpi`,\n startedTodayInstancesKpi: `${config.module}:Dashboard:StartedTodayInstancesKpi`,\n completedTodayInstancesKpi: `${config.module}:Dashboard:CompletedTodayInstancesKpi`,\n avgRunningAgeHoursKpi: `${config.module}:Dashboard:AvgRunningAgeHoursKpi`,\n instancesBySubStatusDonut: `${config.module}:Dashboard:InstancesBySubStatusDonut`,\n instancesByDefinitionBar: `${config.module}:Dashboard:InstancesByDefinitionBar`,\n instancesThroughputLine: `${config.module}:Dashboard:InstancesThroughputLine`,\n instancesByCurrentActivityBar: `${config.module}:Dashboard:InstancesByCurrentActivityBar`,\n instancesFaultHeatmap: `${config.module}:Dashboard:InstancesFaultHeatmap`,\n },\n },\n} as const;\n","import { AXPWidgetsCatalog, AXPWidgetsList } from '@acorex-platform/framework-shared/core';\nimport { AXPEntity, createAllQueryView, entityMasterCrudActions, entityMasterDeleteAction, entityMasterRecordActions } from '@acorex-platform/framework-shared/entity';\nimport { RootConfig } from '../../root-config';\n\n/** @deprecated Use category plugin (ActivityDefinitionCategory). This entity is no longer loaded by the module. */\nexport async function factoryActivityCategory(): Promise<AXPEntity | null> {\n const entityDef: AXPEntity = {\n module: RootConfig.module.name,\n name: 'ActivityCategory',\n title: '@workflow-management:activities.entities.activity-category.title',\n icon: 'fa-light fa-folder',\n parentKey: 'parentId',\n formats: {\n individual: '@workflow-management:activities.entities.activity-category.title',\n plural: '@workflow-management:activities.entities.activity-category.plural',\n searchResult: {\n title: '{{ title }}',\n description: '{{ description }}',\n },\n },\n plugins: [{ name: 'history' }],\n groups: [{ id: 'basic-info', title: '@general:terms.interface.basic-info' }],\n properties: [\n {\n name: 'id',\n title: 'ID',\n groupId: 'basic-info',\n schema: { dataType: 'uuid', visible: false, nullable: false, readonly: true, unique: { enabled: true } },\n },\n {\n name: 'title',\n title: '@general:terms.common.title',\n groupId: 'basic-info',\n schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.text } },\n options: { sort: { enabled: true }, filter: { advance: { enabled: true }, inline: { enabled: true } } },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'parentId',\n title: '@general:terms.classification.parent',\n groupId: 'basic-info',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsList.Editors.EntityCategory,\n options: {\n entity: `${RootConfig.module.name}.ActivityCategory`,\n multiple: true,\n textField: 'title',\n valueField: 'id',\n parentKey: 'parentId',\n },\n },\n },\n options: { filter: { advance: { enabled: true }, inline: { enabled: true } } },\n },\n {\n name: 'description',\n title: '@general:terms.common.description',\n groupId: 'basic-info',\n schema: { dataType: 'string', interface: { type: AXPWidgetsCatalog.largeText } },\n },\n {\n name: 'childrenCount',\n title: '@general:terms.classification.children',\n groupId: 'basic-info',\n schema: { dataType: 'number', interface: { type: AXPWidgetsCatalog.number }, readonly: true },\n },\n {\n name: 'itemsCount',\n title: '@general:terms.classification.items',\n groupId: 'basic-info',\n schema: { dataType: 'number', interface: { type: AXPWidgetsCatalog.number }, readonly: true },\n },\n ],\n columns: [{ name: 'title' }, { name: 'description' }, { name: 'childrenCount' }, { name: 'itemsCount' }],\n interfaces: {\n master: {\n create: {\n sections: [{ id: 'basic-info' }],\n properties: [\n { name: 'title', layout: { positions: { lg: { colSpan: 12, order: 1 } } } },\n { name: 'parentId', layout: { positions: { lg: { colSpan: 12, order: 2 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12, order: 3 } } } },\n ],\n },\n update: {\n sections: [{ id: 'basic-info' }],\n properties: [\n { name: 'title', layout: { positions: { lg: { colSpan: 12, order: 1 } } } },\n { name: 'parentId', layout: { positions: { lg: { colSpan: 12, order: 2 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12, order: 3 } } } },\n { name: 'childrenCount', layout: { positions: { lg: { colSpan: 6, order: 4 } } } },\n { name: 'itemsCount', layout: { positions: { lg: { colSpan: 6, order: 5 } } } },\n ],\n },\n single: {\n title: '{{title}}',\n sections: [{ id: 'basic-info' }],\n properties: [\n { name: 'title', layout: { positions: { lg: { colSpan: 12, order: 1 } } } },\n { name: 'parentId', layout: { positions: { lg: { colSpan: 12, order: 2 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12, order: 3 } } } },\n { name: 'childrenCount', layout: { positions: { lg: { colSpan: 6, order: 4 } } } },\n { name: 'itemsCount', layout: { positions: { lg: { colSpan: 6, order: 5 } } } },\n ],\n actions: [...entityMasterRecordActions(), entityMasterDeleteAction()],\n },\n list: {\n actions: [...entityMasterCrudActions()],\n views: [createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] })],\n },\n },\n },\n };\n\n return entityDef;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './entity-entry.activity-category';\n"],"names":[],"mappings":"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"}
|