@etohq/workflows-module 0.0.1-next-20260318155517
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/README.md +16 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +19 -0
- package/dist/index.js.map +1 -0
- package/dist/models/index.d.ts +5 -0
- package/dist/models/index.d.ts.map +1 -0
- package/dist/models/index.js +21 -0
- package/dist/models/index.js.map +1 -0
- package/dist/models/workflow-definition.d.ts +26 -0
- package/dist/models/workflow-definition.d.ts.map +1 -0
- package/dist/models/workflow-definition.js +47 -0
- package/dist/models/workflow-definition.js.map +1 -0
- package/dist/models/workflow-log.d.ts +13 -0
- package/dist/models/workflow-log.d.ts.map +1 -0
- package/dist/models/workflow-log.js +30 -0
- package/dist/models/workflow-log.js.map +1 -0
- package/dist/models/workflow-runtime.d.ts +20 -0
- package/dist/models/workflow-runtime.d.ts.map +1 -0
- package/dist/models/workflow-runtime.js +43 -0
- package/dist/models/workflow-runtime.js.map +1 -0
- package/dist/models/workflow-token.d.ts +22 -0
- package/dist/models/workflow-token.d.ts.map +1 -0
- package/dist/models/workflow-token.js +38 -0
- package/dist/models/workflow-token.js.map +1 -0
- package/dist/services/index.d.ts +2 -0
- package/dist/services/index.d.ts.map +1 -0
- package/dist/services/index.js +18 -0
- package/dist/services/index.js.map +1 -0
- package/dist/services/workflows-module.service.d.ts +19 -0
- package/dist/services/workflows-module.service.d.ts.map +1 -0
- package/dist/services/workflows-module.service.js +9 -0
- package/dist/services/workflows-module.service.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +32 -0
package/README.md
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# `@etohq/workflows-module`
|
|
2
|
+
|
|
3
|
+
Persistence models and a module service for workflows runtime state.
|
|
4
|
+
|
|
5
|
+
This package contains DML models (Mikro-ORM entities via Eto DML) and a module service
|
|
6
|
+
implemented using `EtoService`.
|
|
7
|
+
|
|
8
|
+
## What It Stores
|
|
9
|
+
- workflow definitions
|
|
10
|
+
- workflow runtime state
|
|
11
|
+
- workflow tokens
|
|
12
|
+
- workflow logs
|
|
13
|
+
|
|
14
|
+
## What It Does Not Do
|
|
15
|
+
- orchestration and cross-module business logic (belongs in `packages/flows`)
|
|
16
|
+
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,YAAY,CAAA"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./models"), exports);
|
|
18
|
+
__exportStar(require("./services"), exports);
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAwB;AACxB,6CAA0B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/models/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,oBAAoB,CAAA;AAClC,cAAc,kBAAkB,CAAA;AAChC,cAAc,gBAAgB,CAAA"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./workflow-definition"), exports);
|
|
18
|
+
__exportStar(require("./workflow-runtime"), exports);
|
|
19
|
+
__exportStar(require("./workflow-token"), exports);
|
|
20
|
+
__exportStar(require("./workflow-log"), exports);
|
|
21
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/models/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAqC;AACrC,qDAAkC;AAClC,mDAAgC;AAChC,iDAA8B"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export declare const WorkflowDefinition: import("@etohq/framework/utils").DmlEntity<import("@etohq/framework/utils").DMLEntitySchemaBuilder<{
|
|
2
|
+
id: import("@etohq/framework/utils").PrimaryKeyModifier<string, import("@etohq/framework/utils").IdProperty>;
|
|
3
|
+
tenant_id: import("@etohq/framework/utils").TextProperty;
|
|
4
|
+
cross_env_key: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
5
|
+
name: import("@etohq/framework/utils").TextProperty;
|
|
6
|
+
display_name: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
7
|
+
review_machine_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
8
|
+
variant: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
9
|
+
version: import("@etohq/framework/utils").NumberProperty;
|
|
10
|
+
workflow_type: import("@etohq/framework/utils").TextProperty;
|
|
11
|
+
entity_type: import("@etohq/framework/utils").TextProperty;
|
|
12
|
+
definition_type: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
13
|
+
definition: import("@etohq/framework/utils").JSONProperty;
|
|
14
|
+
extensions: import("@etohq/framework/utils").NullableModifier<Record<string, unknown>, import("@etohq/framework/utils").JSONProperty>;
|
|
15
|
+
context_schema: import("@etohq/framework/utils").NullableModifier<Record<string, unknown>, import("@etohq/framework/utils").JSONProperty>;
|
|
16
|
+
documents_schema: import("@etohq/framework/utils").NullableModifier<Record<string, unknown>, import("@etohq/framework/utils").JSONProperty>;
|
|
17
|
+
config: import("@etohq/framework/utils").JSONProperty;
|
|
18
|
+
initial_state: import("@etohq/framework/utils").TextProperty;
|
|
19
|
+
persist_states: import("@etohq/framework/utils").ArrayProperty;
|
|
20
|
+
submit_states: import("@etohq/framework/utils").ArrayProperty;
|
|
21
|
+
final_states: import("@etohq/framework/utils").ArrayProperty;
|
|
22
|
+
is_public: import("@etohq/framework/utils").BooleanProperty;
|
|
23
|
+
is_active: import("@etohq/framework/utils").BooleanProperty;
|
|
24
|
+
description: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
25
|
+
}>, "WorkflowDefinition">;
|
|
26
|
+
//# sourceMappingURL=workflow-definition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-definition.d.ts","sourceRoot":"","sources":["../../src/models/workflow-definition.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;yBAiD3B,CAAA"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WorkflowDefinition = void 0;
|
|
4
|
+
const utils_1 = require("@etohq/framework/utils");
|
|
5
|
+
exports.WorkflowDefinition = utils_1.model
|
|
6
|
+
.define("WorkflowDefinition", {
|
|
7
|
+
id: utils_1.model.id({ prefix: "wfd" }).primaryKey(),
|
|
8
|
+
tenant_id: utils_1.model.text(),
|
|
9
|
+
cross_env_key: utils_1.model.text().nullable(),
|
|
10
|
+
name: utils_1.model.text(),
|
|
11
|
+
display_name: utils_1.model.text().nullable(),
|
|
12
|
+
review_machine_id: utils_1.model.text().nullable(),
|
|
13
|
+
variant: utils_1.model.text().nullable(),
|
|
14
|
+
version: utils_1.model.number().default(1),
|
|
15
|
+
workflow_type: utils_1.model.text(),
|
|
16
|
+
entity_type: utils_1.model.text(),
|
|
17
|
+
definition_type: utils_1.model.text().nullable(),
|
|
18
|
+
definition: utils_1.model.json(),
|
|
19
|
+
extensions: utils_1.model.json().nullable(),
|
|
20
|
+
context_schema: utils_1.model.json().nullable(),
|
|
21
|
+
documents_schema: utils_1.model.json().nullable(),
|
|
22
|
+
config: utils_1.model.json().default({}),
|
|
23
|
+
initial_state: utils_1.model.text().default("idle"),
|
|
24
|
+
persist_states: utils_1.model.array().default([]),
|
|
25
|
+
submit_states: utils_1.model.array().default([]),
|
|
26
|
+
final_states: utils_1.model.array().default([]),
|
|
27
|
+
is_public: utils_1.model.boolean().default(false),
|
|
28
|
+
is_active: utils_1.model.boolean().default(true),
|
|
29
|
+
description: utils_1.model.text().nullable(),
|
|
30
|
+
})
|
|
31
|
+
.indexes([
|
|
32
|
+
{
|
|
33
|
+
name: "IDX_workflow_def_tenant_name_version",
|
|
34
|
+
on: ["tenant_id", "name", "version"],
|
|
35
|
+
unique: true,
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
name: "IDX_workflow_def_tenant_cross_env_key",
|
|
39
|
+
on: ["tenant_id", "cross_env_key"],
|
|
40
|
+
unique: true,
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
name: "IDX_workflow_def_type",
|
|
44
|
+
on: ["workflow_type"],
|
|
45
|
+
},
|
|
46
|
+
]);
|
|
47
|
+
//# sourceMappingURL=workflow-definition.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-definition.js","sourceRoot":"","sources":["../../src/models/workflow-definition.ts"],"names":[],"mappings":";;;AAAA,kDAA8C;AAEjC,QAAA,kBAAkB,GAAG,aAAK;KACpC,MAAM,CAAC,oBAAoB,EAAE;IAC5B,EAAE,EAAE,aAAK,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,UAAU,EAAE;IAE5C,SAAS,EAAE,aAAK,CAAC,IAAI,EAAE;IAEvB,aAAa,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAEtC,IAAI,EAAE,aAAK,CAAC,IAAI,EAAE;IAClB,YAAY,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IACrC,iBAAiB,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAC1C,OAAO,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAChC,OAAO,EAAE,aAAK,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAElC,aAAa,EAAE,aAAK,CAAC,IAAI,EAAE;IAC3B,WAAW,EAAE,aAAK,CAAC,IAAI,EAAE;IACzB,eAAe,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAExC,UAAU,EAAE,aAAK,CAAC,IAAI,EAAE;IACxB,UAAU,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IACnC,cAAc,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IACvC,gBAAgB,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IACzC,MAAM,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAEhC,aAAa,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;IAC3C,cAAc,EAAE,aAAK,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IACzC,aAAa,EAAE,aAAK,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IACxC,YAAY,EAAE,aAAK,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAEvC,SAAS,EAAE,aAAK,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACzC,SAAS,EAAE,aAAK,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAExC,WAAW,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;CACrC,CAAC;KACD,OAAO,CAAC;IACP;QACE,IAAI,EAAE,sCAAsC;QAC5C,EAAE,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,CAAC;QACpC,MAAM,EAAE,IAAI;KACb;IACD;QACE,IAAI,EAAE,uCAAuC;QAC7C,EAAE,EAAE,CAAC,WAAW,EAAE,eAAe,CAAC;QAClC,MAAM,EAAE,IAAI;KACb;IACD;QACE,IAAI,EAAE,uBAAuB;QAC7B,EAAE,EAAE,CAAC,eAAe,CAAC;KACtB;CACF,CAAC,CAAA"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export declare const WorkflowLog: import("@etohq/framework/utils").DmlEntity<import("@etohq/framework/utils").DMLEntitySchemaBuilder<{
|
|
2
|
+
id: import("@etohq/framework/utils").PrimaryKeyModifier<string, import("@etohq/framework/utils").IdProperty>;
|
|
3
|
+
tenant_id: import("@etohq/framework/utils").TextProperty;
|
|
4
|
+
workflow_runtime_id: import("@etohq/framework/utils").TextProperty;
|
|
5
|
+
type: import("@etohq/framework/utils").EnumProperty<["EVENT_RECEIVED", "STATE_TRANSITION", "PLUGIN_INVOCATION", "CONTEXT_CHANGED", "ERROR", "INFO"]>;
|
|
6
|
+
metadata: import("@etohq/framework/utils").NullableModifier<Record<string, unknown>, import("@etohq/framework/utils").JSONProperty>;
|
|
7
|
+
from_state: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
8
|
+
to_state: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
9
|
+
message: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
10
|
+
event_name: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
11
|
+
plugin_name: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
12
|
+
}>, "WorkflowLog">;
|
|
13
|
+
//# sourceMappingURL=workflow-log.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-log.d.ts","sourceRoot":"","sources":["../../src/models/workflow-log.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW;;;;;;;;;;;kBA6BpB,CAAA"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WorkflowLog = void 0;
|
|
4
|
+
const utils_1 = require("@etohq/framework/utils");
|
|
5
|
+
exports.WorkflowLog = utils_1.model
|
|
6
|
+
.define("WorkflowLog", {
|
|
7
|
+
id: utils_1.model.id({ prefix: "wfl" }).primaryKey(),
|
|
8
|
+
tenant_id: utils_1.model.text(),
|
|
9
|
+
workflow_runtime_id: utils_1.model.text(),
|
|
10
|
+
type: utils_1.model.enum([
|
|
11
|
+
"EVENT_RECEIVED",
|
|
12
|
+
"STATE_TRANSITION",
|
|
13
|
+
"PLUGIN_INVOCATION",
|
|
14
|
+
"CONTEXT_CHANGED",
|
|
15
|
+
"ERROR",
|
|
16
|
+
"INFO",
|
|
17
|
+
]),
|
|
18
|
+
metadata: utils_1.model.json().nullable(),
|
|
19
|
+
from_state: utils_1.model.text().nullable(),
|
|
20
|
+
to_state: utils_1.model.text().nullable(),
|
|
21
|
+
message: utils_1.model.text().nullable(),
|
|
22
|
+
event_name: utils_1.model.text().nullable(),
|
|
23
|
+
plugin_name: utils_1.model.text().nullable(),
|
|
24
|
+
})
|
|
25
|
+
.indexes([
|
|
26
|
+
{ name: "IDX_workflow_log_runtime", on: ["workflow_runtime_id"] },
|
|
27
|
+
{ name: "IDX_workflow_log_type", on: ["type"] },
|
|
28
|
+
{ name: "IDX_workflow_log_tenant", on: ["tenant_id"] },
|
|
29
|
+
]);
|
|
30
|
+
//# sourceMappingURL=workflow-log.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-log.js","sourceRoot":"","sources":["../../src/models/workflow-log.ts"],"names":[],"mappings":";;;AAAA,kDAA8C;AAEjC,QAAA,WAAW,GAAG,aAAK;KAC7B,MAAM,CAAC,aAAa,EAAE;IACrB,EAAE,EAAE,aAAK,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,UAAU,EAAE;IAE5C,SAAS,EAAE,aAAK,CAAC,IAAI,EAAE;IACvB,mBAAmB,EAAE,aAAK,CAAC,IAAI,EAAE;IAEjC,IAAI,EAAE,aAAK,CAAC,IAAI,CAAC;QACf,gBAAgB;QAChB,kBAAkB;QAClB,mBAAmB;QACnB,iBAAiB;QACjB,OAAO;QACP,MAAM;KACP,CAAC;IAEF,QAAQ,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAEjC,UAAU,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IACnC,QAAQ,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAEjC,OAAO,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAChC,UAAU,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IACnC,WAAW,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;CACrC,CAAC;KACD,OAAO,CAAC;IACP,EAAE,IAAI,EAAE,0BAA0B,EAAE,EAAE,EAAE,CAAC,qBAAqB,CAAC,EAAE;IACjE,EAAE,IAAI,EAAE,uBAAuB,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE;IAC/C,EAAE,IAAI,EAAE,yBAAyB,EAAE,EAAE,EAAE,CAAC,WAAW,CAAC,EAAE;CACvD,CAAC,CAAA"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export declare const WorkflowRuntime: import("@etohq/framework/utils").DmlEntity<import("@etohq/framework/utils").DMLEntitySchemaBuilder<{
|
|
2
|
+
id: import("@etohq/framework/utils").PrimaryKeyModifier<string, import("@etohq/framework/utils").IdProperty>;
|
|
3
|
+
tenant_id: import("@etohq/framework/utils").TextProperty;
|
|
4
|
+
workflow_definition_id: import("@etohq/framework/utils").TextProperty;
|
|
5
|
+
workflow_definition_version: import("@etohq/framework/utils").NullableModifier<number, import("@etohq/framework/utils").NumberProperty>;
|
|
6
|
+
entity_id: import("@etohq/framework/utils").TextProperty;
|
|
7
|
+
parent_runtime_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
8
|
+
current_state: import("@etohq/framework/utils").TextProperty;
|
|
9
|
+
status: import("@etohq/framework/utils").EnumProperty<["active", "completed", "failed", "paused"]>;
|
|
10
|
+
context: import("@etohq/framework/utils").JSONProperty;
|
|
11
|
+
config: import("@etohq/framework/utils").JSONProperty;
|
|
12
|
+
assignee_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
13
|
+
actor_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
14
|
+
assigned_at: import("@etohq/framework/utils").NullableModifier<Date, import("@etohq/framework/utils").DateTimeProperty>;
|
|
15
|
+
resolved_at: import("@etohq/framework/utils").NullableModifier<Date, import("@etohq/framework/utils").DateTimeProperty>;
|
|
16
|
+
resolution_reason: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
17
|
+
tags: import("@etohq/framework/utils").ArrayProperty;
|
|
18
|
+
metadata: import("@etohq/framework/utils").JSONProperty;
|
|
19
|
+
}>, "WorkflowRuntime">;
|
|
20
|
+
//# sourceMappingURL=workflow-runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-runtime.d.ts","sourceRoot":"","sources":["../../src/models/workflow-runtime.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;sBA4CxB,CAAA"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WorkflowRuntime = void 0;
|
|
4
|
+
const utils_1 = require("@etohq/framework/utils");
|
|
5
|
+
exports.WorkflowRuntime = utils_1.model
|
|
6
|
+
.define("WorkflowRuntime", {
|
|
7
|
+
id: utils_1.model.id({ prefix: "wfr" }).primaryKey(),
|
|
8
|
+
tenant_id: utils_1.model.text(),
|
|
9
|
+
workflow_definition_id: utils_1.model.text(),
|
|
10
|
+
workflow_definition_version: utils_1.model.number().nullable(),
|
|
11
|
+
entity_id: utils_1.model.text(),
|
|
12
|
+
parent_runtime_id: utils_1.model.text().nullable(),
|
|
13
|
+
current_state: utils_1.model.text(),
|
|
14
|
+
status: utils_1.model.enum(["active", "completed", "failed", "paused"]).default("active"),
|
|
15
|
+
context: utils_1.model.json().default({}),
|
|
16
|
+
config: utils_1.model.json().default({}),
|
|
17
|
+
assignee_id: utils_1.model.text().nullable(),
|
|
18
|
+
actor_id: utils_1.model.text().nullable(),
|
|
19
|
+
assigned_at: utils_1.model.dateTime().nullable(),
|
|
20
|
+
resolved_at: utils_1.model.dateTime().nullable(),
|
|
21
|
+
resolution_reason: utils_1.model.text().nullable(),
|
|
22
|
+
tags: utils_1.model.array().default([]),
|
|
23
|
+
metadata: utils_1.model.json().default({}),
|
|
24
|
+
})
|
|
25
|
+
.indexes([
|
|
26
|
+
{
|
|
27
|
+
name: "IDX_workflow_runtime_tenant_entity",
|
|
28
|
+
on: ["tenant_id", "entity_id"],
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
name: "IDX_workflow_runtime_definition",
|
|
32
|
+
on: ["workflow_definition_id"],
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
name: "IDX_workflow_runtime_status",
|
|
36
|
+
on: ["status"],
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name: "IDX_workflow_runtime_parent",
|
|
40
|
+
on: ["parent_runtime_id"],
|
|
41
|
+
},
|
|
42
|
+
]);
|
|
43
|
+
//# sourceMappingURL=workflow-runtime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-runtime.js","sourceRoot":"","sources":["../../src/models/workflow-runtime.ts"],"names":[],"mappings":";;;AAAA,kDAA8C;AAEjC,QAAA,eAAe,GAAG,aAAK;KACjC,MAAM,CAAC,iBAAiB,EAAE;IACzB,EAAE,EAAE,aAAK,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,UAAU,EAAE;IAE5C,SAAS,EAAE,aAAK,CAAC,IAAI,EAAE;IAEvB,sBAAsB,EAAE,aAAK,CAAC,IAAI,EAAE;IACpC,2BAA2B,EAAE,aAAK,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACtD,SAAS,EAAE,aAAK,CAAC,IAAI,EAAE;IACvB,iBAAiB,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAE1C,aAAa,EAAE,aAAK,CAAC,IAAI,EAAE;IAC3B,MAAM,EAAE,aAAK,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;IAEjF,OAAO,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IACjC,MAAM,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAEhC,WAAW,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IACpC,QAAQ,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IACjC,WAAW,EAAE,aAAK,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAExC,WAAW,EAAE,aAAK,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACxC,iBAAiB,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAE1C,IAAI,EAAE,aAAK,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAC/B,QAAQ,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;CACnC,CAAC;KACD,OAAO,CAAC;IACP;QACE,IAAI,EAAE,oCAAoC;QAC1C,EAAE,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC;KAC/B;IACD;QACE,IAAI,EAAE,iCAAiC;QACvC,EAAE,EAAE,CAAC,wBAAwB,CAAC;KAC/B;IACD;QACE,IAAI,EAAE,6BAA6B;QACnC,EAAE,EAAE,CAAC,QAAQ,CAAC;KACf;IACD;QACE,IAAI,EAAE,6BAA6B;QACnC,EAAE,EAAE,CAAC,mBAAmB,CAAC;KAC1B;CACF,CAAC,CAAA"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export declare const WorkflowToken: import("@etohq/framework/utils").DmlEntity<import("@etohq/framework/utils").DMLEntitySchemaBuilder<{
|
|
2
|
+
id: import("@etohq/framework/utils").PrimaryKeyModifier<string, import("@etohq/framework/utils").IdProperty>;
|
|
3
|
+
tenant_id: import("@etohq/framework/utils").TextProperty;
|
|
4
|
+
token: import("@etohq/framework/utils").TextProperty;
|
|
5
|
+
workflow_runtime_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
6
|
+
lead_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
7
|
+
entity_id: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
8
|
+
token_type: import("@etohq/framework/utils").TextProperty;
|
|
9
|
+
expires_at: import("@etohq/framework/utils").DateTimeProperty;
|
|
10
|
+
allowed_actions: import("@etohq/framework/utils").ArrayProperty;
|
|
11
|
+
allowed_document_types: import("@etohq/framework/utils").ArrayProperty;
|
|
12
|
+
used_count: import("@etohq/framework/utils").NumberProperty;
|
|
13
|
+
max_uses: import("@etohq/framework/utils").NumberProperty;
|
|
14
|
+
last_used_at: import("@etohq/framework/utils").NullableModifier<Date, import("@etohq/framework/utils").DateTimeProperty>;
|
|
15
|
+
ip_restrictions: import("@etohq/framework/utils").ArrayProperty;
|
|
16
|
+
user_agent_hash: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
17
|
+
is_active: import("@etohq/framework/utils").BooleanProperty;
|
|
18
|
+
revoked_at: import("@etohq/framework/utils").NullableModifier<Date, import("@etohq/framework/utils").DateTimeProperty>;
|
|
19
|
+
revoked_reason: import("@etohq/framework/utils").NullableModifier<string, import("@etohq/framework/utils").TextProperty>;
|
|
20
|
+
token_metadata: import("@etohq/framework/utils").JSONProperty;
|
|
21
|
+
}>, "WorkflowToken">;
|
|
22
|
+
//# sourceMappingURL=workflow-token.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-token.d.ts","sourceRoot":"","sources":["../../src/models/workflow-token.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;oBA0CtB,CAAA"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WorkflowToken = void 0;
|
|
4
|
+
const utils_1 = require("@etohq/framework/utils");
|
|
5
|
+
exports.WorkflowToken = utils_1.model
|
|
6
|
+
.define("WorkflowToken", {
|
|
7
|
+
id: utils_1.model.id({ prefix: "wft" }).primaryKey(),
|
|
8
|
+
tenant_id: utils_1.model.text(),
|
|
9
|
+
token: utils_1.model.text(),
|
|
10
|
+
workflow_runtime_id: utils_1.model.text().nullable(),
|
|
11
|
+
lead_id: utils_1.model.text().nullable(),
|
|
12
|
+
entity_id: utils_1.model.text().nullable(),
|
|
13
|
+
token_type: utils_1.model.text(),
|
|
14
|
+
expires_at: utils_1.model.dateTime(),
|
|
15
|
+
allowed_actions: utils_1.model.array().default([]),
|
|
16
|
+
allowed_document_types: utils_1.model.array().default([]),
|
|
17
|
+
used_count: utils_1.model.number().default(0),
|
|
18
|
+
max_uses: utils_1.model.number().default(1),
|
|
19
|
+
last_used_at: utils_1.model.dateTime().nullable(),
|
|
20
|
+
ip_restrictions: utils_1.model.array().default([]),
|
|
21
|
+
user_agent_hash: utils_1.model.text().nullable(),
|
|
22
|
+
is_active: utils_1.model.boolean().default(true),
|
|
23
|
+
revoked_at: utils_1.model.dateTime().nullable(),
|
|
24
|
+
revoked_reason: utils_1.model.text().nullable(),
|
|
25
|
+
token_metadata: utils_1.model.json().default({}),
|
|
26
|
+
})
|
|
27
|
+
.indexes([
|
|
28
|
+
{
|
|
29
|
+
name: "IDX_workflow_token_tenant_token",
|
|
30
|
+
on: ["tenant_id", "token"],
|
|
31
|
+
unique: true,
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
name: "IDX_workflow_token_type_active",
|
|
35
|
+
on: ["token_type", "is_active"],
|
|
36
|
+
},
|
|
37
|
+
]);
|
|
38
|
+
//# sourceMappingURL=workflow-token.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-token.js","sourceRoot":"","sources":["../../src/models/workflow-token.ts"],"names":[],"mappings":";;;AAAA,kDAA8C;AAEjC,QAAA,aAAa,GAAG,aAAK;KAC/B,MAAM,CAAC,eAAe,EAAE;IACvB,EAAE,EAAE,aAAK,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,UAAU,EAAE;IAE5C,SAAS,EAAE,aAAK,CAAC,IAAI,EAAE;IAEvB,KAAK,EAAE,aAAK,CAAC,IAAI,EAAE;IAEnB,mBAAmB,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAC5C,OAAO,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAChC,SAAS,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAElC,UAAU,EAAE,aAAK,CAAC,IAAI,EAAE;IAExB,UAAU,EAAE,aAAK,CAAC,QAAQ,EAAE;IAE5B,eAAe,EAAE,aAAK,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAC1C,sBAAsB,EAAE,aAAK,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAEjD,UAAU,EAAE,aAAK,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IACrC,QAAQ,EAAE,aAAK,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IACnC,YAAY,EAAE,aAAK,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAEzC,eAAe,EAAE,aAAK,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAC1C,eAAe,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAExC,SAAS,EAAE,aAAK,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACxC,UAAU,EAAE,aAAK,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACvC,cAAc,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAEvC,cAAc,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;CACzC,CAAC;KACD,OAAO,CAAC;IACP;QACE,IAAI,EAAE,iCAAiC;QACvC,EAAE,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC;QAC1B,MAAM,EAAE,IAAI;KACb;IACD;QACE,IAAI,EAAE,gCAAgC;QACtC,EAAE,EAAE,CAAC,YAAY,EAAE,WAAW,CAAC;KAChC;CACF,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAA"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./workflows-module.service"), exports);
|
|
18
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6DAA0C"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { IWorkflowsModuleService, WorkflowDefinitionDTO, WorkflowRuntimeDTO, WorkflowLogDTO, WorkflowTokenDTO } from "@etohq/workflows-types";
|
|
2
|
+
declare const WorkflowsModuleService_base: import("@etohq/framework/utils").EtoServiceReturnType<{
|
|
3
|
+
WorkflowDefinition: {
|
|
4
|
+
dto: WorkflowDefinitionDTO;
|
|
5
|
+
};
|
|
6
|
+
WorkflowRuntime: {
|
|
7
|
+
dto: WorkflowRuntimeDTO;
|
|
8
|
+
};
|
|
9
|
+
WorkflowToken: {
|
|
10
|
+
dto: WorkflowTokenDTO;
|
|
11
|
+
};
|
|
12
|
+
WorkflowLog: {
|
|
13
|
+
dto: WorkflowLogDTO;
|
|
14
|
+
};
|
|
15
|
+
}>;
|
|
16
|
+
export declare class WorkflowsModuleService extends WorkflowsModuleService_base implements IWorkflowsModuleService {
|
|
17
|
+
}
|
|
18
|
+
export {};
|
|
19
|
+
//# sourceMappingURL=workflows-module.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflows-module.service.d.ts","sourceRoot":"","sources":["../../src/services/workflows-module.service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,uBAAuB,EACvB,qBAAqB,EACrB,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EACjB,MAAM,wBAAwB,CAAA;;wBAKP;QAAE,GAAG,EAAE,qBAAqB,CAAA;KAAE;qBACjC;QAAE,GAAG,EAAE,kBAAkB,CAAA;KAAE;mBAC7B;QAAE,GAAG,EAAE,gBAAgB,CAAA;KAAE;iBAC3B;QAAE,GAAG,EAAE,cAAc,CAAA;KAAE;;AALxC,qBAAa,sBACX,SAAQ,2BAMR,YAAW,uBAAuB;CAAG"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WorkflowsModuleService = void 0;
|
|
4
|
+
const utils_1 = require("@etohq/framework/utils");
|
|
5
|
+
const models_1 = require("../models");
|
|
6
|
+
class WorkflowsModuleService extends (0, utils_1.EtoService)({ WorkflowDefinition: models_1.WorkflowDefinition, WorkflowRuntime: models_1.WorkflowRuntime, WorkflowToken: models_1.WorkflowToken, WorkflowLog: models_1.WorkflowLog }) {
|
|
7
|
+
}
|
|
8
|
+
exports.WorkflowsModuleService = WorkflowsModuleService;
|
|
9
|
+
//# sourceMappingURL=workflows-module.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflows-module.service.js","sourceRoot":"","sources":["../../src/services/workflows-module.service.ts"],"names":[],"mappings":";;;AAAA,kDAAmD;AAQnD,sCAA2F;AAE3F,MAAa,sBACX,SAAQ,IAAA,kBAAU,EAKf,EAAE,kBAAkB,EAAlB,2BAAkB,EAAE,eAAe,EAAf,wBAAe,EAAE,aAAa,EAAb,sBAAa,EAAE,WAAW,EAAX,oBAAW,EAAE,CAAC;CAClC;AAPvC,wDAOuC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"root":["../src/index.ts","../src/models/index.ts","../src/models/workflow-definition.ts","../src/models/workflow-log.ts","../src/models/workflow-runtime.ts","../src/models/workflow-token.ts","../src/services/index.ts","../src/services/workflows-module.service.ts"],"version":"5.8.3"}
|
package/package.json
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@etohq/workflows-module",
|
|
3
|
+
"version": "0.0.1-next-20260318155517",
|
|
4
|
+
"description": "Eto Workflows module (definition/runtime/token registry + orchestration hooks)",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"types": "dist/index.d.ts",
|
|
7
|
+
"exports": {
|
|
8
|
+
".": {
|
|
9
|
+
"types": "./dist/index.d.ts",
|
|
10
|
+
"import": "./dist/index.js",
|
|
11
|
+
"require": "./dist/index.js"
|
|
12
|
+
}
|
|
13
|
+
},
|
|
14
|
+
"files": [
|
|
15
|
+
"dist"
|
|
16
|
+
],
|
|
17
|
+
"dependencies": {
|
|
18
|
+
"@etohq/framework": "1.5.5-next-20260317140633",
|
|
19
|
+
"@etohq/utils": "1.5.5-next-20260317140633",
|
|
20
|
+
"@etohq/workflows-types": "0.0.1-next-20260318155517"
|
|
21
|
+
},
|
|
22
|
+
"devDependencies": {
|
|
23
|
+
"@types/node": "22.10.5",
|
|
24
|
+
"rimraf": "5.0.2",
|
|
25
|
+
"typescript": "5.8.3"
|
|
26
|
+
},
|
|
27
|
+
"scripts": {
|
|
28
|
+
"build": "rimraf dist && tsc --build",
|
|
29
|
+
"watch": "tsc --build --watch",
|
|
30
|
+
"test": "exit 0"
|
|
31
|
+
}
|
|
32
|
+
}
|