@decaf-ts/ui-decorators 0.20.4 → 0.20.6
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/dist/ui-decorators.cjs +1 -1
- package/lib/cjs/graph/GraphExecutionStateMapper.cjs +97 -0
- package/lib/cjs/graph/GraphExecutionStateMapper.cjs.map +1 -0
- package/lib/cjs/graph/GraphResolution.cjs +17 -0
- package/lib/cjs/graph/GraphResolution.cjs.map +1 -0
- package/lib/cjs/graph/constants.cjs +157 -1
- package/lib/cjs/graph/constants.cjs.map +1 -1
- package/lib/cjs/graph/index.cjs +3 -0
- package/lib/cjs/graph/index.cjs.map +1 -1
- package/lib/cjs/graph/nodes/agents/agent.cjs +110 -0
- package/lib/cjs/graph/nodes/agents/agent.cjs.map +1 -0
- package/lib/cjs/graph/nodes/base.cjs +36 -0
- package/lib/cjs/graph/nodes/base.cjs.map +1 -0
- package/lib/cjs/graph/nodes/boundary/input-value.cjs +57 -0
- package/lib/cjs/graph/nodes/boundary/input-value.cjs.map +1 -0
- package/lib/cjs/graph/nodes/category-styles.cjs +38 -0
- package/lib/cjs/graph/nodes/category-styles.cjs.map +1 -0
- package/lib/cjs/graph/nodes/flow-control/break.cjs +63 -0
- package/lib/cjs/graph/nodes/flow-control/break.cjs.map +1 -0
- package/lib/cjs/graph/nodes/flow-control/error-boundary.cjs +67 -0
- package/lib/cjs/graph/nodes/flow-control/error-boundary.cjs.map +1 -0
- package/lib/cjs/graph/nodes/flow-control/human-approval.cjs +69 -0
- package/lib/cjs/graph/nodes/flow-control/human-approval.cjs.map +1 -0
- package/lib/cjs/graph/nodes/flow-control/if.cjs +71 -0
- package/lib/cjs/graph/nodes/flow-control/if.cjs.map +1 -0
- package/lib/cjs/graph/nodes/flow-control/parallel.cjs +61 -0
- package/lib/cjs/graph/nodes/flow-control/parallel.cjs.map +1 -0
- package/lib/cjs/graph/nodes/flow-control/switch.cjs +121 -0
- package/lib/cjs/graph/nodes/flow-control/switch.cjs.map +1 -0
- package/lib/cjs/graph/nodes/index.cjs +123 -0
- package/lib/cjs/graph/nodes/index.cjs.map +1 -0
- package/lib/cjs/graph/nodes/loops/foreach.cjs +86 -0
- package/lib/cjs/graph/nodes/loops/foreach.cjs.map +1 -0
- package/lib/cjs/graph/nodes/loops/until.cjs +74 -0
- package/lib/cjs/graph/nodes/loops/until.cjs.map +1 -0
- package/lib/cjs/graph/nodes/loops/while.cjs +74 -0
- package/lib/cjs/graph/nodes/loops/while.cjs.map +1 -0
- package/lib/cjs/graph/nodes/manifests.cjs +338 -0
- package/lib/cjs/graph/nodes/manifests.cjs.map +1 -0
- package/lib/cjs/graph/nodes/triggers/chat.cjs +70 -0
- package/lib/cjs/graph/nodes/triggers/chat.cjs.map +1 -0
- package/lib/cjs/graph/nodes/triggers/event.cjs +58 -0
- package/lib/cjs/graph/nodes/triggers/event.cjs.map +1 -0
- package/lib/cjs/graph/nodes/triggers/form.cjs +59 -0
- package/lib/cjs/graph/nodes/triggers/form.cjs.map +1 -0
- package/lib/cjs/graph/nodes/triggers/manual.cjs +60 -0
- package/lib/cjs/graph/nodes/triggers/manual.cjs.map +1 -0
- package/lib/cjs/graph/nodes/triggers/schedule.cjs +60 -0
- package/lib/cjs/graph/nodes/triggers/schedule.cjs.map +1 -0
- package/lib/cjs/graph/nodes/triggers/webhook.cjs +62 -0
- package/lib/cjs/graph/nodes/triggers/webhook.cjs.map +1 -0
- package/lib/cjs/graph/nodes/utility/code.cjs +99 -0
- package/lib/cjs/graph/nodes/utility/code.cjs.map +1 -0
- package/lib/cjs/graph/nodes/utility/delay.cjs +61 -0
- package/lib/cjs/graph/nodes/utility/delay.cjs.map +1 -0
- package/lib/cjs/graph/nodes/utility/log.cjs +62 -0
- package/lib/cjs/graph/nodes/utility/log.cjs.map +1 -0
- package/lib/cjs/graph/nodes/utility/map.cjs +61 -0
- package/lib/cjs/graph/nodes/utility/map.cjs.map +1 -0
- package/lib/cjs/graph/nodes/utility/merge.cjs +62 -0
- package/lib/cjs/graph/nodes/utility/merge.cjs.map +1 -0
- package/lib/cjs/graph/nodes/utility/return.cjs +61 -0
- package/lib/cjs/graph/nodes/utility/return.cjs.map +1 -0
- package/lib/cjs/graph/nodes/utility/utility-log.cjs +66 -0
- package/lib/cjs/graph/nodes/utility/utility-log.cjs.map +1 -0
- package/lib/cjs/index.cjs +3 -3
- package/lib/esm/graph/GraphExecutionStateMapper.js +91 -0
- package/lib/esm/graph/GraphExecutionStateMapper.js.map +1 -0
- package/lib/esm/graph/GraphResolution.js +13 -0
- package/lib/esm/graph/GraphResolution.js.map +1 -0
- package/lib/esm/graph/constants.js +179 -0
- package/lib/esm/graph/constants.js.map +1 -1
- package/lib/esm/graph/index.js +3 -0
- package/lib/esm/graph/index.js.map +1 -1
- package/lib/esm/graph/nodes/agents/agent.js +101 -0
- package/lib/esm/graph/nodes/agents/agent.js.map +1 -0
- package/lib/esm/graph/nodes/base.js +31 -0
- package/lib/esm/graph/nodes/base.js.map +1 -0
- package/lib/esm/graph/nodes/boundary/input-value.js +48 -0
- package/lib/esm/graph/nodes/boundary/input-value.js.map +1 -0
- package/lib/esm/graph/nodes/category-styles.js +34 -0
- package/lib/esm/graph/nodes/category-styles.js.map +1 -0
- package/lib/esm/graph/nodes/flow-control/break.js +54 -0
- package/lib/esm/graph/nodes/flow-control/break.js.map +1 -0
- package/lib/esm/graph/nodes/flow-control/error-boundary.js +58 -0
- package/lib/esm/graph/nodes/flow-control/error-boundary.js.map +1 -0
- package/lib/esm/graph/nodes/flow-control/human-approval.js +60 -0
- package/lib/esm/graph/nodes/flow-control/human-approval.js.map +1 -0
- package/lib/esm/graph/nodes/flow-control/if.js +62 -0
- package/lib/esm/graph/nodes/flow-control/if.js.map +1 -0
- package/lib/esm/graph/nodes/flow-control/parallel.js +52 -0
- package/lib/esm/graph/nodes/flow-control/parallel.js.map +1 -0
- package/lib/esm/graph/nodes/flow-control/switch.js +112 -0
- package/lib/esm/graph/nodes/flow-control/switch.js.map +1 -0
- package/lib/esm/graph/nodes/index.js +105 -0
- package/lib/esm/graph/nodes/index.js.map +1 -0
- package/lib/esm/graph/nodes/loops/foreach.js +77 -0
- package/lib/esm/graph/nodes/loops/foreach.js.map +1 -0
- package/lib/esm/graph/nodes/loops/until.js +65 -0
- package/lib/esm/graph/nodes/loops/until.js.map +1 -0
- package/lib/esm/graph/nodes/loops/while.js +65 -0
- package/lib/esm/graph/nodes/loops/while.js.map +1 -0
- package/lib/esm/graph/nodes/manifests.js +334 -0
- package/lib/esm/graph/nodes/manifests.js.map +1 -0
- package/lib/esm/graph/nodes/triggers/chat.js +61 -0
- package/lib/esm/graph/nodes/triggers/chat.js.map +1 -0
- package/lib/esm/graph/nodes/triggers/event.js +49 -0
- package/lib/esm/graph/nodes/triggers/event.js.map +1 -0
- package/lib/esm/graph/nodes/triggers/form.js +50 -0
- package/lib/esm/graph/nodes/triggers/form.js.map +1 -0
- package/lib/esm/graph/nodes/triggers/manual.js +51 -0
- package/lib/esm/graph/nodes/triggers/manual.js.map +1 -0
- package/lib/esm/graph/nodes/triggers/schedule.js +51 -0
- package/lib/esm/graph/nodes/triggers/schedule.js.map +1 -0
- package/lib/esm/graph/nodes/triggers/webhook.js +53 -0
- package/lib/esm/graph/nodes/triggers/webhook.js.map +1 -0
- package/lib/esm/graph/nodes/utility/code.js +90 -0
- package/lib/esm/graph/nodes/utility/code.js.map +1 -0
- package/lib/esm/graph/nodes/utility/delay.js +52 -0
- package/lib/esm/graph/nodes/utility/delay.js.map +1 -0
- package/lib/esm/graph/nodes/utility/log.js +53 -0
- package/lib/esm/graph/nodes/utility/log.js.map +1 -0
- package/lib/esm/graph/nodes/utility/map.js +52 -0
- package/lib/esm/graph/nodes/utility/map.js.map +1 -0
- package/lib/esm/graph/nodes/utility/merge.js +53 -0
- package/lib/esm/graph/nodes/utility/merge.js.map +1 -0
- package/lib/esm/graph/nodes/utility/return.js +52 -0
- package/lib/esm/graph/nodes/utility/return.js.map +1 -0
- package/lib/esm/graph/nodes/utility/utility-log.js +57 -0
- package/lib/esm/graph/nodes/utility/utility-log.js.map +1 -0
- package/lib/esm/index.js +3 -3
- package/lib/types/graph/GraphExecutionStateMapper.d.cts +66 -0
- package/lib/types/graph/GraphExecutionStateMapper.d.mts +66 -0
- package/lib/types/graph/GraphResolution.d.cts +53 -0
- package/lib/types/graph/GraphResolution.d.mts +53 -0
- package/lib/types/graph/constants.d.cts +165 -0
- package/lib/types/graph/constants.d.mts +165 -0
- package/lib/types/graph/index.d.cts +3 -0
- package/lib/types/graph/index.d.mts +3 -0
- package/lib/types/graph/nodes/agents/agent.d.cts +44 -0
- package/lib/types/graph/nodes/agents/agent.d.mts +44 -0
- package/lib/types/graph/nodes/base.d.cts +28 -0
- package/lib/types/graph/nodes/base.d.mts +28 -0
- package/lib/types/graph/nodes/boundary/input-value.d.cts +13 -0
- package/lib/types/graph/nodes/boundary/input-value.d.mts +13 -0
- package/lib/types/graph/nodes/category-styles.d.cts +8 -0
- package/lib/types/graph/nodes/category-styles.d.mts +8 -0
- package/lib/types/graph/nodes/flow-control/break.d.cts +15 -0
- package/lib/types/graph/nodes/flow-control/break.d.mts +15 -0
- package/lib/types/graph/nodes/flow-control/error-boundary.d.cts +12 -0
- package/lib/types/graph/nodes/flow-control/error-boundary.d.mts +12 -0
- package/lib/types/graph/nodes/flow-control/human-approval.d.cts +13 -0
- package/lib/types/graph/nodes/flow-control/human-approval.d.mts +13 -0
- package/lib/types/graph/nodes/flow-control/if.d.cts +16 -0
- package/lib/types/graph/nodes/flow-control/if.d.mts +16 -0
- package/lib/types/graph/nodes/flow-control/parallel.d.cts +11 -0
- package/lib/types/graph/nodes/flow-control/parallel.d.mts +11 -0
- package/lib/types/graph/nodes/flow-control/switch.d.cts +21 -0
- package/lib/types/graph/nodes/flow-control/switch.d.mts +21 -0
- package/lib/types/graph/nodes/index.d.cts +79 -0
- package/lib/types/graph/nodes/index.d.mts +79 -0
- package/lib/types/graph/nodes/loops/foreach.d.cts +19 -0
- package/lib/types/graph/nodes/loops/foreach.d.mts +19 -0
- package/lib/types/graph/nodes/loops/until.d.cts +16 -0
- package/lib/types/graph/nodes/loops/until.d.mts +16 -0
- package/lib/types/graph/nodes/loops/while.d.cts +16 -0
- package/lib/types/graph/nodes/loops/while.d.mts +16 -0
- package/lib/types/graph/nodes/manifests.d.cts +62 -0
- package/lib/types/graph/nodes/manifests.d.mts +62 -0
- package/lib/types/graph/nodes/triggers/chat.d.cts +13 -0
- package/lib/types/graph/nodes/triggers/chat.d.mts +13 -0
- package/lib/types/graph/nodes/triggers/event.d.cts +10 -0
- package/lib/types/graph/nodes/triggers/event.d.mts +10 -0
- package/lib/types/graph/nodes/triggers/form.d.cts +11 -0
- package/lib/types/graph/nodes/triggers/form.d.mts +11 -0
- package/lib/types/graph/nodes/triggers/manual.d.cts +12 -0
- package/lib/types/graph/nodes/triggers/manual.d.mts +12 -0
- package/lib/types/graph/nodes/triggers/schedule.d.cts +11 -0
- package/lib/types/graph/nodes/triggers/schedule.d.mts +11 -0
- package/lib/types/graph/nodes/triggers/webhook.d.cts +11 -0
- package/lib/types/graph/nodes/triggers/webhook.d.mts +11 -0
- package/lib/types/graph/nodes/utility/code.d.cts +31 -0
- package/lib/types/graph/nodes/utility/code.d.mts +31 -0
- package/lib/types/graph/nodes/utility/delay.d.cts +11 -0
- package/lib/types/graph/nodes/utility/delay.d.mts +11 -0
- package/lib/types/graph/nodes/utility/log.d.cts +13 -0
- package/lib/types/graph/nodes/utility/log.d.mts +13 -0
- package/lib/types/graph/nodes/utility/map.d.cts +11 -0
- package/lib/types/graph/nodes/utility/map.d.mts +11 -0
- package/lib/types/graph/nodes/utility/merge.d.cts +12 -0
- package/lib/types/graph/nodes/utility/merge.d.mts +12 -0
- package/lib/types/graph/nodes/utility/return.d.cts +11 -0
- package/lib/types/graph/nodes/utility/return.d.mts +11 -0
- package/lib/types/graph/nodes/utility/utility-log.d.cts +15 -0
- package/lib/types/graph/nodes/utility/utility-log.d.mts +15 -0
- package/lib/types/graph/types.d.cts +286 -0
- package/lib/types/graph/types.d.mts +286 -0
- package/lib/types/index.d.cts +3 -3
- package/lib/types/index.d.mts +3 -3
- package/package.json +1 -1
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* @module ui-decorators/graph/nodes/triggers/event
|
|
12
|
+
* @summary Event trigger node declaration (DECAF-32 §22.2.1).
|
|
13
|
+
* @description Event trigger — internal event bus topic subscriber.
|
|
14
|
+
*/
|
|
15
|
+
import { Model, model, required } from "@decaf-ts/decorator-validation";
|
|
16
|
+
import { uielement } from "./../../../ui/decorators.js";
|
|
17
|
+
import { node, output } from "./../../decorators.js";
|
|
18
|
+
// Ensure category styles are registered (idempotent).
|
|
19
|
+
import "./../category-styles.js";
|
|
20
|
+
let EventTriggerNode = class EventTriggerNode extends Model {
|
|
21
|
+
};
|
|
22
|
+
__decorate([
|
|
23
|
+
required(),
|
|
24
|
+
uielement("textarea", { label: "Event payload", placeholder: "Event bus payload" }),
|
|
25
|
+
output({ handle: "payload" }),
|
|
26
|
+
__metadata("design:type", Object)
|
|
27
|
+
], EventTriggerNode.prototype, "payload", void 0);
|
|
28
|
+
EventTriggerNode = __decorate([
|
|
29
|
+
node("core.trigger.event", {
|
|
30
|
+
kind: "core.trigger.event",
|
|
31
|
+
category: "Trigger",
|
|
32
|
+
color: "#8b5cf6",
|
|
33
|
+
icon: "ti-broadcast",
|
|
34
|
+
width: 96,
|
|
35
|
+
height: 96,
|
|
36
|
+
labels: ["trigger", "event", "bus"],
|
|
37
|
+
metadata: {
|
|
38
|
+
title: "Event trigger",
|
|
39
|
+
description: "Starts the workflow when an event is published on the configured internal event bus topic.",
|
|
40
|
+
trigger: {
|
|
41
|
+
type: "event",
|
|
42
|
+
topic: "default",
|
|
43
|
+
},
|
|
44
|
+
},
|
|
45
|
+
}),
|
|
46
|
+
model()
|
|
47
|
+
], EventTriggerNode);
|
|
48
|
+
export { EventTriggerNode };
|
|
49
|
+
//# sourceMappingURL=event.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event.js","sourceRoot":"","sources":["../../../../../src/graph/nodes/triggers/event.ts"],"names":[],"mappings":";;;;;;;;;AAAA;;;;GAIG;AACH,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,oCAA+B;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,8BAAyB;AAEhD,sDAAsD;AACtD,iCAA4B;AAoBrB,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,KAAK;CAK1C,CAAA;AADC;IAHC,QAAQ,EAAE;IACV,SAAS,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,mBAAmB,EAAE,CAAC;IACnF,MAAM,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;;iDACZ;AAJP,gBAAgB;IAlB5B,IAAI,CAAC,oBAAoB,EAAE;QAC1B,IAAI,EAAE,oBAAoB;QAC1B,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,cAAc;QACpB,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,EAAE;QACV,MAAM,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,KAAK,CAAC;QACnC,QAAQ,EAAE;YACR,KAAK,EAAE,eAAe;YACtB,WAAW,EAAE,4FAA4F;YACzG,OAAO,EAAE;gBACP,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,SAAS;aACjB;SACF;KACF,CAAC;IACD,KAAK,EAAE;GACK,gBAAgB,CAK5B"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* @module ui-decorators/graph/nodes/triggers/form
|
|
12
|
+
* @summary Form trigger node declaration (DECAF-32 §22.2.1).
|
|
13
|
+
* @description Form trigger — generated public/internal form; field
|
|
14
|
+
* definitions.
|
|
15
|
+
*/
|
|
16
|
+
import { Model, model, required } from "@decaf-ts/decorator-validation";
|
|
17
|
+
import { uielement } from "./../../../ui/decorators.js";
|
|
18
|
+
import { node, output } from "./../../decorators.js";
|
|
19
|
+
// Ensure category styles are registered (idempotent).
|
|
20
|
+
import "./../category-styles.js";
|
|
21
|
+
let FormTriggerNode = class FormTriggerNode extends Model {
|
|
22
|
+
};
|
|
23
|
+
__decorate([
|
|
24
|
+
required(),
|
|
25
|
+
uielement("textarea", { label: "Form submission", placeholder: "Form submission payload" }),
|
|
26
|
+
output({ handle: "payload" }),
|
|
27
|
+
__metadata("design:type", Object)
|
|
28
|
+
], FormTriggerNode.prototype, "payload", void 0);
|
|
29
|
+
FormTriggerNode = __decorate([
|
|
30
|
+
node("core.trigger.form", {
|
|
31
|
+
kind: "core.trigger.form",
|
|
32
|
+
category: "Trigger",
|
|
33
|
+
color: "#ec4899",
|
|
34
|
+
icon: "ti-forms",
|
|
35
|
+
width: 96,
|
|
36
|
+
height: 96,
|
|
37
|
+
labels: ["trigger", "form", "public"],
|
|
38
|
+
metadata: {
|
|
39
|
+
title: "Form trigger",
|
|
40
|
+
description: "Starts the workflow when a generated form is submitted. Field definitions drive the form schema.",
|
|
41
|
+
trigger: {
|
|
42
|
+
type: "form",
|
|
43
|
+
fields: [],
|
|
44
|
+
},
|
|
45
|
+
},
|
|
46
|
+
}),
|
|
47
|
+
model()
|
|
48
|
+
], FormTriggerNode);
|
|
49
|
+
export { FormTriggerNode };
|
|
50
|
+
//# sourceMappingURL=form.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"form.js","sourceRoot":"","sources":["../../../../../src/graph/nodes/triggers/form.ts"],"names":[],"mappings":";;;;;;;;;AAAA;;;;;GAKG;AACH,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,oCAA+B;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,8BAAyB;AAEhD,sDAAsD;AACtD,iCAA4B;AAoBrB,IAAM,eAAe,GAArB,MAAM,eAAgB,SAAQ,KAAK;CAKzC,CAAA;AADC;IAHC,QAAQ,EAAE;IACV,SAAS,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,yBAAyB,EAAE,CAAC;IAC3F,MAAM,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;;gDACZ;AAJP,eAAe;IAlB3B,IAAI,CAAC,mBAAmB,EAAE;QACzB,IAAI,EAAE,mBAAmB;QACzB,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,EAAE;QACV,MAAM,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC;QACrC,QAAQ,EAAE;YACR,KAAK,EAAE,cAAc;YACrB,WAAW,EAAE,kGAAkG;YAC/G,OAAO,EAAE;gBACP,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,EAAE;aACX;SACF;KACF,CAAC;IACD,KAAK,EAAE;GACK,eAAe,CAK3B"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* @module ui-decorators/graph/nodes/triggers/manual
|
|
12
|
+
* @summary Manual trigger node declaration (DECAF-32 §22.2.1).
|
|
13
|
+
* @description Manual trigger — user clicks Run; input form generated from
|
|
14
|
+
* `inputSchema`. Triggers are metadata-only entrypoints: they define how a
|
|
15
|
+
* workflow starts and produce a trigger payload on their `@output` ports.
|
|
16
|
+
*/
|
|
17
|
+
import { Model, model, required } from "@decaf-ts/decorator-validation";
|
|
18
|
+
import { uielement } from "./../../../ui/decorators.js";
|
|
19
|
+
import { node, output } from "./../../decorators.js";
|
|
20
|
+
// Ensure category styles are registered (idempotent).
|
|
21
|
+
import "./../category-styles.js";
|
|
22
|
+
let ManualTriggerNode = class ManualTriggerNode extends Model {
|
|
23
|
+
};
|
|
24
|
+
__decorate([
|
|
25
|
+
required(),
|
|
26
|
+
uielement("textarea", { label: "Trigger payload", placeholder: "Manual trigger payload" }),
|
|
27
|
+
output({ handle: "payload" }),
|
|
28
|
+
__metadata("design:type", Object)
|
|
29
|
+
], ManualTriggerNode.prototype, "payload", void 0);
|
|
30
|
+
ManualTriggerNode = __decorate([
|
|
31
|
+
node("core.trigger.manual", {
|
|
32
|
+
kind: "core.trigger.manual",
|
|
33
|
+
category: "Trigger",
|
|
34
|
+
color: "#3b82f6",
|
|
35
|
+
icon: "ti-hand-click",
|
|
36
|
+
width: 96,
|
|
37
|
+
height: 96,
|
|
38
|
+
labels: ["trigger", "manual", "entrypoint"],
|
|
39
|
+
metadata: {
|
|
40
|
+
title: "Manual trigger",
|
|
41
|
+
description: "Starts the workflow when the user clicks Run. The input form is generated from the trigger's input schema.",
|
|
42
|
+
trigger: {
|
|
43
|
+
type: "manual",
|
|
44
|
+
inputSchema: {},
|
|
45
|
+
},
|
|
46
|
+
},
|
|
47
|
+
}),
|
|
48
|
+
model()
|
|
49
|
+
], ManualTriggerNode);
|
|
50
|
+
export { ManualTriggerNode };
|
|
51
|
+
//# sourceMappingURL=manual.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manual.js","sourceRoot":"","sources":["../../../../../src/graph/nodes/triggers/manual.ts"],"names":[],"mappings":";;;;;;;;;AAAA;;;;;;GAMG;AACH,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,oCAA+B;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,8BAAyB;AAEhD,sDAAsD;AACtD,iCAA4B;AAoBrB,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,KAAK;CAK3C,CAAA;AADC;IAHC,QAAQ,EAAE;IACV,SAAS,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,wBAAwB,EAAE,CAAC;IAC1F,MAAM,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;;kDACZ;AAJP,iBAAiB;IAlB7B,IAAI,CAAC,qBAAqB,EAAE;QAC3B,IAAI,EAAE,qBAAqB;QAC3B,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,eAAe;QACrB,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,EAAE;QACV,MAAM,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,YAAY,CAAC;QAC3C,QAAQ,EAAE;YACR,KAAK,EAAE,gBAAgB;YACvB,WAAW,EAAE,4GAA4G;YACzH,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,EAAE;aAChB;SACF;KACF,CAAC;IACD,KAAK,EAAE;GACK,iBAAiB,CAK7B"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* @module ui-decorators/graph/nodes/triggers/schedule
|
|
12
|
+
* @summary Schedule trigger node declaration (DECAF-32 §22.2.1).
|
|
13
|
+
* @description Schedule trigger — cron-like schedule; timezone + payload
|
|
14
|
+
* config.
|
|
15
|
+
*/
|
|
16
|
+
import { Model, model, required } from "@decaf-ts/decorator-validation";
|
|
17
|
+
import { uielement } from "./../../../ui/decorators.js";
|
|
18
|
+
import { node, output } from "./../../decorators.js";
|
|
19
|
+
// Ensure category styles are registered (idempotent).
|
|
20
|
+
import "./../category-styles.js";
|
|
21
|
+
let ScheduleTriggerNode = class ScheduleTriggerNode extends Model {
|
|
22
|
+
};
|
|
23
|
+
__decorate([
|
|
24
|
+
required(),
|
|
25
|
+
uielement("textarea", { label: "Scheduled payload", placeholder: "Payload for the scheduled run" }),
|
|
26
|
+
output({ handle: "payload" }),
|
|
27
|
+
__metadata("design:type", Object)
|
|
28
|
+
], ScheduleTriggerNode.prototype, "payload", void 0);
|
|
29
|
+
ScheduleTriggerNode = __decorate([
|
|
30
|
+
node("core.trigger.schedule", {
|
|
31
|
+
kind: "core.trigger.schedule",
|
|
32
|
+
category: "Trigger",
|
|
33
|
+
color: "#6366f1",
|
|
34
|
+
icon: "ti-calendar-time",
|
|
35
|
+
width: 96,
|
|
36
|
+
height: 96,
|
|
37
|
+
labels: ["trigger", "schedule", "cron"],
|
|
38
|
+
metadata: {
|
|
39
|
+
title: "Schedule trigger",
|
|
40
|
+
description: "Starts the workflow on a cron-like schedule with timezone support.",
|
|
41
|
+
trigger: {
|
|
42
|
+
type: "schedule",
|
|
43
|
+
schedule: "0 * * * *",
|
|
44
|
+
timezone: "UTC",
|
|
45
|
+
},
|
|
46
|
+
},
|
|
47
|
+
}),
|
|
48
|
+
model()
|
|
49
|
+
], ScheduleTriggerNode);
|
|
50
|
+
export { ScheduleTriggerNode };
|
|
51
|
+
//# sourceMappingURL=schedule.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schedule.js","sourceRoot":"","sources":["../../../../../src/graph/nodes/triggers/schedule.ts"],"names":[],"mappings":";;;;;;;;;AAAA;;;;;GAKG;AACH,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,oCAA+B;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,8BAAyB;AAEhD,sDAAsD;AACtD,iCAA4B;AAqBrB,IAAM,mBAAmB,GAAzB,MAAM,mBAAoB,SAAQ,KAAK;CAK7C,CAAA;AADC;IAHC,QAAQ,EAAE;IACV,SAAS,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,mBAAmB,EAAE,WAAW,EAAE,+BAA+B,EAAE,CAAC;IACnG,MAAM,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;;oDACZ;AAJP,mBAAmB;IAnB/B,IAAI,CAAC,uBAAuB,EAAE;QAC7B,IAAI,EAAE,uBAAuB;QAC7B,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,kBAAkB;QACxB,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,EAAE;QACV,MAAM,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,MAAM,CAAC;QACvC,QAAQ,EAAE;YACR,KAAK,EAAE,kBAAkB;YACzB,WAAW,EAAE,oEAAoE;YACjF,OAAO,EAAE;gBACP,IAAI,EAAE,UAAU;gBAChB,QAAQ,EAAE,WAAW;gBACrB,QAAQ,EAAE,KAAK;aAChB;SACF;KACF,CAAC;IACD,KAAK,EAAE;GACK,mBAAmB,CAK/B"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* @module ui-decorators/graph/nodes/triggers/webhook
|
|
12
|
+
* @summary Webhook trigger node declaration (DECAF-32 §22.2.1).
|
|
13
|
+
* @description Webhook trigger — HTTP request received; path/method/auth/
|
|
14
|
+
* responseMode config.
|
|
15
|
+
*/
|
|
16
|
+
import { Model, model, required } from "@decaf-ts/decorator-validation";
|
|
17
|
+
import { uielement } from "./../../../ui/decorators.js";
|
|
18
|
+
import { node, output } from "./../../decorators.js";
|
|
19
|
+
// Ensure category styles are registered (idempotent).
|
|
20
|
+
import "./../category-styles.js";
|
|
21
|
+
let WebhookTriggerNode = class WebhookTriggerNode extends Model {
|
|
22
|
+
};
|
|
23
|
+
__decorate([
|
|
24
|
+
required(),
|
|
25
|
+
uielement("textarea", { label: "Request payload", placeholder: "Webhook request body" }),
|
|
26
|
+
output({ handle: "payload" }),
|
|
27
|
+
__metadata("design:type", Object)
|
|
28
|
+
], WebhookTriggerNode.prototype, "payload", void 0);
|
|
29
|
+
WebhookTriggerNode = __decorate([
|
|
30
|
+
node("core.trigger.webhook", {
|
|
31
|
+
kind: "core.trigger.webhook",
|
|
32
|
+
category: "Trigger",
|
|
33
|
+
color: "#0ea5e9",
|
|
34
|
+
icon: "ti-webhook",
|
|
35
|
+
width: 96,
|
|
36
|
+
height: 96,
|
|
37
|
+
labels: ["trigger", "webhook", "http"],
|
|
38
|
+
metadata: {
|
|
39
|
+
title: "Webhook trigger",
|
|
40
|
+
description: "Starts the workflow when an HTTP request is received on the configured path and method.",
|
|
41
|
+
trigger: {
|
|
42
|
+
type: "webhook",
|
|
43
|
+
path: "/webhook",
|
|
44
|
+
method: "POST",
|
|
45
|
+
auth: "none",
|
|
46
|
+
responseMode: "onReceived",
|
|
47
|
+
},
|
|
48
|
+
},
|
|
49
|
+
}),
|
|
50
|
+
model()
|
|
51
|
+
], WebhookTriggerNode);
|
|
52
|
+
export { WebhookTriggerNode };
|
|
53
|
+
//# sourceMappingURL=webhook.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webhook.js","sourceRoot":"","sources":["../../../../../src/graph/nodes/triggers/webhook.ts"],"names":[],"mappings":";;;;;;;;;AAAA;;;;;GAKG;AACH,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,oCAA+B;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,8BAAyB;AAEhD,sDAAsD;AACtD,iCAA4B;AAuBrB,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,KAAK;CAK5C,CAAA;AADC;IAHC,QAAQ,EAAE;IACV,SAAS,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,sBAAsB,EAAE,CAAC;IACxF,MAAM,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;;mDACZ;AAJP,kBAAkB;IArB9B,IAAI,CAAC,sBAAsB,EAAE;QAC5B,IAAI,EAAE,sBAAsB;QAC5B,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,EAAE;QACV,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC;QACtC,QAAQ,EAAE;YACR,KAAK,EAAE,iBAAiB;YACxB,WAAW,EAAE,yFAAyF;YACtG,OAAO,EAAE;gBACP,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,UAAU;gBAChB,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,MAAM;gBACZ,YAAY,EAAE,YAAY;aAC3B;SACF;KACF,CAAC;IACD,KAAK,EAAE;GACK,kBAAkB,CAK9B"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* @module ui-decorators/graph/nodes/utility/code
|
|
12
|
+
* @summary Code utility node declaration (ALFRED-5 §7, DECAF-32 §22.4).
|
|
13
|
+
* @description Code — sandboxed JS/TS code execution. The engine's
|
|
14
|
+
* `CodeGraphNodeExecutor` delegates to the pluggable `CodeSandboxEvaluator`.
|
|
15
|
+
* The default `IsolatedVmCodeSandboxEvaluator` (backed by `isolated-vm`)
|
|
16
|
+
* enforces the Code Node restrictions: no imports, no requires, pure
|
|
17
|
+
* functions only. The sandbox context exposes `$input`, `$vars`, `$item`,
|
|
18
|
+
* `$index`, `$node`, and `$output` as data variables. TypeScript is
|
|
19
|
+
* supported via transpilation.
|
|
20
|
+
*
|
|
21
|
+
* The `@input` on `CodeFlowNode.input` is a schema group — the nested
|
|
22
|
+
* model's `@input` ports are spliced into the parent unprefixed. `code` has
|
|
23
|
+
* `@input` + `@uielement("code-editor")`, so it appears as a port AND in the
|
|
24
|
+
* CRUD modal (the only visible field). `data` has `@input` + `@hidden()` but
|
|
25
|
+
* no `@uielement`, so it is a canvas-only port (for edge connections from
|
|
26
|
+
* workflow input badges) but never appears in the CRUD modal. `language` has
|
|
27
|
+
* no `@input` and no `@uielement`, so it is neither a port nor rendered — it
|
|
28
|
+
* defaults to `"javascript"`.
|
|
29
|
+
*/
|
|
30
|
+
import { Model, model, required } from "@decaf-ts/decorator-validation";
|
|
31
|
+
import { hidden, uielement } from "./../../../ui/decorators.js";
|
|
32
|
+
import { input, node, output } from "./../../decorators.js";
|
|
33
|
+
// Ensure category styles are registered (idempotent).
|
|
34
|
+
import "./../category-styles.js";
|
|
35
|
+
let CodeInputSchema = class CodeInputSchema extends Model {
|
|
36
|
+
constructor() {
|
|
37
|
+
super(...arguments);
|
|
38
|
+
this.language = "javascript";
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
__decorate([
|
|
42
|
+
required(),
|
|
43
|
+
__metadata("design:type", String)
|
|
44
|
+
], CodeInputSchema.prototype, "language", void 0);
|
|
45
|
+
__decorate([
|
|
46
|
+
required(),
|
|
47
|
+
uielement("code-editor", { label: "Code", placeholder: "// User-authored JS code" }),
|
|
48
|
+
input({ handle: "code" }),
|
|
49
|
+
__metadata("design:type", String)
|
|
50
|
+
], CodeInputSchema.prototype, "code", void 0);
|
|
51
|
+
__decorate([
|
|
52
|
+
hidden(),
|
|
53
|
+
input({ handle: "data" }),
|
|
54
|
+
__metadata("design:type", Object)
|
|
55
|
+
], CodeInputSchema.prototype, "data", void 0);
|
|
56
|
+
CodeInputSchema = __decorate([
|
|
57
|
+
model()
|
|
58
|
+
], CodeInputSchema);
|
|
59
|
+
export { CodeInputSchema };
|
|
60
|
+
let CodeFlowNode = class CodeFlowNode extends Model {
|
|
61
|
+
};
|
|
62
|
+
__decorate([
|
|
63
|
+
required(),
|
|
64
|
+
input({ handle: "input", model: CodeInputSchema }),
|
|
65
|
+
__metadata("design:type", CodeInputSchema)
|
|
66
|
+
], CodeFlowNode.prototype, "input", void 0);
|
|
67
|
+
__decorate([
|
|
68
|
+
required(),
|
|
69
|
+
output({ handle: "result" }),
|
|
70
|
+
__metadata("design:type", Object)
|
|
71
|
+
], CodeFlowNode.prototype, "result", void 0);
|
|
72
|
+
CodeFlowNode = __decorate([
|
|
73
|
+
node("core.flow.code", {
|
|
74
|
+
kind: "core.flow.code",
|
|
75
|
+
category: "Utility",
|
|
76
|
+
color: "#7c3aed",
|
|
77
|
+
icon: "ti-code",
|
|
78
|
+
width: 96,
|
|
79
|
+
height: 96,
|
|
80
|
+
labels: ["flow", "code", "sandbox", "transform"],
|
|
81
|
+
metadata: {
|
|
82
|
+
title: "Code",
|
|
83
|
+
description: "Runs user-authored JS/TS in a restricted VM sandbox. Supports placeholder syntax for workflow data references.",
|
|
84
|
+
timeoutMs: 1000,
|
|
85
|
+
},
|
|
86
|
+
}),
|
|
87
|
+
model()
|
|
88
|
+
], CodeFlowNode);
|
|
89
|
+
export { CodeFlowNode };
|
|
90
|
+
//# sourceMappingURL=code.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code.js","sourceRoot":"","sources":["../../../../../src/graph/nodes/utility/code.ts"],"names":[],"mappings":";;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,oCAA+B;AAC3D,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,8BAAyB;AAEvD,sDAAsD;AACtD,iCAA4B;AAGrB,IAAM,eAAe,GAArB,MAAM,eAAgB,SAAQ,KAAK;IAAnC;;QAEL,aAAQ,GAAW,YAAY,CAAC;IAUlC,CAAC;CAAA,CAAA;AAVC;IADC,QAAQ,EAAE;;iDACqB;AAKhC;IAHC,QAAQ,EAAE;IACV,SAAS,CAAC,aAAa,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,0BAA0B,EAAE,CAAC;IACpF,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;;6CACZ;AAId;IAFC,MAAM,EAAE;IACR,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;;6CACX;AAXJ,eAAe;IAD3B,KAAK,EAAE;GACK,eAAe,CAY3B;;AAiBM,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,KAAK;CAQtC,CAAA;AALC;IAFC,QAAQ,EAAE;IACV,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC;8BAC3C,eAAe;2CAAC;AAIxB;IAFC,QAAQ,EAAE;IACV,MAAM,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;;4CACZ;AAPN,YAAY;IAfxB,IAAI,CAAC,gBAAgB,EAAE;QACtB,IAAI,EAAE,gBAAgB;QACtB,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,EAAE;QACV,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,CAAC;QAChD,QAAQ,EAAE;YACR,KAAK,EAAE,MAAM;YACb,WAAW,EAAE,gHAAgH;YAC7H,SAAS,EAAE,IAAI;SAChB;KACF,CAAC;IACD,KAAK,EAAE;GACK,YAAY,CAQxB"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* @module ui-decorators/graph/nodes/utility/delay
|
|
12
|
+
* @summary Delay utility node declaration (DECAF-32 §22.2.2).
|
|
13
|
+
* @description Delay — pauses execution for a configured duration.
|
|
14
|
+
*/
|
|
15
|
+
import { Model, model, required } from "@decaf-ts/decorator-validation";
|
|
16
|
+
import { uielement } from "./../../../ui/decorators.js";
|
|
17
|
+
import { input, node, output } from "./../../decorators.js";
|
|
18
|
+
// Ensure category styles are registered (idempotent).
|
|
19
|
+
import "./../category-styles.js";
|
|
20
|
+
let DelayFlowNode = class DelayFlowNode extends Model {
|
|
21
|
+
};
|
|
22
|
+
__decorate([
|
|
23
|
+
required(),
|
|
24
|
+
uielement("textarea", { label: "Input value", placeholder: "Value to forward after delay" }),
|
|
25
|
+
input({ handle: "value" }),
|
|
26
|
+
__metadata("design:type", Object)
|
|
27
|
+
], DelayFlowNode.prototype, "value", void 0);
|
|
28
|
+
__decorate([
|
|
29
|
+
required(),
|
|
30
|
+
uielement("input", { label: "Output value", placeholder: "Forwarded value" }),
|
|
31
|
+
output({ handle: "value" }),
|
|
32
|
+
__metadata("design:type", Object)
|
|
33
|
+
], DelayFlowNode.prototype, "valueOut", void 0);
|
|
34
|
+
DelayFlowNode = __decorate([
|
|
35
|
+
node("core.flow.delay", {
|
|
36
|
+
kind: "core.flow.delay",
|
|
37
|
+
category: "Utility",
|
|
38
|
+
color: "#a3a3a3",
|
|
39
|
+
icon: "ti-clock-hour-4",
|
|
40
|
+
width: 96,
|
|
41
|
+
height: 96,
|
|
42
|
+
labels: ["flow", "delay", "wait"],
|
|
43
|
+
metadata: {
|
|
44
|
+
title: "Delay",
|
|
45
|
+
description: "Pauses execution for the configured duration (in milliseconds), then forwards the input unchanged.",
|
|
46
|
+
durationMs: 1000,
|
|
47
|
+
},
|
|
48
|
+
}),
|
|
49
|
+
model()
|
|
50
|
+
], DelayFlowNode);
|
|
51
|
+
export { DelayFlowNode };
|
|
52
|
+
//# sourceMappingURL=delay.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delay.js","sourceRoot":"","sources":["../../../../../src/graph/nodes/utility/delay.ts"],"names":[],"mappings":";;;;;;;;;AAAA;;;;GAIG;AACH,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,oCAA+B;AACnD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,8BAAyB;AAEvD,sDAAsD;AACtD,iCAA4B;AAiBrB,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,KAAK;CAUvC,CAAA;AANC;IAHC,QAAQ,EAAE;IACV,SAAS,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,8BAA8B,EAAE,CAAC;IAC5F,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;;4CACX;AAKhB;IAHC,QAAQ,EAAE;IACV,SAAS,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAC;IAC7E,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;;+CACT;AATR,aAAa;IAfzB,IAAI,CAAC,iBAAiB,EAAE;QACvB,IAAI,EAAE,iBAAiB;QACvB,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,iBAAiB;QACvB,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,EAAE;QACV,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC;QACjC,QAAQ,EAAE;YACR,KAAK,EAAE,OAAO;YACd,WAAW,EAAE,oGAAoG;YACjH,UAAU,EAAE,IAAI;SACjB;KACF,CAAC;IACD,KAAK,EAAE;GACK,aAAa,CAUzB"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* @module ui-decorators/graph/nodes/utility/log
|
|
12
|
+
* @summary Log utility node declaration (DECAF-32 §22.2.2).
|
|
13
|
+
* @description Log — logs the input value and forwards it unchanged on the
|
|
14
|
+
* `logged` output port. Useful for debugging, audit trails, and
|
|
15
|
+
* discard/side-effect branches in a workflow.
|
|
16
|
+
*/
|
|
17
|
+
import { Model, model, required } from "@decaf-ts/decorator-validation";
|
|
18
|
+
import { uielement } from "./../../../ui/decorators.js";
|
|
19
|
+
import { input, node, output } from "./../../decorators.js";
|
|
20
|
+
// Ensure category styles are registered (idempotent).
|
|
21
|
+
import "./../category-styles.js";
|
|
22
|
+
let LogFlowNode = class LogFlowNode extends Model {
|
|
23
|
+
};
|
|
24
|
+
__decorate([
|
|
25
|
+
required(),
|
|
26
|
+
uielement("textarea", { label: "Input value", placeholder: "Value to log" }),
|
|
27
|
+
input({ handle: "value" }),
|
|
28
|
+
__metadata("design:type", Object)
|
|
29
|
+
], LogFlowNode.prototype, "value", void 0);
|
|
30
|
+
__decorate([
|
|
31
|
+
required(),
|
|
32
|
+
uielement("input", { label: "Logged value", placeholder: "Forwarded value" }),
|
|
33
|
+
output({ handle: "logged" }),
|
|
34
|
+
__metadata("design:type", Object)
|
|
35
|
+
], LogFlowNode.prototype, "logged", void 0);
|
|
36
|
+
LogFlowNode = __decorate([
|
|
37
|
+
node("core.flow.log", {
|
|
38
|
+
kind: "core.flow.log",
|
|
39
|
+
category: "Utility",
|
|
40
|
+
color: "#6366f1",
|
|
41
|
+
icon: "ti-terminal",
|
|
42
|
+
width: 96,
|
|
43
|
+
height: 96,
|
|
44
|
+
labels: ["flow", "log", "debug", "utility"],
|
|
45
|
+
metadata: {
|
|
46
|
+
title: "Log",
|
|
47
|
+
description: "Logs the input value to the execution logger and forwards it unchanged.",
|
|
48
|
+
},
|
|
49
|
+
}),
|
|
50
|
+
model()
|
|
51
|
+
], LogFlowNode);
|
|
52
|
+
export { LogFlowNode };
|
|
53
|
+
//# sourceMappingURL=log.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"log.js","sourceRoot":"","sources":["../../../../../src/graph/nodes/utility/log.ts"],"names":[],"mappings":";;;;;;;;;AAAA;;;;;;GAMG;AACH,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,oCAA+B;AACnD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,8BAAyB;AAEvD,sDAAsD;AACtD,iCAA4B;AAgBrB,IAAM,WAAW,GAAjB,MAAM,WAAY,SAAQ,KAAK;CAUrC,CAAA;AANC;IAHC,QAAQ,EAAE;IACV,SAAS,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,CAAC;IAC5E,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;;0CACX;AAKhB;IAHC,QAAQ,EAAE;IACV,SAAS,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAC;IAC7E,MAAM,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;;2CACZ;AATN,WAAW;IAdvB,IAAI,CAAC,eAAe,EAAE;QACrB,IAAI,EAAE,eAAe;QACrB,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,EAAE;QACV,MAAM,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC;QAC3C,QAAQ,EAAE;YACR,KAAK,EAAE,KAAK;YACZ,WAAW,EAAE,yEAAyE;SACvF;KACF,CAAC;IACD,KAAK,EAAE;GACK,WAAW,CAUvB"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* @module ui-decorators/graph/nodes/utility/map
|
|
12
|
+
* @summary Map utility node declaration (DECAF-32 §22.2.2).
|
|
13
|
+
* @description Map — transforms the current input into a new output object.
|
|
14
|
+
*/
|
|
15
|
+
import { Model, model, required } from "@decaf-ts/decorator-validation";
|
|
16
|
+
import { uielement } from "./../../../ui/decorators.js";
|
|
17
|
+
import { input, node, output } from "./../../decorators.js";
|
|
18
|
+
// Ensure category styles are registered (idempotent).
|
|
19
|
+
import "./../category-styles.js";
|
|
20
|
+
let MapFlowNode = class MapFlowNode extends Model {
|
|
21
|
+
};
|
|
22
|
+
__decorate([
|
|
23
|
+
required(),
|
|
24
|
+
uielement("textarea", { label: "Input value", placeholder: "Value to transform" }),
|
|
25
|
+
input({ handle: "value" }),
|
|
26
|
+
__metadata("design:type", Object)
|
|
27
|
+
], MapFlowNode.prototype, "value", void 0);
|
|
28
|
+
__decorate([
|
|
29
|
+
required(),
|
|
30
|
+
uielement("input", { label: "Transformed output", placeholder: "Mapped result" }),
|
|
31
|
+
output({ handle: "result" }),
|
|
32
|
+
__metadata("design:type", Object)
|
|
33
|
+
], MapFlowNode.prototype, "result", void 0);
|
|
34
|
+
MapFlowNode = __decorate([
|
|
35
|
+
node("core.flow.map", {
|
|
36
|
+
kind: "core.flow.map",
|
|
37
|
+
category: "Utility",
|
|
38
|
+
color: "#84cc16",
|
|
39
|
+
icon: "ti-arrows-right-left",
|
|
40
|
+
width: 96,
|
|
41
|
+
height: 96,
|
|
42
|
+
labels: ["flow", "map", "transform"],
|
|
43
|
+
metadata: {
|
|
44
|
+
title: "Map",
|
|
45
|
+
description: "Transforms the current input into a new output object using the configured mapper.",
|
|
46
|
+
mapper: {},
|
|
47
|
+
},
|
|
48
|
+
}),
|
|
49
|
+
model()
|
|
50
|
+
], MapFlowNode);
|
|
51
|
+
export { MapFlowNode };
|
|
52
|
+
//# sourceMappingURL=map.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map.js","sourceRoot":"","sources":["../../../../../src/graph/nodes/utility/map.ts"],"names":[],"mappings":";;;;;;;;;AAAA;;;;GAIG;AACH,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,oCAA+B;AACnD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,8BAAyB;AAEvD,sDAAsD;AACtD,iCAA4B;AAiBrB,IAAM,WAAW,GAAjB,MAAM,WAAY,SAAQ,KAAK;CAUrC,CAAA;AANC;IAHC,QAAQ,EAAE;IACV,SAAS,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,oBAAoB,EAAE,CAAC;IAClF,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;;0CACX;AAKhB;IAHC,QAAQ,EAAE;IACV,SAAS,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,oBAAoB,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC;IACjF,MAAM,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;;2CACZ;AATN,WAAW;IAfvB,IAAI,CAAC,eAAe,EAAE;QACrB,IAAI,EAAE,eAAe;QACrB,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,sBAAsB;QAC5B,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,EAAE;QACV,MAAM,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC;QACpC,QAAQ,EAAE;YACR,KAAK,EAAE,KAAK;YACZ,WAAW,EAAE,oFAAoF;YACjG,MAAM,EAAE,EAAE;SACX;KACF,CAAC;IACD,KAAK,EAAE;GACK,WAAW,CAUvB"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* @module ui-decorators/graph/nodes/utility/merge
|
|
12
|
+
* @summary Merge utility node declaration (DECAF-32 §22.2.2).
|
|
13
|
+
* @description Merge — normalises branch/parallel outputs into a single
|
|
14
|
+
* output.
|
|
15
|
+
*/
|
|
16
|
+
import { Model, model, required } from "@decaf-ts/decorator-validation";
|
|
17
|
+
import { uielement } from "./../../../ui/decorators.js";
|
|
18
|
+
import { input, node, output } from "./../../decorators.js";
|
|
19
|
+
// Ensure category styles are registered (idempotent).
|
|
20
|
+
import "./../category-styles.js";
|
|
21
|
+
let MergeFlowNode = class MergeFlowNode extends Model {
|
|
22
|
+
};
|
|
23
|
+
__decorate([
|
|
24
|
+
required(),
|
|
25
|
+
uielement("textarea", { label: "Branch outputs", placeholder: "Outputs to merge" }),
|
|
26
|
+
input({ handle: "values" }),
|
|
27
|
+
__metadata("design:type", Array)
|
|
28
|
+
], MergeFlowNode.prototype, "values", void 0);
|
|
29
|
+
__decorate([
|
|
30
|
+
required(),
|
|
31
|
+
uielement("input", { label: "Merged output", placeholder: "Merged result" }),
|
|
32
|
+
output({ handle: "merged" }),
|
|
33
|
+
__metadata("design:type", Object)
|
|
34
|
+
], MergeFlowNode.prototype, "merged", void 0);
|
|
35
|
+
MergeFlowNode = __decorate([
|
|
36
|
+
node("core.flow.merge", {
|
|
37
|
+
kind: "core.flow.merge",
|
|
38
|
+
category: "Utility",
|
|
39
|
+
color: "#0d9488",
|
|
40
|
+
icon: "ti-arrows-merge",
|
|
41
|
+
width: 96,
|
|
42
|
+
height: 96,
|
|
43
|
+
labels: ["flow", "merge", "join"],
|
|
44
|
+
metadata: {
|
|
45
|
+
title: "Merge",
|
|
46
|
+
description: "Merges multiple branch outputs into a single normalised output object.",
|
|
47
|
+
strategy: "concat",
|
|
48
|
+
},
|
|
49
|
+
}),
|
|
50
|
+
model()
|
|
51
|
+
], MergeFlowNode);
|
|
52
|
+
export { MergeFlowNode };
|
|
53
|
+
//# sourceMappingURL=merge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"merge.js","sourceRoot":"","sources":["../../../../../src/graph/nodes/utility/merge.ts"],"names":[],"mappings":";;;;;;;;;AAAA;;;;;GAKG;AACH,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,oCAA+B;AACnD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,8BAAyB;AAEvD,sDAAsD;AACtD,iCAA4B;AAiBrB,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,KAAK;CAUvC,CAAA;AANC;IAHC,QAAQ,EAAE;IACV,SAAS,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,kBAAkB,EAAE,CAAC;IACnF,KAAK,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;;6CACT;AAKnB;IAHC,QAAQ,EAAE;IACV,SAAS,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC;IAC5E,MAAM,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;;6CACZ;AATN,aAAa;IAfzB,IAAI,CAAC,iBAAiB,EAAE;QACvB,IAAI,EAAE,iBAAiB;QACvB,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,iBAAiB;QACvB,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,EAAE;QACV,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC;QACjC,QAAQ,EAAE;YACR,KAAK,EAAE,OAAO;YACd,WAAW,EAAE,wEAAwE;YACrF,QAAQ,EAAE,QAAQ;SACnB;KACF,CAAC;IACD,KAAK,EAAE;GACK,aAAa,CAUzB"}
|