@5minds/processcube_app_sdk 8.3.1 → 8.3.2-develop-ec3a92-mo76us9g
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.
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use server";import"./chunk-YEKQJ4YC.mjs";import{DataModels as C}from"@5minds/processcube_engine_client";import{DataModels as b}from"@5minds/processcube_engine_client";import{getToken as p}from"next-auth/jwt";import{ResponseCookies as k}from"next/dist/compiled/@edge-runtime/cookies/index.js";import{cookies as a,headers as y}from"next/headers.js";async function i(){let e=await p({req:{cookies:await a(),headers:await y()}});if(e?.expiresAt&&Date.now()>=e.expiresAt*1e3){let s=await fetch(`${process.env.NEXTAUTH_URL}/api/auth/session`,{method:"GET",headers:{"Content-Type":"application/json",cookie:(await a()).toString()}}),o=new k(s.headers);if(o.getAll().length){let d=!1;try{for(let c of o.getAll())(await a()).set(c.name,c.value,{...c})}catch{d=!0}if(e=await p({req:{cookies:d?o:await a(),headers:await y()}}),e?.error)throw e.error}}if(!e?.accessToken||!e?.sub)throw new Error("AccessToken or Sub could not be determined!");return{token:e?.accessToken,userId:e?.sub}}import{EngineClient as T}from"@5minds/processcube_engine_client";var h=process.env.PROCESSCUBE_ENGINE_URL??"http://localhost:10560",n=new T(h);async function r(){try{return i()}catch{return}}async function u(e){let t=await r();return(await n.processInstances.query({processInstanceId:e},{identity:t,includeXml:!0})).processInstances[0]}async function I(e,t={sortSettings:{sortBy:b.FlowNodeInstances.FlowNodeInstanceSortableColumns.createdAt,sortDir:"ASC"}}){return(await n.flowNodeInstances.query({processInstanceId:e},{...t,identity:t.identity??await r()})).flowNodeInstances}async function l(e){let t=await r();return(await n.flowNodeInstances.query({triggeredByFlowNodeInstance:e},{identity:t})).flowNodeInstances}async function f(e,t,s){let o=await r();await n.processInstances.retryProcessInstance(e,{flowNodeInstanceId:t,newStartToken:s,identity:o})}async function m(e){let t=await r();await n.processInstances.terminateProcessInstance(e,t)}async function w(...e){await n.manualTasks.finishManualTask(...e)}async function g(...e){await n.userTasks.finishUserTask(...e)}async function P(...e){await n.untypedTasks.finishTask(...e)}async function E(){try{return i()}catch{return}}var Q=async(e,t)=>{let s=await E();t==="bpmn:UserTask"?await g(e,{},s):t==="bpmn:ManualTask"?await w(e,s):t==="bpmn:Task"?await P(e,s):console.error(`[@5minds/processcube_app_sdk:handlePlay] Unsupported flow node type: ${t}`)},z=async e=>{await m(e)},J=async(e,t,s)=>{await f(e,t,s)},K=async e=>u(e),V=async e=>I(e,{sortSettings:{sortBy:C.FlowNodeInstances.FlowNodeInstanceSortableColumns.createdAt,sortDir:"DESC"}}),W=async e=>l(e);export{Q as finishTask,V as getFlowNodeInstances,K as getProcessInstance,W as getTriggeredFlowNodeInstances,J as retryProcess,z as terminateProcess};
|
package/build/client/index.mjs
CHANGED
|
@@ -6,13 +6,13 @@
|
|
|
6
6
|
`),this},this.appendIndent=function(){return t&&e.write(r.join(" ")),this},this.indent=function(){return r.push(""),this},this.unindent=function(){return r.pop(),this}}function fp(e){e=R({format:!1,preamble:!0},e||{});function t(r,n){var o=n||new eu,i=new tu(o,e.format);e.preamble&&i.append(Uc);var a=new ue,p=r.$model;if(a.getNamespaces().mapDefaultPrefixes(ru(p)),a.build(r).serializeTo(i),!n)return o.value}return{toXML:t}}function ru(e){let t=e.config&&e.config.nsMap||{},r={};for(let n in ai)r[n]=ai[n];for(let n in t){let o=t[n];r[o]=n}for(let n of e.getPackages())r[n.prefix]=n.uri;return r}function no(e,t){Ye.call(this,e,t)}no.prototype=Object.create(Ye.prototype);no.prototype.fromXML=function(e,t,r){qe(t)||(r=t,t="bpmn:Definitions");var n=new to(R({model:this,lax:!0},r)),o=n.handler(t);return n.fromXML(e,o)};no.prototype.toXML=function(e,t){var r=new fp(t);return new Promise(function(n,o){try{var i=r.toXML(e);return n({xml:i})}catch(a){return o(a)}})};var nu="BPMN20",ou="http://www.omg.org/spec/BPMN/20100524/MODEL",iu="bpmn",au=[],su=[{name:"Interface",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"operations",type:"Operation",isMany:!0},{name:"implementationRef",isAttr:!0,type:"String"}]},{name:"Operation",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"inMessageRef",type:"Message",isReference:!0},{name:"outMessageRef",type:"Message",isReference:!0},{name:"errorRef",type:"Error",isMany:!0,isReference:!0},{name:"implementationRef",isAttr:!0,type:"String"}]},{name:"EndPoint",superClass:["RootElement"]},{name:"Auditing",superClass:["BaseElement"]},{name:"GlobalTask",superClass:["CallableElement"],properties:[{name:"resources",type:"ResourceRole",isMany:!0}]},{name:"Monitoring",superClass:["BaseElement"]},{name:"Performer",superClass:["ResourceRole"]},{name:"Process",superClass:["FlowElementsContainer","CallableElement"],properties:[{name:"processType",type:"ProcessType",isAttr:!0},{name:"isClosed",isAttr:!0,type:"Boolean"},{name:"auditing",type:"Auditing"},{name:"monitoring",type:"Monitoring"},{name:"properties",type:"Property",isMany:!0},{name:"laneSets",isMany:!0,replaces:"FlowElementsContainer#laneSets",type:"LaneSet"},{name:"flowElements",isMany:!0,replaces:"FlowElementsContainer#flowElements",type:"FlowElement"},{name:"artifacts",type:"Artifact",isMany:!0},{name:"resources",type:"ResourceRole",isMany:!0},{name:"correlationSubscriptions",type:"CorrelationSubscription",isMany:!0},{name:"supports",type:"Process",isMany:!0,isReference:!0},{name:"definitionalCollaborationRef",type:"Collaboration",isAttr:!0,isReference:!0},{name:"isExecutable",isAttr:!0,type:"Boolean"}]},{name:"LaneSet",superClass:["BaseElement"],properties:[{name:"lanes",type:"Lane",isMany:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"Lane",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"partitionElementRef",type:"BaseElement",isAttr:!0,isReference:!0},{name:"partitionElement",type:"BaseElement"},{name:"flowNodeRef",type:"FlowNode",isMany:!0,isReference:!0},{name:"childLaneSet",type:"LaneSet",xml:{serialize:"xsi:type"}}]},{name:"GlobalManualTask",superClass:["GlobalTask"]},{name:"ManualTask",superClass:["Task"]},{name:"UserTask",superClass:["Task"],properties:[{name:"renderings",type:"Rendering",isMany:!0},{name:"implementation",isAttr:!0,type:"String"}]},{name:"Rendering",superClass:["BaseElement"]},{name:"HumanPerformer",superClass:["Performer"]},{name:"PotentialOwner",superClass:["HumanPerformer"]},{name:"GlobalUserTask",superClass:["GlobalTask"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"renderings",type:"Rendering",isMany:!0}]},{name:"Gateway",isAbstract:!0,superClass:["FlowNode"],properties:[{name:"gatewayDirection",type:"GatewayDirection",default:"Unspecified",isAttr:!0}]},{name:"EventBasedGateway",superClass:["Gateway"],properties:[{name:"instantiate",default:!1,isAttr:!0,type:"Boolean"},{name:"eventGatewayType",type:"EventBasedGatewayType",isAttr:!0,default:"Exclusive"}]},{name:"ComplexGateway",superClass:["Gateway"],properties:[{name:"activationCondition",type:"Expression",xml:{serialize:"xsi:type"}},{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0}]},{name:"ExclusiveGateway",superClass:["Gateway"],properties:[{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0}]},{name:"InclusiveGateway",superClass:["Gateway"],properties:[{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0}]},{name:"ParallelGateway",superClass:["Gateway"]},{name:"RootElement",isAbstract:!0,superClass:["BaseElement"]},{name:"Relationship",superClass:["BaseElement"],properties:[{name:"type",isAttr:!0,type:"String"},{name:"direction",type:"RelationshipDirection",isAttr:!0},{name:"source",isMany:!0,isReference:!0,type:"Element"},{name:"target",isMany:!0,isReference:!0,type:"Element"}]},{name:"BaseElement",isAbstract:!0,properties:[{name:"id",isAttr:!0,type:"String",isId:!0},{name:"documentation",type:"Documentation",isMany:!0},{name:"extensionDefinitions",type:"ExtensionDefinition",isMany:!0,isReference:!0},{name:"extensionElements",type:"ExtensionElements"}]},{name:"Extension",properties:[{name:"mustUnderstand",default:!1,isAttr:!0,type:"Boolean"},{name:"definition",type:"ExtensionDefinition",isAttr:!0,isReference:!0}]},{name:"ExtensionDefinition",properties:[{name:"name",isAttr:!0,type:"String"},{name:"extensionAttributeDefinitions",type:"ExtensionAttributeDefinition",isMany:!0}]},{name:"ExtensionAttributeDefinition",properties:[{name:"name",isAttr:!0,type:"String"},{name:"type",isAttr:!0,type:"String"},{name:"isReference",default:!1,isAttr:!0,type:"Boolean"},{name:"extensionDefinition",type:"ExtensionDefinition",isAttr:!0,isReference:!0}]},{name:"ExtensionElements",properties:[{name:"valueRef",isAttr:!0,isReference:!0,type:"Element"},{name:"values",type:"Element",isMany:!0},{name:"extensionAttributeDefinition",type:"ExtensionAttributeDefinition",isAttr:!0,isReference:!0}]},{name:"Documentation",superClass:["BaseElement"],properties:[{name:"text",type:"String",isBody:!0},{name:"textFormat",default:"text/plain",isAttr:!0,type:"String"}]},{name:"Event",isAbstract:!0,superClass:["FlowNode","InteractionNode"],properties:[{name:"properties",type:"Property",isMany:!0}]},{name:"IntermediateCatchEvent",superClass:["CatchEvent"]},{name:"IntermediateThrowEvent",superClass:["ThrowEvent"]},{name:"EndEvent",superClass:["ThrowEvent"]},{name:"StartEvent",superClass:["CatchEvent"],properties:[{name:"isInterrupting",default:!0,isAttr:!0,type:"Boolean"}]},{name:"ThrowEvent",isAbstract:!0,superClass:["Event"],properties:[{name:"dataInputs",type:"DataInput",isMany:!0},{name:"dataInputAssociations",type:"DataInputAssociation",isMany:!0},{name:"inputSet",type:"InputSet"},{name:"eventDefinitions",type:"EventDefinition",isMany:!0},{name:"eventDefinitionRef",type:"EventDefinition",isMany:!0,isReference:!0}]},{name:"CatchEvent",isAbstract:!0,superClass:["Event"],properties:[{name:"parallelMultiple",isAttr:!0,type:"Boolean",default:!1},{name:"dataOutputs",type:"DataOutput",isMany:!0},{name:"dataOutputAssociations",type:"DataOutputAssociation",isMany:!0},{name:"outputSet",type:"OutputSet"},{name:"eventDefinitions",type:"EventDefinition",isMany:!0},{name:"eventDefinitionRef",type:"EventDefinition",isMany:!0,isReference:!0}]},{name:"BoundaryEvent",superClass:["CatchEvent"],properties:[{name:"cancelActivity",default:!0,isAttr:!0,type:"Boolean"},{name:"attachedToRef",type:"Activity",isAttr:!0,isReference:!0}]},{name:"EventDefinition",isAbstract:!0,superClass:["RootElement"]},{name:"CancelEventDefinition",superClass:["EventDefinition"]},{name:"ErrorEventDefinition",superClass:["EventDefinition"],properties:[{name:"errorRef",type:"Error",isAttr:!0,isReference:!0}]},{name:"TerminateEventDefinition",superClass:["EventDefinition"]},{name:"EscalationEventDefinition",superClass:["EventDefinition"],properties:[{name:"escalationRef",type:"Escalation",isAttr:!0,isReference:!0}]},{name:"Escalation",properties:[{name:"structureRef",type:"ItemDefinition",isAttr:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"},{name:"escalationCode",isAttr:!0,type:"String"}],superClass:["RootElement"]},{name:"CompensateEventDefinition",superClass:["EventDefinition"],properties:[{name:"waitForCompletion",isAttr:!0,type:"Boolean",default:!0},{name:"activityRef",type:"Activity",isAttr:!0,isReference:!0}]},{name:"TimerEventDefinition",superClass:["EventDefinition"],properties:[{name:"timeDate",type:"Expression",xml:{serialize:"xsi:type"}},{name:"timeCycle",type:"Expression",xml:{serialize:"xsi:type"}},{name:"timeDuration",type:"Expression",xml:{serialize:"xsi:type"}}]},{name:"LinkEventDefinition",superClass:["EventDefinition"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"target",type:"LinkEventDefinition",isReference:!0},{name:"source",type:"LinkEventDefinition",isMany:!0,isReference:!0}]},{name:"MessageEventDefinition",superClass:["EventDefinition"],properties:[{name:"messageRef",type:"Message",isAttr:!0,isReference:!0},{name:"operationRef",type:"Operation",isReference:!0}]},{name:"ConditionalEventDefinition",superClass:["EventDefinition"],properties:[{name:"condition",type:"Expression",xml:{serialize:"xsi:type"}}]},{name:"SignalEventDefinition",superClass:["EventDefinition"],properties:[{name:"signalRef",type:"Signal",isAttr:!0,isReference:!0}]},{name:"Signal",superClass:["RootElement"],properties:[{name:"structureRef",type:"ItemDefinition",isAttr:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"ImplicitThrowEvent",superClass:["ThrowEvent"]},{name:"DataState",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"}]},{name:"ItemAwareElement",superClass:["BaseElement"],properties:[{name:"itemSubjectRef",type:"ItemDefinition",isAttr:!0,isReference:!0},{name:"dataState",type:"DataState"}]},{name:"DataAssociation",superClass:["BaseElement"],properties:[{name:"sourceRef",type:"ItemAwareElement",isMany:!0,isReference:!0},{name:"targetRef",type:"ItemAwareElement",isReference:!0},{name:"transformation",type:"FormalExpression",xml:{serialize:"property"}},{name:"assignment",type:"Assignment",isMany:!0}]},{name:"DataInput",superClass:["ItemAwareElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"isCollection",default:!1,isAttr:!0,type:"Boolean"},{name:"inputSetRef",type:"InputSet",isMany:!0,isVirtual:!0,isReference:!0},{name:"inputSetWithOptional",type:"InputSet",isMany:!0,isVirtual:!0,isReference:!0},{name:"inputSetWithWhileExecuting",type:"InputSet",isMany:!0,isVirtual:!0,isReference:!0}]},{name:"DataOutput",superClass:["ItemAwareElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"isCollection",default:!1,isAttr:!0,type:"Boolean"},{name:"outputSetRef",type:"OutputSet",isMany:!0,isVirtual:!0,isReference:!0},{name:"outputSetWithOptional",type:"OutputSet",isMany:!0,isVirtual:!0,isReference:!0},{name:"outputSetWithWhileExecuting",type:"OutputSet",isMany:!0,isVirtual:!0,isReference:!0}]},{name:"InputSet",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"dataInputRefs",type:"DataInput",isMany:!0,isReference:!0},{name:"optionalInputRefs",type:"DataInput",isMany:!0,isReference:!0},{name:"whileExecutingInputRefs",type:"DataInput",isMany:!0,isReference:!0},{name:"outputSetRefs",type:"OutputSet",isMany:!0,isReference:!0}]},{name:"OutputSet",superClass:["BaseElement"],properties:[{name:"dataOutputRefs",type:"DataOutput",isMany:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"},{name:"inputSetRefs",type:"InputSet",isMany:!0,isReference:!0},{name:"optionalOutputRefs",type:"DataOutput",isMany:!0,isReference:!0},{name:"whileExecutingOutputRefs",type:"DataOutput",isMany:!0,isReference:!0}]},{name:"Property",superClass:["ItemAwareElement"],properties:[{name:"name",isAttr:!0,type:"String"}]},{name:"DataInputAssociation",superClass:["DataAssociation"]},{name:"DataOutputAssociation",superClass:["DataAssociation"]},{name:"InputOutputSpecification",superClass:["BaseElement"],properties:[{name:"dataInputs",type:"DataInput",isMany:!0},{name:"dataOutputs",type:"DataOutput",isMany:!0},{name:"inputSets",type:"InputSet",isMany:!0},{name:"outputSets",type:"OutputSet",isMany:!0}]},{name:"DataObject",superClass:["FlowElement","ItemAwareElement"],properties:[{name:"isCollection",default:!1,isAttr:!0,type:"Boolean"}]},{name:"InputOutputBinding",properties:[{name:"inputDataRef",type:"InputSet",isAttr:!0,isReference:!0},{name:"outputDataRef",type:"OutputSet",isAttr:!0,isReference:!0},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0}]},{name:"Assignment",superClass:["BaseElement"],properties:[{name:"from",type:"Expression",xml:{serialize:"xsi:type"}},{name:"to",type:"Expression",xml:{serialize:"xsi:type"}}]},{name:"DataStore",superClass:["RootElement","ItemAwareElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"capacity",isAttr:!0,type:"Integer"},{name:"isUnlimited",default:!0,isAttr:!0,type:"Boolean"}]},{name:"DataStoreReference",superClass:["ItemAwareElement","FlowElement"],properties:[{name:"dataStoreRef",type:"DataStore",isAttr:!0,isReference:!0}]},{name:"DataObjectReference",superClass:["ItemAwareElement","FlowElement"],properties:[{name:"dataObjectRef",type:"DataObject",isAttr:!0,isReference:!0}]},{name:"ConversationLink",superClass:["BaseElement"],properties:[{name:"sourceRef",type:"InteractionNode",isAttr:!0,isReference:!0},{name:"targetRef",type:"InteractionNode",isAttr:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"ConversationAssociation",superClass:["BaseElement"],properties:[{name:"innerConversationNodeRef",type:"ConversationNode",isAttr:!0,isReference:!0},{name:"outerConversationNodeRef",type:"ConversationNode",isAttr:!0,isReference:!0}]},{name:"CallConversation",superClass:["ConversationNode"],properties:[{name:"calledCollaborationRef",type:"Collaboration",isAttr:!0,isReference:!0},{name:"participantAssociations",type:"ParticipantAssociation",isMany:!0}]},{name:"Conversation",superClass:["ConversationNode"]},{name:"SubConversation",superClass:["ConversationNode"],properties:[{name:"conversationNodes",type:"ConversationNode",isMany:!0}]},{name:"ConversationNode",isAbstract:!0,superClass:["InteractionNode","BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"participantRef",type:"Participant",isMany:!0,isReference:!0},{name:"messageFlowRefs",type:"MessageFlow",isMany:!0,isReference:!0},{name:"correlationKeys",type:"CorrelationKey",isMany:!0}]},{name:"GlobalConversation",superClass:["Collaboration"]},{name:"PartnerEntity",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"participantRef",type:"Participant",isMany:!0,isReference:!0}]},{name:"PartnerRole",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"participantRef",type:"Participant",isMany:!0,isReference:!0}]},{name:"CorrelationProperty",superClass:["RootElement"],properties:[{name:"correlationPropertyRetrievalExpression",type:"CorrelationPropertyRetrievalExpression",isMany:!0},{name:"name",isAttr:!0,type:"String"},{name:"type",type:"ItemDefinition",isAttr:!0,isReference:!0}]},{name:"Error",superClass:["RootElement"],properties:[{name:"structureRef",type:"ItemDefinition",isAttr:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"},{name:"errorCode",isAttr:!0,type:"String"}]},{name:"CorrelationKey",superClass:["BaseElement"],properties:[{name:"correlationPropertyRef",type:"CorrelationProperty",isMany:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"Expression",superClass:["BaseElement"],isAbstract:!1,properties:[{name:"body",isBody:!0,type:"String"}]},{name:"FormalExpression",superClass:["Expression"],properties:[{name:"language",isAttr:!0,type:"String"},{name:"evaluatesToTypeRef",type:"ItemDefinition",isAttr:!0,isReference:!0}]},{name:"Message",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"itemRef",type:"ItemDefinition",isAttr:!0,isReference:!0}]},{name:"ItemDefinition",superClass:["RootElement"],properties:[{name:"itemKind",type:"ItemKind",isAttr:!0},{name:"structureRef",isAttr:!0,type:"String"},{name:"isCollection",default:!1,isAttr:!0,type:"Boolean"},{name:"import",type:"Import",isAttr:!0,isReference:!0}]},{name:"FlowElement",isAbstract:!0,superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"auditing",type:"Auditing"},{name:"monitoring",type:"Monitoring"},{name:"categoryValueRef",type:"CategoryValue",isMany:!0,isReference:!0}]},{name:"SequenceFlow",superClass:["FlowElement"],properties:[{name:"isImmediate",isAttr:!0,type:"Boolean"},{name:"conditionExpression",type:"Expression",xml:{serialize:"xsi:type"}},{name:"sourceRef",type:"FlowNode",isAttr:!0,isReference:!0},{name:"targetRef",type:"FlowNode",isAttr:!0,isReference:!0}]},{name:"FlowElementsContainer",isAbstract:!0,superClass:["BaseElement"],properties:[{name:"laneSets",type:"LaneSet",isMany:!0},{name:"flowElements",type:"FlowElement",isMany:!0}]},{name:"CallableElement",isAbstract:!0,superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"ioSpecification",type:"InputOutputSpecification",xml:{serialize:"property"}},{name:"supportedInterfaceRef",type:"Interface",isMany:!0,isReference:!0},{name:"ioBinding",type:"InputOutputBinding",isMany:!0,xml:{serialize:"property"}}]},{name:"FlowNode",isAbstract:!0,superClass:["FlowElement"],properties:[{name:"incoming",type:"SequenceFlow",isMany:!0,isReference:!0},{name:"outgoing",type:"SequenceFlow",isMany:!0,isReference:!0},{name:"lanes",type:"Lane",isMany:!0,isVirtual:!0,isReference:!0}]},{name:"CorrelationPropertyRetrievalExpression",superClass:["BaseElement"],properties:[{name:"messagePath",type:"FormalExpression"},{name:"messageRef",type:"Message",isAttr:!0,isReference:!0}]},{name:"CorrelationPropertyBinding",superClass:["BaseElement"],properties:[{name:"dataPath",type:"FormalExpression"},{name:"correlationPropertyRef",type:"CorrelationProperty",isAttr:!0,isReference:!0}]},{name:"Resource",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"resourceParameters",type:"ResourceParameter",isMany:!0}]},{name:"ResourceParameter",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"isRequired",isAttr:!0,type:"Boolean"},{name:"type",type:"ItemDefinition",isAttr:!0,isReference:!0}]},{name:"CorrelationSubscription",superClass:["BaseElement"],properties:[{name:"correlationKeyRef",type:"CorrelationKey",isAttr:!0,isReference:!0},{name:"correlationPropertyBinding",type:"CorrelationPropertyBinding",isMany:!0}]},{name:"MessageFlow",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"sourceRef",type:"InteractionNode",isAttr:!0,isReference:!0},{name:"targetRef",type:"InteractionNode",isAttr:!0,isReference:!0},{name:"messageRef",type:"Message",isAttr:!0,isReference:!0}]},{name:"MessageFlowAssociation",superClass:["BaseElement"],properties:[{name:"innerMessageFlowRef",type:"MessageFlow",isAttr:!0,isReference:!0},{name:"outerMessageFlowRef",type:"MessageFlow",isAttr:!0,isReference:!0}]},{name:"InteractionNode",isAbstract:!0,properties:[{name:"incomingConversationLinks",type:"ConversationLink",isMany:!0,isVirtual:!0,isReference:!0},{name:"outgoingConversationLinks",type:"ConversationLink",isMany:!0,isVirtual:!0,isReference:!0}]},{name:"Participant",superClass:["InteractionNode","BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"interfaceRef",type:"Interface",isMany:!0,isReference:!0},{name:"participantMultiplicity",type:"ParticipantMultiplicity"},{name:"endPointRefs",type:"EndPoint",isMany:!0,isReference:!0},{name:"processRef",type:"Process",isAttr:!0,isReference:!0}]},{name:"ParticipantAssociation",superClass:["BaseElement"],properties:[{name:"innerParticipantRef",type:"Participant",isAttr:!0,isReference:!0},{name:"outerParticipantRef",type:"Participant",isAttr:!0,isReference:!0}]},{name:"ParticipantMultiplicity",properties:[{name:"minimum",default:0,isAttr:!0,type:"Integer"},{name:"maximum",default:1,isAttr:!0,type:"Integer"}],superClass:["BaseElement"]},{name:"Collaboration",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"isClosed",isAttr:!0,type:"Boolean"},{name:"participants",type:"Participant",isMany:!0},{name:"messageFlows",type:"MessageFlow",isMany:!0},{name:"artifacts",type:"Artifact",isMany:!0},{name:"conversations",type:"ConversationNode",isMany:!0},{name:"conversationAssociations",type:"ConversationAssociation"},{name:"participantAssociations",type:"ParticipantAssociation",isMany:!0},{name:"messageFlowAssociations",type:"MessageFlowAssociation",isMany:!0},{name:"correlationKeys",type:"CorrelationKey",isMany:!0},{name:"choreographyRef",type:"Choreography",isMany:!0,isReference:!0},{name:"conversationLinks",type:"ConversationLink",isMany:!0}]},{name:"ChoreographyActivity",isAbstract:!0,superClass:["FlowNode"],properties:[{name:"participantRef",type:"Participant",isMany:!0,isReference:!0},{name:"initiatingParticipantRef",type:"Participant",isAttr:!0,isReference:!0},{name:"correlationKeys",type:"CorrelationKey",isMany:!0},{name:"loopType",type:"ChoreographyLoopType",default:"None",isAttr:!0}]},{name:"CallChoreography",superClass:["ChoreographyActivity"],properties:[{name:"calledChoreographyRef",type:"Choreography",isAttr:!0,isReference:!0},{name:"participantAssociations",type:"ParticipantAssociation",isMany:!0}]},{name:"SubChoreography",superClass:["ChoreographyActivity","FlowElementsContainer"],properties:[{name:"artifacts",type:"Artifact",isMany:!0}]},{name:"ChoreographyTask",superClass:["ChoreographyActivity"],properties:[{name:"messageFlowRef",type:"MessageFlow",isMany:!0,isReference:!0}]},{name:"Choreography",superClass:["Collaboration","FlowElementsContainer"]},{name:"GlobalChoreographyTask",superClass:["Choreography"],properties:[{name:"initiatingParticipantRef",type:"Participant",isAttr:!0,isReference:!0}]},{name:"TextAnnotation",superClass:["Artifact"],properties:[{name:"text",type:"String"},{name:"textFormat",default:"text/plain",isAttr:!0,type:"String"}]},{name:"Group",superClass:["Artifact"],properties:[{name:"categoryValueRef",type:"CategoryValue",isAttr:!0,isReference:!0}]},{name:"Association",superClass:["Artifact"],properties:[{name:"associationDirection",type:"AssociationDirection",isAttr:!0},{name:"sourceRef",type:"BaseElement",isAttr:!0,isReference:!0},{name:"targetRef",type:"BaseElement",isAttr:!0,isReference:!0}]},{name:"Category",superClass:["RootElement"],properties:[{name:"categoryValue",type:"CategoryValue",isMany:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"Artifact",isAbstract:!0,superClass:["BaseElement"]},{name:"CategoryValue",superClass:["BaseElement"],properties:[{name:"categorizedFlowElements",type:"FlowElement",isMany:!0,isVirtual:!0,isReference:!0},{name:"value",isAttr:!0,type:"String"}]},{name:"Activity",isAbstract:!0,superClass:["FlowNode"],properties:[{name:"isForCompensation",default:!1,isAttr:!0,type:"Boolean"},{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0},{name:"ioSpecification",type:"InputOutputSpecification",xml:{serialize:"property"}},{name:"boundaryEventRefs",type:"BoundaryEvent",isMany:!0,isReference:!0},{name:"properties",type:"Property",isMany:!0},{name:"dataInputAssociations",type:"DataInputAssociation",isMany:!0},{name:"dataOutputAssociations",type:"DataOutputAssociation",isMany:!0},{name:"startQuantity",default:1,isAttr:!0,type:"Integer"},{name:"resources",type:"ResourceRole",isMany:!0},{name:"completionQuantity",default:1,isAttr:!0,type:"Integer"},{name:"loopCharacteristics",type:"LoopCharacteristics"}]},{name:"ServiceTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0}]},{name:"SubProcess",superClass:["Activity","FlowElementsContainer","InteractionNode"],properties:[{name:"triggeredByEvent",default:!1,isAttr:!0,type:"Boolean"},{name:"artifacts",type:"Artifact",isMany:!0}]},{name:"LoopCharacteristics",isAbstract:!0,superClass:["BaseElement"]},{name:"MultiInstanceLoopCharacteristics",superClass:["LoopCharacteristics"],properties:[{name:"isSequential",default:!1,isAttr:!0,type:"Boolean"},{name:"behavior",type:"MultiInstanceBehavior",default:"All",isAttr:!0},{name:"loopCardinality",type:"Expression",xml:{serialize:"xsi:type"}},{name:"loopDataInputRef",type:"ItemAwareElement",isReference:!0},{name:"loopDataOutputRef",type:"ItemAwareElement",isReference:!0},{name:"inputDataItem",type:"DataInput",xml:{serialize:"property"}},{name:"outputDataItem",type:"DataOutput",xml:{serialize:"property"}},{name:"complexBehaviorDefinition",type:"ComplexBehaviorDefinition",isMany:!0},{name:"completionCondition",type:"Expression",xml:{serialize:"xsi:type"}},{name:"oneBehaviorEventRef",type:"EventDefinition",isAttr:!0,isReference:!0},{name:"noneBehaviorEventRef",type:"EventDefinition",isAttr:!0,isReference:!0}]},{name:"StandardLoopCharacteristics",superClass:["LoopCharacteristics"],properties:[{name:"testBefore",default:!1,isAttr:!0,type:"Boolean"},{name:"loopCondition",type:"Expression",xml:{serialize:"xsi:type"}},{name:"loopMaximum",type:"Integer",isAttr:!0}]},{name:"CallActivity",superClass:["Activity","InteractionNode"],properties:[{name:"calledElement",type:"String",isAttr:!0}]},{name:"Task",superClass:["Activity","InteractionNode"]},{name:"SendTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0},{name:"messageRef",type:"Message",isAttr:!0,isReference:!0}]},{name:"ReceiveTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"instantiate",default:!1,isAttr:!0,type:"Boolean"},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0},{name:"messageRef",type:"Message",isAttr:!0,isReference:!0}]},{name:"ScriptTask",superClass:["Task"],properties:[{name:"scriptFormat",isAttr:!0,type:"String"},{name:"script",type:"String"}]},{name:"BusinessRuleTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"}]},{name:"AdHocSubProcess",superClass:["SubProcess"],properties:[{name:"completionCondition",type:"Expression",xml:{serialize:"xsi:type"}},{name:"ordering",type:"AdHocOrdering",isAttr:!0},{name:"cancelRemainingInstances",default:!0,isAttr:!0,type:"Boolean"}]},{name:"Transaction",superClass:["SubProcess"],properties:[{name:"protocol",isAttr:!0,type:"String"},{name:"method",isAttr:!0,type:"String"}]},{name:"GlobalScriptTask",superClass:["GlobalTask"],properties:[{name:"scriptLanguage",isAttr:!0,type:"String"},{name:"script",isAttr:!0,type:"String"}]},{name:"GlobalBusinessRuleTask",superClass:["GlobalTask"],properties:[{name:"implementation",isAttr:!0,type:"String"}]},{name:"ComplexBehaviorDefinition",superClass:["BaseElement"],properties:[{name:"condition",type:"FormalExpression"},{name:"event",type:"ImplicitThrowEvent"}]},{name:"ResourceRole",superClass:["BaseElement"],properties:[{name:"resourceRef",type:"Resource",isReference:!0},{name:"resourceParameterBindings",type:"ResourceParameterBinding",isMany:!0},{name:"resourceAssignmentExpression",type:"ResourceAssignmentExpression"},{name:"name",isAttr:!0,type:"String"}]},{name:"ResourceParameterBinding",properties:[{name:"expression",type:"Expression",xml:{serialize:"xsi:type"}},{name:"parameterRef",type:"ResourceParameter",isAttr:!0,isReference:!0}],superClass:["BaseElement"]},{name:"ResourceAssignmentExpression",properties:[{name:"expression",type:"Expression",xml:{serialize:"xsi:type"}}],superClass:["BaseElement"]},{name:"Import",properties:[{name:"importType",isAttr:!0,type:"String"},{name:"location",isAttr:!0,type:"String"},{name:"namespace",isAttr:!0,type:"String"}]},{name:"Definitions",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"targetNamespace",isAttr:!0,type:"String"},{name:"expressionLanguage",default:"http://www.w3.org/1999/XPath",isAttr:!0,type:"String"},{name:"typeLanguage",default:"http://www.w3.org/2001/XMLSchema",isAttr:!0,type:"String"},{name:"imports",type:"Import",isMany:!0},{name:"extensions",type:"Extension",isMany:!0},{name:"rootElements",type:"RootElement",isMany:!0},{name:"diagrams",isMany:!0,type:"bpmndi:BPMNDiagram"},{name:"exporter",isAttr:!0,type:"String"},{name:"relationships",type:"Relationship",isMany:!0},{name:"exporterVersion",isAttr:!0,type:"String"}]}],pu=[{name:"ProcessType",literalValues:[{name:"None"},{name:"Public"},{name:"Private"}]},{name:"GatewayDirection",literalValues:[{name:"Unspecified"},{name:"Converging"},{name:"Diverging"},{name:"Mixed"}]},{name:"EventBasedGatewayType",literalValues:[{name:"Parallel"},{name:"Exclusive"}]},{name:"RelationshipDirection",literalValues:[{name:"None"},{name:"Forward"},{name:"Backward"},{name:"Both"}]},{name:"ItemKind",literalValues:[{name:"Physical"},{name:"Information"}]},{name:"ChoreographyLoopType",literalValues:[{name:"None"},{name:"Standard"},{name:"MultiInstanceSequential"},{name:"MultiInstanceParallel"}]},{name:"AssociationDirection",literalValues:[{name:"None"},{name:"One"},{name:"Both"}]},{name:"MultiInstanceBehavior",literalValues:[{name:"None"},{name:"One"},{name:"All"},{name:"Complex"}]},{name:"AdHocOrdering",literalValues:[{name:"Parallel"},{name:"Sequential"}]}],lu={tagAlias:"lowerCase",typePrefix:"t"},du={name:nu,uri:ou,prefix:iu,associations:au,types:su,enumerations:pu,xml:lu},cu="BPMNDI",uu="http://www.omg.org/spec/BPMN/20100524/DI",fu="bpmndi",mu=[{name:"BPMNDiagram",properties:[{name:"plane",type:"BPMNPlane",redefines:"di:Diagram#rootElement"},{name:"labelStyle",type:"BPMNLabelStyle",isMany:!0}],superClass:["di:Diagram"]},{name:"BPMNPlane",properties:[{name:"bpmnElement",isAttr:!0,isReference:!0,type:"bpmn:BaseElement",redefines:"di:DiagramElement#modelElement"}],superClass:["di:Plane"]},{name:"BPMNShape",properties:[{name:"bpmnElement",isAttr:!0,isReference:!0,type:"bpmn:BaseElement",redefines:"di:DiagramElement#modelElement"},{name:"isHorizontal",isAttr:!0,type:"Boolean"},{name:"isExpanded",isAttr:!0,type:"Boolean"},{name:"isMarkerVisible",isAttr:!0,type:"Boolean"},{name:"label",type:"BPMNLabel"},{name:"isMessageVisible",isAttr:!0,type:"Boolean"},{name:"participantBandKind",type:"ParticipantBandKind",isAttr:!0},{name:"choreographyActivityShape",type:"BPMNShape",isAttr:!0,isReference:!0}],superClass:["di:LabeledShape"]},{name:"BPMNEdge",properties:[{name:"label",type:"BPMNLabel"},{name:"bpmnElement",isAttr:!0,isReference:!0,type:"bpmn:BaseElement",redefines:"di:DiagramElement#modelElement"},{name:"sourceElement",isAttr:!0,isReference:!0,type:"di:DiagramElement",redefines:"di:Edge#source"},{name:"targetElement",isAttr:!0,isReference:!0,type:"di:DiagramElement",redefines:"di:Edge#target"},{name:"messageVisibleKind",type:"MessageVisibleKind",isAttr:!0,default:"initiating"}],superClass:["di:LabeledEdge"]},{name:"BPMNLabel",properties:[{name:"labelStyle",type:"BPMNLabelStyle",isAttr:!0,isReference:!0,redefines:"di:DiagramElement#style"}],superClass:["di:Label"]},{name:"BPMNLabelStyle",properties:[{name:"font",type:"dc:Font"}],superClass:["di:Style"]}],hu=[{name:"ParticipantBandKind",literalValues:[{name:"top_initiating"},{name:"middle_initiating"},{name:"bottom_initiating"},{name:"top_non_initiating"},{name:"middle_non_initiating"},{name:"bottom_non_initiating"}]},{name:"MessageVisibleKind",literalValues:[{name:"initiating"},{name:"non_initiating"}]}],yu=[],gu={name:cu,uri:uu,prefix:fu,types:mu,enumerations:hu,associations:yu},vu="DC",ku="http://www.omg.org/spec/DD/20100524/DC",wu="dc",bu=[{name:"Boolean"},{name:"Integer"},{name:"Real"},{name:"String"},{name:"Font",properties:[{name:"name",type:"String",isAttr:!0},{name:"size",type:"Real",isAttr:!0},{name:"isBold",type:"Boolean",isAttr:!0},{name:"isItalic",type:"Boolean",isAttr:!0},{name:"isUnderline",type:"Boolean",isAttr:!0},{name:"isStrikeThrough",type:"Boolean",isAttr:!0}]},{name:"Point",properties:[{name:"x",type:"Real",default:"0",isAttr:!0},{name:"y",type:"Real",default:"0",isAttr:!0}]},{name:"Bounds",properties:[{name:"x",type:"Real",default:"0",isAttr:!0},{name:"y",type:"Real",default:"0",isAttr:!0},{name:"width",type:"Real",isAttr:!0},{name:"height",type:"Real",isAttr:!0}]}],xu=[],Eu={name:vu,uri:ku,prefix:wu,types:bu,associations:xu},Cu="DI",Nu="http://www.omg.org/spec/DD/20100524/DI",Su="di",_u=[{name:"DiagramElement",isAbstract:!0,properties:[{name:"id",isAttr:!0,isId:!0,type:"String"},{name:"extension",type:"Extension"},{name:"owningDiagram",type:"Diagram",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"owningElement",type:"DiagramElement",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"modelElement",isReadOnly:!0,isVirtual:!0,isReference:!0,type:"Element"},{name:"style",type:"Style",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"ownedElement",type:"DiagramElement",isReadOnly:!0,isMany:!0,isVirtual:!0}]},{name:"Node",isAbstract:!0,superClass:["DiagramElement"]},{name:"Edge",isAbstract:!0,superClass:["DiagramElement"],properties:[{name:"source",type:"DiagramElement",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"target",type:"DiagramElement",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"waypoint",isUnique:!1,isMany:!0,type:"dc:Point",xml:{serialize:"xsi:type"}}]},{name:"Diagram",isAbstract:!0,properties:[{name:"id",isAttr:!0,isId:!0,type:"String"},{name:"rootElement",type:"DiagramElement",isReadOnly:!0,isVirtual:!0},{name:"name",isAttr:!0,type:"String"},{name:"documentation",isAttr:!0,type:"String"},{name:"resolution",isAttr:!0,type:"Real"},{name:"ownedStyle",type:"Style",isReadOnly:!0,isMany:!0,isVirtual:!0}]},{name:"Shape",isAbstract:!0,superClass:["Node"],properties:[{name:"bounds",type:"dc:Bounds"}]},{name:"Plane",isAbstract:!0,superClass:["Node"],properties:[{name:"planeElement",type:"DiagramElement",subsettedProperty:"DiagramElement-ownedElement",isMany:!0}]},{name:"LabeledEdge",isAbstract:!0,superClass:["Edge"],properties:[{name:"ownedLabel",type:"Label",isReadOnly:!0,subsettedProperty:"DiagramElement-ownedElement",isMany:!0,isVirtual:!0}]},{name:"LabeledShape",isAbstract:!0,superClass:["Shape"],properties:[{name:"ownedLabel",type:"Label",isReadOnly:!0,subsettedProperty:"DiagramElement-ownedElement",isMany:!0,isVirtual:!0}]},{name:"Label",isAbstract:!0,superClass:["Node"],properties:[{name:"bounds",type:"dc:Bounds"}]},{name:"Style",isAbstract:!0,properties:[{name:"id",isAttr:!0,isId:!0,type:"String"}]},{name:"Extension",properties:[{name:"values",isMany:!0,type:"Element"}]}],Iu=[],Pu={tagAlias:"lowerCase"},Fu={name:Cu,uri:Nu,prefix:Su,types:_u,associations:Iu,xml:Pu},Au="bpmn.io colors for BPMN",Tu="http://bpmn.io/schema/bpmn/biocolor/1.0",Du="bioc",Mu=[{name:"ColoredShape",extends:["bpmndi:BPMNShape"],properties:[{name:"stroke",isAttr:!0,type:"String"},{name:"fill",isAttr:!0,type:"String"}]},{name:"ColoredEdge",extends:["bpmndi:BPMNEdge"],properties:[{name:"stroke",isAttr:!0,type:"String"},{name:"fill",isAttr:!0,type:"String"}]}],Ru=[],Ou=[],Bu={name:Au,uri:Tu,prefix:Du,types:Mu,enumerations:Ru,associations:Ou},Lu="BPMN in Color",Vu="http://www.omg.org/spec/BPMN/non-normative/color/1.0",Uu="color",$u=[{name:"ColoredLabel",extends:["bpmndi:BPMNLabel"],properties:[{name:"color",isAttr:!0,type:"String"}]},{name:"ColoredShape",extends:["bpmndi:BPMNShape"],properties:[{name:"background-color",isAttr:!0,type:"String"},{name:"border-color",isAttr:!0,type:"String"}]},{name:"ColoredEdge",extends:["bpmndi:BPMNEdge"],properties:[{name:"border-color",isAttr:!0,type:"String"}]}],ju=[],Hu=[],zu={name:Lu,uri:Vu,prefix:Uu,types:$u,enumerations:ju,associations:Hu},Wu={bpmn:du,bpmndi:gu,dc:Eu,di:Fu,bioc:Bu,color:zu};function mp(e,t){let r=R({},Wu,e);return new no(r,t)}var wp=Ut($t());var Gu="Tried to access di from the businessObject. The di is available through the diagram element only. For more information, see https://github.com/bpmn-io/bpmn-js/issues/1472";function hp(e){st(e,"di")||Object.defineProperty(e,"di",{enumerable:!1,get:function(){throw new Error(Gu)}})}function We(e,t){return e.$instanceOf(t)}function qu(e){return Ce(e.rootElements,function(t){return We(t,"bpmn:Process")||We(t,"bpmn:Collaboration")})}function ui(e){var t={},r=[],n={};function o(w,C){return function(j){w(j,C)}}function i(w){t[w.id]=w}function a(w){return t[w.id]}function p(w,C){var j=w.gfx;if(j)throw new Error(`already rendered ${_e(w)}`);return e.element(w,n[w.id],C)}function d(w,C){return e.root(w,n[w.id],C)}function u(w,C){try{var j=n[w.id]&&p(w,C);return i(w),j}catch(ne){m(ne.message,{element:w,error:ne}),console.error(`failed to import ${_e(w)}`,ne)}}function m(w,C){e.error(w,C)}var g=this.registerDi=function(C){var j=C.bpmnElement;j?n[j.id]?m(`multiple DI elements defined for ${_e(j)}`,{element:j}):(n[j.id]=C,hp(j)):m(`no bpmnElement referenced in ${_e(C)}`,{element:C})};function E(w){_(w.plane)}function _(w){g(w),O(w.planeElement,A)}function A(w){g(w)}this.handleDefinitions=function(C,j){var ne=C.diagrams;if(j&&ne.indexOf(j)===-1)throw new Error("diagram not part of <bpmn:Definitions />");if(!j&&ne&&ne.length&&(j=ne[0]),!j)throw new Error("no diagram to display");n={},E(j);var Pe=j.plane;if(!Pe)throw new Error(`no plane for ${_e(j)}`);var c=Pe.bpmnElement;if(!c)if(c=qu(C),c)m(`correcting missing bpmnElement on ${_e(Pe)} to ${_e(c)}`),Pe.bpmnElement=c,g(Pe);else throw new Error("no process or collaboration to display");var l=d(c,Pe);if(We(c,"bpmn:Process")||We(c,"bpmn:SubProcess"))L(c,l);else if(We(c,"bpmn:Collaboration"))ae(c,l),z(C.rootElements,l);else throw new Error(`unsupported bpmnElement for ${_e(Pe)}: ${_e(c)}`);k(r)};var k=this.handleDeferred=function(){for(var C;r.length;)C=r.shift(),C()};function L(w,C){W(w,C),S(w.ioSpecification,C),v(w.artifacts,C),i(w)}function z(w,C){var j=mt(w,function(ne){return!a(ne)&&We(ne,"bpmn:Process")&&ne.laneSets});j.forEach(o(L,C))}function q(w,C){u(w,C)}function T(w,C){O(w,o(q,C))}function y(w,C){u(w,C)}function I(w,C){u(w,C)}function D(w,C){u(w,C)}function M(w,C){u(w,C)}function v(w,C){O(w,function(j){We(j,"bpmn:Association")?r.push(function(){M(j,C)}):M(j,C)})}function S(w,C){w&&(O(w.dataInputs,o(I,C)),O(w.dataOutputs,o(D,C)))}var P=this.handleSubProcess=function(C,j){W(C,j),v(C.artifacts,j)};function x(w,C){var j=u(w,C);We(w,"bpmn:SubProcess")&&P(w,j||C),We(w,"bpmn:Activity")&&S(w.ioSpecification,C),r.push(function(){O(w.dataInputAssociations,o(y,C)),O(w.dataOutputAssociations,o(y,C))})}function N(w,C){u(w,C)}function B(w,C){u(w,C)}function $(w,C){r.push(function(){var j=u(w,C);w.childLaneSet&&le(w.childLaneSet,j||C),ce(w)})}function le(w,C){O(w.lanes,o($,C))}function K(w,C){O(w,o(le,C))}function W(w,C){Me(w.flowElements,C),w.laneSets&&K(w.laneSets,C)}function Me(w,C){O(w,function(j){We(j,"bpmn:SequenceFlow")?r.push(function(){N(j,C)}):We(j,"bpmn:BoundaryEvent")?r.unshift(function(){x(j,C)}):We(j,"bpmn:FlowNode")?x(j,C):We(j,"bpmn:DataObject")||(We(j,"bpmn:DataStoreReference")||We(j,"bpmn:DataObjectReference")?B(j,C):m(`unrecognized flowElement ${_e(j)} in context ${_e(C&&C.businessObject)}`,{element:j,context:C}))})}function ge(w,C){var j=u(w,C),ne=w.processRef;ne&&L(ne,j||C)}function ae(w,C){O(w.participants,o(ge,C)),r.push(function(){T(w.messageFlows,C)}),v(w.artifacts,C)}function ce(w){O(w.flowNodeRef,function(C){var j=C.get("lanes");j&&j.push(w)})}}function yp(e,t,r){var n,o,i,a,p=[];function d(u,m){var g={root:function(k,L){return n.add(k,L)},element:function(k,L,z){return n.add(k,L,z)},error:function(k,L){p.push({message:k,context:L})}},E=new ui(g);m=m||u.diagrams&&u.diagrams[0];var _=Yu(u,m);if(!_)throw new Error("no diagram to display");O(_,function(k){E.handleDefinitions(u,k)});var A=m.plane.bpmnElement.id;i.setRootElement(i.findRoot(A+"_plane")||i.findRoot(A))}return new Promise(function(u,m){try{return n=e.get("bpmnImporter"),o=e.get("eventBus"),i=e.get("canvas"),o.fire("import.render.start",{definitions:t}),d(t,r),o.fire("import.render.complete",{error:a,warnings:p}),u({warnings:p})}catch(g){return g.warnings=p,m(g)}})}function Yu(e,t){if(!(!t||!t.plane)){var r=t.plane.bpmnElement,n=r;!U(r,"bpmn:Process")&&!U(r,"bpmn:Collaboration")&&(n=Ku(r));var o;U(n,"bpmn:Collaboration")?o=n:o=Ce(e.rootElements,function(u){if(U(u,"bpmn:Collaboration"))return Ce(u.participants,function(m){return m.processRef===n})});var i=[n];o&&(i=Na(o.participants,function(u){return u.processRef}),i.push(o));var a=gp(i),p=[t],d=[r];return O(e.diagrams,function(u){if(u.plane){var m=u.plane.bpmnElement;a.indexOf(m)!==-1&&d.indexOf(m)===-1&&(p.push(u),d.push(m))}}),p}}function gp(e){var t=[];return O(e,function(r){r&&(t.push(r),t=t.concat(gp(r.flowElements)))}),t}function Ku(e){for(var t=e;t;){if(U(t,"bpmn:Process"))return t;t=t.$parent}}var Xu='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14.02 5.57" width="53" height="21"><path fill="currentColor" d="M1.88.92v.14c0 .41-.13.68-.4.8.33.14.46.44.46.86v.33c0 .61-.33.95-.95.95H0V0h.95c.65 0 .93.3.93.92zM.63.57v1.06h.24c.24 0 .38-.1.38-.43V.98c0-.28-.1-.4-.32-.4zm0 1.63v1.22h.36c.2 0 .32-.1.32-.39v-.35c0-.37-.12-.48-.4-.48H.63zM4.18.99v.52c0 .64-.31.98-.94.98h-.3V4h-.62V0h.92c.63 0 .94.35.94.99zM2.94.57v1.35h.3c.2 0 .3-.09.3-.37v-.6c0-.29-.1-.38-.3-.38h-.3zm2.89 2.27L6.25 0h.88v4h-.6V1.12L6.1 3.99h-.6l-.46-2.82v2.82h-.55V0h.87zM8.14 1.1V4h-.56V0h.79L9 2.4V0h.56v4h-.64zm2.49 2.29v.6h-.6v-.6zM12.12 1c0-.63.33-1 .95-1 .61 0 .95.37.95 1v2.04c0 .64-.34 1-.95 1-.62 0-.95-.37-.95-1zm.62 2.08c0 .28.13.39.33.39s.32-.1.32-.4V.98c0-.29-.12-.4-.32-.4s-.33.11-.33.4z"/><path fill="currentColor" d="M0 4.53h14.02v1.04H0zM11.08 0h.63v.62h-.63zm.63 4V1h-.63v2.98z"/></svg>',fi=Xu,mi={verticalAlign:"middle"},hi={color:"#404040"},Ju={zIndex:"1001",position:"fixed",top:"0",left:"0",right:"0",bottom:"0"},Zu={width:"100%",height:"100%",background:"rgba(40,40,40,0.2)"},Qu={position:"absolute",left:"50%",top:"40%",transform:"translate(-50%)",width:"260px",padding:"10px",background:"white",boxShadow:"0 1px 4px rgba(0,0,0,0.3)",fontFamily:"Helvetica, Arial, sans-serif",fontSize:"14px",display:"flex",lineHeight:"1.3"},ef='<div class="bjs-powered-by-lightbox"><div class="backdrop"></div><div class="notice"><a href="https://bpmn.io" target="_blank" rel="noopener" class="link">'+fi+'</a><span>Web-based tooling for BPMN, DMN and forms powered by <a href="https://bpmn.io" target="_blank" rel="noopener">bpmn.io</a>.</span></div></div>',bt;function tf(){bt=Re(ef),Se(bt,Ju),Se(Le("svg",bt),mi),Se(Le(".backdrop",bt),Zu),Se(Le(".notice",bt),Qu),Se(Le(".link",bt),hi,{margin:"15px 20px 15px 10px",alignSelf:"center"})}function vp(){bt||(tf(),Ar.bind(bt,".backdrop","click",function(e){document.body.removeChild(bt)})),document.body.appendChild(bt)}function he(e){e=R({},nf,e),this._moddle=this._createModdle(e),this._container=this._createContainer(e),this._init(this._container,this._moddle,e),af(this._container)}(0,wp.default)(he,kt);he.prototype.importXML=async function(t,r){let n=this;function o(a){return n.get("eventBus").createEvent(a)}let i=[];try{t=this._emit("import.parse.start",{xml:t})||t;let a;try{a=await this._moddle.fromXML(t,"bpmn:Definitions")}catch(E){throw this._emit("import.parse.complete",{error:E}),E}let p=a.rootElement,d=a.references,u=a.warnings,m=a.elementsById;i=i.concat(u),p=this._emit("import.parse.complete",o({error:null,definitions:p,elementsById:m,references:d,warnings:i}))||p;let g=await this.importDefinitions(p,r);return i=i.concat(g.warnings),this._emit("import.done",{error:null,warnings:i}),{warnings:i}}catch(a){let p=a;throw i=i.concat(p.warnings||[]),oo(p,i),p=rf(p),this._emit("import.done",{error:p,warnings:p.warnings}),p}};he.prototype.importDefinitions=async function(t,r){return this._setDefinitions(t),{warnings:(await this.open(r)).warnings}};he.prototype.open=async function(t){let r=this._definitions,n=t;if(!r){let i=new Error("no XML imported");throw oo(i,[]),i}if(typeof t=="string"&&(n=of(r,t),!n)){let i=new Error("BPMNDiagram <"+t+"> not found");throw oo(i,[]),i}try{this.clear()}catch(i){throw oo(i,[]),i}let{warnings:o}=await yp(this,r,n);return{warnings:o}};he.prototype.saveXML=async function(t){t=t||{};let r=this._definitions,n,o;try{if(!r)throw new Error("no definitions loaded");r=this._emit("saveXML.start",{definitions:r})||r,o=(await this._moddle.toXML(r,t)).xml,o=this._emit("saveXML.serialized",{xml:o})||o}catch(a){n=a}let i=n?{error:n}:{xml:o};if(this._emit("saveXML.done",i),n)throw n;return i};he.prototype.saveSVG=async function(){this._emit("saveSVG.start");let t,r;try{let n=this.get("canvas"),o=n.getActiveLayer(),i=Le(":scope > defs",n._svg),a=Bo(o),p=i?"<defs>"+Bo(i)+"</defs>":"",d=o.getBBox();t=`<?xml version="1.0" encoding="utf-8"?>
|
|
7
7
|
<!-- created with bpmn-js / http://bpmn.io -->
|
|
8
8
|
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
9
|
-
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="`+d.width+'" height="'+d.height+'" viewBox="'+d.x+" "+d.y+" "+d.width+" "+d.height+'" version="1.1">'+p+a+"</svg>"}catch(n){r=n}if(this._emit("saveSVG.done",{error:r,svg:t}),r)throw r;return{svg:t}};he.prototype._setDefinitions=function(e){this._definitions=e};he.prototype.getModules=function(){return this._modules};he.prototype.clear=function(){this.getDefinitions()&&kt.prototype.clear.call(this)};he.prototype.destroy=function(){kt.prototype.destroy.call(this),fr(this._container)};he.prototype.on=function(e,t,r,n){return this.get("eventBus").on(e,t,r,n)};he.prototype.off=function(e,t){this.get("eventBus").off(e,t)};he.prototype.attachTo=function(e){if(!e)throw new Error("parentNode required");this.detach(),e.get&&e.constructor.prototype.jquery&&(e=e.get(0)),typeof e=="string"&&(e=Le(e)),e.appendChild(this._container),this._emit("attach",{}),this.get("canvas").resized()};he.prototype.getDefinitions=function(){return this._definitions};he.prototype.detach=function(){let e=this._container,t=e.parentNode;t&&(this._emit("detach",{}),t.removeChild(e))};he.prototype._init=function(e,t,r){let n=r.modules||this.getModules(r),o=r.additionalModules||[],i=[{bpmnjs:["value",this],moddle:["value",t]}],a=[].concat(i,n,o),p=R(Pa(r,["additionalModules"]),{canvas:R({},r.canvas,{container:e}),modules:a});kt.call(this,p),r&&r.container&&this.attachTo(r.container)};he.prototype._emit=function(e,t){return this.get("eventBus").fire(e,t)};he.prototype._createContainer=function(e){let t=Re('<div class="bjs-container"></div>');return Se(t,{width:kp(e.width),height:kp(e.height),position:e.position}),t};he.prototype._createModdle=function(e){let t=R({},this._moddleExtensions,e.moddleExtensions);return new mp(t)};he.prototype._modules=[];function oo(e,t){return e.warnings=t,e}function rf(e){let r=/unparsable content <([^>]+)> detected([\s\S]*)$/.exec(e.message);return r&&(e.message="unparsable content <"+r[1]+"> detected; this may indicate an invalid BPMN 2.0 diagram file"+r[2]),e}var nf={width:"100%",height:"100%",position:"relative"};function kp(e){return e+(Ge(e)?"px":"")}function of(e,t){return t&&Ce(e.diagrams,function(r){return r.id===t})||null}function af(e){let r='<a href="http://bpmn.io" target="_blank" class="bjs-powered-by" title="Powered by bpmn.io" >'+fi+"</a>",n=Re(r);Se(Le("svg",n),mi),Se(n,hi,{position:"absolute",bottom:"15px",right:"15px",zIndex:"100"}),e.appendChild(n),lt.bind(n,"click",function(o){vp(),o.preventDefault()})}function Xt(e){he.call(this,e)}(0,bp.default)(Xt,he);Xt.prototype._modules=[ss,gs,Un,gr,Dn];Xt.prototype._moddleExtensions={};var sf=500,pf=1e3;function Mt(e,t){this._eventBus=e,this.offset=5;var r=t.cls("djs-outline",["no-fill"]),n=this;function o(i){var a=Q("rect");return J(a,R({x:0,y:0,rx:4,width:100,height:100},r)),a}e.on(["shape.added","shape.changed"],sf,function(i){var a=i.element,p=i.gfx,d=Le(".djs-outline",p);d||(d=n.getOutline(a)||o(p),pe(p,d)),n.updateShapeOutline(d,a)}),e.on(["connection.added","connection.changed"],function(i){var a=i.element,p=i.gfx,d=Le(".djs-outline",p);d||(d=o(p),pe(p,d)),n.updateConnectionOutline(d,a)})}Mt.prototype.updateShapeOutline=function(e,t){var r=!1,n=this._getProviders();n.length&&O(n,function(o){r=r||o.updateOutline(t,e)}),r||J(e,{x:-this.offset,y:-this.offset,width:t.width+this.offset*2,height:t.height+this.offset*2})};Mt.prototype.updateConnectionOutline=function(e,t){var r=ct(t);J(e,{x:r.x-this.offset,y:r.y-this.offset,width:r.width+this.offset*2,height:r.height+this.offset*2})};Mt.prototype.registerProvider=function(e,t){t||(t=e,e=pf),this._eventBus.on("outline.getProviders",e,function(r){r.providers.push(t)})};Mt.prototype._getProviders=function(){var e=this._eventBus.createEvent({type:"outline.getProviders",providers:[]});return this._eventBus.fire(e),e.providers};Mt.prototype.getOutline=function(e){var t,r=this._getProviders();return O(r,function(n){at(n.getOutline)&&(t=t||n.getOutline(e))}),t};Mt.$inject=["eventBus","styles","elementRegistry"];var io=6;function Hr(e,t,r){this._canvas=t;var n=this;e.on("element.changed",function(o){r.isSelected(o.element)&&n._updateMultiSelectionOutline(r.get())}),e.on("selection.changed",function(o){var i=o.newSelection;n._updateMultiSelectionOutline(i)})}Hr.prototype._updateMultiSelectionOutline=function(e){var t=this._canvas.getLayer("selectionOutline");Ro(t);var r=e.length>1,n=this._canvas.getContainer();if(Be(n)[r?"add":"remove"]("djs-multi-select"),!!r){var o=lf(ct(e)),i=Q("rect");J(i,R({rx:3},o)),Be(i).add("djs-selection-outline"),pe(t,i)}};Hr.$inject=["eventBus","canvas","selection"];function lf(e){return{x:e.x-io,y:e.y-io,width:e.width+io*2,height:e.height+io*2}}var xp={__depends__:[gr],__init__:["outline","multiSelectionOutline"],outline:["type",Mt],multiSelectionOutline:["type",Hr]};var Ep="M44.7648 11.3263L36.9892 2.64074C36.0451 1.58628 34.5651 0.988708 33.1904 0.988708H5.98667C3.22688 0.988708 0.989624 3.34892 0.989624 6.26039V55.0235C0.989624 57.9349 3.22688 60.2952 5.98667 60.2952H40.966C43.7257 60.2952 45.963 57.9349 45.963 55.0235V14.9459C45.963 13.5998 45.6407 12.3048 44.7648 11.3263Z",Cp="M1.03845 48.1347C1.03845 49.3511 1.07295 50.758 1.38342 52.064C1.69949 53.3938 2.32428 54.7154 3.56383 55.6428C6.02533 57.4841 10.1161 58.7685 14.8212 59.6067C19.5772 60.4538 25.1388 60.8738 30.6831 60.8738C36.2276 60.8738 41.7891 60.4538 46.545 59.6067C51.2504 58.7687 55.3412 57.4842 57.8028 55.6429C59.0424 54.7156 59.6673 53.3938 59.9834 52.064C60.2938 50.7579 60.3285 49.351 60.3285 48.1344V13.8415C60.3285 12.6249 60.2938 11.218 59.9834 9.91171C59.6673 8.58194 59.0423 7.2602 57.8027 6.33294C55.341 4.49168 51.2503 3.20723 46.545 2.36914C41.7891 1.522 36.2276 1.10204 30.6831 1.10205C25.1388 1.10206 19.5772 1.52206 14.8213 2.36923C10.1162 3.20734 6.02543 4.49183 3.5639 6.33314C2.32433 7.26038 1.69951 8.58206 1.38343 9.91181C1.07295 11.2179 1.03845 12.6247 1.03845 13.8411V48.1347Z",Np={width:36,height:50},Sp={width:50,height:50};function yi(e,t,r){return Q("path",{d:e,strokeWidth:2,transform:`translate(${t.x}, ${t.y})`,...r})}var ot=5;function Er(e,t){this._styles=t,e.registerProvider(this)}Er.$inject=["outline","styles"];Er.prototype.getOutline=function(e){let t=this._styles.cls("djs-outline",["no-fill"]);var r;if(Ma(e))return r=Q("rect"),J(r,R({x:-ot,y:-ot,rx:4,width:e.width+ot*2,height:e.height+ot*2},t)),r;if(!jt(e))return U(e,"bpmn:Gateway")?(r=Q("rect"),R(r.style,{"transform-box":"fill-box",transform:"rotate(45deg)","transform-origin":"center"}),J(r,R({x:2,y:2,rx:4,width:e.width-4,height:e.height-4},t))):sr(e,["bpmn:Task","bpmn:SubProcess","bpmn:Group","bpmn:CallActivity"])?(r=Q("rect"),J(r,R({x:-ot,y:-ot,rx:14,width:e.width+ot*2,height:e.height+ot*2},t))):U(e,"bpmn:EndEvent")?(r=Q("circle"),J(r,R({cx:e.width/2,cy:e.height/2,r:e.width/2+ot+1},t))):U(e,"bpmn:Event")?(r=Q("circle"),J(r,R({cx:e.width/2,cy:e.height/2,r:e.width/2+ot},t))):U(e,"bpmn:DataObjectReference")&&_p(e,"bpmn:DataObjectReference")?r=yi(Ep,{x:-6,y:-6},t):U(e,"bpmn:DataStoreReference")&&_p(e,"bpmn:DataStoreReference")&&(r=yi(Cp,{x:-6,y:-6},t)),r};Er.prototype.updateOutline=function(e,t){if(!jt(e))return sr(e,["bpmn:SubProcess","bpmn:Group"])?(J(t,{width:e.width+ot*2,height:e.height+ot*2}),!0):!!sr(e,["bpmn:Event","bpmn:Gateway","bpmn:DataStoreReference","bpmn:DataObjectReference"])};function _p(e,t){var r;return t==="bpmn:DataObjectReference"?r=Np:t==="bpmn:DataStoreReference"&&(r=Sp),e.width===r.width&&e.height===r.height}var ao={__depends__:[xp],__init__:["outlineProvider"],outlineProvider:["type",Er]};function Ip(e){var t,r,n="";if(typeof e=="string"||typeof e=="number")n+=e;else if(typeof e=="object")if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(r=Ip(e[t]))&&(n&&(n+=" "),n+=r)}else for(r in e)e[r]&&(n&&(n+=" "),n+=r);return n}function df(){for(var e,t,r=0,n="",o=arguments.length;r<o;r++)(e=arguments[r])&&(t=Ip(e))&&(n&&(n+=" "),n+=t);return n}var Pp=df;var cf=/^djs-cursor-.*$/;function gi(e){var t=Pt(document.body);t.removeMatching(cf),e&&t.add("djs-cursor-"+e)}function Fp(){gi(null)}var uf=5e3;function Ap(e,t){t=t||"element.click";function r(){return!1}return e.once(t,uf,r),function(){e.off(t,r)}}function vi(e,t){return{x:e.x-t.x,y:e.y-t.y}}var ff=15;function so(e,t){var r;function n(p){return a(p.originalEvent)}e.on("canvas.focus.changed",function(p){p.focused?e.on("element.mousedown",500,n):e.off("element.mousedown",n)});function o(p){var d=r.start,u=r.button,m=qo(p),g=vi(m,d);if(!r.dragging&&mf(g)>ff&&(r.dragging=!0,u===0&&Ap(e),gi("grab")),r.dragging){var E=r.last||r.start;g=vi(m,E),t.scroll({dx:g.x,dy:g.y}),r.last=m}p.preventDefault()}function i(p){lt.unbind(document,"mousemove",o),lt.unbind(document,"mouseup",i),r=null,Fp()}function a(p){if(!jo(p.target,".djs-draggable")){var d=p.button;if(!(d>=2||p.ctrlKey||p.shiftKey||p.altKey))return r={button:d,start:qo(p)},lt.bind(document,"mousemove",o),lt.bind(document,"mouseup",i),!0}}this.isActive=function(){return!!r}}so.$inject=["eventBus","canvas"];function mf(e){return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}var po={__init__:["moveCanvas"],moveCanvas:["type",so]};function zr(e){return Math.log(e)/Math.log(10)}function ki(e,t){var r=zr(e.min),n=zr(e.max),o=Math.abs(r)+Math.abs(n);return o/t}function Tp(e,t){return Math.max(e.min,Math.min(e.max,t))}var hf=Math.sign||function(e){return e>=0?1:-1},wi={min:.2,max:4},Dp=10,yf=.1,gf=.75;function it(e,t,r){e=e||{},this._enabled=!1,this._canvas=r,this._container=r._container,this._handleWheel=Je(this._handleWheel,this),this._totalDelta=0,this._scale=e.scale||gf;var n=this;t.on("canvas.mouseover",function(){n._init(e.enabled!==!1)}),t.on("canvas.mouseout",function(){n._init(!1)})}it.$inject=["config.zoomScroll","eventBus","canvas"];it.prototype.scroll=function(t){this._canvas.scroll(t)};it.prototype.reset=function(){this._canvas.zoom("fit-viewport")};it.prototype.zoom=function(t,r){var n=ki(wi,Dp*2);this._totalDelta+=t,Math.abs(this._totalDelta)>yf&&(this._zoom(t,r,n),this._totalDelta=0)};it.prototype._handleWheel=function(t){if(this._enabled){var r=this._container;t.preventDefault();var n=t.ctrlKey||vs()&&t.metaKey,o=t.shiftKey,i=-1*this._scale,a;if(n?i*=t.deltaMode===0?.02:.32:i*=t.deltaMode===0?1:16,n){var p=r.getBoundingClientRect(),d={x:t.clientX-p.left,y:t.clientY-p.top};a=Math.sqrt(Math.pow(t.deltaY,2)+Math.pow(t.deltaX,2))*hf(t.deltaY)*i,this.zoom(a,d)}else o?a={dx:i*t.deltaY,dy:0}:a={dx:i*t.deltaX,dy:i*t.deltaY},this.scroll(a)}};it.prototype.stepZoom=function(t,r){var n=ki(wi,Dp);this._zoom(t,r,n)};it.prototype._zoom=function(e,t,r){var n=this._canvas,o=e>0?1:-1,i=zr(n.zoom()),a=Math.round(i/r)*r;a+=r*o;var p=Math.pow(10,a);n.zoom(Tp(wi,p),t)};it.prototype.toggle=function(t){var r=this._container,n=this._handleWheel,o=this._enabled;return typeof t>"u"&&(t=!o),o!==t&<[t?"bind":"unbind"](r,"wheel",n,!1),this._enabled=t,t};it.prototype._init=function(e){this.toggle(e)};var lo={__init__:["zoomScroll"],zoomScroll:["type",it]};import vf from"next/dynamic.js";import Mp,{forwardRef as kf,useEffect as wf,useImperativeHandle as bf,useRef as bi}from"react";var xf={canvas:{autoFocus:!0}},Ef={Critical:"rgb(255, 0, 0)",Warning:"rgb(255, 220, 0)",Stable:"rgb(50, 205, 50)"};function Cf(e,t){let r=bi(null),n=bi(new Xt({bpmnRenderer:{defaultFillColor:"var(--asdk-bv-background-color)",defaultStrokeColor:"var(--asdk-bv-foreground-color)"},additionalModules:[lo,po,gr,ao],...xf})),o=bi({});return bf(t,()=>({getOverlays(){return n.current.get("overlays")},getElementRegistry(){return n.current.get("elementRegistry")},addMarker(i,a){n.current.get("canvas")?.addMarker(i,a)},removeMarker(i,a){n.current.get("canvas")?.removeMarker(i,a)},hasMarker(i,a){return n.current.get("canvas")?.hasMarker(i,a)},showHeatmap(i){let a=n.current.get("elementRegistry");if(a)for(let[p,d]of Object.entries(i)){let u=a.get(p);if(!u)continue;let m=a.getGraphics(u);if(!m)continue;let g=m.querySelector(".djs-visual > :first-child"),E=m.querySelector(".djs-visual > :nth-child(2)");if(!g)continue;let _=m.ownerSVGElement;if(!_)return;let A=`heatmap-gradient-${p}`,k=_.querySelector(`#${A}`);k&&k.remove();let L=_.querySelector("defs")||(()=>{let y=document.createElementNS("http://www.w3.org/2000/svg","defs");return _.insertBefore(y,_.firstChild),y})(),z=document.createElementNS("http://www.w3.org/2000/svg","radialGradient");z.setAttribute("id",A),z.setAttribute("cx","50%"),z.setAttribute("cy","50%"),z.setAttribute("r","90%"),z.setAttribute("fx","50%"),z.setAttribute("fy","50%");let q=Ef[d];[{offset:"0%",color:q},{offset:"50%",color:q},{offset:"100%",color:q}].forEach(({offset:y,color:I})=>{let D=document.createElementNS("http://www.w3.org/2000/svg","stop");D.setAttribute("offset",y),D.setAttribute("stop-color",I),z.appendChild(D)}),L.appendChild(z),g.classList.forEach(y=>{y.startsWith("heatmap-")&&g.classList.remove(y)}),E&&(E.style.fill="#1d1d1d"),g.classList.add(`heatmap-${d.toLowerCase()}`),g.style.fill=`url(#${A})`}},clearHeatmap(i){let a=n.current.get("elementRegistry");if(a)for(let p of i){let d=a.get(p);if(!d)continue;let u=a.getGraphics(d);if(!u)continue;let m=u.querySelector(".djs-visual > :first-child"),g=u.querySelector(".djs-visual > :nth-child(2)");if(m){if(m.classList.forEach(k=>{k.startsWith("heatmap-")&&m.classList.remove(k)}),g&&m){let k=m.style.stroke;g.style.fill=k}m.style.fill=o.current[p]||""}let E=u.ownerSVGElement;if(!E)continue;let _=`heatmap-gradient-${d.id}`,A=E.querySelector(`#${_}`);A&&A.remove()}}}),[n.current,r.current]),wf(()=>{if(!r.current)return;let i=n.current;i.attachTo(r.current);let a=i.get("canvas"),p=d=>{e.onSelectionChanged?.(d.newSelection)};return i.importXML(e.xml).then(()=>{let d=a.viewbox(),u={x:d.outer.width/2,y:d.outer.height/2};a.zoom("fit-viewport",u),e.onImportDone?.(),i.on("selection.changed",p);let m=i.get("elementRegistry");m.forEach(_=>{let A=m.getGraphics(_);if(!A)return;let k=A.querySelector(".djs-visual > :first-child");k&&(o.current[_.id]=k.style.fill||k.getAttribute("fill")||"")});let{preselectedElementIds:g}=e;if(!g||g.length===0)return;let E=m.filter(_=>g.includes(_.id)).sort((_,A)=>g.indexOf(_.id)-g.indexOf(A.id));i.get("selection").select(E??[])}).catch(d=>{console.error(`[@5minds/processcube_app_sdk:BPMNViewer] Error while importing BPMN XML: "${d.message}`)}),()=>{i.off("selection.changed",p),i.detach()}},[e.xml,e.preselectedElementIds]),Mp.createElement("div",{ref:r,className:Pp("app-sdk-bpmn-viewer","app-sdk-h-full",e.className)})}var xi=kf(Cf);function Nf(e){return Mp.createElement(xi,{...e,ref:e.viewerRef})}var Z0=vf(()=>Promise.resolve(Nf),{ssr:!1});import Tf from"next/dynamic.js";import{renderToString as Wr}from"react-dom/server.js";import{forwardRef as Df}from"react";import Oe,{useEffect as Gr,useImperativeHandle as Mf,useRef as Ci,useState as qr}from"react";import Sf from"react-markdown";import _f from"rehype-autolink-headings";import If from"rehype-raw";import Pf from"rehype-slug";import Ff from"remark-gfm";import Rp from"react";function Ei(e){return Rp.createElement("div",{className:"app-sdk-absolute app-sdk-w-full app-sdk-h-full app-sdk-overflow-y-auto app-sdk-scroll-p-4 app-sdk-scroll-smooth app-sdk-scroll-shadow"},Rp.createElement(Sf,{remarkPlugins:[Ff],rehypePlugins:[If,Pf,[_f,{behavior:"wrap"}]],className:"app-sdk-markdown lg:app-sdk-mx-40 md:app-sdk-mx-20 app-sdk-mx-10"},e.documentation??""))}import Jt from"react";var Op=4,co=class extends Jt.Component{static defaultProps={customClassName:"",vertical:!1,percentage:!1,primaryIndex:0,primaryMinSize:0,secondaryDefaultSize:null,secondaryInitialSize:null,secondaryMinSize:0,onDragStart:null,onDragEnd:null,onSizeChanged:null,children:[]};container;splitter;constructor(t){super(t),this.handleResize=this.handleResize.bind(this),this.handleMouseMove=this.handleMouseMove.bind(this),this.handleMouseUp=this.handleMouseUp.bind(this),this.handleTouchMove=this.handleTouchMove.bind(this),this.handleSplitterMouseDown=this.handleSplitterMouseDown.bind(this),this.handleSplitterDoubleClick=this.handleSplitterDoubleClick.bind(this),this.state={lastMouseDown:0,secondaryPaneSize:t.secondaryInitialSize||0,resizing:!1}}componentDidMount(){window.addEventListener("resize",this.handleResize),document.addEventListener("mouseup",this.handleMouseUp),document.addEventListener("mousemove",this.handleMouseMove),document.addEventListener("touchend",this.handleMouseUp),document.addEventListener("touchmove",this.handleTouchMove);let t;if(this.props.secondaryInitialSize!=null)t=this.props.secondaryInitialSize;else{let r=this.container.getBoundingClientRect(),n;this.splitter?n=this.splitter.getBoundingClientRect():n={width:Op,height:Op},t=this.getSecondaryPaneSize(r,n,{left:r.left+(r.width-n.width)/2,top:r.top+(r.height-n.height)/2},!1)}this.setSecondaryPaneSize(t)}componentDidUpdate(t,r){r.secondaryPaneSize!==this.state.secondaryPaneSize&&this.props.onSizeChanged&&this.props.onSizeChanged(this.state.secondaryPaneSize),r.resizing!==this.state.resizing&&(this.state.resizing?this.props.onDragStart&&this.props.onDragStart(r.secondaryPaneSize):this.props.onDragEnd&&this.props.onDragEnd(r.secondaryPaneSize,this.state.secondaryPaneSize))}componentWillUnmount(){window.removeEventListener("resize",this.handleResize),document.removeEventListener("mouseup",this.handleMouseUp),document.removeEventListener("mousemove",this.handleMouseMove),document.removeEventListener("touchend",this.handleMouseUp),document.removeEventListener("touchmove",this.handleTouchMove)}clearSelection(){if(document.body.createTextRange){let t=document.body.createTextRange();t.collapse(),t.select()}else if(window.getSelection){let t=window.getSelection();if(t==null)return;t.empty?t.empty():t.removeAllRanges&&t.removeAllRanges()}else document.selection&&document.selection.empty()}getSecondaryPaneSize(t,r,n,o){let i=0,a=0,p=0;this.props.vertical?(i=t.height,a=r.height,p=n.top-t.top):(i=t.width,a=r.width,p=n.left-t.left),o&&(p-=a/2),p<0?p=0:p>i-a&&(p=i-a);let d;this.props.primaryIndex===1?d=p:d=i-a-p;let u=i-a-d;return this.props.percentage&&(d=d*100/i,u=u*100/i,a=a*100/i,i=100),u<this.props.primaryMinSize?d=Math.max(d-(this.props.primaryMinSize-u),0):d<this.props.secondaryMinSize&&(d=Math.min(i-a-this.props.primaryMinSize,this.props.secondaryMinSize)),d}setSecondaryPaneSize(t){this.setState({secondaryPaneSize:t})}maximizeSecondaryPane(){if(this.props.percentage)this.setSecondaryPaneSize(100-this.props.primaryMinSize);else throw new Error("maximizeSecondaryPane() is only supported in SplitterLayout with prop `percentage`")}isReset(){let t=this.props.secondaryDefaultSize||this.props.secondaryMinSize;return this.state.secondaryPaneSize===t}reset(){let t=this.props.secondaryDefaultSize||this.props.secondaryMinSize;this.setSecondaryPaneSize(t)}handleResize(){if(this.splitter&&!this.props.percentage){let t=this.container.getBoundingClientRect(),r=this.splitter.getBoundingClientRect(),n=this.getSecondaryPaneSize(t,r,{left:r.left,top:r.top},!1);this.setState({secondaryPaneSize:n})}}handleMouseMove(t){if(this.state.resizing){let r=this.container.getBoundingClientRect(),n=this.splitter.getBoundingClientRect(),o=this.getSecondaryPaneSize(r,n,{left:t.clientX,top:t.clientY},!0);this.clearSelection(),this.setState({secondaryPaneSize:o})}}handleTouchMove(t){this.handleMouseMove(t.changedTouches[0])}handleSplitterMouseDown(t){t.preventDefault(),this.clearSelection(),this.setState({resizing:!0})}handleSplitterDoubleClick(){let t=this.props.secondaryDefaultSize||this.props.secondaryMinSize;this.state.secondaryPaneSize===t?this.setSecondaryPaneSize(Math.floor(t*1.5)):this.setSecondaryPaneSize(t)}handleMouseUp(){this.setState(t=>t.resizing?{resizing:!1}:null)}render(){let t="app-sdk-splitter-layout";this.props.customClassName&&(t+=` ${this.props.customClassName}`),this.props.vertical&&(t+=" app-sdk-splitter-layout-vertical"),this.state.resizing&&(t+=" layout-changing");let r=Jt.Children.toArray(this.props.children).slice(0,2);r.length===0&&r.push(Jt.createElement("div",null));let n=[],o=this.props.primaryIndex!==0&&this.props.primaryIndex!==1?0:this.props.primaryIndex;for(let i=0;i<r.length;++i){let a=!0,p;r.length>1&&i!==o&&(a=!1,p=this.state.secondaryPaneSize),n.push(Jt.createElement(Af,{vertical:this.props.vertical,percentage:this.props.percentage,primary:a,size:p},r[i]))}return Jt.createElement("div",{className:t,ref:i=>{this.container=i}},n[0],n.length>1&&Jt.createElement("div",{role:"separator",className:"app-sdk-layout-splitter"},Jt.createElement("div",{className:"app-sdk-layout-splitter__inner",ref:i=>{this.splitter=i},onMouseDown:this.handleSplitterMouseDown,onTouchStart:this.handleSplitterMouseDown,onDoubleClick:this.handleSplitterDoubleClick})),n.length>1&&n[1])}};function Af(e={vertical:!1,primary:!1,size:0,percentage:!1,children:[]}){let t=e.size||0,r=e.percentage?"%":"px",n="app-sdk-layout-pane",o={};return e.primary?n+=" app-sdk-layout-pane-primary":e.vertical?o.height=`${t}${r}`:o.width=`${t}${r}`,Jt.createElement("div",{className:n,style:o},e.children)}var Yr=30;function Rf(e,t){let[r,n]=qr([]),o=Ci(null),i=Ci(null),[a,p]=qr([]),[d,u]=qr(!1),[m,g]=qr([]),[E,_]=qr(Yr),A=Ci(!0);return Gr(()=>{if(!window)return;let k=new URLSearchParams(window.location.search),L=k.getAll("selected");if(g(L),!k.has("splitterSize"))return;let z=parseFloat(k.get("splitterSize"));isNaN(z)||z===Yr||(_(z),i.current?.setSecondaryPaneSize(z))},[]),Gr(()=>{if(!d)return;let k=new URLSearchParams(window.location.search);E!==Yr?k.set("splitterSize",E.toString()):k.delete("splitterSize"),k.delete("selected"),a.length>0&&a.forEach(q=>k.append("selected",q.id));let L=decodeURIComponent(window.location.hash.slice(1)),z=L.length>0?document.getElementById(L):null;window.history.replaceState(null,"",`?${k.toString()}${z?window.location.hash:""}`),window.location.hash&&(window.location.hash=window.location.hash),z?.scrollIntoView()},[a,E]),Gr(()=>{if(!d)return;r.forEach(q=>q());let k=o.current?.getOverlays();o.current?.getElementRegistry()?.filter(Bp)?.forEach(q=>{k?.add(q.id,Lf(q))})},[d,e.showHeatmap,e.heatmapService,e.heatmapType]),Gr(()=>{if(!e.heatmapService||!o.current||!d||!e.heatmapType)return;let k=e.showHeatmap===!0,L;A.current?(L=e.heatmapService.hasRuntimeEntry()?"runtime":"processcosts",A.current=!1):L=e.heatmapType,e.heatmapService.applyHeatmap(k,L,{viewer:o.current})},[d,e.showHeatmap,e.heatmapService,e.heatmapType]),Gr(()=>{e.setSelectedElementIds?.(a.map(k=>k.id))},[a]),Mf(t,()=>({bpmnViewerRef:{getElementRegistry(){return o.current?.getElementRegistry()},getOverlays(){return o.current?.getOverlays()},addMarker(k,L){o.current?.addMarker(k,L)},removeMarker(k,L){o.current?.removeMarker(k,L)},hasMarker(k,L){return o.current?.hasMarker(k,L)},showHeatmap(k){o.current?.showHeatmap(k)},clearHeatmap(k){o.current?.clearHeatmap(k)},onImportDone(k){d?k():n(L=>[...L,k])}}}),[o.current]),Oe.createElement(co,{ref:i,vertical:!0,percentage:!0,secondaryInitialSize:Yr,secondaryDefaultSize:Yr,onDragEnd:(k,L)=>_(Math.round(L))},Oe.createElement(xi,{ref:o,xml:e.xml,preselectedElementIds:m,onSelectionChanged:k=>p([...k]),onImportDone:()=>u(!0)}),Oe.createElement("div",{className:"app-sdk-flex app-sdk-justify-center app-sdk-h-full app-sdk-bg-[color:var(--asdk-ddi-background-color)]"},Oe.createElement(Of,{elements:a})))}function Of({elements:e}){if(e.length===0)return Oe.createElement("p",{className:"app-sdk-m-0 app-sdk-p-6"},"Please select an element");let t=e.filter(Bp);if(t.length===0)return Oe.createElement("p",{className:"app-sdk-m-0 app-sdk-p-6"},"No documentation available");if(t.length===1){let r=oe(t[0])?.documentation?.[0]?.text;return Oe.createElement(Ei,{documentation:r})}return Oe.createElement(Ei,{documentation:t.map(r=>oe(r)?.documentation?.[0]?.text).join(`
|
|
9
|
+
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="`+d.width+'" height="'+d.height+'" viewBox="'+d.x+" "+d.y+" "+d.width+" "+d.height+'" version="1.1">'+p+a+"</svg>"}catch(n){r=n}if(this._emit("saveSVG.done",{error:r,svg:t}),r)throw r;return{svg:t}};he.prototype._setDefinitions=function(e){this._definitions=e};he.prototype.getModules=function(){return this._modules};he.prototype.clear=function(){this.getDefinitions()&&kt.prototype.clear.call(this)};he.prototype.destroy=function(){kt.prototype.destroy.call(this),fr(this._container)};he.prototype.on=function(e,t,r,n){return this.get("eventBus").on(e,t,r,n)};he.prototype.off=function(e,t){this.get("eventBus").off(e,t)};he.prototype.attachTo=function(e){if(!e)throw new Error("parentNode required");this.detach(),e.get&&e.constructor.prototype.jquery&&(e=e.get(0)),typeof e=="string"&&(e=Le(e)),e.appendChild(this._container),this._emit("attach",{}),this.get("canvas").resized()};he.prototype.getDefinitions=function(){return this._definitions};he.prototype.detach=function(){let e=this._container,t=e.parentNode;t&&(this._emit("detach",{}),t.removeChild(e))};he.prototype._init=function(e,t,r){let n=r.modules||this.getModules(r),o=r.additionalModules||[],i=[{bpmnjs:["value",this],moddle:["value",t]}],a=[].concat(i,n,o),p=R(Pa(r,["additionalModules"]),{canvas:R({},r.canvas,{container:e}),modules:a});kt.call(this,p),r&&r.container&&this.attachTo(r.container)};he.prototype._emit=function(e,t){return this.get("eventBus").fire(e,t)};he.prototype._createContainer=function(e){let t=Re('<div class="bjs-container"></div>');return Se(t,{width:kp(e.width),height:kp(e.height),position:e.position}),t};he.prototype._createModdle=function(e){let t=R({},this._moddleExtensions,e.moddleExtensions);return new mp(t)};he.prototype._modules=[];function oo(e,t){return e.warnings=t,e}function rf(e){let r=/unparsable content <([^>]+)> detected([\s\S]*)$/.exec(e.message);return r&&(e.message="unparsable content <"+r[1]+"> detected; this may indicate an invalid BPMN 2.0 diagram file"+r[2]),e}var nf={width:"100%",height:"100%",position:"relative"};function kp(e){return e+(Ge(e)?"px":"")}function of(e,t){return t&&Ce(e.diagrams,function(r){return r.id===t})||null}function af(e){let r='<a href="http://bpmn.io" target="_blank" class="bjs-powered-by" title="Powered by bpmn.io" >'+fi+"</a>",n=Re(r);Se(Le("svg",n),mi),Se(n,hi,{position:"absolute",bottom:"15px",right:"15px",zIndex:"100"}),e.appendChild(n),lt.bind(n,"click",function(o){vp(),o.preventDefault()})}function Xt(e){he.call(this,e)}(0,bp.default)(Xt,he);Xt.prototype._modules=[ss,gs,Un,gr,Dn];Xt.prototype._moddleExtensions={};var sf=500,pf=1e3;function Mt(e,t){this._eventBus=e,this.offset=5;var r=t.cls("djs-outline",["no-fill"]),n=this;function o(i){var a=Q("rect");return J(a,R({x:0,y:0,rx:4,width:100,height:100},r)),a}e.on(["shape.added","shape.changed"],sf,function(i){var a=i.element,p=i.gfx,d=Le(".djs-outline",p);d||(d=n.getOutline(a)||o(p),pe(p,d)),n.updateShapeOutline(d,a)}),e.on(["connection.added","connection.changed"],function(i){var a=i.element,p=i.gfx,d=Le(".djs-outline",p);d||(d=o(p),pe(p,d)),n.updateConnectionOutline(d,a)})}Mt.prototype.updateShapeOutline=function(e,t){var r=!1,n=this._getProviders();n.length&&O(n,function(o){r=r||o.updateOutline(t,e)}),r||J(e,{x:-this.offset,y:-this.offset,width:t.width+this.offset*2,height:t.height+this.offset*2})};Mt.prototype.updateConnectionOutline=function(e,t){var r=ct(t);J(e,{x:r.x-this.offset,y:r.y-this.offset,width:r.width+this.offset*2,height:r.height+this.offset*2})};Mt.prototype.registerProvider=function(e,t){t||(t=e,e=pf),this._eventBus.on("outline.getProviders",e,function(r){r.providers.push(t)})};Mt.prototype._getProviders=function(){var e=this._eventBus.createEvent({type:"outline.getProviders",providers:[]});return this._eventBus.fire(e),e.providers};Mt.prototype.getOutline=function(e){var t,r=this._getProviders();return O(r,function(n){at(n.getOutline)&&(t=t||n.getOutline(e))}),t};Mt.$inject=["eventBus","styles","elementRegistry"];var io=6;function Hr(e,t,r){this._canvas=t;var n=this;e.on("element.changed",function(o){r.isSelected(o.element)&&n._updateMultiSelectionOutline(r.get())}),e.on("selection.changed",function(o){var i=o.newSelection;n._updateMultiSelectionOutline(i)})}Hr.prototype._updateMultiSelectionOutline=function(e){var t=this._canvas.getLayer("selectionOutline");Ro(t);var r=e.length>1,n=this._canvas.getContainer();if(Be(n)[r?"add":"remove"]("djs-multi-select"),!!r){var o=lf(ct(e)),i=Q("rect");J(i,R({rx:3},o)),Be(i).add("djs-selection-outline"),pe(t,i)}};Hr.$inject=["eventBus","canvas","selection"];function lf(e){return{x:e.x-io,y:e.y-io,width:e.width+io*2,height:e.height+io*2}}var xp={__depends__:[gr],__init__:["outline","multiSelectionOutline"],outline:["type",Mt],multiSelectionOutline:["type",Hr]};var Ep="M44.7648 11.3263L36.9892 2.64074C36.0451 1.58628 34.5651 0.988708 33.1904 0.988708H5.98667C3.22688 0.988708 0.989624 3.34892 0.989624 6.26039V55.0235C0.989624 57.9349 3.22688 60.2952 5.98667 60.2952H40.966C43.7257 60.2952 45.963 57.9349 45.963 55.0235V14.9459C45.963 13.5998 45.6407 12.3048 44.7648 11.3263Z",Cp="M1.03845 48.1347C1.03845 49.3511 1.07295 50.758 1.38342 52.064C1.69949 53.3938 2.32428 54.7154 3.56383 55.6428C6.02533 57.4841 10.1161 58.7685 14.8212 59.6067C19.5772 60.4538 25.1388 60.8738 30.6831 60.8738C36.2276 60.8738 41.7891 60.4538 46.545 59.6067C51.2504 58.7687 55.3412 57.4842 57.8028 55.6429C59.0424 54.7156 59.6673 53.3938 59.9834 52.064C60.2938 50.7579 60.3285 49.351 60.3285 48.1344V13.8415C60.3285 12.6249 60.2938 11.218 59.9834 9.91171C59.6673 8.58194 59.0423 7.2602 57.8027 6.33294C55.341 4.49168 51.2503 3.20723 46.545 2.36914C41.7891 1.522 36.2276 1.10204 30.6831 1.10205C25.1388 1.10206 19.5772 1.52206 14.8213 2.36923C10.1162 3.20734 6.02543 4.49183 3.5639 6.33314C2.32433 7.26038 1.69951 8.58206 1.38343 9.91181C1.07295 11.2179 1.03845 12.6247 1.03845 13.8411V48.1347Z",Np={width:36,height:50},Sp={width:50,height:50};function yi(e,t,r){return Q("path",{d:e,strokeWidth:2,transform:`translate(${t.x}, ${t.y})`,...r})}var ot=5;function Er(e,t){this._styles=t,e.registerProvider(this)}Er.$inject=["outline","styles"];Er.prototype.getOutline=function(e){let t=this._styles.cls("djs-outline",["no-fill"]);var r;if(Ma(e))return r=Q("rect"),J(r,R({x:-ot,y:-ot,rx:4,width:e.width+ot*2,height:e.height+ot*2},t)),r;if(!jt(e))return U(e,"bpmn:Gateway")?(r=Q("rect"),R(r.style,{"transform-box":"fill-box",transform:"rotate(45deg)","transform-origin":"center"}),J(r,R({x:2,y:2,rx:4,width:e.width-4,height:e.height-4},t))):sr(e,["bpmn:Task","bpmn:SubProcess","bpmn:Group","bpmn:CallActivity"])?(r=Q("rect"),J(r,R({x:-ot,y:-ot,rx:14,width:e.width+ot*2,height:e.height+ot*2},t))):U(e,"bpmn:EndEvent")?(r=Q("circle"),J(r,R({cx:e.width/2,cy:e.height/2,r:e.width/2+ot+1},t))):U(e,"bpmn:Event")?(r=Q("circle"),J(r,R({cx:e.width/2,cy:e.height/2,r:e.width/2+ot},t))):U(e,"bpmn:DataObjectReference")&&_p(e,"bpmn:DataObjectReference")?r=yi(Ep,{x:-6,y:-6},t):U(e,"bpmn:DataStoreReference")&&_p(e,"bpmn:DataStoreReference")&&(r=yi(Cp,{x:-6,y:-6},t)),r};Er.prototype.updateOutline=function(e,t){if(!jt(e))return sr(e,["bpmn:SubProcess","bpmn:Group"])?(J(t,{width:e.width+ot*2,height:e.height+ot*2}),!0):!!sr(e,["bpmn:Event","bpmn:Gateway","bpmn:DataStoreReference","bpmn:DataObjectReference"])};function _p(e,t){var r;return t==="bpmn:DataObjectReference"?r=Np:t==="bpmn:DataStoreReference"&&(r=Sp),e.width===r.width&&e.height===r.height}var ao={__depends__:[xp],__init__:["outlineProvider"],outlineProvider:["type",Er]};function Ip(e){var t,r,n="";if(typeof e=="string"||typeof e=="number")n+=e;else if(typeof e=="object")if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(r=Ip(e[t]))&&(n&&(n+=" "),n+=r)}else for(r in e)e[r]&&(n&&(n+=" "),n+=r);return n}function df(){for(var e,t,r=0,n="",o=arguments.length;r<o;r++)(e=arguments[r])&&(t=Ip(e))&&(n&&(n+=" "),n+=t);return n}var Pp=df;var cf=/^djs-cursor-.*$/;function gi(e){var t=Pt(document.body);t.removeMatching(cf),e&&t.add("djs-cursor-"+e)}function Fp(){gi(null)}var uf=5e3;function Ap(e,t){t=t||"element.click";function r(){return!1}return e.once(t,uf,r),function(){e.off(t,r)}}function vi(e,t){return{x:e.x-t.x,y:e.y-t.y}}var ff=15;function so(e,t){var r;function n(p){return a(p.originalEvent)}e.on("canvas.focus.changed",function(p){p.focused?e.on("element.mousedown",500,n):e.off("element.mousedown",n)});function o(p){var d=r.start,u=r.button,m=qo(p),g=vi(m,d);if(!r.dragging&&mf(g)>ff&&(r.dragging=!0,u===0&&Ap(e),gi("grab")),r.dragging){var E=r.last||r.start;g=vi(m,E),t.scroll({dx:g.x,dy:g.y}),r.last=m}p.preventDefault()}function i(p){lt.unbind(document,"mousemove",o),lt.unbind(document,"mouseup",i),r=null,Fp()}function a(p){if(!jo(p.target,".djs-draggable")){var d=p.button;if(!(d>=2||p.ctrlKey||p.shiftKey||p.altKey))return r={button:d,start:qo(p)},lt.bind(document,"mousemove",o),lt.bind(document,"mouseup",i),!0}}this.isActive=function(){return!!r}}so.$inject=["eventBus","canvas"];function mf(e){return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}var po={__init__:["moveCanvas"],moveCanvas:["type",so]};function zr(e){return Math.log(e)/Math.log(10)}function ki(e,t){var r=zr(e.min),n=zr(e.max),o=Math.abs(r)+Math.abs(n);return o/t}function Tp(e,t){return Math.max(e.min,Math.min(e.max,t))}var hf=Math.sign||function(e){return e>=0?1:-1},wi={min:.2,max:4},Dp=10,yf=.1,gf=.75;function it(e,t,r){e=e||{},this._enabled=!1,this._canvas=r,this._container=r._container,this._handleWheel=Je(this._handleWheel,this),this._totalDelta=0,this._scale=e.scale||gf;var n=this;t.on("canvas.mouseover",function(){n._init(e.enabled!==!1)}),t.on("canvas.mouseout",function(){n._init(!1)})}it.$inject=["config.zoomScroll","eventBus","canvas"];it.prototype.scroll=function(t){this._canvas.scroll(t)};it.prototype.reset=function(){this._canvas.zoom("fit-viewport")};it.prototype.zoom=function(t,r){var n=ki(wi,Dp*2);this._totalDelta+=t,Math.abs(this._totalDelta)>yf&&(this._zoom(t,r,n),this._totalDelta=0)};it.prototype._handleWheel=function(t){if(this._enabled){var r=this._container;t.preventDefault();var n=t.ctrlKey||vs()&&t.metaKey,o=t.shiftKey,i=-1*this._scale,a;if(n?i*=t.deltaMode===0?.02:.32:i*=t.deltaMode===0?1:16,n){var p=r.getBoundingClientRect(),d={x:t.clientX-p.left,y:t.clientY-p.top};a=Math.sqrt(Math.pow(t.deltaY,2)+Math.pow(t.deltaX,2))*hf(t.deltaY)*i,this.zoom(a,d)}else o?a={dx:i*t.deltaY,dy:0}:a={dx:i*t.deltaX,dy:i*t.deltaY},this.scroll(a)}};it.prototype.stepZoom=function(t,r){var n=ki(wi,Dp);this._zoom(t,r,n)};it.prototype._zoom=function(e,t,r){var n=this._canvas,o=e>0?1:-1,i=zr(n.zoom()),a=Math.round(i/r)*r;a+=r*o;var p=Math.pow(10,a);n.zoom(Tp(wi,p),t)};it.prototype.toggle=function(t){var r=this._container,n=this._handleWheel,o=this._enabled;return typeof t>"u"&&(t=!o),o!==t&<[t?"bind":"unbind"](r,"wheel",n,!1),this._enabled=t,t};it.prototype._init=function(e){this.toggle(e)};var lo={__init__:["zoomScroll"],zoomScroll:["type",it]};import vf from"next/dynamic.js";import Mp,{forwardRef as kf,useEffect as wf,useImperativeHandle as bf,useRef as bi}from"react";var xf={canvas:{autoFocus:!0}},Ef={Critical:"rgb(255, 0, 0)",Warning:"rgb(255, 220, 0)",Stable:"rgb(50, 205, 50)"};function Cf(e,t){let r=bi(null),n=bi(new Xt({bpmnRenderer:{defaultFillColor:"var(--asdk-bv-background-color)",defaultStrokeColor:"var(--asdk-bv-foreground-color)"},additionalModules:[lo,po,gr,ao],...xf})),o=bi({});return bf(t,()=>({getOverlays(){return n.current.get("overlays")},getElementRegistry(){return n.current.get("elementRegistry")},addMarker(i,a){n.current.get("canvas")?.addMarker(i,a)},removeMarker(i,a){n.current.get("canvas")?.removeMarker(i,a)},hasMarker(i,a){return n.current.get("canvas")?.hasMarker(i,a)},showHeatmap(i){let a=n.current.get("elementRegistry");if(a)for(let[p,d]of Object.entries(i)){let u=a.get(p);if(!u)continue;let m=a.getGraphics(u);if(!m)continue;let g=m.querySelector(".djs-visual > :first-child"),E=m.querySelector(".djs-visual > :nth-child(2)");if(!g)continue;let _=m.ownerSVGElement;if(!_)return;let A=`heatmap-gradient-${p}`,k=_.querySelector(`#${A}`);k&&k.remove();let L=_.querySelector("defs")||(()=>{let y=document.createElementNS("http://www.w3.org/2000/svg","defs");return _.insertBefore(y,_.firstChild),y})(),z=document.createElementNS("http://www.w3.org/2000/svg","radialGradient");z.setAttribute("id",A),z.setAttribute("cx","50%"),z.setAttribute("cy","50%"),z.setAttribute("r","90%"),z.setAttribute("fx","50%"),z.setAttribute("fy","50%");let q=Ef[d];[{offset:"0%",color:q},{offset:"50%",color:q},{offset:"100%",color:q}].forEach(({offset:y,color:I})=>{let D=document.createElementNS("http://www.w3.org/2000/svg","stop");D.setAttribute("offset",y),D.setAttribute("stop-color",I),z.appendChild(D)}),L.appendChild(z),g.classList.forEach(y=>{y.startsWith("heatmap-")&&g.classList.remove(y)}),E&&(E.style.fill="#1d1d1d"),g.classList.add(`heatmap-${d.toLowerCase()}`),g.style.fill=`url(#${A})`}},clearHeatmap(i){let a=n.current.get("elementRegistry");if(a)for(let p of i){let d=a.get(p);if(!d)continue;let u=a.getGraphics(d);if(!u)continue;let m=u.querySelector(".djs-visual > :first-child"),g=u.querySelector(".djs-visual > :nth-child(2)");if(m){if(m.classList.forEach(k=>{k.startsWith("heatmap-")&&m.classList.remove(k)}),g&&m){let k=m.style.stroke;g.style.fill=k}m.style.fill=o.current[p]||""}let E=u.ownerSVGElement;if(!E)continue;let _=`heatmap-gradient-${d.id}`,A=E.querySelector(`#${_}`);A&&A.remove()}}}),[n.current,r.current]),wf(()=>{if(!r.current)return;let i=n.current;i.attachTo(r.current);let a=i.get("canvas"),p=d=>{e.onSelectionChanged?.(d.newSelection)};return i.importXML(e.xml).then(()=>{let d=a.viewbox(),u={x:d.outer.width/2,y:d.outer.height/2};a.zoom("fit-viewport",u),e.onImportDone?.(),i.on("selection.changed",p);let m=i.get("elementRegistry");m.forEach(_=>{let A=m.getGraphics(_);if(!A)return;let k=A.querySelector(".djs-visual > :first-child");k&&(o.current[_.id]=k.style.fill||k.getAttribute("fill")||"")});let{preselectedElementIds:g}=e;if(!g||g.length===0)return;let E=m.filter(_=>g.includes(_.id)).sort((_,A)=>g.indexOf(_.id)-g.indexOf(A.id));i.get("selection").select(E??[])}).catch(d=>{console.error(`[@5minds/processcube_app_sdk:BPMNViewer] Error while importing BPMN XML: "${d.message}`)}),()=>{i.off("selection.changed",p),i.detach()}},[e.xml,e.preselectedElementIds]),Mp.createElement("div",{ref:r,className:Pp("app-sdk-bpmn-viewer","app-sdk-h-full",e.className)})}var xi=kf(Cf);function Nf(e){return Mp.createElement(xi,{...e,ref:e.viewerRef})}var Z0=vf(()=>Promise.resolve(Nf),{ssr:!1});import Tf from"next/dynamic.js";import{renderToString as Wr}from"react-dom/server";import{forwardRef as Df}from"react";import Oe,{useEffect as Gr,useImperativeHandle as Mf,useRef as Ci,useState as qr}from"react";import Sf from"react-markdown";import _f from"rehype-autolink-headings";import If from"rehype-raw";import Pf from"rehype-slug";import Ff from"remark-gfm";import Rp from"react";function Ei(e){return Rp.createElement("div",{className:"app-sdk-absolute app-sdk-w-full app-sdk-h-full app-sdk-overflow-y-auto app-sdk-scroll-p-4 app-sdk-scroll-smooth app-sdk-scroll-shadow"},Rp.createElement(Sf,{remarkPlugins:[Ff],rehypePlugins:[If,Pf,[_f,{behavior:"wrap"}]],className:"app-sdk-markdown lg:app-sdk-mx-40 md:app-sdk-mx-20 app-sdk-mx-10"},e.documentation??""))}import Jt from"react";var Op=4,co=class extends Jt.Component{static defaultProps={customClassName:"",vertical:!1,percentage:!1,primaryIndex:0,primaryMinSize:0,secondaryDefaultSize:null,secondaryInitialSize:null,secondaryMinSize:0,onDragStart:null,onDragEnd:null,onSizeChanged:null,children:[]};container;splitter;constructor(t){super(t),this.handleResize=this.handleResize.bind(this),this.handleMouseMove=this.handleMouseMove.bind(this),this.handleMouseUp=this.handleMouseUp.bind(this),this.handleTouchMove=this.handleTouchMove.bind(this),this.handleSplitterMouseDown=this.handleSplitterMouseDown.bind(this),this.handleSplitterDoubleClick=this.handleSplitterDoubleClick.bind(this),this.state={lastMouseDown:0,secondaryPaneSize:t.secondaryInitialSize||0,resizing:!1}}componentDidMount(){window.addEventListener("resize",this.handleResize),document.addEventListener("mouseup",this.handleMouseUp),document.addEventListener("mousemove",this.handleMouseMove),document.addEventListener("touchend",this.handleMouseUp),document.addEventListener("touchmove",this.handleTouchMove);let t;if(this.props.secondaryInitialSize!=null)t=this.props.secondaryInitialSize;else{let r=this.container.getBoundingClientRect(),n;this.splitter?n=this.splitter.getBoundingClientRect():n={width:Op,height:Op},t=this.getSecondaryPaneSize(r,n,{left:r.left+(r.width-n.width)/2,top:r.top+(r.height-n.height)/2},!1)}this.setSecondaryPaneSize(t)}componentDidUpdate(t,r){r.secondaryPaneSize!==this.state.secondaryPaneSize&&this.props.onSizeChanged&&this.props.onSizeChanged(this.state.secondaryPaneSize),r.resizing!==this.state.resizing&&(this.state.resizing?this.props.onDragStart&&this.props.onDragStart(r.secondaryPaneSize):this.props.onDragEnd&&this.props.onDragEnd(r.secondaryPaneSize,this.state.secondaryPaneSize))}componentWillUnmount(){window.removeEventListener("resize",this.handleResize),document.removeEventListener("mouseup",this.handleMouseUp),document.removeEventListener("mousemove",this.handleMouseMove),document.removeEventListener("touchend",this.handleMouseUp),document.removeEventListener("touchmove",this.handleTouchMove)}clearSelection(){if(document.body.createTextRange){let t=document.body.createTextRange();t.collapse(),t.select()}else if(window.getSelection){let t=window.getSelection();if(t==null)return;t.empty?t.empty():t.removeAllRanges&&t.removeAllRanges()}else document.selection&&document.selection.empty()}getSecondaryPaneSize(t,r,n,o){let i=0,a=0,p=0;this.props.vertical?(i=t.height,a=r.height,p=n.top-t.top):(i=t.width,a=r.width,p=n.left-t.left),o&&(p-=a/2),p<0?p=0:p>i-a&&(p=i-a);let d;this.props.primaryIndex===1?d=p:d=i-a-p;let u=i-a-d;return this.props.percentage&&(d=d*100/i,u=u*100/i,a=a*100/i,i=100),u<this.props.primaryMinSize?d=Math.max(d-(this.props.primaryMinSize-u),0):d<this.props.secondaryMinSize&&(d=Math.min(i-a-this.props.primaryMinSize,this.props.secondaryMinSize)),d}setSecondaryPaneSize(t){this.setState({secondaryPaneSize:t})}maximizeSecondaryPane(){if(this.props.percentage)this.setSecondaryPaneSize(100-this.props.primaryMinSize);else throw new Error("maximizeSecondaryPane() is only supported in SplitterLayout with prop `percentage`")}isReset(){let t=this.props.secondaryDefaultSize||this.props.secondaryMinSize;return this.state.secondaryPaneSize===t}reset(){let t=this.props.secondaryDefaultSize||this.props.secondaryMinSize;this.setSecondaryPaneSize(t)}handleResize(){if(this.splitter&&!this.props.percentage){let t=this.container.getBoundingClientRect(),r=this.splitter.getBoundingClientRect(),n=this.getSecondaryPaneSize(t,r,{left:r.left,top:r.top},!1);this.setState({secondaryPaneSize:n})}}handleMouseMove(t){if(this.state.resizing){let r=this.container.getBoundingClientRect(),n=this.splitter.getBoundingClientRect(),o=this.getSecondaryPaneSize(r,n,{left:t.clientX,top:t.clientY},!0);this.clearSelection(),this.setState({secondaryPaneSize:o})}}handleTouchMove(t){this.handleMouseMove(t.changedTouches[0])}handleSplitterMouseDown(t){t.preventDefault(),this.clearSelection(),this.setState({resizing:!0})}handleSplitterDoubleClick(){let t=this.props.secondaryDefaultSize||this.props.secondaryMinSize;this.state.secondaryPaneSize===t?this.setSecondaryPaneSize(Math.floor(t*1.5)):this.setSecondaryPaneSize(t)}handleMouseUp(){this.setState(t=>t.resizing?{resizing:!1}:null)}render(){let t="app-sdk-splitter-layout";this.props.customClassName&&(t+=` ${this.props.customClassName}`),this.props.vertical&&(t+=" app-sdk-splitter-layout-vertical"),this.state.resizing&&(t+=" layout-changing");let r=Jt.Children.toArray(this.props.children).slice(0,2);r.length===0&&r.push(Jt.createElement("div",null));let n=[],o=this.props.primaryIndex!==0&&this.props.primaryIndex!==1?0:this.props.primaryIndex;for(let i=0;i<r.length;++i){let a=!0,p;r.length>1&&i!==o&&(a=!1,p=this.state.secondaryPaneSize),n.push(Jt.createElement(Af,{vertical:this.props.vertical,percentage:this.props.percentage,primary:a,size:p},r[i]))}return Jt.createElement("div",{className:t,ref:i=>{this.container=i}},n[0],n.length>1&&Jt.createElement("div",{role:"separator",className:"app-sdk-layout-splitter"},Jt.createElement("div",{className:"app-sdk-layout-splitter__inner",ref:i=>{this.splitter=i},onMouseDown:this.handleSplitterMouseDown,onTouchStart:this.handleSplitterMouseDown,onDoubleClick:this.handleSplitterDoubleClick})),n.length>1&&n[1])}};function Af(e={vertical:!1,primary:!1,size:0,percentage:!1,children:[]}){let t=e.size||0,r=e.percentage?"%":"px",n="app-sdk-layout-pane",o={};return e.primary?n+=" app-sdk-layout-pane-primary":e.vertical?o.height=`${t}${r}`:o.width=`${t}${r}`,Jt.createElement("div",{className:n,style:o},e.children)}var Yr=30;function Rf(e,t){let[r,n]=qr([]),o=Ci(null),i=Ci(null),[a,p]=qr([]),[d,u]=qr(!1),[m,g]=qr([]),[E,_]=qr(Yr),A=Ci(!0);return Gr(()=>{if(!window)return;let k=new URLSearchParams(window.location.search),L=k.getAll("selected");if(g(L),!k.has("splitterSize"))return;let z=parseFloat(k.get("splitterSize"));isNaN(z)||z===Yr||(_(z),i.current?.setSecondaryPaneSize(z))},[]),Gr(()=>{if(!d)return;let k=new URLSearchParams(window.location.search);E!==Yr?k.set("splitterSize",E.toString()):k.delete("splitterSize"),k.delete("selected"),a.length>0&&a.forEach(q=>k.append("selected",q.id));let L=decodeURIComponent(window.location.hash.slice(1)),z=L.length>0?document.getElementById(L):null;window.history.replaceState(null,"",`?${k.toString()}${z?window.location.hash:""}`),window.location.hash&&(window.location.hash=window.location.hash),z?.scrollIntoView()},[a,E]),Gr(()=>{if(!d)return;r.forEach(q=>q());let k=o.current?.getOverlays();o.current?.getElementRegistry()?.filter(Bp)?.forEach(q=>{k?.add(q.id,Lf(q))})},[d,e.showHeatmap,e.heatmapService,e.heatmapType]),Gr(()=>{if(!e.heatmapService||!o.current||!d||!e.heatmapType)return;let k=e.showHeatmap===!0,L;A.current?(L=e.heatmapService.hasRuntimeEntry()?"runtime":"processcosts",A.current=!1):L=e.heatmapType,e.heatmapService.applyHeatmap(k,L,{viewer:o.current})},[d,e.showHeatmap,e.heatmapService,e.heatmapType]),Gr(()=>{e.setSelectedElementIds?.(a.map(k=>k.id))},[a]),Mf(t,()=>({bpmnViewerRef:{getElementRegistry(){return o.current?.getElementRegistry()},getOverlays(){return o.current?.getOverlays()},addMarker(k,L){o.current?.addMarker(k,L)},removeMarker(k,L){o.current?.removeMarker(k,L)},hasMarker(k,L){return o.current?.hasMarker(k,L)},showHeatmap(k){o.current?.showHeatmap(k)},clearHeatmap(k){o.current?.clearHeatmap(k)},onImportDone(k){d?k():n(L=>[...L,k])}}}),[o.current]),Oe.createElement(co,{ref:i,vertical:!0,percentage:!0,secondaryInitialSize:Yr,secondaryDefaultSize:Yr,onDragEnd:(k,L)=>_(Math.round(L))},Oe.createElement(xi,{ref:o,xml:e.xml,preselectedElementIds:m,onSelectionChanged:k=>p([...k]),onImportDone:()=>u(!0)}),Oe.createElement("div",{className:"app-sdk-flex app-sdk-justify-center app-sdk-h-full app-sdk-bg-[color:var(--asdk-ddi-background-color)]"},Oe.createElement(Of,{elements:a})))}function Of({elements:e}){if(e.length===0)return Oe.createElement("p",{className:"app-sdk-m-0 app-sdk-p-6"},"Please select an element");let t=e.filter(Bp);if(t.length===0)return Oe.createElement("p",{className:"app-sdk-m-0 app-sdk-p-6"},"No documentation available");if(t.length===1){let r=oe(t[0])?.documentation?.[0]?.text;return Oe.createElement(Ei,{documentation:r})}return Oe.createElement(Ei,{documentation:t.map(r=>oe(r)?.documentation?.[0]?.text).join(`
|
|
10
10
|
|
|
11
11
|
<hr />
|
|
12
12
|
|
|
13
13
|
`)})}var Kr=({showBackground:e})=>Oe.createElement("div",{title:"This element has documentation"},Oe.createElement("svg",{className:`${e?"app-sdk-bg-[color:var(--asdk-ddi-background-color)] app-sdk-p-[2px] app-sdk-rounded":""}`,xmlns:"http://www.w3.org/2000/svg",height:"16",viewBox:"0 0 448 512"},Oe.createElement("path",{d:"M64 0C28.7 0 0 28.7 0 64L0 448l0 0c0 35.3 28.7 64 64 64H432c8.8 0 16-7.2 16-16s-7.2-16-16-16H416V413.3c18.6-6.6 32-24.4 32-45.3V48c0-26.5-21.5-48-48-48H64zM384 416v64H64c-17.7 0-32-14.3-32-32s14.3-32 32-32H384zM64 384c-11.7 0-22.6 3.1-32 8.6L32 64c0-17.7 14.3-32 32-32H96V384H64zm64 0V32H400c8.8 0 16 7.2 16 16V368c0 8.8-7.2 16-16 16H128zm48-240c0 8.8 7.2 16 16 16H352c8.8 0 16-7.2 16-16s-7.2-16-16-16H192c-8.8 0-16 7.2-16 16zm0 96c0 8.8 7.2 16 16 16H352c8.8 0 16-7.2 16-16s-7.2-16-16-16H192c-8.8 0-16 7.2-16 16z"}))),Bf=["bpmn:DataInputAssociation","bpmn:DataOutputAssociation","bpmn:SequenceFlow","label"],Xr={DEFAULT:{top:4,right:21},PARTICIPANT:{top:3,left:3},ANNOTATION:{bottom:10,left:10},GATEWAY:{bottom:17,right:17},OTHER:{bottom:12,right:12}};function Lf(e){return e.type.endsWith("Task")||e.type==="bpmn:CallActivity"||e.type==="bpmn:Collaboration"||e.type==="bpmn:Group"||e.type==="bpmn:Lane"||e.type==="bpmn:SubProcess"?{position:Xr.DEFAULT,html:Wr(Oe.createElement(Kr,null))}:e.type==="bpmn:Participant"?{position:Xr.PARTICIPANT,html:Wr(Oe.createElement(Kr,null))}:e.type.endsWith("Gateway")?{position:Xr.GATEWAY,html:Wr(Oe.createElement(Kr,{showBackground:!0}))}:e.type==="bpmn:TextAnnotation"?{position:Xr.ANNOTATION,html:Wr(Oe.createElement(Kr,{showBackground:!0}))}:{position:Xr.OTHER,html:Wr(Oe.createElement(Kr,{showBackground:!0}))}}function Bp(e){if(Bf.includes(e.type))return!1;let r=oe(e)?.documentation?.[0]?.text;return r!=null&&r.trim()!==""}var Jr=Df(Rf);function Vf(e){return Oe.createElement(Jr,{...e,ref:e.viewerRef})}var w1=Tf(()=>Promise.resolve(Vf),{ssr:!1});import ut,{Fragment as Uf}from"react";import{Menu as uo,Transition as $f}from"@headlessui/react";function xe(...e){return e.filter(Boolean).join(" ")}function S1(e){return ut.createElement(uo,{as:"div",className:"app-sdk-default-styles app-sdk-relative app-sdk-inline-block app-sdk-text-left"},ut.createElement("div",null,ut.createElement(uo.Button,{className:"app-sdk-cursor-pointer app-sdk-bg-transparent app-sdk-p-0 app-sdk-text-[100%] app-sdk-flex app-sdk-items-center app-sdk-rounded-full app-sdk-text-[color:var(--asdk-ddm-icon-text-color)] hover:app-sdk-text-[color:var(--asdk-ddm-icon-text-hover-color)] focus:app-sdk-outline-none focus:app-sdk-ring-2 focus:app-sdk-ring-[color:var(--asdk-ddm-focus-color)] "},ut.createElement("span",{className:"app-sdk-sr-only"},"Open options"),e.collapsedIcon||ut.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor","aria-hidden":"true",className:"app-sdk-h-5 app-sdk-w-5"},ut.createElement("path",{d:"M6 10a2 2 0 11-4 0 2 2 0 014 0zM12 10a2 2 0 11-4 0 2 2 0 014 0zM16 12a2 2 0 100-4 2 2 0 000 4z"})))),ut.createElement($f,{as:Uf,enter:"app-sdk-transition app-sdk-ease-out app-sdk-duration-100",enterFrom:"app-sdk-transform app-sdk-opacity-0 app-sdk-scale-95",enterTo:"app-sdk-transform app-sdk-opacity-100 app-sdk-scale-100",leave:"app-sdk-transition app-sdk-ease-in app-sdk-duration-75",leaveFrom:"app-sdk-transform app-sdk-opacity-100 app-sdk-scale-100",leaveTo:"app-sdk-transform app-sdk-opacity-0 app-sdk-scale-95"},ut.createElement(uo.Items,{className:"app-sdk-absolute app-sdk-right-0 app-sdk-z-10 app-sdk-mt-2 app-sdk-w-56 app-sdk-origin-top-right app-sdk-rounded-md app-sdk-bg-[color:var(--asdk-ddm-background-color)] app-sdk-shadow-lg app-sdk-ring-1 app-sdk-ring-black app-sdk-ring-opacity-5 focus:app-sdk-outline-none"},ut.createElement("div",{className:"app-sdk-py-1"},e.children))))}function _1(e){return ut.createElement(uo.Item,null,({active:t})=>ut.createElement("button",{type:"button",onClick:()=>e.onClick(),className:xe(t?"app-sdk-bg-[color:var(--asdk-ddm-entry-background-hover-color)]":"app-sdk-bg-transparent","app-sdk-cursor-pointer app-sdk-p-0 app-sdk-text-[100%] app-sdk-block app-sdk-w-full app-sdk-px-4 app-sdk-py-2 app-sdk-text-left app-sdk-text-sm",e.isDanger?"app-sdk-text-[color:var(--asdk-ddm-danger-entry-text-color)]":"app-sdk-text-[color:var(--asdk-ddm-default-entry-text-color)]",e.className??"")},e.title))}import{useRouter as jf}from"next/navigation.js";import Hf from"react";var Lp=new Set;function ve(e,t){Lp.has(e)||(console.warn(`[@5minds/processcube_app_sdk] Warning: The component "${e}" is deprecated.
|
|
14
14
|
|
|
15
|
-
${t??""}`.trimEnd()),Lp.add(e))}function D1({href:e,children:t}){ve("DynamicLink","Please use the NextJS Link component instead.");let r=jf();return Hf.createElement("a",{href:e,onClick:n=>{n.preventDefault(),r.replace(e),r.refresh()}},t)}import Ri from"react";import{createRoot as Jf}from"react-dom/client.js";import{v4 as Zf}from"uuid";import Qf from"react";import de,{useState as Kf}from"react";import{Button as Ti,Divider as jp,Modal as Hp,ModalBody as zp,ModalContent as Wp,ModalFooter as Gp,ModalHeader as qp,useDisclosure as Yp}from"@heroui/react";import Xf from"@monaco-editor/react";import Cr from"react";import zf from"react";function Ni(e){ve("ExecutionCount");let t={width:30};return e.count<=1?null:zf.createElement("div",{style:t,className:"bpmn-element-overlay__below-item bpmn-element-overlay__below-item--execution-count"},e.count)}import Ie from"react";function Si(e){return ve("GotoButton"),Ie.createElement("div",{onClick:e.onClick,className:"bpmn-element-overlay__below-item bpmn-element-overlay__below-item--action"},Ie.createElement("div",{className:"action-icon"},Ie.createElement("svg",{width:"14px",height:"14px",viewBox:"0 0 512 512",version:"1.1",xmlns:"http://www.w3.org/2000/svg",fill:"#000000"},Ie.createElement("g",{id:"SVGRepo_bgCarrier",strokeWidth:"0"}),Ie.createElement("g",{id:"SVGRepo_tracerCarrier",strokeLinecap:"round",strokeLinejoin:"round"}),Ie.createElement("g",{id:"SVGRepo_iconCarrier"}," ",Ie.createElement("title",null,"open-external")," ",Ie.createElement("g",{id:"Page-1",stroke:"none",strokeWidth:"1",fill:"none",fillRule:"evenodd"}," ",Ie.createElement("g",{id:"icon",fill:"#FFFFFF",transform:"translate(85.333333, 64.000000)"}," ",Ie.createElement("path",{d:"M128,63.999444 L128,106.666444 L42.6666667,106.666667 L42.6666667,320 L256,320 L256,234.666444 L298.666,234.666444 L298.666667,362.666667 L4.26325641e-14,362.666667 L4.26325641e-14,64 L128,63.999444 Z M362.666667,1.42108547e-14 L362.666667,170.666667 L320,170.666667 L320,72.835 L143.084945,249.751611 L112.915055,219.581722 L289.83,42.666 L192,42.6666667 L192,1.42108547e-14 L362.666667,1.42108547e-14 Z",id:"Combined-Shape"}," ")," ")," ")," "))),Ie.createElement("div",{className:"action-icon-hovered"},Ie.createElement("svg",{width:"14px",height:"14px",viewBox:"0 0 512 512",version:"1.1",xmlns:"http://www.w3.org/2000/svg",fill:"#000000"},Ie.createElement("g",{id:"SVGRepo_bgCarrier",strokeWidth:"0"}),Ie.createElement("g",{id:"SVGRepo_tracerCarrier",strokeLinecap:"round",strokeLinejoin:"round"}),Ie.createElement("g",{id:"SVGRepo_iconCarrier"}," ",Ie.createElement("title",null,"goto process")," ",Ie.createElement("g",{id:"Page-1",stroke:"none",strokeWidth:"1",fill:"none",fillRule:"evenodd"}," ",Ie.createElement("g",{id:"icon",fill:"#FFFFFF",transform:"translate(85.333333, 64.000000)"}," ",Ie.createElement("path",{d:"M128,63.999444 L128,106.666444 L42.6666667,106.666667 L42.6666667,320 L256,320 L256,234.666444 L298.666,234.666444 L298.666667,362.666667 L4.26325641e-14,362.666667 L4.26325641e-14,64 L128,63.999444 Z M362.666667,1.42108547e-14 L362.666667,170.666667 L320,170.666667 L320,72.835 L143.084945,249.751611 L112.915055,219.581722 L289.83,42.666 L192,42.6666667 L192,1.42108547e-14 L362.666667,1.42108547e-14 Z",id:"Combined-Shape"}," ")," ")," ")," "))))}import Rt from"react";function _i(e){return ve("PlayButton"),Rt.createElement("div",{onClick:e.onClick,className:"bpmn-element-overlay__below-item bpmn-element-overlay__below-item--action"},Rt.createElement("div",{className:"action-icon"},Rt.createElement("svg",{width:"14px",height:"14px",viewBox:"0 0 24 24",color:"white",fill:"none",xmlns:"http://www.w3.org/2000/svg"},Rt.createElement("g",{id:"Media / Play",color:"white"},Rt.createElement("path",{id:"Vector",d:"M5 17.3336V6.66698C5 5.78742 5 5.34715 5.18509 5.08691C5.34664 4.85977 5.59564 4.71064 5.87207 4.67499C6.18868 4.63415 6.57701 4.84126 7.35254 5.25487L17.3525 10.5882L17.3562 10.5898C18.2132 11.0469 18.642 11.2756 18.7826 11.5803C18.9053 11.8462 18.9053 12.1531 18.7826 12.4189C18.6418 12.7241 18.212 12.9537 17.3525 13.4121L7.35254 18.7454C6.57645 19.1593 6.1888 19.3657 5.87207 19.3248C5.59564 19.2891 5.34664 19.1401 5.18509 18.9129C5 18.6527 5 18.2132 5 17.3336Z",stroke:"#FFFFFF","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"})))),Rt.createElement("div",{className:"action-icon-hovered"},Rt.createElement("svg",{width:"14px",height:"14px",viewBox:"0 0 24 24",color:"white",fill:"white",xmlns:"http://www.w3.org/2000/svg"},Rt.createElement("g",{id:"Media / Play",color:"white"},Rt.createElement("path",{id:"Vector",d:"M5 17.3336V6.66698C5 5.78742 5 5.34715 5.18509 5.08691C5.34664 4.85977 5.59564 4.71064 5.87207 4.67499C6.18868 4.63415 6.57701 4.84126 7.35254 5.25487L17.3525 10.5882L17.3562 10.5898C18.2132 11.0469 18.642 11.2756 18.7826 11.5803C18.9053 11.8462 18.9053 12.1531 18.7826 12.4189C18.6418 12.7241 18.212 12.9537 17.3525 13.4121L7.35254 18.7454C6.57645 19.1593 6.1888 19.3657 5.87207 19.3248C5.59564 19.2891 5.34664 19.1401 5.18509 18.9129C5 18.6527 5 18.2132 5 17.3336Z",stroke:"#FFFFFF","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"})))))}import or from"react";function Ii(e){return ve("RetryButton"),or.createElement("div",{onClick:e.onClick,className:"bpmn-element-overlay__below-item bpmn-element-overlay__below-item--action"},or.createElement("div",{className:"action-icon"},or.createElement("svg",{width:"14px",height:"14px",viewBox:"0 0 16 16",xmlns:"http://www.w3.org/2000/svg"},or.createElement("path",{fill:"#FFFFFF",d:"M10.7667,0.493645 C9.11991,-0.113331 7.31921,-0.161915 5.64208,0.355379 C4.48206,0.713177 3.42569,1.32796 2.54743,2.14597 L1.70711,1.30564 C1.07714,0.675676 0,1.12184 0,2.01275 L0,6.00002 L3.98727,6.00002 C4.87818,6.00002 5.32434,4.92288 4.69438,4.29291 L3.96284,3.56137 C4.61101,2.97184 5.38443,2.52782 6.23156,2.26653 C7.4894,1.87856 8.83993,1.915 10.075,2.37023 C11.3101,2.82547 12.3612,3.67423 13.0664,4.78573 C13.7716,5.89723 14.0916,7.20978 13.9773,8.52112 C13.863,9.83246 13.3206,11.0698 12.4337,12.0425 C11.5469,13.0152 10.3647,13.6693 9.06949,13.9039 C7.77425,14.1385 6.43779,13.9407 5.26607,13.3409 C4.09434,12.7412 3.15236,11.7727 2.5853,10.5848 C2.34738,10.0864 1.75046,9.8752 1.25205,10.1131 C0.753645,10.351 0.542478,10.948 0.7804,11.4464 C1.53649,13.0302 2.79245,14.3215 4.35475,15.1213 C5.91706,15.921 7.699,16.1847 9.42598,15.8719 C11.153,15.559 12.7291,14.687 13.9116,13.39 C15.0941,12.0931 15.8173,10.4433 15.9698,8.69483 C16.1222,6.94637 15.6954,5.1963 14.7552,3.7143 C13.815,2.2323 12.4135,1.10062 10.7667,0.493645 Z"}))),or.createElement("div",{className:"action-icon-hovered"},or.createElement("svg",{width:"14px",height:"14px",viewBox:"0 0 16 16",xmlns:"http://www.w3.org/2000/svg"},or.createElement("path",{fill:"#FFFFFF",d:"M10.7667,0.493645 C9.11991,-0.113331 7.31921,-0.161915 5.64208,0.355379 C4.48206,0.713177 3.42569,1.32796 2.54743,2.14597 L1.70711,1.30564 C1.07714,0.675676 0,1.12184 0,2.01275 L0,6.00002 L3.98727,6.00002 C4.87818,6.00002 5.32434,4.92288 4.69438,4.29291 L3.96284,3.56137 C4.61101,2.97184 5.38443,2.52782 6.23156,2.26653 C7.4894,1.87856 8.83993,1.915 10.075,2.37023 C11.3101,2.82547 12.3612,3.67423 13.0664,4.78573 C13.7716,5.89723 14.0916,7.20978 13.9773,8.52112 C13.863,9.83246 13.3206,11.0698 12.4337,12.0425 C11.5469,13.0152 10.3647,13.6693 9.06949,13.9039 C7.77425,14.1385 6.43779,13.9407 5.26607,13.3409 C4.09434,12.7412 3.15236,11.7727 2.5853,10.5848 C2.34738,10.0864 1.75046,9.8752 1.25205,10.1131 C0.753645,10.351 0.542478,10.948 0.7804,11.4464 C1.53649,13.0302 2.79245,14.3215 4.35475,15.1213 C5.91706,15.921 7.699,16.1847 9.42598,15.8719 C11.153,15.559 12.7291,14.687 13.9116,13.39 C15.0941,12.0931 15.8173,10.4433 15.9698,8.69483 C16.1222,6.94637 15.6954,5.1963 14.7552,3.7143 C13.815,2.2323 12.4135,1.10062 10.7667,0.493645 Z"}))))}function Pi(e){ve("FlowNodeButtonArea");let t={marginTop:"7px"},r=e.flowNode,n=!!e.onRetryClick,o=!r.IsGateway&&r.ProcessInstanceState!=="running"&&r.ProcessInstanceState!=="finished"&&n,i=!!e.onGotoClick,a=(r.IsCallActivity||(r.IsEventReceiver||r.IsEventSender)&&r.LinkedProcessInstanceId)&&i,p=!!e.onPlayClick,d=(r.IsUserTask||r.IsManualTask)&&r.State==="suspended"&&p;return Cr.createElement("div",{className:"flownode-overlay",style:t},Cr.createElement("div",{className:"bpmn-element-overlay__below"},o&&Cr.createElement(Ii,{onClick:e.onRetryClick,flowNode:e.flowNode}),Cr.createElement(Ni,{count:e.flowNode.ExecutionCount}),a&&Cr.createElement(Si,{onClick:e.onGotoClick}),d&&Cr.createElement(_i,{onClick:e.onPlayClick})))}import Vp from"react";function Fi(e){ve("FlowNodeColorArea");let t={width:e.width,height:e.height},r="",n={width:e.width,height:e.height};return e.flowNode.IsGateway?(n.height*=.7,n.width*=.7,r="bpmn-element-overlay-backdrop--gateway"):e.flowNode.IsEvent&&(r="bpmn-element-overlay-backdrop--rounded"),Vp.createElement("div",{onClick:e.onClick,className:"bpmn-element-overlay-backdrop cursor-pointer",style:t},Vp.createElement("div",{className:`flow-node-${e.flowNode.State}-state-overlay ${r}`,style:n}))}import{createRoot as Wf}from"react-dom/client.js";import Gf from"react-markdown";import qf from"remark-gfm";import Ke,{useEffect as Yf}from"react";import{Divider as Up}from"@heroui/react";import $p from"@monaco-editor/react";function Ai(e){ve("FlowNodeInfoComponent");function t(r){setTimeout(()=>{r.getAction("editor.action.formatDocument").run(),r.updateOptions({readOnly:!0})},300)}return Yf(()=>{let r=Ke.createElement(Gf,{remarkPlugins:[qf]},e.flowNode.Documentation),n=document.getElementById("markdown-container");if(n){let o=n.attachShadow({mode:"open"});Wf(o).render(r)}},[]),Ke.createElement(Ke.Fragment,null,Ke.createElement(Up,{className:"my-2"}),Ke.createElement("div",{className:"flex-row"},Ke.createElement("div",{className:"token-area"},Ke.createElement("p",null,"Start Token:"),Ke.createElement($p,{className:"monaco-editor",height:"25vh",defaultLanguage:"json",theme:"vs-light",defaultValue:JSON.stringify(e.flowNode.CurrentStartToken,null,2),onMount:t,options:{formatOnPaste:!0,formatOnType:!0,minimap:{enabled:!1},lineNumbers:"off"}}),Ke.createElement(Up,{className:"my-2"}),Ke.createElement("p",null,"End Token:"),Ke.createElement($p,{className:"monaco-editor",height:"25vh",defaultLanguage:"json",theme:"vs-light",defaultValue:JSON.stringify(e.flowNode.CurrentEndToken,null,2),onMount:t,options:{formatOnPaste:!0,formatOnType:!0,minimap:{enabled:!1},lineNumbers:"off"}})),Ke.createElement("div",{className:"documentation-area"},Ke.createElement("p",null,"Dokumentation:"),Ke.createElement("div",{id:"markdown-container"}))))}function Di(e){ve("FlowNodeOverlay");let t=Yp(),r=Yp(),[n,o]=Kf(JSON.stringify(e.flowNode.CurrentStartToken));function i(p){setTimeout(()=>{p.getAction("editor.action.formatDocument").run()},300)}let a={width:e.width,height:e.height+10};return de.createElement(de.Fragment,null,de.createElement("div",{style:a},de.createElement(Fi,{onClick:r.onOpen,...e}),de.createElement(Pi,{onRetryClick:e.retryAction?t.onOpen:void 0,onGotoClick:e.gotoProcessAction?()=>e.gotoProcessAction(e.flowNode.LinkedProcessInstanceId??""):void 0,onPlayClick:e.gotoManualOrUserTaskAction?()=>e.gotoManualOrUserTaskAction(e.flowNode.ProcessInstanceId,e.flowNode.Id):void 0,flowNode:e.flowNode})),de.createElement(Hp,{isOpen:t.isOpen,onOpenChange:t.onOpenChange},de.createElement(Wp,null,p=>de.createElement(de.Fragment,null,de.createElement(qp,{className:"flex flex-col gap-1"},"Confirm Retry"),de.createElement(zp,null,de.createElement(jp,{className:"my-2"}),de.createElement("p",null,"Are you sure you want to retry process instance ",e.flowNode.CurrentFlowNodeInstanceId,"?"),de.createElement(jp,{className:"my-2"}),de.createElement(Xf,{className:"monaco-editor",height:"25vh",defaultLanguage:"json",theme:"vs-light",defaultValue:JSON.stringify(e.flowNode.CurrentStartToken,null,2),onChange:(d,u)=>o(d??""),onMount:i,options:{formatOnPaste:!0,formatOnType:!0,minimap:{enabled:!1},lineNumbers:"off"}})),de.createElement(Gp,null,de.createElement(Ti,{color:"warning",variant:"light",onPress:p},"Close"),de.createElement(Ti,{color:"primary",onPress:()=>{e.retryAction?.(e.flowNode.ProcessInstanceId,e.flowNode.CurrentFlowNodeInstanceId,JSON.parse(n)),p()}},"Retry"))))),de.createElement(Hp,{size:"4xl",isOpen:r.isOpen,onOpenChange:r.onOpenChange},de.createElement(Wp,null,p=>de.createElement(de.Fragment,null,de.createElement(qp,{className:"flex flex-col gap-1"},"FlowNode: ",e.flowNode.Name??e.flowNode.Id),de.createElement(zp,null,de.createElement(Ai,{flowNode:e.flowNode})),de.createElement(Gp,null,de.createElement(Ti,{color:"primary",onPress:p},"Close"))))))}var Mi=class{id;flowNodeInstances;processInstanceState;documentation;triggeredFlowNodeInstance;type;get Id(){return this.id}get Name(){return this.flowNodeInstances.at(-1)?.flowNodeName}get CurrentFlowNodeInstanceId(){return this.flowNodeInstances.at(-1)?.flowNodeInstanceId}get CurrentStartToken(){return this.flowNodeInstances.at(-1)?.startToken}get CurrentEndToken(){return this.flowNodeInstances.at(-1)?.endToken}get LinkedProcessInstanceId(){let t=this.flowNodeInstances.at(-1);if(this.IsCallActivity)return t.childProcessInstanceId;if(this.IsEventReceiver)return t?.triggeredByFlowNodeInstance?.processInstanceId;if(this.IsEventSender&&this.triggeredFlowNodeInstance)return this.triggeredFlowNodeInstance.processInstanceId}get State(){return this.flowNodeInstances.at(-1)?.state??""}get Documentation(){return this.documentation}get ProcessInstanceState(){return this.processInstanceState}get IsGateway(){return this.type==="bpmn:ComplexGateway"||this.type==="bpmn:ParallelGateway"||this.type==="bpmn:ExclusiveGateway"||this.type==="bpmn:InclusiveGateway"||this.type==="bpmn:EventBasedGateway"}get IsEvent(){return this.type==="bpmn:StartEvent"||this.type==="bpmn:EndEvent"||this.type==="bpmn:IntermediateCatchEvent"||this.type==="bpmn:IntermediateThrowEvent"||this.type==="bpmn:BoundaryEvent"}get IsEventReceiver(){return this.type==="bpmn:StartEvent"||this.type==="bpmn:IntermediateCatchEvent"||this.type==="bpmn:BoundaryEvent"||this.type==="bpmn:ReceiveTask"}get IsEventSender(){return this.type==="bpmn:EndEvent"||this.type==="bpmn:IntermediateThrowEvent"||this.type==="bpmn:SendTask"}get IsCallActivity(){return this.type==="bpmn:CallActivity"}get IsUserTask(){return this.type==="bpmn:UserTask"}get IsManualTask(){return this.type==="bpmn:ManualTask"}get ExecutionCount(){return this.flowNodeInstances.length}get ProcessInstanceId(){return this.flowNodeInstances.at(-1)?.processInstanceId??""}constructor(t,r,n,o){this.id=t,this.flowNodeInstances=[],this.processInstanceState=r,this.documentation=n,this.triggeredFlowNodeInstance=o,this.type=""}addFlowNodeInstance(t){this.flowNodeInstances.push(t),this.type=t.flowNodeType}},Zr=class{canvas;overlays;elementRegistry;overlayIds;overlayRoots;constructor(t){ve("BpmnViewerOverlayCreator"),this.canvas=t.get("canvas"),this.overlays=t.get("overlays"),this.elementRegistry=t.get("elementRegistry"),this.overlayIds=[],this.overlayRoots={}}createOverlaysFlowNodeInstances(t,r,n,o,i,a){let p=this.getExecutedFlowNodes(r,t,n);this.overlayIds=[];for(let u of p){let m=this.elementRegistry.get(u.Id);this.getOrCreateOverlayRoot(u)?.render(Qf.createElement(Di,{flowNode:u,width:m.width,height:m.height,retryAction:o,gotoProcessAction:i,gotoManualOrUserTaskAction:a})),this.setSequenceFlowsColor(m,p)}let d=[];for(let u in this.overlayRoots)p.find(g=>g.Id===u)||d.push(u);d.forEach(u=>{let m=this.elementRegistry.get(u);this.removeSequenceFlowsColor(m),this.overlayRoots[u].unmount(),delete this.overlayRoots[u]})}getOrCreateOverlayRoot(t){if(t.Id in this.overlayRoots)return this.overlayRoots[t.Id];let r=`bpmn-element-overlay-${Zf()}`,n=`<div id="${r}"></div>`,o=this.overlays.add(t.Id,{position:{top:0,left:0},html:n});this.overlayIds.push(o);let i=document.querySelector(`#${r}`);if(i){let a=Jf(i);return this.overlayRoots[t.Id]=a,a}}getExecutedFlowNodes(t,r,n){let o=[],i={};for(let a of n)a.triggeredByFlowNodeInstance&&(i[a.triggeredByFlowNodeInstance?.flowNodeInstanceId]=a);for(let a of t){let p=o.find(d=>d.Id===a.flowNodeId);if(!p){let d=this.elementRegistry.get(a.flowNodeId),u=d.businessObject.documentation?d.businessObject.documentation[0].text:"";p=new Mi(a.flowNodeId,r,u,i[a.flowNodeInstanceId]),o.push(p)}p.addFlowNodeInstance(a)}return o}setSequenceFlowsColor(t,r){if(t&&t.businessObject.incoming)for(let n of t.businessObject.incoming)r.find(i=>i.Id===n.sourceRef?.id)&&this.canvas.addMarker(n.id,"connection-done")}removeSequenceFlowsColor(t){if(t&&t.businessObject.incoming){for(let r of t.businessObject.incoming)this.canvas.removeMarker(r.id,"connection-done");if(t.businessObject.outgoing)for(let r of t.businessObject.outgoing)this.canvas.removeMarker(r.id,"connection-done")}}};var em={canvas:{autoFocus:!0}},Kp=class extends Ri.Component{containerRef;bpmnViewer;bpmnViewerOverlayCreator;constructor(t){super(t),ve("BpmnViewerComponent"),this.state={diagramXML:""},this.containerRef=Ri.createRef()}componentDidMount(){let{diagramXML:t,options:r}=this.props,n=this.containerRef.current;if(this.bpmnViewer=new Xt({container:n,height:r?.height??600,bpmnRenderer:{defaultFillColor:r?.fillColor,defaultStrokeColor:r?.strokeColor},additionalModules:[lo,po,ao],...em}),this.bpmnViewerOverlayCreator=new Zr(this.bpmnViewer),t)return this.displayDiagram(t)}componentWillUnmount(){this.bpmnViewer.destroy()}componentDidUpdate(t,r){let{props:n,state:o}=this,i=n.diagramXML||o.diagramXML,a=t.diagramXML||r.diagramXML;if(i&&i!==a)return this.displayDiagram(i);this.bpmnViewerOverlayCreator.createOverlaysFlowNodeInstances(this.props.processInstanceState,this.props.flowNodeInstances,n.flowNodeInstancesTriggeredByThisProcessInstance,n.retryAction,n.gotoProcessAction,n.gotoManualOrUserTaskAction)}displayDiagram(t){this.bpmnViewer.importXML(t).then(()=>{let r=this.bpmnViewer.get("canvas"),n=r.viewbox(),o={x:n.outer.width/2,y:n.outer.height/2};r.zoom("fit-viewport",o),this.bpmnViewerOverlayCreator.createOverlaysFlowNodeInstances(this.props.processInstanceState,this.props.flowNodeInstances,this.props.flowNodeInstancesTriggeredByThisProcessInstance,this.props.retryAction,this.props.gotoProcessAction,this.props.gotoManualOrUserTaskAction)})}render(){return Ri.createElement("div",{className:this.props.className,ref:this.containerRef})}};import*as ir from"react-is";import Sm from"semver/functions/gt.js";import _m from"semver/functions/prerelease.js";import Im from"semver/functions/satisfies.js";import fe,{Fragment as da,createElement as Pm,useRef as Zp}from"react";import{mapUserTask as Fm}from"../common/index.mjs";import{DataModels as Nm}from"@5minds/processcube_engine_sdk";import Nr,{forwardRef as tm}from"react";function Z(e){if(e!=null&&e.trim()!=="")try{return JSON.parse(e)}catch{return null}return null}var Oi=tm(function(t,r){let{formField:n}=t,o=`${n.id}-hint`,i=Z(n.customForm);return Nr.createElement("div",{className:"app-sdk-relative app-sdk-flex app-sdk-items-start"},Nr.createElement("div",{className:"app-sdk-flex app-sdk-h-5 app-sdk-items-center"},Nr.createElement("input",{type:"checkbox",className:"app-sdk-form-checkbox app-sdk-border app-sdk-h-4 app-sdk-w-4 app-sdk-rounded app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-text-[color:var(--asdk-dui-formfield-checkbox-text-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] dark:app-sdk-border-2 dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:focus:app-sdk-shadow-app-sdk-dark",defaultChecked:t.state&&t.state!=="false"||n.defaultValue==="true",id:n.id,name:n.id,"aria-describedby":i?.hint?o:void 0,"data-form-field-type":"boolean"})),Nr.createElement("div",{className:"app-sdk-ml-3 app-sdk-text-sm"},Nr.createElement("label",{className:"app-sdk-font-medium",htmlFor:n.id},n.label),i?.hint&&Nr.createElement("p",{className:"app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:o},i.hint)))});import Ot from"react";function Bi({formField:e,state:t}){let r=Z(e.customForm),n=r?.entries,o=`${e.id}-hint`,i;return Array.isArray(t)&&t.length?i=t:i=(t||e.defaultValue?.toString())?.split(",")??[],Ot.createElement("div",null,Ot.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:e.id},e.label),Ot.createElement("fieldset",{id:e.id,className:"app-sdk-pl-0 app-sdk-pb-0 app-sdk-space-y-2","data-type":"checkbox","aria-describedby":r?.hint?`${e.id}-hint`:void 0,"data-form-field-type":"checkbox"},n?.map(a=>{let p=i.find(d=>d.trim()===a.key);return Ot.createElement("div",{key:a.key,className:"app-sdk-relative app-sdk-flex app-sdk-items-start"},Ot.createElement("div",{className:"app-sdk-flex app-sdk-h-5 app-sdk-items-center"},Ot.createElement("input",{type:"checkbox",defaultChecked:p,name:e.id,id:a.key,value:a.key,className:"app-sdk-form-checkbox app-sdk-border app-sdk-h-4 app-sdk-w-4 app-sdk-rounded app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-text-[color:var(--asdk-dui-formfield-checkbox-text-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] dark:app-sdk-border-2 dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:focus:app-sdk-shadow-app-sdk-dark"})),Ot.createElement("div",{className:"app-sdk-ml-3 app-sdk-text-sm"},Ot.createElement("label",{htmlFor:a.key,className:"app-sdk-font-medium app-sdk-text-[color:var(--asdk-dui-text-color)]"},a.value)))})),r?.hint&&Ot.createElement("p",{className:"app-sdk-mt-1 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:o},r?.hint))}import Qr from"react";function Li(e){let{formField:t}=e,r=`${t.id}-hint`,n=Z(t.customForm);t.defaultValue&&!rm(t.defaultValue.toString())&&console.warn(`[@5minds/processcube_app_sdk:DynamicUi] Invalid default value for color field "${t.id}"`);let o=e.state||t.defaultValue?.toString();return Qr.createElement("div",null,Qr.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:t.id},t.label),Qr.createElement("div",{className:"app-sdk-mt-1 app-sdk-w-20"},Qr.createElement("input",{className:"app-sdk-text-app-sdk-inherit app-sdk-h-8 app-sdk-border app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm invalid:app-sdk-border-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-1 invalid:app-sdk-ring-[color:var(--asdk-dui-formfield-invalid-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:invalid:app-sdk-shadow-app-sdk-dark-invalid dark:focus:app-sdk-shadow-app-sdk-dark",type:"color",defaultValue:o,id:t.id,name:t.id,placeholder:n?.placeholder,"aria-describedby":r,"data-form-field-type":"color"})),n?.hint&&Qr.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:r},n?.hint))}function rm(e){return/^#([0-9A-Fa-f]{3}|[0-9A-Fa-f]{6})$/.test(e?.toString())}import nm,{forwardRef as om}from"react";var Vi=om(function(t,r){return nm.createElement("p",{className:"app-sdk-text-sm"},t.formField.label)});import en from"react";function Ui({formField:e,state:t}){let r=Z(e.customForm);return en.createElement("div",null,en.createElement("label",{htmlFor:e.id,className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium"},e.label),en.createElement("div",{className:"app-sdk-mt-1"},en.createElement("input",{className:"app-sdk-form-input app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm invalid:app-sdk-border-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-1 invalid:app-sdk-ring-[color:var(--asdk-dui-formfield-invalid-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:invalid:app-sdk-shadow-app-sdk-dark-invalid dark:focus:app-sdk-shadow-app-sdk-dark",type:"text",id:e.id,name:e.id,defaultValue:t||(e.defaultValue?.toString()??""),placeholder:r?.placeholder,"aria-describedby":`${e.id}-hint`,"data-form-field-type":"custom"})),r?.hint&&en.createElement("p",{id:`${e.id}-hint`,"data-hint":!0,className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]"},r.hint))}import tn,{forwardRef as im}from"react";var $i=im(function(t,r){let{formField:n}=t,o=`${n.id}-hint`,i=Z(n.customForm);am(n.defaultValue)||console.warn(`[@5minds/processcube_app_sdk:DynamicUi] Invalid default value for date field "${n.id}"`);let a=t.state||n.defaultValue?.toString();return tn.createElement("div",null,tn.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:n.id},n.label),tn.createElement("div",{className:"app-sdk-mt-1"},tn.createElement("input",{className:"app-sdk-form-input app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm invalid:app-sdk-border-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-1 invalid:app-sdk-ring-[color:var(--asdk-dui-formfield-invalid-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:invalid:app-sdk-shadow-app-sdk-dark-invalid dark:focus:app-sdk-shadow-app-sdk-dark",type:"date",defaultValue:a,id:n.id,name:n.id,"aria-describedby":o,"data-form-field-type":"date"})),i?.hint&&tn.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:o},i?.hint))});function am(e){return new Date(e?.toString()).toString()!=="Invalid Date"}import rn from"react";function ji(e){let{formField:t}=e,r=`${t.id}-hint`,n=Z(t.customForm);t.defaultValue&&!lm(t.defaultValue.toString())&&console.warn(`[@5minds/processcube_app_sdk:DynamicUi] Invalid default value for dateteime-local field "${t.id}"`);let o=e.state||t.defaultValue?.toString();return rn.createElement("div",null,rn.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:t.id},t.label),rn.createElement("div",{className:"app-sdk-mt-1"},rn.createElement("input",{className:"app-sdk-form-input app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm invalid:app-sdk-border-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-1 invalid:app-sdk-ring-[color:var(--asdk-dui-formfield-invalid-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:invalid:app-sdk-shadow-app-sdk-dark-invalid dark:focus:app-sdk-shadow-app-sdk-dark",type:"datetime-local",defaultValue:o,id:t.id,name:t.id,"aria-describedby":r,"data-form-field-type":"datetime-local"})),n?.hint&&rn.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:r},n?.hint))}function sm(e){return new Date(e?.toString()).toString()!=="Invalid Date"}function pm(e){return/^([01]\d|2[0-3]):([0-5]\d)(:[0-5]\d)?$/.test(e)}function lm(e){if(!e.includes("T"))return!1;let[t,r]=e.split("T");return sm(t)&&pm(r)}import nn,{forwardRef as dm}from"react";function fo(e){return!Number.isNaN(Number(e?.toString()))}var Hi=dm(function(t,r){let{formField:n}=t,o=`${n.id}-hint`,i=Z(n.customForm);return fo(n.defaultValue)||console.warn(`[@5minds/processcube_app_sdk:DynamicUi] Invalid default value for decimal field "${n.id}"`),nn.createElement("div",null,nn.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:n.id},n.label),nn.createElement("div",{className:"app-sdk-mt-1"},nn.createElement("input",{className:"app-sdk-form-input app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm invalid:app-sdk-border-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-1 invalid:app-sdk-ring-[color:var(--asdk-dui-formfield-invalid-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:invalid:app-sdk-shadow-app-sdk-dark-invalid dark:focus:app-sdk-shadow-app-sdk-dark",type:"number",step:i?.step??.01,placeholder:i?.placeholder||"0.00",defaultValue:t.state||n.defaultValue?.toString(),id:n.id,name:n.id,"aria-describedby":o,"data-form-field-type":"decimal"})),i?.hint&&nn.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:o},i?.hint))});import on from"react";function zi(e){let{formField:t}=e,r=`${t.id}-hint`,n=Z(t.customForm),o=e.state||(t.defaultValue?.toString()??"");return on.createElement("div",null,on.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:t.id},t.label),on.createElement("div",{className:"app-sdk-mt-1"},on.createElement("input",{className:"app-sdk-form-input app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm invalid:app-sdk-border-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-1 invalid:app-sdk-ring-[color:var(--asdk-dui-formfield-invalid-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:invalid:app-sdk-shadow-app-sdk-dark-invalid dark:focus:app-sdk-shadow-app-sdk-dark",type:"email",defaultValue:o,id:t.id,name:t.id,placeholder:n?.placeholder,"aria-describedby":r,"data-form-field-type":"email"})),n?.hint&&on.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:r},n?.hint))}import De,{forwardRef as cm}from"react";var Wi=cm(function({formField:t,state:r},n){let o=Z(t.customForm),i=t.label,a=t.enumValues,p;switch(o?.displayAs){case"checkbox":let u;Array.isArray(r)&&r.length?u=r:u=(r||t.defaultValue?.toString())?.split(",")??[],p=De.createElement("fieldset",{id:t.id,className:"app-sdk-pl-0 app-sdk-pb-0 app-sdk-space-y-2","data-type":"checkbox","aria-describedby":o?.hint?`${t.id}-hint`:void 0,"data-form-field-type":"enum"},a?.map(g=>{let E=u.find(_=>_.trim()===g.id);return De.createElement("div",{key:g.id,className:"app-sdk-relative app-sdk-flex app-sdk-items-start"},De.createElement("div",{className:"app-sdk-flex app-sdk-h-5 app-sdk-items-center"},De.createElement("input",{type:"checkbox",defaultChecked:E,name:t.id,id:g.id,value:g.id,className:"app-sdk-form-checkbox app-sdk-border app-sdk-h-4 app-sdk-w-4 app-sdk-rounded app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-text-[color:var(--asdk-dui-formfield-checkbox-text-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] dark:app-sdk-border-2 dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:focus:app-sdk-shadow-app-sdk-dark"})),De.createElement("div",{className:"app-sdk-ml-3 app-sdk-text-sm"},De.createElement("label",{htmlFor:g.id,className:"app-sdk-font-medium app-sdk-text-[color:var(--asdk-dui-text-color)]"},g.name)))}));break;case"radio":p=De.createElement("fieldset",{id:t.id,className:"app-sdk-pl-0 app-sdk-pb-0 app-sdk-space-y-2","data-type":"radio","aria-describedby":o?.hint?`${t.id}-hint`:void 0,"data-form-field-type":"enum"},a?.map(g=>De.createElement("div",{key:g.id,className:"app-sdk-relative app-sdk-flex app-sdk-items-start"},De.createElement("div",{className:"app-sdk-flex app-sdk-h-5 app-sdk-items-center"},De.createElement("input",{type:"radio",defaultChecked:(r||t.defaultValue)==g.id,name:t.id,id:g.id,value:g.id,className:"app-sdk-form-radio app-sdk-border app-sdk-h-4 app-sdk-w-4 app-sdk-rounded app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-text-[color:var(--asdk-dui-formfield-checkbox-text-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] dark:app-sdk-border-2 dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:focus:app-sdk-shadow-app-sdk-dark"})),De.createElement("div",{className:"app-sdk-ml-3 app-sdk-text-sm"},De.createElement("label",{htmlFor:g.id,className:"app-sdk-font-medium app-sdk-text-[color:var(--asdk-dui-text-color)]"},g.name)))));break;default:let m=r||a?.find(g=>g.id===t.defaultValue)?.id||"";p=De.createElement("select",{id:t.id,name:t.id,className:"app-sdk-form-select app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-mt-1 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-py-2 app-sdk-pl-3 app-sdk-pr-10 app-sdk-text-base app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] invalid:app-sdk-border-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-1 invalid:app-sdk-ring-[color:var(--asdk-dui-formfield-invalid-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-outline-none focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:app-sdk-bg-app-sdk-dropdown-dark dark:invalid:app-sdk-shadow-app-sdk-dark-invalid dark:focus:app-sdk-shadow-app-sdk-dark",onChange:g=>g.target.dataset.value=g.target.value,"data-value":m,"aria-describedby":o?.hint?`${t.id}-hint`:void 0,"data-form-field-type":"enum",defaultValue:m},De.createElement("option",{value:""},!m&&o?.placeholder),a?.map(g=>De.createElement("option",{key:g.id,value:g.id},g.name)));break}let d=o?.hint?De.createElement("p",{id:`${t.id}-hint`,className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]"},o.hint):null;return De.createElement("div",null,De.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:t.id},i),p,d)});import mo from"react";function Gi(e){let{formField:t}=e,r=`${t.id}-hint`,n=Z(t.customForm);return mo.createElement("div",null,mo.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:t.id},t.label),mo.createElement("input",{className:"app-sdk-form-input app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:focus:app-sdk-shadow-app-sdk-dark",type:"file",id:t.id,name:t.id,"aria-describedby":r,"data-form-field-type":"file",multiple:n?.multiple}),n?.hint&&mo.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:r},n?.hint))}import an,{forwardRef as um}from"react";var qi=um(function({formField:t},r){let n=Z(t.customForm),o;switch(n?.style){case"heading_1":o=an.createElement("h1",{className:"app-sdk-text-2xl app-sdk-font-bold"},t.defaultValue?.toString()||t.label?.toString());break;case"heading_2":o=an.createElement("h2",{className:"app-sdk-text-xl app-sdk-font-bold"},t.defaultValue?.toString()||t.label?.toString());break;case"heading_3":o=an.createElement("h3",{className:"app-sdk-text-lg app-sdk-font-bold"},t.defaultValue?.toString()||t.label?.toString());break;default:o=an.createElement("h1",{className:"app-sdk-text-2xl app-sdk-font-bold"},t.defaultValue?.toString()||t.label?.toString());break}return an.createElement("div",{className:"app-sdk-header-form-field"},o)});import fm from"react";function Yi(e){let{formField:t}=e;return fm.createElement("input",{className:"app-sdk-hidden",type:"hidden",id:t.id,value:t.defaultValue?.toString()||"",name:t.id,"data-form-field-type":"hidden"})}import sn,{forwardRef as mm}from"react";var Ki=mm(function({formField:t,state:r},n){let o=Z(t.customForm);return fo(t.defaultValue)||console.warn(`[@5minds/processcube_app_sdk:DynamicUi] Invalid default value for integer field "${t.id}"`),sn.createElement("div",null,sn.createElement("label",{htmlFor:t.id,className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium"},t.label),sn.createElement("div",{className:"app-sdk-mt-1"},sn.createElement("input",{className:"app-sdk-form-input app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm invalid:app-sdk-border-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-1 invalid:app-sdk-ring-[color:var(--asdk-dui-formfield-invalid-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:invalid:app-sdk-shadow-app-sdk-dark-invalid dark:focus:app-sdk-shadow-app-sdk-dark",type:"number",step:1,id:t.id,name:t.id,defaultValue:r||t.defaultValue?.toString(),placeholder:o?.placeholder??"0","aria-describedby":`${t.id}-hint`,"data-form-field-type":"integer"})),o?.hint&&sn.createElement("p",{id:`${t.id}-hint`,"data-hint":!0,className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]"},o.hint))});import pn from"react";function Xi(e){let{formField:t}=e,r=`${t.id}-hint`,n=Z(t.customForm);t.defaultValue&&!hm(t.defaultValue.toString())&&console.warn(`[@5minds/processcube_app_sdk:DynamicUi] Invalid default value for month field "${t.id}"`);let o=e.state||t.defaultValue?.toString();return pn.createElement("div",null,pn.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:t.id},t.label),pn.createElement("div",{className:"app-sdk-mt-1"},pn.createElement("input",{className:"app-sdk-form-input app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm invalid:app-sdk-border-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-1 invalid:app-sdk-ring-[color:var(--asdk-dui-formfield-invalid-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:invalid:app-sdk-shadow-app-sdk-dark-invalid dark:focus:app-sdk-shadow-app-sdk-dark",type:"month",defaultValue:o,id:t.id,name:t.id,"aria-describedby":r,"data-form-field-type":"month"})),n?.hint&&pn.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:r},n?.hint))}function hm(e){return/^\d{4}-(0[1-9]|1[0-2])$/.test(e)}import ym from"isomorphic-dompurify";import{marked as Qi}from"marked";import gm,{forwardRef as vm}from"react";import{useEffect as km,useState as wm}from"react";var ea=vm(function({formField:{defaultValue:t,label:r}},n){let[o,i]=wm("");return km(()=>{let a=Qi.parse(t?.toString()??r?.toString()??"",{renderer:new Ji,hooks:new Zi});i(a)},[t,r]),gm.createElement("div",{className:xe("app-sdk-text-sm","[&_p]:app-sdk-my-4 first-of-type:[&_p]:app-sdk-mb-4 first-of-type:[&_p]:app-sdk-mt-0","[&_a]:app-sdk-text-[color:var(--asdk-dui-link-color)] [&_a]:app-sdk-underline hover:[&_a]:app-sdk-text-[color:var(--asdk-dui-link-hover-color)]","[&_h1]:app-sdk-text-2xl [&_h1]:app-sdk-font-bold [&_h2]:app-sdk-text-xl [&_h2]:app-sdk-font-bold [&_h3]:app-sdk-text-lg [&_h3]:app-sdk-font-bold [&_h4]:app-sdk-text-base [&_h4]:app-sdk-font-bold [&_h5]:app-sdk-text-sm [&_h5]:app-sdk-font-bold [&_h6]:app-sdk-text-xs [&_h6]:app-sdk-font-bold","[&_code]:app-sdk-text-[#e83e8c] [&_pre]:app-sdk-my-4 [&_pre]:app-sdk-bg-gray-100 [&_pre]:dark:app-sdk-bg-app-sdk-gray-700 [&_pre_code]:app-sdk-text-inherit","[&_blockquote]:app-sdk-m-[revert] [&_fieldset]:app-sdk-m-[revert] [&_h1]:app-sdk-m-[revert] [&_h2]:app-sdk-m-[revert] [&_h3]:app-sdk-m-[revert] [&_h4]:app-sdk-m-[revert] [&_h5]:app-sdk-m-[revert] [&_h6]:app-sdk-m-[revert] [&_menu]:app-sdk-m-[revert] [&_ol]:app-sdk-m-[revert] [&_ul]:app-sdk-m-[revert]","[&_fieldset]:app-sdk-p-[revert] [&_menu]:app-sdk-p-[revert] [&_ol]:app-sdk-p-[revert] [&_ul]:app-sdk-p-[revert]","[&_ol]:app-sdk-list-decimal [&_ol_p]:app-sdk-my-2 first-of-type:[&_ol_p]:app-sdk-my-4 [&_ul]:app-sdk-list-disc [&_ul_p]:app-sdk-my-2 first-of-type:[&_ul_p]:app-sdk-my-4","[&_input[type='checkbox']]:app-sdk-form-checkbox [&_input[type='checkbox']]:app-sdk-border [&_input[type='checkbox']]:app-sdk-h-4 [&_input[type='checkbox']]:app-sdk-w-4 [&_input[type='checkbox']]:app-sdk-rounded [&_input[type='checkbox']]:app-sdk-border-[color:var(--asdk-dui-border-color)] [&_input[type='checkbox']]:app-sdk-text-sky-600 [&_input[type='checkbox']]:hover:app-sdk-border-[color:var(--asdk-dui-border-color)] [&_input[type='checkbox']]:dark:app-sdk-border-2 [&_input[type='checkbox']]:dark:app-sdk-border-solid [&_input[type='checkbox']]:dark:app-sdk-border-transparent [&_input[type='checkbox']]:dark:app-sdk-bg-app-sdk-gray-350 [&_input[type='checkbox']]:dark:app-sdk-text-[#007bff40] [&_input[type='checkbox']]:dark:hover:app-sdk-border-transparent [&_input[type='checkbox']]:dark:hover:checked:app-sdk-bg-app-sdk-gray-350"),dangerouslySetInnerHTML:{__html:o}})}),Ji=class extends Qi.Renderer{link(t){return super.link(t).replace("<a","<a target='_blank'")}html(t){let r=super.html(t);return r.startsWith("<a ")&&!r.includes("target=")?r.replace("<a ",'<a target="_blank" '):r}},Zi=class extends Qi.Hooks{postprocess(t){return ym.sanitize(t,{ADD_ATTR:["target"]})}};import ln from"react";function ta(e){let{formField:t}=e,r=`${t.id}-hint`,n=Z(t.customForm),o=e.state||(t.defaultValue?.toString()??"");return ln.createElement("div",null,ln.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:t.id},t.label),ln.createElement("div",{className:"app-sdk-mt-1"},ln.createElement("input",{className:"app-sdk-form-input app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:focus:app-sdk-shadow-app-sdk-dark",type:"password",id:t.id,name:t.id,defaultValue:o,placeholder:n?.placeholder,"aria-describedby":r,"data-form-field-type":"password"})),n?.hint&&ln.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:r},n?.hint))}import Bt from"react";function ra({formField:e,state:t}){let r=Z(e.customForm),n=r?.entries,o=`${e.id}-hint`;return Bt.createElement("div",null,Bt.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:e.id},e.label),Bt.createElement("fieldset",{id:e.id,className:"app-sdk-pl-0 app-sdk-pb-0 app-sdk-space-y-2","data-type":"radio","aria-describedby":r?.hint?`${e.id}-hint`:void 0,"data-form-field-type":"radio"},n?.map(i=>Bt.createElement("div",{key:i.key,className:"app-sdk-relative app-sdk-flex app-sdk-items-start"},Bt.createElement("div",{className:"app-sdk-flex app-sdk-h-5 app-sdk-items-center"},Bt.createElement("input",{type:"radio",defaultChecked:(t||e.defaultValue)==i.key,name:e.id,id:i.key,value:i.key,className:"app-sdk-form-radio app-sdk-border app-sdk-h-4 app-sdk-w-4 app-sdk-rounded app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-text-[color:var(--asdk-dui-formfield-checkbox-text-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] dark:app-sdk-border-2 dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:focus:app-sdk-shadow-app-sdk-dark"})),Bt.createElement("div",{className:"app-sdk-ml-3 app-sdk-text-sm"},Bt.createElement("label",{htmlFor:i.key,className:"app-sdk-font-medium app-sdk-text-[color:var(--asdk-dui-text-color)]"},i.value))))),r?.hint&&Bt.createElement("p",{className:"app-sdk-mt-1 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:o},r?.hint))}import Sr,{useState as bm}from"react";function na({formField:e,state:t}){let r=Z(e.customForm),n=e.label,o=r?.min||0,i=r?.max||100,a=r?.step||1,p=t||e.defaultValue?.toString()||o.toString(),[d,u]=bm(p),m=_=>{u(_.target.value)},g=Sr.createElement("input",{className:xe("app-sdk-form-input app-sdk-block app-sdk-w-full app-sdk-appearance-auto app-sdk-px-0 app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] focus:app-sdk-ring-transparent focus:app-sdk-border-transparent"),id:e.id,name:e.id,type:"range",min:o.toString(),max:i.toString(),step:a.toString(),defaultValue:p,onChange:m,"aria-describedby":r?.hint?`${e.id}-hint`:void 0,"data-form-field-type":"range"}),E=r?.hint?Sr.createElement("p",{id:`${e.id}-hint`,className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]"},r.hint):null;return Sr.createElement("div",null,Sr.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:e.id},n),Sr.createElement("div",{className:"app-sdk-mt-1 app-sdk-flex app-sdk-flex-row"},g,Sr.createElement("span",{className:"app-sdk-mt-2 app-sdk-ml-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-text-color)]"},d)),E)}import _r from"react";function oa({formField:e,state:t}){let r=Z(e.customForm),n=r?.entries,o=`${e.id}-hint`,i=t||n?.find(a=>a.key===e.defaultValue)?.key||"";return _r.createElement("div",null,_r.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:e.id},e.label),_r.createElement("select",{id:e.id,name:e.id,className:"app-sdk-form-select app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-mt-1 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-py-2 app-sdk-pl-3 app-sdk-pr-10 app-sdk-text-base app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] invalid:app-sdk-border-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-1 invalid:app-sdk-ring-[color:var(--asdk-dui-formfield-invalid-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-outline-none focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:app-sdk-bg-app-sdk-dropdown-dark dark:invalid:app-sdk-shadow-app-sdk-dark-invalid dark:focus:app-sdk-shadow-app-sdk-dark",onChange:a=>a.target.dataset.value=a.target.value,"data-value":i,"aria-describedby":r?.hint?`${e.id}-hint`:void 0,"data-form-field-type":"select",defaultValue:i},_r.createElement("option",{value:""},!i&&r?.placeholder),n?.map(a=>_r.createElement("option",{key:a.key,value:a.key},a.value))),r?.hint&&_r.createElement("p",{className:"app-sdk-mt-1 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:o},r?.hint))}import Ir,{forwardRef as xm}from"react";import dn from"react";function cn(e){let{formField:t}=e,r=`${t.id}-hint`,n=Z(t.customForm),o=e.state||(t.defaultValue?.toString()??"");return dn.createElement("div",null,dn.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:t.id},t.label),dn.createElement("div",{className:"app-sdk-mt-1"},dn.createElement("textarea",{className:"app-sdk-form-textarea app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:focus:app-sdk-shadow-app-sdk-dark",defaultValue:o,id:t.id,name:t.id,rows:n?.rows??4,"aria-describedby":r,"data-form-field-type":"textarea",placeholder:n?.placeholder})),n?.hint&&dn.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:r},n?.hint))}var ia=xm(function({formField:t,state:r},n){let o=Z(t.customForm);if(o?.multiline==="true")return Ir.createElement(cn,{formField:t,state:r});let a=`${t.id}-hint`,p=r||(t.defaultValue?.toString()??"");return Ir.createElement("div",null,Ir.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:t.id},t.label),Ir.createElement("div",{className:"app-sdk-mt-1"},Ir.createElement("input",{className:"app-sdk-form-input app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:focus:app-sdk-shadow-app-sdk-dark",type:"text",defaultValue:p,id:t.id,name:t.id,"aria-describedby":a,"data-form-field-type":"text",placeholder:o?.placeholder})),o?.hint&&Ir.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:a},o?.hint))});import un from"react";function aa({formField:e,state:t}){let r=Z(e.customForm),n=`${e.id}-hint`;return un.createElement("div",null,un.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:e.id},e.label),un.createElement("div",{className:"app-sdk-mt-1"},un.createElement("input",{className:xe("app-sdk-form-input app-sdk-block app-sdk-w-full app-sdk-appearance-none app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] app-sdk-pl-3 app-sdk-pr-3"),id:e.id,name:e.id,type:"tel",defaultValue:t||(e.defaultValue?.toString()??""),placeholder:r?.placeholder,"aria-describedby":r?.hint?n:void 0,"data-form-field-type":"tel"})),r?.hint&&un.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:n},r.hint))}import fn from"react";function sa(e){let{formField:t}=e,r=`${t.id}-hint`,n=Z(t.customForm);t.defaultValue&&!Em(t.defaultValue.toString())&&console.warn(`[@5minds/processcube_app_sdk:DynamicUi] Invalid default value for time field "${t.id}"`);let o=e.state||t.defaultValue?.toString();return fn.createElement("div",null,fn.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:t.id},t.label),fn.createElement("div",{className:"app-sdk-mt-1"},fn.createElement("input",{className:"app-sdk-form-input app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm invalid:app-sdk-border-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-1 invalid:app-sdk-ring-[color:var(--asdk-dui-formfield-invalid-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:invalid:app-sdk-shadow-app-sdk-dark-invalid dark:focus:app-sdk-shadow-app-sdk-dark",type:"time",defaultValue:o,id:t.id,name:t.id,"aria-describedby":r,"data-form-field-type":"time"})),n?.hint&&fn.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:r},n?.hint))}function Em(e){return/^([01]\d|2[0-3]):([0-5]\d)(:[0-5]\d)?$/.test(e)}import mn from"react";function pa(e){let{formField:t}=e,r=`${t.id}-hint`,n=Z(t.customForm),o=e.state||(t.defaultValue?.toString()??"");return mn.createElement("div",null,mn.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:t.id},t.label),mn.createElement("div",{className:"app-sdk-mt-1"},mn.createElement("input",{className:"app-sdk-form-input app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:focus:app-sdk-shadow-app-sdk-dark",type:"url",id:t.id,defaultValue:o,placeholder:n?.placeholder??"https://processcube.io/",name:t.id,"aria-describedby":r,"data-form-field-type":"url"})),n?.hint&&mn.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:r},n?.hint))}import hn from"react";function la(e){let{formField:t}=e,r=`${t.id}-hint`,n=Z(t.customForm);t.defaultValue&&!Cm(t.defaultValue.toString())&&console.warn(`[@5minds/processcube_app_sdk:DynamicUi] Invalid default value for week field "${t.id}"`);let o=e.state||t.defaultValue?.toString();return hn.createElement("div",null,hn.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:t.id},t.label),hn.createElement("div",{className:"app-sdk-mt-1"},hn.createElement("input",{className:"app-sdk-form-input app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm invalid:app-sdk-border-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-1 invalid:app-sdk-ring-[color:var(--asdk-dui-formfield-invalid-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:invalid:app-sdk-shadow-app-sdk-dark-invalid dark:focus:app-sdk-shadow-app-sdk-dark",type:"week",defaultValue:o,id:t.id,name:t.id,"aria-describedby":r,"data-form-field-type":"week"})),n?.hint&&hn.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:r},n?.hint))}function Cm(e){return/^(\d{4})-W(0[1-9]|[1-4][0-9]|5[0-3])$/.test(e)}var Xp=(y=>(y.paragraph="paragraph",y.header="header",y.confirm="confirm",y.checkbox="checkbox",y.radio="radio",y.select="select",y.range="range",y.file="file",y.hidden="hidden",y.tel="tel",y.textarea="textarea",y.url="url",y.week="week",y.time="time",y.month="month",y.datetimeLocal="datetime-local",y.email="email",y.color="color",y.password="password",y.custom="custom",y))(Xp||{}),jx={...Nm.FlowNodeInstances.UserTaskFormFieldType,...Xp},Jp={boolean:Oi,checkbox:Bi,color:Li,date:$i,email:zi,enum:Wi,file:Gi,hidden:Yi,long:Ki,"datetime-local":ji,month:Xi,number:Hi,string:ia,paragraph:ea,password:ta,radio:ra,range:na,select:oa,header:qi,confirm:Vi,tel:aa,textarea:cn,time:sa,url:pa,week:la,custom:Ui};var Am=Im(fe.version,">=19.0.0 <20",{includePrerelease:!0}),tl=_m(fe.version)==null,Qp=!tl&&Sm(fe.version,"19.0.0")&&fe.version.includes("canary"),el=class extends fe.Component{};function S2(e){Am||console.warn(`[@5minds/processcube_app_sdk:DynamicUi] The React version is not supported!
|
|
15
|
+
${t??""}`.trimEnd()),Lp.add(e))}function D1({href:e,children:t}){ve("DynamicLink","Please use the NextJS Link component instead.");let r=jf();return Hf.createElement("a",{href:e,onClick:n=>{n.preventDefault(),r.replace(e),r.refresh()}},t)}import Ri from"react";import{createRoot as Jf}from"react-dom/client";import{v4 as Zf}from"uuid";import Qf from"react";import de,{useState as Kf}from"react";import{Button as Ti,Divider as jp,Modal as Hp,ModalBody as zp,ModalContent as Wp,ModalFooter as Gp,ModalHeader as qp,useDisclosure as Yp}from"@heroui/react";import Xf from"@monaco-editor/react";import Cr from"react";import zf from"react";function Ni(e){ve("ExecutionCount");let t={width:30};return e.count<=1?null:zf.createElement("div",{style:t,className:"bpmn-element-overlay__below-item bpmn-element-overlay__below-item--execution-count"},e.count)}import Ie from"react";function Si(e){return ve("GotoButton"),Ie.createElement("div",{onClick:e.onClick,className:"bpmn-element-overlay__below-item bpmn-element-overlay__below-item--action"},Ie.createElement("div",{className:"action-icon"},Ie.createElement("svg",{width:"14px",height:"14px",viewBox:"0 0 512 512",version:"1.1",xmlns:"http://www.w3.org/2000/svg",fill:"#000000"},Ie.createElement("g",{id:"SVGRepo_bgCarrier",strokeWidth:"0"}),Ie.createElement("g",{id:"SVGRepo_tracerCarrier",strokeLinecap:"round",strokeLinejoin:"round"}),Ie.createElement("g",{id:"SVGRepo_iconCarrier"}," ",Ie.createElement("title",null,"open-external")," ",Ie.createElement("g",{id:"Page-1",stroke:"none",strokeWidth:"1",fill:"none",fillRule:"evenodd"}," ",Ie.createElement("g",{id:"icon",fill:"#FFFFFF",transform:"translate(85.333333, 64.000000)"}," ",Ie.createElement("path",{d:"M128,63.999444 L128,106.666444 L42.6666667,106.666667 L42.6666667,320 L256,320 L256,234.666444 L298.666,234.666444 L298.666667,362.666667 L4.26325641e-14,362.666667 L4.26325641e-14,64 L128,63.999444 Z M362.666667,1.42108547e-14 L362.666667,170.666667 L320,170.666667 L320,72.835 L143.084945,249.751611 L112.915055,219.581722 L289.83,42.666 L192,42.6666667 L192,1.42108547e-14 L362.666667,1.42108547e-14 Z",id:"Combined-Shape"}," ")," ")," ")," "))),Ie.createElement("div",{className:"action-icon-hovered"},Ie.createElement("svg",{width:"14px",height:"14px",viewBox:"0 0 512 512",version:"1.1",xmlns:"http://www.w3.org/2000/svg",fill:"#000000"},Ie.createElement("g",{id:"SVGRepo_bgCarrier",strokeWidth:"0"}),Ie.createElement("g",{id:"SVGRepo_tracerCarrier",strokeLinecap:"round",strokeLinejoin:"round"}),Ie.createElement("g",{id:"SVGRepo_iconCarrier"}," ",Ie.createElement("title",null,"goto process")," ",Ie.createElement("g",{id:"Page-1",stroke:"none",strokeWidth:"1",fill:"none",fillRule:"evenodd"}," ",Ie.createElement("g",{id:"icon",fill:"#FFFFFF",transform:"translate(85.333333, 64.000000)"}," ",Ie.createElement("path",{d:"M128,63.999444 L128,106.666444 L42.6666667,106.666667 L42.6666667,320 L256,320 L256,234.666444 L298.666,234.666444 L298.666667,362.666667 L4.26325641e-14,362.666667 L4.26325641e-14,64 L128,63.999444 Z M362.666667,1.42108547e-14 L362.666667,170.666667 L320,170.666667 L320,72.835 L143.084945,249.751611 L112.915055,219.581722 L289.83,42.666 L192,42.6666667 L192,1.42108547e-14 L362.666667,1.42108547e-14 Z",id:"Combined-Shape"}," ")," ")," ")," "))))}import Rt from"react";function _i(e){return ve("PlayButton"),Rt.createElement("div",{onClick:e.onClick,className:"bpmn-element-overlay__below-item bpmn-element-overlay__below-item--action"},Rt.createElement("div",{className:"action-icon"},Rt.createElement("svg",{width:"14px",height:"14px",viewBox:"0 0 24 24",color:"white",fill:"none",xmlns:"http://www.w3.org/2000/svg"},Rt.createElement("g",{id:"Media / Play",color:"white"},Rt.createElement("path",{id:"Vector",d:"M5 17.3336V6.66698C5 5.78742 5 5.34715 5.18509 5.08691C5.34664 4.85977 5.59564 4.71064 5.87207 4.67499C6.18868 4.63415 6.57701 4.84126 7.35254 5.25487L17.3525 10.5882L17.3562 10.5898C18.2132 11.0469 18.642 11.2756 18.7826 11.5803C18.9053 11.8462 18.9053 12.1531 18.7826 12.4189C18.6418 12.7241 18.212 12.9537 17.3525 13.4121L7.35254 18.7454C6.57645 19.1593 6.1888 19.3657 5.87207 19.3248C5.59564 19.2891 5.34664 19.1401 5.18509 18.9129C5 18.6527 5 18.2132 5 17.3336Z",stroke:"#FFFFFF","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"})))),Rt.createElement("div",{className:"action-icon-hovered"},Rt.createElement("svg",{width:"14px",height:"14px",viewBox:"0 0 24 24",color:"white",fill:"white",xmlns:"http://www.w3.org/2000/svg"},Rt.createElement("g",{id:"Media / Play",color:"white"},Rt.createElement("path",{id:"Vector",d:"M5 17.3336V6.66698C5 5.78742 5 5.34715 5.18509 5.08691C5.34664 4.85977 5.59564 4.71064 5.87207 4.67499C6.18868 4.63415 6.57701 4.84126 7.35254 5.25487L17.3525 10.5882L17.3562 10.5898C18.2132 11.0469 18.642 11.2756 18.7826 11.5803C18.9053 11.8462 18.9053 12.1531 18.7826 12.4189C18.6418 12.7241 18.212 12.9537 17.3525 13.4121L7.35254 18.7454C6.57645 19.1593 6.1888 19.3657 5.87207 19.3248C5.59564 19.2891 5.34664 19.1401 5.18509 18.9129C5 18.6527 5 18.2132 5 17.3336Z",stroke:"#FFFFFF","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"})))))}import or from"react";function Ii(e){return ve("RetryButton"),or.createElement("div",{onClick:e.onClick,className:"bpmn-element-overlay__below-item bpmn-element-overlay__below-item--action"},or.createElement("div",{className:"action-icon"},or.createElement("svg",{width:"14px",height:"14px",viewBox:"0 0 16 16",xmlns:"http://www.w3.org/2000/svg"},or.createElement("path",{fill:"#FFFFFF",d:"M10.7667,0.493645 C9.11991,-0.113331 7.31921,-0.161915 5.64208,0.355379 C4.48206,0.713177 3.42569,1.32796 2.54743,2.14597 L1.70711,1.30564 C1.07714,0.675676 0,1.12184 0,2.01275 L0,6.00002 L3.98727,6.00002 C4.87818,6.00002 5.32434,4.92288 4.69438,4.29291 L3.96284,3.56137 C4.61101,2.97184 5.38443,2.52782 6.23156,2.26653 C7.4894,1.87856 8.83993,1.915 10.075,2.37023 C11.3101,2.82547 12.3612,3.67423 13.0664,4.78573 C13.7716,5.89723 14.0916,7.20978 13.9773,8.52112 C13.863,9.83246 13.3206,11.0698 12.4337,12.0425 C11.5469,13.0152 10.3647,13.6693 9.06949,13.9039 C7.77425,14.1385 6.43779,13.9407 5.26607,13.3409 C4.09434,12.7412 3.15236,11.7727 2.5853,10.5848 C2.34738,10.0864 1.75046,9.8752 1.25205,10.1131 C0.753645,10.351 0.542478,10.948 0.7804,11.4464 C1.53649,13.0302 2.79245,14.3215 4.35475,15.1213 C5.91706,15.921 7.699,16.1847 9.42598,15.8719 C11.153,15.559 12.7291,14.687 13.9116,13.39 C15.0941,12.0931 15.8173,10.4433 15.9698,8.69483 C16.1222,6.94637 15.6954,5.1963 14.7552,3.7143 C13.815,2.2323 12.4135,1.10062 10.7667,0.493645 Z"}))),or.createElement("div",{className:"action-icon-hovered"},or.createElement("svg",{width:"14px",height:"14px",viewBox:"0 0 16 16",xmlns:"http://www.w3.org/2000/svg"},or.createElement("path",{fill:"#FFFFFF",d:"M10.7667,0.493645 C9.11991,-0.113331 7.31921,-0.161915 5.64208,0.355379 C4.48206,0.713177 3.42569,1.32796 2.54743,2.14597 L1.70711,1.30564 C1.07714,0.675676 0,1.12184 0,2.01275 L0,6.00002 L3.98727,6.00002 C4.87818,6.00002 5.32434,4.92288 4.69438,4.29291 L3.96284,3.56137 C4.61101,2.97184 5.38443,2.52782 6.23156,2.26653 C7.4894,1.87856 8.83993,1.915 10.075,2.37023 C11.3101,2.82547 12.3612,3.67423 13.0664,4.78573 C13.7716,5.89723 14.0916,7.20978 13.9773,8.52112 C13.863,9.83246 13.3206,11.0698 12.4337,12.0425 C11.5469,13.0152 10.3647,13.6693 9.06949,13.9039 C7.77425,14.1385 6.43779,13.9407 5.26607,13.3409 C4.09434,12.7412 3.15236,11.7727 2.5853,10.5848 C2.34738,10.0864 1.75046,9.8752 1.25205,10.1131 C0.753645,10.351 0.542478,10.948 0.7804,11.4464 C1.53649,13.0302 2.79245,14.3215 4.35475,15.1213 C5.91706,15.921 7.699,16.1847 9.42598,15.8719 C11.153,15.559 12.7291,14.687 13.9116,13.39 C15.0941,12.0931 15.8173,10.4433 15.9698,8.69483 C16.1222,6.94637 15.6954,5.1963 14.7552,3.7143 C13.815,2.2323 12.4135,1.10062 10.7667,0.493645 Z"}))))}function Pi(e){ve("FlowNodeButtonArea");let t={marginTop:"7px"},r=e.flowNode,n=!!e.onRetryClick,o=!r.IsGateway&&r.ProcessInstanceState!=="running"&&r.ProcessInstanceState!=="finished"&&n,i=!!e.onGotoClick,a=(r.IsCallActivity||(r.IsEventReceiver||r.IsEventSender)&&r.LinkedProcessInstanceId)&&i,p=!!e.onPlayClick,d=(r.IsUserTask||r.IsManualTask)&&r.State==="suspended"&&p;return Cr.createElement("div",{className:"flownode-overlay",style:t},Cr.createElement("div",{className:"bpmn-element-overlay__below"},o&&Cr.createElement(Ii,{onClick:e.onRetryClick,flowNode:e.flowNode}),Cr.createElement(Ni,{count:e.flowNode.ExecutionCount}),a&&Cr.createElement(Si,{onClick:e.onGotoClick}),d&&Cr.createElement(_i,{onClick:e.onPlayClick})))}import Vp from"react";function Fi(e){ve("FlowNodeColorArea");let t={width:e.width,height:e.height},r="",n={width:e.width,height:e.height};return e.flowNode.IsGateway?(n.height*=.7,n.width*=.7,r="bpmn-element-overlay-backdrop--gateway"):e.flowNode.IsEvent&&(r="bpmn-element-overlay-backdrop--rounded"),Vp.createElement("div",{onClick:e.onClick,className:"bpmn-element-overlay-backdrop cursor-pointer",style:t},Vp.createElement("div",{className:`flow-node-${e.flowNode.State}-state-overlay ${r}`,style:n}))}import{createRoot as Wf}from"react-dom/client";import Gf from"react-markdown";import qf from"remark-gfm";import Ke,{useEffect as Yf}from"react";import{Divider as Up}from"@heroui/react";import $p from"@monaco-editor/react";function Ai(e){ve("FlowNodeInfoComponent");function t(r){setTimeout(()=>{r.getAction("editor.action.formatDocument").run(),r.updateOptions({readOnly:!0})},300)}return Yf(()=>{let r=Ke.createElement(Gf,{remarkPlugins:[qf]},e.flowNode.Documentation),n=document.getElementById("markdown-container");if(n){let o=n.attachShadow({mode:"open"});Wf(o).render(r)}},[]),Ke.createElement(Ke.Fragment,null,Ke.createElement(Up,{className:"my-2"}),Ke.createElement("div",{className:"flex-row"},Ke.createElement("div",{className:"token-area"},Ke.createElement("p",null,"Start Token:"),Ke.createElement($p,{className:"monaco-editor",height:"25vh",defaultLanguage:"json",theme:"vs-light",defaultValue:JSON.stringify(e.flowNode.CurrentStartToken,null,2),onMount:t,options:{formatOnPaste:!0,formatOnType:!0,minimap:{enabled:!1},lineNumbers:"off"}}),Ke.createElement(Up,{className:"my-2"}),Ke.createElement("p",null,"End Token:"),Ke.createElement($p,{className:"monaco-editor",height:"25vh",defaultLanguage:"json",theme:"vs-light",defaultValue:JSON.stringify(e.flowNode.CurrentEndToken,null,2),onMount:t,options:{formatOnPaste:!0,formatOnType:!0,minimap:{enabled:!1},lineNumbers:"off"}})),Ke.createElement("div",{className:"documentation-area"},Ke.createElement("p",null,"Dokumentation:"),Ke.createElement("div",{id:"markdown-container"}))))}function Di(e){ve("FlowNodeOverlay");let t=Yp(),r=Yp(),[n,o]=Kf(JSON.stringify(e.flowNode.CurrentStartToken));function i(p){setTimeout(()=>{p.getAction("editor.action.formatDocument").run()},300)}let a={width:e.width,height:e.height+10};return de.createElement(de.Fragment,null,de.createElement("div",{style:a},de.createElement(Fi,{onClick:r.onOpen,...e}),de.createElement(Pi,{onRetryClick:e.retryAction?t.onOpen:void 0,onGotoClick:e.gotoProcessAction?()=>e.gotoProcessAction(e.flowNode.LinkedProcessInstanceId??""):void 0,onPlayClick:e.gotoManualOrUserTaskAction?()=>e.gotoManualOrUserTaskAction(e.flowNode.ProcessInstanceId,e.flowNode.Id):void 0,flowNode:e.flowNode})),de.createElement(Hp,{isOpen:t.isOpen,onOpenChange:t.onOpenChange},de.createElement(Wp,null,p=>de.createElement(de.Fragment,null,de.createElement(qp,{className:"flex flex-col gap-1"},"Confirm Retry"),de.createElement(zp,null,de.createElement(jp,{className:"my-2"}),de.createElement("p",null,"Are you sure you want to retry process instance ",e.flowNode.CurrentFlowNodeInstanceId,"?"),de.createElement(jp,{className:"my-2"}),de.createElement(Xf,{className:"monaco-editor",height:"25vh",defaultLanguage:"json",theme:"vs-light",defaultValue:JSON.stringify(e.flowNode.CurrentStartToken,null,2),onChange:(d,u)=>o(d??""),onMount:i,options:{formatOnPaste:!0,formatOnType:!0,minimap:{enabled:!1},lineNumbers:"off"}})),de.createElement(Gp,null,de.createElement(Ti,{color:"warning",variant:"light",onPress:p},"Close"),de.createElement(Ti,{color:"primary",onPress:()=>{e.retryAction?.(e.flowNode.ProcessInstanceId,e.flowNode.CurrentFlowNodeInstanceId,JSON.parse(n)),p()}},"Retry"))))),de.createElement(Hp,{size:"4xl",isOpen:r.isOpen,onOpenChange:r.onOpenChange},de.createElement(Wp,null,p=>de.createElement(de.Fragment,null,de.createElement(qp,{className:"flex flex-col gap-1"},"FlowNode: ",e.flowNode.Name??e.flowNode.Id),de.createElement(zp,null,de.createElement(Ai,{flowNode:e.flowNode})),de.createElement(Gp,null,de.createElement(Ti,{color:"primary",onPress:p},"Close"))))))}var Mi=class{id;flowNodeInstances;processInstanceState;documentation;triggeredFlowNodeInstance;type;get Id(){return this.id}get Name(){return this.flowNodeInstances.at(-1)?.flowNodeName}get CurrentFlowNodeInstanceId(){return this.flowNodeInstances.at(-1)?.flowNodeInstanceId}get CurrentStartToken(){return this.flowNodeInstances.at(-1)?.startToken}get CurrentEndToken(){return this.flowNodeInstances.at(-1)?.endToken}get LinkedProcessInstanceId(){let t=this.flowNodeInstances.at(-1);if(this.IsCallActivity)return t.childProcessInstanceId;if(this.IsEventReceiver)return t?.triggeredByFlowNodeInstance?.processInstanceId;if(this.IsEventSender&&this.triggeredFlowNodeInstance)return this.triggeredFlowNodeInstance.processInstanceId}get State(){return this.flowNodeInstances.at(-1)?.state??""}get Documentation(){return this.documentation}get ProcessInstanceState(){return this.processInstanceState}get IsGateway(){return this.type==="bpmn:ComplexGateway"||this.type==="bpmn:ParallelGateway"||this.type==="bpmn:ExclusiveGateway"||this.type==="bpmn:InclusiveGateway"||this.type==="bpmn:EventBasedGateway"}get IsEvent(){return this.type==="bpmn:StartEvent"||this.type==="bpmn:EndEvent"||this.type==="bpmn:IntermediateCatchEvent"||this.type==="bpmn:IntermediateThrowEvent"||this.type==="bpmn:BoundaryEvent"}get IsEventReceiver(){return this.type==="bpmn:StartEvent"||this.type==="bpmn:IntermediateCatchEvent"||this.type==="bpmn:BoundaryEvent"||this.type==="bpmn:ReceiveTask"}get IsEventSender(){return this.type==="bpmn:EndEvent"||this.type==="bpmn:IntermediateThrowEvent"||this.type==="bpmn:SendTask"}get IsCallActivity(){return this.type==="bpmn:CallActivity"}get IsUserTask(){return this.type==="bpmn:UserTask"}get IsManualTask(){return this.type==="bpmn:ManualTask"}get ExecutionCount(){return this.flowNodeInstances.length}get ProcessInstanceId(){return this.flowNodeInstances.at(-1)?.processInstanceId??""}constructor(t,r,n,o){this.id=t,this.flowNodeInstances=[],this.processInstanceState=r,this.documentation=n,this.triggeredFlowNodeInstance=o,this.type=""}addFlowNodeInstance(t){this.flowNodeInstances.push(t),this.type=t.flowNodeType}},Zr=class{canvas;overlays;elementRegistry;overlayIds;overlayRoots;constructor(t){ve("BpmnViewerOverlayCreator"),this.canvas=t.get("canvas"),this.overlays=t.get("overlays"),this.elementRegistry=t.get("elementRegistry"),this.overlayIds=[],this.overlayRoots={}}createOverlaysFlowNodeInstances(t,r,n,o,i,a){let p=this.getExecutedFlowNodes(r,t,n);this.overlayIds=[];for(let u of p){let m=this.elementRegistry.get(u.Id);this.getOrCreateOverlayRoot(u)?.render(Qf.createElement(Di,{flowNode:u,width:m.width,height:m.height,retryAction:o,gotoProcessAction:i,gotoManualOrUserTaskAction:a})),this.setSequenceFlowsColor(m,p)}let d=[];for(let u in this.overlayRoots)p.find(g=>g.Id===u)||d.push(u);d.forEach(u=>{let m=this.elementRegistry.get(u);this.removeSequenceFlowsColor(m),this.overlayRoots[u].unmount(),delete this.overlayRoots[u]})}getOrCreateOverlayRoot(t){if(t.Id in this.overlayRoots)return this.overlayRoots[t.Id];let r=`bpmn-element-overlay-${Zf()}`,n=`<div id="${r}"></div>`,o=this.overlays.add(t.Id,{position:{top:0,left:0},html:n});this.overlayIds.push(o);let i=document.querySelector(`#${r}`);if(i){let a=Jf(i);return this.overlayRoots[t.Id]=a,a}}getExecutedFlowNodes(t,r,n){let o=[],i={};for(let a of n)a.triggeredByFlowNodeInstance&&(i[a.triggeredByFlowNodeInstance?.flowNodeInstanceId]=a);for(let a of t){let p=o.find(d=>d.Id===a.flowNodeId);if(!p){let d=this.elementRegistry.get(a.flowNodeId),u=d.businessObject.documentation?d.businessObject.documentation[0].text:"";p=new Mi(a.flowNodeId,r,u,i[a.flowNodeInstanceId]),o.push(p)}p.addFlowNodeInstance(a)}return o}setSequenceFlowsColor(t,r){if(t&&t.businessObject.incoming)for(let n of t.businessObject.incoming)r.find(i=>i.Id===n.sourceRef?.id)&&this.canvas.addMarker(n.id,"connection-done")}removeSequenceFlowsColor(t){if(t&&t.businessObject.incoming){for(let r of t.businessObject.incoming)this.canvas.removeMarker(r.id,"connection-done");if(t.businessObject.outgoing)for(let r of t.businessObject.outgoing)this.canvas.removeMarker(r.id,"connection-done")}}};var em={canvas:{autoFocus:!0}},Kp=class extends Ri.Component{containerRef;bpmnViewer;bpmnViewerOverlayCreator;constructor(t){super(t),ve("BpmnViewerComponent"),this.state={diagramXML:""},this.containerRef=Ri.createRef()}componentDidMount(){let{diagramXML:t,options:r}=this.props,n=this.containerRef.current;if(this.bpmnViewer=new Xt({container:n,height:r?.height??600,bpmnRenderer:{defaultFillColor:r?.fillColor,defaultStrokeColor:r?.strokeColor},additionalModules:[lo,po,ao],...em}),this.bpmnViewerOverlayCreator=new Zr(this.bpmnViewer),t)return this.displayDiagram(t)}componentWillUnmount(){this.bpmnViewer.destroy()}componentDidUpdate(t,r){let{props:n,state:o}=this,i=n.diagramXML||o.diagramXML,a=t.diagramXML||r.diagramXML;if(i&&i!==a)return this.displayDiagram(i);this.bpmnViewerOverlayCreator.createOverlaysFlowNodeInstances(this.props.processInstanceState,this.props.flowNodeInstances,n.flowNodeInstancesTriggeredByThisProcessInstance,n.retryAction,n.gotoProcessAction,n.gotoManualOrUserTaskAction)}displayDiagram(t){this.bpmnViewer.importXML(t).then(()=>{let r=this.bpmnViewer.get("canvas"),n=r.viewbox(),o={x:n.outer.width/2,y:n.outer.height/2};r.zoom("fit-viewport",o),this.bpmnViewerOverlayCreator.createOverlaysFlowNodeInstances(this.props.processInstanceState,this.props.flowNodeInstances,this.props.flowNodeInstancesTriggeredByThisProcessInstance,this.props.retryAction,this.props.gotoProcessAction,this.props.gotoManualOrUserTaskAction)})}render(){return Ri.createElement("div",{className:this.props.className,ref:this.containerRef})}};import*as ir from"react-is";import Sm from"semver/functions/gt.js";import _m from"semver/functions/prerelease.js";import Im from"semver/functions/satisfies.js";import fe,{Fragment as da,createElement as Pm,useRef as Zp}from"react";import{mapUserTask as Fm}from"../common/index.mjs";import{DataModels as Nm}from"@5minds/processcube_engine_sdk";import Nr,{forwardRef as tm}from"react";function Z(e){if(e!=null&&e.trim()!=="")try{return JSON.parse(e)}catch{return null}return null}var Oi=tm(function(t,r){let{formField:n}=t,o=`${n.id}-hint`,i=Z(n.customForm);return Nr.createElement("div",{className:"app-sdk-relative app-sdk-flex app-sdk-items-start"},Nr.createElement("div",{className:"app-sdk-flex app-sdk-h-5 app-sdk-items-center"},Nr.createElement("input",{type:"checkbox",className:"app-sdk-form-checkbox app-sdk-border app-sdk-h-4 app-sdk-w-4 app-sdk-rounded app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-text-[color:var(--asdk-dui-formfield-checkbox-text-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] dark:app-sdk-border-2 dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:focus:app-sdk-shadow-app-sdk-dark",defaultChecked:t.state&&t.state!=="false"||n.defaultValue==="true",id:n.id,name:n.id,"aria-describedby":i?.hint?o:void 0,"data-form-field-type":"boolean"})),Nr.createElement("div",{className:"app-sdk-ml-3 app-sdk-text-sm"},Nr.createElement("label",{className:"app-sdk-font-medium",htmlFor:n.id},n.label),i?.hint&&Nr.createElement("p",{className:"app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:o},i.hint)))});import Ot from"react";function Bi({formField:e,state:t}){let r=Z(e.customForm),n=r?.entries,o=`${e.id}-hint`,i;return Array.isArray(t)&&t.length?i=t:i=(t||e.defaultValue?.toString())?.split(",")??[],Ot.createElement("div",null,Ot.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:e.id},e.label),Ot.createElement("fieldset",{id:e.id,className:"app-sdk-pl-0 app-sdk-pb-0 app-sdk-space-y-2","data-type":"checkbox","aria-describedby":r?.hint?`${e.id}-hint`:void 0,"data-form-field-type":"checkbox"},n?.map(a=>{let p=i.find(d=>d.trim()===a.key);return Ot.createElement("div",{key:a.key,className:"app-sdk-relative app-sdk-flex app-sdk-items-start"},Ot.createElement("div",{className:"app-sdk-flex app-sdk-h-5 app-sdk-items-center"},Ot.createElement("input",{type:"checkbox",defaultChecked:p,name:e.id,id:a.key,value:a.key,className:"app-sdk-form-checkbox app-sdk-border app-sdk-h-4 app-sdk-w-4 app-sdk-rounded app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-text-[color:var(--asdk-dui-formfield-checkbox-text-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] dark:app-sdk-border-2 dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:focus:app-sdk-shadow-app-sdk-dark"})),Ot.createElement("div",{className:"app-sdk-ml-3 app-sdk-text-sm"},Ot.createElement("label",{htmlFor:a.key,className:"app-sdk-font-medium app-sdk-text-[color:var(--asdk-dui-text-color)]"},a.value)))})),r?.hint&&Ot.createElement("p",{className:"app-sdk-mt-1 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:o},r?.hint))}import Qr from"react";function Li(e){let{formField:t}=e,r=`${t.id}-hint`,n=Z(t.customForm);t.defaultValue&&!rm(t.defaultValue.toString())&&console.warn(`[@5minds/processcube_app_sdk:DynamicUi] Invalid default value for color field "${t.id}"`);let o=e.state||t.defaultValue?.toString();return Qr.createElement("div",null,Qr.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:t.id},t.label),Qr.createElement("div",{className:"app-sdk-mt-1 app-sdk-w-20"},Qr.createElement("input",{className:"app-sdk-text-app-sdk-inherit app-sdk-h-8 app-sdk-border app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm invalid:app-sdk-border-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-1 invalid:app-sdk-ring-[color:var(--asdk-dui-formfield-invalid-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:invalid:app-sdk-shadow-app-sdk-dark-invalid dark:focus:app-sdk-shadow-app-sdk-dark",type:"color",defaultValue:o,id:t.id,name:t.id,placeholder:n?.placeholder,"aria-describedby":r,"data-form-field-type":"color"})),n?.hint&&Qr.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:r},n?.hint))}function rm(e){return/^#([0-9A-Fa-f]{3}|[0-9A-Fa-f]{6})$/.test(e?.toString())}import nm,{forwardRef as om}from"react";var Vi=om(function(t,r){return nm.createElement("p",{className:"app-sdk-text-sm"},t.formField.label)});import en from"react";function Ui({formField:e,state:t}){let r=Z(e.customForm);return en.createElement("div",null,en.createElement("label",{htmlFor:e.id,className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium"},e.label),en.createElement("div",{className:"app-sdk-mt-1"},en.createElement("input",{className:"app-sdk-form-input app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm invalid:app-sdk-border-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-1 invalid:app-sdk-ring-[color:var(--asdk-dui-formfield-invalid-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:invalid:app-sdk-shadow-app-sdk-dark-invalid dark:focus:app-sdk-shadow-app-sdk-dark",type:"text",id:e.id,name:e.id,defaultValue:t||(e.defaultValue?.toString()??""),placeholder:r?.placeholder,"aria-describedby":`${e.id}-hint`,"data-form-field-type":"custom"})),r?.hint&&en.createElement("p",{id:`${e.id}-hint`,"data-hint":!0,className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]"},r.hint))}import tn,{forwardRef as im}from"react";var $i=im(function(t,r){let{formField:n}=t,o=`${n.id}-hint`,i=Z(n.customForm);am(n.defaultValue)||console.warn(`[@5minds/processcube_app_sdk:DynamicUi] Invalid default value for date field "${n.id}"`);let a=t.state||n.defaultValue?.toString();return tn.createElement("div",null,tn.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:n.id},n.label),tn.createElement("div",{className:"app-sdk-mt-1"},tn.createElement("input",{className:"app-sdk-form-input app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm invalid:app-sdk-border-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-1 invalid:app-sdk-ring-[color:var(--asdk-dui-formfield-invalid-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:invalid:app-sdk-shadow-app-sdk-dark-invalid dark:focus:app-sdk-shadow-app-sdk-dark",type:"date",defaultValue:a,id:n.id,name:n.id,"aria-describedby":o,"data-form-field-type":"date"})),i?.hint&&tn.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:o},i?.hint))});function am(e){return new Date(e?.toString()).toString()!=="Invalid Date"}import rn from"react";function ji(e){let{formField:t}=e,r=`${t.id}-hint`,n=Z(t.customForm);t.defaultValue&&!lm(t.defaultValue.toString())&&console.warn(`[@5minds/processcube_app_sdk:DynamicUi] Invalid default value for dateteime-local field "${t.id}"`);let o=e.state||t.defaultValue?.toString();return rn.createElement("div",null,rn.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:t.id},t.label),rn.createElement("div",{className:"app-sdk-mt-1"},rn.createElement("input",{className:"app-sdk-form-input app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm invalid:app-sdk-border-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-1 invalid:app-sdk-ring-[color:var(--asdk-dui-formfield-invalid-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:invalid:app-sdk-shadow-app-sdk-dark-invalid dark:focus:app-sdk-shadow-app-sdk-dark",type:"datetime-local",defaultValue:o,id:t.id,name:t.id,"aria-describedby":r,"data-form-field-type":"datetime-local"})),n?.hint&&rn.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:r},n?.hint))}function sm(e){return new Date(e?.toString()).toString()!=="Invalid Date"}function pm(e){return/^([01]\d|2[0-3]):([0-5]\d)(:[0-5]\d)?$/.test(e)}function lm(e){if(!e.includes("T"))return!1;let[t,r]=e.split("T");return sm(t)&&pm(r)}import nn,{forwardRef as dm}from"react";function fo(e){return!Number.isNaN(Number(e?.toString()))}var Hi=dm(function(t,r){let{formField:n}=t,o=`${n.id}-hint`,i=Z(n.customForm);return fo(n.defaultValue)||console.warn(`[@5minds/processcube_app_sdk:DynamicUi] Invalid default value for decimal field "${n.id}"`),nn.createElement("div",null,nn.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:n.id},n.label),nn.createElement("div",{className:"app-sdk-mt-1"},nn.createElement("input",{className:"app-sdk-form-input app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm invalid:app-sdk-border-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-1 invalid:app-sdk-ring-[color:var(--asdk-dui-formfield-invalid-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:invalid:app-sdk-shadow-app-sdk-dark-invalid dark:focus:app-sdk-shadow-app-sdk-dark",type:"number",step:i?.step??.01,placeholder:i?.placeholder||"0.00",defaultValue:t.state||n.defaultValue?.toString(),id:n.id,name:n.id,"aria-describedby":o,"data-form-field-type":"decimal"})),i?.hint&&nn.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:o},i?.hint))});import on from"react";function zi(e){let{formField:t}=e,r=`${t.id}-hint`,n=Z(t.customForm),o=e.state||(t.defaultValue?.toString()??"");return on.createElement("div",null,on.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:t.id},t.label),on.createElement("div",{className:"app-sdk-mt-1"},on.createElement("input",{className:"app-sdk-form-input app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm invalid:app-sdk-border-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-1 invalid:app-sdk-ring-[color:var(--asdk-dui-formfield-invalid-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:invalid:app-sdk-shadow-app-sdk-dark-invalid dark:focus:app-sdk-shadow-app-sdk-dark",type:"email",defaultValue:o,id:t.id,name:t.id,placeholder:n?.placeholder,"aria-describedby":r,"data-form-field-type":"email"})),n?.hint&&on.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:r},n?.hint))}import De,{forwardRef as cm}from"react";var Wi=cm(function({formField:t,state:r},n){let o=Z(t.customForm),i=t.label,a=t.enumValues,p;switch(o?.displayAs){case"checkbox":let u;Array.isArray(r)&&r.length?u=r:u=(r||t.defaultValue?.toString())?.split(",")??[],p=De.createElement("fieldset",{id:t.id,className:"app-sdk-pl-0 app-sdk-pb-0 app-sdk-space-y-2","data-type":"checkbox","aria-describedby":o?.hint?`${t.id}-hint`:void 0,"data-form-field-type":"enum"},a?.map(g=>{let E=u.find(_=>_.trim()===g.id);return De.createElement("div",{key:g.id,className:"app-sdk-relative app-sdk-flex app-sdk-items-start"},De.createElement("div",{className:"app-sdk-flex app-sdk-h-5 app-sdk-items-center"},De.createElement("input",{type:"checkbox",defaultChecked:E,name:t.id,id:g.id,value:g.id,className:"app-sdk-form-checkbox app-sdk-border app-sdk-h-4 app-sdk-w-4 app-sdk-rounded app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-text-[color:var(--asdk-dui-formfield-checkbox-text-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] dark:app-sdk-border-2 dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:focus:app-sdk-shadow-app-sdk-dark"})),De.createElement("div",{className:"app-sdk-ml-3 app-sdk-text-sm"},De.createElement("label",{htmlFor:g.id,className:"app-sdk-font-medium app-sdk-text-[color:var(--asdk-dui-text-color)]"},g.name)))}));break;case"radio":p=De.createElement("fieldset",{id:t.id,className:"app-sdk-pl-0 app-sdk-pb-0 app-sdk-space-y-2","data-type":"radio","aria-describedby":o?.hint?`${t.id}-hint`:void 0,"data-form-field-type":"enum"},a?.map(g=>De.createElement("div",{key:g.id,className:"app-sdk-relative app-sdk-flex app-sdk-items-start"},De.createElement("div",{className:"app-sdk-flex app-sdk-h-5 app-sdk-items-center"},De.createElement("input",{type:"radio",defaultChecked:(r||t.defaultValue)==g.id,name:t.id,id:g.id,value:g.id,className:"app-sdk-form-radio app-sdk-border app-sdk-h-4 app-sdk-w-4 app-sdk-rounded app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-text-[color:var(--asdk-dui-formfield-checkbox-text-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] dark:app-sdk-border-2 dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:focus:app-sdk-shadow-app-sdk-dark"})),De.createElement("div",{className:"app-sdk-ml-3 app-sdk-text-sm"},De.createElement("label",{htmlFor:g.id,className:"app-sdk-font-medium app-sdk-text-[color:var(--asdk-dui-text-color)]"},g.name)))));break;default:let m=r||a?.find(g=>g.id===t.defaultValue)?.id||"";p=De.createElement("select",{id:t.id,name:t.id,className:"app-sdk-form-select app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-mt-1 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-py-2 app-sdk-pl-3 app-sdk-pr-10 app-sdk-text-base app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] invalid:app-sdk-border-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-1 invalid:app-sdk-ring-[color:var(--asdk-dui-formfield-invalid-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-outline-none focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:app-sdk-bg-app-sdk-dropdown-dark dark:invalid:app-sdk-shadow-app-sdk-dark-invalid dark:focus:app-sdk-shadow-app-sdk-dark",onChange:g=>g.target.dataset.value=g.target.value,"data-value":m,"aria-describedby":o?.hint?`${t.id}-hint`:void 0,"data-form-field-type":"enum",defaultValue:m},De.createElement("option",{value:""},!m&&o?.placeholder),a?.map(g=>De.createElement("option",{key:g.id,value:g.id},g.name)));break}let d=o?.hint?De.createElement("p",{id:`${t.id}-hint`,className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]"},o.hint):null;return De.createElement("div",null,De.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:t.id},i),p,d)});import mo from"react";function Gi(e){let{formField:t}=e,r=`${t.id}-hint`,n=Z(t.customForm);return mo.createElement("div",null,mo.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:t.id},t.label),mo.createElement("input",{className:"app-sdk-form-input app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:focus:app-sdk-shadow-app-sdk-dark",type:"file",id:t.id,name:t.id,"aria-describedby":r,"data-form-field-type":"file",multiple:n?.multiple}),n?.hint&&mo.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:r},n?.hint))}import an,{forwardRef as um}from"react";var qi=um(function({formField:t},r){let n=Z(t.customForm),o;switch(n?.style){case"heading_1":o=an.createElement("h1",{className:"app-sdk-text-2xl app-sdk-font-bold"},t.defaultValue?.toString()||t.label?.toString());break;case"heading_2":o=an.createElement("h2",{className:"app-sdk-text-xl app-sdk-font-bold"},t.defaultValue?.toString()||t.label?.toString());break;case"heading_3":o=an.createElement("h3",{className:"app-sdk-text-lg app-sdk-font-bold"},t.defaultValue?.toString()||t.label?.toString());break;default:o=an.createElement("h1",{className:"app-sdk-text-2xl app-sdk-font-bold"},t.defaultValue?.toString()||t.label?.toString());break}return an.createElement("div",{className:"app-sdk-header-form-field"},o)});import fm from"react";function Yi(e){let{formField:t}=e;return fm.createElement("input",{className:"app-sdk-hidden",type:"hidden",id:t.id,value:t.defaultValue?.toString()||"",name:t.id,"data-form-field-type":"hidden"})}import sn,{forwardRef as mm}from"react";var Ki=mm(function({formField:t,state:r},n){let o=Z(t.customForm);return fo(t.defaultValue)||console.warn(`[@5minds/processcube_app_sdk:DynamicUi] Invalid default value for integer field "${t.id}"`),sn.createElement("div",null,sn.createElement("label",{htmlFor:t.id,className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium"},t.label),sn.createElement("div",{className:"app-sdk-mt-1"},sn.createElement("input",{className:"app-sdk-form-input app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm invalid:app-sdk-border-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-1 invalid:app-sdk-ring-[color:var(--asdk-dui-formfield-invalid-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:invalid:app-sdk-shadow-app-sdk-dark-invalid dark:focus:app-sdk-shadow-app-sdk-dark",type:"number",step:1,id:t.id,name:t.id,defaultValue:r||t.defaultValue?.toString(),placeholder:o?.placeholder??"0","aria-describedby":`${t.id}-hint`,"data-form-field-type":"integer"})),o?.hint&&sn.createElement("p",{id:`${t.id}-hint`,"data-hint":!0,className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]"},o.hint))});import pn from"react";function Xi(e){let{formField:t}=e,r=`${t.id}-hint`,n=Z(t.customForm);t.defaultValue&&!hm(t.defaultValue.toString())&&console.warn(`[@5minds/processcube_app_sdk:DynamicUi] Invalid default value for month field "${t.id}"`);let o=e.state||t.defaultValue?.toString();return pn.createElement("div",null,pn.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:t.id},t.label),pn.createElement("div",{className:"app-sdk-mt-1"},pn.createElement("input",{className:"app-sdk-form-input app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm invalid:app-sdk-border-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-1 invalid:app-sdk-ring-[color:var(--asdk-dui-formfield-invalid-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:invalid:app-sdk-shadow-app-sdk-dark-invalid dark:focus:app-sdk-shadow-app-sdk-dark",type:"month",defaultValue:o,id:t.id,name:t.id,"aria-describedby":r,"data-form-field-type":"month"})),n?.hint&&pn.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:r},n?.hint))}function hm(e){return/^\d{4}-(0[1-9]|1[0-2])$/.test(e)}import ym from"isomorphic-dompurify";import{marked as Qi}from"marked";import gm,{forwardRef as vm}from"react";import{useEffect as km,useState as wm}from"react";var ea=vm(function({formField:{defaultValue:t,label:r}},n){let[o,i]=wm("");return km(()=>{let a=Qi.parse(t?.toString()??r?.toString()??"",{renderer:new Ji,hooks:new Zi});i(a)},[t,r]),gm.createElement("div",{className:xe("app-sdk-text-sm","[&_p]:app-sdk-my-4 first-of-type:[&_p]:app-sdk-mb-4 first-of-type:[&_p]:app-sdk-mt-0","[&_a]:app-sdk-text-[color:var(--asdk-dui-link-color)] [&_a]:app-sdk-underline hover:[&_a]:app-sdk-text-[color:var(--asdk-dui-link-hover-color)]","[&_h1]:app-sdk-text-2xl [&_h1]:app-sdk-font-bold [&_h2]:app-sdk-text-xl [&_h2]:app-sdk-font-bold [&_h3]:app-sdk-text-lg [&_h3]:app-sdk-font-bold [&_h4]:app-sdk-text-base [&_h4]:app-sdk-font-bold [&_h5]:app-sdk-text-sm [&_h5]:app-sdk-font-bold [&_h6]:app-sdk-text-xs [&_h6]:app-sdk-font-bold","[&_code]:app-sdk-text-[#e83e8c] [&_pre]:app-sdk-my-4 [&_pre]:app-sdk-bg-gray-100 [&_pre]:dark:app-sdk-bg-app-sdk-gray-700 [&_pre_code]:app-sdk-text-inherit","[&_blockquote]:app-sdk-m-[revert] [&_fieldset]:app-sdk-m-[revert] [&_h1]:app-sdk-m-[revert] [&_h2]:app-sdk-m-[revert] [&_h3]:app-sdk-m-[revert] [&_h4]:app-sdk-m-[revert] [&_h5]:app-sdk-m-[revert] [&_h6]:app-sdk-m-[revert] [&_menu]:app-sdk-m-[revert] [&_ol]:app-sdk-m-[revert] [&_ul]:app-sdk-m-[revert]","[&_fieldset]:app-sdk-p-[revert] [&_menu]:app-sdk-p-[revert] [&_ol]:app-sdk-p-[revert] [&_ul]:app-sdk-p-[revert]","[&_ol]:app-sdk-list-decimal [&_ol_p]:app-sdk-my-2 first-of-type:[&_ol_p]:app-sdk-my-4 [&_ul]:app-sdk-list-disc [&_ul_p]:app-sdk-my-2 first-of-type:[&_ul_p]:app-sdk-my-4","[&_input[type='checkbox']]:app-sdk-form-checkbox [&_input[type='checkbox']]:app-sdk-border [&_input[type='checkbox']]:app-sdk-h-4 [&_input[type='checkbox']]:app-sdk-w-4 [&_input[type='checkbox']]:app-sdk-rounded [&_input[type='checkbox']]:app-sdk-border-[color:var(--asdk-dui-border-color)] [&_input[type='checkbox']]:app-sdk-text-sky-600 [&_input[type='checkbox']]:hover:app-sdk-border-[color:var(--asdk-dui-border-color)] [&_input[type='checkbox']]:dark:app-sdk-border-2 [&_input[type='checkbox']]:dark:app-sdk-border-solid [&_input[type='checkbox']]:dark:app-sdk-border-transparent [&_input[type='checkbox']]:dark:app-sdk-bg-app-sdk-gray-350 [&_input[type='checkbox']]:dark:app-sdk-text-[#007bff40] [&_input[type='checkbox']]:dark:hover:app-sdk-border-transparent [&_input[type='checkbox']]:dark:hover:checked:app-sdk-bg-app-sdk-gray-350"),dangerouslySetInnerHTML:{__html:o}})}),Ji=class extends Qi.Renderer{link(t){return super.link(t).replace("<a","<a target='_blank'")}html(t){let r=super.html(t);return r.startsWith("<a ")&&!r.includes("target=")?r.replace("<a ",'<a target="_blank" '):r}},Zi=class extends Qi.Hooks{postprocess(t){return ym.sanitize(t,{ADD_ATTR:["target"]})}};import ln from"react";function ta(e){let{formField:t}=e,r=`${t.id}-hint`,n=Z(t.customForm),o=e.state||(t.defaultValue?.toString()??"");return ln.createElement("div",null,ln.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:t.id},t.label),ln.createElement("div",{className:"app-sdk-mt-1"},ln.createElement("input",{className:"app-sdk-form-input app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:focus:app-sdk-shadow-app-sdk-dark",type:"password",id:t.id,name:t.id,defaultValue:o,placeholder:n?.placeholder,"aria-describedby":r,"data-form-field-type":"password"})),n?.hint&&ln.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:r},n?.hint))}import Bt from"react";function ra({formField:e,state:t}){let r=Z(e.customForm),n=r?.entries,o=`${e.id}-hint`;return Bt.createElement("div",null,Bt.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:e.id},e.label),Bt.createElement("fieldset",{id:e.id,className:"app-sdk-pl-0 app-sdk-pb-0 app-sdk-space-y-2","data-type":"radio","aria-describedby":r?.hint?`${e.id}-hint`:void 0,"data-form-field-type":"radio"},n?.map(i=>Bt.createElement("div",{key:i.key,className:"app-sdk-relative app-sdk-flex app-sdk-items-start"},Bt.createElement("div",{className:"app-sdk-flex app-sdk-h-5 app-sdk-items-center"},Bt.createElement("input",{type:"radio",defaultChecked:(t||e.defaultValue)==i.key,name:e.id,id:i.key,value:i.key,className:"app-sdk-form-radio app-sdk-border app-sdk-h-4 app-sdk-w-4 app-sdk-rounded app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-text-[color:var(--asdk-dui-formfield-checkbox-text-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] dark:app-sdk-border-2 dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:focus:app-sdk-shadow-app-sdk-dark"})),Bt.createElement("div",{className:"app-sdk-ml-3 app-sdk-text-sm"},Bt.createElement("label",{htmlFor:i.key,className:"app-sdk-font-medium app-sdk-text-[color:var(--asdk-dui-text-color)]"},i.value))))),r?.hint&&Bt.createElement("p",{className:"app-sdk-mt-1 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:o},r?.hint))}import Sr,{useState as bm}from"react";function na({formField:e,state:t}){let r=Z(e.customForm),n=e.label,o=r?.min||0,i=r?.max||100,a=r?.step||1,p=t||e.defaultValue?.toString()||o.toString(),[d,u]=bm(p),m=_=>{u(_.target.value)},g=Sr.createElement("input",{className:xe("app-sdk-form-input app-sdk-block app-sdk-w-full app-sdk-appearance-auto app-sdk-px-0 app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] focus:app-sdk-ring-transparent focus:app-sdk-border-transparent"),id:e.id,name:e.id,type:"range",min:o.toString(),max:i.toString(),step:a.toString(),defaultValue:p,onChange:m,"aria-describedby":r?.hint?`${e.id}-hint`:void 0,"data-form-field-type":"range"}),E=r?.hint?Sr.createElement("p",{id:`${e.id}-hint`,className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]"},r.hint):null;return Sr.createElement("div",null,Sr.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:e.id},n),Sr.createElement("div",{className:"app-sdk-mt-1 app-sdk-flex app-sdk-flex-row"},g,Sr.createElement("span",{className:"app-sdk-mt-2 app-sdk-ml-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-text-color)]"},d)),E)}import _r from"react";function oa({formField:e,state:t}){let r=Z(e.customForm),n=r?.entries,o=`${e.id}-hint`,i=t||n?.find(a=>a.key===e.defaultValue)?.key||"";return _r.createElement("div",null,_r.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:e.id},e.label),_r.createElement("select",{id:e.id,name:e.id,className:"app-sdk-form-select app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-mt-1 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-py-2 app-sdk-pl-3 app-sdk-pr-10 app-sdk-text-base app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] invalid:app-sdk-border-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-1 invalid:app-sdk-ring-[color:var(--asdk-dui-formfield-invalid-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-outline-none focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:app-sdk-bg-app-sdk-dropdown-dark dark:invalid:app-sdk-shadow-app-sdk-dark-invalid dark:focus:app-sdk-shadow-app-sdk-dark",onChange:a=>a.target.dataset.value=a.target.value,"data-value":i,"aria-describedby":r?.hint?`${e.id}-hint`:void 0,"data-form-field-type":"select",defaultValue:i},_r.createElement("option",{value:""},!i&&r?.placeholder),n?.map(a=>_r.createElement("option",{key:a.key,value:a.key},a.value))),r?.hint&&_r.createElement("p",{className:"app-sdk-mt-1 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:o},r?.hint))}import Ir,{forwardRef as xm}from"react";import dn from"react";function cn(e){let{formField:t}=e,r=`${t.id}-hint`,n=Z(t.customForm),o=e.state||(t.defaultValue?.toString()??"");return dn.createElement("div",null,dn.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:t.id},t.label),dn.createElement("div",{className:"app-sdk-mt-1"},dn.createElement("textarea",{className:"app-sdk-form-textarea app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:focus:app-sdk-shadow-app-sdk-dark",defaultValue:o,id:t.id,name:t.id,rows:n?.rows??4,"aria-describedby":r,"data-form-field-type":"textarea",placeholder:n?.placeholder})),n?.hint&&dn.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:r},n?.hint))}var ia=xm(function({formField:t,state:r},n){let o=Z(t.customForm);if(o?.multiline==="true")return Ir.createElement(cn,{formField:t,state:r});let a=`${t.id}-hint`,p=r||(t.defaultValue?.toString()??"");return Ir.createElement("div",null,Ir.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:t.id},t.label),Ir.createElement("div",{className:"app-sdk-mt-1"},Ir.createElement("input",{className:"app-sdk-form-input app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:focus:app-sdk-shadow-app-sdk-dark",type:"text",defaultValue:p,id:t.id,name:t.id,"aria-describedby":a,"data-form-field-type":"text",placeholder:o?.placeholder})),o?.hint&&Ir.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:a},o?.hint))});import un from"react";function aa({formField:e,state:t}){let r=Z(e.customForm),n=`${e.id}-hint`;return un.createElement("div",null,un.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:e.id},e.label),un.createElement("div",{className:"app-sdk-mt-1"},un.createElement("input",{className:xe("app-sdk-form-input app-sdk-block app-sdk-w-full app-sdk-appearance-none app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] app-sdk-pl-3 app-sdk-pr-3"),id:e.id,name:e.id,type:"tel",defaultValue:t||(e.defaultValue?.toString()??""),placeholder:r?.placeholder,"aria-describedby":r?.hint?n:void 0,"data-form-field-type":"tel"})),r?.hint&&un.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:n},r.hint))}import fn from"react";function sa(e){let{formField:t}=e,r=`${t.id}-hint`,n=Z(t.customForm);t.defaultValue&&!Em(t.defaultValue.toString())&&console.warn(`[@5minds/processcube_app_sdk:DynamicUi] Invalid default value for time field "${t.id}"`);let o=e.state||t.defaultValue?.toString();return fn.createElement("div",null,fn.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:t.id},t.label),fn.createElement("div",{className:"app-sdk-mt-1"},fn.createElement("input",{className:"app-sdk-form-input app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm invalid:app-sdk-border-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-1 invalid:app-sdk-ring-[color:var(--asdk-dui-formfield-invalid-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:invalid:app-sdk-shadow-app-sdk-dark-invalid dark:focus:app-sdk-shadow-app-sdk-dark",type:"time",defaultValue:o,id:t.id,name:t.id,"aria-describedby":r,"data-form-field-type":"time"})),n?.hint&&fn.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:r},n?.hint))}function Em(e){return/^([01]\d|2[0-3]):([0-5]\d)(:[0-5]\d)?$/.test(e)}import mn from"react";function pa(e){let{formField:t}=e,r=`${t.id}-hint`,n=Z(t.customForm),o=e.state||(t.defaultValue?.toString()??"");return mn.createElement("div",null,mn.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:t.id},t.label),mn.createElement("div",{className:"app-sdk-mt-1"},mn.createElement("input",{className:"app-sdk-form-input app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:focus:app-sdk-shadow-app-sdk-dark",type:"url",id:t.id,defaultValue:o,placeholder:n?.placeholder??"https://processcube.io/",name:t.id,"aria-describedby":r,"data-form-field-type":"url"})),n?.hint&&mn.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:r},n?.hint))}import hn from"react";function la(e){let{formField:t}=e,r=`${t.id}-hint`,n=Z(t.customForm);t.defaultValue&&!Cm(t.defaultValue.toString())&&console.warn(`[@5minds/processcube_app_sdk:DynamicUi] Invalid default value for week field "${t.id}"`);let o=e.state||t.defaultValue?.toString();return hn.createElement("div",null,hn.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:t.id},t.label),hn.createElement("div",{className:"app-sdk-mt-1"},hn.createElement("input",{className:"app-sdk-form-input app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-block app-sdk-w-full app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] app-sdk-shadow-sm invalid:app-sdk-border-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-1 invalid:app-sdk-ring-[color:var(--asdk-dui-formfield-invalid-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] sm:app-sdk-text-sm dark:app-sdk-border-solid dark:app-sdk-border-transparent dark:invalid:app-sdk-shadow-app-sdk-dark-invalid dark:focus:app-sdk-shadow-app-sdk-dark",type:"week",defaultValue:o,id:t.id,name:t.id,"aria-describedby":r,"data-form-field-type":"week"})),n?.hint&&hn.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:r},n?.hint))}function Cm(e){return/^(\d{4})-W(0[1-9]|[1-4][0-9]|5[0-3])$/.test(e)}var Xp=(y=>(y.paragraph="paragraph",y.header="header",y.confirm="confirm",y.checkbox="checkbox",y.radio="radio",y.select="select",y.range="range",y.file="file",y.hidden="hidden",y.tel="tel",y.textarea="textarea",y.url="url",y.week="week",y.time="time",y.month="month",y.datetimeLocal="datetime-local",y.email="email",y.color="color",y.password="password",y.custom="custom",y))(Xp||{}),jx={...Nm.FlowNodeInstances.UserTaskFormFieldType,...Xp},Jp={boolean:Oi,checkbox:Bi,color:Li,date:$i,email:zi,enum:Wi,file:Gi,hidden:Yi,long:Ki,"datetime-local":ji,month:Xi,number:Hi,string:ia,paragraph:ea,password:ta,radio:ra,range:na,select:oa,header:qi,confirm:Vi,tel:aa,textarea:cn,time:sa,url:pa,week:la,custom:Ui};var Am=Im(fe.version,">=19.0.0 <20",{includePrerelease:!0}),tl=_m(fe.version)==null,Qp=!tl&&Sm(fe.version,"19.0.0")&&fe.version.includes("canary"),el=class extends fe.Component{};function S2(e){Am||console.warn(`[@5minds/processcube_app_sdk:DynamicUi] The React version is not supported!
|
|
16
16
|
Version: ${fe.version}`);let{userTaskConfig:t}=e.task,{formFields:r}=t,n=Zp(null),o=Zp(null),i=new Map(r.map(A=>[A.id,{ref:fe.createRef()}])),a=r.filter(A=>A.type==="confirm");a.length>1&&console.warn(`[@5minds/processcube_app_sdk:DynamicUi] Warning while rendering UserTask "${e.task.flowNodeId}"!
|
|
17
17
|
The UserTask has more than one confirm form field. Please use only one confirm form field per User Task.
|
|
18
18
|
|
|
@@ -29,6 +29,6 @@ Component Name: ${k.name} ${k.displayName??""}`),Om(k),L=k);let z=i.get(A.id)?.r
|
|
|
29
29
|
|
|
30
30
|
FormField: ${o} with ${n} `);return}r[o]?r[o]=Array.isArray(r[o])?[...r[o],n]:[r[o],n]:r[o]=n}),t.forEach((n,o)=>{if(typeof n.ref.current?.getState=="function"){let i=n.ref.current.getState();(typeof i=="boolean"||typeof i=="number"||typeof i=="string"||Array.isArray(i)||i==null||i?.toString()==="[object Object]")&&(r[o]=i)}}),r}function Lm(e,t,r){let n={};for(let i of e.keys()){let a=e.getAll(i);if(a[0]instanceof File){console.warn(`[@5minds/processcube_app_sdk:DynamicUi] Only plain objects can be passed to Server Components from Client Components. File objects are not supported. Use the raw FormData instance to process files instead.
|
|
31
31
|
|
|
32
|
-
FormField: ${i} with ${a} `);continue}if(a.length===1?n[i]=a[0]:n[i]=a,n[i]==""&&delete n[i],n[i]){let p=t.find(d=>d.id===i)?.type;if(p==="boolean"){n[i]=n[i]==="on";continue}if(p==="confirm"){n[i]=JSON.parse(n[i]);continue}if(p==="number"){n[i]=parseFloat(n[i]);continue}if(p==="long"){n[i]=parseInt(n[i]);continue}}}let o=t.filter(i=>i.type==="boolean");return o.length&&o.forEach(i=>{n[i.id]||(n[i.id]=!1)}),r.forEach((i,a)=>{if(typeof i.ref.current?.getValue=="function"){let p=i.ref.current.getValue();(typeof p=="boolean"||typeof p=="number"||typeof p=="string"||Array.isArray(p)||p==null||p?.toString()==="[object Object]")&&(n[a]=p)}}),n}import{isEqual as ba}from"lodash";import ph from"next/dynamic.js";import{createRoot as lh}from"react-dom/client.js";import Ee,{useCallback as go,useEffect as vo,useRef as dh,useState as Lt}from"react";import{Transition as ch}from"@headlessui/react";import{BpmnType as Et,FlowNodeInstanceState as wl,ProcessInstanceState as bo}from"@5minds/processcube_engine_sdk";import ft,{useState as Vm}from"react";import{Combobox as Um,ComboboxInput as $m,ComboboxOption as jm,ComboboxOptions as Hm,Dialog as zm,DialogBackdrop as Wm,DialogPanel as Gm}from"@headlessui/react";import{UsersIcon as qm}from"@heroicons/react/24/outline.js";function rl(e){let[t,r]=Vm(""),n=t===""?e.entries:e.entries.filter(o=>o.name.toLowerCase().includes(t.toLowerCase()));return ft.createElement(zm,{className:"app-sdk-relative app-sdk-z-50",open:e.isOpen,onClose:()=>{e.onClose(),r("")}},ft.createElement(Wm,{transition:!0,className:"app-sdk-fixed app-sdk-inset-0 app-sdk-bg-gray-500 app-sdk-bg-opacity-25 app-sdk-transition-opacity data-[closed]:app-sdk-opacity-0 data-[enter]:app-sdk-duration-300 data-[leave]:app-sdk-duration-150 data-[enter]:app-sdk-ease-out data-[leave]:app-sdk-ease-in"}),ft.createElement("div",{className:"app-sdk-fixed app-sdk-inset-0 app-sdk-z-10 app-sdk-w-screen app-sdk-overflow-y-auto app-sdk-p-4 sm:app-sdk-p-6 md:app-sdk-p-20"},ft.createElement(Gm,{transition:!0,className:"app-sdk-mx-auto app-sdk-max-w-xl app-sdk-transform app-sdk-rounded-xl app-sdk-bg-[color:var(--asdk-cmdp-background-color)] app-sdk-p-2 app-sdk-shadow-2xl app-sdk-ring-1 app-sdk-ring-black app-sdk-ring-opacity-5 app-sdk-transition-all data-[closed]:app-sdk-scale-95 data-[closed]:app-sdk-opacity-0 data-[enter]:app-sdk-duration-300 data-[leave]:app-sdk-duration-150 data-[enter]:app-sdk-ease-out data-[leave]:app-sdk-ease-in"},ft.createElement(Um,{onChange:o=>{o&&e.onConfirm(o)}},ft.createElement($m,{autoFocus:!0,className:"app-sdk-w-full app-sdk-ring-offset-2 app-sdk-rounded-md app-sdk-border-0 app-sdk-bg-[color:var(--asdk-cmdp-input-color)] app-sdk-px-4 app-sdk-py-2.5 app-sdk-text-[color:var(--asdk-cmdp-text-color)] sm:app-sdk-text-sm",placeholder:e.placeholder,onChange:o=>r(o.target.value),onBlur:()=>r("")}),n.length>0&&ft.createElement(Hm,{static:!0,className:"app-sdk-mb-2 app-sdk-max-h-72 app-sdk-scroll-py-2 app-sdk-overflow-y-auto app-sdk-py-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-cmdp-text-color)]"},n.map(o=>ft.createElement(jm,{key:o.id,value:o,className:({focus:i})=>xe("app-sdk-cursor-default app-sdk-select-none app-sdk-rounded-md app-sdk-px-4 app-sdk-py-2",i&&"app-sdk-bg-[color:var(--asdk-cmdp-focus-color)] app-sdk-text-white")},o.name))),t!==""&&n.length===0&&ft.createElement("div",{className:"app-sdk-px-4 app-sdk-py-14 app-sdk-text-center sm:app-sdk-px-14"},ft.createElement(qm,{className:"app-sdk-mx-auto app-sdk-h-6 app-sdk-w-6 app-sdk-text-gray-400","aria-hidden":"true"}),ft.createElement("p",{className:"app-sdk-mt-4 app-sdk-text-sm app-sdk-text-[color:var(--asdk-cmdp-text-color)]"},e.noResultsText||"No entries found using that search term."))))))}import Ym from"react";function xt({title:e,children:t,className:r,onClick:n}){return Ym.createElement("button",{title:e,className:xe(r,"app-sdk-appearance-none app-sdk-border-none app-sdk-pointer-events-auto app-sdk-cursor-pointer app-sdk-flex app-sdk-w-6 app-sdk-min-w-6 app-sdk-max-w-6 app-sdk-h-4 app-sdk-text-white app-sdk-bg-cyan-800 app-sdk-rounded app-sdk-text-xs app-sdk-items-center app-sdk-justify-center"),onClick:n},t)}import Km from"react";function nl({width:e,children:t}){return Km.createElement("div",{className:"app-sdk-flex app-sdk-gap-1 app-sdk-justify-center app-sdk-flex-wrap",style:{width:`${e}px`}},t)}import ua from"react";function ol({isSender:e,onClick:t}){return ua.createElement(xt,{title:`Go to ${e?"Target":"Source"}`,onClick:t},ua.createElement("svg",{className:"!app-sdk-fill-white",width:"10px",height:"10px",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg"},ua.createElement("path",{d:"M320 0c-17.7 0-32 14.3-32 32s14.3 32 32 32h82.7L201.4 265.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L448 109.3V192c0 17.7 14.3 32 32 32s32-14.3 32-32V32c0-17.7-14.3-32-32-32H320zM80 32C35.8 32 0 67.8 0 112V432c0 44.2 35.8 80 80 80H400c44.2 0 80-35.8 80-80V320c0-17.7-14.3-32-32-32s-32 14.3-32 32V432c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16H192c17.7 0 32-14.3 32-32s-14.3-32-32-32H80z"})))}import fa from"react";function il({onClick:e}){return fa.createElement(xt,{onClick:e,title:"List Instances"},fa.createElement("svg",{className:"!app-sdk-fill-white",width:"10px",height:"10px",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg"},fa.createElement("path",{d:"M24 56c0-13.3 10.7-24 24-24H80c13.3 0 24 10.7 24 24V176h16c13.3 0 24 10.7 24 24s-10.7 24-24 24H40c-13.3 0-24-10.7-24-24s10.7-24 24-24H56V80H48C34.7 80 24 69.3 24 56zM86.7 341.2c-6.5-7.4-18.3-6.9-24 1.2L51.5 357.9c-7.7 10.8-22.7 13.3-33.5 5.6s-13.3-22.7-5.6-33.5l11.1-15.6c23.7-33.2 72.3-35.6 99.2-4.9c21.3 24.4 20.8 60.9-1.1 84.7L86.8 432H120c13.3 0 24 10.7 24 24s-10.7 24-24 24H32c-9.5 0-18.2-5.6-22-14.4s-2.1-18.9 4.3-25.9l72-78c5.3-5.8 5.4-14.6 .3-20.5zM224 64H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H224c-17.7 0-32-14.3-32-32s14.3-32 32-32zm0 160H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H224c-17.7 0-32-14.3-32-32s14.3-32 32-32zm0 160H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H224c-17.7 0-32-14.3-32-32s14.3-32 32-32z"})))}import ma from"react";function al({flowNodeId:e,flowNodeInstanceId:t,flowNodeType:r,processInstanceId:n,onPlay:o}){return ma.createElement(xt,{title:"Run Task",className:"asdk-pii-play-button",onClick:()=>{typeof o=="function"?new Promise(async(i,a)=>{try{await o({flowNodeId:e,processInstanceId:n,flowNodeInstanceId:t,taskType:r}),i(!0)}catch(p){a(p)}}):import("./actions-6WB3ZWEH.mjs").then(({finishTask:i})=>i(t,r))}},ma.createElement("svg",{className:"!app-sdk-fill-none !app-sdk-stroke-white !app-sdk-stroke-[2px]",width:"14px",height:"14px",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},ma.createElement("path",{d:"M5 17.3336V6.66698C5 5.78742 5 5.34715 5.18509 5.08691C5.34664 4.85977 5.59564 4.71064 5.87207 4.67499C6.18868 4.63415 6.57701 4.84126 7.35254 5.25487L17.3525 10.5882L17.3562 10.5898C18.2132 11.0469 18.642 11.2756 18.7826 11.5803C18.9053 11.8462 18.9053 12.1531 18.7826 12.4189C18.6418 12.7241 18.212 12.9537 17.3525 13.4121L7.35254 18.7454C6.57645 19.1593 6.1888 19.3657 5.87207 19.3248C5.59564 19.2891 5.34664 19.1401 5.18509 18.9129C5 18.6527 5 18.2132 5 17.3336Z"})))}import Xm from"react";function sl(){return Xm.createElement("div",{className:"app-sdk-h-6 app-sdk-w-[1px] app-sdk-my-auto app-sdk-border-l app-sdk-border-r-0 app-sdk-border-t-0 app-sdk-border-b-0 app-sdk-border-collapse app-sdk-border-solid app-sdk-border-gray-900 dark:app-sdk-border-gray-300"})}import pl from"react";function ho({children:e}){return pl.createElement("div",{className:"app-sdk-w-full app-sdk-absolute app-sdk-top-0 app-sdk-left-0 app-sdk-z-40 app-sdk-pt-2 app-sdk-pointer-events-none"},pl.createElement("div",{className:"app-sdk-flex app-sdk-w-fit app-sdk-mx-auto app-sdk-rounded-full app-sdk-px-3 app-sdk-py-2 app-sdk-gap-1 app-sdk-border app-sdk-border-solid app-sdk-bg-white/95 dark:app-sdk-bg-black/85 dark:app-sdk-border-none app-sdk-pointer-events-auto"},e))}import ha from"react";import Jm from"react";function Zt({title:e,disabled:t,children:r,onClick:n}){return Jm.createElement("button",{title:`${e??""}${t?" (disabled)":""}`,className:xe("app-sdk-appearance-none app-sdk-border-none app-sdk-bg-transparent app-sdk-flex app-sdk-h-full app-sdk-my-auto app-sdk-rounded-full app-sdk-p-1",t?"app-sdk-cursor-not-allowed":"app-sdk-cursor-pointer hover:app-sdk-bg-app-sdk-gray-100/40"),onClick:n,disabled:t},r)}function ll({onClick:e}){return ha.createElement(Zt,{title:"Refresh Process Instance Data",onClick:e},ha.createElement("svg",{className:"dark:!app-sdk-stroke-app-sdk-gray-50 dark:!app-sdk-fill-app-sdk-gray-50",width:"1.25rem",height:"1.25rem",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg"},ha.createElement("path",{d:"M105.1 202.6c7.7-21.8 20.2-42.3 37.8-59.8c62.5-62.5 163.8-62.5 226.3 0L386.3 160H352c-17.7 0-32 14.3-32 32s14.3 32 32 32H463.5c0 0 0 0 0 0h.4c17.7 0 32-14.3 32-32V80c0-17.7-14.3-32-32-32s-32 14.3-32 32v35.2L414.4 97.6c-87.5-87.5-229.3-87.5-316.8 0C73.2 122 55.6 150.7 44.8 181.4c-5.9 16.7 2.9 34.9 19.5 40.8s34.9-2.9 40.8-19.5zM39 289.3c-5 1.5-9.8 4.2-13.7 8.2c-4 4-6.7 8.8-8.1 14c-.3 1.2-.6 2.5-.8 3.8c-.3 1.7-.4 3.4-.4 5.1V432c0 17.7 14.3 32 32 32s32-14.3 32-32V396.9l17.6 17.5 0 0c87.5 87.4 229.3 87.4 316.7 0c24.4-24.4 42.1-53.1 52.9-83.7c5.9-16.7-2.9-34.9-19.5-40.8s-34.9 2.9-40.8 19.5c-7.7 21.8-20.2 42.3-37.8 59.8c-62.5 62.5-163.8 62.5-226.3 0l-.1-.1L125.6 352H160c17.7 0 32-14.3 32-32s-14.3-32-32-32H48.4c-1.6 0-3.2 .1-4.8 .3s-3.1 .5-4.6 1z"})))}import ya from"react";function dl({onClick:e}){return ya.createElement(xt,{title:"Retry Process Here",onClick:e},ya.createElement("svg",{className:"!app-sdk-fill-white !app-sdk-stroke-white",width:"10px",height:"10px",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg"},ya.createElement("path",{d:"M463.5 224H472c13.3 0 24-10.7 24-24V72c0-9.7-5.8-18.5-14.8-22.2s-19.3-1.7-26.2 5.2L413.4 96.6c-87.6-86.5-228.7-86.2-315.8 1c-87.5 87.5-87.5 229.3 0 316.8s229.3 87.5 316.8 0c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0c-62.5 62.5-163.8 62.5-226.3 0s-62.5-163.8 0-226.3c62.2-62.2 162.7-62.5 225.3-1L327 183c-6.9 6.9-8.9 17.2-5.2 26.2s12.5 14.8 22.2 14.8H463.5z"})))}import et,{useEffect as Zm,useState as Qm}from"react";import{Description as cl,Dialog as eh,DialogBackdrop as th,DialogPanel as rh,DialogTitle as nh}from"@headlessui/react";import oh from"@monaco-editor/react";function ul(e){let[t,r]=Qm("");return Zm(()=>{r(JSON.stringify(e.flowNodeInstance?.startToken??e.processInstance.startToken??{},null,2))},[e.flowNodeInstance,e.processInstance]),et.createElement(eh,{open:e.isOpen,onClose:e.onClose,className:"app-sdk-relative app-sdk-z-50"},et.createElement(th,{transition:!0,className:"app-sdk-fixed app-sdk-inset-0 app-sdk-bg-gray-500 app-sdk-bg-opacity-25 app-sdk-transition-opacity data-[closed]:app-sdk-opacity-0 data-[enter]:app-sdk-duration-300 data-[leave]:app-sdk-duration-150 data-[enter]:app-sdk-ease-out data-[leave]:app-sdk-ease-in"},et.createElement("div",{className:"app-sdk-fixed app-sdk-inset-0 app-sdk-flex app-sdk-w-screen app-sdk-items-center app-sdk-justify-center app-sdk-p-4"},et.createElement(rh,{className:"app-sdk-max-w-lg app-sdk-space-y-4 app-sdk-shadow-2xl app-sdk-bg-[color:var(--asdk-rd-background-color)] app-sdk-p-8 app-sdk-rounded-xl app-sdk-text-[color:var(--asdk-rd-text-color)]"},et.createElement(nh,{className:"app-sdk-font-bold"},"Retry Process Instance"),et.createElement(cl,{className:"app-sdk-break-words"},"Are you sure you want to retry the Process Instance",e.flowNodeInstance&&` at this Flow Node (${e.flowNodeInstance.flowNodeId})`,"?"),et.createElement(cl,null,"You can provide a new start token:"),et.createElement("div",{className:"app-sdk-flex app-sdk-flex-col app-sdk-gap-1"},et.createElement("label",null,"Start Token"),et.createElement(oh,{height:"7rem",defaultLanguage:"json",defaultValue:t,onChange:n=>r(n??""),options:{lineNumbersMinChars:2,readOnly:!1,minimap:{enabled:!1},formatOnPaste:!0,formatOnType:!0}})),et.createElement("div",{className:"app-sdk-flex app-sdk-justify-end app-sdk-gap-2"},et.createElement("button",{className:"app-sdk-bg-[color:var(--asdk-rd-secondary-button-color)] app-sdk-text-[color:var(--asdk-rd-secondary-button-text-color)] app-sdk-rounded-md app-sdk-p-2 app-sdk-border hover:app-sdk-cursor-pointer hover:app-sdk-bg-[color:var(--asdk-rd-secondary-button-hover-color)]",onClick:e.onClose},"Cancel"),et.createElement("button",{className:"app-sdk-bg-[color:var(--asdk-rd-primary-button-color)] app-sdk-text-[color:var(--asdk-rd-primary-button-text-color)] app-sdk-rounded-md app-sdk-p-2 app-sdk-border-0 hover:app-sdk-cursor-pointer hover:app-sdk-bg-[color:var(--asdk-rd-primary-button-hover-color)]",onClick:async()=>{let n=JSON.parse(t);await(await import("./actions-6WB3ZWEH.mjs")).retryProcess(e.processInstance.processInstanceId,e.flowNodeInstance?.flowNodeInstanceId,n),e.onClose()}},"Retry"))))))}import ga from"react";function fl({disabled:e,onClick:t}){return ga.createElement(Zt,{title:"Retry Process",disabled:e,onClick:t},ga.createElement("svg",{className:e?"!app-sdk-stroke-app-sdk-gray-200 dark:!app-sdk-stroke-app-sdk-gray-400 !app-sdk-fill-app-sdk-gray-200 dark:!app-sdk-fill-app-sdk-gray-400":"dark:!app-sdk-stroke-app-sdk-gray-50 dark:!app-sdk-fill-app-sdk-gray-50",width:"1.25rem",height:"1.25rem",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg"},ga.createElement("path",{d:"M463.5 224H472c13.3 0 24-10.7 24-24V72c0-9.7-5.8-18.5-14.8-22.2s-19.3-1.7-26.2 5.2L413.4 96.6c-87.6-86.5-228.7-86.2-315.8 1c-87.5 87.5-87.5 229.3 0 316.8s229.3 87.5 316.8 0c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0c-62.5 62.5-163.8 62.5-226.3 0s-62.5-163.8 0-226.3c62.2-62.2 162.7-62.5 225.3-1L327 183c-6.9 6.9-8.9 17.2-5.2 26.2s12.5 14.8 22.2 14.8H463.5z"})))}import va from"react";function ml({processInstanceId:e,disabled:t}){return va.createElement(Zt,{title:"Terminate Process",disabled:t,onClick:()=>import("./actions-6WB3ZWEH.mjs").then(({terminateProcess:r})=>r(e))},va.createElement("svg",{className:t?"!app-sdk-stroke-app-sdk-gray-200 dark:!app-sdk-stroke-app-sdk-gray-400 !app-sdk-fill-app-sdk-gray-200 dark:!app-sdk-fill-app-sdk-gray-400":"!app-sdk-stroke-red-600 !app-sdk-fill-red-600",width:"1.25rem",height:"1.25rem",viewBox:"0 0 516 516",xmlns:"http://www.w3.org/2000/svg"},va.createElement("path",{d:"M464 256A208 208 0 1 0 48 256a208 208 0 1 0 416 0zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zm192-96l128 0c17.7 0 32 14.3 32 32l0 128c0 17.7-14.3 32-32 32l-128 0c-17.7 0-32-14.3-32-32l0-128c0-17.7 14.3-32 32-32z"})))}import me,{useEffect as ka,useMemo as hl,useState as wa}from"react";import{ArrowsPointingInIcon as yl,ArrowsPointingOutIcon as gl,XMarkIcon as ih}from"@heroicons/react/24/outline.js";import{Editor as vl}from"@monaco-editor/react";function kl(e){let[t,r]=wa(),[n,o]=wa(!0),[i,a]=wa(null),p=m=>{a(i===m?null:m)};ka(()=>(n&&e.flowNodeInstances.length>1&&o(!1),()=>{if(n)return;let m=new URLSearchParams(window.location.search);m.delete("tokenInspectorFocus"),window.history.replaceState(null,"",`${window.location.pathname}?${m.toString()}${window.location.hash}`)}),[n,e.flowNodeInstances]),ka(()=>{if(e.flowNodeInstances.length<2){r(void 0);return}let g=new URLSearchParams(window.location.search).get("tokenInspectorFocus");g||r(e.flowNodeInstances[0]);let E=e.flowNodeInstances.find(_=>_.flowNodeId===g);E&&r(E)},[e.flowNodeInstances]),ka(()=>{if(n)return;let m=new URLSearchParams(window.location.search);t?m.set("tokenInspectorFocus",t.flowNodeId):m.delete("tokenInspectorFocus"),window.history.replaceState(null,"",`${window.location.pathname}?${m.toString()}${window.location.hash}`)},[t,n]);let d=hl(()=>e.flowNodeInstances.length===1?JSON.stringify(e.flowNodeInstances[0].startToken,null,2):JSON.stringify(t?t.startToken:e.processInstance?.startToken??{},null,2),[t,e.flowNodeInstances,e.processInstance]),u=hl(()=>e.flowNodeInstances.length===1?JSON.stringify(e.flowNodeInstances[0].endToken,null,2):JSON.stringify(t?t.endToken:e.processInstance?.endToken??{},null,2),[t,e.flowNodeInstances,e.processInstance]);return me.createElement("div",{className:"app-sdk-flex app-sdk-flex-col app-sdk-h-full app-sdk-rounded-3xl app-sdk-p-4 app-sdk-gap-1 app-sdk-bg-white/95 dark:app-sdk-bg-black/85 dark:app-sdk-text-white app-sdk-border app-sdk-border-solid dark:app-sdk-border-none"},me.createElement("button",{onClick:()=>{e.close()},className:"app-sdk-text-white hover:app-sdk-text-gray-300",title:"Close Token Inspector"},me.createElement(ih,{className:"app-sdk-w-6 app-sdk-h-6"})),me.createElement("div",{className:"app-sdk-flex app-sdk-flex-col app-sdk-gap-4"},e.flowNodeInstances.length===0?me.createElement("label",{className:"app-sdk-break-all"},"Process: ",e.processInstance.processModelId,e.processInstance.processModelName&&` (${e.processInstance.processModelName})`):e.flowNodeInstances.length===1?me.createElement("label",{className:"app-sdk-break-all"},"Flow Node: ",e.flowNodeInstances[0].flowNodeId,e.flowNodeInstances[0].flowNodeName&&` (${e.flowNodeInstances[0].flowNodeName})`):me.createElement("div",{className:"app-sdk-flex app-sdk-flex-col app-sdk-gap-1 app-sdk-w-full"},me.createElement("label",null,"Select Flow Node:"),me.createElement("select",{className:"app-sdk-max-w-full app-sdk-bg-transparent app-sdk-border app-sdk-rounded-md app-sdk-py-2 app-sdk-px-1 app-sdk-text-ellipsis",onChange:m=>r(e.flowNodeInstances.find(g=>g.flowNodeId===m.target.value)),value:t?.flowNodeId??e.flowNodeInstances[0].flowNodeId},e.flowNodeInstances.map(m=>me.createElement("option",{key:`token-inspector-option-${m.flowNodeId}`,value:m.flowNodeId},`${m.flowNodeName?`${m.flowNodeName} (${m.flowNodeId})`:m.flowNodeId}`)))),me.createElement("div",{className:"app-sdk-flex app-sdk-flex-col app-sdk-gap-3"},i&&me.createElement("div",{className:"app-sdk-fixed app-sdk-inset-0 app-sdk-bg-black/30 app-sdk-backdrop-blur-md app-sdk-z-40"}),me.createElement("div",{className:`app-sdk-flex app-sdk-flex-col app-sdk-gap-1
|
|
32
|
+
FormField: ${i} with ${a} `);continue}if(a.length===1?n[i]=a[0]:n[i]=a,n[i]==""&&delete n[i],n[i]){let p=t.find(d=>d.id===i)?.type;if(p==="boolean"){n[i]=n[i]==="on";continue}if(p==="confirm"){n[i]=JSON.parse(n[i]);continue}if(p==="number"){n[i]=parseFloat(n[i]);continue}if(p==="long"){n[i]=parseInt(n[i]);continue}}}let o=t.filter(i=>i.type==="boolean");return o.length&&o.forEach(i=>{n[i.id]||(n[i.id]=!1)}),r.forEach((i,a)=>{if(typeof i.ref.current?.getValue=="function"){let p=i.ref.current.getValue();(typeof p=="boolean"||typeof p=="number"||typeof p=="string"||Array.isArray(p)||p==null||p?.toString()==="[object Object]")&&(n[a]=p)}}),n}import{isEqual as ba}from"lodash";import ph from"next/dynamic.js";import{createRoot as lh}from"react-dom/client";import Ee,{useCallback as go,useEffect as vo,useRef as dh,useState as Lt}from"react";import{Transition as ch}from"@headlessui/react";import{BpmnType as Et,FlowNodeInstanceState as wl,ProcessInstanceState as bo}from"@5minds/processcube_engine_sdk";import ft,{useState as Vm}from"react";import{Combobox as Um,ComboboxInput as $m,ComboboxOption as jm,ComboboxOptions as Hm,Dialog as zm,DialogBackdrop as Wm,DialogPanel as Gm}from"@headlessui/react";import{UsersIcon as qm}from"@heroicons/react/24/outline";function rl(e){let[t,r]=Vm(""),n=t===""?e.entries:e.entries.filter(o=>o.name.toLowerCase().includes(t.toLowerCase()));return ft.createElement(zm,{className:"app-sdk-relative app-sdk-z-50",open:e.isOpen,onClose:()=>{e.onClose(),r("")}},ft.createElement(Wm,{transition:!0,className:"app-sdk-fixed app-sdk-inset-0 app-sdk-bg-gray-500 app-sdk-bg-opacity-25 app-sdk-transition-opacity data-[closed]:app-sdk-opacity-0 data-[enter]:app-sdk-duration-300 data-[leave]:app-sdk-duration-150 data-[enter]:app-sdk-ease-out data-[leave]:app-sdk-ease-in"}),ft.createElement("div",{className:"app-sdk-fixed app-sdk-inset-0 app-sdk-z-10 app-sdk-w-screen app-sdk-overflow-y-auto app-sdk-p-4 sm:app-sdk-p-6 md:app-sdk-p-20"},ft.createElement(Gm,{transition:!0,className:"app-sdk-mx-auto app-sdk-max-w-xl app-sdk-transform app-sdk-rounded-xl app-sdk-bg-[color:var(--asdk-cmdp-background-color)] app-sdk-p-2 app-sdk-shadow-2xl app-sdk-ring-1 app-sdk-ring-black app-sdk-ring-opacity-5 app-sdk-transition-all data-[closed]:app-sdk-scale-95 data-[closed]:app-sdk-opacity-0 data-[enter]:app-sdk-duration-300 data-[leave]:app-sdk-duration-150 data-[enter]:app-sdk-ease-out data-[leave]:app-sdk-ease-in"},ft.createElement(Um,{onChange:o=>{o&&e.onConfirm(o)}},ft.createElement($m,{autoFocus:!0,className:"app-sdk-w-full app-sdk-ring-offset-2 app-sdk-rounded-md app-sdk-border-0 app-sdk-bg-[color:var(--asdk-cmdp-input-color)] app-sdk-px-4 app-sdk-py-2.5 app-sdk-text-[color:var(--asdk-cmdp-text-color)] sm:app-sdk-text-sm",placeholder:e.placeholder,onChange:o=>r(o.target.value),onBlur:()=>r("")}),n.length>0&&ft.createElement(Hm,{static:!0,className:"app-sdk-mb-2 app-sdk-max-h-72 app-sdk-scroll-py-2 app-sdk-overflow-y-auto app-sdk-py-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-cmdp-text-color)]"},n.map(o=>ft.createElement(jm,{key:o.id,value:o,className:({focus:i})=>xe("app-sdk-cursor-default app-sdk-select-none app-sdk-rounded-md app-sdk-px-4 app-sdk-py-2",i&&"app-sdk-bg-[color:var(--asdk-cmdp-focus-color)] app-sdk-text-white")},o.name))),t!==""&&n.length===0&&ft.createElement("div",{className:"app-sdk-px-4 app-sdk-py-14 app-sdk-text-center sm:app-sdk-px-14"},ft.createElement(qm,{className:"app-sdk-mx-auto app-sdk-h-6 app-sdk-w-6 app-sdk-text-gray-400","aria-hidden":"true"}),ft.createElement("p",{className:"app-sdk-mt-4 app-sdk-text-sm app-sdk-text-[color:var(--asdk-cmdp-text-color)]"},e.noResultsText||"No entries found using that search term."))))))}import Ym from"react";function xt({title:e,children:t,className:r,onClick:n}){return Ym.createElement("button",{title:e,className:xe(r,"app-sdk-appearance-none app-sdk-border-none app-sdk-pointer-events-auto app-sdk-cursor-pointer app-sdk-flex app-sdk-w-6 app-sdk-min-w-6 app-sdk-max-w-6 app-sdk-h-4 app-sdk-text-white app-sdk-bg-cyan-800 app-sdk-rounded app-sdk-text-xs app-sdk-items-center app-sdk-justify-center"),onClick:n},t)}import Km from"react";function nl({width:e,children:t}){return Km.createElement("div",{className:"app-sdk-flex app-sdk-gap-1 app-sdk-justify-center app-sdk-flex-wrap",style:{width:`${e}px`}},t)}import ua from"react";function ol({isSender:e,onClick:t}){return ua.createElement(xt,{title:`Go to ${e?"Target":"Source"}`,onClick:t},ua.createElement("svg",{className:"!app-sdk-fill-white",width:"10px",height:"10px",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg"},ua.createElement("path",{d:"M320 0c-17.7 0-32 14.3-32 32s14.3 32 32 32h82.7L201.4 265.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L448 109.3V192c0 17.7 14.3 32 32 32s32-14.3 32-32V32c0-17.7-14.3-32-32-32H320zM80 32C35.8 32 0 67.8 0 112V432c0 44.2 35.8 80 80 80H400c44.2 0 80-35.8 80-80V320c0-17.7-14.3-32-32-32s-32 14.3-32 32V432c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16H192c17.7 0 32-14.3 32-32s-14.3-32-32-32H80z"})))}import fa from"react";function il({onClick:e}){return fa.createElement(xt,{onClick:e,title:"List Instances"},fa.createElement("svg",{className:"!app-sdk-fill-white",width:"10px",height:"10px",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg"},fa.createElement("path",{d:"M24 56c0-13.3 10.7-24 24-24H80c13.3 0 24 10.7 24 24V176h16c13.3 0 24 10.7 24 24s-10.7 24-24 24H40c-13.3 0-24-10.7-24-24s10.7-24 24-24H56V80H48C34.7 80 24 69.3 24 56zM86.7 341.2c-6.5-7.4-18.3-6.9-24 1.2L51.5 357.9c-7.7 10.8-22.7 13.3-33.5 5.6s-13.3-22.7-5.6-33.5l11.1-15.6c23.7-33.2 72.3-35.6 99.2-4.9c21.3 24.4 20.8 60.9-1.1 84.7L86.8 432H120c13.3 0 24 10.7 24 24s-10.7 24-24 24H32c-9.5 0-18.2-5.6-22-14.4s-2.1-18.9 4.3-25.9l72-78c5.3-5.8 5.4-14.6 .3-20.5zM224 64H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H224c-17.7 0-32-14.3-32-32s14.3-32 32-32zm0 160H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H224c-17.7 0-32-14.3-32-32s14.3-32 32-32zm0 160H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H224c-17.7 0-32-14.3-32-32s14.3-32 32-32z"})))}import ma from"react";function al({flowNodeId:e,flowNodeInstanceId:t,flowNodeType:r,processInstanceId:n,onPlay:o}){return ma.createElement(xt,{title:"Run Task",className:"asdk-pii-play-button",onClick:()=>{typeof o=="function"?new Promise(async(i,a)=>{try{await o({flowNodeId:e,processInstanceId:n,flowNodeInstanceId:t,taskType:r}),i(!0)}catch(p){a(p)}}):import("./actions-MB5VDCO7.mjs").then(({finishTask:i})=>i(t,r))}},ma.createElement("svg",{className:"!app-sdk-fill-none !app-sdk-stroke-white !app-sdk-stroke-[2px]",width:"14px",height:"14px",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},ma.createElement("path",{d:"M5 17.3336V6.66698C5 5.78742 5 5.34715 5.18509 5.08691C5.34664 4.85977 5.59564 4.71064 5.87207 4.67499C6.18868 4.63415 6.57701 4.84126 7.35254 5.25487L17.3525 10.5882L17.3562 10.5898C18.2132 11.0469 18.642 11.2756 18.7826 11.5803C18.9053 11.8462 18.9053 12.1531 18.7826 12.4189C18.6418 12.7241 18.212 12.9537 17.3525 13.4121L7.35254 18.7454C6.57645 19.1593 6.1888 19.3657 5.87207 19.3248C5.59564 19.2891 5.34664 19.1401 5.18509 18.9129C5 18.6527 5 18.2132 5 17.3336Z"})))}import Xm from"react";function sl(){return Xm.createElement("div",{className:"app-sdk-h-6 app-sdk-w-[1px] app-sdk-my-auto app-sdk-border-l app-sdk-border-r-0 app-sdk-border-t-0 app-sdk-border-b-0 app-sdk-border-collapse app-sdk-border-solid app-sdk-border-gray-900 dark:app-sdk-border-gray-300"})}import pl from"react";function ho({children:e}){return pl.createElement("div",{className:"app-sdk-w-full app-sdk-absolute app-sdk-top-0 app-sdk-left-0 app-sdk-z-40 app-sdk-pt-2 app-sdk-pointer-events-none"},pl.createElement("div",{className:"app-sdk-flex app-sdk-w-fit app-sdk-mx-auto app-sdk-rounded-full app-sdk-px-3 app-sdk-py-2 app-sdk-gap-1 app-sdk-border app-sdk-border-solid app-sdk-bg-white/95 dark:app-sdk-bg-black/85 dark:app-sdk-border-none app-sdk-pointer-events-auto"},e))}import ha from"react";import Jm from"react";function Zt({title:e,disabled:t,children:r,onClick:n}){return Jm.createElement("button",{title:`${e??""}${t?" (disabled)":""}`,className:xe("app-sdk-appearance-none app-sdk-border-none app-sdk-bg-transparent app-sdk-flex app-sdk-h-full app-sdk-my-auto app-sdk-rounded-full app-sdk-p-1",t?"app-sdk-cursor-not-allowed":"app-sdk-cursor-pointer hover:app-sdk-bg-app-sdk-gray-100/40"),onClick:n,disabled:t},r)}function ll({onClick:e}){return ha.createElement(Zt,{title:"Refresh Process Instance Data",onClick:e},ha.createElement("svg",{className:"dark:!app-sdk-stroke-app-sdk-gray-50 dark:!app-sdk-fill-app-sdk-gray-50",width:"1.25rem",height:"1.25rem",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg"},ha.createElement("path",{d:"M105.1 202.6c7.7-21.8 20.2-42.3 37.8-59.8c62.5-62.5 163.8-62.5 226.3 0L386.3 160H352c-17.7 0-32 14.3-32 32s14.3 32 32 32H463.5c0 0 0 0 0 0h.4c17.7 0 32-14.3 32-32V80c0-17.7-14.3-32-32-32s-32 14.3-32 32v35.2L414.4 97.6c-87.5-87.5-229.3-87.5-316.8 0C73.2 122 55.6 150.7 44.8 181.4c-5.9 16.7 2.9 34.9 19.5 40.8s34.9-2.9 40.8-19.5zM39 289.3c-5 1.5-9.8 4.2-13.7 8.2c-4 4-6.7 8.8-8.1 14c-.3 1.2-.6 2.5-.8 3.8c-.3 1.7-.4 3.4-.4 5.1V432c0 17.7 14.3 32 32 32s32-14.3 32-32V396.9l17.6 17.5 0 0c87.5 87.4 229.3 87.4 316.7 0c24.4-24.4 42.1-53.1 52.9-83.7c5.9-16.7-2.9-34.9-19.5-40.8s-34.9 2.9-40.8 19.5c-7.7 21.8-20.2 42.3-37.8 59.8c-62.5 62.5-163.8 62.5-226.3 0l-.1-.1L125.6 352H160c17.7 0 32-14.3 32-32s-14.3-32-32-32H48.4c-1.6 0-3.2 .1-4.8 .3s-3.1 .5-4.6 1z"})))}import ya from"react";function dl({onClick:e}){return ya.createElement(xt,{title:"Retry Process Here",onClick:e},ya.createElement("svg",{className:"!app-sdk-fill-white !app-sdk-stroke-white",width:"10px",height:"10px",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg"},ya.createElement("path",{d:"M463.5 224H472c13.3 0 24-10.7 24-24V72c0-9.7-5.8-18.5-14.8-22.2s-19.3-1.7-26.2 5.2L413.4 96.6c-87.6-86.5-228.7-86.2-315.8 1c-87.5 87.5-87.5 229.3 0 316.8s229.3 87.5 316.8 0c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0c-62.5 62.5-163.8 62.5-226.3 0s-62.5-163.8 0-226.3c62.2-62.2 162.7-62.5 225.3-1L327 183c-6.9 6.9-8.9 17.2-5.2 26.2s12.5 14.8 22.2 14.8H463.5z"})))}import et,{useEffect as Zm,useState as Qm}from"react";import{Description as cl,Dialog as eh,DialogBackdrop as th,DialogPanel as rh,DialogTitle as nh}from"@headlessui/react";import oh from"@monaco-editor/react";function ul(e){let[t,r]=Qm("");return Zm(()=>{r(JSON.stringify(e.flowNodeInstance?.startToken??e.processInstance.startToken??{},null,2))},[e.flowNodeInstance,e.processInstance]),et.createElement(eh,{open:e.isOpen,onClose:e.onClose,className:"app-sdk-relative app-sdk-z-50"},et.createElement(th,{transition:!0,className:"app-sdk-fixed app-sdk-inset-0 app-sdk-bg-gray-500 app-sdk-bg-opacity-25 app-sdk-transition-opacity data-[closed]:app-sdk-opacity-0 data-[enter]:app-sdk-duration-300 data-[leave]:app-sdk-duration-150 data-[enter]:app-sdk-ease-out data-[leave]:app-sdk-ease-in"},et.createElement("div",{className:"app-sdk-fixed app-sdk-inset-0 app-sdk-flex app-sdk-w-screen app-sdk-items-center app-sdk-justify-center app-sdk-p-4"},et.createElement(rh,{className:"app-sdk-max-w-lg app-sdk-space-y-4 app-sdk-shadow-2xl app-sdk-bg-[color:var(--asdk-rd-background-color)] app-sdk-p-8 app-sdk-rounded-xl app-sdk-text-[color:var(--asdk-rd-text-color)]"},et.createElement(nh,{className:"app-sdk-font-bold"},"Retry Process Instance"),et.createElement(cl,{className:"app-sdk-break-words"},"Are you sure you want to retry the Process Instance",e.flowNodeInstance&&` at this Flow Node (${e.flowNodeInstance.flowNodeId})`,"?"),et.createElement(cl,null,"You can provide a new start token:"),et.createElement("div",{className:"app-sdk-flex app-sdk-flex-col app-sdk-gap-1"},et.createElement("label",null,"Start Token"),et.createElement(oh,{height:"7rem",defaultLanguage:"json",defaultValue:t,onChange:n=>r(n??""),options:{lineNumbersMinChars:2,readOnly:!1,minimap:{enabled:!1},formatOnPaste:!0,formatOnType:!0}})),et.createElement("div",{className:"app-sdk-flex app-sdk-justify-end app-sdk-gap-2"},et.createElement("button",{className:"app-sdk-bg-[color:var(--asdk-rd-secondary-button-color)] app-sdk-text-[color:var(--asdk-rd-secondary-button-text-color)] app-sdk-rounded-md app-sdk-p-2 app-sdk-border hover:app-sdk-cursor-pointer hover:app-sdk-bg-[color:var(--asdk-rd-secondary-button-hover-color)]",onClick:e.onClose},"Cancel"),et.createElement("button",{className:"app-sdk-bg-[color:var(--asdk-rd-primary-button-color)] app-sdk-text-[color:var(--asdk-rd-primary-button-text-color)] app-sdk-rounded-md app-sdk-p-2 app-sdk-border-0 hover:app-sdk-cursor-pointer hover:app-sdk-bg-[color:var(--asdk-rd-primary-button-hover-color)]",onClick:async()=>{let n=JSON.parse(t);await(await import("./actions-MB5VDCO7.mjs")).retryProcess(e.processInstance.processInstanceId,e.flowNodeInstance?.flowNodeInstanceId,n),e.onClose()}},"Retry"))))))}import ga from"react";function fl({disabled:e,onClick:t}){return ga.createElement(Zt,{title:"Retry Process",disabled:e,onClick:t},ga.createElement("svg",{className:e?"!app-sdk-stroke-app-sdk-gray-200 dark:!app-sdk-stroke-app-sdk-gray-400 !app-sdk-fill-app-sdk-gray-200 dark:!app-sdk-fill-app-sdk-gray-400":"dark:!app-sdk-stroke-app-sdk-gray-50 dark:!app-sdk-fill-app-sdk-gray-50",width:"1.25rem",height:"1.25rem",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg"},ga.createElement("path",{d:"M463.5 224H472c13.3 0 24-10.7 24-24V72c0-9.7-5.8-18.5-14.8-22.2s-19.3-1.7-26.2 5.2L413.4 96.6c-87.6-86.5-228.7-86.2-315.8 1c-87.5 87.5-87.5 229.3 0 316.8s229.3 87.5 316.8 0c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0c-62.5 62.5-163.8 62.5-226.3 0s-62.5-163.8 0-226.3c62.2-62.2 162.7-62.5 225.3-1L327 183c-6.9 6.9-8.9 17.2-5.2 26.2s12.5 14.8 22.2 14.8H463.5z"})))}import va from"react";function ml({processInstanceId:e,disabled:t}){return va.createElement(Zt,{title:"Terminate Process",disabled:t,onClick:()=>import("./actions-MB5VDCO7.mjs").then(({terminateProcess:r})=>r(e))},va.createElement("svg",{className:t?"!app-sdk-stroke-app-sdk-gray-200 dark:!app-sdk-stroke-app-sdk-gray-400 !app-sdk-fill-app-sdk-gray-200 dark:!app-sdk-fill-app-sdk-gray-400":"!app-sdk-stroke-red-600 !app-sdk-fill-red-600",width:"1.25rem",height:"1.25rem",viewBox:"0 0 516 516",xmlns:"http://www.w3.org/2000/svg"},va.createElement("path",{d:"M464 256A208 208 0 1 0 48 256a208 208 0 1 0 416 0zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zm192-96l128 0c17.7 0 32 14.3 32 32l0 128c0 17.7-14.3 32-32 32l-128 0c-17.7 0-32-14.3-32-32l0-128c0-17.7 14.3-32 32-32z"})))}import me,{useEffect as ka,useMemo as hl,useState as wa}from"react";import{ArrowsPointingInIcon as yl,ArrowsPointingOutIcon as gl,XMarkIcon as ih}from"@heroicons/react/24/outline";import{Editor as vl}from"@monaco-editor/react";function kl(e){let[t,r]=wa(),[n,o]=wa(!0),[i,a]=wa(null),p=m=>{a(i===m?null:m)};ka(()=>(n&&e.flowNodeInstances.length>1&&o(!1),()=>{if(n)return;let m=new URLSearchParams(window.location.search);m.delete("tokenInspectorFocus"),window.history.replaceState(null,"",`${window.location.pathname}?${m.toString()}${window.location.hash}`)}),[n,e.flowNodeInstances]),ka(()=>{if(e.flowNodeInstances.length<2){r(void 0);return}let g=new URLSearchParams(window.location.search).get("tokenInspectorFocus");g||r(e.flowNodeInstances[0]);let E=e.flowNodeInstances.find(_=>_.flowNodeId===g);E&&r(E)},[e.flowNodeInstances]),ka(()=>{if(n)return;let m=new URLSearchParams(window.location.search);t?m.set("tokenInspectorFocus",t.flowNodeId):m.delete("tokenInspectorFocus"),window.history.replaceState(null,"",`${window.location.pathname}?${m.toString()}${window.location.hash}`)},[t,n]);let d=hl(()=>e.flowNodeInstances.length===1?JSON.stringify(e.flowNodeInstances[0].startToken,null,2):JSON.stringify(t?t.startToken:e.processInstance?.startToken??{},null,2),[t,e.flowNodeInstances,e.processInstance]),u=hl(()=>e.flowNodeInstances.length===1?JSON.stringify(e.flowNodeInstances[0].endToken,null,2):JSON.stringify(t?t.endToken:e.processInstance?.endToken??{},null,2),[t,e.flowNodeInstances,e.processInstance]);return me.createElement("div",{className:"app-sdk-flex app-sdk-flex-col app-sdk-h-full app-sdk-rounded-3xl app-sdk-p-4 app-sdk-gap-1 app-sdk-bg-white/95 dark:app-sdk-bg-black/85 dark:app-sdk-text-white app-sdk-border app-sdk-border-solid dark:app-sdk-border-none"},me.createElement("button",{onClick:()=>{e.close()},className:"app-sdk-text-white hover:app-sdk-text-gray-300",title:"Close Token Inspector"},me.createElement(ih,{className:"app-sdk-w-6 app-sdk-h-6"})),me.createElement("div",{className:"app-sdk-flex app-sdk-flex-col app-sdk-gap-4"},e.flowNodeInstances.length===0?me.createElement("label",{className:"app-sdk-break-all"},"Process: ",e.processInstance.processModelId,e.processInstance.processModelName&&` (${e.processInstance.processModelName})`):e.flowNodeInstances.length===1?me.createElement("label",{className:"app-sdk-break-all"},"Flow Node: ",e.flowNodeInstances[0].flowNodeId,e.flowNodeInstances[0].flowNodeName&&` (${e.flowNodeInstances[0].flowNodeName})`):me.createElement("div",{className:"app-sdk-flex app-sdk-flex-col app-sdk-gap-1 app-sdk-w-full"},me.createElement("label",null,"Select Flow Node:"),me.createElement("select",{className:"app-sdk-max-w-full app-sdk-bg-transparent app-sdk-border app-sdk-rounded-md app-sdk-py-2 app-sdk-px-1 app-sdk-text-ellipsis",onChange:m=>r(e.flowNodeInstances.find(g=>g.flowNodeId===m.target.value)),value:t?.flowNodeId??e.flowNodeInstances[0].flowNodeId},e.flowNodeInstances.map(m=>me.createElement("option",{key:`token-inspector-option-${m.flowNodeId}`,value:m.flowNodeId},`${m.flowNodeName?`${m.flowNodeName} (${m.flowNodeId})`:m.flowNodeId}`)))),me.createElement("div",{className:"app-sdk-flex app-sdk-flex-col app-sdk-gap-3"},i&&me.createElement("div",{className:"app-sdk-fixed app-sdk-inset-0 app-sdk-bg-black/30 app-sdk-backdrop-blur-md app-sdk-z-40"}),me.createElement("div",{className:`app-sdk-flex app-sdk-flex-col app-sdk-gap-1
|
|
33
33
|
${i==="start"?"app-sdk-fixed app-sdk-top-1/2 app-sdk-left-1/2 app-sdk--translate-x-1/2 app-sdk--translate-y-1/2 app-sdk-w-4/5 app-sdk-h-[70vh] app-sdk-bg-white/10 app-sdk-backdrop-blur-xl app-sdk-rounded-xl app-sdk-shadow-2xl app-sdk-z-50 app-sdk-p-6":""}`},me.createElement("div",{className:"app-sdk-flex app-sdk-items-center app-sdk-justify-between"},me.createElement("label",{className:"app-sdk-text-white app-sdk-font-medium"},"Start Token"),me.createElement("button",{className:"app-sdk-text-white hover:app-sdk-text-gray-300 app-sdk-w-6 app-sdk-h-6",onClick:()=>p("start"),title:i==="start"?"Minimize":"Maximize"},i==="start"?me.createElement(yl,{className:"app-sdk-w-6 app-sdk-h-6"}):me.createElement(gl,{className:"app-sdk-w-6 app-sdk-h-6"}))),me.createElement(vl,{height:i==="start"?"60vh":"7rem",defaultLanguage:"json",value:d,options:{lineNumbersMinChars:2,readOnly:!0,minimap:{enabled:!1}}})),me.createElement("div",{className:`app-sdk-flex app-sdk-flex-col app-sdk-gap-1
|
|
34
|
-
${i==="end"?"app-sdk-fixed app-sdk-top-1/2 app-sdk-left-1/2 app-sdk--translate-x-1/2 app-sdk--translate-y-1/2 app-sdk-w-4/5 app-sdk-h-[70vh] app-sdk-bg-white/10 app-sdk-backdrop-blur-xl app-sdk-rounded-xl app-sdk-shadow-2xl app-sdk-z-50 app-sdk-p-6":""}`},me.createElement("div",{className:"app-sdk-flex app-sdk-items-center app-sdk-justify-between"},me.createElement("label",{className:"app-sdk-text-white app-sdk-font-medium"},"End Token"),me.createElement("button",{className:"app-sdk-text-white hover:app-sdk-text-gray-300 app-sdk-w-6 app-sdk-h-6",onClick:()=>p("end"),title:i==="end"?"Minimize":"Maximize"},i==="end"?me.createElement(yl,{className:"app-sdk-w-6 app-sdk-h-6"}):me.createElement(gl,{className:"app-sdk-w-6 app-sdk-h-6"}))),me.createElement(vl,{height:i==="end"?"60vh":"7rem",defaultLanguage:"json",value:u,options:{lineNumbersMinChars:2,readOnly:!0,minimap:{enabled:!1}}})))))}import gn,{useEffect as ah,useState as sh}from"react";function yo(e){let[t,r]=sh(e.isOpen??!1);return ah(()=>{r(e.isOpen??!1)},[e.isOpen]),gn.createElement(Zt,{disabled:e.disabled,title:"View Process Tokens",onClick:()=>{t?e.close():e.open(),r(n=>!n)}},t?gn.createElement("svg",{className:"dark:!app-sdk-stroke-app-sdk-gray-50 dark:!app-sdk-fill-app-sdk-gray-50",xmlns:"http://www.w3.org/2000/svg",width:"1.25rem",height:"1.25rem",viewBox:"0 0 384 512"},gn.createElement("path",{d:"M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z"})):gn.createElement("svg",{className:"dark:!app-sdk-stroke-app-sdk-gray-50 dark:!app-sdk-fill-app-sdk-gray-50",xmlns:"http://www.w3.org/2000/svg",width:"1.25rem",height:"1.25rem",viewBox:"0 0 448 512"},gn.createElement("path",{d:"M0 96C0 78.3 14.3 64 32 64l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 128C14.3 128 0 113.7 0 96zM0 256c0-17.7 14.3-32 32-32l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 288c-17.7 0-32-14.3-32-32zM448 416c0 17.7-14.3 32-32 32L32 448c-17.7 0-32-14.3-32-32s14.3-32 32-32l384 0c17.7 0 32 14.3 32 32z"})))}var bl=[bo.error,bo.terminated],uh=[Et.manualTask,Et.userTask,Et.untypedTask],xl=[Et.endEvent,Et.intermediateThrowEvent,Et.sendTask],fh=[Et.startEvent,Et.intermediateCatchEvent,Et.boundaryEvent,Et.receiveTask],ko={isOpen:!1,placeholder:"",entries:[],onConfirm:()=>{},onClose:()=>{}},mh={isOpen:!1},wo="asdk-buttons";function hh(e){let{processInstanceId:t}=e,[r,n]=Lt(ko),[o,i]=Lt(mh),[a,p]=Lt(!1),[d,u]=Lt(),[m,g]=Lt([]),[E,_]=Lt([]),[A,k]=Lt(new Map),[L,z]=Lt([]),[q,T]=Lt([]),y=dh(null),I=go(async()=>{let x=await import("./actions-6WB3ZWEH.mjs"),N=x.getProcessInstance(t),B=x.getFlowNodeInstances(t),[$,le]=await Promise.all([N,B]),K=await x.getTriggeredFlowNodeInstances(le.map(w=>w.flowNodeInstanceId));u($),g(le),_(K);let W=new URLSearchParams(window.location.search);W.get("tokenInspector")==="true"&&p(!0);let ge=W.getAll("instance"),ae=le.filter(w=>ge.includes(w.flowNodeInstanceId));ae.length!==ge.length&&(W.delete("instance"),ae.forEach(w=>W.append("instance",w.flowNodeInstanceId)),window.history.replaceState({},"",`${window.location.pathname}?${W.toString()}`));let ce=new Map;le.forEach(w=>{ce.has(w.flowNodeId)||ce.set(w.flowNodeId,w.flowNodeInstanceId)}),ae.forEach(w=>ce.set(w.flowNodeId,w.flowNodeInstanceId)),k(ce)},[t]),D=go(x=>{let N=oe(x),B=m.some(le=>le.flowNodeId===N.targetRef.id),$=m.some(le=>le.flowNodeId===N.sourceRef.id&&le.state===wl.finished);return B&&$},[m]),M=go(async()=>{let x=y.current?.bpmnViewerRef,N=x?.getOverlays();if(!x||!N)return;let B=await import("./actions-6WB3ZWEH.mjs"),$=B.getProcessInstance(t),le=B.getFlowNodeInstances(t),[K,W]=await Promise.all([$,le]),Me=await B.getTriggeredFlowNodeInstances(W.map(C=>C.flowNodeInstanceId));if(ba(K,d)&&ba(W,m)&&ba(Me,E))return;K.state!==d?.state&&N.clear();for(let[C,j]of A.entries()){let ne=m.find(s=>s.flowNodeInstanceId===j);if(!ne)continue;let Pe=W.find(s=>s.flowNodeId===C);Pe?.flowNodeInstanceId===j&&ne.state===Pe.state||(x.removeMarker(C,`asdk-pii-flow-node-instance-state--${ne.state}`),N.remove({element:C,type:wo}))}u(K),g(W),_(Me);let ge=new URLSearchParams(window.location.search),ae=ge.getAll("instance"),ce=W.filter(C=>ae.includes(C.flowNodeInstanceId));ce.length!==ae.length&&(ge.delete("instance"),ce.forEach(C=>ge.append("instance",C.flowNodeInstanceId)),window.history.replaceState({},"",`${window.location.pathname}?${ge.toString()}`));let w=new Map;W.forEach(C=>{w.has(C.flowNodeId)||w.set(C.flowNodeId,C.flowNodeInstanceId)}),ce.forEach(C=>w.set(C.flowNodeId,C.flowNodeInstanceId)),k(w)},[y.current,d,A,m,t]),v=go((x,N)=>{let B=y.current?.bpmnViewerRef,$=B?.getOverlays();if(!B||!$)return;let le=$.get({element:x.id,type:wo});if(Array.isArray(le)&&le.length>0)return;let K=N.find(s=>s.flowNodeInstanceId===A.get(s.flowNodeId));if(!K)return;let W=e.showFlowNodeExecutionCount&&N.length>1,Me=e.showFlowNodeInstancesListButton&&N.length>1,ge=e.showFinishTaskButton&&uh.includes(x.type)&&K.state===wl.suspended,ae=e.showRetryFlowNodeInstanceButton&&d&&bl.includes(d.state),ce=!1,w=[];if(e.showGoToFlowNodeButton&&fh.includes(x.type)){let s=K.triggeredByFlowNodeInstance;ce=s!==void 0,w=s?[s]:[]}else if(e.showGoToFlowNodeButton&&xl.includes(x.type)){let s=E.filter(f=>f.triggeredByFlowNodeInstance?.flowNodeInstanceId===K.flowNodeInstanceId);ce=s.length>0,w=s}if(!W&&!ge&&!ae&&!ce)return;let C=x.width<52,j=$.add(x.id,wo,{position:{bottom:-7,left:C?-x.width/2:0},html:"<div></div>"}),ne=$.get(j),Pe=lh(ne.htmlContainer),c=N.indexOf(K)===0,l=N.length-N.indexOf(K);Pe.render(Ee.createElement(nl,{width:C?x.width*2:x.width},W&&Ee.createElement(xt,{className:"app-sdk-select-none !app-sdk-cursor-default !app-sdk-bg-slate-500",title:`Flow Node was executed ${N.length} times.${c?"":` You are viewing instance #${l}.`}`},`${c?"":`${l}/`}${N.length}`),Me&&Ee.createElement(il,{onClick:()=>{let s=N.map(h=>({id:h.flowNodeInstanceId,name:`${h.startedAt?.toLocaleString("en-GB")} - ${h.flowNodeInstanceId} - ${h.state}${h.flowNodeInstanceId===K.flowNodeInstanceId?" (selected)":""}`,...h}));n({isOpen:!0,placeholder:"Select instance to display:",entries:s,onConfirm:async h=>{let b=N.find(te=>te.flowNodeInstanceId===h.flowNodeInstanceId);if(!b)return;B.removeMarker(K.flowNodeId,`asdk-pii-flow-node-instance-state--${K.state}`),$.remove({element:x.id,type:wo});let F=new URLSearchParams(window.location.search);F.getAll("instance").includes(K.flowNodeInstanceId)&&F.delete("instance",K.flowNodeInstanceId),N.indexOf(b)!==0&&F.append("instance",b.flowNodeInstanceId),window.history.replaceState({},"",`${window.location.pathname}?${F.toString()}${window.location.hash}`),k(te=>new Map(te).set(x.id,h.flowNodeInstanceId)),n(ko)},onClose:()=>n(ko)})}}),ce&&Ee.createElement(ol,{isSender:xl.includes(x.type),onClick:()=>{if(w.length===1){let f=new URLSearchParams;f.append("selected",w[0].flowNodeId),f.append("instance",w[0].flowNodeInstanceId),window.location.href=`${w[0].processInstanceId}?${f.toString()}`;return}let s=w.map(f=>({id:f.flowNodeInstanceId,name:`${f.startedAt?.toLocaleString("en-GB")} - ${f.flowNodeId}${f.flowNodeName?` - ${f.flowNodeName}`:""}`,...f}));n({isOpen:!0,placeholder:"Select target to go to:",entries:s,onConfirm:f=>{let h=new URLSearchParams;h.append("selected",f.flowNodeId),h.append("instance",f.flowNodeInstanceId),window.location.href=`${f.processInstanceId}?${h.toString()}`},onClose:()=>n(ko)})}}),ge&&Ee.createElement(al,{flowNodeId:K.flowNodeId,flowNodeInstanceId:K.flowNodeInstanceId,flowNodeType:x.type,processInstanceId:K.processInstanceId,onPlay:e.onFinish}),ae&&Ee.createElement(dl,{onClick:()=>{i({isOpen:!0,flowNodeInstance:K})}})))},[y.current,d,m,E,A]);if(vo(()=>{I()},[t]),vo(()=>{if(d?.state===bo.finished){M();return}let x=setInterval(M,1e3);return()=>clearInterval(x)},[M,d?.state]),vo(()=>{if(L.length===0||m.length===0){T([]);return}let x=m.filter(N=>{let B=L.includes(N.flowNodeId),$=A.get(N.flowNodeId)===N.flowNodeInstanceId;return B&&$});if(x.length===0){let N=new URLSearchParams(window.location.search);N.delete("tokenInspectorFocus"),window.history.replaceState({},"",`${window.location.pathname}?${N.toString()}${window.location.hash}`)}T(x)},[m,L,A]),vo(()=>{if(!d?.xml)return;let x=y.current?.bpmnViewerRef,N=x?.getElementRegistry();!x||!N||x.onImportDone(()=>{let B=new Set(m.map($=>$.flowNodeId));N.forEach($=>{if($.type==="bpmn:SequenceFlow"){D($)?x.addMarker($.id,"asdk-pii-sequence-flow-finished"):x.hasMarker($.id,"asdk-pii-sequence-flow-finished")&&x.removeMarker($.id,"asdk-pii-sequence-flow-finished");return}if(!B.has($.id))return;let le=m.filter(W=>W.flowNodeId===$.id),K=le.find(W=>W.flowNodeInstanceId===A.get(W.flowNodeId));K&&(x.hasMarker($.id,"asdk-pii-flow-node-instance-state")||x.addMarker($.id,"asdk-pii-flow-node-instance-state"),x.hasMarker($.id,`asdk-pii-flow-node-instance-state--${K.state}`)||x.addMarker($.id,`asdk-pii-flow-node-instance-state--${K.state}`),v($,le))})})},[y.current,d,m,E,A]),!d?.xml)return e.loadingComponent?e.loadingComponent:Ee.createElement("div",{className:"app-sdk-absolute app-sdk-w-screen app-sdk-h-screen app-sdk-flex"},Ee.createElement("div",{className:"app-sdk-m-auto"},"Fetching diagram..."));let S=e.showProcessRefreshButton||e.showProcessRetryButton||e.showProcessTerminateButton||e.showTokenInspectorButton,P=e.showTokenInspectorButton&&(e.showProcessRefreshButton||e.showProcessRetryButton||e.showProcessTerminateButton);return Ee.createElement("div",{className:"app-sdk-relative app-sdk-w-full app-sdk-h-full"},Ee.createElement(rl,{...r}),(e.showRetryFlowNodeInstanceButton||e.showProcessRetryButton)&&Ee.createElement(ul,{...o,processInstance:d,onClose:()=>i(x=>({...x,isOpen:!1}))}),S&&Ee.createElement(ho,null,e.showProcessRefreshButton&&Ee.createElement(ll,{onClick:M}),e.showProcessRetryButton&&Ee.createElement(fl,{onClick:()=>i({isOpen:!0}),disabled:!bl.includes(d.state)}),e.showProcessTerminateButton&&Ee.createElement(ml,{processInstanceId:t,disabled:d.state!==bo.running}),P&&Ee.createElement(sl,null),e.showTokenInspectorButton&&Ee.createElement(yo,{isOpen:a,open:()=>{let x=new URLSearchParams(window.location.search);x.set("tokenInspector","true"),window.history.replaceState({},"",`${window.location.pathname}?${x.toString()}${window.location.hash}`),p(!0)},close:()=>{let x=new URLSearchParams(window.location.search);x.delete("tokenInspector"),window.history.replaceState({},"",`${window.location.pathname}?${x.toString()}${window.location.hash}`),p(!1)}})),Ee.createElement(ch,{show:a},Ee.createElement("div",{className:"app-sdk-transition app-sdk-duration-200 data-[closed]:app-sdk-opacity-0 app-sdk-w-1/4 app-sdk-min-w-64 app-sdk-absolute app-sdk-top-0 app-sdk-right-0 app-sdk-z-40 app-sdk-pt-2 app-sdk-pr-2"},Ee.createElement(kl,{processInstance:d,flowNodeInstances:q,close:()=>{let x=new URLSearchParams(window.location.search);x.delete("tokenInspector"),window.history.replaceState({},"",`${window.location.pathname}?${x.toString()}${window.location.hash}`),p(!1)}}))),Ee.createElement(Jr,{xml:d.xml,ref:y,setSelectedElementIds:z}))}var tC=ph(()=>Promise.resolve(hh),{ssr:!1});import yh from"next/dynamic.js";import Vt,{useEffect as _l,useState as Ct}from"react";import{Transition as gh}from"@headlessui/react";function Pr(e){if(!e)return;let t=parseFloat(e);if(!isNaN(t))return t/100}var xo=class{nodeInfoMap={};heatmapInfo={};runtimeService;processCostsService;bpmnViewer;activeCostKeyPerNode={};constructor(t,r,n){this.runtimeService=t,this.processCostsService=r,this.computeRuntimeHeatmap(n),this.computeCostHeatmap(n)}updateHeatmapService(t,r,n){this.runtimeService=t,this.processCostsService=r,this.computeRuntimeHeatmap(n),this.computeCostHeatmap(n)}getHeatmapInfoForId(t){return this.heatmapInfo[t]}hasRuntimeEntry(){return Object.values(this.heatmapInfo).some(t=>"runtime"in t)}hasCostEntry(){return Object.values(this.heatmapInfo).some(t=>Object.keys(t).some(r=>!r.startsWith("runtime")))}getActiveCostKey(t){return this.activeCostKeyPerNode[t]}hasMultipleCostEntries(t){let r=this.heatmapInfo[t];return r?Object.keys(r).filter(o=>!o.startsWith("runtime")).length>=2:!1}applyHeatmap(t,r,n){let o=n.viewer,i=n.flowNodeId;if(!o&&!i)return;if(!t&&o){o.clearHeatmap(Object.keys(this.heatmapInfo));return}if(!this.bpmnViewer&&o&&(this.bpmnViewer=o),!o&&i){let d=this.heatmapInfo[i]?.[r]?.status;if(!d)return;this.activeCostKeyPerNode[i]=r,this.bpmnViewer?.showHeatmap({[i]:d});return}if(!o)return;let a={},p={};for(let[d,u]of Object.entries(this.nodeInfoMap))a[d]=u.status;for(let[d,u]of Object.entries(this.heatmapInfo)){let m=this.activeCostKeyPerNode?.[d];if(m&&u[m]?.status){p[d]=u[m].status;continue}for(let[g,E]of Object.entries(u))if(!g.startsWith("runtime")&&E?.status){p[d]=E.status,this.activeCostKeyPerNode=this.activeCostKeyPerNode,this.activeCostKeyPerNode[d]=g;break}}r==="runtime"?(o.clearHeatmap(Object.keys(p)),o.showHeatmap(a)):(o.clearHeatmap(Object.keys(a)),o.showHeatmap(p))}computeCostHeatmap(t){let r=this.processCostsService.getAllProcessCosts?.();if(r)for(let[n,o]of Object.entries(r))for(let[i,a]of Object.entries(o)){let p=a.average;if(p===void 0)continue;let d=a.critical??Pr(t.customProperties["pilot.setProcessCosts.critical"]),u=a.warning??Pr(t.customProperties["pilot.setProcessCosts.warning"]),m=a.reference;if(!m)continue;let g=u?m*u:void 0,E=d?m*d:void 0;if(g&&E&&E<g)continue;let _="Stable";E!==void 0&&p>=E?_="Critical":g!==void 0&&(E===void 0||g<E)&&p>=g&&(_="Warning");let A={status:_,referenceRuntime:m,warningThreshold:g,criticalThreshold:E,warningSource:this.getHeatmapSource(a.warning,t.customProperties["pilot.setProcessCosts.warning"]),criticalSource:this.getHeatmapSource(a.critical,t.customProperties["pilot.setProcessCosts.critical"])};this.heatmapInfo[n]||(this.heatmapInfo[n]={}),this.heatmapInfo[n][i]=A}}computeRuntimeHeatmap(t){let r=Pr(t.customProperties["pilot.setRuntime.warning"]),n=Pr(t.customProperties["pilot.setRuntime.critical"]);t.flowNodes.forEach(o=>{let a=this.runtimeService.getStats(o.id)?.average,p=o.customProperties["pilot.setRuntime.reference"],d=p?Number(p):void 0;if(!d||isNaN(d))return;let u=Pr(o.customProperties["pilot.setRuntime.warning"]),m=Pr(o.customProperties["pilot.setRuntime.critical"]),g=u??r,E=m??n,_=g?d*g:void 0,A=E?d*E:void 0;if(A&&_&&A<_)return;let k={referenceRuntime:d,warningThreshold:_,criticalThreshold:A,warningSource:this.getHeatmapSource(u,r),criticalSource:this.getHeatmapSource(m,n)};if(a!==void 0&&(A||_)){let L="Stable";A!==void 0&&a>=A?L="Critical":_!==void 0&&(A===void 0||_<A)&&a>=_&&(L="Warning"),k.status=L,this.nodeInfoMap[o.id]=k}this.heatmapInfo[o.id]={runtime:k}})}getHeatmapSource(t,r){return t!==void 0?"Flow Node":r!==void 0?"Process":void 0}};var Eo=class{flowNodeInstances;processCostsExpressionParams;instances;costResultsByFlowNodeId={};instanceCounter={};thresholdsByFlowNodeId={};constructor(t,r){this.instances=t,this.flowNodeInstances=t.flatMap(n=>n.process_instance.flowNodeInstances||[]),this.processCostsExpressionParams={correlationMetadata:{},processInstanceMetadata:{}},this.precalculateCosts(r)}getInstanceCount(t){return this.instanceCounter[t]}getCostsForFlowNodeId(t){return this.costResultsByFlowNodeId[t]}getAllProcessCosts(){return this.costResultsByFlowNodeId}getFlowNodeExecutionCount(t,r){let n=0;for(let o of this.flowNodeInstances)if(o.id===t&&o.flowNodeExitedAt&&(n++,o.flowNodeInstanceId===r))break;return n}getProcessInstanceCount(){return this.instances.length}splitCostProperties(t){let r={},n={};for(let[o,i]of Object.entries(t)){let a=o.match(/^pilot\.setProcessCosts\.([^.]+)\.(formula|reference|warning|critical)$/);if(a){let p=a[1],d=a[2];if(d==="formula")r[p]=i;else{let u=parseFloat(i);n[p]||(n[p]={}),isNaN(u)||(d==="reference"?n[p].reference=u:n[p][d]=u/100)}}}return{costExpressions:r,thresholds:n}}precalculateCosts(t){for(let r of t){let n=r.id,{costExpressions:o,thresholds:i}=this.splitCostProperties(r.customProperties);Object.keys(i).length>0&&(this.thresholdsByFlowNodeId[n]=i);let a=0;for(let p of this.flowNodeInstances)if(n===p.id&&p.flowNodeExitedAt){a+=1,this.setProcessCostExpressionParamsForInstance(p);let d=this.getProcessCosts(o);if(Object.keys(d).length===0)continue;this.costResultsByFlowNodeId[n]||(this.costResultsByFlowNodeId[n]={});for(let[u,m]of Object.entries(d)){let g=parseFloat(m),E=i[u]??this.thresholdsByFlowNodeId[n]?.[u]??{},_=this.costResultsByFlowNodeId[n][u]??{total:0,errors:0,average:0,count:0,...E};isNaN(g)?_.errors+=1:_.total+=g,this.costResultsByFlowNodeId[n][u]=_}}this.instanceCounter[n]=a}for(let r in this.costResultsByFlowNodeId)for(let n in this.costResultsByFlowNodeId[r]){let o=this.costResultsByFlowNodeId[r][n],i=this.instanceCounter[r],a=i>0?o.total/(i-o.errors):0;o.average=isNaN(a)?0:a}}getProcessCosts(t){let r={};for(let[n,o]of Object.entries(t)){if(!o)continue;let i=!1,a=o.replace(/\$\{(.+?)\}/g,(p,d)=>{let u=d.split(".").reduce((m,g)=>m&&m[g],this.processCostsExpressionParams);return u===void 0||isNaN(u)?(i=!0,"invalid"):u.toString()});if(i||a.includes("$")||a.includes("{")||a.includes("}")){r[n]="{ Error: Invalid expression. }";continue}try{let p=new Function("Math",`return ${a}`)(Math);r[n]=p.toString()}catch{r[n]="{ Error: Invalid expression. }"}}return r}setProcessCostExpressionParamsForInstance(t){this.processCostsExpressionParams.currentFlowNode=this.getCurrentFlowNode(t.flowNodeInstanceId),this.processCostsExpressionParams.token=this.buildTokenHistoryForFlowNodeInstance(t.flowNodeInstanceId),this.processCostsExpressionParams.dataObjects=this.buildDataObjectsForFlowNodeInstance(t.flowNodeInstanceId),this.processCostsExpressionParams.flowNodeExecutionCount=this.getFlowNodeExecutionCount(t.id,t.flowNodeInstanceId)}getCurrentFlowNode(t){return this.flowNodeInstances.find(r=>r.flowNodeInstanceId===t)}buildTokenHistoryForFlowNodeInstance(t){let r=this.flowNodeInstances.findIndex(i=>i.flowNodeInstanceId===t&&i.flowNodeExitedAt);if(r===-1)return{current:{},history:{}};let n=this.flowNodeInstances[r]?.endToken??{},o={};for(let i=0;i<r;i++){let a=this.flowNodeInstances[i];a.endToken&&(o[a.id]=a.endToken)}return{current:n,history:o}}buildDataObjectsForFlowNodeInstance(t){let r={};for(let n of this.flowNodeInstances){if(n.flowNodeInstanceId===t&&n.flowNodeExitedAt)break;for(let[o,i]of Object.entries(n.writtenDataObjectValues||{}))r[o]=i}return r}};function El(e){if(e.length!==0)return Math.round(e.reduce((t,r)=>t+r,0)/e.length)}function Cl(e){return Math.min(...e)}function Nl(e){return Math.max(...e)}var Co=class{runtimeStatsById;constructor(t,r){let n=this.setMappedRuntimes(t,r);this.runtimeStatsById=this.aggregateRuntimes(n)}getStats(t){let r=this.runtimeStatsById[t];if(r)return r;let n=Object.keys(this.runtimeStatsById)[0];return this.runtimeStatsById[n]}aggregateRuntimes(t){let r={};for(let n of t){let o=Object.values(n.instances);o.length!==0&&(r[n.id]={average:El(o)??0,shortest:Cl(o)??0,longest:Nl(o)??0})}return r}setMappedRuntimes(t,r){let n=this.getFlowNodeTimes(t),o=this.getTimesFromProcessInstances(t);return n.unshift({id:r,instances:o}),n}getTimesFromProcessInstances(t){let r={};for(let n of t){let{processInstanceId:o,processStartedAt:i,processFinishedAt:a}=n.process_instance;if(o&&i&&a){let p=new Date(i).getTime(),u=new Date(a).getTime()-p;r[o]=u}}return r}getFlowNodeTimes(t){let r=new Map;t.forEach(o=>{o.process_instance.flowNodeInstances.forEach(a=>{let p=a.id,d=a.flowNodeInstanceId,u=a.flowNodeEnteredAt?new Date(a.flowNodeEnteredAt).getTime():void 0,m=a.flowNodeExitedAt?new Date(a.flowNodeExitedAt).getTime():void 0;if(!p||!d)return;r.has(p)||r.set(p,new Map);let g=r.get(p);g.has(d)||g.set(d,{});let E=g.get(d);u!==void 0&&(!E.enteredAt||u<E.enteredAt)&&(E.enteredAt=u),m!==void 0&&(!E.exitedAt||m>E.exitedAt)&&(E.exitedAt=m)})});let n=[];return r.forEach((o,i)=>{let a={};o.forEach((p,d)=>{p.enteredAt!==void 0&&p.exitedAt!==void 0&&(a[d]=p.exitedAt-p.enteredAt)}),n.push({id:i,instances:a})}),n}};import G,{useMemo as vn}from"react";function ar(e){if(e===void 0)return"";if(e==0)return"0ms";let t=Math.floor(e/(1440*60*1e3)),r=Math.floor(e%(1440*60*1e3)/(3600*1e3)),n=Math.floor(e%(3600*1e3)/(60*1e3)),o=Math.floor(e%(60*1e3)/1e3),i=e%1e3,a=+(i%1===0?i:i.toFixed(2)),p=[];return t>0&&p.push(`${t}d`),r>0&&p.push(`${r}h`),n>0&&p.push(`${n}m`),o>0&&p.push(`${o}s`),i>0&&p.push(`${a}ms`),p.join(" ")}function Sl({processModel:e,processCostsService:t,runtimeService:r,heatmapService:n,heatmapType:o,setHeatmapType:i,timeRange:a,setTimeRange:p,selectedInstance:d}){let u=typeof a!="string"?a.custom.startDate:void 0,m=typeof a!="string"?a.custom.endDate:void 0,g=M=>{let v=M.target.value;p(v==="custom"?{custom:{startDate:u,endDate:m}}:v)},E=vn(()=>{if(!(!n||!d))return n.getHeatmapInfoForId(d)},[n,d]),_=vn(()=>{if(!(!r||!d))return r.getStats(d)},[r,d]),A=vn(()=>{if(!(!t||!d))return t.getCostsForFlowNodeId(d)},[d,t]),k=vn(()=>{if(t)return d?t.getInstanceCount(d)??t.getProcessInstanceCount():t.getProcessInstanceCount()},[d,t]),L=vn(()=>{let M=e.flowNodes.find(v=>v.id===d);return M?`Flow Node: ${M.id} (${M.name})`:`Process: ${e.processModelId} (${e.processModelName})`},[d,e]),z=n?.hasCostEntry?.()??!1,q=n?.hasRuntimeEntry?.()??!1,T=n&&d?n.hasMultipleCostEntries(d):!1,y=o==="runtime"?"runtime":"processcosts",I=n&&d?n.getActiveCostKey(d):"processcosts",D=M=>{d&&i(M),n?.applyHeatmap(!0,M,{flowNodeId:d})};return G.createElement("div",{className:"app-sdk-flex app-sdk-flex-col app-sdk-h-full app-sdk-rounded-3xl app-sdk-p-4 app-sdk-gap-1 app-sdk-bg-white/95 dark:app-sdk-bg-black/85 dark:app-sdk-text-white app-sdk-border app-sdk-border-solid dark:app-sdk-border-none"},G.createElement("label",null,L),G.createElement("div",{className:"app-sdk-flex app-sdk-flex-col app-sdk-h-full app-sdk-rounded-3xl app-sdk-pb-3 app-sdk-gap-1"},G.createElement("label",null,"Time Period:"),G.createElement("select",{value:typeof a=="string"?a:"custom",onChange:g},G.createElement("option",{value:"today"},"Today"),G.createElement("option",{value:"yesterday"},"Yesterday"),G.createElement("option",{value:"this_week"},"This Week"),G.createElement("option",{value:"last_7_days"},"Last 7 Days"),G.createElement("option",{value:"this_month"},"This Month"),G.createElement("option",{value:"last_30_days"},"Last 30 Days"),G.createElement("option",{value:"this_year"},"This Year"),G.createElement("option",{value:"all"},"All Instances"),G.createElement("option",{value:"custom"},"Custom")),typeof a!="string"&&G.createElement(G.Fragment,null,G.createElement("label",{className:"app-sdk-w-full app-sdk-flex app-sdk-items-center app-sdk-gap-2"},"Start Date:",G.createElement("input",{className:"app-sdk-px-2 app-sdk-flex-1 app-sdk-box-border",type:"datetime-local",value:u??"",onChange:M=>p({custom:{startDate:M.target.value||void 0,endDate:m}})})),G.createElement("label",{className:"app-sdk-w-full app-sdk-flex app-sdk-items-center app-sdk-gap-2"},"End Date:",G.createElement("input",{className:"app-sdk-px-2 app-sdk-flex-1",type:"datetime-local",value:m??"",onChange:M=>p({custom:{startDate:u,endDate:M.target.value||void 0}})})))),G.createElement("div",{className:"app-sdk-flex app-sdk-flex-col app-sdk-h-full app-sdk-rounded-3xl app-sdk-pb-3 app-sdk-gap-1"},G.createElement("label",{className:"app-sdk-flex app-sdk-items-center app-sdk-gap-2 app-sdk-text-sm"},G.createElement("span",null,"Executed Instances: ",k??0))),(q||z)&&(k??0)>0&&G.createElement("div",{className:"app-sdk-flex app-sdk-flex-col app-sdk-h-full app-sdk-rounded-3xl app-sdk-pb-3 app-sdk-gap-1"},q&&z?G.createElement(G.Fragment,null,G.createElement("label",{className:"app-sdk-flex app-sdk-items-center app-sdk-gap-2 app-sdk-text-sm"},"Heatmap Type:"),G.createElement("select",{value:y,onChange:M=>i(M.target.value)},G.createElement("option",{value:"runtime"},"Runtimes"),G.createElement("option",{value:"processcosts"},"Costs"))):G.createElement("label",{className:"app-sdk-flex app-sdk-items-center app-sdk-gap-2 app-sdk-text-sm"},"Heatmap Type: ",q?"Runtimes":"Costs")),r&&(_||E?.runtime)&&(k??0)>0&&G.createElement("div",{className:"app-sdk-flex app-sdk-flex-col app-sdk-h-full app-sdk-rounded-3xl app-sdk-pb-3 app-sdk-gap-1"},G.createElement("label",{className:"app-sdk-flex app-sdk-items-center app-sdk-gap-2 app-sdk-text-sm"},G.createElement("span",null,"Runtimes")),_&&G.createElement(G.Fragment,null,G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Shortest Runtime: ",ar(_.shortest)),G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Longest Runtime: ",ar(_.longest)),G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Average Runtime: ",ar(_.average))),E&&E.runtime&&G.createElement("div",{className:"app-sdk-flex app-sdk-flex-col app-sdk-gap-1"},G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Reference Value: ",ar(E.runtime.referenceRuntime)),E.runtime.status&&G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Status: ",E.runtime.status),E.runtime.warningThreshold&&G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Warning Threshold: ",ar(E.runtime.warningThreshold)," (",E.runtime.warningSource,")"),E.runtime.criticalThreshold&&G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Critical Threshold: ",ar(E.runtime.criticalThreshold)," (",E.runtime.criticalSource,")"))),A&&Object.entries(A).length!==0&&G.createElement("div",{className:"app-sdk-flex app-sdk-flex-col app-sdk-h-full app-sdk-rounded-3xl app-sdk-gap-1"},G.createElement("label",null,"Costs"),o!=="runtime"&&T&&G.createElement("select",{value:I,onChange:M=>D(M.target.value)},Object.keys(A).map(M=>G.createElement("option",{key:M,value:M},M))),Object.entries(A).map(([M,v])=>{let S=E?.[M];return G.createElement("div",{className:"app-sdk-flex app-sdk-flex-col app-sdk-mb-2 app-sdk-ml-2",key:M},G.createElement("p",{className:"app-sdk-text-sm"},M),G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Total: ",v.total),v.errors>0&&G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Errors: ",v.errors),G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Average Cost: ",v.average.toFixed(2)),S&&G.createElement(G.Fragment,null,G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Reference Value: ",S.referenceRuntime),G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Status: ",S.status),S.warningThreshold&&G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Warning Threshold: ",S.warningThreshold.toFixed(2)," (",S.warningSource,")"),S.criticalThreshold&&G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Critical Threshold: ",S.criticalThreshold.toFixed(2)," (",S.criticalSource,")")))})))}function vh(e){let[t,r]=Ct(!1),[n,o]=Ct(),[i,a]=Ct(),[p,d]=Ct(),[u,m]=Ct(!1),[g,E]=Ct(!1),[_,A]=Ct(void 0),[k,L]=Ct("runtime"),[z,q]=Ct("today"),[T,y]=Ct([]),I=v=>{let{processModel:S}=e;if(!S?.processModelId||!S?.hash)return;let P=new Co(v,S.hash),x=new Eo(v,S.flowNodes);if(a(P),o(x),p)p.updateHeatmapService(P,x,S);else{let N=new xo(P,x,S);d(N),N.hasRuntimeEntry()?L("runtime"):N.hasCostEntry()&&L("processcosts")}};_l(()=>{let v=new URLSearchParams(window.location.search);v.get("heatmapInspector")==="true"&&r(!0);let S=v.get("timeRange"),P="today";if(S==="custom"){let N=v.get("startDate")||void 0,B=v.get("endDate")||void 0;P={custom:{startDate:N,endDate:B}}}else S&&(P=S);q(P),A({timeRange:P}),(async()=>{if(!e.getInstancesFromDatabase||!e.processModel?.processModelId||!e.processModel?.hash)return;let N=await e.getInstancesFromDatabase(e.processModel.processModelId,e.processModel.hash,{timeRange:P});N.length>0&&(m(!0),I(N),E(!0))})()},[e.getInstancesFromDatabase,e.processModel]),_l(()=>{if(!_?.timeRange||!e.getInstancesFromDatabase||!e.processModel?.processModelId||!e.processModel?.hash)return;(async()=>{let S=await e.getInstancesFromDatabase?.(e.processModel.processModelId,e.processModel.hash,{timeRange:_.timeRange})??[];m(S.length>0),I(S),E(!0)})()},[_,e.getInstancesFromDatabase,e.processModel]);let D=()=>{let v=new URLSearchParams(window.location.search);v.get("heatmapInspector")==="true"?(v.delete("heatmapInspector"),r(!1)):(v.set("heatmapInspector","true"),r(!0)),window.history.replaceState({},"",`${window.location.pathname}?${v.toString()}${window.location.hash}`)},M=v=>{q(v),A({timeRange:v});let S=new URLSearchParams(window.location.search);typeof v=="string"?(S.set("timeRange",v),S.delete("startDate"),S.delete("endDate")):(S.set("timeRange","custom"),v.custom.startDate?S.set("startDate",v.custom.startDate):S.delete("startDate"),v.custom.endDate?S.set("endDate",v.custom.endDate):S.delete("endDate")),window.history.replaceState({},"",`${window.location.pathname}?${S.toString()}`)};return Vt.createElement("div",{className:"app-sdk-relative app-sdk-w-full app-sdk-h-full"},g&&Vt.createElement(Vt.Fragment,null,Vt.createElement(ho,null,Vt.createElement(yo,{isOpen:t,open:D,close:D})),Vt.createElement(gh,{show:t},Vt.createElement("div",{className:"app-sdk-transition app-sdk-duration-200 data-[closed]:app-sdk-opacity-0 app-sdk-w-1/4 app-sdk-min-w-64 app-sdk-absolute app-sdk-top-0 app-sdk-right-0 app-sdk-z-40 app-sdk-pt-2 app-sdk-pr-2"},Vt.createElement(Sl,{processModel:e.processModel,processCostsService:n,runtimeService:i,heatmapService:p,heatmapType:k,setHeatmapType:L,timeRange:z,setTimeRange:M,selectedInstance:T[0]}))),Vt.createElement(Jr,{xml:e.processModel?.xml,processModel:e.processModel,heatmapService:p,showHeatmap:u,heatmapType:k,setSelectedElementIds:y})))}var xC=yh(()=>Promise.resolve(vh),{ssr:!1});export{xi as BPMNViewer,Z0 as BPMNViewerNextJS,Oi as BooleanFormField,Kp as BpmnViewerComponent,Bi as CheckboxFormField,Li as ColorFormField,Vi as ConfirmFormField,Ui as CustomFormField,$i as DateFormField,ji as DatetimeLocalFormField,Hi as DecimalFormField,Jr as DiagramDocumentationInspector,w1 as DiagramDocumentationInspectorNextJS,Ei as DocumentationViewer,S1 as DropdownMenu,_1 as DropdownMenuItem,D1 as DynamicLink,S2 as DynamicUi,el as DynamicUiComponent,zi as EmailFormField,Wi as EnumFormField,Gi as FileFormField,Mi as FlowNode,Jp as FormFieldComponentMap,qi as HeaderFormField,Yi as HiddenFormField,Ki as IntegerFormField,Xi as MonthFormField,ea as ParagraphFormField,ta as PasswordFormField,hh as ProcessInstanceInspector,tC as ProcessInstanceInspectorNextJS,xC as ProcessModelInspectorNextJS,ra as RadioFormField,na as RangeFormField,oa as SelectFormField,co as SplitterLayout,ia as StringFormField,aa as TelFormField,cn as TextareaFormField,sa as TimeFormField,pa as UrlFormField,la as WeekFormField};
|
|
34
|
+
${i==="end"?"app-sdk-fixed app-sdk-top-1/2 app-sdk-left-1/2 app-sdk--translate-x-1/2 app-sdk--translate-y-1/2 app-sdk-w-4/5 app-sdk-h-[70vh] app-sdk-bg-white/10 app-sdk-backdrop-blur-xl app-sdk-rounded-xl app-sdk-shadow-2xl app-sdk-z-50 app-sdk-p-6":""}`},me.createElement("div",{className:"app-sdk-flex app-sdk-items-center app-sdk-justify-between"},me.createElement("label",{className:"app-sdk-text-white app-sdk-font-medium"},"End Token"),me.createElement("button",{className:"app-sdk-text-white hover:app-sdk-text-gray-300 app-sdk-w-6 app-sdk-h-6",onClick:()=>p("end"),title:i==="end"?"Minimize":"Maximize"},i==="end"?me.createElement(yl,{className:"app-sdk-w-6 app-sdk-h-6"}):me.createElement(gl,{className:"app-sdk-w-6 app-sdk-h-6"}))),me.createElement(vl,{height:i==="end"?"60vh":"7rem",defaultLanguage:"json",value:u,options:{lineNumbersMinChars:2,readOnly:!0,minimap:{enabled:!1}}})))))}import gn,{useEffect as ah,useState as sh}from"react";function yo(e){let[t,r]=sh(e.isOpen??!1);return ah(()=>{r(e.isOpen??!1)},[e.isOpen]),gn.createElement(Zt,{disabled:e.disabled,title:"View Process Tokens",onClick:()=>{t?e.close():e.open(),r(n=>!n)}},t?gn.createElement("svg",{className:"dark:!app-sdk-stroke-app-sdk-gray-50 dark:!app-sdk-fill-app-sdk-gray-50",xmlns:"http://www.w3.org/2000/svg",width:"1.25rem",height:"1.25rem",viewBox:"0 0 384 512"},gn.createElement("path",{d:"M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z"})):gn.createElement("svg",{className:"dark:!app-sdk-stroke-app-sdk-gray-50 dark:!app-sdk-fill-app-sdk-gray-50",xmlns:"http://www.w3.org/2000/svg",width:"1.25rem",height:"1.25rem",viewBox:"0 0 448 512"},gn.createElement("path",{d:"M0 96C0 78.3 14.3 64 32 64l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 128C14.3 128 0 113.7 0 96zM0 256c0-17.7 14.3-32 32-32l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 288c-17.7 0-32-14.3-32-32zM448 416c0 17.7-14.3 32-32 32L32 448c-17.7 0-32-14.3-32-32s14.3-32 32-32l384 0c17.7 0 32 14.3 32 32z"})))}var bl=[bo.error,bo.terminated],uh=[Et.manualTask,Et.userTask,Et.untypedTask],xl=[Et.endEvent,Et.intermediateThrowEvent,Et.sendTask],fh=[Et.startEvent,Et.intermediateCatchEvent,Et.boundaryEvent,Et.receiveTask],ko={isOpen:!1,placeholder:"",entries:[],onConfirm:()=>{},onClose:()=>{}},mh={isOpen:!1},wo="asdk-buttons";function hh(e){let{processInstanceId:t}=e,[r,n]=Lt(ko),[o,i]=Lt(mh),[a,p]=Lt(!1),[d,u]=Lt(),[m,g]=Lt([]),[E,_]=Lt([]),[A,k]=Lt(new Map),[L,z]=Lt([]),[q,T]=Lt([]),y=dh(null),I=go(async()=>{let x=await import("./actions-MB5VDCO7.mjs"),N=x.getProcessInstance(t),B=x.getFlowNodeInstances(t),[$,le]=await Promise.all([N,B]),K=await x.getTriggeredFlowNodeInstances(le.map(w=>w.flowNodeInstanceId));u($),g(le),_(K);let W=new URLSearchParams(window.location.search);W.get("tokenInspector")==="true"&&p(!0);let ge=W.getAll("instance"),ae=le.filter(w=>ge.includes(w.flowNodeInstanceId));ae.length!==ge.length&&(W.delete("instance"),ae.forEach(w=>W.append("instance",w.flowNodeInstanceId)),window.history.replaceState({},"",`${window.location.pathname}?${W.toString()}`));let ce=new Map;le.forEach(w=>{ce.has(w.flowNodeId)||ce.set(w.flowNodeId,w.flowNodeInstanceId)}),ae.forEach(w=>ce.set(w.flowNodeId,w.flowNodeInstanceId)),k(ce)},[t]),D=go(x=>{let N=oe(x),B=m.some(le=>le.flowNodeId===N.targetRef.id),$=m.some(le=>le.flowNodeId===N.sourceRef.id&&le.state===wl.finished);return B&&$},[m]),M=go(async()=>{let x=y.current?.bpmnViewerRef,N=x?.getOverlays();if(!x||!N)return;let B=await import("./actions-MB5VDCO7.mjs"),$=B.getProcessInstance(t),le=B.getFlowNodeInstances(t),[K,W]=await Promise.all([$,le]),Me=await B.getTriggeredFlowNodeInstances(W.map(C=>C.flowNodeInstanceId));if(ba(K,d)&&ba(W,m)&&ba(Me,E))return;K.state!==d?.state&&N.clear();for(let[C,j]of A.entries()){let ne=m.find(s=>s.flowNodeInstanceId===j);if(!ne)continue;let Pe=W.find(s=>s.flowNodeId===C);Pe?.flowNodeInstanceId===j&&ne.state===Pe.state||(x.removeMarker(C,`asdk-pii-flow-node-instance-state--${ne.state}`),N.remove({element:C,type:wo}))}u(K),g(W),_(Me);let ge=new URLSearchParams(window.location.search),ae=ge.getAll("instance"),ce=W.filter(C=>ae.includes(C.flowNodeInstanceId));ce.length!==ae.length&&(ge.delete("instance"),ce.forEach(C=>ge.append("instance",C.flowNodeInstanceId)),window.history.replaceState({},"",`${window.location.pathname}?${ge.toString()}`));let w=new Map;W.forEach(C=>{w.has(C.flowNodeId)||w.set(C.flowNodeId,C.flowNodeInstanceId)}),ce.forEach(C=>w.set(C.flowNodeId,C.flowNodeInstanceId)),k(w)},[y.current,d,A,m,t]),v=go((x,N)=>{let B=y.current?.bpmnViewerRef,$=B?.getOverlays();if(!B||!$)return;let le=$.get({element:x.id,type:wo});if(Array.isArray(le)&&le.length>0)return;let K=N.find(s=>s.flowNodeInstanceId===A.get(s.flowNodeId));if(!K)return;let W=e.showFlowNodeExecutionCount&&N.length>1,Me=e.showFlowNodeInstancesListButton&&N.length>1,ge=e.showFinishTaskButton&&uh.includes(x.type)&&K.state===wl.suspended,ae=e.showRetryFlowNodeInstanceButton&&d&&bl.includes(d.state),ce=!1,w=[];if(e.showGoToFlowNodeButton&&fh.includes(x.type)){let s=K.triggeredByFlowNodeInstance;ce=s!==void 0,w=s?[s]:[]}else if(e.showGoToFlowNodeButton&&xl.includes(x.type)){let s=E.filter(f=>f.triggeredByFlowNodeInstance?.flowNodeInstanceId===K.flowNodeInstanceId);ce=s.length>0,w=s}if(!W&&!ge&&!ae&&!ce)return;let C=x.width<52,j=$.add(x.id,wo,{position:{bottom:-7,left:C?-x.width/2:0},html:"<div></div>"}),ne=$.get(j),Pe=lh(ne.htmlContainer),c=N.indexOf(K)===0,l=N.length-N.indexOf(K);Pe.render(Ee.createElement(nl,{width:C?x.width*2:x.width},W&&Ee.createElement(xt,{className:"app-sdk-select-none !app-sdk-cursor-default !app-sdk-bg-slate-500",title:`Flow Node was executed ${N.length} times.${c?"":` You are viewing instance #${l}.`}`},`${c?"":`${l}/`}${N.length}`),Me&&Ee.createElement(il,{onClick:()=>{let s=N.map(h=>({id:h.flowNodeInstanceId,name:`${h.startedAt?.toLocaleString("en-GB")} - ${h.flowNodeInstanceId} - ${h.state}${h.flowNodeInstanceId===K.flowNodeInstanceId?" (selected)":""}`,...h}));n({isOpen:!0,placeholder:"Select instance to display:",entries:s,onConfirm:async h=>{let b=N.find(te=>te.flowNodeInstanceId===h.flowNodeInstanceId);if(!b)return;B.removeMarker(K.flowNodeId,`asdk-pii-flow-node-instance-state--${K.state}`),$.remove({element:x.id,type:wo});let F=new URLSearchParams(window.location.search);F.getAll("instance").includes(K.flowNodeInstanceId)&&F.delete("instance",K.flowNodeInstanceId),N.indexOf(b)!==0&&F.append("instance",b.flowNodeInstanceId),window.history.replaceState({},"",`${window.location.pathname}?${F.toString()}${window.location.hash}`),k(te=>new Map(te).set(x.id,h.flowNodeInstanceId)),n(ko)},onClose:()=>n(ko)})}}),ce&&Ee.createElement(ol,{isSender:xl.includes(x.type),onClick:()=>{if(w.length===1){let f=new URLSearchParams;f.append("selected",w[0].flowNodeId),f.append("instance",w[0].flowNodeInstanceId),window.location.href=`${w[0].processInstanceId}?${f.toString()}`;return}let s=w.map(f=>({id:f.flowNodeInstanceId,name:`${f.startedAt?.toLocaleString("en-GB")} - ${f.flowNodeId}${f.flowNodeName?` - ${f.flowNodeName}`:""}`,...f}));n({isOpen:!0,placeholder:"Select target to go to:",entries:s,onConfirm:f=>{let h=new URLSearchParams;h.append("selected",f.flowNodeId),h.append("instance",f.flowNodeInstanceId),window.location.href=`${f.processInstanceId}?${h.toString()}`},onClose:()=>n(ko)})}}),ge&&Ee.createElement(al,{flowNodeId:K.flowNodeId,flowNodeInstanceId:K.flowNodeInstanceId,flowNodeType:x.type,processInstanceId:K.processInstanceId,onPlay:e.onFinish}),ae&&Ee.createElement(dl,{onClick:()=>{i({isOpen:!0,flowNodeInstance:K})}})))},[y.current,d,m,E,A]);if(vo(()=>{I()},[t]),vo(()=>{if(d?.state===bo.finished){M();return}let x=setInterval(M,1e3);return()=>clearInterval(x)},[M,d?.state]),vo(()=>{if(L.length===0||m.length===0){T([]);return}let x=m.filter(N=>{let B=L.includes(N.flowNodeId),$=A.get(N.flowNodeId)===N.flowNodeInstanceId;return B&&$});if(x.length===0){let N=new URLSearchParams(window.location.search);N.delete("tokenInspectorFocus"),window.history.replaceState({},"",`${window.location.pathname}?${N.toString()}${window.location.hash}`)}T(x)},[m,L,A]),vo(()=>{if(!d?.xml)return;let x=y.current?.bpmnViewerRef,N=x?.getElementRegistry();!x||!N||x.onImportDone(()=>{let B=new Set(m.map($=>$.flowNodeId));N.forEach($=>{if($.type==="bpmn:SequenceFlow"){D($)?x.addMarker($.id,"asdk-pii-sequence-flow-finished"):x.hasMarker($.id,"asdk-pii-sequence-flow-finished")&&x.removeMarker($.id,"asdk-pii-sequence-flow-finished");return}if(!B.has($.id))return;let le=m.filter(W=>W.flowNodeId===$.id),K=le.find(W=>W.flowNodeInstanceId===A.get(W.flowNodeId));K&&(x.hasMarker($.id,"asdk-pii-flow-node-instance-state")||x.addMarker($.id,"asdk-pii-flow-node-instance-state"),x.hasMarker($.id,`asdk-pii-flow-node-instance-state--${K.state}`)||x.addMarker($.id,`asdk-pii-flow-node-instance-state--${K.state}`),v($,le))})})},[y.current,d,m,E,A]),!d?.xml)return e.loadingComponent?e.loadingComponent:Ee.createElement("div",{className:"app-sdk-absolute app-sdk-w-screen app-sdk-h-screen app-sdk-flex"},Ee.createElement("div",{className:"app-sdk-m-auto"},"Fetching diagram..."));let S=e.showProcessRefreshButton||e.showProcessRetryButton||e.showProcessTerminateButton||e.showTokenInspectorButton,P=e.showTokenInspectorButton&&(e.showProcessRefreshButton||e.showProcessRetryButton||e.showProcessTerminateButton);return Ee.createElement("div",{className:"app-sdk-relative app-sdk-w-full app-sdk-h-full"},Ee.createElement(rl,{...r}),(e.showRetryFlowNodeInstanceButton||e.showProcessRetryButton)&&Ee.createElement(ul,{...o,processInstance:d,onClose:()=>i(x=>({...x,isOpen:!1}))}),S&&Ee.createElement(ho,null,e.showProcessRefreshButton&&Ee.createElement(ll,{onClick:M}),e.showProcessRetryButton&&Ee.createElement(fl,{onClick:()=>i({isOpen:!0}),disabled:!bl.includes(d.state)}),e.showProcessTerminateButton&&Ee.createElement(ml,{processInstanceId:t,disabled:d.state!==bo.running}),P&&Ee.createElement(sl,null),e.showTokenInspectorButton&&Ee.createElement(yo,{isOpen:a,open:()=>{let x=new URLSearchParams(window.location.search);x.set("tokenInspector","true"),window.history.replaceState({},"",`${window.location.pathname}?${x.toString()}${window.location.hash}`),p(!0)},close:()=>{let x=new URLSearchParams(window.location.search);x.delete("tokenInspector"),window.history.replaceState({},"",`${window.location.pathname}?${x.toString()}${window.location.hash}`),p(!1)}})),Ee.createElement(ch,{show:a},Ee.createElement("div",{className:"app-sdk-transition app-sdk-duration-200 data-[closed]:app-sdk-opacity-0 app-sdk-w-1/4 app-sdk-min-w-64 app-sdk-absolute app-sdk-top-0 app-sdk-right-0 app-sdk-z-40 app-sdk-pt-2 app-sdk-pr-2"},Ee.createElement(kl,{processInstance:d,flowNodeInstances:q,close:()=>{let x=new URLSearchParams(window.location.search);x.delete("tokenInspector"),window.history.replaceState({},"",`${window.location.pathname}?${x.toString()}${window.location.hash}`),p(!1)}}))),Ee.createElement(Jr,{xml:d.xml,ref:y,setSelectedElementIds:z}))}var tC=ph(()=>Promise.resolve(hh),{ssr:!1});import yh from"next/dynamic.js";import Vt,{useEffect as _l,useState as Ct}from"react";import{Transition as gh}from"@headlessui/react";function Pr(e){if(!e)return;let t=parseFloat(e);if(!isNaN(t))return t/100}var xo=class{nodeInfoMap={};heatmapInfo={};runtimeService;processCostsService;bpmnViewer;activeCostKeyPerNode={};constructor(t,r,n){this.runtimeService=t,this.processCostsService=r,this.computeRuntimeHeatmap(n),this.computeCostHeatmap(n)}updateHeatmapService(t,r,n){this.runtimeService=t,this.processCostsService=r,this.computeRuntimeHeatmap(n),this.computeCostHeatmap(n)}getHeatmapInfoForId(t){return this.heatmapInfo[t]}hasRuntimeEntry(){return Object.values(this.heatmapInfo).some(t=>"runtime"in t)}hasCostEntry(){return Object.values(this.heatmapInfo).some(t=>Object.keys(t).some(r=>!r.startsWith("runtime")))}getActiveCostKey(t){return this.activeCostKeyPerNode[t]}hasMultipleCostEntries(t){let r=this.heatmapInfo[t];return r?Object.keys(r).filter(o=>!o.startsWith("runtime")).length>=2:!1}applyHeatmap(t,r,n){let o=n.viewer,i=n.flowNodeId;if(!o&&!i)return;if(!t&&o){o.clearHeatmap(Object.keys(this.heatmapInfo));return}if(!this.bpmnViewer&&o&&(this.bpmnViewer=o),!o&&i){let d=this.heatmapInfo[i]?.[r]?.status;if(!d)return;this.activeCostKeyPerNode[i]=r,this.bpmnViewer?.showHeatmap({[i]:d});return}if(!o)return;let a={},p={};for(let[d,u]of Object.entries(this.nodeInfoMap))a[d]=u.status;for(let[d,u]of Object.entries(this.heatmapInfo)){let m=this.activeCostKeyPerNode?.[d];if(m&&u[m]?.status){p[d]=u[m].status;continue}for(let[g,E]of Object.entries(u))if(!g.startsWith("runtime")&&E?.status){p[d]=E.status,this.activeCostKeyPerNode=this.activeCostKeyPerNode,this.activeCostKeyPerNode[d]=g;break}}r==="runtime"?(o.clearHeatmap(Object.keys(p)),o.showHeatmap(a)):(o.clearHeatmap(Object.keys(a)),o.showHeatmap(p))}computeCostHeatmap(t){let r=this.processCostsService.getAllProcessCosts?.();if(r)for(let[n,o]of Object.entries(r))for(let[i,a]of Object.entries(o)){let p=a.average;if(p===void 0)continue;let d=a.critical??Pr(t.customProperties["pilot.setProcessCosts.critical"]),u=a.warning??Pr(t.customProperties["pilot.setProcessCosts.warning"]),m=a.reference;if(!m)continue;let g=u?m*u:void 0,E=d?m*d:void 0;if(g&&E&&E<g)continue;let _="Stable";E!==void 0&&p>=E?_="Critical":g!==void 0&&(E===void 0||g<E)&&p>=g&&(_="Warning");let A={status:_,referenceRuntime:m,warningThreshold:g,criticalThreshold:E,warningSource:this.getHeatmapSource(a.warning,t.customProperties["pilot.setProcessCosts.warning"]),criticalSource:this.getHeatmapSource(a.critical,t.customProperties["pilot.setProcessCosts.critical"])};this.heatmapInfo[n]||(this.heatmapInfo[n]={}),this.heatmapInfo[n][i]=A}}computeRuntimeHeatmap(t){let r=Pr(t.customProperties["pilot.setRuntime.warning"]),n=Pr(t.customProperties["pilot.setRuntime.critical"]);t.flowNodes.forEach(o=>{let a=this.runtimeService.getStats(o.id)?.average,p=o.customProperties["pilot.setRuntime.reference"],d=p?Number(p):void 0;if(!d||isNaN(d))return;let u=Pr(o.customProperties["pilot.setRuntime.warning"]),m=Pr(o.customProperties["pilot.setRuntime.critical"]),g=u??r,E=m??n,_=g?d*g:void 0,A=E?d*E:void 0;if(A&&_&&A<_)return;let k={referenceRuntime:d,warningThreshold:_,criticalThreshold:A,warningSource:this.getHeatmapSource(u,r),criticalSource:this.getHeatmapSource(m,n)};if(a!==void 0&&(A||_)){let L="Stable";A!==void 0&&a>=A?L="Critical":_!==void 0&&(A===void 0||_<A)&&a>=_&&(L="Warning"),k.status=L,this.nodeInfoMap[o.id]=k}this.heatmapInfo[o.id]={runtime:k}})}getHeatmapSource(t,r){return t!==void 0?"Flow Node":r!==void 0?"Process":void 0}};var Eo=class{flowNodeInstances;processCostsExpressionParams;instances;costResultsByFlowNodeId={};instanceCounter={};thresholdsByFlowNodeId={};constructor(t,r){this.instances=t,this.flowNodeInstances=t.flatMap(n=>n.process_instance.flowNodeInstances||[]),this.processCostsExpressionParams={correlationMetadata:{},processInstanceMetadata:{}},this.precalculateCosts(r)}getInstanceCount(t){return this.instanceCounter[t]}getCostsForFlowNodeId(t){return this.costResultsByFlowNodeId[t]}getAllProcessCosts(){return this.costResultsByFlowNodeId}getFlowNodeExecutionCount(t,r){let n=0;for(let o of this.flowNodeInstances)if(o.id===t&&o.flowNodeExitedAt&&(n++,o.flowNodeInstanceId===r))break;return n}getProcessInstanceCount(){return this.instances.length}splitCostProperties(t){let r={},n={};for(let[o,i]of Object.entries(t)){let a=o.match(/^pilot\.setProcessCosts\.([^.]+)\.(formula|reference|warning|critical)$/);if(a){let p=a[1],d=a[2];if(d==="formula")r[p]=i;else{let u=parseFloat(i);n[p]||(n[p]={}),isNaN(u)||(d==="reference"?n[p].reference=u:n[p][d]=u/100)}}}return{costExpressions:r,thresholds:n}}precalculateCosts(t){for(let r of t){let n=r.id,{costExpressions:o,thresholds:i}=this.splitCostProperties(r.customProperties);Object.keys(i).length>0&&(this.thresholdsByFlowNodeId[n]=i);let a=0;for(let p of this.flowNodeInstances)if(n===p.id&&p.flowNodeExitedAt){a+=1,this.setProcessCostExpressionParamsForInstance(p);let d=this.getProcessCosts(o);if(Object.keys(d).length===0)continue;this.costResultsByFlowNodeId[n]||(this.costResultsByFlowNodeId[n]={});for(let[u,m]of Object.entries(d)){let g=parseFloat(m),E=i[u]??this.thresholdsByFlowNodeId[n]?.[u]??{},_=this.costResultsByFlowNodeId[n][u]??{total:0,errors:0,average:0,count:0,...E};isNaN(g)?_.errors+=1:_.total+=g,this.costResultsByFlowNodeId[n][u]=_}}this.instanceCounter[n]=a}for(let r in this.costResultsByFlowNodeId)for(let n in this.costResultsByFlowNodeId[r]){let o=this.costResultsByFlowNodeId[r][n],i=this.instanceCounter[r],a=i>0?o.total/(i-o.errors):0;o.average=isNaN(a)?0:a}}getProcessCosts(t){let r={};for(let[n,o]of Object.entries(t)){if(!o)continue;let i=!1,a=o.replace(/\$\{(.+?)\}/g,(p,d)=>{let u=d.split(".").reduce((m,g)=>m&&m[g],this.processCostsExpressionParams);return u===void 0||isNaN(u)?(i=!0,"invalid"):u.toString()});if(i||a.includes("$")||a.includes("{")||a.includes("}")){r[n]="{ Error: Invalid expression. }";continue}try{let p=new Function("Math",`return ${a}`)(Math);r[n]=p.toString()}catch{r[n]="{ Error: Invalid expression. }"}}return r}setProcessCostExpressionParamsForInstance(t){this.processCostsExpressionParams.currentFlowNode=this.getCurrentFlowNode(t.flowNodeInstanceId),this.processCostsExpressionParams.token=this.buildTokenHistoryForFlowNodeInstance(t.flowNodeInstanceId),this.processCostsExpressionParams.dataObjects=this.buildDataObjectsForFlowNodeInstance(t.flowNodeInstanceId),this.processCostsExpressionParams.flowNodeExecutionCount=this.getFlowNodeExecutionCount(t.id,t.flowNodeInstanceId)}getCurrentFlowNode(t){return this.flowNodeInstances.find(r=>r.flowNodeInstanceId===t)}buildTokenHistoryForFlowNodeInstance(t){let r=this.flowNodeInstances.findIndex(i=>i.flowNodeInstanceId===t&&i.flowNodeExitedAt);if(r===-1)return{current:{},history:{}};let n=this.flowNodeInstances[r]?.endToken??{},o={};for(let i=0;i<r;i++){let a=this.flowNodeInstances[i];a.endToken&&(o[a.id]=a.endToken)}return{current:n,history:o}}buildDataObjectsForFlowNodeInstance(t){let r={};for(let n of this.flowNodeInstances){if(n.flowNodeInstanceId===t&&n.flowNodeExitedAt)break;for(let[o,i]of Object.entries(n.writtenDataObjectValues||{}))r[o]=i}return r}};function El(e){if(e.length!==0)return Math.round(e.reduce((t,r)=>t+r,0)/e.length)}function Cl(e){return Math.min(...e)}function Nl(e){return Math.max(...e)}var Co=class{runtimeStatsById;constructor(t,r){let n=this.setMappedRuntimes(t,r);this.runtimeStatsById=this.aggregateRuntimes(n)}getStats(t){let r=this.runtimeStatsById[t];if(r)return r;let n=Object.keys(this.runtimeStatsById)[0];return this.runtimeStatsById[n]}aggregateRuntimes(t){let r={};for(let n of t){let o=Object.values(n.instances);o.length!==0&&(r[n.id]={average:El(o)??0,shortest:Cl(o)??0,longest:Nl(o)??0})}return r}setMappedRuntimes(t,r){let n=this.getFlowNodeTimes(t),o=this.getTimesFromProcessInstances(t);return n.unshift({id:r,instances:o}),n}getTimesFromProcessInstances(t){let r={};for(let n of t){let{processInstanceId:o,processStartedAt:i,processFinishedAt:a}=n.process_instance;if(o&&i&&a){let p=new Date(i).getTime(),u=new Date(a).getTime()-p;r[o]=u}}return r}getFlowNodeTimes(t){let r=new Map;t.forEach(o=>{o.process_instance.flowNodeInstances.forEach(a=>{let p=a.id,d=a.flowNodeInstanceId,u=a.flowNodeEnteredAt?new Date(a.flowNodeEnteredAt).getTime():void 0,m=a.flowNodeExitedAt?new Date(a.flowNodeExitedAt).getTime():void 0;if(!p||!d)return;r.has(p)||r.set(p,new Map);let g=r.get(p);g.has(d)||g.set(d,{});let E=g.get(d);u!==void 0&&(!E.enteredAt||u<E.enteredAt)&&(E.enteredAt=u),m!==void 0&&(!E.exitedAt||m>E.exitedAt)&&(E.exitedAt=m)})});let n=[];return r.forEach((o,i)=>{let a={};o.forEach((p,d)=>{p.enteredAt!==void 0&&p.exitedAt!==void 0&&(a[d]=p.exitedAt-p.enteredAt)}),n.push({id:i,instances:a})}),n}};import G,{useMemo as vn}from"react";function ar(e){if(e===void 0)return"";if(e==0)return"0ms";let t=Math.floor(e/(1440*60*1e3)),r=Math.floor(e%(1440*60*1e3)/(3600*1e3)),n=Math.floor(e%(3600*1e3)/(60*1e3)),o=Math.floor(e%(60*1e3)/1e3),i=e%1e3,a=+(i%1===0?i:i.toFixed(2)),p=[];return t>0&&p.push(`${t}d`),r>0&&p.push(`${r}h`),n>0&&p.push(`${n}m`),o>0&&p.push(`${o}s`),i>0&&p.push(`${a}ms`),p.join(" ")}function Sl({processModel:e,processCostsService:t,runtimeService:r,heatmapService:n,heatmapType:o,setHeatmapType:i,timeRange:a,setTimeRange:p,selectedInstance:d}){let u=typeof a!="string"?a.custom.startDate:void 0,m=typeof a!="string"?a.custom.endDate:void 0,g=M=>{let v=M.target.value;p(v==="custom"?{custom:{startDate:u,endDate:m}}:v)},E=vn(()=>{if(!(!n||!d))return n.getHeatmapInfoForId(d)},[n,d]),_=vn(()=>{if(!(!r||!d))return r.getStats(d)},[r,d]),A=vn(()=>{if(!(!t||!d))return t.getCostsForFlowNodeId(d)},[d,t]),k=vn(()=>{if(t)return d?t.getInstanceCount(d)??t.getProcessInstanceCount():t.getProcessInstanceCount()},[d,t]),L=vn(()=>{let M=e.flowNodes.find(v=>v.id===d);return M?`Flow Node: ${M.id} (${M.name})`:`Process: ${e.processModelId} (${e.processModelName})`},[d,e]),z=n?.hasCostEntry?.()??!1,q=n?.hasRuntimeEntry?.()??!1,T=n&&d?n.hasMultipleCostEntries(d):!1,y=o==="runtime"?"runtime":"processcosts",I=n&&d?n.getActiveCostKey(d):"processcosts",D=M=>{d&&i(M),n?.applyHeatmap(!0,M,{flowNodeId:d})};return G.createElement("div",{className:"app-sdk-flex app-sdk-flex-col app-sdk-h-full app-sdk-rounded-3xl app-sdk-p-4 app-sdk-gap-1 app-sdk-bg-white/95 dark:app-sdk-bg-black/85 dark:app-sdk-text-white app-sdk-border app-sdk-border-solid dark:app-sdk-border-none"},G.createElement("label",null,L),G.createElement("div",{className:"app-sdk-flex app-sdk-flex-col app-sdk-h-full app-sdk-rounded-3xl app-sdk-pb-3 app-sdk-gap-1"},G.createElement("label",null,"Time Period:"),G.createElement("select",{value:typeof a=="string"?a:"custom",onChange:g},G.createElement("option",{value:"today"},"Today"),G.createElement("option",{value:"yesterday"},"Yesterday"),G.createElement("option",{value:"this_week"},"This Week"),G.createElement("option",{value:"last_7_days"},"Last 7 Days"),G.createElement("option",{value:"this_month"},"This Month"),G.createElement("option",{value:"last_30_days"},"Last 30 Days"),G.createElement("option",{value:"this_year"},"This Year"),G.createElement("option",{value:"all"},"All Instances"),G.createElement("option",{value:"custom"},"Custom")),typeof a!="string"&&G.createElement(G.Fragment,null,G.createElement("label",{className:"app-sdk-w-full app-sdk-flex app-sdk-items-center app-sdk-gap-2"},"Start Date:",G.createElement("input",{className:"app-sdk-px-2 app-sdk-flex-1 app-sdk-box-border",type:"datetime-local",value:u??"",onChange:M=>p({custom:{startDate:M.target.value||void 0,endDate:m}})})),G.createElement("label",{className:"app-sdk-w-full app-sdk-flex app-sdk-items-center app-sdk-gap-2"},"End Date:",G.createElement("input",{className:"app-sdk-px-2 app-sdk-flex-1",type:"datetime-local",value:m??"",onChange:M=>p({custom:{startDate:u,endDate:M.target.value||void 0}})})))),G.createElement("div",{className:"app-sdk-flex app-sdk-flex-col app-sdk-h-full app-sdk-rounded-3xl app-sdk-pb-3 app-sdk-gap-1"},G.createElement("label",{className:"app-sdk-flex app-sdk-items-center app-sdk-gap-2 app-sdk-text-sm"},G.createElement("span",null,"Executed Instances: ",k??0))),(q||z)&&(k??0)>0&&G.createElement("div",{className:"app-sdk-flex app-sdk-flex-col app-sdk-h-full app-sdk-rounded-3xl app-sdk-pb-3 app-sdk-gap-1"},q&&z?G.createElement(G.Fragment,null,G.createElement("label",{className:"app-sdk-flex app-sdk-items-center app-sdk-gap-2 app-sdk-text-sm"},"Heatmap Type:"),G.createElement("select",{value:y,onChange:M=>i(M.target.value)},G.createElement("option",{value:"runtime"},"Runtimes"),G.createElement("option",{value:"processcosts"},"Costs"))):G.createElement("label",{className:"app-sdk-flex app-sdk-items-center app-sdk-gap-2 app-sdk-text-sm"},"Heatmap Type: ",q?"Runtimes":"Costs")),r&&(_||E?.runtime)&&(k??0)>0&&G.createElement("div",{className:"app-sdk-flex app-sdk-flex-col app-sdk-h-full app-sdk-rounded-3xl app-sdk-pb-3 app-sdk-gap-1"},G.createElement("label",{className:"app-sdk-flex app-sdk-items-center app-sdk-gap-2 app-sdk-text-sm"},G.createElement("span",null,"Runtimes")),_&&G.createElement(G.Fragment,null,G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Shortest Runtime: ",ar(_.shortest)),G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Longest Runtime: ",ar(_.longest)),G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Average Runtime: ",ar(_.average))),E&&E.runtime&&G.createElement("div",{className:"app-sdk-flex app-sdk-flex-col app-sdk-gap-1"},G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Reference Value: ",ar(E.runtime.referenceRuntime)),E.runtime.status&&G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Status: ",E.runtime.status),E.runtime.warningThreshold&&G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Warning Threshold: ",ar(E.runtime.warningThreshold)," (",E.runtime.warningSource,")"),E.runtime.criticalThreshold&&G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Critical Threshold: ",ar(E.runtime.criticalThreshold)," (",E.runtime.criticalSource,")"))),A&&Object.entries(A).length!==0&&G.createElement("div",{className:"app-sdk-flex app-sdk-flex-col app-sdk-h-full app-sdk-rounded-3xl app-sdk-gap-1"},G.createElement("label",null,"Costs"),o!=="runtime"&&T&&G.createElement("select",{value:I,onChange:M=>D(M.target.value)},Object.keys(A).map(M=>G.createElement("option",{key:M,value:M},M))),Object.entries(A).map(([M,v])=>{let S=E?.[M];return G.createElement("div",{className:"app-sdk-flex app-sdk-flex-col app-sdk-mb-2 app-sdk-ml-2",key:M},G.createElement("p",{className:"app-sdk-text-sm"},M),G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Total: ",v.total),v.errors>0&&G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Errors: ",v.errors),G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Average Cost: ",v.average.toFixed(2)),S&&G.createElement(G.Fragment,null,G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Reference Value: ",S.referenceRuntime),G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Status: ",S.status),S.warningThreshold&&G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Warning Threshold: ",S.warningThreshold.toFixed(2)," (",S.warningSource,")"),S.criticalThreshold&&G.createElement("p",{className:"app-sdk-ml-2 app-sdk-text-sm"},"Critical Threshold: ",S.criticalThreshold.toFixed(2)," (",S.criticalSource,")")))})))}function vh(e){let[t,r]=Ct(!1),[n,o]=Ct(),[i,a]=Ct(),[p,d]=Ct(),[u,m]=Ct(!1),[g,E]=Ct(!1),[_,A]=Ct(void 0),[k,L]=Ct("runtime"),[z,q]=Ct("today"),[T,y]=Ct([]),I=v=>{let{processModel:S}=e;if(!S?.processModelId||!S?.hash)return;let P=new Co(v,S.hash),x=new Eo(v,S.flowNodes);if(a(P),o(x),p)p.updateHeatmapService(P,x,S);else{let N=new xo(P,x,S);d(N),N.hasRuntimeEntry()?L("runtime"):N.hasCostEntry()&&L("processcosts")}};_l(()=>{let v=new URLSearchParams(window.location.search);v.get("heatmapInspector")==="true"&&r(!0);let S=v.get("timeRange"),P="today";if(S==="custom"){let N=v.get("startDate")||void 0,B=v.get("endDate")||void 0;P={custom:{startDate:N,endDate:B}}}else S&&(P=S);q(P),A({timeRange:P}),(async()=>{if(!e.getInstancesFromDatabase||!e.processModel?.processModelId||!e.processModel?.hash)return;let N=await e.getInstancesFromDatabase(e.processModel.processModelId,e.processModel.hash,{timeRange:P});N.length>0&&(m(!0),I(N),E(!0))})()},[e.getInstancesFromDatabase,e.processModel]),_l(()=>{if(!_?.timeRange||!e.getInstancesFromDatabase||!e.processModel?.processModelId||!e.processModel?.hash)return;(async()=>{let S=await e.getInstancesFromDatabase?.(e.processModel.processModelId,e.processModel.hash,{timeRange:_.timeRange})??[];m(S.length>0),I(S),E(!0)})()},[_,e.getInstancesFromDatabase,e.processModel]);let D=()=>{let v=new URLSearchParams(window.location.search);v.get("heatmapInspector")==="true"?(v.delete("heatmapInspector"),r(!1)):(v.set("heatmapInspector","true"),r(!0)),window.history.replaceState({},"",`${window.location.pathname}?${v.toString()}${window.location.hash}`)},M=v=>{q(v),A({timeRange:v});let S=new URLSearchParams(window.location.search);typeof v=="string"?(S.set("timeRange",v),S.delete("startDate"),S.delete("endDate")):(S.set("timeRange","custom"),v.custom.startDate?S.set("startDate",v.custom.startDate):S.delete("startDate"),v.custom.endDate?S.set("endDate",v.custom.endDate):S.delete("endDate")),window.history.replaceState({},"",`${window.location.pathname}?${S.toString()}`)};return Vt.createElement("div",{className:"app-sdk-relative app-sdk-w-full app-sdk-h-full"},g&&Vt.createElement(Vt.Fragment,null,Vt.createElement(ho,null,Vt.createElement(yo,{isOpen:t,open:D,close:D})),Vt.createElement(gh,{show:t},Vt.createElement("div",{className:"app-sdk-transition app-sdk-duration-200 data-[closed]:app-sdk-opacity-0 app-sdk-w-1/4 app-sdk-min-w-64 app-sdk-absolute app-sdk-top-0 app-sdk-right-0 app-sdk-z-40 app-sdk-pt-2 app-sdk-pr-2"},Vt.createElement(Sl,{processModel:e.processModel,processCostsService:n,runtimeService:i,heatmapService:p,heatmapType:k,setHeatmapType:L,timeRange:z,setTimeRange:M,selectedInstance:T[0]}))),Vt.createElement(Jr,{xml:e.processModel?.xml,processModel:e.processModel,heatmapService:p,showHeatmap:u,heatmapType:k,setSelectedElementIds:y})))}var xC=yh(()=>Promise.resolve(vh),{ssr:!1});export{xi as BPMNViewer,Z0 as BPMNViewerNextJS,Oi as BooleanFormField,Kp as BpmnViewerComponent,Bi as CheckboxFormField,Li as ColorFormField,Vi as ConfirmFormField,Ui as CustomFormField,$i as DateFormField,ji as DatetimeLocalFormField,Hi as DecimalFormField,Jr as DiagramDocumentationInspector,w1 as DiagramDocumentationInspectorNextJS,Ei as DocumentationViewer,S1 as DropdownMenu,_1 as DropdownMenuItem,D1 as DynamicLink,S2 as DynamicUi,el as DynamicUiComponent,zi as EmailFormField,Wi as EnumFormField,Gi as FileFormField,Mi as FlowNode,Jp as FormFieldComponentMap,qi as HeaderFormField,Yi as HiddenFormField,Ki as IntegerFormField,Xi as MonthFormField,ea as ParagraphFormField,ta as PasswordFormField,hh as ProcessInstanceInspector,tC as ProcessInstanceInspectorNextJS,xC as ProcessModelInspectorNextJS,ra as RadioFormField,na as RangeFormField,oa as SelectFormField,co as SplitterLayout,ia as StringFormField,aa as TelFormField,cn as TextareaFormField,sa as TimeFormField,pa as UrlFormField,la as WeekFormField};
|
package/build/server/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var U=Object.defineProperty;var me=Object.getOwnPropertyDescriptor;var Te=Object.getOwnPropertyNames;var ke=Object.prototype.hasOwnProperty;var ge=(e,t)=>{for(var s in t)U(e,s,{get:t[s],enumerable:!0})},we=(e,t,s,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Te(t))!ke.call(e,o)&&o!==s&&U(e,o,{get:()=>t[o],enumerable:!(n=me(t,o))||n.enumerable});return e};var Ee=e=>we(U({},"__esModule",{value:!0}),e);var tt={};ge(tt,{cancelReservedUserTask:()=>Ke,finishManualTask:()=>G,finishTask:()=>Ve,finishUntypedTask:()=>j,finishUserTask:()=>H,finishUserTaskAndGetNext:()=>ve,getActiveProcessInstances:()=>Ae,getAssignedUserTasksByIdentity:()=>Xe,getEngineClient:()=>Fe,getFlowNodeInstances:()=>ze,getFlowNodeInstancesByProcessInstanceId:()=>W,getFlowNodeInstancesTriggeredByFlowNodeInstanceIds:()=>q,getIdentity:()=>a,getProcessInstance:()=>Je,getProcessInstanceById:()=>L,getReservedUserTasksByIdentity:()=>qe,getTriggeredFlowNodeInstances:()=>et,getUserTasks:()=>ue,getWaitingUserTaskByFlowNodeInstanceId:()=>pe,getWaitingUserTasks:()=>Be,getWaitingUserTasksByCorrelationId:()=>We,getWaitingUserTasksByFlowNodeId:()=>Le,getWaitingUserTasksByProcessInstanceId:()=>De,navigateToUrl:()=>He,reserveUserTask:()=>$e,retryProcess:()=>Ze,retryProcessInstance:()=>$,startProcess:()=>je,terminateProcess:()=>Qe,terminateProcessInstance:()=>K,waitForProcessEnd:()=>Me,waitForUserTask:()=>Oe,withApplicationSdk:()=>Ge});module.exports=Ee(tt);var vt=require("only-server"),Bt=require("../common/index.cjs");var Z=require("chokidar"),J=require("esbuild"),z=require("jwt-decode"),ee=require("node:child_process"),h=require("node:fs"),p=require("node:path"),b=require("openid-client"),te=require("@5minds/processcube_engine_sdk");var V=require("@5minds/processcube_engine_client"),F=process.env.PROCESSCUBE_ENGINE_URL??"http://localhost:10560",r=new V.EngineClient(F);var Ce={token:"ZHVtbXlfdG9rZW4=",userId:"dummy_token"},_e=.85,R=["external_task.ts","external_task.js"],x=process.env.PROCESSCUBE_AUTHORITY_URL!==void 0,u=new te.Logger("processcube_app_sdk:external_task_adapter"),k={},M={},w,O=!1,se=6,Pe=3e5,Se=3e4,A=10,he=3e4,Q=10,xe=6e4;async function ne(e){if(e&&!(0,h.existsSync)(e))throw new Error(`Invalid customExternalTasksDirPath. The given path '${e}' does not exist`);b.custom.setHttpOptionsDefaults({timeout:1e5});let t=await ie();w=B(t),await ae(t);let s=be(e);(0,Z.watch)(s).on("add",async n=>{if(R.includes((0,p.basename)(n)))return v(n,s)}).on("change",async n=>{if(R.includes((0,p.basename)(n)))return Ne(n,s)}).on("unlink",async n=>{R.includes((0,p.basename)(n))&&re(n)}).on("error",n=>u.error(`Watcher error: ${n}`))}async function v(e,t){let s=(0,p.dirname)(e);if((await h.promises.readdir(s)).filter(l=>R.includes(l)).length>1){u.error(`Multiple external task files found in directory ${s}. Stopping all external task workers for this directory.`),k[s]&&re(e);return}let i=await ce(e),c=(0,p.relative)(t,s),d=de(c),f=(0,p.join)(__dirname,"lib/ExternalTaskWorkerProcess.cjs"),y=(0,ee.fork)(f,{stdio:["pipe","inherit","inherit","ipc"],env:{...process.env,PROCESSCUBE_ENGINE_URL:F}});k[s]=y,y.once("disconnect",()=>{delete k[s]}),y.on("error",l=>{u.error(`External Task Worker process error for ${d}`,{error:l,topic:d,workerDirectory:s})}),y.on("exit",(l,_)=>{if(u.info(`External Task Worker process exited for ${d}`,{code:l,signal:_,topic:d,workerDirectory:s}),delete k[s],l===3||l===4)if(Ue(s)){let P=M[s]?.count??1,S=Math.min(1e3*Math.pow(2,P-1),Se);u.info(`Scheduling restart for ${d} in ${S}ms (attempt ${P}/${se})`,{delay:S,restartCount:P,exitCode:l,topic:d,workerDirectory:s}),setTimeout(async()=>{try{if(x&&!O){u.info("Token refresh cycle is not active, restarting it before worker restart");let g=await ie();w=B(g),await ae(g)}await v(e,t)}catch(g){u.error(`Failed to restart External Task Worker process for ${d}`,{error:g,topic:d,workerDirectory:s})}},S)}else u.error(`External Task Worker process for ${d} reached maximum restart attempts`,{exitCode:l,topic:d,workerDirectory:s})}),y.send({action:"create",payload:{topic:d,identity:w,moduleString:i,workerPath:e}})}async function Ne(e,t){let s=(0,p.dirname)(e),n=k[s];if(!n)return v(e,t);let o=await ce(e),i=(0,p.relative)(t,s),c=de(i);n.send({action:"restart",payload:{topic:c,identity:w,moduleString:o,workerPath:e}})}function re(e){let t=(0,p.dirname)(e),s=k[t];s&&s.kill()}async function oe(){if(!x)return null;if(!process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID||!process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET){let n=new Error("Required environment variables PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID and PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET are missing. For help, please refer to our documentation on environment variables at: https://processcube.io/docs/app-sdk/samples/nextjs/external-task-adapter-with-nextjs#authority");throw u.error("Required environment variables PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID and PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET are missing",{err:n}),n}let e=await b.Issuer.discover(process.env.PROCESSCUBE_AUTHORITY_URL);return await new e.Client({client_id:process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID,client_secret:process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET}).grant({grant_type:"client_credentials",scope:"engine_etw"})}async function ie(){if(!x)return null;for(let e=1;e<=A;e++)try{return await oe()}catch(t){let s=Math.min(1e3*Math.pow(2,e-1),he);if(u.error(`Failed to fetch initial token set (attempt ${e}/${A}), retrying in ${s}ms`,{error:t,attempt:e,delay:s}),e===A)throw t;await new Promise(n=>setTimeout(n,s))}return null}function B(e){if(!x||e===null)return Ce;let t=e.access_token,s=(0,z.jwtDecode)(t);return{token:e.access_token,userId:s.sub}}async function ae(e){if(!x||e===null||O)return;O=!0;let t=0,n=await Re(e)*_e*1e3,o=async()=>{try{let i=await oe();w=B(i);for(let[c,d]of Object.entries(k))try{d.send({action:"updateIdentity",payload:{identity:w}})}catch(f){u.warn(`Failed to send identity update to worker process ${c}`,{sendError:f})}t=0,setTimeout(o,n)}catch(i){t++;let c=Math.min(1e3*Math.pow(2,t-1),xe);t<=Q?u.error(`Could not refresh identity (attempt ${t}/${Q}), retrying in ${c}ms`,{error:i,attempt:t,delay:c}):u.error(`Could not refresh identity (attempt ${t}), continuing to retry every ${c}ms`,{error:i,attempt:t,delay:c}),setTimeout(o,c)}};setTimeout(o,n)}async function ce(e){let t=await(0,J.build)({entryPoints:[e],write:!1,bundle:!0,platform:"node",target:"node18",format:"cjs",external:["@opentelemetry/api"]});if(t.errors.length>0)throw u.error(`Could not transpile file at '${e}'`,{errors:t.errors}),new Error(`Could not transpile file at '${e}'`);return t.warnings.length>0&&u.warn(`Transpiled file at '${e}' with warnings`,{warnings:t.warnings}),t.outputFiles[0].text}async function Re(e){let t=e.expires_in;if(!t&&e.expires_at&&(t=Math.floor(e.expires_at-Date.now()/1e3)),t===void 0)throw new Error("Could not determine the time until the access token for external task workers expires");return t}function de(e){return e.replace(/^\.\/+|\([^)]+\)|^\/*|\/*$/g,"").replace(/[\/]{2,}/g,"/")}function be(e){let t,s=[e,(0,p.join)(process.cwd(),"app"),(0,p.join)(process.cwd(),"src","app")];for(let n of s)if(n&&(0,h.existsSync)(n)){t=n;break}if(!t)throw new Error("Could not find external tasks directory");return t}function Ue(e){let t=Date.now(),s=M[e];return!s||t-s.timestamp>Pe?(M[e]={count:1,timestamp:t},!0):s.count>=se?!1:(s.count++,!0)}function Fe(){return r}var D=require("next-auth/jwt"),le=require("next/dist/compiled/@edge-runtime/cookies/index.js"),T=require("next/headers");async function a(){let e=await(0,D.getToken)({req:{cookies:await(0,T.cookies)(),headers:await(0,T.headers)()}});if(e?.expiresAt&&Date.now()>=e.expiresAt*1e3){let s=await fetch(`${process.env.NEXTAUTH_URL}/api/auth/session`,{method:"GET",headers:{"Content-Type":"application/json",cookie:(await(0,T.cookies)()).toString()}}),n=new le.ResponseCookies(s.headers);if(n.getAll().length){let o=!1;try{for(let i of n.getAll())(await(0,T.cookies)()).set(i.name,i.value,{...i})}catch{o=!0}if(e=await(0,D.getToken)({req:{cookies:o?n:await(0,T.cookies)(),headers:await(0,T.headers)()}}),e?.error)throw e.error}}if(!e?.accessToken||!e?.sub)throw new Error("AccessToken or Sub could not be determined!");return{token:e?.accessToken,userId:e?.sub}}var E=require("@5minds/processcube_engine_client");async function N(){try{return a()}catch{return}}async function L(e){let t=await N();return(await r.processInstances.query({processInstanceId:e},{identity:t,includeXml:!0})).processInstances[0]}async function W(e,t={sortSettings:{sortBy:E.DataModels.FlowNodeInstances.FlowNodeInstanceSortableColumns.createdAt,sortDir:"ASC"}}){return(await r.flowNodeInstances.query({processInstanceId:e},{...t,identity:t.identity??await N()})).flowNodeInstances}async function q(e){let t=await N();return(await r.flowNodeInstances.query({triggeredByFlowNodeInstance:e},{identity:t})).flowNodeInstances}async function $(e,t,s){let n=await N();await r.processInstances.retryProcessInstance(e,{flowNodeInstanceId:t,newStartToken:s,identity:n})}async function K(e){let t=await N();await r.processInstances.terminateProcessInstance(e,t)}async function Ae(e={options:{identity:!0}}){switch(e.options.identity){case!0:e.options.identity=await a();break;case!1:e.options.identity=void 0;break;case void 0:e.options.identity=await a();break}return await r.processInstances.query({...e?.query,state:E.DataModels.ProcessInstances.ProcessInstanceState.running},e?.options)}async function Me(e={},t=!0){let{processInstanceId:s}=e,n=typeof t=="boolean"?t==!0?await a():void 0:t;return new Promise(async(o,i)=>{let c=[],d=async f=>{if(s!==void 0&&f.processInstanceId!==s)return;let l=await r.processInstances.query({processInstanceId:f.processInstanceId},{identity:n});for(let _ of c)r.notification.removeSubscription(_,n);return l.totalCount===0?i(new Error(`Process with instance ID "${f.processInstanceId}" does not exist.`)):o(l.processInstances[0])};if(c.push(await r.notification.onProcessEnded(d,{identity:n})),c.push(await r.notification.onProcessError(d,{identity:n})),c.push(await r.notification.onProcessTerminated(d,{identity:n})),s){let f=await r.processInstances.query({processInstanceId:s,state:[E.DataModels.ProcessInstances.ProcessInstanceState.finished,E.DataModels.ProcessInstances.ProcessInstanceState.terminated,E.DataModels.ProcessInstances.ProcessInstanceState.error]},{identity:n});if(f.totalCount>0){for(let y of c)r.notification.removeSubscription(y,n);o(f.processInstances[0])}}})}var m=require("@5minds/processcube_engine_client"),I=require("../common/index.cjs");async function Oe(e={},t=!0){let{correlationId:s,processInstanceId:n,flowNodeId:o}=e,i=typeof t=="boolean"?t==!0?await a():void 0:t;return new Promise(async(c,d)=>{let f=await r.userTasks.onUserTaskWaiting(async l=>{let _=s!==void 0&&l.correlationId!==s,P=l.flowNodeInstanceId===void 0,S=n!==void 0&&l.processInstanceId!==n,g=o!==void 0&&l.flowNodeId!==o;if(_||P||S||g)return;let Y=await pe(l.flowNodeInstanceId,{identity:i});return r.notification.removeSubscription(f,i),Y===null?d(new Error(`UserTask with instance ID "${l.flowNodeInstanceId}" does not exist.`)):c(Y)},{identity:i}),y=await ue({correlationId:s,processInstanceId:n,flowNodeId:o,state:m.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:i});y.userTasks.length>0&&(r.notification.removeSubscription(f,i),c(y.userTasks[0]))})}async function ve(e,t={},s={},n=!0){let o=typeof n=="boolean"?n==!0?await a():void 0:n;await r.userTasks.finishUserTask(e,s,o);let i={state:m.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended,...t},c=await r.userTasks.query(i,{identity:o});return(0,I.mapUserTask)(c.userTasks[0])}async function ue(e,t={identity:!0}){switch(t?.identity){case!0:t.identity=await a();break;case!1:t.identity=void 0;break;case void 0:t.identity=await a();break}let s=await r.userTasks.query(e,t);return(0,I.mapUserTaskList)(s)}async function Be(e={identity:!0}){switch(e?.identity){case!0:e.identity=await a();break;case!1:e.identity=void 0;break;case void 0:e.identity=await a();break}let t=await r.userTasks.query({state:m.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},e);return(0,I.mapUserTaskList)(t)}async function De(e,t={identity:!0}){switch(t?.identity){case!0:t.identity=await a();break;case!1:t.identity=void 0;break;case void 0:t.identity=await a();break}let s=await r.userTasks.query({processInstanceId:e,state:m.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},t);return(0,I.mapUserTaskList)(s)}async function Le(e,t={identity:!0}){switch(t?.identity){case!0:t.identity=await a();break;case!1:t.identity=void 0;break;case void 0:t.identity=await a();break}let s=await r.userTasks.query({flowNodeId:e,state:m.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},t);return(0,I.mapUserTaskList)(s)}async function pe(e,t={identity:!0}){switch(t?.identity){case!0:t.identity=await a();break;case!1:t.identity=void 0;break;case void 0:t.identity=await a();break}let s=await r.userTasks.query({flowNodeInstanceId:e,state:m.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},{...t,limit:1});return s.userTasks.length===0?null:(0,I.mapUserTask)(s.userTasks[0])}async function We(e,t={identity:!0}){switch(t?.identity){case!0:t.identity=await a();break;case!1:t.identity=void 0;break;case void 0:t.identity=await a();break}let s=await r.userTasks.query({correlationId:e,state:m.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},t);return(0,I.mapUserTaskList)(s)}async function qe(e,t){let s=e||await a(),n=await r.userTasks.query({state:m.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:s,...t}),o=n.userTasks.filter(i=>i.actualOwnerId===s.userId);return n.userTasks=o,(0,I.mapUserTaskList)(n)}async function $e(e,t,s){await r.userTasks.reserveUserTaskInstance(e,t,s||e.userId)}async function Ke(e,t){await r.userTasks.cancelUserTaskInstanceReservation(e,t)}async function Xe(e,t){let s=e||await a(),n=await r.userTasks.query({state:m.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:s,...t}),o=n.userTasks.filter(i=>i.assignedUserIds?.includes(s.userId));return n.userTasks=o,(0,I.mapUserTaskList)(n)}var C=require("next/dist/shared/lib/constants");var fe=!1,X=!1;function Ge(e={}){let{applicationSdk:t,...s}=e;return async(n,o)=>{X=X||n===C.PHASE_PRODUCTION_BUILD;let i=n===C.PHASE_DEVELOPMENT_SERVER||n===C.PHASE_PRODUCTION_SERVER;return t?.useExternalTasks&&i&&!fe&&!X&&(fe=!0,await ne(t?.customExternalTasksDirPath)),{...s,experimental:{...s.experimental,serverComponentsExternalPackages:[...s.experimental?.serverComponentsExternalPackages||[],"esbuild"]}}}}var ye=require("next/navigation");function He(e){(0,ye.redirect)(e)}async function je(...e){return await r.processModels.startProcessInstance(...e)}async function G(...e){await r.manualTasks.finishManualTask(...e)}async function H(...e){await r.userTasks.finishUserTask(...e)}async function j(...e){await r.untypedTasks.finishTask(...e)}var Ie=require("@5minds/processcube_engine_client");async function Ye(){try{return a()}catch{return}}var Ve=async(e,t)=>{let s=await Ye();t==="bpmn:UserTask"?await H(e,{},s):t==="bpmn:ManualTask"?await G(e,s):t==="bpmn:Task"?await j(e,s):console.error(`[@5minds/processcube_app_sdk:handlePlay] Unsupported flow node type: ${t}`)},Qe=async e=>{await K(e)},Ze=async(e,t,s)=>{await $(e,t,s)},Je=async e=>L(e),ze=async e=>W(e,{sortSettings:{sortBy:Ie.DataModels.FlowNodeInstances.FlowNodeInstanceSortableColumns.createdAt,sortDir:"DESC"}}),et=async e=>q(e);0&&(module.exports={cancelReservedUserTask,finishManualTask,finishTask,finishUntypedTask,finishUserTask,finishUserTaskAndGetNext,getActiveProcessInstances,getAssignedUserTasksByIdentity,getEngineClient,getFlowNodeInstances,getFlowNodeInstancesByProcessInstanceId,getFlowNodeInstancesTriggeredByFlowNodeInstanceIds,getIdentity,getProcessInstance,getProcessInstanceById,getReservedUserTasksByIdentity,getTriggeredFlowNodeInstances,getUserTasks,getWaitingUserTaskByFlowNodeInstanceId,getWaitingUserTasks,getWaitingUserTasksByCorrelationId,getWaitingUserTasksByFlowNodeId,getWaitingUserTasksByProcessInstanceId,navigateToUrl,reserveUserTask,retryProcess,retryProcessInstance,startProcess,terminateProcess,terminateProcessInstance,waitForProcessEnd,waitForUserTask,withApplicationSdk});
|
|
1
|
+
var F=Object.defineProperty;var Te=Object.getOwnPropertyDescriptor;var ke=Object.getOwnPropertyNames;var ge=Object.prototype.hasOwnProperty;var we=(e,t)=>{for(var s in t)F(e,s,{get:t[s],enumerable:!0})},Ee=(e,t,s,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of ke(t))!ge.call(e,o)&&o!==s&&F(e,o,{get:()=>t[o],enumerable:!(n=Te(t,o))||n.enumerable});return e};var Ce=e=>Ee(F({},"__esModule",{value:!0}),e);var nt={};we(nt,{cancelReservedUserTask:()=>Ge,finishManualTask:()=>H,finishTask:()=>Ze,finishUntypedTask:()=>Y,finishUserTask:()=>j,finishUserTaskAndGetNext:()=>De,getActiveProcessInstances:()=>Oe,getAssignedUserTasksByIdentity:()=>He,getEngineClient:()=>Me,getFlowNodeInstances:()=>tt,getFlowNodeInstancesByProcessInstanceId:()=>q,getFlowNodeInstancesTriggeredByFlowNodeInstanceIds:()=>$,getIdentity:()=>a,getProcessInstance:()=>et,getProcessInstanceById:()=>W,getReservedUserTasksByIdentity:()=>Ke,getTriggeredFlowNodeInstances:()=>st,getUserTasks:()=>pe,getWaitingUserTaskByFlowNodeInstanceId:()=>fe,getWaitingUserTasks:()=>Le,getWaitingUserTasksByCorrelationId:()=>$e,getWaitingUserTasksByFlowNodeId:()=>qe,getWaitingUserTasksByProcessInstanceId:()=>We,navigateToUrl:()=>Ye,reserveUserTask:()=>Xe,retryProcess:()=>ze,retryProcessInstance:()=>K,startProcess:()=>Ve,terminateProcess:()=>Je,terminateProcessInstance:()=>X,waitForProcessEnd:()=>ve,waitForUserTask:()=>Be,withApplicationSdk:()=>je});module.exports=Ce(nt);var Dt=require("only-server"),Lt=require("../common/index.cjs");var Z=require("chokidar"),J=require("esbuild"),z=require("jwt-decode"),ee=require("node:child_process"),h=require("node:fs"),l=require("node:path"),te=require("node:url"),b=require("openid-client"),se=require("@5minds/processcube_engine_sdk");var V=require("@5minds/processcube_engine_client"),A=process.env.PROCESSCUBE_ENGINE_URL??"http://localhost:10560",r=new V.EngineClient(A);var Ae={},_e={token:"ZHVtbXlfdG9rZW4=",userId:"dummy_token"},Pe=.85,R=["external_task.ts","external_task.js"],x=process.env.PROCESSCUBE_AUTHORITY_URL!==void 0,p=new se.Logger("processcube_app_sdk:external_task_adapter"),w={},O={},E,v=!1,ne=6,Se=3e5,he=3e4,M=10,xe=3e4,Q=10,Ne=6e4;async function re(e){if(e&&!(0,h.existsSync)(e))throw new Error(`Invalid customExternalTasksDirPath. The given path '${e}' does not exist`);b.custom.setHttpOptionsDefaults({timeout:1e5});let t=await ae();E=D(t),await ce(t);let s=Ue(e);(0,Z.watch)(s).on("add",async n=>{if(R.includes((0,l.basename)(n)))return B(n,s)}).on("change",async n=>{if(R.includes((0,l.basename)(n)))return Re(n,s)}).on("unlink",async n=>{R.includes((0,l.basename)(n))&&oe(n)}).on("error",n=>p.error(`Watcher error: ${n}`))}async function B(e,t){let s=(0,l.dirname)(e);if((await h.promises.readdir(s)).filter(y=>R.includes(y)).length>1){p.error(`Multiple external task files found in directory ${s}. Stopping all external task workers for this directory.`),w[s]&&oe(e);return}let i=await de(e),c=(0,l.relative)(t,s),d=le(c),f=typeof __dirname<"u"?__dirname:(0,l.dirname)((0,te.fileURLToPath)(Ae.url)),k=(0,l.join)(f,"lib/ExternalTaskWorkerProcess.cjs"),u=(0,ee.fork)(k,{stdio:["pipe","inherit","inherit","ipc"],env:{...process.env,PROCESSCUBE_ENGINE_URL:A}});w[s]=u,u.once("disconnect",()=>{delete w[s]}),u.on("error",y=>{p.error(`External Task Worker process error for ${d}`,{error:y,topic:d,workerDirectory:s})}),u.on("exit",(y,U)=>{if(p.info(`External Task Worker process exited for ${d}`,{code:y,signal:U,topic:d,workerDirectory:s}),delete w[s],y===3||y===4)if(Fe(s)){let P=O[s]?.count??1,S=Math.min(1e3*Math.pow(2,P-1),he);p.info(`Scheduling restart for ${d} in ${S}ms (attempt ${P}/${ne})`,{delay:S,restartCount:P,exitCode:y,topic:d,workerDirectory:s}),setTimeout(async()=>{try{if(x&&!v){p.info("Token refresh cycle is not active, restarting it before worker restart");let g=await ae();E=D(g),await ce(g)}await B(e,t)}catch(g){p.error(`Failed to restart External Task Worker process for ${d}`,{error:g,topic:d,workerDirectory:s})}},S)}else p.error(`External Task Worker process for ${d} reached maximum restart attempts`,{exitCode:y,topic:d,workerDirectory:s})}),u.send({action:"create",payload:{topic:d,identity:E,moduleString:i,workerPath:e}})}async function Re(e,t){let s=(0,l.dirname)(e),n=w[s];if(!n)return B(e,t);let o=await de(e),i=(0,l.relative)(t,s),c=le(i);n.send({action:"restart",payload:{topic:c,identity:E,moduleString:o,workerPath:e}})}function oe(e){let t=(0,l.dirname)(e),s=w[t];s&&s.kill()}async function ie(){if(!x)return null;if(!process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID||!process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET){let n=new Error("Required environment variables PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID and PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET are missing. For help, please refer to our documentation on environment variables at: https://processcube.io/docs/app-sdk/samples/nextjs/external-task-adapter-with-nextjs#authority");throw p.error("Required environment variables PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID and PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET are missing",{err:n}),n}let e=await b.Issuer.discover(process.env.PROCESSCUBE_AUTHORITY_URL);return await new e.Client({client_id:process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID,client_secret:process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET}).grant({grant_type:"client_credentials",scope:"engine_etw"})}async function ae(){if(!x)return null;for(let e=1;e<=M;e++)try{return await ie()}catch(t){let s=Math.min(1e3*Math.pow(2,e-1),xe);if(p.error(`Failed to fetch initial token set (attempt ${e}/${M}), retrying in ${s}ms`,{error:t,attempt:e,delay:s}),e===M)throw t;await new Promise(n=>setTimeout(n,s))}return null}function D(e){if(!x||e===null)return _e;let t=e.access_token,s=(0,z.jwtDecode)(t);return{token:e.access_token,userId:s.sub}}async function ce(e){if(!x||e===null||v)return;v=!0;let t=0,n=await be(e)*Pe*1e3,o=async()=>{try{let i=await ie();E=D(i);for(let[c,d]of Object.entries(w))try{d.send({action:"updateIdentity",payload:{identity:E}})}catch(f){p.warn(`Failed to send identity update to worker process ${c}`,{sendError:f})}t=0,setTimeout(o,n)}catch(i){t++;let c=Math.min(1e3*Math.pow(2,t-1),Ne);t<=Q?p.error(`Could not refresh identity (attempt ${t}/${Q}), retrying in ${c}ms`,{error:i,attempt:t,delay:c}):p.error(`Could not refresh identity (attempt ${t}), continuing to retry every ${c}ms`,{error:i,attempt:t,delay:c}),setTimeout(o,c)}};setTimeout(o,n)}async function de(e){let t=await(0,J.build)({entryPoints:[e],write:!1,bundle:!0,platform:"node",target:"node18",format:"cjs",external:["@opentelemetry/api"]});if(t.errors.length>0)throw p.error(`Could not transpile file at '${e}'`,{errors:t.errors}),new Error(`Could not transpile file at '${e}'`);return t.warnings.length>0&&p.warn(`Transpiled file at '${e}' with warnings`,{warnings:t.warnings}),t.outputFiles[0].text}async function be(e){let t=e.expires_in;if(!t&&e.expires_at&&(t=Math.floor(e.expires_at-Date.now()/1e3)),t===void 0)throw new Error("Could not determine the time until the access token for external task workers expires");return t}function le(e){return e.replace(/^\.\/+|\([^)]+\)|^\/*|\/*$/g,"").replace(/[\/]{2,}/g,"/")}function Ue(e){let t,s=[e,(0,l.join)(process.cwd(),"app"),(0,l.join)(process.cwd(),"src","app")];for(let n of s)if(n&&(0,h.existsSync)(n)){t=n;break}if(!t)throw new Error("Could not find external tasks directory");return t}function Fe(e){let t=Date.now(),s=O[e];return!s||t-s.timestamp>Se?(O[e]={count:1,timestamp:t},!0):s.count>=ne?!1:(s.count++,!0)}function Me(){return r}var L=require("next-auth/jwt"),ue=require("next/dist/compiled/@edge-runtime/cookies/index.js"),T=require("next/headers");async function a(){let e=await(0,L.getToken)({req:{cookies:await(0,T.cookies)(),headers:await(0,T.headers)()}});if(e?.expiresAt&&Date.now()>=e.expiresAt*1e3){let s=await fetch(`${process.env.NEXTAUTH_URL}/api/auth/session`,{method:"GET",headers:{"Content-Type":"application/json",cookie:(await(0,T.cookies)()).toString()}}),n=new ue.ResponseCookies(s.headers);if(n.getAll().length){let o=!1;try{for(let i of n.getAll())(await(0,T.cookies)()).set(i.name,i.value,{...i})}catch{o=!0}if(e=await(0,L.getToken)({req:{cookies:o?n:await(0,T.cookies)(),headers:await(0,T.headers)()}}),e?.error)throw e.error}}if(!e?.accessToken||!e?.sub)throw new Error("AccessToken or Sub could not be determined!");return{token:e?.accessToken,userId:e?.sub}}var C=require("@5minds/processcube_engine_client");async function N(){try{return a()}catch{return}}async function W(e){let t=await N();return(await r.processInstances.query({processInstanceId:e},{identity:t,includeXml:!0})).processInstances[0]}async function q(e,t={sortSettings:{sortBy:C.DataModels.FlowNodeInstances.FlowNodeInstanceSortableColumns.createdAt,sortDir:"ASC"}}){return(await r.flowNodeInstances.query({processInstanceId:e},{...t,identity:t.identity??await N()})).flowNodeInstances}async function $(e){let t=await N();return(await r.flowNodeInstances.query({triggeredByFlowNodeInstance:e},{identity:t})).flowNodeInstances}async function K(e,t,s){let n=await N();await r.processInstances.retryProcessInstance(e,{flowNodeInstanceId:t,newStartToken:s,identity:n})}async function X(e){let t=await N();await r.processInstances.terminateProcessInstance(e,t)}async function Oe(e={options:{identity:!0}}){switch(e.options.identity){case!0:e.options.identity=await a();break;case!1:e.options.identity=void 0;break;case void 0:e.options.identity=await a();break}return await r.processInstances.query({...e?.query,state:C.DataModels.ProcessInstances.ProcessInstanceState.running},e?.options)}async function ve(e={},t=!0){let{processInstanceId:s}=e,n=typeof t=="boolean"?t==!0?await a():void 0:t;return new Promise(async(o,i)=>{let c=[],d=async f=>{if(s!==void 0&&f.processInstanceId!==s)return;let u=await r.processInstances.query({processInstanceId:f.processInstanceId},{identity:n});for(let y of c)r.notification.removeSubscription(y,n);return u.totalCount===0?i(new Error(`Process with instance ID "${f.processInstanceId}" does not exist.`)):o(u.processInstances[0])};if(c.push(await r.notification.onProcessEnded(d,{identity:n})),c.push(await r.notification.onProcessError(d,{identity:n})),c.push(await r.notification.onProcessTerminated(d,{identity:n})),s){let f=await r.processInstances.query({processInstanceId:s,state:[C.DataModels.ProcessInstances.ProcessInstanceState.finished,C.DataModels.ProcessInstances.ProcessInstanceState.terminated,C.DataModels.ProcessInstances.ProcessInstanceState.error]},{identity:n});if(f.totalCount>0){for(let k of c)r.notification.removeSubscription(k,n);o(f.processInstances[0])}}})}var m=require("@5minds/processcube_engine_client"),I=require("../common/index.cjs");async function Be(e={},t=!0){let{correlationId:s,processInstanceId:n,flowNodeId:o}=e,i=typeof t=="boolean"?t==!0?await a():void 0:t;return new Promise(async(c,d)=>{let f=await r.userTasks.onUserTaskWaiting(async u=>{let y=s!==void 0&&u.correlationId!==s,U=u.flowNodeInstanceId===void 0,P=n!==void 0&&u.processInstanceId!==n,S=o!==void 0&&u.flowNodeId!==o;if(y||U||P||S)return;let g=await fe(u.flowNodeInstanceId,{identity:i});return r.notification.removeSubscription(f,i),g===null?d(new Error(`UserTask with instance ID "${u.flowNodeInstanceId}" does not exist.`)):c(g)},{identity:i}),k=await pe({correlationId:s,processInstanceId:n,flowNodeId:o,state:m.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:i});k.userTasks.length>0&&(r.notification.removeSubscription(f,i),c(k.userTasks[0]))})}async function De(e,t={},s={},n=!0){let o=typeof n=="boolean"?n==!0?await a():void 0:n;await r.userTasks.finishUserTask(e,s,o);let i={state:m.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended,...t},c=await r.userTasks.query(i,{identity:o});return(0,I.mapUserTask)(c.userTasks[0])}async function pe(e,t={identity:!0}){switch(t?.identity){case!0:t.identity=await a();break;case!1:t.identity=void 0;break;case void 0:t.identity=await a();break}let s=await r.userTasks.query(e,t);return(0,I.mapUserTaskList)(s)}async function Le(e={identity:!0}){switch(e?.identity){case!0:e.identity=await a();break;case!1:e.identity=void 0;break;case void 0:e.identity=await a();break}let t=await r.userTasks.query({state:m.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},e);return(0,I.mapUserTaskList)(t)}async function We(e,t={identity:!0}){switch(t?.identity){case!0:t.identity=await a();break;case!1:t.identity=void 0;break;case void 0:t.identity=await a();break}let s=await r.userTasks.query({processInstanceId:e,state:m.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},t);return(0,I.mapUserTaskList)(s)}async function qe(e,t={identity:!0}){switch(t?.identity){case!0:t.identity=await a();break;case!1:t.identity=void 0;break;case void 0:t.identity=await a();break}let s=await r.userTasks.query({flowNodeId:e,state:m.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},t);return(0,I.mapUserTaskList)(s)}async function fe(e,t={identity:!0}){switch(t?.identity){case!0:t.identity=await a();break;case!1:t.identity=void 0;break;case void 0:t.identity=await a();break}let s=await r.userTasks.query({flowNodeInstanceId:e,state:m.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},{...t,limit:1});return s.userTasks.length===0?null:(0,I.mapUserTask)(s.userTasks[0])}async function $e(e,t={identity:!0}){switch(t?.identity){case!0:t.identity=await a();break;case!1:t.identity=void 0;break;case void 0:t.identity=await a();break}let s=await r.userTasks.query({correlationId:e,state:m.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},t);return(0,I.mapUserTaskList)(s)}async function Ke(e,t){let s=e||await a(),n=await r.userTasks.query({state:m.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:s,...t}),o=n.userTasks.filter(i=>i.actualOwnerId===s.userId);return n.userTasks=o,(0,I.mapUserTaskList)(n)}async function Xe(e,t,s){await r.userTasks.reserveUserTaskInstance(e,t,s||e.userId)}async function Ge(e,t){await r.userTasks.cancelUserTaskInstanceReservation(e,t)}async function He(e,t){let s=e||await a(),n=await r.userTasks.query({state:m.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:s,...t}),o=n.userTasks.filter(i=>i.assignedUserIds?.includes(s.userId));return n.userTasks=o,(0,I.mapUserTaskList)(n)}var _=require("next/dist/shared/lib/constants");var ye=!1,G=!1;function je(e={}){let{applicationSdk:t,...s}=e;return async(n,o)=>{G=G||n===_.PHASE_PRODUCTION_BUILD;let i=n===_.PHASE_DEVELOPMENT_SERVER||n===_.PHASE_PRODUCTION_SERVER;return t?.useExternalTasks&&i&&!ye&&!G&&(ye=!0,await re(t?.customExternalTasksDirPath)),{...s,experimental:{...s.experimental,serverComponentsExternalPackages:[...s.experimental?.serverComponentsExternalPackages||[],"esbuild"]}}}}var Ie=require("next/navigation");function Ye(e){(0,Ie.redirect)(e)}async function Ve(...e){return await r.processModels.startProcessInstance(...e)}async function H(...e){await r.manualTasks.finishManualTask(...e)}async function j(...e){await r.userTasks.finishUserTask(...e)}async function Y(...e){await r.untypedTasks.finishTask(...e)}var me=require("@5minds/processcube_engine_client");async function Qe(){try{return a()}catch{return}}var Ze=async(e,t)=>{let s=await Qe();t==="bpmn:UserTask"?await j(e,{},s):t==="bpmn:ManualTask"?await H(e,s):t==="bpmn:Task"?await Y(e,s):console.error(`[@5minds/processcube_app_sdk:handlePlay] Unsupported flow node type: ${t}`)},Je=async e=>{await X(e)},ze=async(e,t,s)=>{await K(e,t,s)},et=async e=>W(e),tt=async e=>q(e,{sortSettings:{sortBy:me.DataModels.FlowNodeInstances.FlowNodeInstanceSortableColumns.createdAt,sortDir:"DESC"}}),st=async e=>$(e);0&&(module.exports={cancelReservedUserTask,finishManualTask,finishTask,finishUntypedTask,finishUserTask,finishUserTaskAndGetNext,getActiveProcessInstances,getAssignedUserTasksByIdentity,getEngineClient,getFlowNodeInstances,getFlowNodeInstancesByProcessInstanceId,getFlowNodeInstancesTriggeredByFlowNodeInstanceIds,getIdentity,getProcessInstance,getProcessInstanceById,getReservedUserTasksByIdentity,getTriggeredFlowNodeInstances,getUserTasks,getWaitingUserTaskByFlowNodeInstanceId,getWaitingUserTasks,getWaitingUserTasksByCorrelationId,getWaitingUserTasksByFlowNodeId,getWaitingUserTasksByProcessInstanceId,navigateToUrl,reserveUserTask,retryProcess,retryProcessInstance,startProcess,terminateProcess,terminateProcessInstance,waitForProcessEnd,waitForUserTask,withApplicationSdk});
|
package/build/server/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import"only-server";import"../common/index.mjs";import{stat as Fe}from"fs";import{stat as Ae,readdir as ve}from"fs/promises.js";import{EventEmitter as Le}from"events";import*as p from"path";import{stat as ne,lstat as ut,readdir as re,realpath as ie}from"node:fs/promises.js";import{Readable as oe}from"node:stream";import{resolve as ht,relative as ae,join as ce,sep as de}from"node:path";var I={FILE_TYPE:"files",DIR_TYPE:"directories",FILE_DIR_TYPE:"files_directories",EVERYTHING_TYPE:"all"},z={root:".",fileFilter:s=>!0,directoryFilter:s=>!0,type:I.FILE_TYPE,lstat:!1,depth:2147483648,alwaysStat:!1,highWaterMark:4096};Object.freeze(z);var wt="READDIRP_RECURSIVE_ERROR",le=new Set(["ENOENT","EPERM","EACCES","ELOOP",wt]),pt=[I.DIR_TYPE,I.EVERYTHING_TYPE,I.FILE_DIR_TYPE,I.FILE_TYPE],fe=new Set([I.DIR_TYPE,I.EVERYTHING_TYPE,I.FILE_DIR_TYPE]),ue=new Set([I.EVERYTHING_TYPE,I.FILE_DIR_TYPE,I.FILE_TYPE]),he=s=>le.has(s.code),pe=process.platform==="win32",mt=s=>!0,yt=s=>{if(s===void 0)return mt;if(typeof s=="function")return s;if(typeof s=="string"){let t=s.trim();return e=>e.basename===t}if(Array.isArray(s)){let t=s.map(e=>e.trim());return e=>t.some(n=>e.basename===n)}return mt},K=class extends oe{constructor(t={}){super({objectMode:!0,autoDestroy:!0,highWaterMark:t.highWaterMark});let e={...z,...t},{root:n,type:r}=e;this._fileFilter=yt(e.fileFilter),this._directoryFilter=yt(e.directoryFilter);let i=e.lstat?ut:ne;pe?this._stat=a=>i(a,{bigint:!0}):this._stat=i,this._maxDepth=e.depth??z.depth,this._wantsDir=r?fe.has(r):!1,this._wantsFile=r?ue.has(r):!1,this._wantsEverything=r===I.EVERYTHING_TYPE,this._root=ht(n),this._isDirent=!e.alwaysStat,this._statsProp=this._isDirent?"dirent":"stats",this._rdOptions={encoding:"utf8",withFileTypes:this._isDirent},this.parents=[this._exploreDir(n,1)],this.reading=!1,this.parent=void 0}async _read(t){if(!this.reading){this.reading=!0;try{for(;!this.destroyed&&t>0;){let e=this.parent,n=e&&e.files;if(n&&n.length>0){let{path:r,depth:i}=e,a=n.splice(0,t).map(c=>this._formatEntry(c,r)),o=await Promise.all(a);for(let c of o){if(!c)continue;if(this.destroyed)return;let l=await this._getEntryType(c);l==="directory"&&this._directoryFilter(c)?(i<=this._maxDepth&&this.parents.push(this._exploreDir(c.fullPath,i+1)),this._wantsDir&&(this.push(c),t--)):(l==="file"||this._includeAsFile(c))&&this._fileFilter(c)&&this._wantsFile&&(this.push(c),t--)}}else{let r=this.parents.pop();if(!r){this.push(null);break}if(this.parent=await r,this.destroyed)return}}}catch(e){this.destroy(e)}finally{this.reading=!1}}}async _exploreDir(t,e){let n;try{n=await re(t,this._rdOptions)}catch(r){this._onError(r)}return{files:n,depth:e,path:t}}async _formatEntry(t,e){let n,r=this._isDirent?t.name:t;try{let i=ht(ce(e,r));n={path:ae(this._root,i),fullPath:i,basename:r},n[this._statsProp]=this._isDirent?t:await this._stat(i)}catch(i){this._onError(i);return}return n}_onError(t){he(t)&&!this.destroyed?this.emit("warn",t):this.destroy(t)}async _getEntryType(t){if(!t&&this._statsProp in t)return"";let e=t[this._statsProp];if(e.isFile())return"file";if(e.isDirectory())return"directory";if(e&&e.isSymbolicLink()){let n=t.fullPath;try{let r=await ie(n),i=await ut(r);if(i.isFile())return"file";if(i.isDirectory()){let a=r.length;if(n.startsWith(r)&&n.substr(a,1)===de){let o=new Error(`Circular symlink detected: "${n}" points to "${r}"`);return o.code=wt,this._onError(o)}return"directory"}}catch(r){return this._onError(r),""}}}_includeAsFile(t){let e=t&&t[this._statsProp];return e&&this._wantsEverything&&!e.isDirectory()}};function _t(s,t={}){let e=t.entryType||t.type;if(e==="both"&&(e=I.FILE_DIR_TYPE),e&&(t.type=e),s){if(typeof s!="string")throw new TypeError("readdirp: root argument must be a string. Usage: readdirp(root, options)");if(e&&!pt.includes(e))throw new Error(`readdirp: Invalid type passed. Use one of ${pt.join(", ")}`)}else throw new Error("readdirp: root argument is required. Usage: readdirp(root, options)");return t.root=s,new K(t)}import{watchFile as me,unwatchFile as gt,watch as ye}from"fs";import{open as we,stat as It,lstat as _e,realpath as $}from"fs/promises.js";import*as y from"path";import{type as ge}from"os";var Ee="data",X="end",Tt="close",M=()=>{};var B=process.platform,V=B==="win32",Ie=B==="darwin",Te=B==="linux",Pe=B==="freebsd",Pt=ge()==="OS400",_={ALL:"all",READY:"ready",ADD:"add",CHANGE:"change",ADD_DIR:"addDir",UNLINK:"unlink",UNLINK_DIR:"unlinkDir",RAW:"raw",ERROR:"error"},T=_,ke="watch",Re={lstat:_e,stat:It},R="listeners",L="errHandlers",S="rawEmitters",xe=[R,L,S],be=new Set(["3dm","3ds","3g2","3gp","7z","a","aac","adp","afdesign","afphoto","afpub","ai","aif","aiff","alz","ape","apk","appimage","ar","arj","asf","au","avi","bak","baml","bh","bin","bk","bmp","btif","bz2","bzip2","cab","caf","cgm","class","cmx","cpio","cr2","cur","dat","dcm","deb","dex","djvu","dll","dmg","dng","doc","docm","docx","dot","dotm","dra","DS_Store","dsk","dts","dtshd","dvb","dwg","dxf","ecelp4800","ecelp7470","ecelp9600","egg","eol","eot","epub","exe","f4v","fbs","fh","fla","flac","flatpak","fli","flv","fpx","fst","fvt","g3","gh","gif","graffle","gz","gzip","h261","h263","h264","icns","ico","ief","img","ipa","iso","jar","jpeg","jpg","jpgv","jpm","jxr","key","ktx","lha","lib","lvp","lz","lzh","lzma","lzo","m3u","m4a","m4v","mar","mdi","mht","mid","midi","mj2","mka","mkv","mmr","mng","mobi","mov","movie","mp3","mp4","mp4a","mpeg","mpg","mpga","mxu","nef","npx","numbers","nupkg","o","odp","ods","odt","oga","ogg","ogv","otf","ott","pages","pbm","pcx","pdb","pdf","pea","pgm","pic","png","pnm","pot","potm","potx","ppa","ppam","ppm","pps","ppsm","ppsx","ppt","pptm","pptx","psd","pya","pyc","pyo","pyv","qt","rar","ras","raw","resources","rgb","rip","rlc","rmf","rmvb","rpm","rtf","rz","s3m","s7z","scpt","sgi","shar","snap","sil","sketch","slk","smv","snk","so","stl","suo","sub","swf","tar","tbz","tbz2","tga","tgz","thmx","tif","tiff","tlz","ttc","ttf","txz","udf","uvh","uvi","uvm","uvp","uvs","uvu","viv","vob","war","wav","wax","wbmp","wdp","weba","webm","webp","whl","wim","wm","wma","wmv","wmx","woff","woff2","wrm","wvx","xbm","xif","xla","xlam","xls","xlsb","xlsm","xlsx","xlt","xltm","xltx","xm","xmind","xpi","xpm","xwd","xz","z","zip","zipx"]),Se=s=>be.has(y.extname(s).slice(1).toLowerCase()),G=(s,t)=>{s instanceof Set?s.forEach(t):t(s)},N=(s,t,e)=>{let n=s[t];n instanceof Set||(s[t]=n=new Set([n])),n.add(e)},Ce=s=>t=>{let e=s[t];e instanceof Set?e.clear():delete s[t]},D=(s,t,e)=>{let n=s[t];n instanceof Set?n.delete(e):n===e&&delete s[t]},kt=s=>s instanceof Set?s.size===0:!s,O=new Map;function Et(s,t,e,n,r){let i=(a,o)=>{e(s),r(a,o,{watchedPath:s}),o&&s!==o&&U(y.resolve(s,o),R,y.join(s,o))};try{return ye(s,{persistent:t.persistent},i)}catch(a){n(a);return}}var U=(s,t,e,n,r)=>{let i=O.get(s);i&&G(i[t],a=>{a(e,n,r)})},Ne=(s,t,e,n)=>{let{listener:r,errHandler:i,rawEmitter:a}=n,o=O.get(t),c;if(!e.persistent)return c=Et(s,e,r,i,a),c?c.close.bind(c):void 0;if(o)N(o,R,r),N(o,L,i),N(o,S,a);else{if(c=Et(s,e,U.bind(null,t,R),i,U.bind(null,t,S)),!c)return;c.on(T.ERROR,async l=>{let d=U.bind(null,t,L);if(o&&(o.watcherUnusable=!0),V&&l.code==="EPERM")try{await(await we(s,"r")).close(),d(l)}catch{}else d(l)}),o={listeners:r,errHandlers:i,rawEmitters:a,watcher:c},O.set(t,o)}return()=>{D(o,R,r),D(o,L,i),D(o,S,a),kt(o.listeners)&&(o.watcher.close(),O.delete(t),xe.forEach(Ce(o)),o.watcher=void 0,Object.freeze(o))}},q=new Map,De=(s,t,e,n)=>{let{listener:r,rawEmitter:i}=n,a=q.get(t),o=a&&a.options;return o&&(o.persistent<e.persistent||o.interval>e.interval)&&(gt(t),a=void 0),a?(N(a,R,r),N(a,S,i)):(a={listeners:r,rawEmitters:i,options:e,watcher:me(t,e,(c,l)=>{G(a.rawEmitters,f=>{f(T.CHANGE,t,{curr:c,prev:l})});let d=c.mtimeMs;(c.size!==l.size||d>l.mtimeMs||d===0)&&G(a.listeners,f=>f(s,c))})},q.set(t,a)),()=>{D(a,R,r),D(a,S,i),kt(a.listeners)&&(q.delete(t),gt(t),a.options=a.watcher=void 0,Object.freeze(a))}},W=class{constructor(t){this.fsw=t,this._boundHandleError=e=>t._handleError(e)}_watchWithNodeFs(t,e){let n=this.fsw.options,r=y.dirname(t),i=y.basename(t);this.fsw._getWatchedDir(r).add(i);let o=y.resolve(t),c={persistent:n.persistent};e||(e=M);let l;if(n.usePolling){let d=n.interval!==n.binaryInterval;c.interval=d&&Se(i)?n.binaryInterval:n.interval,l=De(t,o,c,{listener:e,rawEmitter:this.fsw._emitRaw})}else l=Ne(t,o,c,{listener:e,errHandler:this._boundHandleError,rawEmitter:this.fsw._emitRaw});return l}_handleFile(t,e,n){if(this.fsw.closed)return;let r=y.dirname(t),i=y.basename(t),a=this.fsw._getWatchedDir(r),o=e;if(a.has(i))return;let c=async(d,f)=>{if(this.fsw._throttle(ke,t,5)){if(!f||f.mtimeMs===0)try{let u=await It(t);if(this.fsw.closed)return;let m=u.atimeMs,g=u.mtimeMs;if((!m||m<=g||g!==o.mtimeMs)&&this.fsw._emit(T.CHANGE,t,u),(Ie||Te||Pe)&&o.ino!==u.ino){this.fsw._closeFile(d),o=u;let k=this._watchWithNodeFs(t,c);k&&this.fsw._addPathCloser(d,k)}else o=u}catch{this.fsw._remove(r,i)}else if(a.has(i)){let u=f.atimeMs,m=f.mtimeMs;(!u||u<=m||m!==o.mtimeMs)&&this.fsw._emit(T.CHANGE,t,f),o=f}}},l=this._watchWithNodeFs(t,c);if(!(n&&this.fsw.options.ignoreInitial)&&this.fsw._isntIgnored(t)){if(!this.fsw._throttle(T.ADD,t,0))return;this.fsw._emit(T.ADD,t,e)}return l}async _handleSymlink(t,e,n,r){if(this.fsw.closed)return;let i=t.fullPath,a=this.fsw._getWatchedDir(e);if(!this.fsw.options.followSymlinks){this.fsw._incrReadyCount();let o;try{o=await $(n)}catch{return this.fsw._emitReady(),!0}return this.fsw.closed?void 0:(a.has(r)?this.fsw._symlinkPaths.get(i)!==o&&(this.fsw._symlinkPaths.set(i,o),this.fsw._emit(T.CHANGE,n,t.stats)):(a.add(r),this.fsw._symlinkPaths.set(i,o),this.fsw._emit(T.ADD,n,t.stats)),this.fsw._emitReady(),!0)}if(this.fsw._symlinkPaths.has(i))return!0;this.fsw._symlinkPaths.set(i,!0)}_handleRead(t,e,n,r,i,a,o){if(t=y.join(t,""),o=this.fsw._throttle("readdir",t,1e3),!o)return;let c=this.fsw._getWatchedDir(n.path),l=new Set,d=this.fsw._readdirp(t,{fileFilter:f=>n.filterPath(f),directoryFilter:f=>n.filterDir(f)});if(d)return d.on(Ee,async f=>{if(this.fsw.closed){d=void 0;return}let u=f.path,m=y.join(t,u);if(l.add(u),!(f.stats.isSymbolicLink()&&await this._handleSymlink(f,t,m,u))){if(this.fsw.closed){d=void 0;return}(u===r||!r&&!c.has(u))&&(this.fsw._incrReadyCount(),m=y.join(i,y.relative(i,m)),this._addToNodeFs(m,e,n,a+1))}}).on(T.ERROR,this._boundHandleError),new Promise((f,u)=>{if(!d)return u();d.once(X,()=>{if(this.fsw.closed){d=void 0;return}let m=o?o.clear():!1;f(void 0),c.getChildren().filter(g=>g!==t&&!l.has(g)).forEach(g=>{this.fsw._remove(t,g)}),d=void 0,m&&this._handleRead(t,!1,n,r,i,a,o)})})}async _handleDir(t,e,n,r,i,a,o){let c=this.fsw._getWatchedDir(y.dirname(t)),l=c.has(y.basename(t));!(n&&this.fsw.options.ignoreInitial)&&!i&&!l&&this.fsw._emit(T.ADD_DIR,t,e),c.add(y.basename(t)),this.fsw._getWatchedDir(t);let d,f,u=this.fsw.options.depth;if((u==null||r<=u)&&!this.fsw._symlinkPaths.has(o)){if(!i&&(await this._handleRead(t,n,a,i,t,r,d),this.fsw.closed))return;f=this._watchWithNodeFs(t,(m,g)=>{g&&g.mtimeMs===0||this._handleRead(m,!1,a,i,t,r,d)})}return f}async _addToNodeFs(t,e,n,r,i){let a=this.fsw._emitReady;if(this.fsw._isIgnored(t)||this.fsw.closed)return a(),!1;let o=this.fsw._getWatchHelpers(t);n&&(o.filterPath=c=>n.filterPath(c),o.filterDir=c=>n.filterDir(c));try{let c=await Re[o.statMethod](o.watchPath);if(this.fsw.closed)return;if(this.fsw._isIgnored(o.watchPath,c))return a(),!1;let l=this.fsw.options.followSymlinks,d;if(c.isDirectory()){let f=y.resolve(t),u=l?await $(t):t;if(this.fsw.closed||(d=await this._handleDir(o.watchPath,c,e,r,i,o,u),this.fsw.closed))return;f!==u&&u!==void 0&&this.fsw._symlinkPaths.set(f,u)}else if(c.isSymbolicLink()){let f=l?await $(t):t;if(this.fsw.closed)return;let u=y.dirname(o.watchPath);if(this.fsw._getWatchedDir(u).add(o.watchPath),this.fsw._emit(T.ADD,o.watchPath,c),d=await this._handleDir(u,c,e,r,t,o,f),this.fsw.closed)return;f!==void 0&&this.fsw._symlinkPaths.set(y.resolve(t),f)}else d=this._handleFile(o.watchPath,c,e);return a(),d&&this.fsw._addPathCloser(t,d),!1}catch(c){if(this.fsw._handleError(c))return a(),t}}};var Q="/",Oe="//",Nt=".",Ue="..",We="string",Me=/\\/g,Rt=/\/\//,Be=/\..*\.(sw[px])$|~$|\.subl.*\.tmp/,He=/^\.[/\\]/;function H(s){return Array.isArray(s)?s:[s]}var Z=s=>typeof s=="object"&&s!==null&&!(s instanceof RegExp);function je(s){return typeof s=="function"?s:typeof s=="string"?t=>s===t:s instanceof RegExp?t=>s.test(t):typeof s=="object"&&s!==null?t=>{if(s.path===t)return!0;if(s.recursive){let e=p.relative(s.path,t);return e?!e.startsWith("..")&&!p.isAbsolute(e):!1}return!1}:()=>!1}function Ye(s){if(typeof s!="string")throw new Error("string expected");s=p.normalize(s),s=s.replace(/\\/g,"/");let t=!1;s.startsWith("//")&&(t=!0);let e=/\/\//;for(;s.match(e);)s=s.replace(e,"/");return t&&(s="/"+s),s}function xt(s,t,e){let n=Ye(t);for(let r=0;r<s.length;r++){let i=s[r];if(i(n,e))return!0}return!1}function ze(s,t){if(s==null)throw new TypeError("anymatch: specify first argument");let n=H(s).map(r=>je(r));return t==null?(r,i)=>xt(n,r,i):xt(n,t)}var bt=s=>{let t=H(s).flat();if(!t.every(e=>typeof e===We))throw new TypeError(`Non-string provided as watch path: ${t}`);return t.map(Dt)},St=s=>{let t=s.replace(Me,Q),e=!1;for(t.startsWith(Oe)&&(e=!0);t.match(Rt);)t=t.replace(Rt,Q);return e&&(t=Q+t),t},Dt=s=>St(p.normalize(St(s))),Ct=(s="")=>t=>typeof t=="string"?Dt(p.isAbsolute(t)?t:p.join(s,t)):t,Ke=(s,t)=>p.isAbsolute(s)?s:p.join(t,s),$e=Object.freeze(new Set),J=class{constructor(t,e){this.path=t,this._removeWatcher=e,this.items=new Set}add(t){let{items:e}=this;e&&t!==Nt&&t!==Ue&&e.add(t)}async remove(t){let{items:e}=this;if(!e||(e.delete(t),e.size>0))return;let n=this.path;try{await ve(n)}catch{this._removeWatcher&&this._removeWatcher(p.dirname(n),p.basename(n))}}has(t){let{items:e}=this;if(e)return e.has(t)}getChildren(){let{items:t}=this;return t?[...t.values()]:[]}dispose(){this.items.clear(),this.path="",this._removeWatcher=M,this.items=$e,Object.freeze(this)}},qe="stat",Ge="lstat",tt=class{constructor(t,e,n){this.fsw=n;let r=t;this.path=t=t.replace(He,""),this.watchPath=r,this.fullWatchPath=p.resolve(r),this.dirParts=[],this.dirParts.forEach(i=>{i.length>1&&i.pop()}),this.followSymlinks=e,this.statMethod=e?qe:Ge}entryPath(t){return p.join(this.watchPath,p.relative(this.watchPath,t.fullPath))}filterPath(t){let{stats:e}=t;if(e&&e.isSymbolicLink())return this.filterDir(t);let n=this.entryPath(t);return this.fsw._isntIgnored(n,e)&&this.fsw._hasReadPermissions(e)}filterDir(t){return this.fsw._isntIgnored(this.entryPath(t),t.stats)}},et=class extends Le{constructor(t={}){super(),this.closed=!1,this._closers=new Map,this._ignoredPaths=new Set,this._throttled=new Map,this._streams=new Set,this._symlinkPaths=new Map,this._watched=new Map,this._pendingWrites=new Map,this._pendingUnlinks=new Map,this._readyCount=0,this._readyEmitted=!1;let e=t.awaitWriteFinish,n={stabilityThreshold:2e3,pollInterval:100},r={persistent:!0,ignoreInitial:!1,ignorePermissionErrors:!1,interval:100,binaryInterval:300,followSymlinks:!0,usePolling:!1,atomic:!0,...t,ignored:t.ignored?H(t.ignored):H([]),awaitWriteFinish:e===!0?n:typeof e=="object"?{...n,...e}:!1};Pt&&(r.usePolling=!0),r.atomic===void 0&&(r.atomic=!r.usePolling);let i=process.env.CHOKIDAR_USEPOLLING;if(i!==void 0){let c=i.toLowerCase();c==="false"||c==="0"?r.usePolling=!1:c==="true"||c==="1"?r.usePolling=!0:r.usePolling=!!c}let a=process.env.CHOKIDAR_INTERVAL;a&&(r.interval=Number.parseInt(a,10));let o=0;this._emitReady=()=>{o++,o>=this._readyCount&&(this._emitReady=M,this._readyEmitted=!0,process.nextTick(()=>this.emit(_.READY)))},this._emitRaw=(...c)=>this.emit(_.RAW,...c),this._boundRemove=this._remove.bind(this),this.options=r,this._nodeFsHandler=new W(this),Object.freeze(r)}_addIgnoredPath(t){if(Z(t)){for(let e of this._ignoredPaths)if(Z(e)&&e.path===t.path&&e.recursive===t.recursive)return}this._ignoredPaths.add(t)}_removeIgnoredPath(t){if(this._ignoredPaths.delete(t),typeof t=="string")for(let e of this._ignoredPaths)Z(e)&&e.path===t&&this._ignoredPaths.delete(e)}add(t,e,n){let{cwd:r}=this.options;this.closed=!1,this._closePromise=void 0;let i=bt(t);return r&&(i=i.map(a=>Ke(a,r))),i.forEach(a=>{this._removeIgnoredPath(a)}),this._userIgnored=void 0,this._readyCount||(this._readyCount=0),this._readyCount+=i.length,Promise.all(i.map(async a=>{let o=await this._nodeFsHandler._addToNodeFs(a,!n,void 0,0,e);return o&&this._emitReady(),o})).then(a=>{this.closed||a.forEach(o=>{o&&this.add(p.dirname(o),p.basename(e||o))})}),this}unwatch(t){if(this.closed)return this;let e=bt(t),{cwd:n}=this.options;return e.forEach(r=>{!p.isAbsolute(r)&&!this._closers.has(r)&&(n&&(r=p.join(n,r)),r=p.resolve(r)),this._closePath(r),this._addIgnoredPath(r),this._watched.has(r)&&this._addIgnoredPath({path:r,recursive:!0}),this._userIgnored=void 0}),this}close(){if(this._closePromise)return this._closePromise;this.closed=!0,this.removeAllListeners();let t=[];return this._closers.forEach(e=>e.forEach(n=>{let r=n();r instanceof Promise&&t.push(r)})),this._streams.forEach(e=>e.destroy()),this._userIgnored=void 0,this._readyCount=0,this._readyEmitted=!1,this._watched.forEach(e=>e.dispose()),this._closers.clear(),this._watched.clear(),this._streams.clear(),this._symlinkPaths.clear(),this._throttled.clear(),this._closePromise=t.length?Promise.all(t).then(()=>{}):Promise.resolve(),this._closePromise}getWatched(){let t={};return this._watched.forEach((e,n)=>{let i=(this.options.cwd?p.relative(this.options.cwd,n):n)||Nt;t[i]=e.getChildren().sort()}),t}emitWithAll(t,e){this.emit(t,...e),t!==_.ERROR&&this.emit(_.ALL,t,...e)}async _emit(t,e,n){if(this.closed)return;let r=this.options;V&&(e=p.normalize(e)),r.cwd&&(e=p.relative(r.cwd,e));let i=[e];n!=null&&i.push(n);let a=r.awaitWriteFinish,o;if(a&&(o=this._pendingWrites.get(e)))return o.lastChange=new Date,this;if(r.atomic){if(t===_.UNLINK)return this._pendingUnlinks.set(e,[t,...i]),setTimeout(()=>{this._pendingUnlinks.forEach((c,l)=>{this.emit(...c),this.emit(_.ALL,...c),this._pendingUnlinks.delete(l)})},typeof r.atomic=="number"?r.atomic:100),this;t===_.ADD&&this._pendingUnlinks.has(e)&&(t=_.CHANGE,this._pendingUnlinks.delete(e))}if(a&&(t===_.ADD||t===_.CHANGE)&&this._readyEmitted){let c=(l,d)=>{l?(t=_.ERROR,i[0]=l,this.emitWithAll(t,i)):d&&(i.length>1?i[1]=d:i.push(d),this.emitWithAll(t,i))};return this._awaitWriteFinish(e,a.stabilityThreshold,t,c),this}if(t===_.CHANGE&&!this._throttle(_.CHANGE,e,50))return this;if(r.alwaysStat&&n===void 0&&(t===_.ADD||t===_.ADD_DIR||t===_.CHANGE)){let c=r.cwd?p.join(r.cwd,e):e,l;try{l=await Ae(c)}catch{}if(!l||this.closed)return;i.push(l)}return this.emitWithAll(t,i),this}_handleError(t){let e=t&&t.code;return t&&e!=="ENOENT"&&e!=="ENOTDIR"&&(!this.options.ignorePermissionErrors||e!=="EPERM"&&e!=="EACCES")&&this.emit(_.ERROR,t),t||this.closed}_throttle(t,e,n){this._throttled.has(t)||this._throttled.set(t,new Map);let r=this._throttled.get(t);if(!r)throw new Error("invalid throttle");let i=r.get(e);if(i)return i.count++,!1;let a,o=()=>{let l=r.get(e),d=l?l.count:0;return r.delete(e),clearTimeout(a),l&&clearTimeout(l.timeoutObject),d};a=setTimeout(o,n);let c={timeoutObject:a,clear:o,count:0};return r.set(e,c),c}_incrReadyCount(){return this._readyCount++}_awaitWriteFinish(t,e,n,r){let i=this.options.awaitWriteFinish;if(typeof i!="object")return;let a=i.pollInterval,o,c=t;this.options.cwd&&!p.isAbsolute(t)&&(c=p.join(this.options.cwd,t));let l=new Date,d=this._pendingWrites;function f(u){Fe(c,(m,g)=>{if(m||!d.has(t)){m&&m.code!=="ENOENT"&&r(m);return}let k=Number(new Date);u&&g.size!==u.size&&(d.get(t).lastChange=k);let se=d.get(t);k-se.lastChange>=e?(d.delete(t),r(void 0,g)):o=setTimeout(f,a,g)})}d.has(t)||(d.set(t,{lastChange:l,cancelWait:()=>(d.delete(t),clearTimeout(o),n)}),o=setTimeout(f,a))}_isIgnored(t,e){if(this.options.atomic&&Be.test(t))return!0;if(!this._userIgnored){let{cwd:n}=this.options,i=(this.options.ignored||[]).map(Ct(n)),o=[...[...this._ignoredPaths].map(Ct(n)),...i];this._userIgnored=ze(o,void 0)}return this._userIgnored(t,e)}_isntIgnored(t,e){return!this._isIgnored(t,e)}_getWatchHelpers(t){return new tt(t,this.options.followSymlinks,this)}_getWatchedDir(t){let e=p.resolve(t);return this._watched.has(e)||this._watched.set(e,new J(e,this._boundRemove)),this._watched.get(e)}_hasReadPermissions(t){return this.options.ignorePermissionErrors?!0:!!(Number(t.mode)&256)}_remove(t,e,n){let r=p.join(t,e),i=p.resolve(r);if(n=n??(this._watched.has(r)||this._watched.has(i)),!this._throttle("remove",r,100))return;!n&&this._watched.size===1&&this.add(t,e,!0),this._getWatchedDir(r).getChildren().forEach(u=>this._remove(r,u));let c=this._getWatchedDir(t),l=c.has(e);c.remove(e),this._symlinkPaths.has(i)&&this._symlinkPaths.delete(i);let d=r;if(this.options.cwd&&(d=p.relative(this.options.cwd,r)),this.options.awaitWriteFinish&&this._pendingWrites.has(d)&&this._pendingWrites.get(d).cancelWait()===_.ADD)return;this._watched.delete(r),this._watched.delete(i);let f=n?_.UNLINK_DIR:_.UNLINK;l&&!this._isIgnored(r)&&this._emit(f,r),this._closePath(r)}_closePath(t){this._closeFile(t);let e=p.dirname(t);this._getWatchedDir(e).remove(p.basename(t))}_closeFile(t){let e=this._closers.get(t);e&&(e.forEach(n=>n()),this._closers.delete(t))}_addPathCloser(t,e){if(!e)return;let n=this._closers.get(t);n||(n=[],this._closers.set(t,n)),n.push(e)}_readdirp(t,e){if(this.closed)return;let n={type:_.ALL,alwaysStat:!0,lstat:!0,...e,depth:0},r=_t(t,n);return this._streams.add(r),r.once(Tt,()=>{r=void 0}),r.once(X,()=>{r&&(this._streams.delete(r),r=void 0)}),r}};function Ft(s,t={}){let e=new et(t);return e.add(s),e}import{build as Ve}from"esbuild";import{jwtDecode as Qe}from"jwt-decode";import{fork as Ze}from"node:child_process";import{existsSync as vt,promises as Je}from"node:fs";import{basename as nt,dirname as ct,join as it,relative as Lt}from"node:path";import{Issuer as ts,custom as es}from"openid-client";import{Logger as ss}from"@5minds/processcube_engine_sdk";import{EngineClient as Xe}from"@5minds/processcube_engine_client";var st=process.env.PROCESSCUBE_ENGINE_URL??"http://localhost:10560",h=new Xe(st);var ns={token:"ZHVtbXlfdG9rZW4=",userId:"dummy_token"},rs=.85,j=["external_task.ts","external_task.js"],F=process.env.PROCESSCUBE_AUTHORITY_URL!==void 0,E=new ss("processcube_app_sdk:external_task_adapter"),x={},ot={},C,at=!1,Ot=6,is=3e5,os=3e4,rt=10,as=3e4,At=10,cs=6e4;async function Ut(s){if(s&&!vt(s))throw new Error(`Invalid customExternalTasksDirPath. The given path '${s}' does not exist`);es.setHttpOptionsDefaults({timeout:1e5});let t=await Bt();C=lt(t),await Ht(t);let e=fs(s);Ft(e).on("add",async n=>{if(j.includes(nt(n)))return dt(n,e)}).on("change",async n=>{if(j.includes(nt(n)))return ds(n,e)}).on("unlink",async n=>{j.includes(nt(n))&&Wt(n)}).on("error",n=>E.error(`Watcher error: ${n}`))}async function dt(s,t){let e=ct(s);if((await Je.readdir(e)).filter(d=>j.includes(d)).length>1){E.error(`Multiple external task files found in directory ${e}. Stopping all external task workers for this directory.`),x[e]&&Wt(s);return}let i=await jt(s),a=Lt(t,e),o=Yt(a),c=it(__dirname,"lib/ExternalTaskWorkerProcess.cjs"),l=Ze(c,{stdio:["pipe","inherit","inherit","ipc"],env:{...process.env,PROCESSCUBE_ENGINE_URL:st}});x[e]=l,l.once("disconnect",()=>{delete x[e]}),l.on("error",d=>{E.error(`External Task Worker process error for ${o}`,{error:d,topic:o,workerDirectory:e})}),l.on("exit",(d,f)=>{if(E.info(`External Task Worker process exited for ${o}`,{code:d,signal:f,topic:o,workerDirectory:e}),delete x[e],d===3||d===4)if(us(e)){let u=ot[e]?.count??1,m=Math.min(1e3*Math.pow(2,u-1),os);E.info(`Scheduling restart for ${o} in ${m}ms (attempt ${u}/${Ot})`,{delay:m,restartCount:u,exitCode:d,topic:o,workerDirectory:e}),setTimeout(async()=>{try{if(F&&!at){E.info("Token refresh cycle is not active, restarting it before worker restart");let g=await Bt();C=lt(g),await Ht(g)}await dt(s,t)}catch(g){E.error(`Failed to restart External Task Worker process for ${o}`,{error:g,topic:o,workerDirectory:e})}},m)}else E.error(`External Task Worker process for ${o} reached maximum restart attempts`,{exitCode:d,topic:o,workerDirectory:e})}),l.send({action:"create",payload:{topic:o,identity:C,moduleString:i,workerPath:s}})}async function ds(s,t){let e=ct(s),n=x[e];if(!n)return dt(s,t);let r=await jt(s),i=Lt(t,e),a=Yt(i);n.send({action:"restart",payload:{topic:a,identity:C,moduleString:r,workerPath:s}})}function Wt(s){let t=ct(s),e=x[t];e&&e.kill()}async function Mt(){if(!F)return null;if(!process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID||!process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET){let n=new Error("Required environment variables PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID and PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET are missing. For help, please refer to our documentation on environment variables at: https://processcube.io/docs/app-sdk/samples/nextjs/external-task-adapter-with-nextjs#authority");throw E.error("Required environment variables PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID and PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET are missing",{err:n}),n}let s=await ts.discover(process.env.PROCESSCUBE_AUTHORITY_URL);return await new s.Client({client_id:process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID,client_secret:process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET}).grant({grant_type:"client_credentials",scope:"engine_etw"})}async function Bt(){if(!F)return null;for(let s=1;s<=rt;s++)try{return await Mt()}catch(t){let e=Math.min(1e3*Math.pow(2,s-1),as);if(E.error(`Failed to fetch initial token set (attempt ${s}/${rt}), retrying in ${e}ms`,{error:t,attempt:s,delay:e}),s===rt)throw t;await new Promise(n=>setTimeout(n,e))}return null}function lt(s){if(!F||s===null)return ns;let t=s.access_token,e=Qe(t);return{token:s.access_token,userId:e.sub}}async function Ht(s){if(!F||s===null||at)return;at=!0;let t=0,n=await ls(s)*rs*1e3,r=async()=>{try{let i=await Mt();C=lt(i);for(let[a,o]of Object.entries(x))try{o.send({action:"updateIdentity",payload:{identity:C}})}catch(c){E.warn(`Failed to send identity update to worker process ${a}`,{sendError:c})}t=0,setTimeout(r,n)}catch(i){t++;let a=Math.min(1e3*Math.pow(2,t-1),cs);t<=At?E.error(`Could not refresh identity (attempt ${t}/${At}), retrying in ${a}ms`,{error:i,attempt:t,delay:a}):E.error(`Could not refresh identity (attempt ${t}), continuing to retry every ${a}ms`,{error:i,attempt:t,delay:a}),setTimeout(r,a)}};setTimeout(r,n)}async function jt(s){let t=await Ve({entryPoints:[s],write:!1,bundle:!0,platform:"node",target:"node18",format:"cjs",external:["@opentelemetry/api"]});if(t.errors.length>0)throw E.error(`Could not transpile file at '${s}'`,{errors:t.errors}),new Error(`Could not transpile file at '${s}'`);return t.warnings.length>0&&E.warn(`Transpiled file at '${s}' with warnings`,{warnings:t.warnings}),t.outputFiles[0].text}async function ls(s){let t=s.expires_in;if(!t&&s.expires_at&&(t=Math.floor(s.expires_at-Date.now()/1e3)),t===void 0)throw new Error("Could not determine the time until the access token for external task workers expires");return t}function Yt(s){return s.replace(/^\.\/+|\([^)]+\)|^\/*|\/*$/g,"").replace(/[\/]{2,}/g,"/")}function fs(s){let t,e=[s,it(process.cwd(),"app"),it(process.cwd(),"src","app")];for(let n of e)if(n&&vt(n)){t=n;break}if(!t)throw new Error("Could not find external tasks directory");return t}function us(s){let t=Date.now(),e=ot[s];return!e||t-e.timestamp>is?(ot[s]={count:1,timestamp:t},!0):e.count>=Ot?!1:(e.count++,!0)}function Js(){return h}import{getToken as zt}from"next-auth/jwt.js";import{ResponseCookies as hs}from"next/dist/compiled/@edge-runtime/cookies/index.js";import{cookies as Y,headers as Kt}from"next/headers.js";async function w(){let s=await zt({req:{cookies:await Y(),headers:await Kt()}});if(s?.expiresAt&&Date.now()>=s.expiresAt*1e3){let e=await fetch(`${process.env.NEXTAUTH_URL}/api/auth/session`,{method:"GET",headers:{"Content-Type":"application/json",cookie:(await Y()).toString()}}),n=new hs(e.headers);if(n.getAll().length){let r=!1;try{for(let i of n.getAll())(await Y()).set(i.name,i.value,{...i})}catch{r=!0}if(s=await zt({req:{cookies:r?n:await Y(),headers:await Kt()}}),s?.error)throw s.error}}if(!s?.accessToken||!s?.sub)throw new Error("AccessToken or Sub could not be determined!");return{token:s?.accessToken,userId:s?.sub}}import{DataModels as A}from"@5minds/processcube_engine_client";async function v(){try{return w()}catch{return}}async function $t(s){let t=await v();return(await h.processInstances.query({processInstanceId:s},{identity:t,includeXml:!0})).processInstances[0]}async function qt(s,t={sortSettings:{sortBy:A.FlowNodeInstances.FlowNodeInstanceSortableColumns.createdAt,sortDir:"ASC"}}){return(await h.flowNodeInstances.query({processInstanceId:s},{...t,identity:t.identity??await v()})).flowNodeInstances}async function Gt(s){let t=await v();return(await h.flowNodeInstances.query({triggeredByFlowNodeInstance:s},{identity:t})).flowNodeInstances}async function Xt(s,t,e){let n=await v();await h.processInstances.retryProcessInstance(s,{flowNodeInstanceId:t,newStartToken:e,identity:n})}async function Vt(s){let t=await v();await h.processInstances.terminateProcessInstance(s,t)}async function dn(s={options:{identity:!0}}){switch(s.options.identity){case!0:s.options.identity=await w();break;case!1:s.options.identity=void 0;break;case void 0:s.options.identity=await w();break}return await h.processInstances.query({...s?.query,state:A.ProcessInstances.ProcessInstanceState.running},s?.options)}async function ln(s={},t=!0){let{processInstanceId:e}=s,n=typeof t=="boolean"?t==!0?await w():void 0:t;return new Promise(async(r,i)=>{let a=[],o=async c=>{if(e!==void 0&&c.processInstanceId!==e)return;let d=await h.processInstances.query({processInstanceId:c.processInstanceId},{identity:n});for(let f of a)h.notification.removeSubscription(f,n);return d.totalCount===0?i(new Error(`Process with instance ID "${c.processInstanceId}" does not exist.`)):r(d.processInstances[0])};if(a.push(await h.notification.onProcessEnded(o,{identity:n})),a.push(await h.notification.onProcessError(o,{identity:n})),a.push(await h.notification.onProcessTerminated(o,{identity:n})),e){let c=await h.processInstances.query({processInstanceId:e,state:[A.ProcessInstances.ProcessInstanceState.finished,A.ProcessInstances.ProcessInstanceState.terminated,A.ProcessInstances.ProcessInstanceState.error]},{identity:n});if(c.totalCount>0){for(let l of a)h.notification.removeSubscription(l,n);r(c.processInstances[0])}}})}import{DataModels as P}from"@5minds/processcube_engine_client";import{mapUserTask as Qt,mapUserTaskList as b}from"../common/index.mjs";async function _n(s={},t=!0){let{correlationId:e,processInstanceId:n,flowNodeId:r}=s,i=typeof t=="boolean"?t==!0?await w():void 0:t;return new Promise(async(a,o)=>{let c=await h.userTasks.onUserTaskWaiting(async d=>{let f=e!==void 0&&d.correlationId!==e,u=d.flowNodeInstanceId===void 0,m=n!==void 0&&d.processInstanceId!==n,g=r!==void 0&&d.flowNodeId!==r;if(f||u||m||g)return;let k=await ms(d.flowNodeInstanceId,{identity:i});return h.notification.removeSubscription(c,i),k===null?o(new Error(`UserTask with instance ID "${d.flowNodeInstanceId}" does not exist.`)):a(k)},{identity:i}),l=await ps({correlationId:e,processInstanceId:n,flowNodeId:r,state:P.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:i});l.userTasks.length>0&&(h.notification.removeSubscription(c,i),a(l.userTasks[0]))})}async function gn(s,t={},e={},n=!0){let r=typeof n=="boolean"?n==!0?await w():void 0:n;await h.userTasks.finishUserTask(s,e,r);let i={state:P.FlowNodeInstances.FlowNodeInstanceState.suspended,...t},a=await h.userTasks.query(i,{identity:r});return Qt(a.userTasks[0])}async function ps(s,t={identity:!0}){switch(t?.identity){case!0:t.identity=await w();break;case!1:t.identity=void 0;break;case void 0:t.identity=await w();break}let e=await h.userTasks.query(s,t);return b(e)}async function En(s={identity:!0}){switch(s?.identity){case!0:s.identity=await w();break;case!1:s.identity=void 0;break;case void 0:s.identity=await w();break}let t=await h.userTasks.query({state:P.FlowNodeInstances.FlowNodeInstanceState.suspended},s);return b(t)}async function In(s,t={identity:!0}){switch(t?.identity){case!0:t.identity=await w();break;case!1:t.identity=void 0;break;case void 0:t.identity=await w();break}let e=await h.userTasks.query({processInstanceId:s,state:P.FlowNodeInstances.FlowNodeInstanceState.suspended},t);return b(e)}async function Tn(s,t={identity:!0}){switch(t?.identity){case!0:t.identity=await w();break;case!1:t.identity=void 0;break;case void 0:t.identity=await w();break}let e=await h.userTasks.query({flowNodeId:s,state:P.FlowNodeInstances.FlowNodeInstanceState.suspended},t);return b(e)}async function ms(s,t={identity:!0}){switch(t?.identity){case!0:t.identity=await w();break;case!1:t.identity=void 0;break;case void 0:t.identity=await w();break}let e=await h.userTasks.query({flowNodeInstanceId:s,state:P.FlowNodeInstances.FlowNodeInstanceState.suspended},{...t,limit:1});return e.userTasks.length===0?null:Qt(e.userTasks[0])}async function Pn(s,t={identity:!0}){switch(t?.identity){case!0:t.identity=await w();break;case!1:t.identity=void 0;break;case void 0:t.identity=await w();break}let e=await h.userTasks.query({correlationId:s,state:P.FlowNodeInstances.FlowNodeInstanceState.suspended},t);return b(e)}async function kn(s,t){let e=s||await w(),n=await h.userTasks.query({state:P.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:e,...t}),r=n.userTasks.filter(i=>i.actualOwnerId===e.userId);return n.userTasks=r,b(n)}async function Rn(s,t,e){await h.userTasks.reserveUserTaskInstance(s,t,e||s.userId)}async function xn(s,t){await h.userTasks.cancelUserTaskInstanceReservation(s,t)}async function bn(s,t){let e=s||await w(),n=await h.userTasks.query({state:P.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:e,...t}),r=n.userTasks.filter(i=>i.assignedUserIds?.includes(e.userId));return n.userTasks=r,b(n)}import{PHASE_DEVELOPMENT_SERVER as ys,PHASE_PRODUCTION_BUILD as ws,PHASE_PRODUCTION_SERVER as _s}from"next/dist/shared/lib/constants.js";var Zt=!1,ft=!1;function Dn(s={}){let{applicationSdk:t,...e}=s;return async(n,r)=>{ft=ft||n===ws;let i=n===ys||n===_s;return t?.useExternalTasks&&i&&!Zt&&!ft&&(Zt=!0,await Ut(t?.customExternalTasksDirPath)),{...e,experimental:{...e.experimental,serverComponentsExternalPackages:[...e.experimental?.serverComponentsExternalPackages||[],"esbuild"]}}}}import{redirect as gs}from"next/navigation.js";function Ln(s){gs(s)}async function Wn(...s){return await h.processModels.startProcessInstance(...s)}async function Jt(...s){await h.manualTasks.finishManualTask(...s)}async function te(...s){await h.userTasks.finishUserTask(...s)}async function ee(...s){await h.untypedTasks.finishTask(...s)}import{DataModels as Es}from"@5minds/processcube_engine_client";async function Is(){try{return w()}catch{return}}var Vn=async(s,t)=>{let e=await Is();t==="bpmn:UserTask"?await te(s,{},e):t==="bpmn:ManualTask"?await Jt(s,e):t==="bpmn:Task"?await ee(s,e):console.error(`[@5minds/processcube_app_sdk:handlePlay] Unsupported flow node type: ${t}`)},Qn=async s=>{await Vt(s)},Zn=async(s,t,e)=>{await Xt(s,t,e)},Jn=async s=>$t(s),tr=async s=>qt(s,{sortSettings:{sortBy:Es.FlowNodeInstances.FlowNodeInstanceSortableColumns.createdAt,sortDir:"DESC"}}),er=async s=>Gt(s);export{xn as cancelReservedUserTask,Jt as finishManualTask,Vn as finishTask,ee as finishUntypedTask,te as finishUserTask,gn as finishUserTaskAndGetNext,dn as getActiveProcessInstances,bn as getAssignedUserTasksByIdentity,Js as getEngineClient,tr as getFlowNodeInstances,qt as getFlowNodeInstancesByProcessInstanceId,Gt as getFlowNodeInstancesTriggeredByFlowNodeInstanceIds,w as getIdentity,Jn as getProcessInstance,$t as getProcessInstanceById,kn as getReservedUserTasksByIdentity,er as getTriggeredFlowNodeInstances,ps as getUserTasks,ms as getWaitingUserTaskByFlowNodeInstanceId,En as getWaitingUserTasks,Pn as getWaitingUserTasksByCorrelationId,Tn as getWaitingUserTasksByFlowNodeId,In as getWaitingUserTasksByProcessInstanceId,Ln as navigateToUrl,Rn as reserveUserTask,Zn as retryProcess,Xt as retryProcessInstance,Wn as startProcess,Qn as terminateProcess,Vt as terminateProcessInstance,ln as waitForProcessEnd,_n as waitForUserTask,Dn as withApplicationSdk};
|
|
1
|
+
import"only-server";import"../common/index.mjs";import{stat as Fe}from"node:fs";import{stat as Ae,readdir as ve}from"node:fs/promises";import{EventEmitter as Le}from"node:events";import*as p from"node:path";import{stat as ne,lstat as ut,readdir as re,realpath as ie}from"node:fs/promises";import{Readable as oe}from"node:stream";import{resolve as ht,relative as ae,join as ce,sep as de}from"node:path";var T={FILE_TYPE:"files",DIR_TYPE:"directories",FILE_DIR_TYPE:"files_directories",EVERYTHING_TYPE:"all"},K={root:".",fileFilter:s=>!0,directoryFilter:s=>!0,type:T.FILE_TYPE,lstat:!1,depth:2147483648,alwaysStat:!1,highWaterMark:4096};Object.freeze(K);var wt="READDIRP_RECURSIVE_ERROR",le=new Set(["ENOENT","EPERM","EACCES","ELOOP",wt]),pt=[T.DIR_TYPE,T.EVERYTHING_TYPE,T.FILE_DIR_TYPE,T.FILE_TYPE],fe=new Set([T.DIR_TYPE,T.EVERYTHING_TYPE,T.FILE_DIR_TYPE]),ue=new Set([T.EVERYTHING_TYPE,T.FILE_DIR_TYPE,T.FILE_TYPE]),he=s=>le.has(s.code),pe=process.platform==="win32",mt=s=>!0,yt=s=>{if(s===void 0)return mt;if(typeof s=="function")return s;if(typeof s=="string"){let t=s.trim();return e=>e.basename===t}if(Array.isArray(s)){let t=s.map(e=>e.trim());return e=>t.some(n=>e.basename===n)}return mt},$=class extends oe{constructor(t={}){super({objectMode:!0,autoDestroy:!0,highWaterMark:t.highWaterMark});let e={...K,...t},{root:n,type:r}=e;this._fileFilter=yt(e.fileFilter),this._directoryFilter=yt(e.directoryFilter);let i=e.lstat?ut:ne;pe?this._stat=a=>i(a,{bigint:!0}):this._stat=i,this._maxDepth=e.depth??K.depth,this._wantsDir=r?fe.has(r):!1,this._wantsFile=r?ue.has(r):!1,this._wantsEverything=r===T.EVERYTHING_TYPE,this._root=ht(n),this._isDirent=!e.alwaysStat,this._statsProp=this._isDirent?"dirent":"stats",this._rdOptions={encoding:"utf8",withFileTypes:this._isDirent},this.parents=[this._exploreDir(n,1)],this.reading=!1,this.parent=void 0}async _read(t){if(!this.reading){this.reading=!0;try{for(;!this.destroyed&&t>0;){let e=this.parent,n=e&&e.files;if(n&&n.length>0){let{path:r,depth:i}=e,a=n.splice(0,t).map(c=>this._formatEntry(c,r)),o=await Promise.all(a);for(let c of o){if(!c)continue;if(this.destroyed)return;let f=await this._getEntryType(c);f==="directory"&&this._directoryFilter(c)?(i<=this._maxDepth&&this.parents.push(this._exploreDir(c.fullPath,i+1)),this._wantsDir&&(this.push(c),t--)):(f==="file"||this._includeAsFile(c))&&this._fileFilter(c)&&this._wantsFile&&(this.push(c),t--)}}else{let r=this.parents.pop();if(!r){this.push(null);break}if(this.parent=await r,this.destroyed)return}}}catch(e){this.destroy(e)}finally{this.reading=!1}}}async _exploreDir(t,e){let n;try{n=await re(t,this._rdOptions)}catch(r){this._onError(r)}return{files:n,depth:e,path:t}}async _formatEntry(t,e){let n,r=this._isDirent?t.name:t;try{let i=ht(ce(e,r));n={path:ae(this._root,i),fullPath:i,basename:r},n[this._statsProp]=this._isDirent?t:await this._stat(i)}catch(i){this._onError(i);return}return n}_onError(t){he(t)&&!this.destroyed?this.emit("warn",t):this.destroy(t)}async _getEntryType(t){if(!t&&this._statsProp in t)return"";let e=t[this._statsProp];if(e.isFile())return"file";if(e.isDirectory())return"directory";if(e&&e.isSymbolicLink()){let n=t.fullPath;try{let r=await ie(n),i=await ut(r);if(i.isFile())return"file";if(i.isDirectory()){let a=r.length;if(n.startsWith(r)&&n.substr(a,1)===de){let o=new Error(`Circular symlink detected: "${n}" points to "${r}"`);return o.code=wt,this._onError(o)}return"directory"}}catch(r){return this._onError(r),""}}}_includeAsFile(t){let e=t&&t[this._statsProp];return e&&this._wantsEverything&&!e.isDirectory()}};function _t(s,t={}){let e=t.entryType||t.type;if(e==="both"&&(e=T.FILE_DIR_TYPE),e&&(t.type=e),s){if(typeof s!="string")throw new TypeError("readdirp: root argument must be a string. Usage: readdirp(root, options)");if(e&&!pt.includes(e))throw new Error(`readdirp: Invalid type passed. Use one of ${pt.join(", ")}`)}else throw new Error("readdirp: root argument is required. Usage: readdirp(root, options)");return t.root=s,new $(t)}import{watchFile as me,unwatchFile as gt,watch as ye}from"node:fs";import{open as we,stat as It,lstat as _e,realpath as q}from"node:fs/promises";import*as y from"node:path";import{type as ge}from"node:os";var Ee="data",V="end",Tt="close",M=()=>{};var B=process.platform,Q=B==="win32",Ie=B==="darwin",Te=B==="linux",Pe=B==="freebsd",Pt=ge()==="OS400",_={ALL:"all",READY:"ready",ADD:"add",CHANGE:"change",ADD_DIR:"addDir",UNLINK:"unlink",UNLINK_DIR:"unlinkDir",RAW:"raw",ERROR:"error"},P=_,ke="watch",Re={lstat:_e,stat:It},R="listeners",L="errHandlers",S="rawEmitters",xe=[R,L,S],be=new Set(["3dm","3ds","3g2","3gp","7z","a","aac","adp","afdesign","afphoto","afpub","ai","aif","aiff","alz","ape","apk","appimage","ar","arj","asf","au","avi","bak","baml","bh","bin","bk","bmp","btif","bz2","bzip2","cab","caf","cgm","class","cmx","cpio","cr2","cur","dat","dcm","deb","dex","djvu","dll","dmg","dng","doc","docm","docx","dot","dotm","dra","DS_Store","dsk","dts","dtshd","dvb","dwg","dxf","ecelp4800","ecelp7470","ecelp9600","egg","eol","eot","epub","exe","f4v","fbs","fh","fla","flac","flatpak","fli","flv","fpx","fst","fvt","g3","gh","gif","graffle","gz","gzip","h261","h263","h264","icns","ico","ief","img","ipa","iso","jar","jpeg","jpg","jpgv","jpm","jxr","key","ktx","lha","lib","lvp","lz","lzh","lzma","lzo","m3u","m4a","m4v","mar","mdi","mht","mid","midi","mj2","mka","mkv","mmr","mng","mobi","mov","movie","mp3","mp4","mp4a","mpeg","mpg","mpga","mxu","nef","npx","numbers","nupkg","o","odp","ods","odt","oga","ogg","ogv","otf","ott","pages","pbm","pcx","pdb","pdf","pea","pgm","pic","png","pnm","pot","potm","potx","ppa","ppam","ppm","pps","ppsm","ppsx","ppt","pptm","pptx","psd","pya","pyc","pyo","pyv","qt","rar","ras","raw","resources","rgb","rip","rlc","rmf","rmvb","rpm","rtf","rz","s3m","s7z","scpt","sgi","shar","snap","sil","sketch","slk","smv","snk","so","stl","suo","sub","swf","tar","tbz","tbz2","tga","tgz","thmx","tif","tiff","tlz","ttc","ttf","txz","udf","uvh","uvi","uvm","uvp","uvs","uvu","viv","vob","war","wav","wax","wbmp","wdp","weba","webm","webp","whl","wim","wm","wma","wmv","wmx","woff","woff2","wrm","wvx","xbm","xif","xla","xlam","xls","xlsb","xlsm","xlsx","xlt","xltm","xltx","xm","xmind","xpi","xpm","xwd","xz","z","zip","zipx"]),Se=s=>be.has(y.extname(s).slice(1).toLowerCase()),X=(s,t)=>{s instanceof Set?s.forEach(t):t(s)},N=(s,t,e)=>{let n=s[t];n instanceof Set||(s[t]=n=new Set([n])),n.add(e)},Ce=s=>t=>{let e=s[t];e instanceof Set?e.clear():delete s[t]},D=(s,t,e)=>{let n=s[t];n instanceof Set?n.delete(e):n===e&&delete s[t]},kt=s=>s instanceof Set?s.size===0:!s,U=new Map;function Et(s,t,e,n,r){let i=(a,o)=>{e(s),r(a,o,{watchedPath:s}),o&&s!==o&&O(y.resolve(s,o),R,y.join(s,o))};try{return ye(s,{persistent:t.persistent},i)}catch(a){n(a);return}}var O=(s,t,e,n,r)=>{let i=U.get(s);i&&X(i[t],a=>{a(e,n,r)})},Ne=(s,t,e,n)=>{let{listener:r,errHandler:i,rawEmitter:a}=n,o=U.get(t),c;if(!e.persistent)return c=Et(s,e,r,i,a),c?c.close.bind(c):void 0;if(o)N(o,R,r),N(o,L,i),N(o,S,a);else{if(c=Et(s,e,O.bind(null,t,R),i,O.bind(null,t,S)),!c)return;c.on(P.ERROR,async f=>{let d=O.bind(null,t,L);if(o&&(o.watcherUnusable=!0),Q&&f.code==="EPERM")try{await(await we(s,"r")).close(),d(f)}catch{}else d(f)}),o={listeners:r,errHandlers:i,rawEmitters:a,watcher:c},U.set(t,o)}return()=>{D(o,R,r),D(o,L,i),D(o,S,a),kt(o.listeners)&&(o.watcher.close(),U.delete(t),xe.forEach(Ce(o)),o.watcher=void 0,Object.freeze(o))}},G=new Map,De=(s,t,e,n)=>{let{listener:r,rawEmitter:i}=n,a=G.get(t),o=a&&a.options;return o&&(o.persistent<e.persistent||o.interval>e.interval)&&(gt(t),a=void 0),a?(N(a,R,r),N(a,S,i)):(a={listeners:r,rawEmitters:i,options:e,watcher:me(t,e,(c,f)=>{X(a.rawEmitters,l=>{l(P.CHANGE,t,{curr:c,prev:f})});let d=c.mtimeMs;(c.size!==f.size||d>f.mtimeMs||d===0)&&X(a.listeners,l=>l(s,c))})},G.set(t,a)),()=>{D(a,R,r),D(a,S,i),kt(a.listeners)&&(G.delete(t),gt(t),a.options=a.watcher=void 0,Object.freeze(a))}},W=class{constructor(t){this.fsw=t,this._boundHandleError=e=>t._handleError(e)}_watchWithNodeFs(t,e){let n=this.fsw.options,r=y.dirname(t),i=y.basename(t);this.fsw._getWatchedDir(r).add(i);let o=y.resolve(t),c={persistent:n.persistent};e||(e=M);let f;if(n.usePolling){let d=n.interval!==n.binaryInterval;c.interval=d&&Se(i)?n.binaryInterval:n.interval,f=De(t,o,c,{listener:e,rawEmitter:this.fsw._emitRaw})}else f=Ne(t,o,c,{listener:e,errHandler:this._boundHandleError,rawEmitter:this.fsw._emitRaw});return f}_handleFile(t,e,n){if(this.fsw.closed)return;let r=y.dirname(t),i=y.basename(t),a=this.fsw._getWatchedDir(r),o=e;if(a.has(i))return;let c=async(d,l)=>{if(this.fsw._throttle(ke,t,5)){if(!l||l.mtimeMs===0)try{let h=await It(t);if(this.fsw.closed)return;let m=h.atimeMs,g=h.mtimeMs;if((!m||m<=g||g!==o.mtimeMs)&&this.fsw._emit(P.CHANGE,t,h),(Ie||Te||Pe)&&o.ino!==h.ino){this.fsw._closeFile(d),o=h;let I=this._watchWithNodeFs(t,c);I&&this.fsw._addPathCloser(d,I)}else o=h}catch{this.fsw._remove(r,i)}else if(a.has(i)){let h=l.atimeMs,m=l.mtimeMs;(!h||h<=m||m!==o.mtimeMs)&&this.fsw._emit(P.CHANGE,t,l),o=l}}},f=this._watchWithNodeFs(t,c);if(!(n&&this.fsw.options.ignoreInitial)&&this.fsw._isntIgnored(t)){if(!this.fsw._throttle(P.ADD,t,0))return;this.fsw._emit(P.ADD,t,e)}return f}async _handleSymlink(t,e,n,r){if(this.fsw.closed)return;let i=t.fullPath,a=this.fsw._getWatchedDir(e);if(!this.fsw.options.followSymlinks){this.fsw._incrReadyCount();let o;try{o=await q(n)}catch{return this.fsw._emitReady(),!0}return this.fsw.closed?void 0:(a.has(r)?this.fsw._symlinkPaths.get(i)!==o&&(this.fsw._symlinkPaths.set(i,o),this.fsw._emit(P.CHANGE,n,t.stats)):(a.add(r),this.fsw._symlinkPaths.set(i,o),this.fsw._emit(P.ADD,n,t.stats)),this.fsw._emitReady(),!0)}if(this.fsw._symlinkPaths.has(i))return!0;this.fsw._symlinkPaths.set(i,!0)}_handleRead(t,e,n,r,i,a,o){if(t=y.join(t,""),o=this.fsw._throttle("readdir",t,1e3),!o)return;let c=this.fsw._getWatchedDir(n.path),f=new Set,d=this.fsw._readdirp(t,{fileFilter:l=>n.filterPath(l),directoryFilter:l=>n.filterDir(l)});if(d)return d.on(Ee,async l=>{if(this.fsw.closed){d=void 0;return}let h=l.path,m=y.join(t,h);if(f.add(h),!(l.stats.isSymbolicLink()&&await this._handleSymlink(l,t,m,h))){if(this.fsw.closed){d=void 0;return}(h===r||!r&&!c.has(h))&&(this.fsw._incrReadyCount(),m=y.join(i,y.relative(i,m)),this._addToNodeFs(m,e,n,a+1))}}).on(P.ERROR,this._boundHandleError),new Promise((l,h)=>{if(!d)return h();d.once(V,()=>{if(this.fsw.closed){d=void 0;return}let m=o?o.clear():!1;l(void 0),c.getChildren().filter(g=>g!==t&&!f.has(g)).forEach(g=>{this.fsw._remove(t,g)}),d=void 0,m&&this._handleRead(t,!1,n,r,i,a,o)})})}async _handleDir(t,e,n,r,i,a,o){let c=this.fsw._getWatchedDir(y.dirname(t)),f=c.has(y.basename(t));!(n&&this.fsw.options.ignoreInitial)&&!i&&!f&&this.fsw._emit(P.ADD_DIR,t,e),c.add(y.basename(t)),this.fsw._getWatchedDir(t);let d,l,h=this.fsw.options.depth;if((h==null||r<=h)&&!this.fsw._symlinkPaths.has(o)){if(!i&&(await this._handleRead(t,n,a,i,t,r,d),this.fsw.closed))return;l=this._watchWithNodeFs(t,(m,g)=>{g&&g.mtimeMs===0||this._handleRead(m,!1,a,i,t,r,d)})}return l}async _addToNodeFs(t,e,n,r,i){let a=this.fsw._emitReady;if(this.fsw._isIgnored(t)||this.fsw.closed)return a(),!1;let o=this.fsw._getWatchHelpers(t);n&&(o.filterPath=c=>n.filterPath(c),o.filterDir=c=>n.filterDir(c));try{let c=await Re[o.statMethod](o.watchPath);if(this.fsw.closed)return;if(this.fsw._isIgnored(o.watchPath,c))return a(),!1;let f=this.fsw.options.followSymlinks,d;if(c.isDirectory()){let l=y.resolve(t),h=f?await q(t):t;if(this.fsw.closed||(d=await this._handleDir(o.watchPath,c,e,r,i,o,h),this.fsw.closed))return;l!==h&&h!==void 0&&this.fsw._symlinkPaths.set(l,h)}else if(c.isSymbolicLink()){let l=f?await q(t):t;if(this.fsw.closed)return;let h=y.dirname(o.watchPath);if(this.fsw._getWatchedDir(h).add(o.watchPath),this.fsw._emit(P.ADD,o.watchPath,c),d=await this._handleDir(h,c,e,r,t,o,l),this.fsw.closed)return;l!==void 0&&this.fsw._symlinkPaths.set(y.resolve(t),l)}else d=this._handleFile(o.watchPath,c,e);return a(),d&&this.fsw._addPathCloser(t,d),!1}catch(c){if(this.fsw._handleError(c))return a(),t}}};var Z="/",Ue="//",Nt=".",Oe="..",We="string",Me=/\\/g,Rt=/\/\//,Be=/\..*\.(sw[px])$|~$|\.subl.*\.tmp/,He=/^\.[/\\]/;function H(s){return Array.isArray(s)?s:[s]}var J=s=>typeof s=="object"&&s!==null&&!(s instanceof RegExp);function je(s){return typeof s=="function"?s:typeof s=="string"?t=>s===t:s instanceof RegExp?t=>s.test(t):typeof s=="object"&&s!==null?t=>{if(s.path===t)return!0;if(s.recursive){let e=p.relative(s.path,t);return e?!e.startsWith("..")&&!p.isAbsolute(e):!1}return!1}:()=>!1}function Ye(s){if(typeof s!="string")throw new Error("string expected");s=p.normalize(s),s=s.replace(/\\/g,"/");let t=!1;s.startsWith("//")&&(t=!0);let e=/\/\//;for(;s.match(e);)s=s.replace(e,"/");return t&&(s="/"+s),s}function xt(s,t,e){let n=Ye(t);for(let r=0;r<s.length;r++){let i=s[r];if(i(n,e))return!0}return!1}function ze(s,t){if(s==null)throw new TypeError("anymatch: specify first argument");let n=H(s).map(r=>je(r));return t==null?(r,i)=>xt(n,r,i):xt(n,t)}var bt=s=>{let t=H(s).flat();if(!t.every(e=>typeof e===We))throw new TypeError(`Non-string provided as watch path: ${t}`);return t.map(Dt)},St=s=>{let t=s.replace(Me,Z),e=!1;for(t.startsWith(Ue)&&(e=!0);t.match(Rt);)t=t.replace(Rt,Z);return e&&(t=Z+t),t},Dt=s=>St(p.normalize(St(s))),Ct=(s="")=>t=>typeof t=="string"?Dt(p.isAbsolute(t)?t:p.join(s,t)):t,Ke=(s,t)=>p.isAbsolute(s)?s:p.join(t,s),$e=Object.freeze(new Set),tt=class{constructor(t,e){this.path=t,this._removeWatcher=e,this.items=new Set}add(t){let{items:e}=this;e&&t!==Nt&&t!==Oe&&e.add(t)}async remove(t){let{items:e}=this;if(!e||(e.delete(t),e.size>0))return;let n=this.path;try{await ve(n)}catch{this._removeWatcher&&this._removeWatcher(p.dirname(n),p.basename(n))}}has(t){let{items:e}=this;if(e)return e.has(t)}getChildren(){let{items:t}=this;return t?[...t.values()]:[]}dispose(){this.items.clear(),this.path="",this._removeWatcher=M,this.items=$e,Object.freeze(this)}},qe="stat",Ge="lstat",et=class{constructor(t,e,n){this.fsw=n;let r=t;this.path=t=t.replace(He,""),this.watchPath=r,this.fullWatchPath=p.resolve(r),this.dirParts=[],this.dirParts.forEach(i=>{i.length>1&&i.pop()}),this.followSymlinks=e,this.statMethod=e?qe:Ge}entryPath(t){return p.join(this.watchPath,p.relative(this.watchPath,t.fullPath))}filterPath(t){let{stats:e}=t;if(e&&e.isSymbolicLink())return this.filterDir(t);let n=this.entryPath(t);return this.fsw._isntIgnored(n,e)&&this.fsw._hasReadPermissions(e)}filterDir(t){return this.fsw._isntIgnored(this.entryPath(t),t.stats)}},st=class extends Le{constructor(t={}){super(),this.closed=!1,this._closers=new Map,this._ignoredPaths=new Set,this._throttled=new Map,this._streams=new Set,this._symlinkPaths=new Map,this._watched=new Map,this._pendingWrites=new Map,this._pendingUnlinks=new Map,this._readyCount=0,this._readyEmitted=!1;let e=t.awaitWriteFinish,n={stabilityThreshold:2e3,pollInterval:100},r={persistent:!0,ignoreInitial:!1,ignorePermissionErrors:!1,interval:100,binaryInterval:300,followSymlinks:!0,usePolling:!1,atomic:!0,...t,ignored:t.ignored?H(t.ignored):H([]),awaitWriteFinish:e===!0?n:typeof e=="object"?{...n,...e}:!1};Pt&&(r.usePolling=!0),r.atomic===void 0&&(r.atomic=!r.usePolling);let i=process.env.CHOKIDAR_USEPOLLING;if(i!==void 0){let c=i.toLowerCase();c==="false"||c==="0"?r.usePolling=!1:c==="true"||c==="1"?r.usePolling=!0:r.usePolling=!!c}let a=process.env.CHOKIDAR_INTERVAL;a&&(r.interval=Number.parseInt(a,10));let o=0;this._emitReady=()=>{o++,o>=this._readyCount&&(this._emitReady=M,this._readyEmitted=!0,process.nextTick(()=>this.emit(_.READY)))},this._emitRaw=(...c)=>this.emit(_.RAW,...c),this._boundRemove=this._remove.bind(this),this.options=r,this._nodeFsHandler=new W(this),Object.freeze(r)}_addIgnoredPath(t){if(J(t)){for(let e of this._ignoredPaths)if(J(e)&&e.path===t.path&&e.recursive===t.recursive)return}this._ignoredPaths.add(t)}_removeIgnoredPath(t){if(this._ignoredPaths.delete(t),typeof t=="string")for(let e of this._ignoredPaths)J(e)&&e.path===t&&this._ignoredPaths.delete(e)}add(t,e,n){let{cwd:r}=this.options;this.closed=!1,this._closePromise=void 0;let i=bt(t);return r&&(i=i.map(a=>Ke(a,r))),i.forEach(a=>{this._removeIgnoredPath(a)}),this._userIgnored=void 0,this._readyCount||(this._readyCount=0),this._readyCount+=i.length,Promise.all(i.map(async a=>{let o=await this._nodeFsHandler._addToNodeFs(a,!n,void 0,0,e);return o&&this._emitReady(),o})).then(a=>{this.closed||a.forEach(o=>{o&&this.add(p.dirname(o),p.basename(e||o))})}),this}unwatch(t){if(this.closed)return this;let e=bt(t),{cwd:n}=this.options;return e.forEach(r=>{!p.isAbsolute(r)&&!this._closers.has(r)&&(n&&(r=p.join(n,r)),r=p.resolve(r)),this._closePath(r),this._addIgnoredPath(r),this._watched.has(r)&&this._addIgnoredPath({path:r,recursive:!0}),this._userIgnored=void 0}),this}close(){if(this._closePromise)return this._closePromise;this.closed=!0,this.removeAllListeners();let t=[];return this._closers.forEach(e=>e.forEach(n=>{let r=n();r instanceof Promise&&t.push(r)})),this._streams.forEach(e=>e.destroy()),this._userIgnored=void 0,this._readyCount=0,this._readyEmitted=!1,this._watched.forEach(e=>e.dispose()),this._closers.clear(),this._watched.clear(),this._streams.clear(),this._symlinkPaths.clear(),this._throttled.clear(),this._closePromise=t.length?Promise.all(t).then(()=>{}):Promise.resolve(),this._closePromise}getWatched(){let t={};return this._watched.forEach((e,n)=>{let i=(this.options.cwd?p.relative(this.options.cwd,n):n)||Nt;t[i]=e.getChildren().sort()}),t}emitWithAll(t,e){this.emit(t,...e),t!==_.ERROR&&this.emit(_.ALL,t,...e)}async _emit(t,e,n){if(this.closed)return;let r=this.options;Q&&(e=p.normalize(e)),r.cwd&&(e=p.relative(r.cwd,e));let i=[e];n!=null&&i.push(n);let a=r.awaitWriteFinish,o;if(a&&(o=this._pendingWrites.get(e)))return o.lastChange=new Date,this;if(r.atomic){if(t===_.UNLINK)return this._pendingUnlinks.set(e,[t,...i]),setTimeout(()=>{this._pendingUnlinks.forEach((c,f)=>{this.emit(...c),this.emit(_.ALL,...c),this._pendingUnlinks.delete(f)})},typeof r.atomic=="number"?r.atomic:100),this;t===_.ADD&&this._pendingUnlinks.has(e)&&(t=_.CHANGE,this._pendingUnlinks.delete(e))}if(a&&(t===_.ADD||t===_.CHANGE)&&this._readyEmitted){let c=(f,d)=>{f?(t=_.ERROR,i[0]=f,this.emitWithAll(t,i)):d&&(i.length>1?i[1]=d:i.push(d),this.emitWithAll(t,i))};return this._awaitWriteFinish(e,a.stabilityThreshold,t,c),this}if(t===_.CHANGE&&!this._throttle(_.CHANGE,e,50))return this;if(r.alwaysStat&&n===void 0&&(t===_.ADD||t===_.ADD_DIR||t===_.CHANGE)){let c=r.cwd?p.join(r.cwd,e):e,f;try{f=await Ae(c)}catch{}if(!f||this.closed)return;i.push(f)}return this.emitWithAll(t,i),this}_handleError(t){let e=t&&t.code;return t&&e!=="ENOENT"&&e!=="ENOTDIR"&&(!this.options.ignorePermissionErrors||e!=="EPERM"&&e!=="EACCES")&&this.emit(_.ERROR,t),t||this.closed}_throttle(t,e,n){this._throttled.has(t)||this._throttled.set(t,new Map);let r=this._throttled.get(t);if(!r)throw new Error("invalid throttle");let i=r.get(e);if(i)return i.count++,!1;let a,o=()=>{let f=r.get(e),d=f?f.count:0;return r.delete(e),clearTimeout(a),f&&clearTimeout(f.timeoutObject),d};a=setTimeout(o,n);let c={timeoutObject:a,clear:o,count:0};return r.set(e,c),c}_incrReadyCount(){return this._readyCount++}_awaitWriteFinish(t,e,n,r){let i=this.options.awaitWriteFinish;if(typeof i!="object")return;let a=i.pollInterval,o,c=t;this.options.cwd&&!p.isAbsolute(t)&&(c=p.join(this.options.cwd,t));let f=new Date,d=this._pendingWrites;function l(h){Fe(c,(m,g)=>{if(m||!d.has(t)){m&&m.code!=="ENOENT"&&r(m);return}let I=Number(new Date);h&&g.size!==h.size&&(d.get(t).lastChange=I);let se=d.get(t);I-se.lastChange>=e?(d.delete(t),r(void 0,g)):o=setTimeout(l,a,g)})}d.has(t)||(d.set(t,{lastChange:f,cancelWait:()=>(d.delete(t),clearTimeout(o),n)}),o=setTimeout(l,a))}_isIgnored(t,e){if(this.options.atomic&&Be.test(t))return!0;if(!this._userIgnored){let{cwd:n}=this.options,i=(this.options.ignored||[]).map(Ct(n)),o=[...[...this._ignoredPaths].map(Ct(n)),...i];this._userIgnored=ze(o,void 0)}return this._userIgnored(t,e)}_isntIgnored(t,e){return!this._isIgnored(t,e)}_getWatchHelpers(t){return new et(t,this.options.followSymlinks,this)}_getWatchedDir(t){let e=p.resolve(t);return this._watched.has(e)||this._watched.set(e,new tt(e,this._boundRemove)),this._watched.get(e)}_hasReadPermissions(t){return this.options.ignorePermissionErrors?!0:!!(Number(t.mode)&256)}_remove(t,e,n){let r=p.join(t,e),i=p.resolve(r);if(n=n??(this._watched.has(r)||this._watched.has(i)),!this._throttle("remove",r,100))return;!n&&this._watched.size===1&&this.add(t,e,!0),this._getWatchedDir(r).getChildren().forEach(h=>this._remove(r,h));let c=this._getWatchedDir(t),f=c.has(e);c.remove(e),this._symlinkPaths.has(i)&&this._symlinkPaths.delete(i);let d=r;if(this.options.cwd&&(d=p.relative(this.options.cwd,r)),this.options.awaitWriteFinish&&this._pendingWrites.has(d)&&this._pendingWrites.get(d).cancelWait()===_.ADD)return;this._watched.delete(r),this._watched.delete(i);let l=n?_.UNLINK_DIR:_.UNLINK;f&&!this._isIgnored(r)&&this._emit(l,r),this._closePath(r)}_closePath(t){this._closeFile(t);let e=p.dirname(t);this._getWatchedDir(e).remove(p.basename(t))}_closeFile(t){let e=this._closers.get(t);e&&(e.forEach(n=>n()),this._closers.delete(t))}_addPathCloser(t,e){if(!e)return;let n=this._closers.get(t);n||(n=[],this._closers.set(t,n)),n.push(e)}_readdirp(t,e){if(this.closed)return;let n={type:_.ALL,alwaysStat:!0,lstat:!0,...e,depth:0},r=_t(t,n);return this._streams.add(r),r.once(Tt,()=>{r=void 0}),r.once(V,()=>{r&&(this._streams.delete(r),r=void 0)}),r}};function Ft(s,t={}){let e=new st(t);return e.add(s),e}import{build as Ve}from"esbuild";import{jwtDecode as Qe}from"jwt-decode";import{fork as Ze}from"node:child_process";import{existsSync as vt,promises as Je}from"node:fs";import{basename as rt,dirname as Y,join as ot,relative as Lt}from"node:path";import{fileURLToPath as ts}from"node:url";import{Issuer as es,custom as ss}from"openid-client";import{Logger as ns}from"@5minds/processcube_engine_sdk";import{EngineClient as Xe}from"@5minds/processcube_engine_client";var nt=process.env.PROCESSCUBE_ENGINE_URL??"http://localhost:10560",u=new Xe(nt);var rs={token:"ZHVtbXlfdG9rZW4=",userId:"dummy_token"},is=.85,j=["external_task.ts","external_task.js"],F=process.env.PROCESSCUBE_AUTHORITY_URL!==void 0,E=new ns("processcube_app_sdk:external_task_adapter"),x={},at={},C,ct=!1,Ut=6,os=3e5,as=3e4,it=10,cs=3e4,At=10,ds=6e4;async function Ot(s){if(s&&!vt(s))throw new Error(`Invalid customExternalTasksDirPath. The given path '${s}' does not exist`);ss.setHttpOptionsDefaults({timeout:1e5});let t=await Bt();C=lt(t),await Ht(t);let e=us(s);Ft(e).on("add",async n=>{if(j.includes(rt(n)))return dt(n,e)}).on("change",async n=>{if(j.includes(rt(n)))return ls(n,e)}).on("unlink",async n=>{j.includes(rt(n))&&Wt(n)}).on("error",n=>E.error(`Watcher error: ${n}`))}async function dt(s,t){let e=Y(s);if((await Je.readdir(e)).filter(l=>j.includes(l)).length>1){E.error(`Multiple external task files found in directory ${e}. Stopping all external task workers for this directory.`),x[e]&&Wt(s);return}let i=await jt(s),a=Lt(t,e),o=Yt(a),c=typeof __dirname<"u"?__dirname:Y(ts(import.meta.url)),f=ot(c,"lib/ExternalTaskWorkerProcess.cjs"),d=Ze(f,{stdio:["pipe","inherit","inherit","ipc"],env:{...process.env,PROCESSCUBE_ENGINE_URL:nt}});x[e]=d,d.once("disconnect",()=>{delete x[e]}),d.on("error",l=>{E.error(`External Task Worker process error for ${o}`,{error:l,topic:o,workerDirectory:e})}),d.on("exit",(l,h)=>{if(E.info(`External Task Worker process exited for ${o}`,{code:l,signal:h,topic:o,workerDirectory:e}),delete x[e],l===3||l===4)if(hs(e)){let m=at[e]?.count??1,g=Math.min(1e3*Math.pow(2,m-1),as);E.info(`Scheduling restart for ${o} in ${g}ms (attempt ${m}/${Ut})`,{delay:g,restartCount:m,exitCode:l,topic:o,workerDirectory:e}),setTimeout(async()=>{try{if(F&&!ct){E.info("Token refresh cycle is not active, restarting it before worker restart");let I=await Bt();C=lt(I),await Ht(I)}await dt(s,t)}catch(I){E.error(`Failed to restart External Task Worker process for ${o}`,{error:I,topic:o,workerDirectory:e})}},g)}else E.error(`External Task Worker process for ${o} reached maximum restart attempts`,{exitCode:l,topic:o,workerDirectory:e})}),d.send({action:"create",payload:{topic:o,identity:C,moduleString:i,workerPath:s}})}async function ls(s,t){let e=Y(s),n=x[e];if(!n)return dt(s,t);let r=await jt(s),i=Lt(t,e),a=Yt(i);n.send({action:"restart",payload:{topic:a,identity:C,moduleString:r,workerPath:s}})}function Wt(s){let t=Y(s),e=x[t];e&&e.kill()}async function Mt(){if(!F)return null;if(!process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID||!process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET){let n=new Error("Required environment variables PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID and PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET are missing. For help, please refer to our documentation on environment variables at: https://processcube.io/docs/app-sdk/samples/nextjs/external-task-adapter-with-nextjs#authority");throw E.error("Required environment variables PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID and PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET are missing",{err:n}),n}let s=await es.discover(process.env.PROCESSCUBE_AUTHORITY_URL);return await new s.Client({client_id:process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_ID,client_secret:process.env.PROCESSCUBE_EXTERNAL_TASK_WORKER_CLIENT_SECRET}).grant({grant_type:"client_credentials",scope:"engine_etw"})}async function Bt(){if(!F)return null;for(let s=1;s<=it;s++)try{return await Mt()}catch(t){let e=Math.min(1e3*Math.pow(2,s-1),cs);if(E.error(`Failed to fetch initial token set (attempt ${s}/${it}), retrying in ${e}ms`,{error:t,attempt:s,delay:e}),s===it)throw t;await new Promise(n=>setTimeout(n,e))}return null}function lt(s){if(!F||s===null)return rs;let t=s.access_token,e=Qe(t);return{token:s.access_token,userId:e.sub}}async function Ht(s){if(!F||s===null||ct)return;ct=!0;let t=0,n=await fs(s)*is*1e3,r=async()=>{try{let i=await Mt();C=lt(i);for(let[a,o]of Object.entries(x))try{o.send({action:"updateIdentity",payload:{identity:C}})}catch(c){E.warn(`Failed to send identity update to worker process ${a}`,{sendError:c})}t=0,setTimeout(r,n)}catch(i){t++;let a=Math.min(1e3*Math.pow(2,t-1),ds);t<=At?E.error(`Could not refresh identity (attempt ${t}/${At}), retrying in ${a}ms`,{error:i,attempt:t,delay:a}):E.error(`Could not refresh identity (attempt ${t}), continuing to retry every ${a}ms`,{error:i,attempt:t,delay:a}),setTimeout(r,a)}};setTimeout(r,n)}async function jt(s){let t=await Ve({entryPoints:[s],write:!1,bundle:!0,platform:"node",target:"node18",format:"cjs",external:["@opentelemetry/api"]});if(t.errors.length>0)throw E.error(`Could not transpile file at '${s}'`,{errors:t.errors}),new Error(`Could not transpile file at '${s}'`);return t.warnings.length>0&&E.warn(`Transpiled file at '${s}' with warnings`,{warnings:t.warnings}),t.outputFiles[0].text}async function fs(s){let t=s.expires_in;if(!t&&s.expires_at&&(t=Math.floor(s.expires_at-Date.now()/1e3)),t===void 0)throw new Error("Could not determine the time until the access token for external task workers expires");return t}function Yt(s){return s.replace(/^\.\/+|\([^)]+\)|^\/*|\/*$/g,"").replace(/[\/]{2,}/g,"/")}function us(s){let t,e=[s,ot(process.cwd(),"app"),ot(process.cwd(),"src","app")];for(let n of e)if(n&&vt(n)){t=n;break}if(!t)throw new Error("Could not find external tasks directory");return t}function hs(s){let t=Date.now(),e=at[s];return!e||t-e.timestamp>os?(at[s]={count:1,timestamp:t},!0):e.count>=Ut?!1:(e.count++,!0)}function en(){return u}import{getToken as zt}from"next-auth/jwt";import{ResponseCookies as ps}from"next/dist/compiled/@edge-runtime/cookies/index.js";import{cookies as z,headers as Kt}from"next/headers.js";async function w(){let s=await zt({req:{cookies:await z(),headers:await Kt()}});if(s?.expiresAt&&Date.now()>=s.expiresAt*1e3){let e=await fetch(`${process.env.NEXTAUTH_URL}/api/auth/session`,{method:"GET",headers:{"Content-Type":"application/json",cookie:(await z()).toString()}}),n=new ps(e.headers);if(n.getAll().length){let r=!1;try{for(let i of n.getAll())(await z()).set(i.name,i.value,{...i})}catch{r=!0}if(s=await zt({req:{cookies:r?n:await z(),headers:await Kt()}}),s?.error)throw s.error}}if(!s?.accessToken||!s?.sub)throw new Error("AccessToken or Sub could not be determined!");return{token:s?.accessToken,userId:s?.sub}}import{DataModels as A}from"@5minds/processcube_engine_client";async function v(){try{return w()}catch{return}}async function $t(s){let t=await v();return(await u.processInstances.query({processInstanceId:s},{identity:t,includeXml:!0})).processInstances[0]}async function qt(s,t={sortSettings:{sortBy:A.FlowNodeInstances.FlowNodeInstanceSortableColumns.createdAt,sortDir:"ASC"}}){return(await u.flowNodeInstances.query({processInstanceId:s},{...t,identity:t.identity??await v()})).flowNodeInstances}async function Gt(s){let t=await v();return(await u.flowNodeInstances.query({triggeredByFlowNodeInstance:s},{identity:t})).flowNodeInstances}async function Xt(s,t,e){let n=await v();await u.processInstances.retryProcessInstance(s,{flowNodeInstanceId:t,newStartToken:e,identity:n})}async function Vt(s){let t=await v();await u.processInstances.terminateProcessInstance(s,t)}async function fn(s={options:{identity:!0}}){switch(s.options.identity){case!0:s.options.identity=await w();break;case!1:s.options.identity=void 0;break;case void 0:s.options.identity=await w();break}return await u.processInstances.query({...s?.query,state:A.ProcessInstances.ProcessInstanceState.running},s?.options)}async function un(s={},t=!0){let{processInstanceId:e}=s,n=typeof t=="boolean"?t==!0?await w():void 0:t;return new Promise(async(r,i)=>{let a=[],o=async c=>{if(e!==void 0&&c.processInstanceId!==e)return;let d=await u.processInstances.query({processInstanceId:c.processInstanceId},{identity:n});for(let l of a)u.notification.removeSubscription(l,n);return d.totalCount===0?i(new Error(`Process with instance ID "${c.processInstanceId}" does not exist.`)):r(d.processInstances[0])};if(a.push(await u.notification.onProcessEnded(o,{identity:n})),a.push(await u.notification.onProcessError(o,{identity:n})),a.push(await u.notification.onProcessTerminated(o,{identity:n})),e){let c=await u.processInstances.query({processInstanceId:e,state:[A.ProcessInstances.ProcessInstanceState.finished,A.ProcessInstances.ProcessInstanceState.terminated,A.ProcessInstances.ProcessInstanceState.error]},{identity:n});if(c.totalCount>0){for(let f of a)u.notification.removeSubscription(f,n);r(c.processInstances[0])}}})}import{DataModels as k}from"@5minds/processcube_engine_client";import{mapUserTask as Qt,mapUserTaskList as b}from"../common/index.mjs";async function En(s={},t=!0){let{correlationId:e,processInstanceId:n,flowNodeId:r}=s,i=typeof t=="boolean"?t==!0?await w():void 0:t;return new Promise(async(a,o)=>{let c=await u.userTasks.onUserTaskWaiting(async d=>{let l=e!==void 0&&d.correlationId!==e,h=d.flowNodeInstanceId===void 0,m=n!==void 0&&d.processInstanceId!==n,g=r!==void 0&&d.flowNodeId!==r;if(l||h||m||g)return;let I=await ys(d.flowNodeInstanceId,{identity:i});return u.notification.removeSubscription(c,i),I===null?o(new Error(`UserTask with instance ID "${d.flowNodeInstanceId}" does not exist.`)):a(I)},{identity:i}),f=await ms({correlationId:e,processInstanceId:n,flowNodeId:r,state:k.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:i});f.userTasks.length>0&&(u.notification.removeSubscription(c,i),a(f.userTasks[0]))})}async function In(s,t={},e={},n=!0){let r=typeof n=="boolean"?n==!0?await w():void 0:n;await u.userTasks.finishUserTask(s,e,r);let i={state:k.FlowNodeInstances.FlowNodeInstanceState.suspended,...t},a=await u.userTasks.query(i,{identity:r});return Qt(a.userTasks[0])}async function ms(s,t={identity:!0}){switch(t?.identity){case!0:t.identity=await w();break;case!1:t.identity=void 0;break;case void 0:t.identity=await w();break}let e=await u.userTasks.query(s,t);return b(e)}async function Tn(s={identity:!0}){switch(s?.identity){case!0:s.identity=await w();break;case!1:s.identity=void 0;break;case void 0:s.identity=await w();break}let t=await u.userTasks.query({state:k.FlowNodeInstances.FlowNodeInstanceState.suspended},s);return b(t)}async function Pn(s,t={identity:!0}){switch(t?.identity){case!0:t.identity=await w();break;case!1:t.identity=void 0;break;case void 0:t.identity=await w();break}let e=await u.userTasks.query({processInstanceId:s,state:k.FlowNodeInstances.FlowNodeInstanceState.suspended},t);return b(e)}async function kn(s,t={identity:!0}){switch(t?.identity){case!0:t.identity=await w();break;case!1:t.identity=void 0;break;case void 0:t.identity=await w();break}let e=await u.userTasks.query({flowNodeId:s,state:k.FlowNodeInstances.FlowNodeInstanceState.suspended},t);return b(e)}async function ys(s,t={identity:!0}){switch(t?.identity){case!0:t.identity=await w();break;case!1:t.identity=void 0;break;case void 0:t.identity=await w();break}let e=await u.userTasks.query({flowNodeInstanceId:s,state:k.FlowNodeInstances.FlowNodeInstanceState.suspended},{...t,limit:1});return e.userTasks.length===0?null:Qt(e.userTasks[0])}async function Rn(s,t={identity:!0}){switch(t?.identity){case!0:t.identity=await w();break;case!1:t.identity=void 0;break;case void 0:t.identity=await w();break}let e=await u.userTasks.query({correlationId:s,state:k.FlowNodeInstances.FlowNodeInstanceState.suspended},t);return b(e)}async function xn(s,t){let e=s||await w(),n=await u.userTasks.query({state:k.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:e,...t}),r=n.userTasks.filter(i=>i.actualOwnerId===e.userId);return n.userTasks=r,b(n)}async function bn(s,t,e){await u.userTasks.reserveUserTaskInstance(s,t,e||s.userId)}async function Sn(s,t){await u.userTasks.cancelUserTaskInstanceReservation(s,t)}async function Cn(s,t){let e=s||await w(),n=await u.userTasks.query({state:k.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:e,...t}),r=n.userTasks.filter(i=>i.assignedUserIds?.includes(e.userId));return n.userTasks=r,b(n)}import{PHASE_DEVELOPMENT_SERVER as ws,PHASE_PRODUCTION_BUILD as _s,PHASE_PRODUCTION_SERVER as gs}from"next/dist/shared/lib/constants.js";var Zt=!1,ft=!1;function An(s={}){let{applicationSdk:t,...e}=s;return async(n,r)=>{ft=ft||n===_s;let i=n===ws||n===gs;return t?.useExternalTasks&&i&&!Zt&&!ft&&(Zt=!0,await Ot(t?.customExternalTasksDirPath)),{...e,experimental:{...e.experimental,serverComponentsExternalPackages:[...e.experimental?.serverComponentsExternalPackages||[],"esbuild"]}}}}import{redirect as Es}from"next/navigation.js";function On(s){Es(s)}async function Bn(...s){return await u.processModels.startProcessInstance(...s)}async function Jt(...s){await u.manualTasks.finishManualTask(...s)}async function te(...s){await u.userTasks.finishUserTask(...s)}async function ee(...s){await u.untypedTasks.finishTask(...s)}import{DataModels as Is}from"@5minds/processcube_engine_client";async function Ts(){try{return w()}catch{return}}var Zn=async(s,t)=>{let e=await Ts();t==="bpmn:UserTask"?await te(s,{},e):t==="bpmn:ManualTask"?await Jt(s,e):t==="bpmn:Task"?await ee(s,e):console.error(`[@5minds/processcube_app_sdk:handlePlay] Unsupported flow node type: ${t}`)},Jn=async s=>{await Vt(s)},tr=async(s,t,e)=>{await Xt(s,t,e)},er=async s=>$t(s),sr=async s=>qt(s,{sortSettings:{sortBy:Is.FlowNodeInstances.FlowNodeInstanceSortableColumns.createdAt,sortDir:"DESC"}}),nr=async s=>Gt(s);export{Sn as cancelReservedUserTask,Jt as finishManualTask,Zn as finishTask,ee as finishUntypedTask,te as finishUserTask,In as finishUserTaskAndGetNext,fn as getActiveProcessInstances,Cn as getAssignedUserTasksByIdentity,en as getEngineClient,sr as getFlowNodeInstances,qt as getFlowNodeInstancesByProcessInstanceId,Gt as getFlowNodeInstancesTriggeredByFlowNodeInstanceIds,w as getIdentity,er as getProcessInstance,$t as getProcessInstanceById,xn as getReservedUserTasksByIdentity,nr as getTriggeredFlowNodeInstances,ms as getUserTasks,ys as getWaitingUserTaskByFlowNodeInstanceId,Tn as getWaitingUserTasks,Rn as getWaitingUserTasksByCorrelationId,kn as getWaitingUserTasksByFlowNodeId,Pn as getWaitingUserTasksByProcessInstanceId,On as navigateToUrl,bn as reserveUserTask,tr as retryProcess,Xt as retryProcessInstance,Bn as startProcess,Jn as terminateProcess,Vt as terminateProcessInstance,un as waitForProcessEnd,En as waitForUserTask,An as withApplicationSdk};
|
|
2
2
|
/*! Bundled license information:
|
|
3
3
|
|
|
4
4
|
chokidar/esm/index.js:
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use server";import"./chunk-YEKQJ4YC.mjs";import{DataModels as C}from"@5minds/processcube_engine_client";import{DataModels as b}from"@5minds/processcube_engine_client";import{getToken as p}from"next-auth/jwt.js";import{ResponseCookies as k}from"next/dist/compiled/@edge-runtime/cookies/index.js";import{cookies as a,headers as y}from"next/headers.js";async function i(){let e=await p({req:{cookies:await a(),headers:await y()}});if(e?.expiresAt&&Date.now()>=e.expiresAt*1e3){let s=await fetch(`${process.env.NEXTAUTH_URL}/api/auth/session`,{method:"GET",headers:{"Content-Type":"application/json",cookie:(await a()).toString()}}),o=new k(s.headers);if(o.getAll().length){let d=!1;try{for(let c of o.getAll())(await a()).set(c.name,c.value,{...c})}catch{d=!0}if(e=await p({req:{cookies:d?o:await a(),headers:await y()}}),e?.error)throw e.error}}if(!e?.accessToken||!e?.sub)throw new Error("AccessToken or Sub could not be determined!");return{token:e?.accessToken,userId:e?.sub}}import{EngineClient as T}from"@5minds/processcube_engine_client";var h=process.env.PROCESSCUBE_ENGINE_URL??"http://localhost:10560",n=new T(h);async function r(){try{return i()}catch{return}}async function u(e){let t=await r();return(await n.processInstances.query({processInstanceId:e},{identity:t,includeXml:!0})).processInstances[0]}async function I(e,t={sortSettings:{sortBy:b.FlowNodeInstances.FlowNodeInstanceSortableColumns.createdAt,sortDir:"ASC"}}){return(await n.flowNodeInstances.query({processInstanceId:e},{...t,identity:t.identity??await r()})).flowNodeInstances}async function l(e){let t=await r();return(await n.flowNodeInstances.query({triggeredByFlowNodeInstance:e},{identity:t})).flowNodeInstances}async function f(e,t,s){let o=await r();await n.processInstances.retryProcessInstance(e,{flowNodeInstanceId:t,newStartToken:s,identity:o})}async function m(e){let t=await r();await n.processInstances.terminateProcessInstance(e,t)}async function w(...e){await n.manualTasks.finishManualTask(...e)}async function g(...e){await n.userTasks.finishUserTask(...e)}async function P(...e){await n.untypedTasks.finishTask(...e)}async function E(){try{return i()}catch{return}}var Q=async(e,t)=>{let s=await E();t==="bpmn:UserTask"?await g(e,{},s):t==="bpmn:ManualTask"?await w(e,s):t==="bpmn:Task"?await P(e,s):console.error(`[@5minds/processcube_app_sdk:handlePlay] Unsupported flow node type: ${t}`)},z=async e=>{await m(e)},J=async(e,t,s)=>{await f(e,t,s)},K=async e=>u(e),V=async e=>I(e,{sortSettings:{sortBy:C.FlowNodeInstances.FlowNodeInstanceSortableColumns.createdAt,sortDir:"DESC"}}),W=async e=>l(e);export{Q as finishTask,V as getFlowNodeInstances,K as getProcessInstance,W as getTriggeredFlowNodeInstances,J as retryProcess,z as terminateProcess};
|