@decaf-ts/ui-decorators 0.20.4 → 0.20.7
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 +1059 -2
- package/dist/ui-decorators.js +1090 -2
- package/lib/cjs/dashboard/constants.cjs +11 -0
- package/lib/cjs/dashboard/decorators.cjs +61 -0
- package/lib/cjs/dashboard/index.cjs +23 -0
- package/lib/cjs/dashboard/reader.cjs +67 -0
- package/lib/cjs/dashboard/registry.cjs +45 -0
- package/lib/cjs/dashboard/types.cjs +4 -0
- package/lib/cjs/graph/GraphExecutionStateMapper.cjs +97 -0
- package/lib/cjs/graph/GraphResolution.cjs +17 -0
- package/lib/cjs/graph/catalog/GraphConnectionPolicy.cjs +2 -2
- package/lib/cjs/graph/catalog/GraphCredentialReference.cjs +2 -2
- package/lib/cjs/graph/catalog/GraphCredentialRequirement.cjs +2 -2
- package/lib/cjs/graph/catalog/GraphDynamicPortRule.cjs +2 -2
- package/lib/cjs/graph/catalog/GraphIconReference.cjs +2 -2
- package/lib/cjs/graph/catalog/GraphManifestCompiler.cjs +2 -2
- package/lib/cjs/graph/catalog/GraphNodeCapability.cjs +2 -2
- package/lib/cjs/graph/catalog/GraphNodeDisplayManifest.cjs +2 -2
- package/lib/cjs/graph/catalog/GraphNodeManifest.cjs +2 -2
- package/lib/cjs/graph/catalog/GraphNodeManifestSerialization.cjs +2 -2
- package/lib/cjs/graph/catalog/GraphNodeMethodManifest.cjs +2 -2
- package/lib/cjs/graph/catalog/GraphNodePolicyManifest.cjs +2 -2
- package/lib/cjs/graph/catalog/GraphParameterBase.cjs +2 -2
- package/lib/cjs/graph/catalog/GraphParameterDefinition.cjs +2 -2
- package/lib/cjs/graph/catalog/GraphParameterOption.cjs +2 -2
- package/lib/cjs/graph/catalog/GraphParameterValidation.cjs +2 -2
- package/lib/cjs/graph/catalog/GraphPortManifest.cjs +2 -2
- package/lib/cjs/graph/catalog/GraphResourceLocatorMode.cjs +2 -2
- package/lib/cjs/graph/catalog/GraphValueSchema.cjs +2 -2
- package/lib/cjs/graph/catalog/GraphValueSchemaDerivation.cjs +2 -2
- package/lib/cjs/graph/catalog/GraphVisibilityExpression.cjs +2 -2
- package/lib/cjs/graph/catalog/index.cjs +2 -2
- package/lib/cjs/graph/constants.cjs +159 -3
- package/lib/cjs/graph/decorators.cjs +2 -2
- package/lib/cjs/graph/document/GraphDecoratedWorkflowCompiler.cjs +2 -2
- package/lib/cjs/graph/document/GraphEdgeInstance.cjs +2 -2
- package/lib/cjs/graph/document/GraphEndpoint.cjs +2 -2
- package/lib/cjs/graph/document/GraphJsonValue.cjs +2 -2
- package/lib/cjs/graph/document/GraphLoopConfiguration.cjs +2 -2
- package/lib/cjs/graph/document/GraphNodeBinding.cjs +2 -2
- package/lib/cjs/graph/document/GraphNodeInstance.cjs +2 -2
- package/lib/cjs/graph/document/GraphWorkflowDocument.cjs +2 -2
- package/lib/cjs/graph/document/GraphWorkflowDocumentBuilder.cjs +2 -2
- package/lib/cjs/graph/document/GraphWorkflowDocumentReader.cjs +2 -2
- package/lib/cjs/graph/document/GraphWorkflowDocumentSerializer.cjs +2 -2
- package/lib/cjs/graph/document/GraphWorkflowUiState.cjs +2 -2
- package/lib/cjs/graph/document/index.cjs +2 -2
- package/lib/cjs/graph/index.cjs +5 -2
- package/lib/cjs/graph/nodes/agents/agent.cjs +110 -0
- package/lib/cjs/graph/nodes/base.cjs +36 -0
- package/lib/cjs/graph/nodes/boundary/input-value.cjs +57 -0
- package/lib/cjs/graph/nodes/category-styles.cjs +38 -0
- package/lib/cjs/graph/nodes/flow-control/break.cjs +63 -0
- package/lib/cjs/graph/nodes/flow-control/error-boundary.cjs +67 -0
- package/lib/cjs/graph/nodes/flow-control/human-approval.cjs +69 -0
- package/lib/cjs/graph/nodes/flow-control/if.cjs +71 -0
- package/lib/cjs/graph/nodes/flow-control/parallel.cjs +61 -0
- package/lib/cjs/graph/nodes/flow-control/switch.cjs +121 -0
- package/lib/cjs/graph/nodes/index.cjs +123 -0
- package/lib/cjs/graph/nodes/loops/foreach.cjs +86 -0
- package/lib/cjs/graph/nodes/loops/until.cjs +74 -0
- package/lib/cjs/graph/nodes/loops/while.cjs +74 -0
- package/lib/cjs/graph/nodes/manifests.cjs +338 -0
- package/lib/cjs/graph/nodes/triggers/chat.cjs +70 -0
- package/lib/cjs/graph/nodes/triggers/event.cjs +58 -0
- package/lib/cjs/graph/nodes/triggers/form.cjs +59 -0
- package/lib/cjs/graph/nodes/triggers/manual.cjs +60 -0
- package/lib/cjs/graph/nodes/triggers/schedule.cjs +60 -0
- package/lib/cjs/graph/nodes/triggers/webhook.cjs +62 -0
- package/lib/cjs/graph/nodes/utility/code.cjs +99 -0
- package/lib/cjs/graph/nodes/utility/delay.cjs +61 -0
- package/lib/cjs/graph/nodes/utility/log.cjs +62 -0
- package/lib/cjs/graph/nodes/utility/map.cjs +61 -0
- package/lib/cjs/graph/nodes/utility/merge.cjs +62 -0
- package/lib/cjs/graph/nodes/utility/return.cjs +61 -0
- package/lib/cjs/graph/nodes/utility/utility-log.cjs +66 -0
- package/lib/cjs/graph/overrides/Metadata.cjs +2 -2
- package/lib/cjs/graph/overrides/Rendering.cjs +2 -2
- package/lib/cjs/graph/overrides/index.cjs +2 -2
- package/lib/cjs/graph/overrides/overrides.cjs +2 -2
- package/lib/cjs/graph/reader.cjs +2 -2
- package/lib/cjs/graph/registry.cjs +2 -2
- package/lib/cjs/graph/snapshot.cjs +2 -2
- package/lib/cjs/graph/types.cjs +2 -2
- package/lib/cjs/index.cjs +6 -5
- package/lib/cjs/model/Renderable.cjs +2 -2
- package/lib/cjs/model/decorators.cjs +2 -2
- package/lib/cjs/model/index.cjs +2 -2
- package/lib/cjs/model/model.cjs +2 -2
- package/lib/cjs/model/overrides.cjs +2 -2
- package/lib/cjs/overrides/ModelBuilderExtensions.cjs +2 -2
- package/lib/cjs/overrides/index.cjs +2 -2
- package/lib/cjs/ui/DecafComponent.cjs +2 -2
- package/lib/cjs/ui/DecafEventHandler.cjs +2 -2
- package/lib/cjs/ui/DecafTranslateService.cjs +2 -2
- package/lib/cjs/ui/Rendering.cjs +2 -2
- package/lib/cjs/ui/UIValidator.cjs +2 -2
- package/lib/cjs/ui/constants.cjs +2 -2
- package/lib/cjs/ui/decorators.cjs +2 -2
- package/lib/cjs/ui/errors.cjs +2 -2
- package/lib/cjs/ui/index.cjs +2 -2
- package/lib/cjs/ui/interfaces/IDecafModal.cjs +2 -2
- package/lib/cjs/ui/interfaces/IDecafRouter.cjs +2 -2
- package/lib/cjs/ui/interfaces/IDecafSpinner.cjs +2 -2
- package/lib/cjs/ui/interfaces/IDecafToast.cjs +2 -2
- package/lib/cjs/ui/interfaces/index.cjs +2 -2
- package/lib/cjs/ui/overrides.cjs +2 -2
- package/lib/cjs/ui/types.cjs +2 -2
- package/lib/cjs/ui/utils.cjs +2 -2
- package/lib/cjs/ui/validator.cjs +2 -2
- package/lib/cjs/user-requests/UserRequestHandler.cjs +2 -2
- package/lib/cjs/user-requests/constants.cjs +2 -2
- package/lib/cjs/user-requests/decorators.cjs +2 -2
- package/lib/cjs/user-requests/errors.cjs +2 -2
- package/lib/cjs/user-requests/index.cjs +2 -2
- package/lib/cjs/user-requests/types.cjs +2 -2
- package/lib/esm/dashboard/constants.js +24 -0
- package/lib/esm/dashboard/decorators.js +57 -0
- package/lib/esm/dashboard/index.js +6 -0
- package/lib/esm/dashboard/reader.js +62 -0
- package/lib/esm/dashboard/registry.js +39 -0
- package/lib/esm/dashboard/types.js +9 -0
- package/lib/esm/graph/GraphExecutionStateMapper.js +91 -0
- package/lib/esm/graph/GraphResolution.js +13 -0
- package/lib/esm/graph/catalog/GraphConnectionPolicy.js +1 -1
- package/lib/esm/graph/catalog/GraphCredentialReference.js +1 -1
- package/lib/esm/graph/catalog/GraphCredentialRequirement.js +1 -1
- package/lib/esm/graph/catalog/GraphDynamicPortRule.js +1 -1
- package/lib/esm/graph/catalog/GraphIconReference.js +1 -1
- package/lib/esm/graph/catalog/GraphManifestCompiler.js +1 -1
- package/lib/esm/graph/catalog/GraphNodeCapability.js +1 -1
- package/lib/esm/graph/catalog/GraphNodeDisplayManifest.js +1 -1
- package/lib/esm/graph/catalog/GraphNodeManifest.js +1 -1
- package/lib/esm/graph/catalog/GraphNodeManifestSerialization.js +1 -1
- package/lib/esm/graph/catalog/GraphNodeMethodManifest.js +1 -1
- package/lib/esm/graph/catalog/GraphNodePolicyManifest.js +1 -1
- package/lib/esm/graph/catalog/GraphParameterBase.js +1 -1
- package/lib/esm/graph/catalog/GraphParameterDefinition.js +1 -1
- package/lib/esm/graph/catalog/GraphParameterOption.js +1 -1
- package/lib/esm/graph/catalog/GraphParameterValidation.js +1 -1
- package/lib/esm/graph/catalog/GraphPortManifest.js +1 -1
- package/lib/esm/graph/catalog/GraphResourceLocatorMode.js +1 -1
- package/lib/esm/graph/catalog/GraphValueSchema.js +1 -1
- package/lib/esm/graph/catalog/GraphValueSchemaDerivation.js +1 -1
- package/lib/esm/graph/catalog/GraphVisibilityExpression.js +1 -1
- package/lib/esm/graph/catalog/index.js +1 -1
- package/lib/esm/graph/constants.js +180 -1
- package/lib/esm/graph/decorators.js +1 -1
- package/lib/esm/graph/document/GraphDecoratedWorkflowCompiler.js +1 -1
- package/lib/esm/graph/document/GraphEdgeInstance.js +1 -1
- package/lib/esm/graph/document/GraphEndpoint.js +1 -1
- package/lib/esm/graph/document/GraphJsonValue.js +1 -1
- package/lib/esm/graph/document/GraphLoopConfiguration.js +1 -1
- package/lib/esm/graph/document/GraphNodeBinding.js +1 -1
- package/lib/esm/graph/document/GraphNodeInstance.js +1 -1
- package/lib/esm/graph/document/GraphWorkflowDocument.js +1 -1
- package/lib/esm/graph/document/GraphWorkflowDocumentBuilder.js +1 -1
- package/lib/esm/graph/document/GraphWorkflowDocumentReader.js +1 -1
- package/lib/esm/graph/document/GraphWorkflowDocumentSerializer.js +1 -1
- package/lib/esm/graph/document/GraphWorkflowUiState.js +1 -1
- package/lib/esm/graph/document/index.js +1 -1
- package/lib/esm/graph/index.js +4 -1
- package/lib/esm/graph/nodes/agents/agent.js +101 -0
- package/lib/esm/graph/nodes/base.js +31 -0
- package/lib/esm/graph/nodes/boundary/input-value.js +48 -0
- package/lib/esm/graph/nodes/category-styles.js +34 -0
- package/lib/esm/graph/nodes/flow-control/break.js +54 -0
- package/lib/esm/graph/nodes/flow-control/error-boundary.js +58 -0
- package/lib/esm/graph/nodes/flow-control/human-approval.js +60 -0
- package/lib/esm/graph/nodes/flow-control/if.js +62 -0
- package/lib/esm/graph/nodes/flow-control/parallel.js +52 -0
- package/lib/esm/graph/nodes/flow-control/switch.js +112 -0
- package/lib/esm/graph/nodes/index.js +105 -0
- package/lib/esm/graph/nodes/loops/foreach.js +77 -0
- package/lib/esm/graph/nodes/loops/until.js +65 -0
- package/lib/esm/graph/nodes/loops/while.js +65 -0
- package/lib/esm/graph/nodes/manifests.js +334 -0
- package/lib/esm/graph/nodes/triggers/chat.js +61 -0
- package/lib/esm/graph/nodes/triggers/event.js +49 -0
- package/lib/esm/graph/nodes/triggers/form.js +50 -0
- package/lib/esm/graph/nodes/triggers/manual.js +51 -0
- package/lib/esm/graph/nodes/triggers/schedule.js +51 -0
- package/lib/esm/graph/nodes/triggers/webhook.js +53 -0
- package/lib/esm/graph/nodes/utility/code.js +90 -0
- package/lib/esm/graph/nodes/utility/delay.js +52 -0
- package/lib/esm/graph/nodes/utility/log.js +53 -0
- package/lib/esm/graph/nodes/utility/map.js +52 -0
- package/lib/esm/graph/nodes/utility/merge.js +53 -0
- package/lib/esm/graph/nodes/utility/return.js +52 -0
- package/lib/esm/graph/nodes/utility/utility-log.js +57 -0
- package/lib/esm/graph/overrides/Metadata.js +1 -1
- package/lib/esm/graph/overrides/Rendering.js +1 -1
- package/lib/esm/graph/overrides/index.js +1 -1
- package/lib/esm/graph/overrides/overrides.js +1 -1
- package/lib/esm/graph/reader.js +1 -1
- package/lib/esm/graph/registry.js +1 -1
- package/lib/esm/graph/snapshot.js +1 -1
- package/lib/esm/graph/types.js +1 -1
- package/lib/esm/index.js +5 -4
- package/lib/esm/model/Renderable.js +1 -1
- package/lib/esm/model/decorators.js +1 -1
- package/lib/esm/model/index.js +1 -1
- package/lib/esm/model/model.js +1 -1
- package/lib/esm/model/overrides.js +1 -1
- package/lib/esm/overrides/ModelBuilderExtensions.js +1 -1
- package/lib/esm/overrides/index.js +1 -1
- package/lib/esm/ui/DecafComponent.js +1 -1
- package/lib/esm/ui/DecafEventHandler.js +1 -1
- package/lib/esm/ui/DecafTranslateService.js +1 -1
- package/lib/esm/ui/Rendering.js +1 -1
- package/lib/esm/ui/UIValidator.js +1 -1
- package/lib/esm/ui/constants.js +1 -1
- package/lib/esm/ui/decorators.js +1 -1
- package/lib/esm/ui/errors.js +1 -1
- package/lib/esm/ui/index.js +1 -1
- package/lib/esm/ui/interfaces/IDecafModal.js +1 -1
- package/lib/esm/ui/interfaces/IDecafRouter.js +1 -1
- package/lib/esm/ui/interfaces/IDecafSpinner.js +1 -1
- package/lib/esm/ui/interfaces/IDecafToast.js +1 -1
- package/lib/esm/ui/interfaces/index.js +1 -1
- package/lib/esm/ui/overrides.js +1 -1
- package/lib/esm/ui/types.js +1 -1
- package/lib/esm/ui/utils.js +1 -1
- package/lib/esm/ui/validator.js +1 -1
- package/lib/esm/user-requests/UserRequestHandler.js +1 -1
- package/lib/esm/user-requests/constants.js +1 -1
- package/lib/esm/user-requests/decorators.js +1 -1
- package/lib/esm/user-requests/errors.js +1 -1
- package/lib/esm/user-requests/index.js +1 -1
- package/lib/esm/user-requests/types.js +1 -1
- package/lib/types/dashboard/constants.d.cts +22 -0
- package/lib/types/dashboard/constants.d.mts +22 -0
- package/lib/types/dashboard/decorators.d.cts +34 -0
- package/lib/types/dashboard/decorators.d.mts +34 -0
- package/lib/types/dashboard/index.d.cts +5 -0
- package/lib/types/dashboard/index.d.mts +5 -0
- package/lib/types/dashboard/reader.d.cts +30 -0
- package/lib/types/dashboard/reader.d.mts +30 -0
- package/lib/types/dashboard/registry.d.cts +29 -0
- package/lib/types/dashboard/registry.d.mts +29 -0
- package/lib/types/dashboard/types.d.cts +67 -0
- package/lib/types/dashboard/types.d.mts +67 -0
- 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 +4 -3
- package/lib/types/index.d.mts +4 -3
- package/package.json +1 -1
- package/dist/ui-decorators.cjs.map +0 -1
- package/dist/ui-decorators.js.map +0 -1
- package/lib/cjs/graph/catalog/GraphConnectionPolicy.cjs.map +0 -1
- package/lib/cjs/graph/catalog/GraphCredentialReference.cjs.map +0 -1
- package/lib/cjs/graph/catalog/GraphCredentialRequirement.cjs.map +0 -1
- package/lib/cjs/graph/catalog/GraphDynamicPortRule.cjs.map +0 -1
- package/lib/cjs/graph/catalog/GraphIconReference.cjs.map +0 -1
- package/lib/cjs/graph/catalog/GraphManifestCompiler.cjs.map +0 -1
- package/lib/cjs/graph/catalog/GraphNodeCapability.cjs.map +0 -1
- package/lib/cjs/graph/catalog/GraphNodeDisplayManifest.cjs.map +0 -1
- package/lib/cjs/graph/catalog/GraphNodeManifest.cjs.map +0 -1
- package/lib/cjs/graph/catalog/GraphNodeManifestSerialization.cjs.map +0 -1
- package/lib/cjs/graph/catalog/GraphNodeMethodManifest.cjs.map +0 -1
- package/lib/cjs/graph/catalog/GraphNodePolicyManifest.cjs.map +0 -1
- package/lib/cjs/graph/catalog/GraphParameterBase.cjs.map +0 -1
- package/lib/cjs/graph/catalog/GraphParameterDefinition.cjs.map +0 -1
- package/lib/cjs/graph/catalog/GraphParameterOption.cjs.map +0 -1
- package/lib/cjs/graph/catalog/GraphParameterValidation.cjs.map +0 -1
- package/lib/cjs/graph/catalog/GraphPortManifest.cjs.map +0 -1
- package/lib/cjs/graph/catalog/GraphResourceLocatorMode.cjs.map +0 -1
- package/lib/cjs/graph/catalog/GraphValueSchema.cjs.map +0 -1
- package/lib/cjs/graph/catalog/GraphValueSchemaDerivation.cjs.map +0 -1
- package/lib/cjs/graph/catalog/GraphVisibilityExpression.cjs.map +0 -1
- package/lib/cjs/graph/catalog/index.cjs.map +0 -1
- package/lib/cjs/graph/constants.cjs.map +0 -1
- package/lib/cjs/graph/decorators.cjs.map +0 -1
- package/lib/cjs/graph/document/GraphDecoratedWorkflowCompiler.cjs.map +0 -1
- package/lib/cjs/graph/document/GraphEdgeInstance.cjs.map +0 -1
- package/lib/cjs/graph/document/GraphEndpoint.cjs.map +0 -1
- package/lib/cjs/graph/document/GraphJsonValue.cjs.map +0 -1
- package/lib/cjs/graph/document/GraphLoopConfiguration.cjs.map +0 -1
- package/lib/cjs/graph/document/GraphNodeBinding.cjs.map +0 -1
- package/lib/cjs/graph/document/GraphNodeInstance.cjs.map +0 -1
- package/lib/cjs/graph/document/GraphWorkflowDocument.cjs.map +0 -1
- package/lib/cjs/graph/document/GraphWorkflowDocumentBuilder.cjs.map +0 -1
- package/lib/cjs/graph/document/GraphWorkflowDocumentReader.cjs.map +0 -1
- package/lib/cjs/graph/document/GraphWorkflowDocumentSerializer.cjs.map +0 -1
- package/lib/cjs/graph/document/GraphWorkflowUiState.cjs.map +0 -1
- package/lib/cjs/graph/document/index.cjs.map +0 -1
- package/lib/cjs/graph/index.cjs.map +0 -1
- package/lib/cjs/graph/overrides/Metadata.cjs.map +0 -1
- package/lib/cjs/graph/overrides/Rendering.cjs.map +0 -1
- package/lib/cjs/graph/overrides/index.cjs.map +0 -1
- package/lib/cjs/graph/overrides/overrides.cjs.map +0 -1
- package/lib/cjs/graph/reader.cjs.map +0 -1
- package/lib/cjs/graph/registry.cjs.map +0 -1
- package/lib/cjs/graph/snapshot.cjs.map +0 -1
- package/lib/cjs/graph/types.cjs.map +0 -1
- package/lib/cjs/index.cjs.map +0 -1
- package/lib/cjs/model/Renderable.cjs.map +0 -1
- package/lib/cjs/model/decorators.cjs.map +0 -1
- package/lib/cjs/model/index.cjs.map +0 -1
- package/lib/cjs/model/model.cjs.map +0 -1
- package/lib/cjs/model/overrides.cjs.map +0 -1
- package/lib/cjs/overrides/ModelBuilderExtensions.cjs.map +0 -1
- package/lib/cjs/overrides/index.cjs.map +0 -1
- package/lib/cjs/ui/DecafComponent.cjs.map +0 -1
- package/lib/cjs/ui/DecafEventHandler.cjs.map +0 -1
- package/lib/cjs/ui/DecafTranslateService.cjs.map +0 -1
- package/lib/cjs/ui/Rendering.cjs.map +0 -1
- package/lib/cjs/ui/UIValidator.cjs.map +0 -1
- package/lib/cjs/ui/constants.cjs.map +0 -1
- package/lib/cjs/ui/decorators.cjs.map +0 -1
- package/lib/cjs/ui/errors.cjs.map +0 -1
- package/lib/cjs/ui/index.cjs.map +0 -1
- package/lib/cjs/ui/interfaces/IDecafModal.cjs.map +0 -1
- package/lib/cjs/ui/interfaces/IDecafRouter.cjs.map +0 -1
- package/lib/cjs/ui/interfaces/IDecafSpinner.cjs.map +0 -1
- package/lib/cjs/ui/interfaces/IDecafToast.cjs.map +0 -1
- package/lib/cjs/ui/interfaces/index.cjs.map +0 -1
- package/lib/cjs/ui/overrides.cjs.map +0 -1
- package/lib/cjs/ui/types.cjs.map +0 -1
- package/lib/cjs/ui/utils.cjs.map +0 -1
- package/lib/cjs/ui/validator.cjs.map +0 -1
- package/lib/cjs/user-requests/UserRequestHandler.cjs.map +0 -1
- package/lib/cjs/user-requests/constants.cjs.map +0 -1
- package/lib/cjs/user-requests/decorators.cjs.map +0 -1
- package/lib/cjs/user-requests/errors.cjs.map +0 -1
- package/lib/cjs/user-requests/index.cjs.map +0 -1
- package/lib/cjs/user-requests/types.cjs.map +0 -1
- package/lib/esm/graph/catalog/GraphConnectionPolicy.js.map +0 -1
- package/lib/esm/graph/catalog/GraphCredentialReference.js.map +0 -1
- package/lib/esm/graph/catalog/GraphCredentialRequirement.js.map +0 -1
- package/lib/esm/graph/catalog/GraphDynamicPortRule.js.map +0 -1
- package/lib/esm/graph/catalog/GraphIconReference.js.map +0 -1
- package/lib/esm/graph/catalog/GraphManifestCompiler.js.map +0 -1
- package/lib/esm/graph/catalog/GraphNodeCapability.js.map +0 -1
- package/lib/esm/graph/catalog/GraphNodeDisplayManifest.js.map +0 -1
- package/lib/esm/graph/catalog/GraphNodeManifest.js.map +0 -1
- package/lib/esm/graph/catalog/GraphNodeManifestSerialization.js.map +0 -1
- package/lib/esm/graph/catalog/GraphNodeMethodManifest.js.map +0 -1
- package/lib/esm/graph/catalog/GraphNodePolicyManifest.js.map +0 -1
- package/lib/esm/graph/catalog/GraphParameterBase.js.map +0 -1
- package/lib/esm/graph/catalog/GraphParameterDefinition.js.map +0 -1
- package/lib/esm/graph/catalog/GraphParameterOption.js.map +0 -1
- package/lib/esm/graph/catalog/GraphParameterValidation.js.map +0 -1
- package/lib/esm/graph/catalog/GraphPortManifest.js.map +0 -1
- package/lib/esm/graph/catalog/GraphResourceLocatorMode.js.map +0 -1
- package/lib/esm/graph/catalog/GraphValueSchema.js.map +0 -1
- package/lib/esm/graph/catalog/GraphValueSchemaDerivation.js.map +0 -1
- package/lib/esm/graph/catalog/GraphVisibilityExpression.js.map +0 -1
- package/lib/esm/graph/catalog/index.js.map +0 -1
- package/lib/esm/graph/constants.js.map +0 -1
- package/lib/esm/graph/decorators.js.map +0 -1
- package/lib/esm/graph/document/GraphDecoratedWorkflowCompiler.js.map +0 -1
- package/lib/esm/graph/document/GraphEdgeInstance.js.map +0 -1
- package/lib/esm/graph/document/GraphEndpoint.js.map +0 -1
- package/lib/esm/graph/document/GraphJsonValue.js.map +0 -1
- package/lib/esm/graph/document/GraphLoopConfiguration.js.map +0 -1
- package/lib/esm/graph/document/GraphNodeBinding.js.map +0 -1
- package/lib/esm/graph/document/GraphNodeInstance.js.map +0 -1
- package/lib/esm/graph/document/GraphWorkflowDocument.js.map +0 -1
- package/lib/esm/graph/document/GraphWorkflowDocumentBuilder.js.map +0 -1
- package/lib/esm/graph/document/GraphWorkflowDocumentReader.js.map +0 -1
- package/lib/esm/graph/document/GraphWorkflowDocumentSerializer.js.map +0 -1
- package/lib/esm/graph/document/GraphWorkflowUiState.js.map +0 -1
- package/lib/esm/graph/document/index.js.map +0 -1
- package/lib/esm/graph/index.js.map +0 -1
- package/lib/esm/graph/overrides/Metadata.js.map +0 -1
- package/lib/esm/graph/overrides/Rendering.js.map +0 -1
- package/lib/esm/graph/overrides/index.js.map +0 -1
- package/lib/esm/graph/overrides/overrides.js.map +0 -1
- package/lib/esm/graph/reader.js.map +0 -1
- package/lib/esm/graph/registry.js.map +0 -1
- package/lib/esm/graph/snapshot.js.map +0 -1
- package/lib/esm/graph/types.js.map +0 -1
- package/lib/esm/index.js.map +0 -1
- package/lib/esm/model/Renderable.js.map +0 -1
- package/lib/esm/model/decorators.js.map +0 -1
- package/lib/esm/model/index.js.map +0 -1
- package/lib/esm/model/model.js.map +0 -1
- package/lib/esm/model/overrides.js.map +0 -1
- package/lib/esm/overrides/ModelBuilderExtensions.js.map +0 -1
- package/lib/esm/overrides/index.js.map +0 -1
- package/lib/esm/ui/DecafComponent.js.map +0 -1
- package/lib/esm/ui/DecafEventHandler.js.map +0 -1
- package/lib/esm/ui/DecafTranslateService.js.map +0 -1
- package/lib/esm/ui/Rendering.js.map +0 -1
- package/lib/esm/ui/UIValidator.js.map +0 -1
- package/lib/esm/ui/constants.js.map +0 -1
- package/lib/esm/ui/decorators.js.map +0 -1
- package/lib/esm/ui/errors.js.map +0 -1
- package/lib/esm/ui/index.js.map +0 -1
- package/lib/esm/ui/interfaces/IDecafModal.js.map +0 -1
- package/lib/esm/ui/interfaces/IDecafRouter.js.map +0 -1
- package/lib/esm/ui/interfaces/IDecafSpinner.js.map +0 -1
- package/lib/esm/ui/interfaces/IDecafToast.js.map +0 -1
- package/lib/esm/ui/interfaces/index.js.map +0 -1
- package/lib/esm/ui/overrides.js.map +0 -1
- package/lib/esm/ui/types.js.map +0 -1
- package/lib/esm/ui/utils.js.map +0 -1
- package/lib/esm/ui/validator.js.map +0 -1
- package/lib/esm/user-requests/UserRequestHandler.js.map +0 -1
- package/lib/esm/user-requests/constants.js.map +0 -1
- package/lib/esm/user-requests/decorators.js.map +0 -1
- package/lib/esm/user-requests/errors.js.map +0 -1
- package/lib/esm/user-requests/index.js.map +0 -1
- package/lib/esm/user-requests/types.js.map +0 -1
|
@@ -0,0 +1,61 @@
|
|
|
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/chat
|
|
12
|
+
* @summary Chat trigger node declaration (DECAF-32 §22.2.1).
|
|
13
|
+
* @description Chat trigger — chat message entrypoint; message/sessionId/
|
|
14
|
+
* userId schema.
|
|
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 ChatTriggerNode = class ChatTriggerNode extends Model {
|
|
22
|
+
};
|
|
23
|
+
__decorate([
|
|
24
|
+
required(),
|
|
25
|
+
uielement("input", { label: "Message", placeholder: "Incoming chat message" }),
|
|
26
|
+
output({ handle: "message" }),
|
|
27
|
+
__metadata("design:type", String)
|
|
28
|
+
], ChatTriggerNode.prototype, "message", void 0);
|
|
29
|
+
__decorate([
|
|
30
|
+
required(),
|
|
31
|
+
uielement("input", { label: "Session ID", placeholder: "Chat session identifier" }),
|
|
32
|
+
output({ handle: "sessionId" }),
|
|
33
|
+
__metadata("design:type", String)
|
|
34
|
+
], ChatTriggerNode.prototype, "sessionId", void 0);
|
|
35
|
+
__decorate([
|
|
36
|
+
required(),
|
|
37
|
+
uielement("input", { label: "User ID", placeholder: "Chat user identifier" }),
|
|
38
|
+
output({ handle: "userId" }),
|
|
39
|
+
__metadata("design:type", String)
|
|
40
|
+
], ChatTriggerNode.prototype, "userId", void 0);
|
|
41
|
+
ChatTriggerNode = __decorate([
|
|
42
|
+
node("core.trigger.chat", {
|
|
43
|
+
kind: "core.trigger.chat",
|
|
44
|
+
category: "Trigger",
|
|
45
|
+
color: "#14b8a6",
|
|
46
|
+
icon: "ti-message-circle",
|
|
47
|
+
width: 96,
|
|
48
|
+
height: 96,
|
|
49
|
+
labels: ["trigger", "chat", "entrypoint"],
|
|
50
|
+
metadata: {
|
|
51
|
+
title: "Chat trigger",
|
|
52
|
+
description: "Starts the workflow when a chat message is received. Emits message, sessionId, and userId.",
|
|
53
|
+
trigger: {
|
|
54
|
+
type: "chat",
|
|
55
|
+
},
|
|
56
|
+
},
|
|
57
|
+
}),
|
|
58
|
+
model()
|
|
59
|
+
], ChatTriggerNode);
|
|
60
|
+
export { ChatTriggerNode };
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9ncmFwaC9ub2Rlcy90cmlnZ2Vycy9jaGF0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBOzs7OztHQUtHO0FBQ0gsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxvQ0FBK0I7QUFDbkQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsOEJBQXlCO0FBRWhELHNEQUFzRDtBQUN0RCxpQ0FBNEI7QUFtQnJCLElBQU0sZUFBZSxHQUFyQixNQUFNLGVBQWdCLFNBQVEsS0FBSztDQWV6QyxDQUFBO0FBWEM7SUFIQyxRQUFRLEVBQUU7SUFDVixTQUFTLENBQUMsT0FBTyxFQUFFLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsdUJBQXVCLEVBQUUsQ0FBQztJQUM5RSxNQUFNLENBQUMsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLENBQUM7O2dEQUNiO0FBS2pCO0lBSEMsUUFBUSxFQUFFO0lBQ1YsU0FBUyxDQUFDLE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLHlCQUF5QixFQUFFLENBQUM7SUFDbkYsTUFBTSxDQUFDLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxDQUFDOztrREFDYjtBQUtuQjtJQUhDLFFBQVEsRUFBRTtJQUNWLFNBQVMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxzQkFBc0IsRUFBRSxDQUFDO0lBQzdFLE1BQU0sQ0FBQyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsQ0FBQzs7K0NBQ2I7QUFkTCxlQUFlO0lBakIzQixJQUFJLENBQUMsbUJBQW1CLEVBQUU7UUFDekIsSUFBSSxFQUFFLG1CQUFtQjtRQUN6QixRQUFRLEVBQUUsU0FBUztRQUNuQixLQUFLLEVBQUUsU0FBUztRQUNoQixJQUFJLEVBQUUsbUJBQW1CO1FBQ3pCLEtBQUssRUFBRSxFQUFFO1FBQ1QsTUFBTSxFQUFFLEVBQUU7UUFDVixNQUFNLEVBQUUsQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLFlBQVksQ0FBQztRQUN6QyxRQUFRLEVBQUU7WUFDUixLQUFLLEVBQUUsY0FBYztZQUNyQixXQUFXLEVBQUUsNEZBQTRGO1lBQ3pHLE9BQU8sRUFBRTtnQkFDUCxJQUFJLEVBQUUsTUFBTTthQUNiO1NBQ0Y7S0FDRixDQUFDO0lBQ0QsS0FBSyxFQUFFO0dBQ0ssZUFBZSxDQWUzQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQG1vZHVsZSB1aS1kZWNvcmF0b3JzL2dyYXBoL25vZGVzL3RyaWdnZXJzL2NoYXRcbiAqIEBzdW1tYXJ5IENoYXQgdHJpZ2dlciBub2RlIGRlY2xhcmF0aW9uIChERUNBRi0zMiDCpzIyLjIuMSkuXG4gKiBAZGVzY3JpcHRpb24gQ2hhdCB0cmlnZ2VyIOKAlCBjaGF0IG1lc3NhZ2UgZW50cnlwb2ludDsgbWVzc2FnZS9zZXNzaW9uSWQvXG4gKiB1c2VySWQgc2NoZW1hLlxuICovXG5pbXBvcnQgeyBNb2RlbCwgbW9kZWwsIHJlcXVpcmVkIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHsgdWllbGVtZW50IH0gZnJvbSBcIi4uLy4uLy4uL3VpL2RlY29yYXRvcnNcIjtcbmltcG9ydCB7IG5vZGUsIG91dHB1dCB9IGZyb20gXCIuLi8uLi9kZWNvcmF0b3JzXCI7XG5cbi8vIEVuc3VyZSBjYXRlZ29yeSBzdHlsZXMgYXJlIHJlZ2lzdGVyZWQgKGlkZW1wb3RlbnQpLlxuaW1wb3J0IFwiLi4vY2F0ZWdvcnktc3R5bGVzXCI7XG5cbkBub2RlKFwiY29yZS50cmlnZ2VyLmNoYXRcIiwge1xuICBraW5kOiBcImNvcmUudHJpZ2dlci5jaGF0XCIsXG4gIGNhdGVnb3J5OiBcIlRyaWdnZXJcIixcbiAgY29sb3I6IFwiIzE0YjhhNlwiLFxuICBpY29uOiBcInRpLW1lc3NhZ2UtY2lyY2xlXCIsXG4gIHdpZHRoOiA5NixcbiAgaGVpZ2h0OiA5NixcbiAgbGFiZWxzOiBbXCJ0cmlnZ2VyXCIsIFwiY2hhdFwiLCBcImVudHJ5cG9pbnRcIl0sXG4gIG1ldGFkYXRhOiB7XG4gICAgdGl0bGU6IFwiQ2hhdCB0cmlnZ2VyXCIsXG4gICAgZGVzY3JpcHRpb246IFwiU3RhcnRzIHRoZSB3b3JrZmxvdyB3aGVuIGEgY2hhdCBtZXNzYWdlIGlzIHJlY2VpdmVkLiBFbWl0cyBtZXNzYWdlLCBzZXNzaW9uSWQsIGFuZCB1c2VySWQuXCIsXG4gICAgdHJpZ2dlcjoge1xuICAgICAgdHlwZTogXCJjaGF0XCIsXG4gICAgfSxcbiAgfSxcbn0pXG5AbW9kZWwoKVxuZXhwb3J0IGNsYXNzIENoYXRUcmlnZ2VyTm9kZSBleHRlbmRzIE1vZGVsIHtcbiAgQHJlcXVpcmVkKClcbiAgQHVpZWxlbWVudChcImlucHV0XCIsIHsgbGFiZWw6IFwiTWVzc2FnZVwiLCBwbGFjZWhvbGRlcjogXCJJbmNvbWluZyBjaGF0IG1lc3NhZ2VcIiB9KVxuICBAb3V0cHV0KHsgaGFuZGxlOiBcIm1lc3NhZ2VcIiB9KVxuICBtZXNzYWdlITogc3RyaW5nO1xuXG4gIEByZXF1aXJlZCgpXG4gIEB1aWVsZW1lbnQoXCJpbnB1dFwiLCB7IGxhYmVsOiBcIlNlc3Npb24gSURcIiwgcGxhY2Vob2xkZXI6IFwiQ2hhdCBzZXNzaW9uIGlkZW50aWZpZXJcIiB9KVxuICBAb3V0cHV0KHsgaGFuZGxlOiBcInNlc3Npb25JZFwiIH0pXG4gIHNlc3Npb25JZCE6IHN0cmluZztcblxuICBAcmVxdWlyZWQoKVxuICBAdWllbGVtZW50KFwiaW5wdXRcIiwgeyBsYWJlbDogXCJVc2VyIElEXCIsIHBsYWNlaG9sZGVyOiBcIkNoYXQgdXNlciBpZGVudGlmaWVyXCIgfSlcbiAgQG91dHB1dCh7IGhhbmRsZTogXCJ1c2VySWRcIiB9KVxuICB1c2VySWQhOiBzdHJpbmc7XG59XG4iXX0=
|
|
@@ -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=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZ3JhcGgvbm9kZXMvdHJpZ2dlcnMvZXZlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUE7Ozs7R0FJRztBQUNILE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxTQUFTLEVBQUUsb0NBQStCO0FBQ25ELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLDhCQUF5QjtBQUVoRCxzREFBc0Q7QUFDdEQsaUNBQTRCO0FBb0JyQixJQUFNLGdCQUFnQixHQUF0QixNQUFNLGdCQUFpQixTQUFRLEtBQUs7Q0FLMUMsQ0FBQTtBQURDO0lBSEMsUUFBUSxFQUFFO0lBQ1YsU0FBUyxDQUFDLFVBQVUsRUFBRSxFQUFFLEtBQUssRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLENBQUM7SUFDbkYsTUFBTSxDQUFDLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxDQUFDOztpREFDWjtBQUpQLGdCQUFnQjtJQWxCNUIsSUFBSSxDQUFDLG9CQUFvQixFQUFFO1FBQzFCLElBQUksRUFBRSxvQkFBb0I7UUFDMUIsUUFBUSxFQUFFLFNBQVM7UUFDbkIsS0FBSyxFQUFFLFNBQVM7UUFDaEIsSUFBSSxFQUFFLGNBQWM7UUFDcEIsS0FBSyxFQUFFLEVBQUU7UUFDVCxNQUFNLEVBQUUsRUFBRTtRQUNWLE1BQU0sRUFBRSxDQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFDO1FBQ25DLFFBQVEsRUFBRTtZQUNSLEtBQUssRUFBRSxlQUFlO1lBQ3RCLFdBQVcsRUFBRSw0RkFBNEY7WUFDekcsT0FBTyxFQUFFO2dCQUNQLElBQUksRUFBRSxPQUFPO2dCQUNiLEtBQUssRUFBRSxTQUFTO2FBQ2pCO1NBQ0Y7S0FDRixDQUFDO0lBQ0QsS0FBSyxFQUFFO0dBQ0ssZ0JBQWdCLENBSzVCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIHVpLWRlY29yYXRvcnMvZ3JhcGgvbm9kZXMvdHJpZ2dlcnMvZXZlbnRcbiAqIEBzdW1tYXJ5IEV2ZW50IHRyaWdnZXIgbm9kZSBkZWNsYXJhdGlvbiAoREVDQUYtMzIgwqcyMi4yLjEpLlxuICogQGRlc2NyaXB0aW9uIEV2ZW50IHRyaWdnZXIg4oCUIGludGVybmFsIGV2ZW50IGJ1cyB0b3BpYyBzdWJzY3JpYmVyLlxuICovXG5pbXBvcnQgeyBNb2RlbCwgbW9kZWwsIHJlcXVpcmVkIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHsgdWllbGVtZW50IH0gZnJvbSBcIi4uLy4uLy4uL3VpL2RlY29yYXRvcnNcIjtcbmltcG9ydCB7IG5vZGUsIG91dHB1dCB9IGZyb20gXCIuLi8uLi9kZWNvcmF0b3JzXCI7XG5cbi8vIEVuc3VyZSBjYXRlZ29yeSBzdHlsZXMgYXJlIHJlZ2lzdGVyZWQgKGlkZW1wb3RlbnQpLlxuaW1wb3J0IFwiLi4vY2F0ZWdvcnktc3R5bGVzXCI7XG5cbkBub2RlKFwiY29yZS50cmlnZ2VyLmV2ZW50XCIsIHtcbiAga2luZDogXCJjb3JlLnRyaWdnZXIuZXZlbnRcIixcbiAgY2F0ZWdvcnk6IFwiVHJpZ2dlclwiLFxuICBjb2xvcjogXCIjOGI1Y2Y2XCIsXG4gIGljb246IFwidGktYnJvYWRjYXN0XCIsXG4gIHdpZHRoOiA5NixcbiAgaGVpZ2h0OiA5NixcbiAgbGFiZWxzOiBbXCJ0cmlnZ2VyXCIsIFwiZXZlbnRcIiwgXCJidXNcIl0sXG4gIG1ldGFkYXRhOiB7XG4gICAgdGl0bGU6IFwiRXZlbnQgdHJpZ2dlclwiLFxuICAgIGRlc2NyaXB0aW9uOiBcIlN0YXJ0cyB0aGUgd29ya2Zsb3cgd2hlbiBhbiBldmVudCBpcyBwdWJsaXNoZWQgb24gdGhlIGNvbmZpZ3VyZWQgaW50ZXJuYWwgZXZlbnQgYnVzIHRvcGljLlwiLFxuICAgIHRyaWdnZXI6IHtcbiAgICAgIHR5cGU6IFwiZXZlbnRcIixcbiAgICAgIHRvcGljOiBcImRlZmF1bHRcIixcbiAgICB9LFxuICB9LFxufSlcbkBtb2RlbCgpXG5leHBvcnQgY2xhc3MgRXZlbnRUcmlnZ2VyTm9kZSBleHRlbmRzIE1vZGVsIHtcbiAgQHJlcXVpcmVkKClcbiAgQHVpZWxlbWVudChcInRleHRhcmVhXCIsIHsgbGFiZWw6IFwiRXZlbnQgcGF5bG9hZFwiLCBwbGFjZWhvbGRlcjogXCJFdmVudCBidXMgcGF5bG9hZFwiIH0pXG4gIEBvdXRwdXQoeyBoYW5kbGU6IFwicGF5bG9hZFwiIH0pXG4gIHBheWxvYWQhOiB1bmtub3duO1xufVxuIl19
|
|
@@ -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=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9ncmFwaC9ub2Rlcy90cmlnZ2Vycy9mb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBOzs7OztHQUtHO0FBQ0gsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxvQ0FBK0I7QUFDbkQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsOEJBQXlCO0FBRWhELHNEQUFzRDtBQUN0RCxpQ0FBNEI7QUFvQnJCLElBQU0sZUFBZSxHQUFyQixNQUFNLGVBQWdCLFNBQVEsS0FBSztDQUt6QyxDQUFBO0FBREM7SUFIQyxRQUFRLEVBQUU7SUFDVixTQUFTLENBQUMsVUFBVSxFQUFFLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLFdBQVcsRUFBRSx5QkFBeUIsRUFBRSxDQUFDO0lBQzNGLE1BQU0sQ0FBQyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsQ0FBQzs7Z0RBQ1o7QUFKUCxlQUFlO0lBbEIzQixJQUFJLENBQUMsbUJBQW1CLEVBQUU7UUFDekIsSUFBSSxFQUFFLG1CQUFtQjtRQUN6QixRQUFRLEVBQUUsU0FBUztRQUNuQixLQUFLLEVBQUUsU0FBUztRQUNoQixJQUFJLEVBQUUsVUFBVTtRQUNoQixLQUFLLEVBQUUsRUFBRTtRQUNULE1BQU0sRUFBRSxFQUFFO1FBQ1YsTUFBTSxFQUFFLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxRQUFRLENBQUM7UUFDckMsUUFBUSxFQUFFO1lBQ1IsS0FBSyxFQUFFLGNBQWM7WUFDckIsV0FBVyxFQUFFLGtHQUFrRztZQUMvRyxPQUFPLEVBQUU7Z0JBQ1AsSUFBSSxFQUFFLE1BQU07Z0JBQ1osTUFBTSxFQUFFLEVBQUU7YUFDWDtTQUNGO0tBQ0YsQ0FBQztJQUNELEtBQUssRUFBRTtHQUNLLGVBQWUsQ0FLM0IiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBtb2R1bGUgdWktZGVjb3JhdG9ycy9ncmFwaC9ub2Rlcy90cmlnZ2Vycy9mb3JtXG4gKiBAc3VtbWFyeSBGb3JtIHRyaWdnZXIgbm9kZSBkZWNsYXJhdGlvbiAoREVDQUYtMzIgwqcyMi4yLjEpLlxuICogQGRlc2NyaXB0aW9uIEZvcm0gdHJpZ2dlciDigJQgZ2VuZXJhdGVkIHB1YmxpYy9pbnRlcm5hbCBmb3JtOyBmaWVsZFxuICogZGVmaW5pdGlvbnMuXG4gKi9cbmltcG9ydCB7IE1vZGVsLCBtb2RlbCwgcmVxdWlyZWQgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyB1aWVsZW1lbnQgfSBmcm9tIFwiLi4vLi4vLi4vdWkvZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgbm9kZSwgb3V0cHV0IH0gZnJvbSBcIi4uLy4uL2RlY29yYXRvcnNcIjtcblxuLy8gRW5zdXJlIGNhdGVnb3J5IHN0eWxlcyBhcmUgcmVnaXN0ZXJlZCAoaWRlbXBvdGVudCkuXG5pbXBvcnQgXCIuLi9jYXRlZ29yeS1zdHlsZXNcIjtcblxuQG5vZGUoXCJjb3JlLnRyaWdnZXIuZm9ybVwiLCB7XG4gIGtpbmQ6IFwiY29yZS50cmlnZ2VyLmZvcm1cIixcbiAgY2F0ZWdvcnk6IFwiVHJpZ2dlclwiLFxuICBjb2xvcjogXCIjZWM0ODk5XCIsXG4gIGljb246IFwidGktZm9ybXNcIixcbiAgd2lkdGg6IDk2LFxuICBoZWlnaHQ6IDk2LFxuICBsYWJlbHM6IFtcInRyaWdnZXJcIiwgXCJmb3JtXCIsIFwicHVibGljXCJdLFxuICBtZXRhZGF0YToge1xuICAgIHRpdGxlOiBcIkZvcm0gdHJpZ2dlclwiLFxuICAgIGRlc2NyaXB0aW9uOiBcIlN0YXJ0cyB0aGUgd29ya2Zsb3cgd2hlbiBhIGdlbmVyYXRlZCBmb3JtIGlzIHN1Ym1pdHRlZC4gRmllbGQgZGVmaW5pdGlvbnMgZHJpdmUgdGhlIGZvcm0gc2NoZW1hLlwiLFxuICAgIHRyaWdnZXI6IHtcbiAgICAgIHR5cGU6IFwiZm9ybVwiLFxuICAgICAgZmllbGRzOiBbXSxcbiAgICB9LFxuICB9LFxufSlcbkBtb2RlbCgpXG5leHBvcnQgY2xhc3MgRm9ybVRyaWdnZXJOb2RlIGV4dGVuZHMgTW9kZWwge1xuICBAcmVxdWlyZWQoKVxuICBAdWllbGVtZW50KFwidGV4dGFyZWFcIiwgeyBsYWJlbDogXCJGb3JtIHN1Ym1pc3Npb25cIiwgcGxhY2Vob2xkZXI6IFwiRm9ybSBzdWJtaXNzaW9uIHBheWxvYWRcIiB9KVxuICBAb3V0cHV0KHsgaGFuZGxlOiBcInBheWxvYWRcIiB9KVxuICBwYXlsb2FkITogdW5rbm93bjtcbn1cbiJdfQ==
|
|
@@ -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=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFudWFsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2dyYXBoL25vZGVzL3RyaWdnZXJzL21hbnVhbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTs7Ozs7O0dBTUc7QUFDSCxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsU0FBUyxFQUFFLG9DQUErQjtBQUNuRCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSw4QkFBeUI7QUFFaEQsc0RBQXNEO0FBQ3RELGlDQUE0QjtBQW9CckIsSUFBTSxpQkFBaUIsR0FBdkIsTUFBTSxpQkFBa0IsU0FBUSxLQUFLO0NBSzNDLENBQUE7QUFEQztJQUhDLFFBQVEsRUFBRTtJQUNWLFNBQVMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsV0FBVyxFQUFFLHdCQUF3QixFQUFFLENBQUM7SUFDMUYsTUFBTSxDQUFDLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxDQUFDOztrREFDWjtBQUpQLGlCQUFpQjtJQWxCN0IsSUFBSSxDQUFDLHFCQUFxQixFQUFFO1FBQzNCLElBQUksRUFBRSxxQkFBcUI7UUFDM0IsUUFBUSxFQUFFLFNBQVM7UUFDbkIsS0FBSyxFQUFFLFNBQVM7UUFDaEIsSUFBSSxFQUFFLGVBQWU7UUFDckIsS0FBSyxFQUFFLEVBQUU7UUFDVCxNQUFNLEVBQUUsRUFBRTtRQUNWLE1BQU0sRUFBRSxDQUFDLFNBQVMsRUFBRSxRQUFRLEVBQUUsWUFBWSxDQUFDO1FBQzNDLFFBQVEsRUFBRTtZQUNSLEtBQUssRUFBRSxnQkFBZ0I7WUFDdkIsV0FBVyxFQUFFLDRHQUE0RztZQUN6SCxPQUFPLEVBQUU7Z0JBQ1AsSUFBSSxFQUFFLFFBQVE7Z0JBQ2QsV0FBVyxFQUFFLEVBQUU7YUFDaEI7U0FDRjtLQUNGLENBQUM7SUFDRCxLQUFLLEVBQUU7R0FDSyxpQkFBaUIsQ0FLN0IiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBtb2R1bGUgdWktZGVjb3JhdG9ycy9ncmFwaC9ub2Rlcy90cmlnZ2Vycy9tYW51YWxcbiAqIEBzdW1tYXJ5IE1hbnVhbCB0cmlnZ2VyIG5vZGUgZGVjbGFyYXRpb24gKERFQ0FGLTMyIMKnMjIuMi4xKS5cbiAqIEBkZXNjcmlwdGlvbiBNYW51YWwgdHJpZ2dlciDigJQgdXNlciBjbGlja3MgUnVuOyBpbnB1dCBmb3JtIGdlbmVyYXRlZCBmcm9tXG4gKiBgaW5wdXRTY2hlbWFgLiBUcmlnZ2VycyBhcmUgbWV0YWRhdGEtb25seSBlbnRyeXBvaW50czogdGhleSBkZWZpbmUgaG93IGFcbiAqIHdvcmtmbG93IHN0YXJ0cyBhbmQgcHJvZHVjZSBhIHRyaWdnZXIgcGF5bG9hZCBvbiB0aGVpciBgQG91dHB1dGAgcG9ydHMuXG4gKi9cbmltcG9ydCB7IE1vZGVsLCBtb2RlbCwgcmVxdWlyZWQgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyB1aWVsZW1lbnQgfSBmcm9tIFwiLi4vLi4vLi4vdWkvZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgbm9kZSwgb3V0cHV0IH0gZnJvbSBcIi4uLy4uL2RlY29yYXRvcnNcIjtcblxuLy8gRW5zdXJlIGNhdGVnb3J5IHN0eWxlcyBhcmUgcmVnaXN0ZXJlZCAoaWRlbXBvdGVudCkuXG5pbXBvcnQgXCIuLi9jYXRlZ29yeS1zdHlsZXNcIjtcblxuQG5vZGUoXCJjb3JlLnRyaWdnZXIubWFudWFsXCIsIHtcbiAga2luZDogXCJjb3JlLnRyaWdnZXIubWFudWFsXCIsXG4gIGNhdGVnb3J5OiBcIlRyaWdnZXJcIixcbiAgY29sb3I6IFwiIzNiODJmNlwiLFxuICBpY29uOiBcInRpLWhhbmQtY2xpY2tcIixcbiAgd2lkdGg6IDk2LFxuICBoZWlnaHQ6IDk2LFxuICBsYWJlbHM6IFtcInRyaWdnZXJcIiwgXCJtYW51YWxcIiwgXCJlbnRyeXBvaW50XCJdLFxuICBtZXRhZGF0YToge1xuICAgIHRpdGxlOiBcIk1hbnVhbCB0cmlnZ2VyXCIsXG4gICAgZGVzY3JpcHRpb246IFwiU3RhcnRzIHRoZSB3b3JrZmxvdyB3aGVuIHRoZSB1c2VyIGNsaWNrcyBSdW4uIFRoZSBpbnB1dCBmb3JtIGlzIGdlbmVyYXRlZCBmcm9tIHRoZSB0cmlnZ2VyJ3MgaW5wdXQgc2NoZW1hLlwiLFxuICAgIHRyaWdnZXI6IHtcbiAgICAgIHR5cGU6IFwibWFudWFsXCIsXG4gICAgICBpbnB1dFNjaGVtYToge30sXG4gICAgfSxcbiAgfSxcbn0pXG5AbW9kZWwoKVxuZXhwb3J0IGNsYXNzIE1hbnVhbFRyaWdnZXJOb2RlIGV4dGVuZHMgTW9kZWwge1xuICBAcmVxdWlyZWQoKVxuICBAdWllbGVtZW50KFwidGV4dGFyZWFcIiwgeyBsYWJlbDogXCJUcmlnZ2VyIHBheWxvYWRcIiwgcGxhY2Vob2xkZXI6IFwiTWFudWFsIHRyaWdnZXIgcGF5bG9hZFwiIH0pXG4gIEBvdXRwdXQoeyBoYW5kbGU6IFwicGF5bG9hZFwiIH0pXG4gIHBheWxvYWQhOiB1bmtub3duO1xufVxuIl19
|
|
@@ -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=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZWR1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZ3JhcGgvbm9kZXMvdHJpZ2dlcnMvc2NoZWR1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUE7Ozs7O0dBS0c7QUFDSCxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsU0FBUyxFQUFFLG9DQUErQjtBQUNuRCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSw4QkFBeUI7QUFFaEQsc0RBQXNEO0FBQ3RELGlDQUE0QjtBQXFCckIsSUFBTSxtQkFBbUIsR0FBekIsTUFBTSxtQkFBb0IsU0FBUSxLQUFLO0NBSzdDLENBQUE7QUFEQztJQUhDLFFBQVEsRUFBRTtJQUNWLFNBQVMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLCtCQUErQixFQUFFLENBQUM7SUFDbkcsTUFBTSxDQUFDLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxDQUFDOztvREFDWjtBQUpQLG1CQUFtQjtJQW5CL0IsSUFBSSxDQUFDLHVCQUF1QixFQUFFO1FBQzdCLElBQUksRUFBRSx1QkFBdUI7UUFDN0IsUUFBUSxFQUFFLFNBQVM7UUFDbkIsS0FBSyxFQUFFLFNBQVM7UUFDaEIsSUFBSSxFQUFFLGtCQUFrQjtRQUN4QixLQUFLLEVBQUUsRUFBRTtRQUNULE1BQU0sRUFBRSxFQUFFO1FBQ1YsTUFBTSxFQUFFLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLENBQUM7UUFDdkMsUUFBUSxFQUFFO1lBQ1IsS0FBSyxFQUFFLGtCQUFrQjtZQUN6QixXQUFXLEVBQUUsb0VBQW9FO1lBQ2pGLE9BQU8sRUFBRTtnQkFDUCxJQUFJLEVBQUUsVUFBVTtnQkFDaEIsUUFBUSxFQUFFLFdBQVc7Z0JBQ3JCLFFBQVEsRUFBRSxLQUFLO2FBQ2hCO1NBQ0Y7S0FDRixDQUFDO0lBQ0QsS0FBSyxFQUFFO0dBQ0ssbUJBQW1CLENBSy9CIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIHVpLWRlY29yYXRvcnMvZ3JhcGgvbm9kZXMvdHJpZ2dlcnMvc2NoZWR1bGVcbiAqIEBzdW1tYXJ5IFNjaGVkdWxlIHRyaWdnZXIgbm9kZSBkZWNsYXJhdGlvbiAoREVDQUYtMzIgwqcyMi4yLjEpLlxuICogQGRlc2NyaXB0aW9uIFNjaGVkdWxlIHRyaWdnZXIg4oCUIGNyb24tbGlrZSBzY2hlZHVsZTsgdGltZXpvbmUgKyBwYXlsb2FkXG4gKiBjb25maWcuXG4gKi9cbmltcG9ydCB7IE1vZGVsLCBtb2RlbCwgcmVxdWlyZWQgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyB1aWVsZW1lbnQgfSBmcm9tIFwiLi4vLi4vLi4vdWkvZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgbm9kZSwgb3V0cHV0IH0gZnJvbSBcIi4uLy4uL2RlY29yYXRvcnNcIjtcblxuLy8gRW5zdXJlIGNhdGVnb3J5IHN0eWxlcyBhcmUgcmVnaXN0ZXJlZCAoaWRlbXBvdGVudCkuXG5pbXBvcnQgXCIuLi9jYXRlZ29yeS1zdHlsZXNcIjtcblxuQG5vZGUoXCJjb3JlLnRyaWdnZXIuc2NoZWR1bGVcIiwge1xuICBraW5kOiBcImNvcmUudHJpZ2dlci5zY2hlZHVsZVwiLFxuICBjYXRlZ29yeTogXCJUcmlnZ2VyXCIsXG4gIGNvbG9yOiBcIiM2MzY2ZjFcIixcbiAgaWNvbjogXCJ0aS1jYWxlbmRhci10aW1lXCIsXG4gIHdpZHRoOiA5NixcbiAgaGVpZ2h0OiA5NixcbiAgbGFiZWxzOiBbXCJ0cmlnZ2VyXCIsIFwic2NoZWR1bGVcIiwgXCJjcm9uXCJdLFxuICBtZXRhZGF0YToge1xuICAgIHRpdGxlOiBcIlNjaGVkdWxlIHRyaWdnZXJcIixcbiAgICBkZXNjcmlwdGlvbjogXCJTdGFydHMgdGhlIHdvcmtmbG93IG9uIGEgY3Jvbi1saWtlIHNjaGVkdWxlIHdpdGggdGltZXpvbmUgc3VwcG9ydC5cIixcbiAgICB0cmlnZ2VyOiB7XG4gICAgICB0eXBlOiBcInNjaGVkdWxlXCIsXG4gICAgICBzY2hlZHVsZTogXCIwICogKiAqICpcIixcbiAgICAgIHRpbWV6b25lOiBcIlVUQ1wiLFxuICAgIH0sXG4gIH0sXG59KVxuQG1vZGVsKClcbmV4cG9ydCBjbGFzcyBTY2hlZHVsZVRyaWdnZXJOb2RlIGV4dGVuZHMgTW9kZWwge1xuICBAcmVxdWlyZWQoKVxuICBAdWllbGVtZW50KFwidGV4dGFyZWFcIiwgeyBsYWJlbDogXCJTY2hlZHVsZWQgcGF5bG9hZFwiLCBwbGFjZWhvbGRlcjogXCJQYXlsb2FkIGZvciB0aGUgc2NoZWR1bGVkIHJ1blwiIH0pXG4gIEBvdXRwdXQoeyBoYW5kbGU6IFwicGF5bG9hZFwiIH0pXG4gIHBheWxvYWQhOiB1bmtub3duO1xufVxuIl19
|
|
@@ -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=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2ViaG9vay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9ncmFwaC9ub2Rlcy90cmlnZ2Vycy93ZWJob29rLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBOzs7OztHQUtHO0FBQ0gsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxvQ0FBK0I7QUFDbkQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsOEJBQXlCO0FBRWhELHNEQUFzRDtBQUN0RCxpQ0FBNEI7QUF1QnJCLElBQU0sa0JBQWtCLEdBQXhCLE1BQU0sa0JBQW1CLFNBQVEsS0FBSztDQUs1QyxDQUFBO0FBREM7SUFIQyxRQUFRLEVBQUU7SUFDVixTQUFTLENBQUMsVUFBVSxFQUFFLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLFdBQVcsRUFBRSxzQkFBc0IsRUFBRSxDQUFDO0lBQ3hGLE1BQU0sQ0FBQyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsQ0FBQzs7bURBQ1o7QUFKUCxrQkFBa0I7SUFyQjlCLElBQUksQ0FBQyxzQkFBc0IsRUFBRTtRQUM1QixJQUFJLEVBQUUsc0JBQXNCO1FBQzVCLFFBQVEsRUFBRSxTQUFTO1FBQ25CLEtBQUssRUFBRSxTQUFTO1FBQ2hCLElBQUksRUFBRSxZQUFZO1FBQ2xCLEtBQUssRUFBRSxFQUFFO1FBQ1QsTUFBTSxFQUFFLEVBQUU7UUFDVixNQUFNLEVBQUUsQ0FBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sQ0FBQztRQUN0QyxRQUFRLEVBQUU7WUFDUixLQUFLLEVBQUUsaUJBQWlCO1lBQ3hCLFdBQVcsRUFBRSx5RkFBeUY7WUFDdEcsT0FBTyxFQUFFO2dCQUNQLElBQUksRUFBRSxTQUFTO2dCQUNmLElBQUksRUFBRSxVQUFVO2dCQUNoQixNQUFNLEVBQUUsTUFBTTtnQkFDZCxJQUFJLEVBQUUsTUFBTTtnQkFDWixZQUFZLEVBQUUsWUFBWTthQUMzQjtTQUNGO0tBQ0YsQ0FBQztJQUNELEtBQUssRUFBRTtHQUNLLGtCQUFrQixDQUs5QiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQG1vZHVsZSB1aS1kZWNvcmF0b3JzL2dyYXBoL25vZGVzL3RyaWdnZXJzL3dlYmhvb2tcbiAqIEBzdW1tYXJ5IFdlYmhvb2sgdHJpZ2dlciBub2RlIGRlY2xhcmF0aW9uIChERUNBRi0zMiDCpzIyLjIuMSkuXG4gKiBAZGVzY3JpcHRpb24gV2ViaG9vayB0cmlnZ2VyIOKAlCBIVFRQIHJlcXVlc3QgcmVjZWl2ZWQ7IHBhdGgvbWV0aG9kL2F1dGgvXG4gKiByZXNwb25zZU1vZGUgY29uZmlnLlxuICovXG5pbXBvcnQgeyBNb2RlbCwgbW9kZWwsIHJlcXVpcmVkIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHsgdWllbGVtZW50IH0gZnJvbSBcIi4uLy4uLy4uL3VpL2RlY29yYXRvcnNcIjtcbmltcG9ydCB7IG5vZGUsIG91dHB1dCB9IGZyb20gXCIuLi8uLi9kZWNvcmF0b3JzXCI7XG5cbi8vIEVuc3VyZSBjYXRlZ29yeSBzdHlsZXMgYXJlIHJlZ2lzdGVyZWQgKGlkZW1wb3RlbnQpLlxuaW1wb3J0IFwiLi4vY2F0ZWdvcnktc3R5bGVzXCI7XG5cbkBub2RlKFwiY29yZS50cmlnZ2VyLndlYmhvb2tcIiwge1xuICBraW5kOiBcImNvcmUudHJpZ2dlci53ZWJob29rXCIsXG4gIGNhdGVnb3J5OiBcIlRyaWdnZXJcIixcbiAgY29sb3I6IFwiIzBlYTVlOVwiLFxuICBpY29uOiBcInRpLXdlYmhvb2tcIixcbiAgd2lkdGg6IDk2LFxuICBoZWlnaHQ6IDk2LFxuICBsYWJlbHM6IFtcInRyaWdnZXJcIiwgXCJ3ZWJob29rXCIsIFwiaHR0cFwiXSxcbiAgbWV0YWRhdGE6IHtcbiAgICB0aXRsZTogXCJXZWJob29rIHRyaWdnZXJcIixcbiAgICBkZXNjcmlwdGlvbjogXCJTdGFydHMgdGhlIHdvcmtmbG93IHdoZW4gYW4gSFRUUCByZXF1ZXN0IGlzIHJlY2VpdmVkIG9uIHRoZSBjb25maWd1cmVkIHBhdGggYW5kIG1ldGhvZC5cIixcbiAgICB0cmlnZ2VyOiB7XG4gICAgICB0eXBlOiBcIndlYmhvb2tcIixcbiAgICAgIHBhdGg6IFwiL3dlYmhvb2tcIixcbiAgICAgIG1ldGhvZDogXCJQT1NUXCIsXG4gICAgICBhdXRoOiBcIm5vbmVcIixcbiAgICAgIHJlc3BvbnNlTW9kZTogXCJvblJlY2VpdmVkXCIsXG4gICAgfSxcbiAgfSxcbn0pXG5AbW9kZWwoKVxuZXhwb3J0IGNsYXNzIFdlYmhvb2tUcmlnZ2VyTm9kZSBleHRlbmRzIE1vZGVsIHtcbiAgQHJlcXVpcmVkKClcbiAgQHVpZWxlbWVudChcInRleHRhcmVhXCIsIHsgbGFiZWw6IFwiUmVxdWVzdCBwYXlsb2FkXCIsIHBsYWNlaG9sZGVyOiBcIldlYmhvb2sgcmVxdWVzdCBib2R5XCIgfSlcbiAgQG91dHB1dCh7IGhhbmRsZTogXCJwYXlsb2FkXCIgfSlcbiAgcGF5bG9hZCE6IHVua25vd247XG59XG4iXX0=
|
|
@@ -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=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9ncmFwaC9ub2Rlcy91dGlsaXR5L2NvZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtQkc7QUFDSCxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxvQ0FBK0I7QUFDM0QsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLDhCQUF5QjtBQUV2RCxzREFBc0Q7QUFDdEQsaUNBQTRCO0FBR3JCLElBQU0sZUFBZSxHQUFyQixNQUFNLGVBQWdCLFNBQVEsS0FBSztJQUFuQzs7UUFFTCxhQUFRLEdBQVcsWUFBWSxDQUFDO0lBVWxDLENBQUM7Q0FBQSxDQUFBO0FBVkM7SUFEQyxRQUFRLEVBQUU7O2lEQUNxQjtBQUtoQztJQUhDLFFBQVEsRUFBRTtJQUNWLFNBQVMsQ0FBQyxhQUFhLEVBQUUsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSwwQkFBMEIsRUFBRSxDQUFDO0lBQ3BGLEtBQUssQ0FBQyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsQ0FBQzs7NkNBQ1o7QUFJZDtJQUZDLE1BQU0sRUFBRTtJQUNSLEtBQUssQ0FBQyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsQ0FBQzs7NkNBQ1g7QUFYSixlQUFlO0lBRDNCLEtBQUssRUFBRTtHQUNLLGVBQWUsQ0FZM0I7O0FBaUJNLElBQU0sWUFBWSxHQUFsQixNQUFNLFlBQWEsU0FBUSxLQUFLO0NBUXRDLENBQUE7QUFMQztJQUZDLFFBQVEsRUFBRTtJQUNWLEtBQUssQ0FBQyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLGVBQWUsRUFBRSxDQUFDOzhCQUMzQyxlQUFlOzJDQUFDO0FBSXhCO0lBRkMsUUFBUSxFQUFFO0lBQ1YsTUFBTSxDQUFDLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxDQUFDOzs0Q0FDWjtBQVBOLFlBQVk7SUFmeEIsSUFBSSxDQUFDLGdCQUFnQixFQUFFO1FBQ3RCLElBQUksRUFBRSxnQkFBZ0I7UUFDdEIsUUFBUSxFQUFFLFNBQVM7UUFDbkIsS0FBSyxFQUFFLFNBQVM7UUFDaEIsSUFBSSxFQUFFLFNBQVM7UUFDZixLQUFLLEVBQUUsRUFBRTtRQUNULE1BQU0sRUFBRSxFQUFFO1FBQ1YsTUFBTSxFQUFFLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsV0FBVyxDQUFDO1FBQ2hELFFBQVEsRUFBRTtZQUNSLEtBQUssRUFBRSxNQUFNO1lBQ2IsV0FBVyxFQUFFLGdIQUFnSDtZQUM3SCxTQUFTLEVBQUUsSUFBSTtTQUNoQjtLQUNGLENBQUM7SUFDRCxLQUFLLEVBQUU7R0FDSyxZQUFZLENBUXhCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIHVpLWRlY29yYXRvcnMvZ3JhcGgvbm9kZXMvdXRpbGl0eS9jb2RlXG4gKiBAc3VtbWFyeSBDb2RlIHV0aWxpdHkgbm9kZSBkZWNsYXJhdGlvbiAoQUxGUkVELTUgwqc3LCBERUNBRi0zMiDCpzIyLjQpLlxuICogQGRlc2NyaXB0aW9uIENvZGUg4oCUIHNhbmRib3hlZCBKUy9UUyBjb2RlIGV4ZWN1dGlvbi4gVGhlIGVuZ2luZSdzXG4gKiBgQ29kZUdyYXBoTm9kZUV4ZWN1dG9yYCBkZWxlZ2F0ZXMgdG8gdGhlIHBsdWdnYWJsZSBgQ29kZVNhbmRib3hFdmFsdWF0b3JgLlxuICogVGhlIGRlZmF1bHQgYElzb2xhdGVkVm1Db2RlU2FuZGJveEV2YWx1YXRvcmAgKGJhY2tlZCBieSBgaXNvbGF0ZWQtdm1gKVxuICogZW5mb3JjZXMgdGhlIENvZGUgTm9kZSByZXN0cmljdGlvbnM6IG5vIGltcG9ydHMsIG5vIHJlcXVpcmVzLCBwdXJlXG4gKiBmdW5jdGlvbnMgb25seS4gVGhlIHNhbmRib3ggY29udGV4dCBleHBvc2VzIGAkaW5wdXRgLCBgJHZhcnNgLCBgJGl0ZW1gLFxuICogYCRpbmRleGAsIGAkbm9kZWAsIGFuZCBgJG91dHB1dGAgYXMgZGF0YSB2YXJpYWJsZXMuIFR5cGVTY3JpcHQgaXNcbiAqIHN1cHBvcnRlZCB2aWEgdHJhbnNwaWxhdGlvbi5cbiAqXG4gKiBUaGUgYEBpbnB1dGAgb24gYENvZGVGbG93Tm9kZS5pbnB1dGAgaXMgYSBzY2hlbWEgZ3JvdXAg4oCUIHRoZSBuZXN0ZWRcbiAqIG1vZGVsJ3MgYEBpbnB1dGAgcG9ydHMgYXJlIHNwbGljZWQgaW50byB0aGUgcGFyZW50IHVucHJlZml4ZWQuIGBjb2RlYCBoYXNcbiAqIGBAaW5wdXRgICsgYEB1aWVsZW1lbnQoXCJjb2RlLWVkaXRvclwiKWAsIHNvIGl0IGFwcGVhcnMgYXMgYSBwb3J0IEFORCBpbiB0aGVcbiAqIENSVUQgbW9kYWwgKHRoZSBvbmx5IHZpc2libGUgZmllbGQpLiBgZGF0YWAgaGFzIGBAaW5wdXRgICsgYEBoaWRkZW4oKWAgYnV0XG4gKiBubyBgQHVpZWxlbWVudGAsIHNvIGl0IGlzIGEgY2FudmFzLW9ubHkgcG9ydCAoZm9yIGVkZ2UgY29ubmVjdGlvbnMgZnJvbVxuICogd29ya2Zsb3cgaW5wdXQgYmFkZ2VzKSBidXQgbmV2ZXIgYXBwZWFycyBpbiB0aGUgQ1JVRCBtb2RhbC4gYGxhbmd1YWdlYCBoYXNcbiAqIG5vIGBAaW5wdXRgIGFuZCBubyBgQHVpZWxlbWVudGAsIHNvIGl0IGlzIG5laXRoZXIgYSBwb3J0IG5vciByZW5kZXJlZCDigJQgaXRcbiAqIGRlZmF1bHRzIHRvIGBcImphdmFzY3JpcHRcImAuXG4gKi9cbmltcG9ydCB7IE1vZGVsLCBtb2RlbCwgcmVxdWlyZWQgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBoaWRkZW4sIHVpZWxlbWVudCB9IGZyb20gXCIuLi8uLi8uLi91aS9kZWNvcmF0b3JzXCI7XG5pbXBvcnQgeyBpbnB1dCwgbm9kZSwgb3V0cHV0IH0gZnJvbSBcIi4uLy4uL2RlY29yYXRvcnNcIjtcblxuLy8gRW5zdXJlIGNhdGVnb3J5IHN0eWxlcyBhcmUgcmVnaXN0ZXJlZCAoaWRlbXBvdGVudCkuXG5pbXBvcnQgXCIuLi9jYXRlZ29yeS1zdHlsZXNcIjtcblxuQG1vZGVsKClcbmV4cG9ydCBjbGFzcyBDb2RlSW5wdXRTY2hlbWEgZXh0ZW5kcyBNb2RlbCB7XG4gIEByZXF1aXJlZCgpXG4gIGxhbmd1YWdlOiBzdHJpbmcgPSBcImphdmFzY3JpcHRcIjtcblxuICBAcmVxdWlyZWQoKVxuICBAdWllbGVtZW50KFwiY29kZS1lZGl0b3JcIiwgeyBsYWJlbDogXCJDb2RlXCIsIHBsYWNlaG9sZGVyOiBcIi8vIFVzZXItYXV0aG9yZWQgSlMgY29kZVwiIH0pXG4gIEBpbnB1dCh7IGhhbmRsZTogXCJjb2RlXCIgfSlcbiAgY29kZSE6IHN0cmluZztcblxuICBAaGlkZGVuKClcbiAgQGlucHV0KHsgaGFuZGxlOiBcImRhdGFcIiB9KVxuICBkYXRhPzogdW5rbm93bjtcbn1cblxuQG5vZGUoXCJjb3JlLmZsb3cuY29kZVwiLCB7XG4gIGtpbmQ6IFwiY29yZS5mbG93LmNvZGVcIixcbiAgY2F0ZWdvcnk6IFwiVXRpbGl0eVwiLFxuICBjb2xvcjogXCIjN2MzYWVkXCIsXG4gIGljb246IFwidGktY29kZVwiLFxuICB3aWR0aDogOTYsXG4gIGhlaWdodDogOTYsXG4gIGxhYmVsczogW1wiZmxvd1wiLCBcImNvZGVcIiwgXCJzYW5kYm94XCIsIFwidHJhbnNmb3JtXCJdLFxuICBtZXRhZGF0YToge1xuICAgIHRpdGxlOiBcIkNvZGVcIixcbiAgICBkZXNjcmlwdGlvbjogXCJSdW5zIHVzZXItYXV0aG9yZWQgSlMvVFMgaW4gYSByZXN0cmljdGVkIFZNIHNhbmRib3guIFN1cHBvcnRzIHBsYWNlaG9sZGVyIHN5bnRheCBmb3Igd29ya2Zsb3cgZGF0YSByZWZlcmVuY2VzLlwiLFxuICAgIHRpbWVvdXRNczogMTAwMCxcbiAgfSxcbn0pXG5AbW9kZWwoKVxuZXhwb3J0IGNsYXNzIENvZGVGbG93Tm9kZSBleHRlbmRzIE1vZGVsIHtcbiAgQHJlcXVpcmVkKClcbiAgQGlucHV0KHsgaGFuZGxlOiBcImlucHV0XCIsIG1vZGVsOiBDb2RlSW5wdXRTY2hlbWEgfSlcbiAgaW5wdXQhOiBDb2RlSW5wdXRTY2hlbWE7XG5cbiAgQHJlcXVpcmVkKClcbiAgQG91dHB1dCh7IGhhbmRsZTogXCJyZXN1bHRcIiB9KVxuICByZXN1bHQhOiB1bmtub3duO1xufVxuIl19
|
|
@@ -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=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsYXkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZ3JhcGgvbm9kZXMvdXRpbGl0eS9kZWxheS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTs7OztHQUlHO0FBQ0gsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxvQ0FBK0I7QUFDbkQsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLDhCQUF5QjtBQUV2RCxzREFBc0Q7QUFDdEQsaUNBQTRCO0FBaUJyQixJQUFNLGFBQWEsR0FBbkIsTUFBTSxhQUFjLFNBQVEsS0FBSztDQVV2QyxDQUFBO0FBTkM7SUFIQyxRQUFRLEVBQUU7SUFDVixTQUFTLENBQUMsVUFBVSxFQUFFLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsOEJBQThCLEVBQUUsQ0FBQztJQUM1RixLQUFLLENBQUMsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUM7OzRDQUNYO0FBS2hCO0lBSEMsUUFBUSxFQUFFO0lBQ1YsU0FBUyxDQUFDLE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLGlCQUFpQixFQUFFLENBQUM7SUFDN0UsTUFBTSxDQUFDLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDOzsrQ0FDVDtBQVRSLGFBQWE7SUFmekIsSUFBSSxDQUFDLGlCQUFpQixFQUFFO1FBQ3ZCLElBQUksRUFBRSxpQkFBaUI7UUFDdkIsUUFBUSxFQUFFLFNBQVM7UUFDbkIsS0FBSyxFQUFFLFNBQVM7UUFDaEIsSUFBSSxFQUFFLGlCQUFpQjtRQUN2QixLQUFLLEVBQUUsRUFBRTtRQUNULE1BQU0sRUFBRSxFQUFFO1FBQ1YsTUFBTSxFQUFFLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxNQUFNLENBQUM7UUFDakMsUUFBUSxFQUFFO1lBQ1IsS0FBSyxFQUFFLE9BQU87WUFDZCxXQUFXLEVBQUUsb0dBQW9HO1lBQ2pILFVBQVUsRUFBRSxJQUFJO1NBQ2pCO0tBQ0YsQ0FBQztJQUNELEtBQUssRUFBRTtHQUNLLGFBQWEsQ0FVekIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBtb2R1bGUgdWktZGVjb3JhdG9ycy9ncmFwaC9ub2Rlcy91dGlsaXR5L2RlbGF5XG4gKiBAc3VtbWFyeSBEZWxheSB1dGlsaXR5IG5vZGUgZGVjbGFyYXRpb24gKERFQ0FGLTMyIMKnMjIuMi4yKS5cbiAqIEBkZXNjcmlwdGlvbiBEZWxheSDigJQgcGF1c2VzIGV4ZWN1dGlvbiBmb3IgYSBjb25maWd1cmVkIGR1cmF0aW9uLlxuICovXG5pbXBvcnQgeyBNb2RlbCwgbW9kZWwsIHJlcXVpcmVkIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHsgdWllbGVtZW50IH0gZnJvbSBcIi4uLy4uLy4uL3VpL2RlY29yYXRvcnNcIjtcbmltcG9ydCB7IGlucHV0LCBub2RlLCBvdXRwdXQgfSBmcm9tIFwiLi4vLi4vZGVjb3JhdG9yc1wiO1xuXG4vLyBFbnN1cmUgY2F0ZWdvcnkgc3R5bGVzIGFyZSByZWdpc3RlcmVkIChpZGVtcG90ZW50KS5cbmltcG9ydCBcIi4uL2NhdGVnb3J5LXN0eWxlc1wiO1xuXG5Abm9kZShcImNvcmUuZmxvdy5kZWxheVwiLCB7XG4gIGtpbmQ6IFwiY29yZS5mbG93LmRlbGF5XCIsXG4gIGNhdGVnb3J5OiBcIlV0aWxpdHlcIixcbiAgY29sb3I6IFwiI2EzYTNhM1wiLFxuICBpY29uOiBcInRpLWNsb2NrLWhvdXItNFwiLFxuICB3aWR0aDogOTYsXG4gIGhlaWdodDogOTYsXG4gIGxhYmVsczogW1wiZmxvd1wiLCBcImRlbGF5XCIsIFwid2FpdFwiXSxcbiAgbWV0YWRhdGE6IHtcbiAgICB0aXRsZTogXCJEZWxheVwiLFxuICAgIGRlc2NyaXB0aW9uOiBcIlBhdXNlcyBleGVjdXRpb24gZm9yIHRoZSBjb25maWd1cmVkIGR1cmF0aW9uIChpbiBtaWxsaXNlY29uZHMpLCB0aGVuIGZvcndhcmRzIHRoZSBpbnB1dCB1bmNoYW5nZWQuXCIsXG4gICAgZHVyYXRpb25NczogMTAwMCxcbiAgfSxcbn0pXG5AbW9kZWwoKVxuZXhwb3J0IGNsYXNzIERlbGF5Rmxvd05vZGUgZXh0ZW5kcyBNb2RlbCB7XG4gIEByZXF1aXJlZCgpXG4gIEB1aWVsZW1lbnQoXCJ0ZXh0YXJlYVwiLCB7IGxhYmVsOiBcIklucHV0IHZhbHVlXCIsIHBsYWNlaG9sZGVyOiBcIlZhbHVlIHRvIGZvcndhcmQgYWZ0ZXIgZGVsYXlcIiB9KVxuICBAaW5wdXQoeyBoYW5kbGU6IFwidmFsdWVcIiB9KVxuICB2YWx1ZSE6IHVua25vd247XG5cbiAgQHJlcXVpcmVkKClcbiAgQHVpZWxlbWVudChcImlucHV0XCIsIHsgbGFiZWw6IFwiT3V0cHV0IHZhbHVlXCIsIHBsYWNlaG9sZGVyOiBcIkZvcndhcmRlZCB2YWx1ZVwiIH0pXG4gIEBvdXRwdXQoeyBoYW5kbGU6IFwidmFsdWVcIiB9KVxuICB2YWx1ZU91dCE6IHVua25vd247XG59XG4iXX0=
|
|
@@ -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=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2dyYXBoL25vZGVzL3V0aWxpdHkvbG9nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBOzs7Ozs7R0FNRztBQUNILE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxTQUFTLEVBQUUsb0NBQStCO0FBQ25ELE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSw4QkFBeUI7QUFFdkQsc0RBQXNEO0FBQ3RELGlDQUE0QjtBQWdCckIsSUFBTSxXQUFXLEdBQWpCLE1BQU0sV0FBWSxTQUFRLEtBQUs7Q0FVckMsQ0FBQTtBQU5DO0lBSEMsUUFBUSxFQUFFO0lBQ1YsU0FBUyxDQUFDLFVBQVUsRUFBRSxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLGNBQWMsRUFBRSxDQUFDO0lBQzVFLEtBQUssQ0FBQyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQzs7MENBQ1g7QUFLaEI7SUFIQyxRQUFRLEVBQUU7SUFDVixTQUFTLENBQUMsT0FBTyxFQUFFLEVBQUUsS0FBSyxFQUFFLGNBQWMsRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQztJQUM3RSxNQUFNLENBQUMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLENBQUM7OzJDQUNaO0FBVE4sV0FBVztJQWR2QixJQUFJLENBQUMsZUFBZSxFQUFFO1FBQ3JCLElBQUksRUFBRSxlQUFlO1FBQ3JCLFFBQVEsRUFBRSxTQUFTO1FBQ25CLEtBQUssRUFBRSxTQUFTO1FBQ2hCLElBQUksRUFBRSxhQUFhO1FBQ25CLEtBQUssRUFBRSxFQUFFO1FBQ1QsTUFBTSxFQUFFLEVBQUU7UUFDVixNQUFNLEVBQUUsQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxTQUFTLENBQUM7UUFDM0MsUUFBUSxFQUFFO1lBQ1IsS0FBSyxFQUFFLEtBQUs7WUFDWixXQUFXLEVBQUUseUVBQXlFO1NBQ3ZGO0tBQ0YsQ0FBQztJQUNELEtBQUssRUFBRTtHQUNLLFdBQVcsQ0FVdkIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBtb2R1bGUgdWktZGVjb3JhdG9ycy9ncmFwaC9ub2Rlcy91dGlsaXR5L2xvZ1xuICogQHN1bW1hcnkgTG9nIHV0aWxpdHkgbm9kZSBkZWNsYXJhdGlvbiAoREVDQUYtMzIgwqcyMi4yLjIpLlxuICogQGRlc2NyaXB0aW9uIExvZyDigJQgbG9ncyB0aGUgaW5wdXQgdmFsdWUgYW5kIGZvcndhcmRzIGl0IHVuY2hhbmdlZCBvbiB0aGVcbiAqIGBsb2dnZWRgIG91dHB1dCBwb3J0LiBVc2VmdWwgZm9yIGRlYnVnZ2luZywgYXVkaXQgdHJhaWxzLCBhbmRcbiAqIGRpc2NhcmQvc2lkZS1lZmZlY3QgYnJhbmNoZXMgaW4gYSB3b3JrZmxvdy5cbiAqL1xuaW1wb3J0IHsgTW9kZWwsIG1vZGVsLCByZXF1aXJlZCB9IGZyb20gXCJAZGVjYWYtdHMvZGVjb3JhdG9yLXZhbGlkYXRpb25cIjtcbmltcG9ydCB7IHVpZWxlbWVudCB9IGZyb20gXCIuLi8uLi8uLi91aS9kZWNvcmF0b3JzXCI7XG5pbXBvcnQgeyBpbnB1dCwgbm9kZSwgb3V0cHV0IH0gZnJvbSBcIi4uLy4uL2RlY29yYXRvcnNcIjtcblxuLy8gRW5zdXJlIGNhdGVnb3J5IHN0eWxlcyBhcmUgcmVnaXN0ZXJlZCAoaWRlbXBvdGVudCkuXG5pbXBvcnQgXCIuLi9jYXRlZ29yeS1zdHlsZXNcIjtcblxuQG5vZGUoXCJjb3JlLmZsb3cubG9nXCIsIHtcbiAga2luZDogXCJjb3JlLmZsb3cubG9nXCIsXG4gIGNhdGVnb3J5OiBcIlV0aWxpdHlcIixcbiAgY29sb3I6IFwiIzYzNjZmMVwiLFxuICBpY29uOiBcInRpLXRlcm1pbmFsXCIsXG4gIHdpZHRoOiA5NixcbiAgaGVpZ2h0OiA5NixcbiAgbGFiZWxzOiBbXCJmbG93XCIsIFwibG9nXCIsIFwiZGVidWdcIiwgXCJ1dGlsaXR5XCJdLFxuICBtZXRhZGF0YToge1xuICAgIHRpdGxlOiBcIkxvZ1wiLFxuICAgIGRlc2NyaXB0aW9uOiBcIkxvZ3MgdGhlIGlucHV0IHZhbHVlIHRvIHRoZSBleGVjdXRpb24gbG9nZ2VyIGFuZCBmb3J3YXJkcyBpdCB1bmNoYW5nZWQuXCIsXG4gIH0sXG59KVxuQG1vZGVsKClcbmV4cG9ydCBjbGFzcyBMb2dGbG93Tm9kZSBleHRlbmRzIE1vZGVsIHtcbiAgQHJlcXVpcmVkKClcbiAgQHVpZWxlbWVudChcInRleHRhcmVhXCIsIHsgbGFiZWw6IFwiSW5wdXQgdmFsdWVcIiwgcGxhY2Vob2xkZXI6IFwiVmFsdWUgdG8gbG9nXCIgfSlcbiAgQGlucHV0KHsgaGFuZGxlOiBcInZhbHVlXCIgfSlcbiAgdmFsdWUhOiB1bmtub3duO1xuXG4gIEByZXF1aXJlZCgpXG4gIEB1aWVsZW1lbnQoXCJpbnB1dFwiLCB7IGxhYmVsOiBcIkxvZ2dlZCB2YWx1ZVwiLCBwbGFjZWhvbGRlcjogXCJGb3J3YXJkZWQgdmFsdWVcIiB9KVxuICBAb3V0cHV0KHsgaGFuZGxlOiBcImxvZ2dlZFwiIH0pXG4gIGxvZ2dlZCE6IHVua25vd247XG59XG4iXX0=
|
|
@@ -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=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2dyYXBoL25vZGVzL3V0aWxpdHkvbWFwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBOzs7O0dBSUc7QUFDSCxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsU0FBUyxFQUFFLG9DQUErQjtBQUNuRCxPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsOEJBQXlCO0FBRXZELHNEQUFzRDtBQUN0RCxpQ0FBNEI7QUFpQnJCLElBQU0sV0FBVyxHQUFqQixNQUFNLFdBQVksU0FBUSxLQUFLO0NBVXJDLENBQUE7QUFOQztJQUhDLFFBQVEsRUFBRTtJQUNWLFNBQVMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxLQUFLLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxvQkFBb0IsRUFBRSxDQUFDO0lBQ2xGLEtBQUssQ0FBQyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQzs7MENBQ1g7QUFLaEI7SUFIQyxRQUFRLEVBQUU7SUFDVixTQUFTLENBQUMsT0FBTyxFQUFFLEVBQUUsS0FBSyxFQUFFLG9CQUFvQixFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsQ0FBQztJQUNqRixNQUFNLENBQUMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLENBQUM7OzJDQUNaO0FBVE4sV0FBVztJQWZ2QixJQUFJLENBQUMsZUFBZSxFQUFFO1FBQ3JCLElBQUksRUFBRSxlQUFlO1FBQ3JCLFFBQVEsRUFBRSxTQUFTO1FBQ25CLEtBQUssRUFBRSxTQUFTO1FBQ2hCLElBQUksRUFBRSxzQkFBc0I7UUFDNUIsS0FBSyxFQUFFLEVBQUU7UUFDVCxNQUFNLEVBQUUsRUFBRTtRQUNWLE1BQU0sRUFBRSxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsV0FBVyxDQUFDO1FBQ3BDLFFBQVEsRUFBRTtZQUNSLEtBQUssRUFBRSxLQUFLO1lBQ1osV0FBVyxFQUFFLG9GQUFvRjtZQUNqRyxNQUFNLEVBQUUsRUFBRTtTQUNYO0tBQ0YsQ0FBQztJQUNELEtBQUssRUFBRTtHQUNLLFdBQVcsQ0FVdkIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBtb2R1bGUgdWktZGVjb3JhdG9ycy9ncmFwaC9ub2Rlcy91dGlsaXR5L21hcFxuICogQHN1bW1hcnkgTWFwIHV0aWxpdHkgbm9kZSBkZWNsYXJhdGlvbiAoREVDQUYtMzIgwqcyMi4yLjIpLlxuICogQGRlc2NyaXB0aW9uIE1hcCDigJQgdHJhbnNmb3JtcyB0aGUgY3VycmVudCBpbnB1dCBpbnRvIGEgbmV3IG91dHB1dCBvYmplY3QuXG4gKi9cbmltcG9ydCB7IE1vZGVsLCBtb2RlbCwgcmVxdWlyZWQgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyB1aWVsZW1lbnQgfSBmcm9tIFwiLi4vLi4vLi4vdWkvZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgaW5wdXQsIG5vZGUsIG91dHB1dCB9IGZyb20gXCIuLi8uLi9kZWNvcmF0b3JzXCI7XG5cbi8vIEVuc3VyZSBjYXRlZ29yeSBzdHlsZXMgYXJlIHJlZ2lzdGVyZWQgKGlkZW1wb3RlbnQpLlxuaW1wb3J0IFwiLi4vY2F0ZWdvcnktc3R5bGVzXCI7XG5cbkBub2RlKFwiY29yZS5mbG93Lm1hcFwiLCB7XG4gIGtpbmQ6IFwiY29yZS5mbG93Lm1hcFwiLFxuICBjYXRlZ29yeTogXCJVdGlsaXR5XCIsXG4gIGNvbG9yOiBcIiM4NGNjMTZcIixcbiAgaWNvbjogXCJ0aS1hcnJvd3MtcmlnaHQtbGVmdFwiLFxuICB3aWR0aDogOTYsXG4gIGhlaWdodDogOTYsXG4gIGxhYmVsczogW1wiZmxvd1wiLCBcIm1hcFwiLCBcInRyYW5zZm9ybVwiXSxcbiAgbWV0YWRhdGE6IHtcbiAgICB0aXRsZTogXCJNYXBcIixcbiAgICBkZXNjcmlwdGlvbjogXCJUcmFuc2Zvcm1zIHRoZSBjdXJyZW50IGlucHV0IGludG8gYSBuZXcgb3V0cHV0IG9iamVjdCB1c2luZyB0aGUgY29uZmlndXJlZCBtYXBwZXIuXCIsXG4gICAgbWFwcGVyOiB7fSxcbiAgfSxcbn0pXG5AbW9kZWwoKVxuZXhwb3J0IGNsYXNzIE1hcEZsb3dOb2RlIGV4dGVuZHMgTW9kZWwge1xuICBAcmVxdWlyZWQoKVxuICBAdWllbGVtZW50KFwidGV4dGFyZWFcIiwgeyBsYWJlbDogXCJJbnB1dCB2YWx1ZVwiLCBwbGFjZWhvbGRlcjogXCJWYWx1ZSB0byB0cmFuc2Zvcm1cIiB9KVxuICBAaW5wdXQoeyBoYW5kbGU6IFwidmFsdWVcIiB9KVxuICB2YWx1ZSE6IHVua25vd247XG5cbiAgQHJlcXVpcmVkKClcbiAgQHVpZWxlbWVudChcImlucHV0XCIsIHsgbGFiZWw6IFwiVHJhbnNmb3JtZWQgb3V0cHV0XCIsIHBsYWNlaG9sZGVyOiBcIk1hcHBlZCByZXN1bHRcIiB9KVxuICBAb3V0cHV0KHsgaGFuZGxlOiBcInJlc3VsdFwiIH0pXG4gIHJlc3VsdCE6IHVua25vd247XG59XG4iXX0=
|