@5minds/processcube_app_sdk 6.1.0-develop-669342-lvuni3m2 → 6.1.0-develop-357bb0-lvz37jwl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -4
- package/build/client/components/bpmnViewerComponent/bpmnViewer.css +1 -0
- package/build/client/components/bpmnViewerComponent/bpmnViewer.d.ts +34 -0
- package/build/client/components/bpmnViewerComponent/bpmnViewerOverlayCreator.d.ts +43 -0
- package/build/client/components/bpmnViewerComponent/executionCount.d.ts +5 -0
- package/build/client/components/bpmnViewerComponent/flowNodeButtonArea.d.ts +9 -0
- package/build/client/components/bpmnViewerComponent/flowNodeColorArea.d.ts +9 -0
- package/build/client/components/bpmnViewerComponent/flowNodeInfoComponent.d.ts +6 -0
- package/build/client/components/bpmnViewerComponent/flowNodeOverlay.d.ts +11 -0
- package/build/client/components/bpmnViewerComponent/gotoButton.d.ts +5 -0
- package/build/client/components/bpmnViewerComponent/index.d.ts +7 -0
- package/build/client/components/bpmnViewerComponent/playButton.d.ts +5 -0
- package/build/client/components/bpmnViewerComponent/retryButton.d.ts +7 -0
- package/build/client/index.cjs +8 -8
- package/build/client/index.css +1 -0
- package/build/client/index.d.ts +1 -0
- package/build/client/index.mjs +7 -7
- package/build/server/index.cjs +1 -1
- package/build/server/index.mjs +2 -2
- package/build/server/lib/ProcessInstanceFunctions.d.ts +4 -0
- package/package.json +10 -2
package/build/client/index.mjs
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
"use client";import"client-only";import{useRouter as ee}from"next/navigation";import ae from"react";function we({href:e,children:d}){console.warn("The DynamicLink component is deprecated. Please use the NextJS Link component instead.");let o=ee();return ae.createElement("a",{href:e,onClick:a=>{a.preventDefault(),o.replace(e),o.refresh()}},d)}import p,{Fragment as L,forwardRef as ie,useRef as W}from"react";import*as U from"react-is";import le from"semver/functions/gt";import me from"semver/functions/prerelease";import ce from"semver/functions/satisfies";import{mapUserTask as ke}from"../common/index.mjs";function u(...e){return e.filter(Boolean).join(" ")}import{DataModels as ne}from"@5minds/processcube_engine_sdk";import y from"react";function k(e){if(e!=null&&e.trim()!=="")try{return JSON.parse(e)}catch{return null}return null}function P(e,d){let{formField:o}=e,a=`${o.id}-hint`,s=k(o.customForm);return y.createElement("div",{className:"app-sdk-relative app-sdk-flex app-sdk-items-start"},y.createElement("div",{className:"app-sdk-flex app-sdk-h-5 app-sdk-items-center"},y.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:e.state&&e.state!=="false"||o.defaultValue==="true",id:o.id,name:o.id,"aria-describedby":s?.hint?a:void 0,"data-form-field-type":"boolean"})),y.createElement("div",{className:"app-sdk-ml-3 app-sdk-text-sm"},y.createElement("label",{className:"app-sdk-font-medium",htmlFor:o.id},o.label),s?.hint&&y.createElement("p",{className:"app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:a},s.hint)))}import oe from"react";function E(e,d){return oe.createElement("p",{className:"app-sdk-text-sm"},e.formField.label)}import g from"react";function M(e,d){let{formField:o}=e,a=`${o.id}-hint`,s=k(o.customForm);re(o.defaultValue)||console.warn(`[@5minds/processcube_app_sdk:DynamicUi] Invalid default value for date field "${o.id}"`);let r=e.state||o.defaultValue?.toString();return g.createElement("div",null,g.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:o.id},o.label),g.createElement("div",{className:"app-sdk-mt-1"},g.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:r,id:o.id,name:o.id,"aria-describedby":a,"data-form-field-type":"date"})),s?.hint&&g.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:a},s?.hint))}function re(e){return new Date(e?.toString()).toString()!=="Invalid Date"}import x from"react";function w(e){return!Number.isNaN(Number(e?.toString()))}function V(e,d){let{formField:o}=e,a=`${o.id}-hint`,s=k(o.customForm);return w(o.defaultValue)||console.warn(`[@5minds/processcube_app_sdk:DynamicUi] Invalid default value for decimal field "${o.id}"`),x.createElement("div",null,x.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:o.id},o.label),x.createElement("div",{className:"app-sdk-mt-1"},x.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:"0.01",placeholder:s?.placeholder||"0.00",defaultValue:e.state||o.defaultValue?.toString(),id:o.id,name:o.id,"aria-describedby":a,"data-form-field-type":"decimal"})),s?.hint&&x.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:a},s?.hint))}import c from"react";function R({formField:e,state:d},o){let a=k(e.customForm),s=e.label,r=e.enumValues,i;switch(a?.displayAs){case"checkbox":let h;Array.isArray(d)&&d.length?h=d:h=(d||e.defaultValue?.toString())?.split(",")??[],i=c.createElement("fieldset",{id:e.id,className:"app-sdk-pl-0 app-sdk-pb-0 app-sdk-space-y-2","data-type":"checkbox","aria-describedby":a?.hint?`${e.id}-hint`:void 0,"data-form-field-type":"enum"},r?.map(t=>{let F=h.find(S=>S.trim()===t.id);return c.createElement("div",{key:t.id,className:"app-sdk-relative app-sdk-flex app-sdk-items-start"},c.createElement("div",{className:"app-sdk-flex app-sdk-h-5 app-sdk-items-center"},c.createElement("input",{type:"checkbox",defaultChecked:F,name:e.id,id:t.id,value:t.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"})),c.createElement("div",{className:"app-sdk-ml-3 app-sdk-text-sm"},c.createElement("label",{htmlFor:t.id,className:"app-sdk-font-medium app-sdk-text-[color:var(--asdk-dui-text-color)]"},t.name)))}));break;case"radio":i=c.createElement("fieldset",{id:e.id,className:"app-sdk-pl-0 app-sdk-pb-0 app-sdk-space-y-2","data-type":"radio","aria-describedby":a?.hint?`${e.id}-hint`:void 0,"data-form-field-type":"enum"},r?.map(t=>c.createElement("div",{key:t.id,className:"app-sdk-relative app-sdk-flex app-sdk-items-start"},c.createElement("div",{className:"app-sdk-flex app-sdk-h-5 app-sdk-items-center"},c.createElement("input",{type:"radio",defaultChecked:(d||e.defaultValue)==t.id,name:e.id,id:t.id,value:t.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"})),c.createElement("div",{className:"app-sdk-ml-3 app-sdk-text-sm"},c.createElement("label",{htmlFor:t.id,className:"app-sdk-font-medium app-sdk-text-[color:var(--asdk-dui-text-color)]"},t.name)))));break;default:let v=d||r?.find(t=>t.id===e.defaultValue)?.id||"";i=c.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:t=>t.target.dataset.value=t.target.value,"data-value":v,"aria-describedby":a?.hint?`${e.id}-hint`:void 0,"data-form-field-type":"enum",defaultValue:v},c.createElement("option",{value:""},!v&&a?.placeholder),r?.map(t=>c.createElement("option",{key:t.id,value:t.id},t.name)));break}let l=a?.hint?c.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)]"},a.hint):null;return c.createElement("div",null,c.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:e.id},s),i,l)}import C from"react";function O({formField:e},d){let o=k(e.customForm),a;switch(o?.style){case"heading_1":a=C.createElement("h1",{className:"app-sdk-text-2xl app-sdk-font-bold"},e.defaultValue?.toString()||e.label?.toString());break;case"heading_2":a=C.createElement("h2",{className:"app-sdk-text-xl app-sdk-font-bold"},e.defaultValue?.toString()||e.label?.toString());break;case"heading_3":a=C.createElement("h3",{className:"app-sdk-text-lg app-sdk-font-bold"},e.defaultValue?.toString()||e.label?.toString());break;default:a=C.createElement("h1",{className:"app-sdk-text-2xl app-sdk-font-bold"},e.defaultValue?.toString()||e.label?.toString());break}return C.createElement("div",{className:"app-sdk-header-form-field"},a)}import D from"react";function A({formField:e,state:d},o){let a=k(e.customForm);return w(e.defaultValue)||console.warn(`[@5minds/processcube_app_sdk:DynamicUi] Invalid default value for integer field "${e.id}"`),D.createElement("div",null,D.createElement("label",{htmlFor:e.id,className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium"},e.label),D.createElement("div",{className:"app-sdk-mt-1"},D.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:e.id,name:e.id,defaultValue:d||e.defaultValue?.toString(),placeholder:a?.placeholder??"0","aria-describedby":`${e.id}-hint`,"data-form-field-type":"integer"})),a?.hint&&D.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)]"},a.hint))}import de from"isomorphic-dompurify";import{marked as j}from"marked";import se from"react";import{useEffect as pe,useState as te}from"react";function B({formField:{defaultValue:e,label:d}},o){let[a,s]=te("");return pe(()=>{let r=j.parse(e?.toString()??d?.toString()??"",{renderer:new J,hooks:new $});s(r)},[e,d]),se.createElement("div",{className:u("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:a}})}var J=class extends j.Renderer{link(d,o,a){return super.link(d,o,a).replace("<a","<a target='_blank'")}html(d,o){let a=super.html(d,o);return a.startsWith("<a ")&&!a.includes("target=")?a.replace("<a ",'<a target="_blank" '):a}},$=class extends j.Hooks{postprocess(d){return de.sanitize(d,{ADD_ATTR:["target"]})}};import N from"react";function H({formField:e,state:d},o){let a=k(e.customForm),s=e.label,r=a?.multiline==="true"?"textarea":"input",i=N.createElement(r,{className:u(r==="input"?"app-sdk-form-input":"app-sdk-form-textarea","app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-shadow-sm focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] app-sdk-block app-sdk-w-full sm:app-sdk-text-sm app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] invalid:app-sdk-border-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-1 dark:app-sdk-border-solid dark:app-sdk-border-transparent app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] dark:focus:app-sdk-shadow-app-sdk-dark app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] dark:invalid:app-sdk-shadow-app-sdk-dark-invalid"),id:e.id,name:e.id,defaultValue:d||(e.defaultValue?.toString()??""),placeholder:a?.placeholder,"aria-describedby":a?.hint?`${e.id}-hint`:void 0,type:r==="input"?"text":void 0,rows:r==="textarea"?4:void 0,"data-form-field-type":"string"}),l=a?.hint?N.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)]"},a.hint):null;return N.createElement("div",null,N.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:e.id},s),N.createElement("div",{className:"app-sdk-mt-1"},i),l)}var X=(a=>(a.paragraph="paragraph",a.header="header",a.confirm="confirm",a))(X||{}),ya={...ne.FlowNodeInstances.UserTaskFormFieldType,...X},z={boolean:P,date:M,enum:R,long:A,number:V,string:H,paragraph:B,header:O,confirm:E};var ue=ce(p.version,">=18.0.0 <19",{includePrerelease:!0}),Y=me(p.version)==null,q=!Y&&le(p.version,"18.2.0")&&p.version.includes("canary"),K=class extends p.Component{};function $a(e){ue||console.warn(`[@5minds/processcube_app_sdk:DynamicUi] The React version is not supported!
|
|
2
|
-
Version: ${p.version}`);let{userTaskConfig:
|
|
1
|
+
"use client";import"client-only";import{useRouter as Fe}from"next/navigation";import Ne from"react";function so({href:e,children:a}){console.warn("The DynamicLink component is deprecated. Please use the NextJS Link component instead.");let t=Fe();return Ne.createElement("a",{href:e,onClick:o=>{o.preventDefault(),t.replace(e),t.refresh()}},a)}import Pe from"bpmn-js/lib/Viewer";import Ee from"diagram-js/lib/navigation/movecanvas";import Oe from"diagram-js/lib/navigation/zoomscroll";import J from"react";import Me from"react";import{createRoot as Te}from"react-dom/client";import{v4 as Ue}from"uuid";import Se from"@monaco-editor/react";import{Button as A,Divider as se,Modal as de,ModalBody as ie,ModalContent as pe,ModalFooter as le,ModalHeader as ce,useDisclosure as me}from"@nextui-org/react";import{useState as _e}from"react";function P(e){let a={width:30};return e.count<=1?null:React.createElement("div",{style:a,className:"bpmn-element-overlay__below-item bpmn-element-overlay__below-item--execution-count"},e.count)}function E(e){return React.createElement("div",{onClick:e.onClick,className:"bpmn-element-overlay__below-item bpmn-element-overlay__below-item--action"},React.createElement("div",{className:"action-icon"},React.createElement("svg",{width:"14px",height:"14px",viewBox:"0 0 512 512",version:"1.1",xmlns:"http://www.w3.org/2000/svg",fill:"#000000"},React.createElement("g",{id:"SVGRepo_bgCarrier",strokeWidth:"0"}),React.createElement("g",{id:"SVGRepo_tracerCarrier",strokeLinecap:"round",strokeLinejoin:"round"}),React.createElement("g",{id:"SVGRepo_iconCarrier"}," ",React.createElement("title",null,"open-external")," ",React.createElement("g",{id:"Page-1",stroke:"none",strokeWidth:"1",fill:"none",fillRule:"evenodd"}," ",React.createElement("g",{id:"icon",fill:"#FFFFFF",transform:"translate(85.333333, 64.000000)"}," ",React.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"}," ")," ")," ")," "))),React.createElement("div",{className:"action-icon-hovered"},React.createElement("svg",{width:"14px",height:"14px",viewBox:"0 0 512 512",version:"1.1",xmlns:"http://www.w3.org/2000/svg",fill:"#000000"},React.createElement("g",{id:"SVGRepo_bgCarrier",strokeWidth:"0"}),React.createElement("g",{id:"SVGRepo_tracerCarrier",strokeLinecap:"round",strokeLinejoin:"round"}),React.createElement("g",{id:"SVGRepo_iconCarrier"}," ",React.createElement("title",null,"goto process")," ",React.createElement("g",{id:"Page-1",stroke:"none",strokeWidth:"1",fill:"none",fillRule:"evenodd"}," ",React.createElement("g",{id:"icon",fill:"#FFFFFF",transform:"translate(85.333333, 64.000000)"}," ",React.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"}," ")," ")," ")," "))))}function O(e){return React.createElement("div",{onClick:e.onClick,className:"bpmn-element-overlay__below-item bpmn-element-overlay__below-item--action"},React.createElement("div",{className:"action-icon"},React.createElement("svg",{width:"14px",height:"14px",viewBox:"0 0 24 24",color:"white",fill:"none",xmlns:"http://www.w3.org/2000/svg"},React.createElement("g",{id:"Media / Play",color:"white"},React.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"})))),React.createElement("div",{className:"action-icon-hovered"},React.createElement("svg",{width:"14px",height:"14px",viewBox:"0 0 24 24",color:"white",fill:"white",xmlns:"http://www.w3.org/2000/svg"},React.createElement("g",{id:"Media / Play",color:"white"},React.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"})))))}function L(e){return React.createElement("div",{onClick:e.onClick,className:"bpmn-element-overlay__below-item bpmn-element-overlay__below-item--action"},React.createElement("div",{className:"action-icon"},React.createElement("svg",{width:"14px",height:"14px",viewBox:"0 0 16 16",xmlns:"http://www.w3.org/2000/svg"},React.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"}))),React.createElement("div",{className:"action-icon-hovered"},React.createElement("svg",{width:"14px",height:"14px",viewBox:"0 0 16 16",xmlns:"http://www.w3.org/2000/svg"},React.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 R(e){let a={marginTop:"7px"},t=e.flowNode,o=!t.IsGateway&&t.ProcessInstanceState!=="running"&&t.ProcessInstanceState!=="finished",n=t.IsCallActivity||(t.IsEventReceiver||t.IsEventSender)&&t.LinkedProcessInstanceId,r=(t.IsUserTask||t.IsManualTask)&&t.State==="suspended";return React.createElement("div",{className:"flownode-overlay",style:a},React.createElement("div",{className:"bpmn-element-overlay__below"},o&&React.createElement(L,{onClick:e.onRetryClick,flowNode:e.flowNode}),React.createElement(P,{count:e.flowNode.ExecutionCount}),n&&React.createElement(E,{onClick:e.onGotoClick}),r&&React.createElement(O,{onClick:e.onPlayClick})))}function V(e){let a={width:e.width,height:e.height},t="",o={width:e.width,height:e.height};return e.flowNode.IsGateway?(o.height*=.7,o.width*=.7,t="bpmn-element-overlay-backdrop--gateway"):e.flowNode.IsEvent&&(t="bpmn-element-overlay-backdrop--rounded"),React.createElement("div",{onClick:e.onClick,className:"bpmn-element-overlay-backdrop cursor-pointer",style:a},React.createElement("div",{className:`flow-node-${e.flowNode.State}-state-overlay ${t}`,style:o}))}import re from"@monaco-editor/react";import{Divider as ne}from"@nextui-org/react";import{useEffect as xe}from"react";import{createRoot as Ce}from"react-dom/client";import Ie from"react-markdown";import De from"remark-gfm";function B(e){function a(t){setTimeout(()=>{t.getAction("editor.action.formatDocument").run(),t.updateOptions({readOnly:!0})},300)}return xe(()=>{let t=React.createElement(Ie,{remarkPlugins:[De]},e.flowNode.Documentation),o=document.getElementById("markdown-container");if(o){let n=o.attachShadow({mode:"open"});Ce(n).render(t)}},[]),React.createElement(React.Fragment,null,React.createElement(ne,{className:"my-2"}),React.createElement("div",{className:"flex-row"},React.createElement("div",{className:"token-area"},React.createElement("p",null,"Start Token:"),React.createElement(re,{className:"monaco-editor",height:"25vh",defaultLanguage:"json",theme:"vs-light",defaultValue:JSON.stringify(e.flowNode.CurrentStartToken,null,2),onMount:a,options:{formatOnPaste:!0,formatOnType:!0,minimap:{enabled:!1},lineNumbers:"off"}}),React.createElement(ne,{className:"my-2"}),React.createElement("p",null,"End Token:"),React.createElement(re,{className:"monaco-editor",height:"25vh",defaultLanguage:"json",theme:"vs-light",defaultValue:JSON.stringify(e.flowNode.CurrentEndToken,null,2),onMount:a,options:{formatOnPaste:!0,formatOnType:!0,minimap:{enabled:!1},lineNumbers:"off"}})),React.createElement("div",{className:"documentation-area"},React.createElement("p",null,"Dokumentation:"),React.createElement("div",{id:"markdown-container"}))))}function j(e){let a=me(),t=me(),[o,n]=_e(JSON.stringify(e.flowNode.CurrentStartToken));function r(d){setTimeout(()=>{d.getAction("editor.action.formatDocument").run()},300)}let s={width:e.width,height:e.height+10};return React.createElement(React.Fragment,null,React.createElement("div",{style:s},React.createElement(V,{onClick:t.onOpen,...e}),React.createElement(R,{onRetryClick:a.onOpen,onGotoClick:()=>e.gotoProcessAction(e.flowNode.LinkedProcessInstanceId??""),onPlayClick:()=>e.gotoManualOrUserTaskAction(e.flowNode.ProcessInstanceId,e.flowNode.Id),flowNode:e.flowNode})),React.createElement(de,{isOpen:a.isOpen,onOpenChange:a.onOpenChange},React.createElement(pe,null,d=>React.createElement(React.Fragment,null,React.createElement(ce,{className:"flex flex-col gap-1"},"Confirm Retry"),React.createElement(ie,null,React.createElement(se,{className:"my-2"}),React.createElement("p",null,"Are you sure you want to retry process instance ",e.flowNode.CurrentFlowNodeInstanceId,"?"),React.createElement(se,{className:"my-2"}),React.createElement(Se,{className:"monaco-editor",height:"25vh",defaultLanguage:"json",theme:"vs-light",defaultValue:JSON.stringify(e.flowNode.CurrentStartToken,null,2),onChange:(k,l)=>n(k??""),onMount:r,options:{formatOnPaste:!0,formatOnType:!0,minimap:{enabled:!1},lineNumbers:"off"}})),React.createElement(le,null,React.createElement(A,{color:"warning",variant:"light",onPress:d},"Close"),React.createElement(A,{color:"primary",onPress:()=>{e.retryAction(e.flowNode.ProcessInstanceId,e.flowNode.CurrentFlowNodeInstanceId,JSON.parse(o)),d()}},"Retry"))))),React.createElement(de,{size:"4xl",isOpen:t.isOpen,onOpenChange:t.onOpenChange},React.createElement(pe,null,d=>React.createElement(React.Fragment,null,React.createElement(ce,{className:"flex flex-col gap-1"},"FlowNode: ",e.flowNode.Name??e.flowNode.Id),React.createElement(ie,null,React.createElement(B,{flowNode:e.flowNode})),React.createElement(le,null,React.createElement(A,{color:"primary",onPress:d},"Close"))))))}var G=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 a=this.flowNodeInstances.at(-1);if(this.IsCallActivity)return a.childProcessInstanceId;if(this.IsEventReceiver)return a?.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(a,t,o,n){this.id=a,this.flowNodeInstances=[],this.processInstanceState=t,this.documentation=o,this.triggeredFlowNodeInstance=n,this.type=""}addFlowNodeInstance(a){this.flowNodeInstances.push(a),this.type=a.flowNodeType}},w=class{canvas;overlays;elementRegistry;overlayIds;overlayRoots;constructor(a){this.canvas=a.get("canvas"),this.overlays=a.get("overlays"),this.elementRegistry=a.get("elementRegistry"),this.overlayIds=[],this.overlayRoots={}}createOverlaysFlowNodeInstances(a,t,o,n,r,s){let d=this.getExecutedFlowNodes(t,a,o);this.overlayIds=[];for(let l of d){let i=this.elementRegistry.get(l.Id);this.getOrCreateOverlayRoot(l)?.render(Me.createElement(j,{flowNode:l,width:i.width,height:i.height,retryAction:n,gotoProcessAction:r,gotoManualOrUserTaskAction:s})),this.setSequenceFlowsColor(i,d)}let k=[];for(let l in this.overlayRoots)d.find(v=>v.Id===l)||k.push(l);k.forEach(l=>{let i=this.elementRegistry.get(l);this.removeSequenceFlowsColor(i),this.overlayRoots[l].unmount(),delete this.overlayRoots[l]})}getOrCreateOverlayRoot(a){if(a.Id in this.overlayRoots)return this.overlayRoots[a.Id];let t=`bpmn-element-overlay-${Ue()}`,o=`<div id="${t}"></div>`,n=this.overlays.add(a.Id,{position:{top:0,left:0},html:o});this.overlayIds.push(n);let r=document.querySelector(`#${t}`);if(r){let s=Te(r);return this.overlayRoots[a.Id]=s,s}}getExecutedFlowNodes(a,t,o){let n=[],r={};for(let s of o)s.triggeredByFlowNodeInstance&&(r[s.triggeredByFlowNodeInstance?.flowNodeInstanceId]=s);for(let s of a){let d=n.find(k=>k.Id===s.flowNodeId);if(!d){let k=this.elementRegistry.get(s.flowNodeId),l=k.businessObject.documentation?k.businessObject.documentation[0].text:"";d=new G(s.flowNodeId,t,l,r[s.flowNodeInstanceId]),n.push(d)}d.addFlowNodeInstance(s)}return n}setSequenceFlowsColor(a,t){if(a&&a.businessObject.incoming)for(let o of a.businessObject.incoming)t.find(r=>r.Id===o.sourceRef?.id)&&this.canvas.addMarker(o.id,"connection-done")}removeSequenceFlowsColor(a){if(a&&a.businessObject.incoming){for(let t of a.businessObject.incoming)this.canvas.removeMarker(t.id,"connection-done");if(a.businessObject.outgoing)for(let t of a.businessObject.outgoing)this.canvas.removeMarker(t.id,"connection-done")}}};var ue=class extends J.Component{containerRef;bpmnViewer;bpmnViewerOverlayCreator;constructor(a){super(a),this.state={diagramXML:""},this.containerRef=J.createRef()}componentDidMount(){let{diagramXML:a,options:t}=this.props,o=this.containerRef.current;if(this.bpmnViewer=new Pe({container:o,height:t?.height??600,bpmnRenderer:{defaultFillColor:t?.fillColor,defaultStrokeColor:t?.strokeColor},additionalModules:[Oe,Ee]}),this.bpmnViewerOverlayCreator=new w(this.bpmnViewer),a)return this.displayDiagram(a)}componentWillUnmount(){this.bpmnViewer.destroy()}componentDidUpdate(a,t){let{props:o,state:n}=this,r=o.diagramXML||n.diagramXML,s=a.diagramXML||t.diagramXML;if(r&&r!==s)return this.displayDiagram(r);this.bpmnViewerOverlayCreator.createOverlaysFlowNodeInstances(this.props.processInstanceState,this.props.flowNodeInstances,o.flowNodeInstancesTriggeredByThisProcessInstance,o.retryAction,o.gotoProcessAction,o.gotoManualOrUserTaskAction)}displayDiagram(a){this.bpmnViewer.importXML(a).then(()=>{let t=this.bpmnViewer.get("canvas"),o=t.viewbox(),n={x:o.outer.width/2,y:o.outer.height/2};t.zoom("fit-viewport",n),this.bpmnViewerOverlayCreator.createOverlaysFlowNodeInstances(this.props.processInstanceState,this.props.flowNodeInstances,this.props.flowNodeInstancesTriggeredByThisProcessInstance,this.props.retryAction,this.props.gotoProcessAction,this.props.gotoManualOrUserTaskAction)})}render(){return J.createElement("div",{className:this.props.className,ref:this.containerRef})}};import p,{Fragment as te,forwardRef as Je,useRef as he}from"react";import*as S from"react-is";import $e from"semver/functions/gt";import He from"semver/functions/prerelease";import Xe from"semver/functions/satisfies";import{mapUserTask as qe}from"../common/index.mjs";function h(...e){return e.filter(Boolean).join(" ")}import{DataModels as Ge}from"@5minds/processcube_engine_sdk";import b from"react";function f(e){if(e!=null&&e.trim()!=="")try{return JSON.parse(e)}catch{return null}return null}function $(e,a){let{formField:t}=e,o=`${t.id}-hint`,n=f(t.customForm);return b.createElement("div",{className:"app-sdk-relative app-sdk-flex app-sdk-items-start"},b.createElement("div",{className:"app-sdk-flex app-sdk-h-5 app-sdk-items-center"},b.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:e.state&&e.state!=="false"||t.defaultValue==="true",id:t.id,name:t.id,"aria-describedby":n?.hint?o:void 0,"data-form-field-type":"boolean"})),b.createElement("div",{className:"app-sdk-ml-3 app-sdk-text-sm"},b.createElement("label",{className:"app-sdk-font-medium",htmlFor:t.id},t.label),n?.hint&&b.createElement("p",{className:"app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:o},n.hint)))}import Le from"react";function H(e,a){return Le.createElement("p",{className:"app-sdk-text-sm"},e.formField.label)}import F from"react";function X(e,a){let{formField:t}=e,o=`${t.id}-hint`,n=f(t.customForm);Re(t.defaultValue)||console.warn(`[@5minds/processcube_app_sdk:DynamicUi] Invalid default value for date field "${t.id}"`);let r=e.state||t.defaultValue?.toString();return F.createElement("div",null,F.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:t.id},t.label),F.createElement("div",{className:"app-sdk-mt-1"},F.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:r,id:t.id,name:t.id,"aria-describedby":o,"data-form-field-type":"date"})),n?.hint&&F.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:o},n?.hint))}function Re(e){return new Date(e?.toString()).toString()!=="Invalid Date"}import N from"react";function D(e){return!Number.isNaN(Number(e?.toString()))}function q(e,a){let{formField:t}=e,o=`${t.id}-hint`,n=f(t.customForm);return D(t.defaultValue)||console.warn(`[@5minds/processcube_app_sdk:DynamicUi] Invalid default value for decimal field "${t.id}"`),N.createElement("div",null,N.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:t.id},t.label),N.createElement("div",{className:"app-sdk-mt-1"},N.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:"0.01",placeholder:n?.placeholder||"0.00",defaultValue:e.state||t.defaultValue?.toString(),id:t.id,name:t.id,"aria-describedby":o,"data-form-field-type":"decimal"})),n?.hint&&N.createElement("p",{className:"app-sdk-mt-2 app-sdk-text-sm app-sdk-text-[color:var(--asdk-dui-formfield-hint-text-color)]",id:o},n?.hint))}import u from"react";function z({formField:e,state:a},t){let o=f(e.customForm),n=e.label,r=e.enumValues,s;switch(o?.displayAs){case"checkbox":let k;Array.isArray(a)&&a.length?k=a:k=(a||e.defaultValue?.toString())?.split(",")??[],s=u.createElement("fieldset",{id:e.id,className:"app-sdk-pl-0 app-sdk-pb-0 app-sdk-space-y-2","data-type":"checkbox","aria-describedby":o?.hint?`${e.id}-hint`:void 0,"data-form-field-type":"enum"},r?.map(i=>{let v=k.find(M=>M.trim()===i.id);return u.createElement("div",{key:i.id,className:"app-sdk-relative app-sdk-flex app-sdk-items-start"},u.createElement("div",{className:"app-sdk-flex app-sdk-h-5 app-sdk-items-center"},u.createElement("input",{type:"checkbox",defaultChecked:v,name:e.id,id:i.id,value:i.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"})),u.createElement("div",{className:"app-sdk-ml-3 app-sdk-text-sm"},u.createElement("label",{htmlFor:i.id,className:"app-sdk-font-medium app-sdk-text-[color:var(--asdk-dui-text-color)]"},i.name)))}));break;case"radio":s=u.createElement("fieldset",{id:e.id,className:"app-sdk-pl-0 app-sdk-pb-0 app-sdk-space-y-2","data-type":"radio","aria-describedby":o?.hint?`${e.id}-hint`:void 0,"data-form-field-type":"enum"},r?.map(i=>u.createElement("div",{key:i.id,className:"app-sdk-relative app-sdk-flex app-sdk-items-start"},u.createElement("div",{className:"app-sdk-flex app-sdk-h-5 app-sdk-items-center"},u.createElement("input",{type:"radio",defaultChecked:(a||e.defaultValue)==i.id,name:e.id,id:i.id,value:i.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"})),u.createElement("div",{className:"app-sdk-ml-3 app-sdk-text-sm"},u.createElement("label",{htmlFor:i.id,className:"app-sdk-font-medium app-sdk-text-[color:var(--asdk-dui-text-color)]"},i.name)))));break;default:let l=a||r?.find(i=>i.id===e.defaultValue)?.id||"";s=u.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:i=>i.target.dataset.value=i.target.value,"data-value":l,"aria-describedby":o?.hint?`${e.id}-hint`:void 0,"data-form-field-type":"enum",defaultValue:l},u.createElement("option",{value:""},!l&&o?.placeholder),r?.map(i=>u.createElement("option",{key:i.id,value:i.id},i.name)));break}let d=o?.hint?u.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)]"},o.hint):null;return u.createElement("div",null,u.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:e.id},n),s,d)}import x from"react";function W({formField:e},a){let t=f(e.customForm),o;switch(t?.style){case"heading_1":o=x.createElement("h1",{className:"app-sdk-text-2xl app-sdk-font-bold"},e.defaultValue?.toString()||e.label?.toString());break;case"heading_2":o=x.createElement("h2",{className:"app-sdk-text-xl app-sdk-font-bold"},e.defaultValue?.toString()||e.label?.toString());break;case"heading_3":o=x.createElement("h3",{className:"app-sdk-text-lg app-sdk-font-bold"},e.defaultValue?.toString()||e.label?.toString());break;default:o=x.createElement("h1",{className:"app-sdk-text-2xl app-sdk-font-bold"},e.defaultValue?.toString()||e.label?.toString());break}return x.createElement("div",{className:"app-sdk-header-form-field"},o)}import C from"react";function Z({formField:e,state:a},t){let o=f(e.customForm);return D(e.defaultValue)||console.warn(`[@5minds/processcube_app_sdk:DynamicUi] Invalid default value for integer field "${e.id}"`),C.createElement("div",null,C.createElement("label",{htmlFor:e.id,className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium"},e.label),C.createElement("div",{className:"app-sdk-mt-1"},C.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:e.id,name:e.id,defaultValue:a||e.defaultValue?.toString(),placeholder:o?.placeholder??"0","aria-describedby":`${e.id}-hint`,"data-form-field-type":"integer"})),o?.hint&&C.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)]"},o.hint))}import Ve from"isomorphic-dompurify";import{marked as Q}from"marked";import Be from"react";import{useEffect as Ae,useState as je}from"react";function ee({formField:{defaultValue:e,label:a}},t){let[o,n]=je("");return Ae(()=>{let r=Q.parse(e?.toString()??a?.toString()??"",{renderer:new K,hooks:new Y});n(r)},[e,a]),Be.createElement("div",{className:h("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}})}var K=class extends Q.Renderer{link(a,t,o){return super.link(a,t,o).replace("<a","<a target='_blank'")}html(a,t){let o=super.html(a,t);return o.startsWith("<a ")&&!o.includes("target=")?o.replace("<a ",'<a target="_blank" '):o}},Y=class extends Q.Hooks{postprocess(a){return Ve.sanitize(a,{ADD_ATTR:["target"]})}};import I from"react";function oe({formField:e,state:a},t){let o=f(e.customForm),n=e.label,r=o?.multiline==="true"?"textarea":"input",s=I.createElement(r,{className:h(r==="input"?"app-sdk-form-input":"app-sdk-form-textarea","app-sdk-text-app-sdk-inherit app-sdk-border app-sdk-py-2 app-sdk-px-3 app-sdk-shadow-sm focus:app-sdk-ring-[color:var(--asdk-dui-focus-color)] focus:app-sdk-border-[color:var(--asdk-dui-focus-color)] app-sdk-block app-sdk-w-full sm:app-sdk-text-sm app-sdk-rounded-md app-sdk-border-[color:var(--asdk-dui-border-color)] invalid:app-sdk-border-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-[color:var(--asdk-dui-formfield-invalid-color)] invalid:app-sdk-ring-1 dark:app-sdk-border-solid dark:app-sdk-border-transparent app-sdk-bg-[color:var(--asdk-dui-formfield-background-color)] dark:focus:app-sdk-shadow-app-sdk-dark app-sdk-placeholder-[color:var(--asdk-dui-formfield-placeholder-text-color)] dark:invalid:app-sdk-shadow-app-sdk-dark-invalid"),id:e.id,name:e.id,defaultValue:a||(e.defaultValue?.toString()??""),placeholder:o?.placeholder,"aria-describedby":o?.hint?`${e.id}-hint`:void 0,type:r==="input"?"text":void 0,rows:r==="textarea"?4:void 0,"data-form-field-type":"string"}),d=o?.hint?I.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)]"},o.hint):null;return I.createElement("div",null,I.createElement("label",{className:"app-sdk-block app-sdk-text-sm app-sdk-font-medium",htmlFor:e.id},n),I.createElement("div",{className:"app-sdk-mt-1"},s),d)}var ke=(o=>(o.paragraph="paragraph",o.header="header",o.confirm="confirm",o))(ke||{}),At={...Ge.FlowNodeInstances.UserTaskFormFieldType,...ke},fe={boolean:$,date:X,enum:z,long:Z,number:q,string:oe,paragraph:ee,header:W,confirm:H};var ze=Xe(p.version,">=18.0.0 <19",{includePrerelease:!0}),ye=He(p.version)==null,ge=!ye&&$e(p.version,"18.2.0")&&p.version.includes("canary"),ve=class extends p.Component{};function da(e){ze||console.warn(`[@5minds/processcube_app_sdk:DynamicUi] The React version is not supported!
|
|
2
|
+
Version: ${p.version}`);let{userTaskConfig:a}=e.task,{formFields:t}=a,o=he(),n=he(null),r=new Map(t.map(c=>[c.id,{ref:p.createRef()}])),s=t.filter(c=>c.type==="confirm");s.length>1&&console.warn(`[@5minds/processcube_app_sdk:DynamicUi] Warning while rendering UserTask "${e.task.flowNodeId}"!
|
|
3
3
|
The UserTask has more than one confirm form field. Please use only one confirm form field per User Task.
|
|
4
4
|
|
|
5
|
-
The first confirm form field is used for rendering.`);let
|
|
5
|
+
The first confirm form field is used for rendering.`);let d=s.length===1?s[0]:null,k={...fe,...e.customFieldComponents?e.customFieldComponents:{}},l=c=>{let m=eo(c,t,r);e.onSubmit(m,c,qe(e.task))};function i(c){let m=c.target;o.current!=null&&window.clearTimeout(o.current),o.current=window.setTimeout(()=>{if(o.current=void 0,n.current==null)return;let y=new FormData(n.current),T=Qe(y,r);e.onStateChange?.(m.value,m.name,T)},100)}let v=h("app-sdk-default-styles app-sdk-mx-auto app-sdk-block app-sdk-h-full app-sdk-min-h-[200px] app-sdk-rounded-lg app-sdk-shadow-lg app-sdk-shadow-[color:var(--asdk-dui-shadow-color)] sm:app-sdk-w-full sm:app-sdk-max-w-lg",e.classNames?.wrapper??"",e.className??""),M=e.darkMode||v.split(" ").includes("dark"),be={...ge&&{action:l},...!ge&&ye&&{onSubmit:c=>{let m=new FormData(n.current),y=c.nativeEvent.submitter;m.has(y.name)||m.append(y.name,y.value),l(m)},method:"dialog"}};return p.createElement("div",{className:M?`dark app-sdk-dark ${v}`:h(...v.split(" ").filter(c=>c!=="dark"&&c!=="app-sdk-dark")),"data-dynamic-ui":!0,"data-blablabl":!0},p.createElement("form",{ref:n,className:h("app-sdk-flex app-sdk-max-h-full app-sdk-flex-col app-sdk-rounded-lg app-sdk-bg-[color:var(--asdk-dui-background-color)] app-sdk-text-[color:var(--asdk-dui-text-color)] app-sdk-shadow-lg app-sdk-shadow-[color:var(--asdk-dui-shadow-color)]",e.classNames?.base??""),"data-user-task-id":e.task.flowNodeId,"data-user-task-instance-id":e.task.flowNodeInstanceId,onChange:i,...be},p.createElement("header",{className:h("app-sdk-px-4 app-sdk-pb-3 app-sdk-pt-4 sm:app-sdk-px-6",e.classNames?.header?e.classNames.header:"")},p.createElement(Ze,{title:e.title??e.task.flowNodeName??"User Task",headerComponent:e.headerComponent})),p.createElement("section",{className:h("app-sdk-overflow-y-auto app-sdk-px-4 app-sdk-py-3 sm:app-sdk-px-6",e.classNames?.body??"")},p.createElement("div",{className:"app-sdk-flex app-sdk-flex-col app-sdk-space-y-6 dark:[color-scheme:dark]"},t.map(c=>{let m=k[c.type];if(!m)return null;if(!S.isValidElementType(m))return console.warn(`[@5minds/processcube_app_sdk:DynamicUi] The given DynamicUiFormFieldComponent is not a valid React Element Type.
|
|
6
6
|
|
|
7
|
-
FormField: ${JSON.stringify(
|
|
7
|
+
FormField: ${JSON.stringify(c,null,2)}
|
|
8
8
|
DynamicUiFormFieldComponent: ${m.toString()}
|
|
9
9
|
|
|
10
|
-
Rendering 'null' as fallback`),null;let
|
|
10
|
+
Rendering 'null' as fallback`),null;let y;if(ae(m))Ke(m),y=m;else{let U=m;m.length===1&&(U=(we,ao)=>p.createElement(m,{...we})),Ye(U),y=Je(U)}let T=r.get(c.id)?.ref;return p.createElement(te,{key:c.id},p.createElement(y,{ref:T,formField:c,state:e.state?.[c.id]}))}))),p.createElement("footer",{className:h("app-sdk-rounded-b-lg app-sdk-bg-[color:var(--asdk-dui-footer-background-color)] app-sdk-px-4 app-sdk-py-3 sm:app-sdk-px-6",e.classNames?.footer??"")},p.createElement(We,{confirmFormField:d}))))}function We(e){let{confirmFormField:a}=e,t=p.createElement(te,null,p.createElement("button",{type:"submit",className:"app-sdk-cursor-pointer disabled:app-sdk-cursor-default app-sdk-inline-flex app-sdk-w-full app-sdk-justify-center app-sdk-rounded-md app-sdk-border app-sdk-border-transparent app-sdk-bg-[color:var(--asdk-dui-footer-continue-button-background-color)] app-sdk-px-3 app-sdk-py-2 app-sdk-text-base app-sdk-font-medium app-sdk-leading-4 app-sdk-text-[color:var(--asdk-dui-footer-continue-button-text-color)] app-sdk-shadow-sm hover:app-sdk-bg-[color:var(--asdk-dui-footer-continue-button-background-hover-color)] focus:app-sdk-outline-none focus:app-sdk-ring-2 focus:app-sdk-ring-[color:var(--asdk-dui-footer-continue-button-focus-outline-color)] focus:app-sdk-ring-offset-2 sm:app-sdk-ml-2 sm:app-sdk-w-auto sm:app-sdk-text-sm "},"OK"));if(a){let o=f(a.customForm);t=p.createElement(te,null,p.createElement("button",{type:"submit",name:a.id,className:"app-sdk-cursor-pointer disabled:app-sdk-cursor-default app-sdk-inline-flex app-sdk-w-full app-sdk-justify-center app-sdk-rounded-md app-sdk-border app-sdk-border-transparent app-sdk-bg-[color:var(--asdk-dui-footer-continue-button-background-color)] app-sdk-px-3 app-sdk-py-2 app-sdk-text-base app-sdk-font-medium app-sdk-leading-4 app-sdk-text-[color:var(--asdk-dui-footer-continue-button-text-color)] app-sdk-shadow-sm hover:app-sdk-bg-[color:var(--asdk-dui-footer-continue-button-background-hover-color)] focus:app-sdk-outline-none focus:app-sdk-ring-2 focus:app-sdk-ring-[color:var(--asdk-dui-footer-continue-button-focus-outline-color)] focus:app-sdk-ring-offset-2 sm:app-sdk-ml-2 sm:app-sdk-w-auto sm:app-sdk-text-sm ",value:"true"},o?.confirmButtonText??"Confirm"),p.createElement("button",{type:"submit",name:a.id,className:"app-sdk-cursor-pointer disabled:app-sdk-cursor-default app-sdk-inline-flex app-sdk-w-full app-sdk-justify-center app-sdk-rounded-md app-sdk-border app-sdk-border-[color:var(--asdk-dui-border-color)] app-sdk-bg-[color:var(--asdk-dui-footer-decline-button-background-color)] app-sdk-px-3 app-sdk-py-2 app-sdk-text-base app-sdk-font-medium app-sdk-leading-4 app-sdk-text-[color:var(--asdk-dui-footer-decline-button-text-color)] app-sdk-shadow-sm hover:app-sdk-bg-[color:var(--asdk-dui-footer-decline-button-background-hover-color)] focus:app-sdk-outline-none focus:app-sdk-ring-2 focus:app-sdk-ring-[color:var(--asdk-dui-footer-decline-button-focus-outline-color)] focus:app-sdk-ring-offset-2 sm:app-sdk-ml-2 sm:app-sdk-w-auto sm:app-sdk-text-sm",value:"false"},o?.declineButtonText??"Decline"))}return p.createElement("div",{className:"app-sdk-space-y-2 sm:app-sdk-flex sm:app-sdk-flex-row-reverse sm:-app-sdk-space-x-2 sm:app-sdk-space-y-0"},t)}function Ze(e){return p.createElement("div",{className:"app-sdk-flex app-sdk-space-x-3"},p.createElement("div",{className:"app-sdk-flex-1"},p.createElement("h3",{id:"headline-title",className:"app-sdk-text-lg app-sdk-font-medium app-sdk-leading-6 app-sdk-text-[color:var(--asdk-dui-header-text-color)]"},e.title)),p.createElement("div",{className:"app-sdk-flex app-sdk-self-center"},e.headerComponent))}function ae(e){return e?.prototype?.isReactComponent!=null}function Ke(e){if(!(S.isValidElementType(e)&&ae(e)))throw new Error("Expected Element to be a React Component")}function Ye(e){if(!(S.isValidElementType(e)&&!ae(e)))throw new Error("Expected Element to be a functional Component")}function Qe(e,a){let t={};return e.forEach((o,n)=>{if(o 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. Add a getState Function to your component to return a JSON Primitive value as state.
|
|
11
11
|
|
|
12
|
-
FormField: ${
|
|
12
|
+
FormField: ${n} with ${o} `);return}t[n]?t[n]=Array.isArray(t[n])?[...t[n],o]:[t[n],o]:t[n]=o}),a.forEach((o,n)=>{if(typeof o.ref.current?.getState=="function"){let r=o.ref.current.getState();(typeof r=="boolean"||typeof r=="number"||typeof r=="string"||Array.isArray(r)||r==null||r?.toString()==="[object Object]")&&(t[n]=r)}}),t}function eo(e,a,t){let o={};for(let r of e.keys()){let s=e.getAll(r);if(s[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.
|
|
13
13
|
|
|
14
|
-
FormField: ${r} with ${
|
|
14
|
+
FormField: ${r} with ${s} `);continue}if(s.length===1?o[r]=s[0]:o[r]=s,o[r]==""&&delete o[r],o[r]){let d=a.find(k=>k.id===r)?.type;if(d==="boolean"){o[r]=o[r]==="on";continue}if(d==="confirm"){o[r]=JSON.parse(o[r]);continue}if(d==="number"){o[r]=parseFloat(o[r]);continue}if(d==="long"){o[r]=parseInt(o[r]);continue}}}let n=a.filter(r=>r.type==="boolean");return n.length&&n.forEach(r=>{o[r.id]||(o[r.id]=!1)}),t.forEach((r,s)=>{if(typeof r.ref.current?.getValue=="function"){let d=r.ref.current.getValue();(typeof d=="boolean"||typeof d=="number"||typeof d=="string"||Array.isArray(d)||d==null||d?.toString()==="[object Object]")&&(o[s]=d)}}),o}import{Menu as _,Transition as oo}from"@headlessui/react";import g,{Fragment as to}from"react";function ma(e){return g.createElement(_,{as:"div",className:"app-sdk-default-styles app-sdk-relative app-sdk-inline-block app-sdk-text-left"},g.createElement("div",null,g.createElement(_.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)] "},g.createElement("span",{className:"app-sdk-sr-only"},"Open options"),e.collapsedIcon||g.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"},g.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"})))),g.createElement(oo,{as:to,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"},g.createElement(_.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"},g.createElement("div",{className:"app-sdk-py-1"},e.children))))}function ua(e){return g.createElement(_.Item,null,({active:a})=>g.createElement("button",{type:"button",onClick:()=>e.onClick(),className:h(a?"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))}export{$ as BooleanFormField,ue as BpmnViewerComponent,H as ConfirmFormField,X as DateFormField,q as DecimalFormField,ma as DropdownMenu,ua as DropdownMenuItem,so as DynamicLink,da as DynamicUi,ve as DynamicUiComponent,z as EnumFormField,G as FlowNode,fe as FormFieldComponentMap,W as HeaderFormField,Z as IntegerFormField,ee as ParagraphFormField,oe as StringFormField};
|
package/build/server/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var _=Object.defineProperty;var z=Object.getOwnPropertyDescriptor;var ee=Object.getOwnPropertyNames;var se=Object.prototype.hasOwnProperty;var te=(e,s)=>{for(var t in s)_(e,t,{get:s[t],enumerable:!0})},ne=(e,s,t,n)=>{if(s&&typeof s=="object"||typeof s=="function")for(let r of ee(s))!se.call(e,r)&&r!==t&&_(e,r,{get:()=>s[r],enumerable:!(n=z(s,r))||n.enumerable});return e};var re=e=>ne(_({},"__esModule",{value:!0}),e);var Re={};te(Re,{finishUserTask:()=>Ne,finishUserTaskAndGetNext:()=>Ee,getActiveProcessInstances:()=>Ie,getAssignedUserTasksByIdentity:()=>Se,getEngineClient:()=>ue,getIdentity:()=>fe,getReservedUserTasksByIdentity:()=>Ce,getUserTasks:()=>$,getWaitingUserTaskByFlowNodeInstanceId:()=>j,getWaitingUserTasks:()=>me,getWaitingUserTasksByCorrelationId:()=>we,getWaitingUserTasksByFlowNodeId:()=>ye,getWaitingUserTasksByProcessInstanceId:()=>ge,navigateToUrl:()=>xe,startProcess:()=>Pe,waitForProcessEnd:()=>Te,waitForUserTask:()=>ke,withApplicationSdk:()=>_e});module.exports=re(Re);var Qe=require("only-server"),ze=require("../common/index.cjs");var b=require("node:child_process"),y=require("node:fs"),i=require("node:path"),O=require("chokidar"),A=require("esbuild"),L=require("jwt-decode"),S=require("openid-client"),F=require("@5minds/processcube_engine_sdk");var U=require("@5minds/processcube_engine_client"),x=process.env.PROCESSCUBE_ENGINE_URL??"http://localhost:10560",o=new U.EngineClient(x);var oe={token:"ZHVtbXlfdG9rZW4=",userId:"dummy_token"},ae=.85,C=["external_task.ts","external_task.js"],P=process.env.PROCESSCUBE_AUTHORITY_URL!==void 0,k=new F.Logger("processcube_app_sdk:external_task_adapter"),T={},g;async function v(e){if(e&&!(0,y.existsSync)(e))throw new Error(`Invalid customExternalTasksDirPath. The given path '${e}' does not exist`);S.custom.setHttpOptionsDefaults({timeout:1e5});let s=await M();g=await W(s),await ce(s);let t=de(e);(0,O.watch)(t).on("add",async n=>{if(C.includes((0,i.basename)(n)))return D(n,t)}).on("change",async n=>{if(C.includes((0,i.basename)(n)))return ie(n,t)}).on("unlink",async n=>{C.includes((0,i.basename)(n))&&B(n)}).on("error",n=>k.error(`Watcher error: ${n}`))}async function D(e,s){let t=(0,i.dirname)(e);if((await y.promises.readdir(t)).filter(m=>C.includes(m)).length>1){k.error(`Multiple external task files found in directory ${t}. Stopping all external task workers for this directory.`),T[t]&&B(e);return}let a=await q(e),c=(0,i.relative)(s,t),l=K(c),I=(0,i.join)(__dirname,"lib/ExternalTaskWorkerProcess.cjs"),d=(0,b.fork)(I,{env:{NODE_ENV:process.env.NODE_ENV,PROCESSCUBE_ENGINE_URL:x}});T[t]=d,d.once("disconnect",()=>{delete T[t]}),d.send({action:"create",payload:{topic:l,identity:g,moduleString:a,workerPath:e}})}async function ie(e,s){let t=(0,i.dirname)(e),n=T[t];if(!n)return D(e,s);let r=await q(e),a=(0,i.relative)(s,t),c=K(a);n.send({action:"restart",payload:{topic:c,identity:g,moduleString:r,workerPath:e}})}function B(e){let s=(0,i.dirname)(e),t=T[s];t&&t.kill()}async function M(){if(!P)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 k.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 S.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"})}function W(e){if(!P||e===null)return oe;let s=e.access_token,t=(0,L.jwtDecode)(s);return{token:e.access_token,userId:t.sub}}async function ce(e){let s=5;if(!P||e===null)return;let n=await le(e)*ae*1e3,r=async()=>{try{let a=await M();g=W(a);for(let c of Object.values(T))c.send({action:"updateIdentity",payload:{identity:g}});s=5,setTimeout(r,n)}catch(a){if(s===0){k.error("Could not refresh identity for external task worker processes. Stopping all external task workers.",{error:a});for(let l of Object.values(T))l.kill();return}k.error("Could not refresh identity for external task worker processes.",{error:a,retryCount:s}),s--;let c=2*1e3;setTimeout(r,c)}};setTimeout(r,n)}async function q(e){let s=await(0,A.build)({entryPoints:[e],write:!1,bundle:!0,platform:"node",target:"node18",format:"cjs",external:["@opentelemetry/api"]});if(s.errors.length>0)throw k.error(`Could not transpile file at '${e}'`,{errors:s.errors}),new Error(`Could not transpile file at '${e}'`);return s.warnings.length>0&&k.warn(`Transpiled file at '${e}' with warnings`,{warnings:s.warnings}),s.outputFiles[0].text}async function le(e){let s=e.expires_in;if(!s&&e.expires_at&&(s=Math.floor(e.expires_at-Date.now()/1e3)),s===void 0)throw new Error("Could not determine the time until the access token for external task workers expires");return s}function K(e){return e.replace(/^\.\/+|\([^)]+\)|^\/*|\/*$/g,"").replace(/[\/]{2,}/g,"/")}function de(e){let s,t=[e,(0,i.join)(process.cwd(),"app"),(0,i.join)(process.cwd(),"src","app")];for(let n of t)if(n&&(0,y.existsSync)(n)){s=n;break}if(!s)throw new Error("Could not find external tasks directory");return s}function ue(){return o}var N=require("next-auth/jwt"),G=require("next/dist/compiled/@edge-runtime/cookies"),f=require("next/headers"),pe=process.env.NEXTAUTH_URL?.startsWith("https://"),X=`${pe?"__Secure-":""}next-auth.session-token`;async function fe(){let e=await(0,N.getToken)({req:{cookies:(0,f.cookies)(),headers:(0,f.headers)()}});if(e?.expiresAt&&Date.now()>=e.expiresAt*1e3){let t=await fetch(`${process.env.NEXTAUTH_URL}/api/auth/session`,{method:"GET",headers:{"Content-Type":"application/json",cookie:(0,f.cookies)().toString()}}),n=new G.ResponseCookies(t.headers),r=n.get(X);if(r){let a=!1;try{(0,f.cookies)().set(X,r.value,{...r})}catch{a=!0}if(e=await(0,N.getToken)({req:{cookies:a?n:(0,f.cookies)(),headers:(0,f.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 w=require("@5minds/processcube_engine_client");async function Ie(e){return await o.processInstances.query({...e?.query,state:w.DataModels.ProcessInstances.ProcessInstanceState.running},e?.options)}async function Te(e,s){let{processInstanceId:t}=e;return new Promise(async(n,r)=>{let a=[],c=async l=>{if(t!==void 0&&l.processInstanceId!==t)return;let d=await o.processInstances.query({processInstanceId:l.processInstanceId},{identity:s});for(let m of a)o.notification.removeSubscription(m,s);return d.totalCount===0?r(new Error(`Process with instance ID "${l.processInstanceId}" does not exist.`)):n(d.processInstances[0])};if(a.push(await o.notification.onProcessEnded(c,{identity:s})),a.push(await o.notification.onProcessError(c,{identity:s})),a.push(await o.notification.onProcessTerminated(c,{identity:s})),t){let l=await o.processInstances.query({processInstanceId:t,state:[w.DataModels.ProcessInstances.ProcessInstanceState.finished,w.DataModels.ProcessInstances.ProcessInstanceState.terminated,w.DataModels.ProcessInstances.ProcessInstanceState.error]},{identity:s});if(l.totalCount>0){for(let I of a)o.notification.removeSubscription(I,s);n(l.processInstances[0])}}})}var p=require("@5minds/processcube_engine_client"),u=require("../common/index.cjs");async function ke(e={},s){let{correlationId:t,processInstanceId:n,flowNodeId:r}=e;return new Promise(async(a,c)=>{let l=await o.userTasks.onUserTaskWaiting(async d=>{let m=t!==void 0&&d.correlationId!==t,Z=d.flowNodeInstanceId===void 0,J=n!==void 0&&d.processInstanceId!==n,Q=r!==void 0&&d.flowNodeId!==r;if(m||Z||J||Q)return;let h=await j(d.flowNodeInstanceId,{identity:s});return o.notification.removeSubscription(l,s),h===null?c(new Error(`UserTask with instance ID "${d.flowNodeInstanceId}" does not exist.`)):a(h)},{identity:s}),I=await $({correlationId:t,processInstanceId:n,flowNodeId:r,state:p.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:s});I.userTasks.length>0&&(o.notification.removeSubscription(l,s),a(I.userTasks[0]))})}async function Ee(e,s={},t={},n){await o.userTasks.finishUserTask(e,t,n);let r={state:p.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended,...s},a=await o.userTasks.query(r,{identity:n});return(0,u.mapUserTask)(a.userTasks[0])}async function $(...e){let s=await o.userTasks.query(...e);return(0,u.mapUserTaskList)(s)}async function me(e){let s=await o.userTasks.query({state:p.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},e);return(0,u.mapUserTaskList)(s)}async function ge(e,s){let t=await o.userTasks.query({processInstanceId:e,state:p.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},s);return(0,u.mapUserTaskList)(t)}async function ye(e,s){let t=await o.userTasks.query({flowNodeId:e,state:p.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},s);return(0,u.mapUserTaskList)(t)}async function j(e,s){let t=await o.userTasks.query({flowNodeInstanceId:e,state:p.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},{...s,limit:1});return t.userTasks.length===0?null:(0,u.mapUserTask)(t.userTasks[0])}async function we(e,s){let t=await o.userTasks.query({correlationId:e,state:p.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},s);return(0,u.mapUserTaskList)(t)}async function Ce(e,s){let t=await o.userTasks.query({state:p.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:e,...s}),n=t.userTasks.filter(r=>r.actualOwnerId===e.userId);return t.userTasks=n,(0,u.mapUserTaskList)(t)}async function Se(e,s){let t=await o.userTasks.query({state:p.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:e,...s}),n=t.userTasks.filter(r=>r.assignedUserIds?.includes(e.userId));return t.userTasks=n,(0,u.mapUserTaskList)(t)}var E=require("next/dist/shared/lib/constants");var H=!1,R=!1;function _e(e={}){let{applicationSdk:s,...t}=e;return async(n,r)=>{R=R||n===E.PHASE_PRODUCTION_BUILD;let a=n===E.PHASE_DEVELOPMENT_SERVER||n===E.PHASE_PRODUCTION_SERVER;return s?.useExternalTasks&&a&&!H&&!R&&(H=!0,await v(s?.customExternalTasksDirPath)),t}}var V=require("next/cache"),Y=require("next/navigation");function xe(e){(0,V.revalidatePath)(e),(0,Y.redirect)(e)}async function Pe(...e){return await o.processModels.startProcessInstance(...e)}async function Ne(...e){await o.userTasks.finishUserTask(...e)}0&&(module.exports={finishUserTask,finishUserTaskAndGetNext,getActiveProcessInstances,getAssignedUserTasksByIdentity,getEngineClient,getIdentity,getReservedUserTasksByIdentity,getUserTasks,getWaitingUserTaskByFlowNodeInstanceId,getWaitingUserTasks,getWaitingUserTasksByCorrelationId,getWaitingUserTasksByFlowNodeId,getWaitingUserTasksByProcessInstanceId,navigateToUrl,startProcess,waitForProcessEnd,waitForUserTask,withApplicationSdk});
|
|
1
|
+
var N=Object.defineProperty;var se=Object.getOwnPropertyDescriptor;var te=Object.getOwnPropertyNames;var ne=Object.prototype.hasOwnProperty;var re=(e,s)=>{for(var t in s)N(e,t,{get:s[t],enumerable:!0})},oe=(e,s,t,n)=>{if(s&&typeof s=="object"||typeof s=="function")for(let o of te(s))!ne.call(e,o)&&o!==t&&N(e,o,{get:()=>s[o],enumerable:!(n=se(s,o))||n.enumerable});return e};var ae=e=>oe(N({},"__esModule",{value:!0}),e);var Oe={};re(Oe,{finishUserTask:()=>be,finishUserTaskAndGetNext:()=>Ce,getActiveProcessInstances:()=>Te,getAssignedUserTasksByIdentity:()=>Re,getEngineClient:()=>Ie,getFlowNodeInstancesByProcessInstanceId:()=>me,getFlowNodeInstancesTriggeredByFlowNodeInstanceIds:()=>ye,getIdentity:()=>h,getProcessInstanceById:()=>ke,getReservedUserTasksByIdentity:()=>xe,getUserTasks:()=>H,getWaitingUserTaskByFlowNodeInstanceId:()=>V,getWaitingUserTasks:()=>Se,getWaitingUserTasksByCorrelationId:()=>Pe,getWaitingUserTasksByFlowNodeId:()=>Ne,getWaitingUserTasksByProcessInstanceId:()=>_e,navigateToUrl:()=>Ue,retryProcessInstance:()=>ge,startProcess:()=>Fe,waitForProcessEnd:()=>Ee,waitForUserTask:()=>we,withApplicationSdk:()=>he});module.exports=ae(Oe);var rs=require("only-server"),os=require("../common/index.cjs");var O=require("node:child_process"),w=require("node:fs"),i=require("node:path"),A=require("chokidar"),L=require("esbuild"),D=require("jwt-decode"),S=require("openid-client"),v=require("@5minds/processcube_engine_sdk");var b=require("@5minds/processcube_engine_client"),P=process.env.PROCESSCUBE_ENGINE_URL??"http://localhost:10560",r=new b.EngineClient(P);var ie={token:"ZHVtbXlfdG9rZW4=",userId:"dummy_token"},ce=.85,C=["external_task.ts","external_task.js"],x=process.env.PROCESSCUBE_AUTHORITY_URL!==void 0,k=new v.Logger("processcube_app_sdk:external_task_adapter"),T={},E;async function B(e){if(e&&!(0,w.existsSync)(e))throw new Error(`Invalid customExternalTasksDirPath. The given path '${e}' does not exist`);S.custom.setHttpOptionsDefaults({timeout:1e5});let s=await q();E=await K(s),await le(s);let t=pe(e);(0,A.watch)(t).on("add",async n=>{if(C.includes((0,i.basename)(n)))return M(n,t)}).on("change",async n=>{if(C.includes((0,i.basename)(n)))return de(n,t)}).on("unlink",async n=>{C.includes((0,i.basename)(n))&&W(n)}).on("error",n=>k.error(`Watcher error: ${n}`))}async function M(e,s){let t=(0,i.dirname)(e);if((await w.promises.readdir(t)).filter(g=>C.includes(g)).length>1){k.error(`Multiple external task files found in directory ${t}. Stopping all external task workers for this directory.`),T[t]&&W(e);return}let a=await X(e),c=(0,i.relative)(s,t),d=G(c),f=(0,i.join)(__dirname,"lib/ExternalTaskWorkerProcess.cjs"),l=(0,O.fork)(f,{env:{NODE_ENV:process.env.NODE_ENV,PROCESSCUBE_ENGINE_URL:P}});T[t]=l,l.once("disconnect",()=>{delete T[t]}),l.send({action:"create",payload:{topic:d,identity:E,moduleString:a,workerPath:e}})}async function de(e,s){let t=(0,i.dirname)(e),n=T[t];if(!n)return M(e,s);let o=await X(e),a=(0,i.relative)(s,t),c=G(a);n.send({action:"restart",payload:{topic:c,identity:E,moduleString:o,workerPath:e}})}function W(e){let s=(0,i.dirname)(e),t=T[s];t&&t.kill()}async function q(){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 k.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 S.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"})}function K(e){if(!x||e===null)return ie;let s=e.access_token,t=(0,D.jwtDecode)(s);return{token:e.access_token,userId:t.sub}}async function le(e){let s=5;if(!x||e===null)return;let n=await ue(e)*ce*1e3,o=async()=>{try{let a=await q();E=K(a);for(let c of Object.values(T))c.send({action:"updateIdentity",payload:{identity:E}});s=5,setTimeout(o,n)}catch(a){if(s===0){k.error("Could not refresh identity for external task worker processes. Stopping all external task workers.",{error:a});for(let d of Object.values(T))d.kill();return}k.error("Could not refresh identity for external task worker processes.",{error:a,retryCount:s}),s--;let c=2*1e3;setTimeout(o,c)}};setTimeout(o,n)}async function X(e){let s=await(0,L.build)({entryPoints:[e],write:!1,bundle:!0,platform:"node",target:"node18",format:"cjs",external:["@opentelemetry/api"]});if(s.errors.length>0)throw k.error(`Could not transpile file at '${e}'`,{errors:s.errors}),new Error(`Could not transpile file at '${e}'`);return s.warnings.length>0&&k.warn(`Transpiled file at '${e}' with warnings`,{warnings:s.warnings}),s.outputFiles[0].text}async function ue(e){let s=e.expires_in;if(!s&&e.expires_at&&(s=Math.floor(e.expires_at-Date.now()/1e3)),s===void 0)throw new Error("Could not determine the time until the access token for external task workers expires");return s}function G(e){return e.replace(/^\.\/+|\([^)]+\)|^\/*|\/*$/g,"").replace(/[\/]{2,}/g,"/")}function pe(e){let s,t=[e,(0,i.join)(process.cwd(),"app"),(0,i.join)(process.cwd(),"src","app")];for(let n of t)if(n&&(0,w.existsSync)(n)){s=n;break}if(!s)throw new Error("Could not find external tasks directory");return s}function Ie(){return r}var R=require("next-auth/jwt"),j=require("next/dist/compiled/@edge-runtime/cookies"),I=require("next/headers"),fe=process.env.NEXTAUTH_URL?.startsWith("https://"),$=`${fe?"__Secure-":""}next-auth.session-token`;async function h(){let e=await(0,R.getToken)({req:{cookies:(0,I.cookies)(),headers:(0,I.headers)()}});if(e?.expiresAt&&Date.now()>=e.expiresAt*1e3){let t=await fetch(`${process.env.NEXTAUTH_URL}/api/auth/session`,{method:"GET",headers:{"Content-Type":"application/json",cookie:(0,I.cookies)().toString()}}),n=new j.ResponseCookies(t.headers),o=n.get($);if(o){let a=!1;try{(0,I.cookies)().set($,o.value,{...o})}catch{a=!0}if(e=await(0,R.getToken)({req:{cookies:a?n:(0,I.cookies)(),headers:(0,I.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 m=require("@5minds/processcube_engine_client");async function Te(e){return await r.processInstances.query({...e?.query,state:m.DataModels.ProcessInstances.ProcessInstanceState.running},e?.options)}async function ke(e){let s=await _();return(await r.processInstances.query({processInstanceId:e},{identity:s})).processInstances[0]}async function me(e){let s=await _();return(await r.flowNodeInstances.query({processInstanceId:e},{sortSettings:{sortBy:m.DataModels.FlowNodeInstances.FlowNodeInstanceSortableColumns.createdAt,sortDir:"ASC"},identity:s})).flowNodeInstances}async function ye(e){let s=await _(),t=await r.flowNodeInstances.query({triggeredByFlowNodeInstance:e},{identity:s});return t.totalCount>0?t.flowNodeInstances:[]}async function ge(e,s,t){let n=await _();await r.processInstances.retryProcessInstance(e,{flowNodeInstanceId:s,newStartToken:t,identity:n})}async function _(){try{return await h()}catch{return}}async function Ee(e,s){let{processInstanceId:t}=e;return new Promise(async(n,o)=>{let a=[],c=async d=>{if(t!==void 0&&d.processInstanceId!==t)return;let l=await r.processInstances.query({processInstanceId:d.processInstanceId},{identity:s});for(let g of a)r.notification.removeSubscription(g,s);return l.totalCount===0?o(new Error(`Process with instance ID "${d.processInstanceId}" does not exist.`)):n(l.processInstances[0])};if(a.push(await r.notification.onProcessEnded(c,{identity:s})),a.push(await r.notification.onProcessError(c,{identity:s})),a.push(await r.notification.onProcessTerminated(c,{identity:s})),t){let d=await r.processInstances.query({processInstanceId:t,state:[m.DataModels.ProcessInstances.ProcessInstanceState.finished,m.DataModels.ProcessInstances.ProcessInstanceState.terminated,m.DataModels.ProcessInstances.ProcessInstanceState.error]},{identity:s});if(d.totalCount>0){for(let f of a)r.notification.removeSubscription(f,s);n(d.processInstances[0])}}})}var p=require("@5minds/processcube_engine_client"),u=require("../common/index.cjs");async function we(e={},s){let{correlationId:t,processInstanceId:n,flowNodeId:o}=e;return new Promise(async(a,c)=>{let d=await r.userTasks.onUserTaskWaiting(async l=>{let g=t!==void 0&&l.correlationId!==t,Q=l.flowNodeInstanceId===void 0,z=n!==void 0&&l.processInstanceId!==n,ee=o!==void 0&&l.flowNodeId!==o;if(g||Q||z||ee)return;let F=await V(l.flowNodeInstanceId,{identity:s});return r.notification.removeSubscription(d,s),F===null?c(new Error(`UserTask with instance ID "${l.flowNodeInstanceId}" does not exist.`)):a(F)},{identity:s}),f=await H({correlationId:t,processInstanceId:n,flowNodeId:o,state:p.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:s});f.userTasks.length>0&&(r.notification.removeSubscription(d,s),a(f.userTasks[0]))})}async function Ce(e,s={},t={},n){await r.userTasks.finishUserTask(e,t,n);let o={state:p.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended,...s},a=await r.userTasks.query(o,{identity:n});return(0,u.mapUserTask)(a.userTasks[0])}async function H(...e){let s=await r.userTasks.query(...e);return(0,u.mapUserTaskList)(s)}async function Se(e){let s=await r.userTasks.query({state:p.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},e);return(0,u.mapUserTaskList)(s)}async function _e(e,s){let t=await r.userTasks.query({processInstanceId:e,state:p.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},s);return(0,u.mapUserTaskList)(t)}async function Ne(e,s){let t=await r.userTasks.query({flowNodeId:e,state:p.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},s);return(0,u.mapUserTaskList)(t)}async function V(e,s){let t=await r.userTasks.query({flowNodeInstanceId:e,state:p.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},{...s,limit:1});return t.userTasks.length===0?null:(0,u.mapUserTask)(t.userTasks[0])}async function Pe(e,s){let t=await r.userTasks.query({correlationId:e,state:p.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},s);return(0,u.mapUserTaskList)(t)}async function xe(e,s){let t=await r.userTasks.query({state:p.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:e,...s}),n=t.userTasks.filter(o=>o.actualOwnerId===e.userId);return t.userTasks=n,(0,u.mapUserTaskList)(t)}async function Re(e,s){let t=await r.userTasks.query({state:p.DataModels.FlowNodeInstances.FlowNodeInstanceState.suspended},{identity:e,...s}),n=t.userTasks.filter(o=>o.assignedUserIds?.includes(e.userId));return t.userTasks=n,(0,u.mapUserTaskList)(t)}var y=require("next/dist/shared/lib/constants");var Y=!1,U=!1;function he(e={}){let{applicationSdk:s,...t}=e;return async(n,o)=>{U=U||n===y.PHASE_PRODUCTION_BUILD;let a=n===y.PHASE_DEVELOPMENT_SERVER||n===y.PHASE_PRODUCTION_SERVER;return s?.useExternalTasks&&a&&!Y&&!U&&(Y=!0,await B(s?.customExternalTasksDirPath)),t}}var Z=require("next/cache"),J=require("next/navigation");function Ue(e){(0,Z.revalidatePath)(e),(0,J.redirect)(e)}async function Fe(...e){return await r.processModels.startProcessInstance(...e)}async function be(...e){await r.userTasks.finishUserTask(...e)}0&&(module.exports={finishUserTask,finishUserTaskAndGetNext,getActiveProcessInstances,getAssignedUserTasksByIdentity,getEngineClient,getFlowNodeInstancesByProcessInstanceId,getFlowNodeInstancesTriggeredByFlowNodeInstanceIds,getIdentity,getProcessInstanceById,getReservedUserTasksByIdentity,getUserTasks,getWaitingUserTaskByFlowNodeInstanceId,getWaitingUserTasks,getWaitingUserTasksByCorrelationId,getWaitingUserTasksByFlowNodeId,getWaitingUserTasksByProcessInstanceId,navigateToUrl,retryProcessInstance,startProcess,waitForProcessEnd,waitForUserTask,withApplicationSdk});
|