@acorex/platform 21.0.0-next.8 → 21.0.0-next.85
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/contracts/README.md +3 -0
- package/fesm2022/acorex-platform-auth.mjs +201 -81
- package/fesm2022/acorex-platform-auth.mjs.map +1 -1
- package/fesm2022/acorex-platform-common-common-settings.provider-Ytey9uhY.mjs +177 -0
- package/fesm2022/acorex-platform-common-common-settings.provider-Ytey9uhY.mjs.map +1 -0
- package/fesm2022/acorex-platform-common.mjs +4490 -880
- package/fesm2022/acorex-platform-common.mjs.map +1 -1
- package/fesm2022/acorex-platform-contracts.mjs +38 -0
- package/fesm2022/acorex-platform-contracts.mjs.map +1 -0
- package/fesm2022/acorex-platform-core.mjs +2612 -667
- package/fesm2022/acorex-platform-core.mjs.map +1 -1
- package/fesm2022/acorex-platform-domain.mjs +557 -826
- package/fesm2022/acorex-platform-domain.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-builder.mjs +1255 -209
- package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-components-binding-expression-editor-popup.component-CXEdvDTf.mjs +121 -0
- package/fesm2022/acorex-platform-layout-components-binding-expression-editor-popup.component-CXEdvDTf.mjs.map +1 -0
- package/fesm2022/acorex-platform-layout-components.mjs +6493 -1920
- package/fesm2022/acorex-platform-layout-components.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-designer.mjs +612 -287
- package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-entity-attachments-page.component-CwG6n_Yb.mjs +376 -0
- package/fesm2022/acorex-platform-layout-entity-attachments-page.component-CwG6n_Yb.mjs.map +1 -0
- package/fesm2022/acorex-platform-layout-entity-file-list-popup.component--IeMZLIr.mjs +100 -0
- package/fesm2022/acorex-platform-layout-entity-file-list-popup.component--IeMZLIr.mjs.map +1 -0
- package/fesm2022/acorex-platform-layout-entity.mjs +22502 -9964
- package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-views.mjs +1395 -387
- package/fesm2022/acorex-platform-layout-views.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-widget-core.mjs +2226 -524
- package/fesm2022/acorex-platform-layout-widget-core.mjs.map +1 -1
- package/fesm2022/{acorex-platform-layout-widgets-button-widget-designer.component-C3VoBb_b.mjs → acorex-platform-layout-widgets-button-widget-designer.component-Dy7jF-oD.mjs} +10 -10
- package/fesm2022/acorex-platform-layout-widgets-button-widget-designer.component-Dy7jF-oD.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layout-widgets-image-preview.popup-V31OpYah.mjs → acorex-platform-layout-widgets-image-preview.popup-C_EPAvCU.mjs} +6 -7
- package/fesm2022/acorex-platform-layout-widgets-image-preview.popup-C_EPAvCU.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layout-widgets-page-widget-designer.component-BtZMBxYp.mjs → acorex-platform-layout-widgets-page-widget-designer.component-D10yO28c.mjs} +12 -12
- package/fesm2022/acorex-platform-layout-widgets-page-widget-designer.component-D10yO28c.mjs.map +1 -0
- package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-J0zcGKBX.mjs +116 -0
- package/fesm2022/acorex-platform-layout-widgets-repeater-widget-column.component-J0zcGKBX.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layout-widgets-tabular-data-edit-popup.component-Ck7-wpT2.mjs → acorex-platform-layout-widgets-tabular-data-edit-popup.component-DjpZU6gz.mjs} +6 -6
- package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-DjpZU6gz.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layout-widgets-tabular-data-view-popup.component-y8vjUiVs.mjs → acorex-platform-layout-widgets-tabular-data-view-popup.component-gX-3Kx9I.mjs} +5 -5
- package/fesm2022/acorex-platform-layout-widgets-tabular-data-view-popup.component-gX-3Kx9I.mjs.map +1 -0
- package/fesm2022/{acorex-platform-layout-widgets-text-block-widget-designer.component-Df1BFkSa.mjs → acorex-platform-layout-widgets-text-block-widget-designer.component-Vo4fWHtX.mjs} +6 -6
- package/fesm2022/acorex-platform-layout-widgets-text-block-widget-designer.component-Vo4fWHtX.mjs.map +1 -0
- package/fesm2022/acorex-platform-layout-widgets.mjs +18746 -16718
- package/fesm2022/acorex-platform-layout-widgets.mjs.map +1 -1
- package/fesm2022/acorex-platform-native.mjs +8 -7
- package/fesm2022/acorex-platform-native.mjs.map +1 -1
- package/fesm2022/acorex-platform-runtime.mjs +391 -166
- package/fesm2022/acorex-platform-runtime.mjs.map +1 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-CWLfNqV0.mjs +160 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-CWLfNqV0.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-C7cT82K2.mjs +120 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-C7cT82K2.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-default-entity-master-single-view.component-eMBby9k4.mjs → acorex-platform-themes-default-entity-master-single-view.component-Br9p5aXT.mjs} +21 -28
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-Br9p5aXT.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-error-401.component-B1nsdpTY.mjs +48 -0
- package/fesm2022/acorex-platform-themes-default-error-401.component-B1nsdpTY.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-error-404.component-D4UvRe8u.mjs +42 -0
- package/fesm2022/acorex-platform-themes-default-error-404.component-D4UvRe8u.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-error-offline.component-DR6G8gPC.mjs +19 -0
- package/fesm2022/acorex-platform-themes-default-error-offline.component-DR6G8gPC.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default.mjs +2337 -94
- package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
- package/fesm2022/{acorex-platform-themes-shared-icon-chooser-column.component-C0EpfU2k.mjs → acorex-platform-themes-shared-icon-chooser-column.component-CqkWJYdv.mjs} +6 -6
- package/fesm2022/acorex-platform-themes-shared-icon-chooser-column.component-CqkWJYdv.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-shared-icon-chooser-view.component-9W52W6Nu.mjs → acorex-platform-themes-shared-icon-chooser-view.component-BOTuLdWN.mjs} +6 -6
- package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-BOTuLdWN.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-shared-settings.provider-DSs1o1M6.mjs → acorex-platform-themes-shared-settings.provider-BjuzSe0T.mjs} +52 -33
- package/fesm2022/acorex-platform-themes-shared-settings.provider-BjuzSe0T.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-D566Kdvy.mjs +94 -0
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-D566Kdvy.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-D7-rCGl7.mjs +86 -0
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-D7-rCGl7.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-shared.mjs +793 -612
- package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
- package/fesm2022/acorex-platform-workflow.mjs +997 -274
- package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
- package/fesm2022/acorex-platform.mjs.map +1 -1
- package/package.json +41 -35
- package/{auth/index.d.ts → types/acorex-platform-auth.d.ts} +40 -19
- package/types/acorex-platform-common.d.ts +3673 -0
- package/types/acorex-platform-contracts.d.ts +940 -0
- package/{core/index.d.ts → types/acorex-platform-core.d.ts} +1029 -170
- package/{domain/index.d.ts → types/acorex-platform-domain.d.ts} +744 -412
- package/{layout/builder/index.d.ts → types/acorex-platform-layout-builder.d.ts} +262 -55
- package/types/acorex-platform-layout-components.d.ts +3329 -0
- package/{layout/designer/index.d.ts → types/acorex-platform-layout-designer.d.ts} +96 -18
- package/types/acorex-platform-layout-entity.d.ts +4512 -0
- package/{layout/views/index.d.ts → types/acorex-platform-layout-views.d.ts} +334 -91
- package/{layout/widget-core/index.d.ts → types/acorex-platform-layout-widget-core.d.ts} +438 -162
- package/{layout/widgets/index.d.ts → types/acorex-platform-layout-widgets.d.ts} +1152 -507
- package/{native/index.d.ts → types/acorex-platform-native.d.ts} +0 -7
- package/types/acorex-platform-runtime.d.ts +571 -0
- package/{themes/default/index.d.ts → types/acorex-platform-themes-default.d.ts} +268 -11
- package/{themes/shared/index.d.ts → types/acorex-platform-themes-shared.d.ts} +30 -2
- package/{workflow/index.d.ts → types/acorex-platform-workflow.d.ts} +436 -748
- package/common/index.d.ts +0 -2470
- package/fesm2022/acorex-platform-common-common-settings.provider-zhqNP3xb.mjs +0 -71
- package/fesm2022/acorex-platform-common-common-settings.provider-zhqNP3xb.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-button-widget-designer.component-C3VoBb_b.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-CxrsI6Hn.mjs +0 -135
- package/fesm2022/acorex-platform-layout-widgets-file-list-popup.component-CxrsI6Hn.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-image-preview.popup-V31OpYah.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-page-widget-designer.component-BtZMBxYp.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-tabular-data-edit-popup.component-Ck7-wpT2.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-tabular-data-view-popup.component-y8vjUiVs.mjs.map +0 -1
- package/fesm2022/acorex-platform-layout-widgets-text-block-widget-designer.component-Df1BFkSa.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-VIGuU5M4.mjs +0 -157
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-VIGuU5M4.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-D3qZa5fM.mjs +0 -1542
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-D3qZa5fM.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-Ua3ZA5hk.mjs +0 -101
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-Ua3ZA5hk.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-eMBby9k4.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-error-401.component-cfREo88K.mjs +0 -31
- package/fesm2022/acorex-platform-themes-default-error-401.component-cfREo88K.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-error-404.component-CdCV5ZoA.mjs +0 -25
- package/fesm2022/acorex-platform-themes-default-error-404.component-CdCV5ZoA.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-error-offline.component-E7SzBcAt.mjs +0 -19
- package/fesm2022/acorex-platform-themes-default-error-offline.component-E7SzBcAt.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-icon-chooser-column.component-C0EpfU2k.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-icon-chooser-view.component-9W52W6Nu.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-settings.provider-DSs1o1M6.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-Dz0cylyQ.mjs +0 -65
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-column.component-Dz0cylyQ.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-DY0JtT1v.mjs +0 -64
- package/fesm2022/acorex-platform-themes-shared-theme-color-chooser-view.component-DY0JtT1v.mjs.map +0 -1
- package/layout/components/index.d.ts +0 -1670
- package/layout/entity/index.d.ts +0 -2294
- package/runtime/index.d.ts +0 -307
- /package/{index.d.ts → types/acorex-platform.d.ts} +0 -0
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
//#region ---- Address Data Types ----
|
|
2
|
+
//#endregion
|
|
3
|
+
|
|
4
|
+
//#endregion
|
|
5
|
+
|
|
6
|
+
// Note:
|
|
7
|
+
// Previous versions defined dedicated activity result/command types here
|
|
8
|
+
// (AXPActivityResult / AXPActivity) that wrapped output and outcome.
|
|
9
|
+
// Activities are now modeled directly as AXPCommand with outcome stored in
|
|
10
|
+
// AXPExecuteCommandResult.metadata.outcome.
|
|
11
|
+
|
|
12
|
+
/** Registration key for {@link AXPPreviewWidgetFieldCommand}; lives in contracts so consumers can reference it without importing the command implementation. */
|
|
13
|
+
const AXP_PREVIEW_WIDGET_FIELD_COMMAND_KEY = 'Widget:Preview';
|
|
14
|
+
|
|
15
|
+
// ============================================
|
|
16
|
+
// WORKFLOW INSTANCE v3.0.0 TYPES
|
|
17
|
+
// Based on Elsa Workflow Instance schema: https://elsaworkflows.io/schemas/workflow-instance/v3.0.0/schema.json
|
|
18
|
+
// Compatible with Elsa backend while using ACoreX naming conventions
|
|
19
|
+
// ============================================
|
|
20
|
+
|
|
21
|
+
var AXPFileStorageStatus;
|
|
22
|
+
(function (AXPFileStorageStatus) {
|
|
23
|
+
AXPFileStorageStatus["Temporary"] = "temporary";
|
|
24
|
+
AXPFileStorageStatus["Committed"] = "committed";
|
|
25
|
+
AXPFileStorageStatus["PendingDeletion"] = "pendingDeletion";
|
|
26
|
+
AXPFileStorageStatus["Archived"] = "archived";
|
|
27
|
+
AXPFileStorageStatus["Error"] = "error";
|
|
28
|
+
})(AXPFileStorageStatus || (AXPFileStorageStatus = {}));
|
|
29
|
+
|
|
30
|
+
//#region ---- Contracts barrel ----
|
|
31
|
+
//#endregion
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Generated bundle index. Do not edit.
|
|
35
|
+
*/
|
|
36
|
+
|
|
37
|
+
export { AXPFileStorageStatus, AXP_PREVIEW_WIDGET_FIELD_COMMAND_KEY };
|
|
38
|
+
//# sourceMappingURL=acorex-platform-contracts.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"acorex-platform-contracts.mjs","sources":["../../../../libs/platform/contracts/src/lib/address.types.ts","../../../../libs/platform/contracts/src/lib/workflow-definition.types.ts","../../../../libs/platform/contracts/src/lib/activity.types.ts","../../../../libs/platform/contracts/src/lib/preview-widget-field.command.key.ts","../../../../libs/platform/contracts/src/lib/workflow-instance.types.ts","../../../../libs/platform/contracts/src/lib/file-storage.types.ts","../../../../libs/platform/contracts/src/lib/index.ts","../../../../libs/platform/contracts/src/acorex-platform-contracts.ts"],"sourcesContent":["//#region ---- Address Data Types ----\n\n/**\n * Address mode type - determines the display mode of the address widget\n * - simple: single text input for full address (one line)\n * - popup: readonly summary + button to edit in popup dialog\n * - expandable: expandable panel — collapsed shows full address, expanded shows inline form\n */\nexport type AXPAddressMode = 'simple' | 'popup' | 'expandable';\n\n/**\n * Address label option\n */\nexport interface AXPAddressLabel {\n id: string;\n name: string;\n}\n\n/**\n * Address data structure\n */\nexport interface AXPAddressData {\n street1: string;\n street2?: string;\n postalCode?: string;\n coordinates?: string; // lat,lng format\n full: string; // formatted full address\n label?: string; // if hasLabel enabled\n // Exposed fields from lookup widgets\n country?: { id?: string; title?: string };\n state?: { id?: string; title?: string };\n city?: { id?: string; title?: string };\n}\n\n//#endregion\n","import { type AXPProperty, AXPEntityOp, AXPMetaData, AXPOptionsData, type AXPMultiLanguageString } from '@acorex/platform/core';\n\n//#region ---- Workflow definition (graph + metadata) ----\n\nexport interface AXPWorkflowDefinition {\n schemaVersion: 'acorex-platform-workflow/v1';\n\n name: string;\n title?: AXPMultiLanguageString | null;\n description?: AXPMultiLanguageString | null;\n\n variables?: AXPProperty[];\n inputs?: AXPProperty[];\n outputs?: AXPWorkflowOutputProperty[];\n\n graph: AXPWorkflowGraph;\n\n customProperties?: Record<string, any>;\n\n /** engine specific (Elsa, ...) */\n extensions?: AXPWorkflowExtensions;\n\n /**\n * Workflow bindings configuration.\n * Defines which entities and events should trigger this workflow.\n */\n bindings?: AXPWorkflowBinding[];\n}\n\n//#endregion\n\n//#region ---- Graph & activity instance ----\n\nexport interface AXPWorkflowGraph {\n startActivityId: string;\n activities: AXPWorkflowActivityInstance[];\n connections: AXPConnection[];\n\n /** purely designer */\n designer?: {\n nodes?: Record<string, { x: number; y: number; nodeId?: string; width?: number; height?: number }>;\n edges?: Array<{ from: string; to: string; vertices?: Array<{ x: number; y: number }> }>;\n /**\n * When true, the Activities page has applied its initial auto-arrange (or the graph already had\n * persisted node positions). Prevents re-running automatic layout on subsequent visits.\n */\n layoutArranged?: boolean;\n };\n}\n\nexport interface AXPWorkflowActivityInstance {\n id: string;\n nodeId?: string;\n\n /**\n * Activity name - references AXPActivityDefinition.name\n * Used to lookup activity definition for metadata (executionMode, title, etc.)\n */\n name: string;\n\n /**\n * Input values for this activity instance.\n * Key-value pairs where keys match {@link AXPProperty.name} from AXPActivityDefinition.inputs\n * Example: { \"message\": \"Hello\", \"duration\": 5000 }\n */\n inputs?: AXPOptionsData;\n\n title?: string;\n\n /**\n * Output mapping: process variable name → path in this activity's output (BPMN-style: activity → variable).\n * When this activity completes, each entry sets variables[variableName] = output[outputPath].\n * Example: { leaveRequestId: 'id' } → variables.leaveRequestId = activityOutput.id\n */\n outputToVariables?: AXPOptionsData;\n\n metadata?: AXPMetaData;\n\n /** engine-specific override */\n extensions?: Record<string, any>;\n}\n\nexport interface AXPConnection {\n source: { activtyName: string; port?: string | null };\n target: { activtyName: string; port?: string | null };\n vertices?: Array<{ x: number; y: number }>;\n}\n\n//#endregion\n\n//#region ---- Workflow I/O (built on AXPProperty) ----\n\n/**\n * Workflow output: same as {@link AXPProperty} with optional source path and engine metadata.\n */\nexport interface AXPWorkflowOutputProperty extends AXPProperty {\n /**\n * Optional: where this output comes from in your context/memory.\n * Example: \"$.result.orderId\" or \"vars.orderId\"\n */\n path?: string;\n metadata?: Record<string, any>;\n}\n\n//#endregion\n\n//#region ---- Engine extensions & bindings ----\n\n/**\n * Engine-specific extension bag for a workflow.\n * Keep ALL engine-only fields here (Elsa, StepFunctions adapter, etc).\n */\nexport interface AXPWorkflowExtensions {\n /**\n * Elsa-specific extensions (optional).\n */\n elsa?: AXPElsaWorkflowExtensions;\n /**\n * Other engines (future-proof).\n * Example: stepFunctions, logicApps, temporal, ...\n */\n [engine: string]: any;\n}\n\n/**\n * Elsa-only fields (Optional).\n * Put strategy/tool/schema/raw payload here to keep Core model global.\n */\nexport interface AXPElsaWorkflowExtensions {\n /**\n * Elsa schema URL (if you want to round-trip exact docs).\n * Example: \"https://elsaworkflows.io/schemas/workflow-definition/v3.0.0/schema.json\"\n */\n schema?: string;\n\n toolVersion?: string;\n materializerName?: string;\n\n /**\n * Elsa strategy/options (engine-level concerns).\n */\n options?: {\n activationStrategyType?: string | null;\n incidentStrategyType?: string | null;\n commitStrategyName?: string | null;\n autoUpdateConsumingWorkflows?: boolean;\n usableAsActivity?: boolean | null;\n activityCategory?: string | null;\n };\n\n /**\n * If you want lossless Elsa round-trip, keep the raw Elsa definition here.\n */\n rawDefinition?: any;\n}\n\n/**\n * Workflow binding configuration.\n * Defines which entities and events should trigger a workflow.\n */\nexport interface AXPWorkflowBinding {\n /**\n * Entity types this workflow applies to (e.g., ['ContentManagement.Promotion', 'ContentManagement.Article'])\n * Empty array means applies to all entities with workflow-run plugin enabled.\n */\n entityTypes: string[];\n\n /**\n * Event types that trigger this workflow (e.g., ['create', 'update'])\n * Uses AXPEntityOp directly (create, update, delete, etc.)\n */\n eventTypes: AXPEntityOp[];\n\n /**\n * Whether this binding is enabled\n */\n enabled: boolean;\n\n /**\n * Optional conditions for when to trigger (future enhancement)\n */\n conditions?: any;\n}\n\n//#endregion\n","import type { AXPProperty } from '@acorex/platform/core';\nimport { AXPCategoryEntity, AXPMultiLanguageString } from '@acorex/platform/core';\nimport type { AXPWorkflowOutputProperty } from './workflow-definition.types';\n\n// ============================================\n// SIMPLIFIED ACTIVITY SYSTEM\n// ============================================\n\n/**\n * Type of task for inbox handling.\n * - 'human-task': Requires inbox - needs human interaction\n * - 'ui-activity': UI-only activity (no inbox) - immediate execution\n * - 'system-activity': System/backend activity (no inbox) - automated execution\n */\nexport type AXPTaskType = 'human-task' | 'ui-activity' | 'system-activity';\n\n/**\n * How the workflow engine should offer \"continue to next step?\" before an inline frontend activity.\n * Declared on {@link AXPActivityDefinition} and copied onto {@link AXPWorkflowTask} at runtime.\n */\nexport type AXPWorkflowContinuationBeforeInteractive =\n | 'default'\n /** Skip when opened from a task-board human-task primary action (e.g. start-fill, review). */\n | 'skip-when-chained-from-human-task'\n /** Skip for the natural assignee; initiator / reassign users still get the prompt (workflow-management). */\n | 'skip-for-assignee';\n\n/** Optional continuation UX metadata for an activity definition. */\nexport interface AXPWorkflowContinuationMetadata {\n beforeInteractive?: AXPWorkflowContinuationBeforeInteractive;\n}\n\n/**\n * Activity Category - Extends AXPCategoryEntity for consistency and performance\n *\n * Inherited properties from AXPCategoryEntity:\n * - id: string - Unique identifier\n * - title: string - Display name\n * - description?: string - Category description\n * - parentId?: string - Parent category ID\n * - childrenCount: number - Direct child categories count (enables lazy loading)\n * - itemsCount?: number - Direct activities count\n * - totalChildrenCount?: number - Total nested categories (optional, for analytics)\n * - totalItemsCount?: number - Total activities in tree (optional, for analytics)\n */\nexport interface AXPActivityCategory extends AXPCategoryEntity {\n // No additional properties needed - all inherited from AXPCategoryEntity\n // Use: childrenCount instead of hasChild\n // Use: itemsCount instead of hasActivity\n}\n\n/**\n * Lightweight category snapshot embedded in activity-definition records.\n */\nexport interface AXPActivityDefinitionCategoryRef {\n id: string;\n name: string;\n title: AXPMultiLanguageString;\n}\n\n/**\n * Activity Definition - Metadata for UI and tooling.\n * Contains all metadata needed for displaying activities in toolbox and designer.\n * The `name` property is used as the command key for execution.\n */\nexport interface AXPActivityDefinition {\n /**\n * Activity name - used as command key for execution.\n * This is the unique identifier for the activity.\n */\n name: string;\n\n /**\n * Activity type (e.g., \"workflow-activity:check-permission\").\n */\n type: string;\n\n /**\n * Display name for UI (plain or per-locale map).\n */\n title?: AXPMultiLanguageString;\n\n\n instanceTitle?: string;\n\n /**\n * Description of what the activity does (plain or per-locale map).\n */\n description?: AXPMultiLanguageString;\n\n /**\n * Category for grouping in toolbox.\n */\n category?: AXPActivityDefinitionCategoryRef;\n\n /**\n * Icon name or class.\n */\n icon?: string;\n\n /**\n * Where this activity should be executed.\n * - 'frontend': Execute in browser (UI activities, console, events)\n * - 'backend': Execute in backend (business logic, API calls)\n * - 'both': Execute in both frontend and backend (hybrid activities)\n *\n * Default: 'frontend'\n */\n executionMode?: 'frontend' | 'backend' | 'both';\n\n /**\n * Type of task for inbox handling.\n * - 'human-task': Requires inbox - needs human interaction\n * - 'ui-activity': UI-only activity (no inbox) - immediate execution\n * - 'system-activity': System/backend activity (no inbox) - automated execution\n *\n * Default: 'ui-activity' (for backward compatibility)\n */\n taskType?: AXPTaskType;\n\n /**\n * Input properties (form/schema for activity parameters).\n */\n inputs?: AXPProperty[];\n\n /**\n * Output properties (result shape + optional path/metadata).\n */\n outputs?: AXPWorkflowOutputProperty[];\n\n /**\n * Static outcomes (exit points).\n * Example: ['Done', 'Success', 'Failed']\n */\n outcomes?: string[];\n\n /**\n * Whether this activity is browsable in the toolbox.\n * Default: true\n */\n isBrowsable?: boolean;\n\n /**\n * Whether this activity is a container (can have children).\n * Default: false\n */\n isContainer?: boolean;\n\n /**\n * Continuation prompt behavior when this activity runs inline in the workflow manager.\n */\n workflowContinuation?: AXPWorkflowContinuationMetadata;\n}\n\n/**\n * Query result shape for activity-definition catalog endpoints.\n */\nexport interface AXPActivityDefinitionQueryResult {\n total: number;\n items: AXPActivityDefinition[];\n}\n\n// Note:\n// Previous versions defined dedicated activity result/command types here\n// (AXPActivityResult / AXPActivity) that wrapped output and outcome.\n// Activities are now modeled directly as AXPCommand with outcome stored in\n// AXPExecuteCommandResult.metadata.outcome.\n","/** Registration key for {@link AXPPreviewWidgetFieldCommand}; lives in contracts so consumers can reference it without importing the command implementation. */\nexport const AXP_PREVIEW_WIDGET_FIELD_COMMAND_KEY = 'Widget:Preview';\n","// ============================================\n// WORKFLOW INSTANCE v3.0.0 TYPES\n// Based on Elsa Workflow Instance schema: https://elsaworkflows.io/schemas/workflow-instance/v3.0.0/schema.json\n// Compatible with Elsa backend while using ACoreX naming conventions\n// ============================================\n\n/**\n * Workflow status.\n */\nexport type AXPWorkflowStatus = 'Running' | 'Finished';\n\n/**\n * Workflow sub-status.\n */\nexport type AXPWorkflowSubStatus = 'Pending' | 'Executing' | 'Suspended' | 'Finished' | 'Cancelled' | 'Faulted';\n\n/**\n * Activity status.\n */\nexport type AXPActivityStatus = 'Running' | 'Completed' | 'Canceled' | 'Faulted';\n\n/**\n * Exception state.\n */\nexport interface AXPExceptionState {\n /**\n * Exception type name.\n */\n type: string;\n\n /**\n * Exception message.\n */\n message: string;\n\n /**\n * Stack trace (nullable).\n */\n stackTrace?: string | null;\n\n /**\n * Inner exception (nullable).\n */\n innerException?: AXPExceptionState | null;\n}\n\n/**\n * Activity incident.\n */\nexport interface AXPActivityIncident {\n /**\n * Activity ID that caused the incident.\n */\n activityId: string;\n\n /**\n * Activity node ID.\n */\n activityNodeId: string;\n\n /**\n * Activity type.\n */\n activityType: string;\n\n /**\n * Incident message.\n */\n message: string;\n\n /**\n * Exception (nullable).\n */\n exception?: AXPExceptionState | null;\n\n /**\n * Timestamp (ISO date-time).\n */\n timestamp: string;\n}\n\n/**\n * Workflow fault state.\n */\nexport interface AXPWorkflowFaultState {\n /**\n * Exception (nullable).\n */\n exception?: AXPExceptionState | null;\n\n /**\n * Fault message.\n */\n message: string;\n\n /**\n * Faulted activity ID (nullable).\n */\n faultedActivityId?: string | null;\n}\n\n/**\n * Bookmark.\n */\nexport interface AXPBookmark {\n /**\n * Bookmark ID.\n */\n id: string;\n\n /**\n * Bookmark name.\n */\n name: string;\n\n /**\n * Bookmark hash.\n */\n hash: string;\n\n /**\n * Bookmark payload (nullable).\n */\n payload?: any | null;\n\n /**\n * Activity node ID.\n */\n activityNodeId: string;\n\n /**\n * Activity instance ID.\n */\n activityInstanceId: string;\n\n /**\n * Auto burn flag.\n */\n autoBurn?: boolean;\n\n /**\n * Callback method name (nullable).\n */\n callbackMethodName?: string | null;\n\n /**\n * Metadata (nullable).\n */\n metadata?: Record<string, string> | null;\n}\n\n/**\n * Completion callback state.\n */\nexport interface AXPCompletionCallbackState {\n /**\n * Owner activity instance ID.\n */\n ownerInstanceId: string;\n\n /**\n * Child activity node ID.\n */\n childNodeId: string;\n\n /**\n * Method name (nullable).\n */\n methodName?: string | null;\n}\n\n/**\n * Variable (for activity context).\n */\nexport interface AXPActivityVariable {\n /**\n * Variable ID.\n */\n id: string;\n\n /**\n * Variable name.\n */\n name: string;\n\n /**\n * Type name.\n */\n typeName: string;\n\n /**\n * Is array flag.\n */\n isArray?: boolean;\n\n /**\n * Variable value (nullable).\n */\n value?: any | null;\n\n /**\n * Storage driver type name (nullable).\n */\n storageDriverTypeName?: string | null;\n}\n\n/**\n * Activity execution context state.\n */\nexport interface AXPActivityExecutionContextState {\n /**\n * Context ID (activity instance ID).\n */\n id: string;\n\n /**\n * Parent context ID (nullable).\n */\n parentContextId?: string | null;\n\n /**\n * Scheduled activity node ID.\n */\n scheduledActivityNodeId: string;\n\n /**\n * Owner activity node ID (nullable).\n */\n ownerActivityNodeId?: string | null;\n\n /**\n * Properties bag.\n */\n properties: Record<string, any>;\n\n /**\n * Activity state (evaluated properties) (nullable).\n */\n activityState?: Record<string, any> | null;\n\n /**\n * Dynamic variables.\n */\n dynamicVariables: AXPActivityVariable[];\n\n /**\n * Activity status.\n */\n status: AXPActivityStatus;\n\n /**\n * Is executing flag.\n */\n isExecuting: boolean;\n\n /**\n * Fault count.\n */\n faultCount: number;\n\n /**\n * Started at timestamp (ISO date-time).\n */\n startedAt: string;\n\n /**\n * Completed at timestamp (ISO date-time, nullable).\n */\n completedAt?: string | null;\n\n /**\n * Tag (nullable).\n */\n tag?: any | null;\n}\n\n/**\n * Workflow state (internal execution state).\n */\nexport interface AXPWorkflowState {\n /**\n * State ID.\n */\n id: string;\n\n /**\n * Workflow definition ID.\n */\n definitionId: string;\n\n /**\n * Workflow definition version.\n */\n definitionVersion: number;\n\n /**\n * Correlation ID (nullable).\n */\n correlationId?: string | null;\n\n /**\n * Workflow status.\n */\n status: AXPWorkflowStatus;\n\n /**\n * Workflow sub-status.\n */\n subStatus: AXPWorkflowSubStatus;\n\n /**\n * Bookmarks.\n */\n bookmarks: AXPBookmark[];\n\n /**\n * Incidents.\n */\n incidents: AXPActivityIncident[];\n\n /**\n * Fault (nullable).\n */\n fault?: AXPWorkflowFaultState | null;\n\n /**\n * Completion callbacks.\n */\n completionCallbacks: AXPCompletionCallbackState[];\n\n /**\n * Activity execution contexts.\n */\n activityExecutionContexts: AXPActivityExecutionContextState[];\n\n /**\n * Input data.\n */\n input: Record<string, any>;\n\n /**\n * Output data.\n */\n output: Record<string, any>;\n\n /**\n * Properties bag.\n */\n properties: Record<string, any>;\n\n /**\n * Created at timestamp (ISO date-time).\n */\n createdAt: string;\n\n /**\n * Updated at timestamp (ISO date-time).\n */\n updatedAt: string;\n\n /**\n * Finished at timestamp (ISO date-time, nullable).\n */\n finishedAt?: string | null;\n\n /**\n * Total number of activities/steps in the workflow (for progress display).\n */\n totalSteps?: number;\n}\n\n/**\n * Workflow instance (stored in database).\n * This matches the Elsa Workflow Instance schema for backend compatibility.\n */\nexport interface AXPWorkflowInstance {\n /**\n * Schema reference.\n */\n $schema?: string;\n\n /**\n * Unique instance ID.\n */\n id: string;\n\n /**\n * Workflow definition ID.\n */\n definitionId: string;\n\n /**\n * Workflow definition version ID.\n */\n definitionVersionId: string;\n\n /**\n * Workflow definition version number.\n */\n version: number;\n\n /**\n * Parent workflow instance ID (nullable, for child workflows).\n */\n parentWorkflowInstanceId?: string | null;\n\n /**\n * Workflow state (internal execution state).\n */\n workflowState: AXPWorkflowState;\n\n /**\n * Workflow status.\n */\n status: AXPWorkflowStatus;\n\n /**\n * Workflow sub-status.\n */\n subStatus: AXPWorkflowSubStatus;\n\n /**\n * Correlation ID (nullable).\n */\n correlationId?: string | null;\n\n /**\n * Instance name (nullable).\n */\n name?: string | null;\n\n /**\n * Incident count.\n */\n incidentCount: number;\n\n /**\n * Created at timestamp (ISO date-time).\n */\n createdAt: string;\n\n /**\n * Updated at timestamp (ISO date-time).\n */\n updatedAt: string;\n\n /**\n * Finished at timestamp (ISO date-time, nullable).\n */\n finishedAt?: string | null;\n\n /**\n * Entity reference ID (for linking workflow instances to business entities).\n */\n entityRefId?: string | null;\n\n /**\n * Entity reference type (e.g., 'HumanCapitalManagement.LeaveRequest').\n */\n entityRefType?: string | null;\n}\n","import { AXPMetaData } from '@acorex/platform/core';\n\nexport enum AXPFileStorageStatus {\n Temporary = 'temporary', // File is not yet associated with a parent entity\n Committed = 'committed', // File is fully associated and in use\n PendingDeletion = 'pendingDeletion', // File is marked for deletion but not yet removed\n Archived = 'archived', // File is archived and no longer actively used\n Error = 'error', // File encountered an error during processing\n}\n\n/**\n * Interface representing a file storage request in the Acorex platform.\n */\nexport interface AXPFileStorageCreateRequest {\n /**\n * The file to be stored.\n */\n file: File;\n\n /**\n * The name of the file.\n */\n name?: string;\n\n /**\n * The unique identifier of referenced entity.\n */\n refId: string;\n /**\n * The type of the referenced entity.\n */\n refType: string;\n /**\n * The category of the file. profile-picture, company-logo, policy, document, etc.\n */\n category: string;\n /**\n * The folder path where the file should be stored.\n * If null, the service will resolve the path based on metadata, user, tenant, or default rules.\n */\n path?: string;\n /**\n * Metadata associated with the file.\n */\n metadata?: AXPMetaData;\n\n /**\n * Indicates whether the file is primary or not.\n */\n isPrimary?: boolean;\n\n /**\n * Indicates the status of the file.\n */\n status?: AXPFileStorageStatus;\n}\n\nexport interface AXPFileStorageUpdateRequest {\n /**\n * The unique identifier for the stored file.\n */\n fileId: string;\n /**\n * The folder path where the file should be stored.\n * If null, the service will resolve the path based on metadata, user, tenant, or default rules.\n */\n path?: string;\n /**\n * The name of the file.\n */\n name?: string;\n /**\n * Metadata associated with the file.\n */\n metadata: AXPMetaData;\n\n /**\n * Indicates whether the file is primary or not.\n */\n isPrimary?: boolean;\n}\n\n/**\n * Represents information about a file stored in the AXP file storage system.\n */\nexport interface AXPFileStorageInfo {\n /**\n * The unique identifier for the stored file.\n */\n id?: string;\n /**\n * The unique identifier for the stored file.\n */\n fileId: string;\n\n /**\n * The unique identifier of referenced entity.\n */\n refId: string;\n /**\n * The type of the referenced entity.\n */\n refType: string;\n /**\n * The category of the file. profile-picture, company-logo, policy, document, etc.\n */\n category: string;\n\n /**\n * The URL where the file can be accessed.\n */\n url?: string;\n\n /**\n * The size of the file in bytes.\n */\n size: number;\n\n /**\n * The name of the file.\n */\n name?: string;\n\n /**\n * The MIME type of the file.\n */\n mimeType: string;\n\n /**\n * The date and time when the file was uploaded.\n */\n uploadedAt: Date;\n\n /**\n * Indicates whether the file is public or private.\n */\n isPublic: boolean;\n\n /**\n * Indicates whether the file is primary or not.\n */\n isPrimary?: boolean;\n\n status: AXPFileStorageStatus; // Updated to use enum\n\n binary: File;\n}\n\nexport interface AXPFileManyStorageInfo {\n /**\n * The unique identifier for the stored file.\n */\n id?: string;\n /**\n * The unique identifier for the stored file.\n */\n fileId: string;\n /**\n * The unique identifier of referenced entity.\n */\n refId: string;\n /**\n * The type of the referenced entity.\n */\n refType: string;\n /**\n * The size of the file in bytes.\n */\n size: number;\n\n /**\n * The name of the file.\n */\n name?: string;\n\n /**\n * The URL where the file can be accessed.\n */\n url?: string;\n\n /**\n * Optional title (e.g. for display in file list).\n */\n title?: string;\n\n /**\n * Optional description (e.g. for display in file list).\n */\n description?: string;\n}\n\n/**\n * Represents information about a file stored in the AXP file storage system.\n */\nexport interface AXPFileStorageFindRequest {\n /**\n * The unique identifier of referenced entity.\n */\n refId?: string;\n /**\n * The type of the referenced entity.\n */\n refType?: string;\n /**\n * The category of the file. profile-picture, company-logo, policy, document, etc.\n */\n category?: string;\n /**\n * The MIME type of the file.\n */\n mimeType?: string;\n /**\n * Indicates whether the file is public or private.\n */\n isPublic?: boolean;\n /**\n * Indicates whether the file is primary or not.\n */\n isPrimary?: boolean;\n /**\n * The date and time range when the file was uploaded.\n */\n uploadedAtRange?: { from: Date; to: Date };\n}\n","//#region ---- Contracts barrel ----\n\nexport * from './address.types';\nexport * from './workflow-definition.types';\nexport * from './activity.types';\nexport * from './preview-widget-field.command.key';\nexport * from './workflow-instance.types';\nexport * from './file-storage.types';\nexport * from './metadata.types';\n\n//#endregion\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"AAAA;AAkCA;;ACsJA;;ACtBA;AACA;AACA;AACA;AACA;;ACtKA;AACO,MAAM,oCAAoC,GAAG;;ACDpD;AACA;AACA;AACA;AACA;;ICFY;AAAZ,CAAA,UAAY,oBAAoB,EAAA;AAC9B,IAAA,oBAAA,CAAA,WAAA,CAAA,GAAA,WAAuB;AACvB,IAAA,oBAAA,CAAA,WAAA,CAAA,GAAA,WAAuB;AACvB,IAAA,oBAAA,CAAA,iBAAA,CAAA,GAAA,iBAAmC;AACnC,IAAA,oBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB;AACrB,IAAA,oBAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AACjB,CAAC,EANW,oBAAoB,KAApB,oBAAoB,GAAA,EAAA,CAAA,CAAA;;ACFhC;AAUA;;ACVA;;AAEG;;;;"}
|