PageSourceSearch

https://www.elevolt.co.ke/_next/static/chunks/4303-043a7544a6bd0d92.js

js elevolt.co.ke collected 2026-10-04 21:45:26 UTC 36,739 bytes, 1 lines download raw bytes

1try{!function(){var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},t=(new e.Error).stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="158b2704-b307-401b-8c30-ce806bccad14",e._sentryDebugIdIdentifier="sentry-dbid-158b2704-b307-401b-8c30-ce806bccad14")}()}catch(e){}(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4303],{4303:function(e,t,a){"use strict";a.d(t,{H:function(){return J}});var r=a(52322),s=a(1973),l=a(47023),n=a(95254),o=a(62372),i=a(76467),c=a(31560),d=a(13980),u=a.n(d),m=a(2784),p=a(62202),g=a(59417),f=a(99603),b=a(17047),h=a(63798),x=a(5120);let y={SIGN_DOCUMENT:"Sign Document",PROVIDE_DOCUMENT:"Provide Document",PROVIDE_INFORMATION:"Provide Data or Information"},v=e=>null!=e?e:"",k={title:x.djD(v,x.Z_8().min(5,"Task title must be at least ".concat(5," characters. Be specific about what needs to be done.")).max(200,"Task title cannot exceed ".concat(200," characters. Keep it concise."))),description:x.djD(v,x.Z_8().max(1e3,"Task description cannot exceed ".concat(1e3," characters.")).optional().or(x.i0J("")))},w=x.VKR("type",[x.Ryn({...k,type:x.i0J(y.SIGN_DOCUMENT),signature_template_id:x.djD(v,x.Z_8().min(1,"Please select an e-signature template")),signing_order:x.KmV(["parallel","sequential"]).default("parallel"),priority:x.KmV(["low","normal","high","urgent"]).default("normal"),document_name:x.Z_8().optional(),task_info:x.Z_8().optional()}),x.Ryn({...k,type:x.i0J(y.PROVIDE_DOCUMENT),document_name:x.djD(v,x.Z_8().min(3,"Document name must be at least ".concat(3,' characters. e.g., "Driving License", "Diploma Certificate"')).max(100,"Document name cannot exceed ".concat(100," characters"))),task_info:x.Z_8().optional(),signature_template_id:x.Z_8().optional(),signing_order:x.KmV(["parallel","sequential"]).optional(),priority:x.KmV(["low","normal","high","urgent"]).optional()}),x.Ryn({...k,type:x.i0J(y.PROVIDE_INFORMATION),task_info:x.djD(v,x.Z_8().min(10,"Required information must be at least ".concat(10," characters. Provide clear details about what information is needed.")).max(500,"Required information cannot exceed ".concat(500," characters"))),document_name:x.Z_8().optional(),signature_template_id:x.Z_8().optional(),signing_order:x.KmV(["parallel","sequential"]).optional(),priority:x.KmV(["low","normal","high","urgent"]).optional()})]),j=x.Ryn({name:x.djD(v,x.Z_8().min(5,"Workflow name must be at least ".concat(5," characters. Choose a descriptive name that identifies this workflow.")).max(100,"Workflow name cannot exceed ".concat(100," characters"))),description:x.djD(v,x.Z_8().max(500,"Workflow description cannot exceed ".concat(500," characters")).optional().or(x.i0J(""))),tasks:x.IXX(w).min(1,"Workflow must have at least ".concat(1," task"))}),N=e=>{var t;let a={};return null===(t=e.issues)||void 0===t||t.forEach(e=>{a[e.path.join(".")]=e.message}),a},_=[{value:y.SIGN_DOCUMENT,label:"Sign Document"},{value:y.PROVIDE_DOCUMENT,label:"Provide Document"},{value:y.PROVIDE_INFORMATION,label:"Provide Data or Information"}],C=[{value:"parallel",label:"Parallel Signing",description:"All signers receive the document at the same time and can sign in any order",icon:g.Qg3},{value:"sequential",label:"Sequential Signing",description:"Signers receive the document one at a time in the order you specify",icon:g.nFo}],S=[{value:"low",label:"Low",description:"No urgency, standard processing",color:"gray"},{value:"normal",label:"Normal",description:"Regular priority",color:"blue"},{value:"high",label:"High",description:"Prioritized, needs attention soon",color:"orange"},{value:"urgent",label:"Urgent",description:"Immediate attention required",color:"red"}],D=()=>({title:"",description:"",type:y.SIGN_DOCUMENT,signature_template_id:"",signing_order:"parallel",priority:"normal",document_name:"",task_info:""}
1),O=async e=>{let t={...e};return t.tasks=e.tasks.map(e=>{let t={...e};return e.type===y.SIGN_DOCUMENT?(delete t.document_name,delete t.task_info):e.type===y.PROVIDE_DOCUMENT?(delete t.signature_template_id,delete t.signing_order,delete t.priority,delete t.task_info):e.type===y.PROVIDE_INFORMATION&&(delete t.signature_template_id,delete t.signing_order,delete t.priority,delete t.document_name),t}),t};var E=a(12524),I=a.n(E);let T={gray:{border:"border-gray-300",bg:"bg-gray-50",text:"text-gray-700",selectedBorder:"border-gray-500",selectedBg:"bg-gray-100",selectedText:"text-gray-900",ring:"ring-gray-500"},blue:{border:"border-blue-300",bg:"bg-blue-50",text:"text-blue-700",selectedBorder:"border-blue-500",selectedBg:"bg-blue-100",selectedText:"text-blue-900",ring:"ring-blue-500"},orange:{border:"border-orange-300",bg:"bg-orange-50",text:"text-orange-700",selectedBorder:"border-orange-500",selectedBg:"bg-orange-100",selectedText:"text-orange-900",ring:"ring-orange-500"},red:{border:"border-red-300",bg:"bg-red-50",text:"text-red-700",selectedBorder:"border-red-500",selectedBg:"bg-red-100",selectedText:"text-red-900",ring:"ring-red-500"}},R=e=>{let{signingOrder:t,priority:a,onSigningOrderChange:s,onPriorityChange:l,disabled:n=!1}=e,o=(0,m.useCallback)(e=>{n||s(e)},[n,s]),i=(0,m.useCallback)(e=>{n||l(e)},[n,l]),c=(0,m.useCallback)((e,t,a)=>{("Enter"===e.key||" "===e.key)&&(e.preventDefault(),a(t))},[]),d=(0,m.useMemo)(()=>C.map(e=>({...e,isSelected:t===e.value})),[t]),u=(0,m.useMemo)(()=>S.map(e=>({...e,isSelected:a===e.value,colors:T[e.color]||T.blue})),[a]);return(0,r.jsxs)("div",{className:"space-y-6",children:[(0,r.jsxs)("div",{"aria-labelledby":"signing-order-label",role:"radiogroup",children:[(0,r.jsx)("span",{className:"block text-sm font-medium text-gray-700 mb-3",id:"signing-order-label",children:"Signing Order"}),(0,r.jsx)("div",{className:"space-y-3",children:d.map(e=>(0,r.jsx)("div",{"aria-checked":e.isSelected,className:I()("border rounded-lg p-4 cursor-pointer transition-all",{"border-blue-500 bg-blue-50 ring-2 ring-blue-200":e.isSelected,"border-gray-200 hover:border-gray-300 hover:bg-gray-50":!e.isSelected,"opacity-50 cursor-not-allowed":n}),onClick:()=>o(e.value),onKeyDown:t=>c(t,e.value,o),role:"radio",tabIndex:n?-1:0,children:(0,r.jsxs)("div",{className:"flex items-start gap-3",children:[(0,r.jsx)("div",{className:"flex-shrink-0 mt-0.5",children:(0,r.jsx)("div",{className:I()("w-5 h-5 rounded-full border-2 flex items-center justify-center",{"border-blue-500 bg-blue-500":e.isSelected,"border-gray-300":!e.isSelected}),children:!!e.isSelected&&(0,r.jsx)("div",{className:"w-2 h-2 bg-white rounded-full"})})}),(0,r.jsx)("div",{className:"flex-shrink-0 mt-0.5",children:(0,r.jsx)(f.G,{className:I()("text-lg",{"text-blue-600":e.isSelected,"text-gray-400":!e.isSelected}),icon:e.icon})}),(0,r.jsxs)("div",{className:"flex-1",children:[(0,r.jsx)("p",{className:I()("font-medium mb-1",{"text-blue-900":e.isSelected,"text-gray-900":!e.isSelected}),children:e.label}),(0,r.jsx)("p",{className:I()("text-sm",{"text-blue-700":e.isSelected,"text-gray-600":!e.isSelected}),children:e.description})]})]})},e.value))})]}),(0,r.jsxs)("div",{"aria-labelledby":"priority-level-label",role:"radiogroup",children:[(0,r.jsx)("span",{className:"block text-sm font-medium text-gray-700 mb-3",id:"priority-level-label",children:"Priority Level"}),(0,r.jsx)("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-3",children:u.map(e=>(0,r.jsxs)("div",{"aria-checked":e.isSelected,className:I()("border-2 rounded-lg p-3 cursor-pointer text-center transition-all",{[e.colors.selectedBorder]:e.isSelected,[e.colors.selectedBg]:e.isSelected,"ring-2 ring-offset-1":e.isSelected,[e.colors.ring]:e.isSelected,[e.colors.border]:!e.isSelected,[e.colors.bg]:!e.isSelected,"opacity-50 cursor-not-allowed":n}),onClick:()=>i(e.value),onKeyDown:t=>c(t,e.value,i),role:"radio",tabIndex:n?-1:0,children:[(0,r.jsx)("p",{className:I()("font-semibold text-sm",{[e.colors.selectedText]:e.isSelected,[e.colors.text]:!e.isSelected}),children:e.label}),(0,r.jsx)("p",{className:I()("text-xs mt-1",{[e.colors.selectedText.replace("900","700")]:e.isSelected,[e.colors.text.replace("700","600")]:!e.isSelected}),children:e.description})]},e.value))})]}),(0,r.jsx)("div",{className:"bg-gray-50 border border-gray-200 rounded-lg p-3",children:(0,r.jsxs)("p",{className:"text-sm text-gray-700",children:[(0,r.jsx)("span",{className:"font-medium",children:"Note:"})," Signing order determines how signers receive the document. Priority affects reminder frequency and urgency indicators."]})})]})};R.propTypes={disabled:u().bool,onPriorityChange:u().func.isRequired,onSigningOrderChange:u().func.isRequired,priority:u().string.isRequired,signingOrder:u().string.isRequired};var P=a(78690),q=a(22319),Z=a(78090);let B=e=>{var t,a;let{selectedTemplateId:l,onSelect:o,error:i,disabled:c=!1}=e,[d,u]=(0,m.useState)(""),[p,b]=(0,m.useState)(""),x=(0,P.Z)(d,300),{data:y=[],isLoading:v,error:k}=(0,q.et)({status:"active"}),{data:w=[]}=(0,q.tk)(),j=(0,m.useMemo)(()=>{let e=y;if(x){let t=x.toLowerCase();e=e.filter(e=>{var a,r;return(null===(a=e.name)||void 0===a?void 0:a.toLowerCase().includes(t))||(null===(r=e.description)||void 0===r?void 0:r.toLowerCase().includes(t))})}return p&&(e=e.filter(e=>e.category===p)),e},[y,x,p]),N=(0,m.useMemo)(()=>y.find(e=>(e.stid||e.id)===l),[y,l]),_=(0,m.useMemo)(()=>[...w.map(e=>({value:e.value||e,label:e.label||e}))],[w]),C=(0,m.useCallback)(e=>{c||o(e.stid||e.id)},[c,o]),S=(0,m.useCallback)(e=>{u(e.target.value)},[]),D=(0,m.useCallback)(e=>{b(e.target.value)},[]),O=(0,m.useCallback)((e,t)=>
1{("Enter"===e.key||" "===e.key)&&(e.preventDefault(),C(t))},[C]),E=(0,m.useCallback)(e=>{var t;return(null===(t=e.signature_fields)||void 0===t?void 0:t.length)?[...new Set(e.signature_fields.map(e=>e.signer_role).filter(Boolean))].join(", "):""},[]),T=!!(!v&&!k&&0===j.length),R=!!(!v&&!k&&j.length>0),B=!!(N&&!i);return(0,r.jsxs)("div",{className:"space-y-4",children:[(0,r.jsx)("div",{className:"flex items-center justify-between",children:(0,r.jsxs)("span",{className:"block text-sm font-medium text-gray-700",id:"template-selector-label",children:["E-Signature Template",(0,r.jsx)("span",{className:"text-red-500 ml-1",children:"*"})]})}),(0,r.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[(0,r.jsx)("div",{children:(0,r.jsx)(n.o,{disabled:c,name:"search",onChange:S,placeholder:"Search templates by name or description...",value:d})}),(0,r.jsx)("div",{children:(0,r.jsx)(h.P,{disabled:c,name:"category",onChange:D,options:_,value:p})})]}),!!i&&(0,r.jsx)("div",{className:"text-sm text-red-600",role:"alert",children:i}),!!v&&(0,r.jsx)(s.Z,{design:"wrapped",isLoading:!0,message:"Loading templates..."}),!!(k&&!v)&&(0,r.jsx)(s.Z,{description:"Please try refreshing the page.",design:"wrapped",message:"Failed to load templates"}),!!T&&(0,r.jsx)(s.Z,{description:x||p?"Try adjusting your search or filter criteria.":"Create signature templates first before adding them to workflows.",design:"wrapped",message:"No templates found"}),!!R&&(0,r.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4 max-h-96 overflow-y-auto p-1",children:j.map(e=>{let t=e.stid||e.id,a=t===l;return(0,r.jsxs)("div",{className:I()("cursor-pointer transition-all relative group p-1 rounded-lg overflow-hidden",{"ring-2 ring-blue-500 shadow-lg":a,"hover:ring-blue-600":!a,"opacity-50 cursor-not-allowed":c}),children:[(0,r.jsxs)("span",{className:I()("absolute top-0 right-0 w-full h-full bg-white/50 group-hover:flex p-4 flex-col items-center justify-center group-active:flex",{"bg-white/80 flex":a,"bg-white/60 group-hover:flex hidden":!a,"opacity-60 cursor-not-allowed":c}),onClick:()=>C(e),onKeyDown:t=>O(t,e),role:"button",tabIndex:c?-1:0,children:[(0,r.jsx)(f.G,{className:"text-blue-500 text-2xl",icon:g.f8k,size:"lg"}),(0,r.jsx)("span",{className:"text-base text-blue-500 mt-2",children:a?"Selected Template":"Select Template"})]}),(0,r.jsx)(Z.Z,{showActions:!1,template:e})]},t)})}),!!B&&(0,r.jsxs)("div",{className:"bg-blue-50 border border-blue-200 rounded-lg p-4",children:[(0,r.jsxs)("p",{className:"text-sm font-medium text-blue-900 mb-2",children:["Selected Template: ",N.name]}),(0,r.jsxs)("div",{className:"text-sm text-blue-700",children:[(0,r.jsxs)("p",{className:"mb-1",children:[(0,r.jsx)("span",{className:"font-medium",children:"Fields:"})," ",(null===(t=N.signature_fields)||void 0===t?void 0:t.length)||0]}),(0,r.jsxs)("p",{className:"mb-1",children:[(0,r.jsx)("span",{className:"font-medium",children:"Pages:"})," ",N.page_count||1]}),(null===(a=N.signature_fields)||void 0===a?void 0:a.length)>0&&(0,r.jsxs)("p",{children:[(0,r.jsx)("span",{className:"font-medium",children:"Signer Roles:"})," ",E(N)]})]})]}),(0,r.jsx)("p",{className:"text-sm text-gray-600",children:"Select an e-signature template that will be sent to users when this workflow task is assigned. Signer roles will be mapped to actual users during workflow assignment."})]})};B.propTypes={disabled:u().bool,error:u().string,onSelect:u().func.isRequired,selectedTemplateId:u().string};let M=e=>{let{task:t,index:a,errors:s={},onUpdate:c,onRemove:d,onMoveUp:u,onMoveDown:p,onBlur:x,disabled:v=!1,canRemove:k=!0}=e,w=(0,m.useCallback)(e=>{c({type:e.target.value,signature_template_id:"",signing_order:"parallel",priority:"normal",document_name:"",task_info:""})},[c]),j=(0,m.useCallback)(e=>{c({signature_template_id:e})},[c]),N=(0,m.useCallback)(()=>{(0,b.Z)({handler:async()=>{d()},title:"Remove Task",message:"Are you sure you want to remove Task ".concat(a+1,"? This action cannot be undone."),confirmButtonText:"Remove Task",cancelButtonText:"Cancel"})},[d,a]),C=(0,m.useCallback)(e=>c({title:e.target.value}),[c]),S=(0,m.useCallback)(e=>c({description:e.target.value}),[c]),D=(0,m.useCallback)(e=>c({document_name:e.target.value}),[c]),O=(0,m.useCallback)(e=>c({task_info:e.target.value}),[c]),E=(0,m.useCallback)(e=>c({signing_order:e}),[c]),I=(0,m.useCallback)(e=>c({priority:e}),[c]),T=(0,m.useMemo)(()=>({title:()=>x&&x("tasks.".concat(a,".title")),description:()=>x&&x("tasks.".concat(a,".description")),type:()=>x&&x("tasks.".concat(a,".type")),document_name:()=>x&&x("tasks.".concat(a,".document_name")),task_info:()=>x&&x("tasks.".concat(a,".task_info"))}),[x,a]),P=t.type===y.SIGN_DOCUMENT,q=t.type===y.PROVIDE_DOCUMENT,Z=t.type===y.PROVIDE_INFORMATION,M=!!t.signature_template_id;return(0,r.jsxs)("div",{className:"border border-gray-200 rounded-lg p-6 bg-white shadow-sm",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)(i.Z,{as:"span",className:"inline-flex items-center justify-center w-8 h-8 rounded-full bg-blue-100 text-blue-800",variant:"bodySmall",weight:"font-semibold",children:a+1}),(0,r.jsxs)(i.Z,{as:"span",color:"text-gray-700",variant:"bodySmall",weight:"font-medium",children:["Task ",a+1]})]}),(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[!!u&&(0,r.jsx)(l.Z,{design:"text",disabled:v,onClick:u,size:"sm",title:"Move task up",type:"button",children:(0,r.jsx)(f.G,{icon:g.FPD})}),!!p&&(0,r.jsx)(l.Z,{design:"text",disabled:v,onClick:p,size:"sm",title:"Move task down",type:"button",children:(0,r.jsx)(f.G,{icon:g.r5q})}),!!k&&(0,r.jsx)(l.Z,{design:"danger",disabled:v,onClick:N,size:"sm",title:"Remove task",type:"button",children:(0,r.jsx)(f.G,{icon:g.$aW})})]})]}),(0,r.jsxs)("div",{className:"space-y-4",children:[(0,r.jsx)("div",{className:"w-full",children:(0,r.jsx)(n.o,{disabled:v,error:s.title,label:"Task Title",name:"tasks.".concat(a,".title"),onBlur:T.title,onChange:C,required:!0,value:t.title||""})}),(0,r.jsx)("div",{className:"w-full",children:(0,r.jsx)(o.K,{disabled:v,error:s.description,label:"Task Description",name:"tasks.".concat(a,".description"),onBlur:T.description,onChange:S,rows:4,value:t.description||""})}),(0,r.jsx)("div",{className:"w-full",children:(0,r.jsx)(h.P,{disabled:v,error:s.type,label:"Task Type",name:"tasks.".concat(a,".type"),onBlur:T.type,onCh
1ange:w,options:_,required:!0,value:t.type||y.REQUEST_SIGNATURE})}),!!P&&(0,r.jsxs)("div",{className:"pt-4 border-t border-gray-100 space-y-4",children:[(0,r.jsx)(B,{disabled:v,error:s.signature_template_id,onSelect:j,selectedTemplateId:t.signature_template_id}),!!M&&(0,r.jsx)(R,{disabled:v,onPriorityChange:I,onSigningOrderChange:E,priority:t.priority||"normal",signingOrder:t.signing_order||"parallel"})]}),!!q&&(0,r.jsx)("div",{className:"pt-2 border-t border-gray-100",children:(0,r.jsx)("div",{className:"w-full",children:(0,r.jsx)(n.o,{description:"e.g., Driving License, Diploma Certificate, Passport",disabled:v,error:s.document_name,label:"Document Name",name:"tasks.".concat(a,".document_name"),onBlur:T.document_name,onChange:D,placeholder:"Enter the name of the required document",required:!0,value:t.document_name||""})})}),!!Z&&(0,r.jsx)("div",{className:"pt-2 border-t border-gray-100",children:(0,r.jsx)("div",{className:"w-full",children:(0,r.jsx)(o.K,{description:"Provide details about what information is required from the assignee",disabled:v,error:s.task_info,label:"Required Information",name:"tasks.".concat(a,".task_info"),onBlur:T.task_info,onChange:O,placeholder:"Describe the information or data that needs to be provided",required:!0,rows:5,value:t.task_info||""})})})]})]})};M.propTypes={canRemove:u().bool,disabled:u().bool,errors:u().object,index:u().number.isRequired,onBlur:u().func,onMoveDown:u().func,onMoveUp:u().func,onRemove:u().func.isRequired,onUpdate:u().func.isRequired,task:u().object.isRequired};let U=e=>{let{tasks:t=[],errors:a={},onAddTask:s,onRemoveTask:n,onUpdateTask:o,onMoveTask:i,onBlur:c,disabled:d=!1}=e,u=(0,m.useCallback)(e=>{let t={},r="tasks.".concat(e,".");return Object.keys(a).forEach(e=>{e.startsWith(r)&&(t[e.slice(r.length)]=a[e])}),t},[a]),p=(0,m.useMemo)(()=>t.map((e,t)=>u(t)),[t,u]);return(0,r.jsxs)("div",{className:"space-y-6",children:[t.map((e,a)=>(0,r.jsx)(M,{canRemove:t.length>1,disabled:d,errors:p[a],index:a,onBlur:c,onMoveDown:a<t.length-1?()=>i(a,a+1):null,onMoveUp:a>0?()=>i(a,a-1):null,onRemove:()=>n(a),onUpdate:e=>o(a,e),task:e},a)),(0,r.jsx)("div",{className:"flex justify-start",children:(0,r.jsx)(l.Z,{beforeIcon:(0,r.jsx)(f.G,{icon:g.r8p}),design:"secondary",disabled:d,onClick:s,type:"button",children:"Add Another Task"})})]})};U.propTypes={disabled:u().bool,errors:u().object,onAddTask:u().func.isRequired,onBlur:u().func,onMoveTask:u().func.isRequired,onRemoveTask:u().func.isRequired,onUpdateTask:u().func.isRequired,tasks:u().array.isRequired};let K=e=>{let t=e.match(/tasks\.(\d+)\.(.+)/);if(t){let e=parseInt(t[1],10)+1,a=t[2].replace(/_/g," ").replace(/\b\w/g,e=>e.toUpperCase());return"Task ".concat(e," - ").concat(a)}return e.replace(/_/g," ").replace(/\b\w/g,e=>e.toUpperCase())},A=e=>{let{errors:t}=e,a=(0,m.useMemo)(()=>t&&"object"==typeof t?Object.entries(t).map(e=>{let[t,a]=e;return{field:t,message:a,label:K(t)}}):[],[t]);return 0===a.length?null:(0,r.jsx)("div",{"aria-live":"polite",className:"bg-red-50 border border-red-200 rounded-lg p-4 mb-6",role:"alert",children:(0,r.jsxs)("div",{className:"flex items-start gap-3",children:[(0,r.jsx)(f.G,{className:"text-red-600 mt-0.5",icon:g.RLE}),(0,r.jsxs)("div",{className:"flex-1",children:[(0,r.jsxs)(i.Z,{className:"mb-2",color:"text-red-800",variant:"bodySmall",weight:"font-semibold",children:["Please fix the following ",1===a.length?"error":"errors",":"]}),(0,r.jsx)("ul",{className:"space-y-1",children:a.map(e=>{let{field:t,message:a,label:s}=e;return(0,r.jsxs)("li",{className:"text-red-700 text-sm",children:[(0,r.jsxs)("span",{className:"font-medium",children:[s,":"]})," ",a]},t)})})]})]})})};A.propTypes={errors:u().object};var L=a(88393);let F="workflow_draft";var V=e=>{let{formData:t,enabled:a=!0}=e,[r,s]=(0,m.useState)(!1),[l,n]=(0,m.useState)(null),o=(0,m.useCallback)(()=>{if(a){s(!0);try{let e={data:t,savedAt:new Date().toISOString()};localStorage.setItem(F,JSON.stringify(e)),n(new Date)}catch(e){(0,L.wp)(e,"workflow_draft_save",{draftKey:F,formDataSize:JSON.stringify(t).length})}finally{setTimeout(()=>s(!1),500)}}},[t,a]),i=(0,m.useCallback)(()=>{try{let e=localStorage.getItem(F);if(e){let{data:t,savedAt:a}=JSON.parse(e);return{data:t,savedAt:new Date(a)}}}catch(e){(0,L.wp)(e,"workflow_draft_load",{draftKey:F})}return null},[]),c=(0,m.useCallback)(()=>{try{localStorage.removeItem(F),n(null)}catch(e){(0,L.wp)(e,"workflow_draft_clear",{draftKey:F})}},[]),d=(0,m.useCallback)(()=>{try{return null!==localStorage.getItem(F)}catch(e){return!1}},[]);return(0,m.useEffect)(()=>
1{if(!a)return;let e=setInterval(()=>{(t.name||t.description||t.tasks.length>1)&&o()},3e4);return()=>clearInterval(e)},[t,a,o]),{saveDraft:o,loadDraft:i,clearDraft:c,hasDraft:d,isSaving:r,lastSaved:l}};let W=e=>{let{initialData:t=null,editMode:a=!1}=e,[r,s]=(0,m.useState)({name:"",description:"",tasks:[D()]}),[l,n]=(0,m.useState)({}),[o,i]=(0,m.useState)(new Set);(0,m.useEffect)(()=>{t&&s({name:t.name||"",description:t.description||"",tasks:t.tasks&&t.tasks.length>0?t.tasks.map(e=>({title:e.title||"",description:e.description||"",type:e.type||"Sign Document",signature_template_id:e.signature_template_id||"",signing_order:e.signing_order||"parallel",priority:e.priority||"normal",document_name:e.document_name||"",task_info:e.task_info||""})):[D()]})},[t]);let c=(0,m.useCallback)(e=>{let{name:t,value:a}=e.target;s(e=>({...e,[t]:a}))},[]),d=(0,m.useCallback)(e=>{try{j.parse(r),n(t=>{let a={...t};return delete a[e],a})}catch(a){let t=N(a)[e];t?n(a=>({...a,[e]:t})):n(t=>{let a={...t};return delete a[e],a})}},[r]),u=(0,m.useCallback)(e=>{i(t=>new Set([...t,e])),d(e)},[d]),p=(0,m.useCallback)(()=>{try{return j.parse(r),n({}),!0}catch(e){return n(N(e)),!1}},[r]),g=(0,m.useCallback)(()=>{s(e=>({...e,tasks:[...e.tasks,D()]}))},[]),f=(0,m.useCallback)(e=>{1!==r.tasks.length&&(s(t=>({...t,tasks:t.tasks.filter((t,a)=>a!==e)})),n(t=>{let a={...t};return Object.keys(a).forEach(t=>{t.startsWith("tasks.".concat(e,"."))&&delete a[t]}),a}),i(t=>{let a=new Set(t);return Array.from(a).forEach(t=>{t.startsWith("tasks.".concat(e,"."))&&a.delete(t)}),a}))},[r.tasks.length]),b=(0,m.useCallback)((e,t)=>{s(a=>{let r=a.tasks.map((a,r)=>r===e?{...a,...t}:a);return{...a,tasks:r}}),n(a=>{let r={...a};return Object.keys(t).forEach(t=>{let a="tasks.".concat(e,".").concat(t);delete r[a]}),r})},[]),h=(0,m.useCallback)((e,t)=>{s(a=>{let r=[...a.tasks],[s]=r.splice(e,1);return r.splice(t,0,s),{...a,tasks:r}})},[]),x=(0,m.useCallback)(()=>{s({name:"",description:"",tasks:[D()]}),n({}),i(new Set)},[]);return{formData:r,setFormData:s,errors:l,touchedFields:o,handleFieldChange:c,handleBlur:u,validateForm:p,validateSingleField:d,addTask:g,removeTask:f,updateTask:b,moveTask:h,resetForm:x}},G=(e,t)=>e?t?"Saving...":"Creating...":t?"Save Workflow":"Create Workflow",J=e=>{let{editMode:t=!1,workflow:a=null,onDone:d}=e,{data:u,isLoading:g,error:f}=(0,c.Vk)({workflowId:a,enabled:t&&!!a}),{formData:b,errors:h,touchedFields:x,handleFieldChange:y,handleBlur:v,validateForm:k,addTask:w,removeTask:j,updateTask:N,moveTask:_}=W({initialData:u,editMode:t}),{saveDraft:C,clearDraft:S,isSaving:D}=V({formData:b,enabled:!t}),E=(0,c.A_)({onSuccess:()=>{p.default.success("Workflow created successfully!"),S(),d&&d()},onError:e=>{var t,a;p.default.error((null===(a=e.response)||void 0===a?void 0:null===(t=a.data)||void 0===t?void 0:t.message)||"Failed to create workflow")}}),I=(0,c.xI)({onSuccess:()=>{p.default.success("Workflow updated successfully!"),d&&d()},onError:e=>{var t,a;p.default.error((null===(a=e.response)||void 0===a?void 0:null===(t=a.data)||void 0===t?void 0:t.message)||"Failed to update workflow")}}),T=E.isPending||I.isPending,R=(0,m.useCallback)(async e=>{if(e.preventDefault(),!k()){p.default.error("Please fix the validation errors before submitting."),window.scrollTo({top:0,behavior:"smooth"});return}try{let e=await O(b);t?I.mutate({workflowId:a,data:e}):E.mutate(e)}catch(e){p.default.error("Failed to process form data. Please try again.")}},[b,k,t,a,I,E]),P=(0,m.useCallback)(()=>{C(),p.default.success("Draft saved successfully!")},[C]);return t&&g?(0,r.jsx)("div",{className:"w-full pb-4",children:(0,r.jsx)(s.Z,{design:"wrapped",isLoading:!0,message:"Loading workflow..."})}):t&&f?(0,r.jsx)("div",{className:"w-full pb-4",children:(0,r.jsx)(s.Z,{description:"Please try refreshing the page.",design:"wrapped",message:"Failed to load workflow"})}):(0,r.jsxs)("form",{className:"w-full pb-4",onSubmit:R,children:[(0,r.jsx)(A,{errors:h}),!!(!t&&D)&&(0,r.jsxs)("div",{className:"text-sm text-gray-500 mb-4 flex items-center gap-2",children:[(0,r.jsx)("span",{className:"inline-block w-2 h-2 bg-blue-500 rounded-full animate-pulse"}),"Saving draft..."]}),(0,r.jsxs)("div",{className:"space-y-6 mb-8",children:[(0,r.jsx)(i.Z,{variant:"heading4",children:"Workflow Information"}),(0,r.jsx)("div",{className:"w-full",children:(0,r.jsx)(n.o,{description:"Choose a descriptive name that identifies this workflow",disabled:T,error:x.has("name")?h.name:null,label:"Workflow Name",name:"name",onBlur:()=>v("name"),onChange:y,placeholder:"e.g., New Employee Onboarding, Document Collection",required:!0,value:b.name})}),(0,r.jsx)("div",{className:"w-full",children:(0,r.jsx)(o.K,{description:"Provide an overview of what this workflow accomplishes",disabled:T,error:x.has("description")?h.description:null,label:"Workflow Description",name:"description",onBlur:()=>v("description"),onChange:y,placeholder:"Describe the purpose and steps of this workflow...",rows:5,value:b.description})})]}),(0,r.jsxs)("div",{className:"mb-8",children:[(0,r.jsxs)("div",{className:"mb-4",children:[(0,r.jsx)(i.Z,{className:"mb-1",variant:"heading4",children:"Workflow Tasks"}),(0,r.jsx)(i.Z,{color:"text-gray-600",variant:"bodySmall",children:"Add tasks that will be assigned to users when this workflow is activated. Each task requires completion before the workflow is marked as done."})]}),(0,r.jsx)(U,{disabled:T,errors:h,onAddTask:w,onBlur:v,onMoveTask:_,onRemoveTask:j,onUpdateTask:N,tasks:b.tasks,touchedFields:x})]}),(0,r.jsxs)("div",{className:"flex flex-col sm:flex-row justify-between items-start sm:items-center gap-4 pt-6 border-t border-gray-200",children:[(0,r.jsx)("div",{className:"text-sm text-gray-600",children:!!(!t&&!D&&b.name)&&(0,r.jsxs)("span",{className:"flex items-center gap-2",children:[(0,r.jsx)("span",{className:"inline-block w-2 h-2 bg-green-500 rounded-full"}),"Draft auto-saved"]})}),(0,r.jsxs)("div",{className:"flex gap-3 w-full sm:w-auto",children:[!t&&(0,r.jsx)(l.Z,{design:"secondary",disabled:T||D,onClick:P,type:"button",children:D?"Saving...":"Save Draft"}),(0,r.jsx)(l.Z,{className:"flex-1 sm:flex-initial",disabled:T,type:"submit",children:G(T,t)})]})]})]})};J.propTypes={editMode:u().bool,onDone:u().func,workflow:u().string}},17047:function(e,t,a){"use strict";var r=a(52322),s=a(2784),l=a(94217);a(56486);var n=a(47023),o=a(59578),i=a(42369),c=a(76467);let d=e=>{let{onClose:t,handler:a,preOnCloseFn:l,title:d,message:u,details:m,confirmButtonText:p,cancelButtonText:g,initialIsLoading:f,suppressRecording:b}
1=e,[h,x]=(0,s.useState)(!1),y=f||h,v=(0,s.useCallback)(async()=>{x(!0);try{await a(),l(),t()}catch(e){x(!1),(0,o.N2)(e,"ConfirmDialogContent")}},[a,l,t]),k=(0,s.useCallback)(()=>{h||(l(),t())},[h,l,t]);return(0,r.jsxs)("div",{className:"confirm-dialog flex flex-col bg-white py-3 px-3 sm:py-4 sm:px-4 rounded shadow-sm relative".concat(b?" ".concat("fs-exclude"):""),"data-hj-suppress":b||void 0,"data-hs-do-not-collect":b?"true":void 0,children:[!!y&&(0,r.jsx)(i.J,{fixed:!1,size:"sm"}),(0,r.jsx)("div",{className:"w-full border-gray-200",children:(0,r.jsx)(c.Z,{className:"leading-none",variant:"heading5",children:d})}),(0,r.jsx)("hr",{className:"-mx-3 sm:-mx-4 my-2 sm:my-3"}),(0,r.jsxs)("div",{className:"w-full py-2",children:[(0,r.jsx)(c.Z,{variant:"body",children:u}),!!m&&(0,r.jsx)(c.Z,{className:"mt-2 break-all",color:"text-gray-600",variant:"caption",children:m})]}),(0,r.jsx)("hr",{className:"-mx-3 sm:-mx-4 my-2 sm:my-3"}),(0,r.jsxs)("div",{className:"w-full flex flex-col-reverse sm:flex-row sm:justify-between gap-2 border-gray-200",children:[(0,r.jsx)(n.Z,{className:"w-full sm:w-auto",design:"secondary",disabled:h,onClick:k,children:g}),(0,r.jsx)(n.Z,{className:"w-full sm:w-auto",design:"primary",disabled:h,isLoading:h,onClick:v,children:p})]})]})};t.Z=e=>{let{handler:t,preOnCloseFn:a=()=>{},title:s="Are you sure?",message:n="It may not be possible to undo this action. Are you sure you want to proceed?",details:o="",confirmButtonText:i="Yes, Proceed.",cancelButtonText:c="No, Let me check.",canExit:u=!0,isLoading:m=!1,suppressRecording:p=!1}=e;(0,l._1)({closeOnEscape:u,closeOnClickOutside:u,customUI:e=>{let{onClose:l}=e;return(0,r.jsx)(d,{cancelButtonText:c,confirmButtonText:i,details:o,handler:t,initialIsLoading:m,message:n,onClose:l,preOnCloseFn:a,suppressRecording:p,title:s})}})}},62372:function(e,t,a){"use strict";a.d(t,{K:function(){return i}});var r=a(52322);a(2784);var s=a(13980),l=a.n(s),n=a(12524),o=a.n(n);let i=e=>{let{label:t,placeholder:a,name:s,error:l,rows:n,onChange:i,value:c,defaultValue:d,className:u,onKeyUp:m,onKeyDownHandler:p,onBlur:g,disabled:f,required:b=!1}=e,h=o()("block","text-sm","font-medium","tracking-wide","mb-1",{"text-gray-700":!l,"text-red-400":l}),x=o()("appearance-none","w-full","px-3","py-2","text-gray-700","bg-white","border","rounded-lg","leading-tight","transition-colors","duration-200","focus:outline-none","focus:ring-2","focus:ring-blue-500","focus:border-transparent","disabled:bg-gray-100","disabled:text-gray-500","disabled:cursor-not-allowed",{"border-gray-300":!l,"border-red-400":l,"focus:ring-red-500":l},u);return(0,r.jsxs)(r.Fragment,{children:[!!t&&(0,r.jsxs)("label",{className:h,htmlFor:s,children:[t,!!b&&(0,r.jsx)("span",{className:"text-red-400 text-xs ml-1",children:"*"})]}),(0,r.jsx)("textarea",{className:x,defaultValue:d,disabled:f,id:s,name:s,onBlur:g,onChange:i,onKeyDown:p,onKeyUp:m,placeholder:a,required:b,rows:n,value:c}),!!l&&(0,r.jsx)("span",{className:"text-red-400 text-xs mt-1 block",children:l})]})};i.propTypes={label:l().string,value:l().string,placeholder:l().string,name:l().string.isRequired,rows:l().number,error:l().string,onChange:l().func.isRequired,defaultValue:l().string,className:l().string,onKeyUp:l().func,onKeyDownHandler:l().func,onBlur:l().func,disabled:l().bool,required:l().bool}},31560:function(e,t,a){"use strict";a.d(t,{A_:function(){return m},Vk:function(){return u},xI:function(){return p}});var r=a(59820),s=a(14010),l=a(87686),n=a(60418),o=a(47477),i=a(82036),c=a(84475);let d=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return"".concat(i.JW,"tenant/").concat((0,o.d_)(),"/").concat(e)},u=e=>{let{workflowId:t,enabled:a=!0}=e;return(0,r.a)({queryKey:["workflow",t],queryFn:async()=>{var e;return null===(e=(await n.Z.get(d("workflows/".concat(t)),{headers:(0,c.g0)({realm:"hr"})})).data)||void 0===e?void 0:e.data},enabled:!!t&&a&&(0,o.Xu)()})},m=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=(0,s.NL)();return(0,l.D)({mutationFn:async e=>(await n.Z.post(d("workflows"),e,{headers:(0,c.g0)({realm:"hr"})})).data,onSuccess:(a,r)=>
1{t.invalidateQueries({queryKey:["workflows"]}),e.onSuccess&&e.onSuccess(a,r)},...e})},p=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=(0,s.NL)();return(0,l.D)({mutationFn:async e=>{let{workflowId:t,data:a}=e;return(await n.Z.post(d("workflows/".concat(t)),a,{headers:(0,c.g0)({realm:"hr"})})).data},onSuccess:(a,r)=>{t.setQueryData(["workflow",r.workflowId],a.data),t.invalidateQueries({queryKey:["workflows"]}),e.onSuccess&&e.onSuccess(a,r)},...e})}},56486:function(){},94217:function(e,t,a){"use strict";var r,s,l=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var r in a)Object.prototype.hasOwnProperty.call(a,r)&&(e[r]=a[r])}return e},n=function(){function e(e,t){for(var a=0;a<t.length;a++){var r=t[a];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,a,r){return a&&e(t.prototype,a),r&&e(t,r),t}}();t._1=function(e){var t;document.body.classList.add("react-confirm-alert-body-element"),function(){if(!document.getElementById("react-confirm-alert-firm-svg")){var e="http://www.w3.org/2000/svg",t=document.createElementNS(e,"feGaussianBlur");t.setAttribute("stdDeviation","0.3");var a=document.createElementNS(e,"filter");a.setAttribute("id","gaussian-blur"),a.appendChild(t);var r=document.createElementNS(e,"svg");r.setAttribute("id","react-confirm-alert-firm-svg"),r.setAttribute("class","react-confirm-alert-svg"),r.appendChild(a),document.body.appendChild(r)}}(),t=document.getElementById(e.targetId||f),e.targetId&&!t&&console.error("React Confirm Alert:","Can not get element id (#"+e.targetId+")"),t||(document.body.children[0].classList.add("react-confirm-alert-blur"),(t=document.createElement("div")).id=f,document.body.appendChild(t)),(g=(0,d.createRoot)(t)).render(i.default.createElement(p,e))};var o=a(2784),i=u(o),c=u(a(13980)),d=a(17029);function u(e){return e&&e.__esModule?e:{default:e}}function m(e,t){if(!e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return t&&("object"==typeof t||"function"==typeof t)?t:e}var p=(s=r=function(e){function t(){(function(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")})(this,t);for(var e,a,r,s=arguments.length,l=Array(s),n=0;n<s;n++)l[n]=arguments[n];return a=r=m(this,(e=t.__proto__||Object.getPrototypeOf(t)).call.apply(e,[this].concat(l))),r.handleClickButton=function(e){e.onClick&&e.onClick(),r.close()},r.handleClickOverlay=function(e){var t=r.props,a=t.closeOnClickOutside,s=t.onClickOutside,l=e.target===r.overlay;a&&l&&(s(),r.close()),e.stopPropagation()},r.close=function(){var e,t,a,s=r.props.afterClose;document.body.classList.remove("react-confirm-alert-body-element"),e=r.props,(t=document.getElementById(e.targetId||f))&&g.unmount(t),(a=document.getElementById("react-confirm-alert-firm-svg"))&&a.parentNode.removeChild(a),document.body.children[0].classList.remove("react-confirm-alert-blur"),s()},r.keyboard=function(e){var t=r.props,a=t.closeOnEscape,s=t.onKeypressEscape,l=t.onkeyPress,n=t.keyCodeForClose,o=e.keyCode,i=27===o;n.includes(o)&&r.close(),a&&i&&(s(e),r.close()),l&&l()},r.componentDidMount=function(){document.addEventListener("keydown",r.keyboard,!1)},r.componentWillUnmount=function(){document.removeEventListener("keydown",r.keyboard,!1),r.props.willUnmount()},r.renderCustomUI=function(){var e=r.props,t=e.title,a=e.message,s=e.buttons;return(0,e.customUI)({title:t,message:a,buttons:s,onClose:r.close})},m(r,a)}return function(e,t){if("function"!=typeof t&&null!==t)throw TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),n(t,[{key:"render",value:function(){var e=this,t=this.props,a=t.title,r=t.message,s=t.buttons,n=t.childrenElement,o=t.customUI,c=t.overlayClassName;return i.default.createElement("div",{className:"react-confirm-alert-overlay "+c,ref:function(t){return e.overlay=t},onClick:this.handleClickOverlay},i.default.createElement("div",{className:"react-confirm-alert"},o?this.renderCustomUI():i.default.createElement("div",{className:"react-confirm-alert-body"},a&&i.default.createElement("h1",null,a),r,n(),i.default.createElement("div",{className:"react-confirm-alert-button-group"},s.map(function(t,a){return i.default.createElement("button",l({key:a,className:t.className},t,{onClick:function(a){return e.handleClickButton(t)}}),t.label)})))))}}]),t}(o.Component),r.propTypes={title:c.default.string,message:c.default.string,buttons:c.default.array.isRequired,childrenElement:c.default.func,customUI:c.default.func,closeOnClickOutside:c.default.bool,closeOnEscape:c.default.bool,keyCodeForClose:c.default.arrayOf(c.default.number),willUnmount:c.default.func,afterClose:c.default.func,onClickOutside:c.default.func,onKeypressEscape:c.default.func,onkeyPress:c.default.func,overlayClassName:c.default.string},r.defaultProps={buttons:[{label:"Cancel",onClick:function(){return null},className:null},{label:"Confirm",onClick:function(){return null},className:null}],childrenElement:function(){return null},closeOnClickOutside:!0,closeOnEscape:!0,keyCodeForClose:[],willUnmount:function(){return null},afterClose:function(){return null},onClickOutside:function(){return null},onKeypressEscape:function(){return null}},s),g=null,f="react-confirm-alert"}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.