@fluig-kit/ecm 1.0.18 → 1.0.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +7 -0
- package/dist/index.js +354 -298
- package/dist/node.cjs +3 -1
- package/dist/node.js +3 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("react/jsx-runtime"),l=require("react"),F=require("react-hook-form"),j=require("@hookform/resolvers"),W=require("zod"),w=require("@fluig-kit/core");var Y=function(e,o){for(var r={};e.length;){var n=e[0],a=n.code,c=n.message,s=n.path.join(".");if(!r[s])if("unionErrors"in n){var i=n.unionErrors[0].errors[0];r[s]={message:i.message,type:i.code}}else r[s]={message:c,type:a};if("unionErrors"in n&&n.unionErrors.forEach(function(v){return v.errors.forEach(function(d){return e.push(d)})}),o){var u=r[s].types,t=u&&u[n.code];r[s]=F.appendErrors(s,o,r,a,t?[].concat(t,n.message):n.message)}e.shift()}return r},U=function(e,o,r){return r===void 0&&(r={}),function(n,a,c){try{return Promise.resolve(function(s,i){try{var u=Promise.resolve(e[r.mode==="sync"?"parse":"parseAsync"](n,o)).then(function(t){return c.shouldUseNativeValidation&&j.validateFieldsNatively({},c),{errors:{},values:r.raw?n:t}})}catch(t){return i(t)}return u&&u.then?u.then(void 0,i):u}(0,function(s){if(function(i){return Array.isArray(i==null?void 0:i.errors)}(s))return{values:{},errors:j.toNestErrors(Y(s.errors,!c.shouldUseNativeValidation&&c.criteriaMode==="all"),c)};throw s}))}catch(s){return Promise.reject(s)}}};const O=l.createContext(null);function B({children:e,baseSchema:o}){const[r,n]=l.useState([]),a=l.useMemo(()=>o??W.z.object({}),[o]),c=l.useCallback((t,v)=>{n(d=>d.some(A=>A.id===t)?d:[...d,{id:t,schema:v}])},[]),s=l.useCallback(t=>{n(v=>v.some(d=>d.id===t)?v.filter(d=>d.id!==t):v)},[]),i=l.useMemo(()=>r.length?r.map(t=>t.schema).reduce((t,v)=>t.and(v),a):a,[r,a]),u=l.useMemo(()=>({registerSchema:c,unregisterSchema:s,mergedSchema:i}),[c,s,i]);return g.jsx(O.Provider,{value:u,children:e})}function T(){const e=l.useContext(O);if(!e)throw new Error("useSchemaRegistry deve ser usado dentro de <SchemaRegistryProvider>");return e}function N(e){return typeof e=="number"?e:isNaN(Number(e))?null:Number(e)}function L(e,o,r){if(!e)return!0;const n=Array.isArray(o)?o[0]:o,a=e.field??n,c=r==null?void 0:r[a];return e.hasValue!==void 0?e.hasValue?c!=null&&c!=="":c==null||c==="":e.equals!==void 0?c===e.equals:e.notEquals!==void 0?c!==e.notEquals:!0}function G(e,o,r,n,a){const c=new Set(e),s=new Set(o);return r==null||r.forEach(i=>{if(i.from!==void 0){const t=Array.isArray(i.from)?i.from:[i.from];if(n===null||!t.includes(n))return}if(!L(i.when,i.target,a))return;const u=Array.isArray(i.target)?i.target:[i.target];switch(i.type){case"readonly":u.forEach(t=>{s.add(t),c.delete(t)});break;case"active":u.forEach(t=>{c.add(t),s.delete(t)});break;case"hidden":u.forEach(t=>{c.delete(t),s.delete(t)});break}}),{active:Array.from(c),readonly:Array.from(s)}}function z(e,o,r,n){const a=new Set(e.active),c=new Set(e.readonly),s=new Set(e.hidden??[]);return o==null||o.forEach(i=>{if(i.from!==void 0){const t=Array.isArray(i.from)?i.from:[i.from];if(r===null||!t.includes(r))return}if(!L(i.when,i.target,n))return;const u=Array.isArray(i.target)?i.target:[i.target];switch(i.type){case"hidden":u.forEach(t=>{s.add(t),a.delete(t),c.delete(t)});break;case"active":u.forEach(t=>{a.add(t),c.delete(t),s.delete(t)});break;case"readonly":u.forEach(t=>{c.add(t),a.delete(t),s.delete(t)});break}}),{active:Array.from(a),readonly:Array.from(c),hidden:Array.from(s)}}function H(e,o){if(!(e!=null&&e.length))return o;const r=new Map(o.map(a=>[a.name,a])),n=[];return e.forEach(a=>{r.has(a)&&(n.push(r.get(a)),r.delete(a))}),r.forEach(a=>n.push(a)),n}function $(e){var n,a;const o=new Set,r=(c=[])=>{c.forEach(s=>{var i;s.target&&(Array.isArray(s.target)?s.target:[s.target]).forEach(t=>o.add(t)),(i=s.when)!=null&&i.field&&o.add(s.when.field)})};return r((n=e==null?void 0:e.fields)==null?void 0:n.rules),r((a=e==null?void 0:e.sections)==null?void 0:a.rules),Array.from(o)}function K({activityId:e,previousActivityId:o,control:r,workflowStructure:n,sectionsRegistry:a}){const{registerSchema:c,unregisterSchema:s}=T(),i=N(e),u=N(o),t=i!==null?n[i]:null,v=l.useMemo(()=>$(t),[i,t]),d=F.useWatch({control:r,name:v,defaultValue:{}}),A=l.useMemo(()=>{const m={};return v.forEach((f,h)=>{m[f]=Array.isArray(d)?d[h]:d}),m},[d,v]),y=l.useMemo(()=>{if(!t)return{sections:[],fields:{active:[],readonly:[],hidden:[]}};const m=G(t.sections.active,t.sections.readonly,t.sections.rules,u,A);let f=[...m.readonly.map(b=>({name:b,mode:"readonly"})),...m.active.map(b=>({name:b,mode:"active"}))];f=H(t.sections.order,f);const h=z({active:t.fields.active,readonly:t.fields.readonly,hidden:t.fields.hidden},t.fields.rules,u,A);return{sections:f,fields:h}},[t,u,A,a]);return l.useEffect(()=>{const m=y.sections.filter(f=>f.mode==="active").map(f=>f.name);m.forEach(f=>{var b;const h=(b=a==null?void 0:a[f])==null?void 0:b.schema;h&&c(f,h)}),Object.keys(a??{}).filter(f=>!m.includes(f)).forEach(s)},[y.sections,a,c,s]),y}const J=l.createContext(null);function I(){const e=l.useContext(J);if(!e)throw new Error("useFluigRuntime deve ser usado dentro de <FluigRuntimeProvider>");return e}function Q(e){const{activityId:o,previousActivityId:r}=I();l.useEffect(()=>{o!=null&&e.setValue("CURRENTACTIVITYID",o),r!=null&&e.setValue("LASTACTIVITYID",r)},[o,r,e]),l.useEffect(()=>{if(typeof window>"u"||!window.top)return;const n=window.top.document,a=c=>{const s=c.target;(s.closest("[data-take-decision]")||s.closest("[data-take-task]")||s.closest(".movement-button"))&&(console.log("[FluigLifecycle] Ação de movimentação detectada. Ativando modo Edição."),e.setValue("FORM_MODE","MOD"))};return n.addEventListener("click",a),()=>{n.removeEventListener("click",a)}},[e]),l.useEffect(()=>{var a,c;if(typeof window>"u")return;const n=((a=window.top)==null?void 0:a.document.getElementById("send-process-button"))||((c=window.parent)==null?void 0:c.document.getElementById("workflow-actions-send"))||document.getElementById("send-process-button");if(!n){console.warn("[FluigWorkflowReact] Botão de envio do Fluig não encontrado. A validação automática pode falhar.");return}return window.beforeSendValidate=()=>(e.handleSubmit(()=>{window.top.__FLUIG_REACT_FORM_DATA__=e.getValues(),e.setValue("FORM_MODE","VIEW"),window.beforeSendValidate=()=>!0;try{n.dispatchEvent(new MouseEvent("click",{view:window,bubbles:!0,cancelable:!0}))}catch{n.click()}},s=>{var i,u,t;console.error("[Validation Errors]",s),(u=(i=window.top)==null?void 0:i.FLUIGC)!=null&&u.toast?(t=window.top)==null||t.FLUIGC.toast({title:"Atenção",message:"Verifique os campos obrigatórios destacados em vermelho.",type:"danger"}):alert("Verifique os campos obrigatórios.")})(),!1),()=>{}},[e])}const X=({workflowStructure:e,sectionsRegistry:o,className:r})=>{const{control:n,handleSubmit:a,register:c,setValue:s,watch:i}=F.useFormContext(),u=I(),t=i("FORM_MODE"),v=l.useRef(!1);l.useEffect(()=>{v.current||(u.activityId!=null&&s("CURRENTACTIVITYID",u.activityId),u.previousActivityId!=null&&s("LASTACTIVITYID",u.previousActivityId),v.current=!0)},[u,s]);const{sections:d,fields:A}=K({control:n,activityId:u.activityId,previousActivityId:u.previousActivityId,workflowStructure:e,sectionsRegistry:o}),y=m=>{console.log("✅ [FluigWorkflowForm] Dados válidos:",m)};return g.jsxs("form",{id:"fluig-react-form",className:r,onSubmit:a(y),noValidate:!0,children:[g.jsxs("div",{className:"hidden",style:{display:"none"},children:[g.jsx("input",{type:"hidden",...c("CURRENTACTIVITYID")}),g.jsx("input",{type:"hidden",...c("LASTACTIVITYID")}),g.jsx("input",{type:"hidden",...c("FORM_MODE")})]}),d.length===0&&u.activityId!==null&&g.jsxs("p",{children:["Não foi possível encontrar a atividade: ",String(u.activityId)]}),d.map(({name:m,mode:f})=>{if(f==="hidden")return null;const h=o[m];if(!h)return null;const b=h.Component,k=t==="VIEW";return g.jsx(b,{id:m,fields:A,readOnly:f==="readonly"||k},m)}),u.isDev&&u.showDebugSubmit&&g.jsx("div",{style:{width:"100%",padding:"16px",paddingTop:"0"},children:g.jsx("button",{type:"submit",className:"btn btn-primary btn-lg btn-block",children:"Submit (Debug)"})})]})},Z=e=>{const{mergedSchema:o}=T(),r=I(),n=F.useForm({resolver:o?U(o):void 0,defaultValues:r.prefilledValues,mode:"onBlur"});return Q(n),l.useEffect(()=>{r.showDebugLogs&&(w.DebugLogger.header("Form Initialized"),w.DebugLogger.table("Prefilled Values (DOM Capture)",r.prefilledValues),w.DebugLogger.info("RHF Current Values",n.getValues()),w.DebugLogger.end())},[r.showDebugLogs,r.prefilledValues,n]),g.jsx(F.FormProvider,{...n,children:g.jsx(X,{...e})})};async function ee(e){if(!e)return console.warn("[setFluigNextActivity] Nenhuma atividade informada."),!1;const{wfView:o,wkfView:r}=await te();if(!o||!r)return!1;re(o);const n=Number(e),a=ne(o,n);return a?(oe(o,r,a,n),console.log(`[setFluigNextActivity] Próxima atividade definida: ${n}`),!0):(console.warn(`[setFluigNextActivity] Estado ${n} não encontrado nas próximas atividades disponíveis.`),console.log("Estados disponíveis:",o.availableStatesCOPY||o.availableStates),!1)}async function te(){const e=await w.parentProxy.top.ECM.workflowView,o=await w.parentProxy.top.ECM_WKFView;return!e||!o?(console.warn("[setFluigNextActivity] Contexto Fluig inválido ou não carregado."),{}):{wfView:e,wkfView:o}}function re(e){e.availableStatesCOPY||(e.availableStatesCOPY=e.availableStates)}function ne(e,o){const r=e.availableStatesCOPY||e.availableStates;return r==null?void 0:r.find(n=>n.sequence===o)}function oe(e,o,r,n){e.availableUsers.users=[],e.availableStates=[r],o.selectActivity=()=>n}const _=l.createContext(null);function ie(){const e=l.useContext(_);if(!e)throw new Error("useSection deve ser usado dentro de um componente <Section>");return e}function se({id:e,className:o,schema:r,children:n,form:a,prefilledValues:c,readOnly:s,fields:i={},hidden:u=!1}){const{isView:t,activityId:v}=I(),d=v,A=F.useFormContext(),y=a||A;if(!y)return console.error(`[FluigWorkflowReact] Section "${e}" não encontrou o 'form'.`),null;if(u)return null;const m=l.useCallback(p=>{var S,C,V;return(S=i.hidden)!=null&&S.includes(p)?"hidden":(C=i.readonly)!=null&&C.includes(p)?"readonly":(V=i.active)!=null&&V.includes(p)?"active":s?"readonly":"active"},[i,s]),f=l.useCallback(p=>m(p)==="hidden",[m]),h=l.useCallback(p=>m(p)==="readonly",[m]),b=l.useCallback(p=>{if(!p)return;const S=y.getValues("CURRENTACTIVITYID");y.setValue("LASTACTIVITYID",S),y.setValue("CURRENTACTIVITYID",d),ee(Number(p))},[y,d]);l.useEffect(()=>{if(!t||!c||!r||!y)return;const p=y.getValues(),S=r.shape;S&&Object.entries(S).forEach(([C,V])=>{var M,P;let E=V;for(;(M=E==null?void 0:E._def)!=null&&M.schema;)E=E._def.schema;const x=(P=E==null?void 0:E._def)==null?void 0:P.fluig;if((x==null?void 0:x.type)!=="options"||!Array.isArray(x.values)||p[C]!==void 0)return;const D={};x.values.forEach(R=>{D[R]=c[R]==="on"}),y.setValue(C,D,{shouldDirty:!1,shouldValidate:!1})})},[t,c,r,y]);const k=l.useMemo(()=>({id:e,form:y,isHidden:f,isReadOnly:h,isView:t,next:b,wf_activity_id:d}),[e,y,f,h,t,b,d]);return g.jsx(_.Provider,{value:k,children:g.jsx("section",{id:e,className:[e,o].filter(Boolean).join(" "),children:n})})}const q=l.createContext(null);function ae({children:e,config:o}){const r=l.useMemo(()=>w.createFluigClient(o),[o]);return g.jsx(q.Provider,{value:r,children:e})}function ce(){const e=l.useContext(q);if(!e)throw new Error("useFluigApi deve ser usado dentro de um <FluigApiProvider>");return e}Object.defineProperty(exports,"DebugLogger",{enumerable:!0,get:()=>w.DebugLogger});Object.defineProperty(exports,"createFluigClient",{enumerable:!0,get:()=>w.createFluigClient});Object.defineProperty(exports,"parentProxy",{enumerable:!0,get:()=>w.parentProxy});exports.FluigApiProvider=ae;exports.FluigWorkflowForm=Z;exports.SchemaRegistryProvider=B;exports.Section=se;exports.useFluigApi=ce;exports.useFluigRuntime=I;exports.useSchemaRegistry=T;exports.useSection=ie;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const p=require("react/jsx-runtime"),l=require("react"),F=require("react-hook-form"),N=require("@hookform/resolvers"),W=require("zod"),A=require("@fluig-kit/core");var U=function(e,o){for(var t={};e.length;){var r=e[0],i=r.code,s=r.message,a=r.path.join(".");if(!t[a])if("unionErrors"in r){var c=r.unionErrors[0].errors[0];t[a]={message:c.message,type:c.code}}else t[a]={message:s,type:i};if("unionErrors"in r&&r.unionErrors.forEach(function(g){return g.errors.forEach(function(d){return e.push(d)})}),o){var u=t[a].types,n=u&&u[r.code];t[a]=F.appendErrors(a,o,t,i,n?[].concat(n,r.message):r.message)}e.shift()}return t},B=function(e,o,t){return t===void 0&&(t={}),function(r,i,s){try{return Promise.resolve(function(a,c){try{var u=Promise.resolve(e[t.mode==="sync"?"parse":"parseAsync"](r,o)).then(function(n){return s.shouldUseNativeValidation&&N.validateFieldsNatively({},s),{errors:{},values:t.raw?r:n}})}catch(n){return c(n)}return u&&u.then?u.then(void 0,c):u}(0,function(a){if(function(c){return Array.isArray(c==null?void 0:c.errors)}(a))return{values:{},errors:N.toNestErrors(U(a.errors,!s.shouldUseNativeValidation&&s.criteriaMode==="all"),s)};throw a}))}catch(a){return Promise.reject(a)}}};const O=l.createContext(null);function z({children:e,baseSchema:o}){const[t,r]=l.useState([]),i=l.useMemo(()=>o??W.z.object({}),[o]),s=l.useCallback((n,g)=>{r(d=>d.some(w=>w.id===n)?d:[...d,{id:n,schema:g}])},[]),a=l.useCallback(n=>{r(g=>g.some(d=>d.id===n)?g.filter(d=>d.id!==n):g)},[]),c=l.useMemo(()=>t.length?t.map(n=>n.schema).reduce((n,g)=>n.and(g),i):i,[t,i]),u=l.useMemo(()=>({registerSchema:s,unregisterSchema:a,mergedSchema:c}),[s,a,c]);return p.jsx(O.Provider,{value:u,children:e})}function T(){const e=l.useContext(O);if(!e)throw new Error("useSchemaRegistry deve ser usado dentro de <SchemaRegistryProvider>");return e}function j(e){return typeof e=="number"?e:isNaN(Number(e))?null:Number(e)}function L(e,o,t){if(!e)return!0;const r=Array.isArray(o)?o[0]:o,i=e.field??r,s=t==null?void 0:t[i];return e.hasValue!==void 0?e.hasValue?s!=null&&s!=="":s==null||s==="":e.equals!==void 0?s===e.equals:e.notEquals!==void 0?s!==e.notEquals:!0}function G(e,o,t,r,i){const s=new Set(e),a=new Set(o);return t==null||t.forEach(c=>{if(c.from!==void 0){const n=Array.isArray(c.from)?c.from:[c.from];if(r===null||!n.includes(r))return}if(!L(c.when,c.target,i))return;const u=Array.isArray(c.target)?c.target:[c.target];switch(c.type){case"readonly":u.forEach(n=>{a.add(n),s.delete(n)});break;case"active":u.forEach(n=>{s.add(n),a.delete(n)});break;case"hidden":u.forEach(n=>{s.delete(n),a.delete(n)});break}}),{active:Array.from(s),readonly:Array.from(a)}}function H(e,o,t,r){const i=new Set(e.active),s=new Set(e.readonly),a=new Set(e.hidden??[]);return o==null||o.forEach(c=>{if(c.from!==void 0){const n=Array.isArray(c.from)?c.from:[c.from];if(t===null||!n.includes(t))return}if(!L(c.when,c.target,r))return;const u=Array.isArray(c.target)?c.target:[c.target];switch(c.type){case"hidden":u.forEach(n=>{a.add(n),i.delete(n),s.delete(n)});break;case"active":u.forEach(n=>{i.add(n),s.delete(n),a.delete(n)});break;case"readonly":u.forEach(n=>{s.add(n),i.delete(n),a.delete(n)});break}}),{active:Array.from(i),readonly:Array.from(s),hidden:Array.from(a)}}function $(e,o){if(!(e!=null&&e.length))return o;const t=new Map(o.map(i=>[i.name,i])),r=[];return e.forEach(i=>{t.has(i)&&(r.push(t.get(i)),t.delete(i))}),t.forEach(i=>r.push(i)),r}function K(e){var r,i;const o=new Set,t=(s=[])=>{s.forEach(a=>{var c;a.target&&(Array.isArray(a.target)?a.target:[a.target]).forEach(n=>o.add(n)),(c=a.when)!=null&&c.field&&o.add(a.when.field)})};return t((r=e==null?void 0:e.fields)==null?void 0:r.rules),t((i=e==null?void 0:e.sections)==null?void 0:i.rules),Array.from(o)}function J({activityId:e,previousActivityId:o,control:t,workflowStructure:r,sectionsRegistry:i}){const{registerSchema:s,unregisterSchema:a}=T(),c=j(e),u=j(o),n=c!==null?r[c]:null,g=l.useMemo(()=>K(n),[c,n]),d=F.useWatch({control:t,name:g,defaultValue:{}}),w=l.useMemo(()=>{const m={};return g.forEach((f,v)=>{m[f]=Array.isArray(d)?d[v]:d}),m},[d,g]),y=l.useMemo(()=>{if(!n)return{sections:[],fields:{active:[],readonly:[],hidden:[]}};const m=G(n.sections.active,n.sections.readonly,n.sections.rules,u,w);let f=[...m.readonly.map(h=>({name:h,mode:"readonly"})),...m.active.map(h=>({name:h,mode:"active"}))];f=$(n.sections.order,f);const v=H({active:n.fields.active,readonly:n.fields.readonly,hidden:n.fields.hidden},n.fields.rules,u,w);return{sections:f,fields:v}},[n,u,w,i]);return l.useEffect(()=>{const m=y.sections.filter(f=>f.mode==="active").map(f=>f.name);m.forEach(f=>{var h;const v=(h=i==null?void 0:i[f])==null?void 0:h.schema;v&&s(f,v)}),Object.keys(i??{}).filter(f=>!m.includes(f)).forEach(a)},[y.sections,i,s,a]),y}function Q(){if(typeof document>"u")return{};const e={};return document.querySelectorAll("input[type='radio'][name]").forEach(o=>{const t=o,r=t.getAttribute("name");r&&t.checked&&(e[r]=t.value)}),document.querySelectorAll("input[name], textarea[name], select[name]").forEach(o=>{const t=o,r=t.getAttribute("name");if(!r||e[r]!==void 0)return;const i=t.getAttribute("value")??t.value??t.textContent??"";e[r]=String(i).trim()}),document.querySelectorAll("span[name]").forEach(o=>{var i;const t=o,r=t.getAttribute("name");if(r){const s=((i=t.textContent)==null?void 0:i.trim())??"";s!==""&&(e[r]=s)}}),e}const q=l.createContext(null);function X({children:e,devConfig:o}){const[t,r]=l.useState(null),i=l.useRef(o);l.useEffect(()=>{i.current=o},[o]);const s=l.useMemo(()=>Q()??{},[]);return l.useEffect(()=>{let a=!0;return(async()=>{var m,f;const u=typeof window<"u"&&window.location.hostname==="localhost";let n=null;try{const v=await((m=A.parentProxy.top.ECM)==null?void 0:m.workflowView);if(v){const h=await v.sequence;n=h!==void 0?Number(h):null}}catch(v){u||console.warn("[FluigRuntime] Erro Proxy:",v)}const d=(s.FORM_MODE||"").toLowerCase()==="view",w={isView:d,isReadOnly:d,activityId:n,previousActivityId:s.LASTACTIVITYID?Number(s.LASTACTIVITYID):null,prefilledValues:s,showDebugSubmit:!1,showDebugLogs:!1,isDev:!1};let y={...w};if((f=i.current)!=null&&f.enabled){const v=i.current,h=v.isView??w.isView;y={...w,...v,isView:h,isReadOnly:h,isDev:!0,activityId:v.activityId!==void 0?v.activityId:n}}a&&r(y)})(),()=>{a=!1}},[s]),t?p.jsx(q.Provider,{value:t,children:e}):null}function x(){const e=l.useContext(q);if(!e)throw new Error("useFluigRuntime deve ser usado dentro de <FluigRuntimeProvider>");return e}function Z(e){const{activityId:o,previousActivityId:t}=x();l.useEffect(()=>{o!=null&&e.setValue("CURRENTACTIVITYID",o),t!=null&&e.setValue("LASTACTIVITYID",t)},[o,t,e]),l.useEffect(()=>{if(typeof window>"u"||!window.top)return;const r=window.top.document,i=s=>{const a=s.target;(a.closest("[data-take-decision]")||a.closest("[data-take-task]")||a.closest(".movement-button"))&&(console.log("[FluigLifecycle] Ação detectada: setando modo 'edit'"),e.setValue("FORM_MODE","edit"))};return r.addEventListener("click",i),()=>r.removeEventListener("click",i)},[e]),l.useEffect(()=>{var i,s;if(typeof window>"u")return;const r=((i=window.top)==null?void 0:i.document.getElementById("send-process-button"))||((s=window.parent)==null?void 0:s.document.getElementById("workflow-actions-send"));r&&(window.beforeSendValidate=()=>{let a=!1;return e.handleSubmit(()=>{window.top.__FLUIG_REACT_FORM_DATA__=e.getValues(),e.setValue("FORM_MODE","view"),window.beforeSendValidate=()=>!0,a=!0,r.click()},c=>{var u,n;console.error("[Validation Errors]",c),(n=(u=window.top)==null?void 0:u.FLUIGC)!=null&&n.toast&&window.top.FLUIGC.toast({title:"Atenção",message:"Verifique os campos obrigatórios.",type:"danger"})})(),a})},[e])}const ee=({workflowStructure:e,sectionsRegistry:o,className:t})=>{const{control:r,handleSubmit:i,register:s,setValue:a,watch:c}=F.useFormContext(),u=x(),n=c("FORM_MODE"),g=l.useRef(!1);l.useEffect(()=>{g.current||(u.activityId!=null&&a("CURRENTACTIVITYID",u.activityId),u.previousActivityId!=null&&a("LASTACTIVITYID",u.previousActivityId),g.current=!0)},[u,a]);const{sections:d,fields:w}=J({control:r,activityId:u.activityId,previousActivityId:u.previousActivityId,workflowStructure:e,sectionsRegistry:o}),y=m=>{console.log("✅ [FluigWorkflowForm] Dados válidos:",m)};return p.jsxs("form",{id:"fluig-react-form",className:t,onSubmit:i(y),noValidate:!0,children:[p.jsxs("div",{className:"hidden",style:{display:"none"},children:[p.jsx("input",{type:"hidden",...s("CURRENTACTIVITYID")}),p.jsx("input",{type:"hidden",...s("LASTACTIVITYID")}),p.jsx("input",{type:"hidden",...s("FORM_MODE")})]}),d.length===0&&u.activityId!==null&&p.jsxs("p",{children:["Não foi possível encontrar a atividade: ",String(u.activityId)]}),d.map(({name:m,mode:f})=>{if(f==="hidden")return null;const v=o[m];if(!v)return null;const h=v.Component,R=n==="VIEW";return p.jsx(h,{id:m,fields:w,readOnly:f==="readonly"||R},m)}),u.isDev&&u.showDebugSubmit&&p.jsx("div",{style:{width:"100%",padding:"16px",paddingTop:"0"},children:p.jsx("button",{type:"submit",className:"btn btn-primary btn-lg btn-block",children:"Submit (Debug)"})})]})},te=e=>{const{mergedSchema:o}=T(),t=x(),r=F.useForm({resolver:o?B(o):void 0,defaultValues:t.prefilledValues,mode:"onBlur"});return Z(r),l.useEffect(()=>{t.showDebugLogs&&(A.DebugLogger.header("Form Initialized"),A.DebugLogger.table("Prefilled Values (DOM Capture)",t.prefilledValues),A.DebugLogger.info("RHF Current Values",r.getValues()),A.DebugLogger.end())},[t.showDebugLogs,t.prefilledValues,r]),p.jsx(F.FormProvider,{...r,children:p.jsx(ee,{...e})})};async function ne(e){if(!e)return console.warn("[setFluigNextActivity] Nenhuma atividade informada."),!1;const{wfView:o,wkfView:t}=await re();if(!o||!t)return!1;oe(o);const r=Number(e),i=ie(o,r);return i?(se(o,t,i,r),console.log(`[setFluigNextActivity] Próxima atividade definida: ${r}`),!0):(console.warn(`[setFluigNextActivity] Estado ${r} não encontrado nas próximas atividades disponíveis.`),console.log("Estados disponíveis:",o.availableStatesCOPY||o.availableStates),!1)}async function re(){const e=await A.parentProxy.top.ECM.workflowView,o=await A.parentProxy.top.ECM_WKFView;return!e||!o?(console.warn("[setFluigNextActivity] Contexto Fluig inválido ou não carregado."),{}):{wfView:e,wkfView:o}}function oe(e){e.availableStatesCOPY||(e.availableStatesCOPY=e.availableStates)}function ie(e,o){const t=e.availableStatesCOPY||e.availableStates;return t==null?void 0:t.find(r=>r.sequence===o)}function se(e,o,t,r){e.availableUsers.users=[],e.availableStates=[t],o.selectActivity=()=>r}const _=l.createContext(null);function ae(){const e=l.useContext(_);if(!e)throw new Error("useSection deve ser usado dentro de um componente <Section>");return e}function ce({id:e,className:o,schema:t,children:r,form:i,prefilledValues:s,readOnly:a,fields:c={},hidden:u=!1}){const{isView:n,activityId:g}=x(),d=g,w=F.useFormContext(),y=i||w;if(!y)return console.error(`[FluigWorkflowReact] Section "${e}" não encontrou o 'form'.`),null;if(u)return null;const m=l.useCallback(b=>{var E,V,C;return(E=c.hidden)!=null&&E.includes(b)?"hidden":(V=c.readonly)!=null&&V.includes(b)?"readonly":(C=c.active)!=null&&C.includes(b)?"active":a?"readonly":"active"},[c,a]),f=l.useCallback(b=>m(b)==="hidden",[m]),v=l.useCallback(b=>m(b)==="readonly",[m]),h=l.useCallback(b=>{if(!b)return;const E=y.getValues("CURRENTACTIVITYID");y.setValue("LASTACTIVITYID",E),y.setValue("CURRENTACTIVITYID",d),ne(Number(b))},[y,d]);l.useEffect(()=>{if(!n||!s||!t||!y)return;const b=y.getValues(),E=t.shape;E&&Object.entries(E).forEach(([V,C])=>{var k,P;let S=C;for(;(k=S==null?void 0:S._def)!=null&&k.schema;)S=S._def.schema;const I=(P=S==null?void 0:S._def)==null?void 0:P.fluig;if((I==null?void 0:I.type)!=="options"||!Array.isArray(I.values)||b[V]!==void 0)return;const D={};I.values.forEach(M=>{D[M]=s[M]==="on"}),y.setValue(V,D,{shouldDirty:!1,shouldValidate:!1})})},[n,s,t,y]);const R=l.useMemo(()=>({id:e,form:y,isHidden:f,isReadOnly:v,isView:n,next:h,wf_activity_id:d}),[e,y,f,v,n,h,d]);return p.jsx(_.Provider,{value:R,children:p.jsx("section",{id:e,className:[e,o].filter(Boolean).join(" "),children:r})})}const Y=l.createContext(null);function ue({children:e,config:o}){const t=l.useMemo(()=>A.createFluigClient(o),[o]);return p.jsx(Y.Provider,{value:t,children:e})}function le(){const e=l.useContext(Y);if(!e)throw new Error("useFluigApi deve ser usado dentro de um <FluigApiProvider>");return e}Object.defineProperty(exports,"DebugLogger",{enumerable:!0,get:()=>A.DebugLogger});Object.defineProperty(exports,"createFluigClient",{enumerable:!0,get:()=>A.createFluigClient});Object.defineProperty(exports,"parentProxy",{enumerable:!0,get:()=>A.parentProxy});exports.FluigApiProvider=ue;exports.FluigRuntimeProvider=X;exports.FluigWorkflowForm=te;exports.SchemaRegistryProvider=z;exports.Section=ce;exports.useFluigApi=le;exports.useFluigRuntime=x;exports.useSchemaRegistry=T;exports.useSection=ae;
|
package/dist/index.d.ts
CHANGED
|
@@ -49,6 +49,13 @@ export declare type FluigRuntimeDevConfig = Partial<Omit<FluigRuntimeState, "pre
|
|
|
49
49
|
enabled?: boolean;
|
|
50
50
|
};
|
|
51
51
|
|
|
52
|
+
export declare function FluigRuntimeProvider({ children, devConfig, }: FluigRuntimeProviderProps): JSX_2.Element | null;
|
|
53
|
+
|
|
54
|
+
declare interface FluigRuntimeProviderProps {
|
|
55
|
+
children: ReactNode;
|
|
56
|
+
devConfig?: FluigRuntimeDevConfig;
|
|
57
|
+
}
|
|
58
|
+
|
|
52
59
|
export declare interface FluigRuntimeState {
|
|
53
60
|
isView: boolean;
|
|
54
61
|
isReadOnly: boolean;
|
package/dist/index.js
CHANGED
|
@@ -1,461 +1,516 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
import { createContext as
|
|
3
|
-
import { appendErrors as
|
|
4
|
-
import { validateFieldsNatively as
|
|
5
|
-
import { z as
|
|
6
|
-
import {
|
|
7
|
-
import { DebugLogger as
|
|
8
|
-
var
|
|
9
|
-
for (var
|
|
10
|
-
var r = e[0],
|
|
11
|
-
if (!
|
|
12
|
-
var
|
|
13
|
-
|
|
14
|
-
} else
|
|
15
|
-
if ("unionErrors" in r && r.unionErrors.forEach(function(
|
|
16
|
-
return
|
|
17
|
-
return e.push(
|
|
1
|
+
import { jsx as g, jsxs as N } from "react/jsx-runtime";
|
|
2
|
+
import { createContext as x, useState as q, useMemo as A, useCallback as I, useContext as D, useEffect as b, useRef as U } from "react";
|
|
3
|
+
import { appendErrors as K, useWatch as J, useForm as Q, FormProvider as X, useFormContext as W } from "react-hook-form";
|
|
4
|
+
import { validateFieldsNatively as Z, toNestErrors as ee } from "@hookform/resolvers";
|
|
5
|
+
import { z as te } from "zod";
|
|
6
|
+
import { parentProxy as k, DebugLogger as T, createFluigClient as ne } from "@fluig-kit/core";
|
|
7
|
+
import { DebugLogger as ke, createFluigClient as Pe, parentProxy as Me } from "@fluig-kit/core";
|
|
8
|
+
var re = function(e, o) {
|
|
9
|
+
for (var t = {}; e.length; ) {
|
|
10
|
+
var r = e[0], i = r.code, a = r.message, s = r.path.join(".");
|
|
11
|
+
if (!t[s]) if ("unionErrors" in r) {
|
|
12
|
+
var c = r.unionErrors[0].errors[0];
|
|
13
|
+
t[s] = { message: c.message, type: c.code };
|
|
14
|
+
} else t[s] = { message: a, type: i };
|
|
15
|
+
if ("unionErrors" in r && r.unionErrors.forEach(function(v) {
|
|
16
|
+
return v.errors.forEach(function(l) {
|
|
17
|
+
return e.push(l);
|
|
18
18
|
});
|
|
19
19
|
}), o) {
|
|
20
|
-
var
|
|
21
|
-
|
|
20
|
+
var u = t[s].types, n = u && u[r.code];
|
|
21
|
+
t[s] = K(s, o, t, i, n ? [].concat(n, r.message) : r.message);
|
|
22
22
|
}
|
|
23
23
|
e.shift();
|
|
24
24
|
}
|
|
25
|
-
return
|
|
26
|
-
},
|
|
27
|
-
return
|
|
25
|
+
return t;
|
|
26
|
+
}, oe = function(e, o, t) {
|
|
27
|
+
return t === void 0 && (t = {}), function(r, i, a) {
|
|
28
28
|
try {
|
|
29
|
-
return Promise.resolve(function(
|
|
29
|
+
return Promise.resolve(function(s, c) {
|
|
30
30
|
try {
|
|
31
|
-
var
|
|
32
|
-
return
|
|
31
|
+
var u = Promise.resolve(e[t.mode === "sync" ? "parse" : "parseAsync"](r, o)).then(function(n) {
|
|
32
|
+
return a.shouldUseNativeValidation && Z({}, a), { errors: {}, values: t.raw ? r : n };
|
|
33
33
|
});
|
|
34
|
-
} catch (
|
|
35
|
-
return
|
|
34
|
+
} catch (n) {
|
|
35
|
+
return c(n);
|
|
36
36
|
}
|
|
37
|
-
return
|
|
38
|
-
}(0, function(
|
|
39
|
-
if (function(
|
|
40
|
-
return Array.isArray(
|
|
41
|
-
}(
|
|
42
|
-
throw
|
|
37
|
+
return u && u.then ? u.then(void 0, c) : u;
|
|
38
|
+
}(0, function(s) {
|
|
39
|
+
if (function(c) {
|
|
40
|
+
return Array.isArray(c == null ? void 0 : c.errors);
|
|
41
|
+
}(s)) return { values: {}, errors: ee(re(s.errors, !a.shouldUseNativeValidation && a.criteriaMode === "all"), a) };
|
|
42
|
+
throw s;
|
|
43
43
|
}));
|
|
44
|
-
} catch (
|
|
45
|
-
return Promise.reject(
|
|
44
|
+
} catch (s) {
|
|
45
|
+
return Promise.reject(s);
|
|
46
46
|
}
|
|
47
47
|
};
|
|
48
48
|
};
|
|
49
|
-
const
|
|
49
|
+
const j = x(
|
|
50
50
|
null
|
|
51
51
|
);
|
|
52
|
-
function
|
|
52
|
+
function Ie({
|
|
53
53
|
children: e,
|
|
54
54
|
baseSchema: o
|
|
55
55
|
}) {
|
|
56
|
-
const [
|
|
57
|
-
r((
|
|
58
|
-
}, []),
|
|
59
|
-
r((
|
|
60
|
-
}, []),
|
|
56
|
+
const [t, r] = q([]), i = A(() => o ?? te.object({}), [o]), a = I((n, v) => {
|
|
57
|
+
r((l) => l.some((p) => p.id === n) ? l : [...l, { id: n, schema: v }]);
|
|
58
|
+
}, []), s = I((n) => {
|
|
59
|
+
r((v) => v.some((l) => l.id === n) ? v.filter((l) => l.id !== n) : v);
|
|
60
|
+
}, []), c = A(() => t.length ? t.map((n) => n.schema).reduce((n, v) => n.and(v), i) : i, [t, i]), u = A(
|
|
61
61
|
() => ({
|
|
62
|
-
registerSchema:
|
|
63
|
-
unregisterSchema:
|
|
64
|
-
mergedSchema:
|
|
62
|
+
registerSchema: a,
|
|
63
|
+
unregisterSchema: s,
|
|
64
|
+
mergedSchema: c
|
|
65
65
|
}),
|
|
66
|
-
[
|
|
66
|
+
[a, s, c]
|
|
67
67
|
);
|
|
68
|
-
return /* @__PURE__ */
|
|
68
|
+
return /* @__PURE__ */ g(j.Provider, { value: u, children: e });
|
|
69
69
|
}
|
|
70
|
-
function
|
|
71
|
-
const e =
|
|
70
|
+
function B() {
|
|
71
|
+
const e = D(j);
|
|
72
72
|
if (!e)
|
|
73
73
|
throw new Error(
|
|
74
74
|
"useSchemaRegistry deve ser usado dentro de <SchemaRegistryProvider>"
|
|
75
75
|
);
|
|
76
76
|
return e;
|
|
77
77
|
}
|
|
78
|
-
function
|
|
78
|
+
function Y(e) {
|
|
79
79
|
return typeof e == "number" ? e : isNaN(Number(e)) ? null : Number(e);
|
|
80
80
|
}
|
|
81
|
-
function
|
|
81
|
+
function z(e, o, t) {
|
|
82
82
|
if (!e) return !0;
|
|
83
|
-
const r = Array.isArray(o) ? o[0] : o,
|
|
84
|
-
return e.hasValue !== void 0 ? e.hasValue ?
|
|
83
|
+
const r = Array.isArray(o) ? o[0] : o, i = e.field ?? r, a = t == null ? void 0 : t[i];
|
|
84
|
+
return e.hasValue !== void 0 ? e.hasValue ? a != null && a !== "" : a == null || a === "" : e.equals !== void 0 ? a === e.equals : e.notEquals !== void 0 ? a !== e.notEquals : !0;
|
|
85
85
|
}
|
|
86
|
-
function
|
|
87
|
-
const
|
|
88
|
-
return
|
|
89
|
-
if (
|
|
90
|
-
const
|
|
91
|
-
if (r === null || !
|
|
86
|
+
function ie(e, o, t, r, i) {
|
|
87
|
+
const a = new Set(e), s = new Set(o);
|
|
88
|
+
return t == null || t.forEach((c) => {
|
|
89
|
+
if (c.from !== void 0) {
|
|
90
|
+
const n = Array.isArray(c.from) ? c.from : [c.from];
|
|
91
|
+
if (r === null || !n.includes(r)) return;
|
|
92
92
|
}
|
|
93
|
-
if (!
|
|
94
|
-
const
|
|
95
|
-
switch (
|
|
93
|
+
if (!z(c.when, c.target, i)) return;
|
|
94
|
+
const u = Array.isArray(c.target) ? c.target : [c.target];
|
|
95
|
+
switch (c.type) {
|
|
96
96
|
case "readonly":
|
|
97
|
-
|
|
98
|
-
|
|
97
|
+
u.forEach((n) => {
|
|
98
|
+
s.add(n), a.delete(n);
|
|
99
99
|
});
|
|
100
100
|
break;
|
|
101
101
|
case "active":
|
|
102
|
-
|
|
103
|
-
|
|
102
|
+
u.forEach((n) => {
|
|
103
|
+
a.add(n), s.delete(n);
|
|
104
104
|
});
|
|
105
105
|
break;
|
|
106
106
|
case "hidden":
|
|
107
|
-
|
|
108
|
-
|
|
107
|
+
u.forEach((n) => {
|
|
108
|
+
a.delete(n), s.delete(n);
|
|
109
109
|
});
|
|
110
110
|
break;
|
|
111
111
|
}
|
|
112
|
-
}), { active: Array.from(
|
|
112
|
+
}), { active: Array.from(a), readonly: Array.from(s) };
|
|
113
113
|
}
|
|
114
|
-
function
|
|
115
|
-
const
|
|
116
|
-
return o == null || o.forEach((
|
|
117
|
-
if (
|
|
118
|
-
const
|
|
119
|
-
if (
|
|
114
|
+
function ae(e, o, t, r) {
|
|
115
|
+
const i = new Set(e.active), a = new Set(e.readonly), s = new Set(e.hidden ?? []);
|
|
116
|
+
return o == null || o.forEach((c) => {
|
|
117
|
+
if (c.from !== void 0) {
|
|
118
|
+
const n = Array.isArray(c.from) ? c.from : [c.from];
|
|
119
|
+
if (t === null || !n.includes(t)) return;
|
|
120
120
|
}
|
|
121
|
-
if (!
|
|
122
|
-
const
|
|
123
|
-
switch (
|
|
121
|
+
if (!z(c.when, c.target, r)) return;
|
|
122
|
+
const u = Array.isArray(c.target) ? c.target : [c.target];
|
|
123
|
+
switch (c.type) {
|
|
124
124
|
case "hidden":
|
|
125
|
-
|
|
126
|
-
|
|
125
|
+
u.forEach((n) => {
|
|
126
|
+
s.add(n), i.delete(n), a.delete(n);
|
|
127
127
|
});
|
|
128
128
|
break;
|
|
129
129
|
case "active":
|
|
130
|
-
|
|
131
|
-
|
|
130
|
+
u.forEach((n) => {
|
|
131
|
+
i.add(n), a.delete(n), s.delete(n);
|
|
132
132
|
});
|
|
133
133
|
break;
|
|
134
134
|
case "readonly":
|
|
135
|
-
|
|
136
|
-
|
|
135
|
+
u.forEach((n) => {
|
|
136
|
+
a.add(n), i.delete(n), s.delete(n);
|
|
137
137
|
});
|
|
138
138
|
break;
|
|
139
139
|
}
|
|
140
140
|
}), {
|
|
141
|
-
active: Array.from(
|
|
142
|
-
readonly: Array.from(
|
|
143
|
-
hidden: Array.from(
|
|
141
|
+
active: Array.from(i),
|
|
142
|
+
readonly: Array.from(a),
|
|
143
|
+
hidden: Array.from(s)
|
|
144
144
|
};
|
|
145
145
|
}
|
|
146
|
-
function
|
|
146
|
+
function se(e, o) {
|
|
147
147
|
if (!(e != null && e.length)) return o;
|
|
148
|
-
const
|
|
149
|
-
return e.forEach((
|
|
150
|
-
|
|
151
|
-
}),
|
|
148
|
+
const t = new Map(o.map((i) => [i.name, i])), r = [];
|
|
149
|
+
return e.forEach((i) => {
|
|
150
|
+
t.has(i) && (r.push(t.get(i)), t.delete(i));
|
|
151
|
+
}), t.forEach((i) => r.push(i)), r;
|
|
152
152
|
}
|
|
153
|
-
function
|
|
154
|
-
var r,
|
|
155
|
-
const o = /* @__PURE__ */ new Set(),
|
|
156
|
-
|
|
157
|
-
var
|
|
158
|
-
|
|
153
|
+
function ce(e) {
|
|
154
|
+
var r, i;
|
|
155
|
+
const o = /* @__PURE__ */ new Set(), t = (a = []) => {
|
|
156
|
+
a.forEach((s) => {
|
|
157
|
+
var c;
|
|
158
|
+
s.target && (Array.isArray(s.target) ? s.target : [s.target]).forEach((n) => o.add(n)), (c = s.when) != null && c.field && o.add(s.when.field);
|
|
159
159
|
});
|
|
160
160
|
};
|
|
161
|
-
return
|
|
161
|
+
return t((r = e == null ? void 0 : e.fields) == null ? void 0 : r.rules), t((i = e == null ? void 0 : e.sections) == null ? void 0 : i.rules), Array.from(o);
|
|
162
162
|
}
|
|
163
|
-
function
|
|
163
|
+
function ue({
|
|
164
164
|
activityId: e,
|
|
165
165
|
previousActivityId: o,
|
|
166
|
-
control:
|
|
166
|
+
control: t,
|
|
167
167
|
workflowStructure: r,
|
|
168
|
-
sectionsRegistry:
|
|
168
|
+
sectionsRegistry: i
|
|
169
169
|
}) {
|
|
170
|
-
const { registerSchema:
|
|
171
|
-
control:
|
|
172
|
-
name:
|
|
170
|
+
const { registerSchema: a, unregisterSchema: s } = B(), c = Y(e), u = Y(o), n = c !== null ? r[c] : null, v = A(() => ce(n), [c, n]), l = J({
|
|
171
|
+
control: t,
|
|
172
|
+
name: v,
|
|
173
173
|
defaultValue: {}
|
|
174
|
-
}),
|
|
174
|
+
}), p = A(() => {
|
|
175
175
|
const f = {};
|
|
176
|
-
return
|
|
177
|
-
f[d] = Array.isArray(
|
|
176
|
+
return v.forEach((d, m) => {
|
|
177
|
+
f[d] = Array.isArray(l) ? l[m] : l;
|
|
178
178
|
}), f;
|
|
179
|
-
}, [
|
|
180
|
-
if (!
|
|
179
|
+
}, [l, v]), y = A(() => {
|
|
180
|
+
if (!n)
|
|
181
181
|
return {
|
|
182
182
|
sections: [],
|
|
183
183
|
fields: { active: [], readonly: [], hidden: [] }
|
|
184
184
|
};
|
|
185
|
-
const f =
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
185
|
+
const f = ie(
|
|
186
|
+
n.sections.active,
|
|
187
|
+
n.sections.readonly,
|
|
188
|
+
n.sections.rules,
|
|
189
|
+
u,
|
|
190
|
+
p
|
|
191
191
|
);
|
|
192
192
|
let d = [
|
|
193
|
-
...f.readonly.map((
|
|
194
|
-
name:
|
|
193
|
+
...f.readonly.map((h) => ({
|
|
194
|
+
name: h,
|
|
195
195
|
mode: "readonly"
|
|
196
196
|
})),
|
|
197
|
-
...f.active.map((
|
|
198
|
-
name:
|
|
197
|
+
...f.active.map((h) => ({
|
|
198
|
+
name: h,
|
|
199
199
|
mode: "active"
|
|
200
200
|
}))
|
|
201
201
|
];
|
|
202
|
-
d =
|
|
203
|
-
const
|
|
202
|
+
d = se(n.sections.order, d);
|
|
203
|
+
const m = ae(
|
|
204
204
|
{
|
|
205
|
-
active:
|
|
206
|
-
readonly:
|
|
207
|
-
hidden:
|
|
205
|
+
active: n.fields.active,
|
|
206
|
+
readonly: n.fields.readonly,
|
|
207
|
+
hidden: n.fields.hidden
|
|
208
208
|
},
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
209
|
+
n.fields.rules,
|
|
210
|
+
u,
|
|
211
|
+
p
|
|
212
212
|
);
|
|
213
|
-
return { sections: d, fields:
|
|
214
|
-
}, [
|
|
215
|
-
return
|
|
216
|
-
const f =
|
|
213
|
+
return { sections: d, fields: m };
|
|
214
|
+
}, [n, u, p, i]);
|
|
215
|
+
return b(() => {
|
|
216
|
+
const f = y.sections.filter((d) => d.mode === "active").map((d) => d.name);
|
|
217
217
|
f.forEach((d) => {
|
|
218
|
-
var
|
|
219
|
-
const
|
|
220
|
-
|
|
221
|
-
}), Object.keys(
|
|
222
|
-
}, [
|
|
218
|
+
var h;
|
|
219
|
+
const m = (h = i == null ? void 0 : i[d]) == null ? void 0 : h.schema;
|
|
220
|
+
m && a(d, m);
|
|
221
|
+
}), Object.keys(i ?? {}).filter((d) => !f.includes(d)).forEach(s);
|
|
222
|
+
}, [y.sections, i, a, s]), y;
|
|
223
|
+
}
|
|
224
|
+
function le() {
|
|
225
|
+
if (typeof document > "u") return {};
|
|
226
|
+
const e = {};
|
|
227
|
+
return document.querySelectorAll("input[type='radio'][name]").forEach((o) => {
|
|
228
|
+
const t = o, r = t.getAttribute("name");
|
|
229
|
+
r && t.checked && (e[r] = t.value);
|
|
230
|
+
}), document.querySelectorAll("input[name], textarea[name], select[name]").forEach((o) => {
|
|
231
|
+
const t = o, r = t.getAttribute("name");
|
|
232
|
+
if (!r || e[r] !== void 0) return;
|
|
233
|
+
const i = t.getAttribute("value") ?? t.value ?? t.textContent ?? "";
|
|
234
|
+
e[r] = String(i).trim();
|
|
235
|
+
}), document.querySelectorAll("span[name]").forEach((o) => {
|
|
236
|
+
var i;
|
|
237
|
+
const t = o, r = t.getAttribute("name");
|
|
238
|
+
if (r) {
|
|
239
|
+
const a = ((i = t.textContent) == null ? void 0 : i.trim()) ?? "";
|
|
240
|
+
a !== "" && (e[r] = a);
|
|
241
|
+
}
|
|
242
|
+
}), e;
|
|
243
|
+
}
|
|
244
|
+
const G = x(null);
|
|
245
|
+
function Ee({
|
|
246
|
+
children: e,
|
|
247
|
+
devConfig: o
|
|
248
|
+
}) {
|
|
249
|
+
const [t, r] = q(null), i = U(o);
|
|
250
|
+
b(() => {
|
|
251
|
+
i.current = o;
|
|
252
|
+
}, [o]);
|
|
253
|
+
const a = A(() => le() ?? {}, []);
|
|
254
|
+
return b(() => {
|
|
255
|
+
let s = !0;
|
|
256
|
+
return (async () => {
|
|
257
|
+
var f, d;
|
|
258
|
+
const u = typeof window < "u" && window.location.hostname === "localhost";
|
|
259
|
+
let n = null;
|
|
260
|
+
try {
|
|
261
|
+
const m = await ((f = k.top.ECM) == null ? void 0 : f.workflowView);
|
|
262
|
+
if (m) {
|
|
263
|
+
const h = await m.sequence;
|
|
264
|
+
n = h !== void 0 ? Number(h) : null;
|
|
265
|
+
}
|
|
266
|
+
} catch (m) {
|
|
267
|
+
u || console.warn("[FluigRuntime] Erro Proxy:", m);
|
|
268
|
+
}
|
|
269
|
+
const l = (a.FORM_MODE || "").toLowerCase() === "view", p = {
|
|
270
|
+
isView: l,
|
|
271
|
+
isReadOnly: l,
|
|
272
|
+
activityId: n,
|
|
273
|
+
previousActivityId: a.LASTACTIVITYID ? Number(a.LASTACTIVITYID) : null,
|
|
274
|
+
prefilledValues: a,
|
|
275
|
+
showDebugSubmit: !1,
|
|
276
|
+
showDebugLogs: !1,
|
|
277
|
+
isDev: !1
|
|
278
|
+
};
|
|
279
|
+
let y = { ...p };
|
|
280
|
+
if ((d = i.current) != null && d.enabled) {
|
|
281
|
+
const m = i.current, h = m.isView ?? p.isView;
|
|
282
|
+
y = {
|
|
283
|
+
...p,
|
|
284
|
+
...m,
|
|
285
|
+
isView: h,
|
|
286
|
+
isReadOnly: h,
|
|
287
|
+
isDev: !0,
|
|
288
|
+
activityId: m.activityId !== void 0 ? m.activityId : n
|
|
289
|
+
};
|
|
290
|
+
}
|
|
291
|
+
s && r(y);
|
|
292
|
+
})(), () => {
|
|
293
|
+
s = !1;
|
|
294
|
+
};
|
|
295
|
+
}, [a]), t ? /* @__PURE__ */ g(G.Provider, { value: t, children: e }) : null;
|
|
223
296
|
}
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
const e = k(le);
|
|
297
|
+
function R() {
|
|
298
|
+
const e = D(G);
|
|
227
299
|
if (!e)
|
|
228
300
|
throw new Error(
|
|
229
301
|
"useFluigRuntime deve ser usado dentro de <FluigRuntimeProvider>"
|
|
230
302
|
);
|
|
231
303
|
return e;
|
|
232
304
|
}
|
|
233
|
-
function
|
|
234
|
-
const { activityId: o, previousActivityId:
|
|
235
|
-
|
|
236
|
-
o != null && e.setValue("CURRENTACTIVITYID", o),
|
|
237
|
-
}, [o,
|
|
305
|
+
function de(e) {
|
|
306
|
+
const { activityId: o, previousActivityId: t } = R();
|
|
307
|
+
b(() => {
|
|
308
|
+
o != null && e.setValue("CURRENTACTIVITYID", o), t != null && e.setValue("LASTACTIVITYID", t);
|
|
309
|
+
}, [o, t, e]), b(() => {
|
|
238
310
|
if (typeof window > "u" || !window.top) return;
|
|
239
|
-
const r = window.top.document,
|
|
240
|
-
const
|
|
241
|
-
(
|
|
311
|
+
const r = window.top.document, i = (a) => {
|
|
312
|
+
const s = a.target;
|
|
313
|
+
(s.closest("[data-take-decision]") || s.closest("[data-take-task]") || s.closest(".movement-button")) && (console.log("[FluigLifecycle] Ação detectada: setando modo 'edit'"), e.setValue("FORM_MODE", "edit"));
|
|
242
314
|
};
|
|
243
|
-
return r.addEventListener("click",
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
}, [e]), S(() => {
|
|
247
|
-
var s, c;
|
|
315
|
+
return r.addEventListener("click", i), () => r.removeEventListener("click", i);
|
|
316
|
+
}, [e]), b(() => {
|
|
317
|
+
var i, a;
|
|
248
318
|
if (typeof window > "u") return;
|
|
249
|
-
const r = ((
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
bubbles: !0,
|
|
264
|
-
cancelable: !0
|
|
265
|
-
})
|
|
266
|
-
);
|
|
267
|
-
} catch {
|
|
268
|
-
r.click();
|
|
319
|
+
const r = ((i = window.top) == null ? void 0 : i.document.getElementById("send-process-button")) || ((a = window.parent) == null ? void 0 : a.document.getElementById("workflow-actions-send"));
|
|
320
|
+
r && (window.beforeSendValidate = () => {
|
|
321
|
+
let s = !1;
|
|
322
|
+
return e.handleSubmit(
|
|
323
|
+
() => {
|
|
324
|
+
window.top.__FLUIG_REACT_FORM_DATA__ = e.getValues(), e.setValue("FORM_MODE", "view"), window.beforeSendValidate = () => !0, s = !0, r.click();
|
|
325
|
+
},
|
|
326
|
+
(c) => {
|
|
327
|
+
var u, n;
|
|
328
|
+
console.error("[Validation Errors]", c), (n = (u = window.top) == null ? void 0 : u.FLUIGC) != null && n.toast && window.top.FLUIGC.toast({
|
|
329
|
+
title: "Atenção",
|
|
330
|
+
message: "Verifique os campos obrigatórios.",
|
|
331
|
+
type: "danger"
|
|
332
|
+
});
|
|
269
333
|
}
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
var i, l, t;
|
|
273
|
-
console.error("[Validation Errors]", a), (l = (i = window.top) == null ? void 0 : i.FLUIGC) != null && l.toast ? (t = window.top) == null || t.FLUIGC.toast({
|
|
274
|
-
title: "Atenção",
|
|
275
|
-
message: "Verifique os campos obrigatórios destacados em vermelho.",
|
|
276
|
-
type: "danger"
|
|
277
|
-
}) : alert("Verifique os campos obrigatórios.");
|
|
278
|
-
}
|
|
279
|
-
)(), !1), () => {
|
|
280
|
-
};
|
|
334
|
+
)(), s;
|
|
335
|
+
});
|
|
281
336
|
}, [e]);
|
|
282
337
|
}
|
|
283
|
-
const
|
|
338
|
+
const fe = ({
|
|
284
339
|
workflowStructure: e,
|
|
285
340
|
sectionsRegistry: o,
|
|
286
|
-
className:
|
|
341
|
+
className: t
|
|
287
342
|
}) => {
|
|
288
|
-
const { control: r, handleSubmit:
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
}, [
|
|
292
|
-
const { sections:
|
|
343
|
+
const { control: r, handleSubmit: i, register: a, setValue: s, watch: c } = W(), u = R(), n = c("FORM_MODE"), v = U(!1);
|
|
344
|
+
b(() => {
|
|
345
|
+
v.current || (u.activityId != null && s("CURRENTACTIVITYID", u.activityId), u.previousActivityId != null && s("LASTACTIVITYID", u.previousActivityId), v.current = !0);
|
|
346
|
+
}, [u, s]);
|
|
347
|
+
const { sections: l, fields: p } = ue({
|
|
293
348
|
control: r,
|
|
294
|
-
activityId:
|
|
295
|
-
previousActivityId:
|
|
349
|
+
activityId: u.activityId,
|
|
350
|
+
previousActivityId: u.previousActivityId,
|
|
296
351
|
workflowStructure: e,
|
|
297
352
|
sectionsRegistry: o
|
|
298
353
|
});
|
|
299
|
-
return /* @__PURE__ */
|
|
354
|
+
return /* @__PURE__ */ N(
|
|
300
355
|
"form",
|
|
301
356
|
{
|
|
302
357
|
id: "fluig-react-form",
|
|
303
|
-
className:
|
|
304
|
-
onSubmit:
|
|
358
|
+
className: t,
|
|
359
|
+
onSubmit: i((f) => {
|
|
305
360
|
console.log("✅ [FluigWorkflowForm] Dados válidos:", f);
|
|
306
361
|
}),
|
|
307
362
|
noValidate: !0,
|
|
308
363
|
children: [
|
|
309
|
-
/* @__PURE__ */
|
|
310
|
-
/* @__PURE__ */
|
|
311
|
-
/* @__PURE__ */
|
|
312
|
-
/* @__PURE__ */
|
|
364
|
+
/* @__PURE__ */ N("div", { className: "hidden", style: { display: "none" }, children: [
|
|
365
|
+
/* @__PURE__ */ g("input", { type: "hidden", ...a("CURRENTACTIVITYID") }),
|
|
366
|
+
/* @__PURE__ */ g("input", { type: "hidden", ...a("LASTACTIVITYID") }),
|
|
367
|
+
/* @__PURE__ */ g("input", { type: "hidden", ...a("FORM_MODE") })
|
|
313
368
|
] }),
|
|
314
|
-
|
|
369
|
+
l.length === 0 && u.activityId !== null && /* @__PURE__ */ N("p", { children: [
|
|
315
370
|
"Não foi possível encontrar a atividade: ",
|
|
316
|
-
String(
|
|
371
|
+
String(u.activityId)
|
|
317
372
|
] }),
|
|
318
|
-
|
|
373
|
+
l.map(({ name: f, mode: d }) => {
|
|
319
374
|
if (d === "hidden") return null;
|
|
320
|
-
const
|
|
321
|
-
if (!
|
|
322
|
-
const
|
|
323
|
-
return /* @__PURE__ */
|
|
324
|
-
|
|
375
|
+
const m = o[f];
|
|
376
|
+
if (!m) return null;
|
|
377
|
+
const h = m.Component;
|
|
378
|
+
return /* @__PURE__ */ g(
|
|
379
|
+
h,
|
|
325
380
|
{
|
|
326
381
|
id: f,
|
|
327
|
-
fields:
|
|
328
|
-
readOnly: d === "readonly" ||
|
|
382
|
+
fields: p,
|
|
383
|
+
readOnly: d === "readonly" || n === "VIEW"
|
|
329
384
|
},
|
|
330
385
|
f
|
|
331
386
|
);
|
|
332
387
|
}),
|
|
333
|
-
|
|
388
|
+
u.isDev && u.showDebugSubmit && /* @__PURE__ */ g("div", { style: { width: "100%", padding: "16px", paddingTop: "0" }, children: /* @__PURE__ */ g("button", { type: "submit", className: "btn btn-primary btn-lg btn-block", children: "Submit (Debug)" }) })
|
|
334
389
|
]
|
|
335
390
|
}
|
|
336
391
|
);
|
|
337
392
|
}, Fe = (e) => {
|
|
338
|
-
const { mergedSchema: o } =
|
|
339
|
-
resolver: o ?
|
|
340
|
-
defaultValues:
|
|
393
|
+
const { mergedSchema: o } = B(), t = R(), r = Q({
|
|
394
|
+
resolver: o ? oe(o) : void 0,
|
|
395
|
+
defaultValues: t.prefilledValues,
|
|
341
396
|
mode: "onBlur"
|
|
342
397
|
});
|
|
343
|
-
return
|
|
344
|
-
|
|
398
|
+
return de(r), b(() => {
|
|
399
|
+
t.showDebugLogs && (T.header("Form Initialized"), T.table(
|
|
345
400
|
"Prefilled Values (DOM Capture)",
|
|
346
|
-
|
|
347
|
-
),
|
|
348
|
-
}, [
|
|
401
|
+
t.prefilledValues
|
|
402
|
+
), T.info("RHF Current Values", r.getValues()), T.end());
|
|
403
|
+
}, [t.showDebugLogs, t.prefilledValues, r]), /* @__PURE__ */ g(X, { ...r, children: /* @__PURE__ */ g(fe, { ...e }) });
|
|
349
404
|
};
|
|
350
|
-
async function
|
|
405
|
+
async function me(e) {
|
|
351
406
|
if (!e)
|
|
352
407
|
return console.warn("[setFluigNextActivity] Nenhuma atividade informada."), !1;
|
|
353
|
-
const { wfView: o, wkfView:
|
|
354
|
-
if (!o || !
|
|
355
|
-
|
|
356
|
-
const r = Number(e),
|
|
357
|
-
return
|
|
408
|
+
const { wfView: o, wkfView: t } = await ve();
|
|
409
|
+
if (!o || !t) return !1;
|
|
410
|
+
ye(o);
|
|
411
|
+
const r = Number(e), i = he(o, r);
|
|
412
|
+
return i ? (pe(o, t, i, r), console.log(`[setFluigNextActivity] Próxima atividade definida: ${r}`), !0) : (console.warn(`[setFluigNextActivity] Estado ${r} não encontrado nas próximas atividades disponíveis.`), console.log("Estados disponíveis:", o.availableStatesCOPY || o.availableStates), !1);
|
|
358
413
|
}
|
|
359
|
-
async function
|
|
360
|
-
const e = await
|
|
414
|
+
async function ve() {
|
|
415
|
+
const e = await k.top.ECM.workflowView, o = await k.top.ECM_WKFView;
|
|
361
416
|
return !e || !o ? (console.warn("[setFluigNextActivity] Contexto Fluig inválido ou não carregado."), {}) : { wfView: e, wkfView: o };
|
|
362
417
|
}
|
|
363
|
-
function
|
|
418
|
+
function ye(e) {
|
|
364
419
|
e.availableStatesCOPY || (e.availableStatesCOPY = e.availableStates);
|
|
365
420
|
}
|
|
366
421
|
function he(e, o) {
|
|
367
|
-
const
|
|
368
|
-
return
|
|
422
|
+
const t = e.availableStatesCOPY || e.availableStates;
|
|
423
|
+
return t == null ? void 0 : t.find((r) => r.sequence === o);
|
|
369
424
|
}
|
|
370
|
-
function
|
|
371
|
-
e.availableUsers.users = [], e.availableStates = [
|
|
425
|
+
function pe(e, o, t, r) {
|
|
426
|
+
e.availableUsers.users = [], e.availableStates = [t], o.selectActivity = () => r;
|
|
372
427
|
}
|
|
373
|
-
const
|
|
374
|
-
function
|
|
375
|
-
const e =
|
|
428
|
+
const $ = x(null);
|
|
429
|
+
function Ce() {
|
|
430
|
+
const e = D($);
|
|
376
431
|
if (!e)
|
|
377
432
|
throw new Error(
|
|
378
433
|
"useSection deve ser usado dentro de um componente <Section>"
|
|
379
434
|
);
|
|
380
435
|
return e;
|
|
381
436
|
}
|
|
382
|
-
function
|
|
437
|
+
function Te({
|
|
383
438
|
id: e,
|
|
384
439
|
className: o,
|
|
385
|
-
schema:
|
|
440
|
+
schema: t,
|
|
386
441
|
children: r,
|
|
387
|
-
form:
|
|
388
|
-
prefilledValues:
|
|
389
|
-
readOnly:
|
|
390
|
-
fields:
|
|
391
|
-
hidden:
|
|
442
|
+
form: i,
|
|
443
|
+
prefilledValues: a,
|
|
444
|
+
readOnly: s,
|
|
445
|
+
fields: c = {},
|
|
446
|
+
hidden: u = !1
|
|
392
447
|
}) {
|
|
393
|
-
const { isView:
|
|
394
|
-
if (!
|
|
448
|
+
const { isView: n, activityId: v } = R(), l = v, p = W(), y = i || p;
|
|
449
|
+
if (!y)
|
|
395
450
|
return console.error(
|
|
396
451
|
`[FluigWorkflowReact] Section "${e}" não encontrou o 'form'.`
|
|
397
452
|
), null;
|
|
398
|
-
if (
|
|
399
|
-
const f =
|
|
400
|
-
(
|
|
401
|
-
var
|
|
402
|
-
return (
|
|
453
|
+
if (u) return null;
|
|
454
|
+
const f = I(
|
|
455
|
+
(w) => {
|
|
456
|
+
var V, E, C;
|
|
457
|
+
return (V = c.hidden) != null && V.includes(w) ? "hidden" : (E = c.readonly) != null && E.includes(w) ? "readonly" : (C = c.active) != null && C.includes(w) ? "active" : s ? "readonly" : "active";
|
|
403
458
|
},
|
|
404
|
-
[
|
|
405
|
-
), d =
|
|
406
|
-
(
|
|
459
|
+
[c, s]
|
|
460
|
+
), d = I(
|
|
461
|
+
(w) => f(w) === "hidden",
|
|
407
462
|
[f]
|
|
408
|
-
),
|
|
409
|
-
(
|
|
463
|
+
), m = I(
|
|
464
|
+
(w) => f(w) === "readonly",
|
|
410
465
|
[f]
|
|
411
|
-
),
|
|
412
|
-
(
|
|
413
|
-
if (!
|
|
414
|
-
const
|
|
415
|
-
|
|
466
|
+
), h = I(
|
|
467
|
+
(w) => {
|
|
468
|
+
if (!w) return;
|
|
469
|
+
const V = y.getValues("CURRENTACTIVITYID");
|
|
470
|
+
y.setValue("LASTACTIVITYID", V), y.setValue("CURRENTACTIVITYID", l), me(Number(w));
|
|
416
471
|
},
|
|
417
|
-
[
|
|
472
|
+
[y, l]
|
|
418
473
|
);
|
|
419
|
-
|
|
420
|
-
if (!
|
|
421
|
-
const
|
|
422
|
-
|
|
423
|
-
var O,
|
|
424
|
-
let
|
|
425
|
-
for (; (O =
|
|
426
|
-
|
|
427
|
-
const
|
|
428
|
-
if ((
|
|
474
|
+
b(() => {
|
|
475
|
+
if (!n || !a || !t || !y) return;
|
|
476
|
+
const w = y.getValues(), V = t.shape;
|
|
477
|
+
V && Object.entries(V).forEach(([E, C]) => {
|
|
478
|
+
var O, L;
|
|
479
|
+
let S = C;
|
|
480
|
+
for (; (O = S == null ? void 0 : S._def) != null && O.schema; )
|
|
481
|
+
S = S._def.schema;
|
|
482
|
+
const F = (L = S == null ? void 0 : S._def) == null ? void 0 : L.fluig;
|
|
483
|
+
if ((F == null ? void 0 : F.type) !== "options" || !Array.isArray(F.values) || w[E] !== void 0) return;
|
|
429
484
|
const M = {};
|
|
430
|
-
|
|
431
|
-
M[_] =
|
|
432
|
-
}),
|
|
485
|
+
F.values.forEach((_) => {
|
|
486
|
+
M[_] = a[_] === "on";
|
|
487
|
+
}), y.setValue(E, M, {
|
|
433
488
|
shouldDirty: !1,
|
|
434
489
|
shouldValidate: !1
|
|
435
490
|
});
|
|
436
491
|
});
|
|
437
|
-
}, [
|
|
438
|
-
const
|
|
492
|
+
}, [n, a, t, y]);
|
|
493
|
+
const P = A(
|
|
439
494
|
() => ({
|
|
440
495
|
id: e,
|
|
441
|
-
form:
|
|
496
|
+
form: y,
|
|
442
497
|
isHidden: d,
|
|
443
|
-
isReadOnly:
|
|
444
|
-
isView:
|
|
445
|
-
next:
|
|
446
|
-
wf_activity_id:
|
|
498
|
+
isReadOnly: m,
|
|
499
|
+
isView: n,
|
|
500
|
+
next: h,
|
|
501
|
+
wf_activity_id: l
|
|
447
502
|
}),
|
|
448
|
-
[e,
|
|
503
|
+
[e, y, d, m, n, h, l]
|
|
449
504
|
);
|
|
450
|
-
return /* @__PURE__ */
|
|
505
|
+
return /* @__PURE__ */ g($.Provider, { value: P, children: /* @__PURE__ */ g("section", { id: e, className: [e, o].filter(Boolean).join(" "), children: r }) });
|
|
451
506
|
}
|
|
452
|
-
const
|
|
453
|
-
function
|
|
454
|
-
const
|
|
455
|
-
return /* @__PURE__ */
|
|
507
|
+
const H = x(null);
|
|
508
|
+
function xe({ children: e, config: o }) {
|
|
509
|
+
const t = A(() => ne(o), [o]);
|
|
510
|
+
return /* @__PURE__ */ g(H.Provider, { value: t, children: e });
|
|
456
511
|
}
|
|
457
|
-
function
|
|
458
|
-
const e =
|
|
512
|
+
function De() {
|
|
513
|
+
const e = D(H);
|
|
459
514
|
if (!e)
|
|
460
515
|
throw new Error(
|
|
461
516
|
"useFluigApi deve ser usado dentro de um <FluigApiProvider>"
|
|
@@ -463,15 +518,16 @@ function xe() {
|
|
|
463
518
|
return e;
|
|
464
519
|
}
|
|
465
520
|
export {
|
|
466
|
-
|
|
467
|
-
|
|
521
|
+
ke as DebugLogger,
|
|
522
|
+
xe as FluigApiProvider,
|
|
523
|
+
Ee as FluigRuntimeProvider,
|
|
468
524
|
Fe as FluigWorkflowForm,
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
525
|
+
Ie as SchemaRegistryProvider,
|
|
526
|
+
Te as Section,
|
|
527
|
+
Pe as createFluigClient,
|
|
528
|
+
Me as parentProxy,
|
|
529
|
+
De as useFluigApi,
|
|
530
|
+
R as useFluigRuntime,
|
|
531
|
+
B as useSchemaRegistry,
|
|
532
|
+
Ce as useSection
|
|
477
533
|
};
|
package/dist/node.cjs
CHANGED
|
@@ -17,11 +17,13 @@
|
|
|
17
17
|
<form id="form" name="form">
|
|
18
18
|
<div id="root">
|
|
19
19
|
<!-- IMPUTS DE CONTROLE -->
|
|
20
|
+
|
|
20
21
|
<input type="hidden" name="LASTACTIVITYID" />
|
|
21
22
|
<input type="hidden" name="CURRENTACTIVITYID" />
|
|
22
23
|
<input type="hidden" name="FORM_MODE" />
|
|
24
|
+
|
|
23
25
|
<!-- ////////////////// -->
|
|
24
|
-
|
|
26
|
+
|
|
25
27
|
${i}
|
|
26
28
|
</div>
|
|
27
29
|
</form>
|
package/dist/node.js
CHANGED
|
@@ -56,11 +56,13 @@ function y(t) {
|
|
|
56
56
|
<form id="form" name="form">
|
|
57
57
|
<div id="root">
|
|
58
58
|
<!-- IMPUTS DE CONTROLE -->
|
|
59
|
+
|
|
59
60
|
<input type="hidden" name="LASTACTIVITYID" />
|
|
60
61
|
<input type="hidden" name="CURRENTACTIVITYID" />
|
|
61
62
|
<input type="hidden" name="FORM_MODE" />
|
|
63
|
+
|
|
62
64
|
<!-- ////////////////// -->
|
|
63
|
-
|
|
65
|
+
|
|
64
66
|
${i}
|
|
65
67
|
</div>
|
|
66
68
|
</form>
|