@tech-diefra/fluig-ui 1.2.28 → 1.2.30
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/Attachment/index.d.ts +2 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +384 -381
- package/package.json +1 -1
|
@@ -6,6 +6,7 @@ interface AttachmentProps {
|
|
|
6
6
|
help?: string;
|
|
7
7
|
valueManual?: string;
|
|
8
8
|
onChangeManual?: (val: string) => void;
|
|
9
|
+
readOnly?: boolean;
|
|
9
10
|
}
|
|
10
|
-
declare const _default: React.MemoExoticComponent<({ name, label, help, valueManual, onChangeManual, }: AttachmentProps) => import("react/jsx-runtime").JSX.Element>;
|
|
11
|
+
declare const _default: React.MemoExoticComponent<({ name, label, help, valueManual, onChangeManual, readOnly, }: AttachmentProps) => import("react/jsx-runtime").JSX.Element>;
|
|
11
12
|
export default _default;
|
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),u=require("react"),S=require("react-hook-form"),X=require("react-imask"),_=require("@fluig-kit/ecm"),L=require("react-datepicker"),E=require("date-fns"),U={cpf:"000.000.000-00",cnpj:"00.000.000/0000-00",telefone:"(00) 00000-0000",cep:"00000-000"};function Y({name:e,label:a="",placeholder:s="",type:c="text",mask:o,className:l="",forceReadOnly:r=!1,forceHidden:n=!1}){const{isReadOnly:h,isHidden:m}=_.useSection(),f=r||!!h(e),y=n||!!m(e),{control:w}=S.useFormContext(),{isView:R}=_.useFluigRuntime(),{field:v}=S.useController({name:e,control:w}),{errors:j}=S.useFormState({name:e}),p=j==null?void 0:j[e],b=u.useMemo(()=>o?U[o]??o:null,[o]),C=u.useCallback(i=>{if(!i)return"";const d=i.replace(/\D/g,"");return(Number(d)/100).toLocaleString("pt-BR",{style:"currency",currency:"BRL"})},[]),g=u.useCallback(i=>c==="monetary"?C(i):i,[c,C]);return R?t.jsxs("div",{className:"form-group",children:[t.jsx("label",{children:a}),t.jsx("span",{className:"form-control",children:v.value||"-"})]}):t.jsxs("div",{className:`form-group ${y?"hidden":""}`,children:[t.jsx("label",{children:a}),b?t.jsx(X.IMaskInput,{name:e,mask:b,value:String(v.value??""),unmask:!1,onAccept:i=>v.onChange(g(i)),placeholder:s,readOnly:f,className:`form-control ${p?"border-red":""} ${l}`,inputRef:v.ref,onBlur:v.onBlur}):t.jsx("input",{...v,type:"text",value:v.value??"",onChange:i=>v.onChange(g(i.target.value)),placeholder:s,readOnly:f,className:`form-control ${p?"border-red":""} ${l}`}),p&&t.jsx("p",{className:"text-danger",children:String(p.message)})]})}const G=u.memo(Y);function Q({name:e,label:a="",options:s=[],placeholder:c="",labelKey:o="label",valueKey:l="value",enableSearch:r=!1,searchPlaceholder:n="Buscar...",loading:h=!1,onSearchChange:m,debounceTime:f=300,onSelect:y,forceReadOnly:w=!1,forceHidden:R=!1}){const{isReadOnly:v,isHidden:j}=_.useSection(),p=w||!!v(e),b=R||!!j(e),{control:C,clearErrors:g}=S.useFormContext(),{isView:i}=_.useFluigRuntime(),{field:{onChange:d,value:x,ref:$},fieldState:{error:N}}=S.useController({name:e,control:C}),[P,F]=u.useState(!1),[M,q]=u.useState(""),W=u.useRef(null),T=u.useRef(m);u.useEffect(()=>{T.current=m},[m]),u.useEffect(()=>{const k=A=>{W.current&&!W.current.contains(A.target)&&F(!1)};return document.addEventListener("mousedown",k),()=>document.removeEventListener("mousedown",k)},[]),u.useEffect(()=>{P||q("")},[P]),u.useEffect(()=>{if(!r)return;const k=setTimeout(()=>{T.current&&T.current(M)},f);return()=>clearTimeout(k)},[M,r,f]);const H=u.useMemo(()=>r&&!m&&M.trim()?s.filter(k=>String((k==null?void 0:k[o])??"").toLowerCase().includes(M.toLowerCase())):s??[],[s,r,m,M,o]),B=u.useMemo(()=>{if(x==null)return"";if(typeof x=="object")return String(x[l]??"");const k=(s||[]).find(A=>String(A==null?void 0:A[l])===String(x));return String(k?(k==null?void 0:k[o])??"":x)},[x,s,l,o]),z=k=>{p||(d(k[l]),y&&y(k),g(e),F(!1))};return t.jsxs("div",{className:`select-wrapper form-group ${b?"hidden":""}`,ref:W,children:[t.jsx("label",{className:"control-label",children:a}),i?t.jsx("span",{className:"form-control",children:B||"-"}):t.jsxs(t.Fragment,{children:[t.jsxs("div",{className:`select-control ${N?"border-red":""} ${p?"readOnly":""}`,onClick:()=>!p&&F(k=>!k),ref:$,children:[t.jsx("span",{className:`select-display ${p?"readOnly":""}`,children:B||c}),t.jsx("i",{className:"flaticon flaticon-chevron-down select-icon"})]}),P&&!p&&t.jsxs("div",{className:"select-dropdown",children:[r&&t.jsx("div",{className:"select-search",children:t.jsx("input",{type:"text",className:"select-search-input",value:M,onChange:k=>q(k.target.value),placeholder:h?"Carregando...":n,autoFocus:!0,onClick:k=>k.stopPropagation()})}),t.jsx("ul",{className:"select-options",children:h?t.jsx("li",{className:"select-option readOnly",children:"Carregando..."}):H.length>0?H.map(k=>t.jsx("li",{onClick:()=>z(k),className:"select-option handleHover",children:k[o]},k[l])):t.jsx("li",{className:"select-option readOnly",children:"Sem resultados"})})]})]}),t.jsx("input",{type:"hidden",name:e,value:x||""}),N&&t.jsx("p",{className:"text-danger",children:String(N.message)})]})}const J=u.memo(Q);function Z({name:e,options:a=[],label:s="",valueKey:c="value",labelKey:o="label",forceReadOnly:l=!1,forceHidden:r=!1}){var x,$;const n=S.useFormContext(),{isView:h,isReadOnly:m}=_.useFluigRuntime(),{isReadOnly:f,isHidden:y}=_.useSection(),w=f?f(e):!1,R=y?y(e):!1,v=l||w,j=r||R,p=v||m||h;if(!n||!e)return console.error("Checkbox requer contexto de formulário e nome."),null;const b=()=>!a||!n?{}:a.reduce((N,P)=>{const F=P[c],M=n.getValues(F);return N[F]=M==="on",N},{}),C=n.watch(e),g=u.useMemo(()=>C&&typeof C=="object"?C:b(),[C,a,c]);u.useEffect(()=>{const N=n.getValues(e);(!N||typeof N!="object")&&n.setValue(e,g,{shouldDirty:!1,shouldValidate:!1})},[g,e,n]);const i=(N,P)=>{if(p)return;const F={...g,[N]:P};n.setValue(e,F,{shouldDirty:!0,shouldValidate:!0}),n.setValue(N,P?"on":"",{shouldValidate:!1})},d=($=(x=n.formState)==null?void 0:x.errors)==null?void 0:$[e];return t.jsxs("div",{className:`form-group ${j?"hidden":""}`,children:[s&&t.jsx("label",{children:s}),t.jsx("div",{className:`checkbox-group-custom ${p?"readOnly":""}`,children:a.map(N=>{const P=String(N[c]),F=g[P]===!0;return t.jsxs("div",{children:[t.jsx("input",{type:"hidden",...n.register(P)}),t.jsxs("label",{className:`custom-checkbox ${F?"checked":""} ${p?"readOnly":""}`,children:[t.jsx("input",{type:"checkbox",checked:F,disabled:p,onChange:M=>i(P,M.target.checked)}),t.jsx("span",{className:"checkmark"}),t.jsx("span",{children:N[o]})]})]},P)})}),d&&t.jsx("p",{className:"text-danger",children:String(d.message)})]})}function K({name:e,label:a="",options:s=[],valueKey:c="value",labelKey:o="label",iconKey:l="icon",forceReadOnly:r=!1,forceHidden:n=!1}){const{isReadOnly:h,isHidden:m}=_.useSection(),f=r||!!h(e),y=n||!!m(e),{control:w}=S.useFormContext(),{isView:R,isReadOnly:v}=_.useFluigRuntime(),{field:j,fieldState:{error:p}}=S.useController({name:e,control:w}),b=f||v||R,C=j.value??"",g=u.useCallback(i=>{b||j.onChange(i)},[b,j]);return t.jsxs("div",{className:`form-group column ${y?"hidden":""}`,children:[a&&t.jsx("label",{className:"control-label",children:a}),t.jsx("div",{className:`btn-group ${b?"view-mode":""}`,"data-field-name":e,children:s.map(i=>{const d=i[c],x=C===d,$=i.color?{"--customColor":i.color}:void 0;return t.jsxs("label",{htmlFor:`${e}_${d}`,style:$,className:`btn fs-ellipsis ${x?"active":""}`,children:[t.jsx("input",{type:"radio",id:`${e}_${d}`,name:e,value:d,checked:x,className:"hidden",onChange:()=>g(d),disabled:b}),i[l]&&t.jsx("i",{className:`${i[l]} icon-sm`})," ",i[o]]},d)})}),p&&t.jsx("p",{className:"text-danger",children:String(p.message)})]})}const ee=u.memo(K),te=({name:e,label:a="",placeholder:s="",className:c="",rows:o=4,maxLength:l,forceReadOnly:r=!1,forceHidden:n=!1})=>{const{isReadOnly:h,isHidden:m}=_.useSection(),f=r||!!h(e),y=n||!!m(e),{control:w}=S.useFormContext(),{isView:R}=_.useFluigRuntime(),{field:v,fieldState:{error:j}}=S.useController({name:e,control:w});return R?t.jsxs("div",{className:`form-group ${y?"hidden":""}`,children:[t.jsx("label",{children:a}),t.jsx("span",{className:"form-control",children:v.value||"-"})]}):t.jsxs("div",{className:`form-group ${y?"hidden":""}`,children:[t.jsx("label",{children:a}),t.jsx("textarea",{...v,rows:o,maxLength:l,value:v.value||"",placeholder:s,readOnly:f,className:`form-control ${j?"border-red":""} ${c}`}),j&&t.jsx("p",{className:"text-danger",children:String(j.message)})]})},ne=u.memo(te);function D(e){return(a={})=>{const s=a.width?String(a.width):e.defaultWidth;return e.formats[s]||e.formats[e.defaultWidth]}}function V(e){return(a,s)=>{const c=s!=null&&s.context?String(s.context):"standalone";let o;if(c==="formatting"&&e.formattingValues){const r=e.defaultFormattingWidth||e.defaultWidth,n=s!=null&&s.width?String(s.width):r;o=e.formattingValues[n]||e.formattingValues[r]}else{const r=e.defaultWidth,n=s!=null&&s.width?String(s.width):e.defaultWidth;o=e.values[n]||e.values[r]}const l=e.argumentCallback?e.argumentCallback(a):a;return o[l]}}function O(e){return(a,s={})=>{const c=s.width,o=c&&e.matchPatterns[c]||e.matchPatterns[e.defaultMatchWidth],l=a.match(o);if(!l)return null;const r=l[0],n=c&&e.parsePatterns[c]||e.parsePatterns[e.defaultParseWidth],h=Array.isArray(n)?ae(n,y=>y.test(r)):se(n,y=>y.test(r));let m;m=e.valueCallback?e.valueCallback(h):h,m=s.valueCallback?s.valueCallback(m):m;const f=a.slice(r.length);return{value:m,rest:f}}}function se(e,a){for(const s in e)if(Object.prototype.hasOwnProperty.call(e,s)&&a(e[s]))return s}function ae(e,a){for(let s=0;s<e.length;s++)if(a(e[s]))return s}function re(e){return(a,s={})=>{const c=a.match(e.matchPattern);if(!c)return null;const o=c[0],l=a.match(e.parsePattern);if(!l)return null;let r=e.valueCallback?e.valueCallback(l[0]):l[0];r=s.valueCallback?s.valueCallback(r):r;const n=a.slice(o.length);return{value:r,rest:n}}}const oe={lessThanXSeconds:{one:"menos de um segundo",other:"menos de {{count}} segundos"},xSeconds:{one:"1 segundo",other:"{{count}} segundos"},halfAMinute:"meio minuto",lessThanXMinutes:{one:"menos de um minuto",other:"menos de {{count}} minutos"},xMinutes:{one:"1 minuto",other:"{{count}} minutos"},aboutXHours:{one:"cerca de 1 hora",other:"cerca de {{count}} horas"},xHours:{one:"1 hora",other:"{{count}} horas"},xDays:{one:"1 dia",other:"{{count}} dias"},aboutXWeeks:{one:"cerca de 1 semana",other:"cerca de {{count}} semanas"},xWeeks:{one:"1 semana",other:"{{count}} semanas"},aboutXMonths:{one:"cerca de 1 mês",other:"cerca de {{count}} meses"},xMonths:{one:"1 mês",other:"{{count}} meses"},aboutXYears:{one:"cerca de 1 ano",other:"cerca de {{count}} anos"},xYears:{one:"1 ano",other:"{{count}} anos"},overXYears:{one:"mais de 1 ano",other:"mais de {{count}} anos"},almostXYears:{one:"quase 1 ano",other:"quase {{count}} anos"}},ie=(e,a,s)=>{let c;const o=oe[e];return typeof o=="string"?c=o:a===1?c=o.one:c=o.other.replace("{{count}}",String(a)),s!=null&&s.addSuffix?s.comparison&&s.comparison>0?"em "+c:"há "+c:c},le={full:"EEEE, d 'de' MMMM 'de' y",long:"d 'de' MMMM 'de' y",medium:"d MMM y",short:"dd/MM/yyyy"},ce={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},de={full:"{{date}} 'às' {{time}}",long:"{{date}} 'às' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},ue={date:D({formats:le,defaultWidth:"full"}),time:D({formats:ce,defaultWidth:"full"}),dateTime:D({formats:de,defaultWidth:"full"})},me={lastWeek:e=>{const a=e.getDay();return"'"+(a===0||a===6?"último":"última")+"' eeee 'às' p"},yesterday:"'ontem às' p",today:"'hoje às' p",tomorrow:"'amanhã às' p",nextWeek:"eeee 'às' p",other:"P"},he=(e,a,s,c)=>{const o=me[e];return typeof o=="function"?o(a):o},fe={narrow:["AC","DC"],abbreviated:["AC","DC"],wide:["antes de cristo","depois de cristo"]},ge={narrow:["1","2","3","4"],abbreviated:["T1","T2","T3","T4"],wide:["1º trimestre","2º trimestre","3º trimestre","4º trimestre"]},xe={narrow:["j","f","m","a","m","j","j","a","s","o","n","d"],abbreviated:["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez"],wide:["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"]},be={narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sab"],abbreviated:["domingo","segunda","terça","quarta","quinta","sexta","sábado"],wide:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},ve={narrow:{am:"a",pm:"p",midnight:"mn",noon:"md",morning:"manhã",afternoon:"tarde",evening:"tarde",night:"noite"},abbreviated:{am:"AM",pm:"PM",midnight:"meia-noite",noon:"meio-dia",morning:"manhã",afternoon:"tarde",evening:"tarde",night:"noite"},wide:{am:"a.m.",pm:"p.m.",midnight:"meia-noite",noon:"meio-dia",morning:"manhã",afternoon:"tarde",evening:"tarde",night:"noite"}},je={narrow:{am:"a",pm:"p",midnight:"mn",noon:"md",morning:"da manhã",afternoon:"da tarde",evening:"da tarde",night:"da noite"},abbreviated:{am:"AM",pm:"PM",midnight:"meia-noite",noon:"meio-dia",morning:"da manhã",afternoon:"da tarde",evening:"da tarde",night:"da noite"},wide:{am:"a.m.",pm:"p.m.",midnight:"meia-noite",noon:"meio-dia",morning:"da manhã",afternoon:"da tarde",evening:"da tarde",night:"da noite"}},pe=(e,a)=>{const s=Number(e);return(a==null?void 0:a.unit)==="week"?s+"ª":s+"º"},ye={ordinalNumber:pe,era:V({values:fe,defaultWidth:"wide"}),quarter:V({values:ge,defaultWidth:"wide",argumentCallback:e=>e-1}),month:V({values:xe,defaultWidth:"wide"}),day:V({values:be,defaultWidth:"wide"}),dayPeriod:V({values:ve,defaultWidth:"wide",formattingValues:je,defaultFormattingWidth:"wide"})},Ne=/^(\d+)[ºªo]?/i,we=/\d+/i,Ce={narrow:/^(ac|dc|a|d)/i,abbreviated:/^(a\.?\s?c\.?|d\.?\s?c\.?)/i,wide:/^(antes de cristo|depois de cristo)/i},ke={any:[/^ac/i,/^dc/i],wide:[/^antes de cristo/i,/^depois de cristo/i]},Re={narrow:/^[1234]/i,abbreviated:/^T[1234]/i,wide:/^[1234](º)? trimestre/i},Se={any:[/1/i,/2/i,/3/i,/4/i]},Pe={narrow:/^[jfmajsond]/i,abbreviated:/^(jan|fev|mar|abr|mai|jun|jul|ago|set|out|nov|dez)/i,wide:/^(janeiro|fevereiro|março|abril|maio|junho|julho|agosto|setembro|outubro|novembro|dezembro)/i},_e={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^fev/i,/^mar/i,/^abr/i,/^mai/i,/^jun/i,/^jul/i,/^ago/i,/^set/i,/^out/i,/^nov/i,/^dez/i]},$e={narrow:/^(dom|[23456]ª?|s[aá]b)/i,short:/^(dom|[23456]ª?|s[aá]b)/i,abbreviated:/^(dom|seg|ter|qua|qui|sex|s[aá]b)/i,wide:/^(domingo|(segunda|ter[cç]a|quarta|quinta|sexta)([- ]feira)?|s[aá]bado)/i},Fe={short:[/^d/i,/^2/i,/^3/i,/^4/i,/^5/i,/^6/i,/^s[aá]/i],narrow:[/^d/i,/^2/i,/^3/i,/^4/i,/^5/i,/^6/i,/^s[aá]/i],any:[/^d/i,/^seg/i,/^t/i,/^qua/i,/^qui/i,/^sex/i,/^s[aá]b/i]},Me={narrow:/^(a|p|mn|md|(da) (manhã|tarde|noite))/i,any:/^([ap]\.?\s?m\.?|meia[-\s]noite|meio[-\s]dia|(da) (manhã|tarde|noite))/i},Ae={any:{am:/^a/i,pm:/^p/i,midnight:/^mn|^meia[-\s]noite/i,noon:/^md|^meio[-\s]dia/i,morning:/manhã/i,afternoon:/tarde/i,evening:/tarde/i,night:/noite/i}},Ve={ordinalNumber:re({matchPattern:Ne,parsePattern:we,valueCallback:e=>parseInt(e,10)}),era:O({matchPatterns:Ce,defaultMatchWidth:"wide",parsePatterns:ke,defaultParseWidth:"any"}),quarter:O({matchPatterns:Re,defaultMatchWidth:"wide",parsePatterns:Se,defaultParseWidth:"any",valueCallback:e=>e+1}),month:O({matchPatterns:Pe,defaultMatchWidth:"wide",parsePatterns:_e,defaultParseWidth:"any"}),day:O({matchPatterns:$e,defaultMatchWidth:"wide",parsePatterns:Fe,defaultParseWidth:"any"}),dayPeriod:O({matchPatterns:Me,defaultMatchWidth:"any",parsePatterns:Ae,defaultParseWidth:"any"})},Oe={code:"pt-BR",formatDistance:ie,formatLong:ue,formatRelative:he,localize:ye,match:Ve,options:{weekStartsOn:0,firstWeekContainsDate:1}};L.registerLocale("pt-BR",Oe);const I="dd/MM/yyyy",We=e=>{if(!e)return null;const a=E.parse(e,I,new Date);return E.isValid(a)?a:null},Te=e=>e?E.format(e,I):"",De=u.forwardRef(({shimRef:e,className:a,name:s,...c},o)=>t.jsx("input",{name:s,...c,className:a,ref:l=>{typeof o=="function"?o(l):o&&(o.current=l),e&&e(l)}})),Ee=({name:e,label:a="",placeholder:s="dd/mm/aaaa",className:c="",forceReadOnly:o=!1,forceHidden:l=!1})=>{const{control:r}=S.useFormContext(),{isView:n}=_.useFluigRuntime(),{isReadOnly:h,isHidden:m}=_.useSection(),f=o||!!h(e),y=l||!!m(e),{field:{onChange:w,onBlur:R,value:v,ref:j},fieldState:{error:p}}=S.useController({name:e,control:r}),b=u.useMemo(()=>We(v),[v]),C=u.useCallback(i=>{w(i?Te(i):"")},[w]),g=u.useCallback(i=>{var d,x;if(j(i),i&&((x=(d=r._fields)==null?void 0:d[e])!=null&&x._f)){const $=r._fields[e];$._f.ref={focus:()=>{var N;return(N=i.focus)==null?void 0:N.call(i)},select:()=>{var N;return(N=i.select)==null?void 0:N.call(i)},setCustomValidity:N=>{var P;return(P=i.setCustomValidity)==null?void 0:P.call(i,N)},reportValidity:()=>{var N;return(N=i.reportValidity)==null?void 0:N.call(i)}}}},[j,r,e]);return y?null:n?t.jsxs("div",{className:"form-group",children:[t.jsx("label",{children:a}),t.jsx("span",{className:"form-control",children:v||"-"})]}):t.jsxs("div",{className:`form-group fluig-style-guide ${c}`,children:[a&&t.jsx("label",{className:"control-label",htmlFor:e,children:a}),t.jsx("div",{className:`${p?"border-red":""}`,children:t.jsx(L,{id:e,name:e,selected:b,onChange:C,onBlur:R,dateFormat:I,placeholderText:s,disabled:f,readOnly:f,locale:"pt-BR",className:`form-control ${p?"border-red":""}`,wrapperClassName:"w-100",showMonthDropdown:!0,showYearDropdown:!0,dropdownMode:"select",isClearable:!f&&!!v,autoComplete:"off",customInput:t.jsx(De,{name:e,shimRef:g})})}),p&&t.jsx("span",{className:"help-block text-danger",children:String(p.message)})]})},Ie=u.memo(Ee);function qe({mapping:e={},defaultLabel:a="Não reconhecido",className:s="",hidden:c=!1,label:o}){const{activityId:l}=_.useFluigRuntime(),r=u.useMemo(()=>!e||l===null||l===void 0?null:e[l],[l,e]);if(!r)return t.jsxs("div",{className:`form-group ${c?"hidden":""}`,children:[o&&t.jsx("label",{children:o}),t.jsx("div",{className:`status-badge default ${s}`,children:a})]});const n={"--customColor":r.color};return t.jsxs("div",{className:`form-group ${c?"hidden":""}`,children:[o&&t.jsx("label",{children:o}),t.jsxs("div",{className:`status-badge ${s}`,style:n,children:[r.icon&&t.jsx("i",{className:r.icon}),t.jsx("span",{children:r.label})]})]})}const He=u.memo(qe);function Be({name:e,control:a,defaultRowValue:s,isView:c,isReadOnly:o,filters:l=[]}){const{field:r}=S.useController({name:e,control:a}),[n,h]=u.useState([]),[m,f]=u.useState([]),y=()=>Date.now()+Math.random(),w=i=>{try{const d=JSON.parse(i);return Array.isArray(d)?d.map(x=>({...x,_uid:x._uid||y()})):[]}catch(d){return console.error(`Erro ao ler dados da tabela "${e}":`,d),[]}};u.useEffect(()=>{if(!(n.length>0&&!c)&&r.value&&typeof r.value=="string"){const i=JSON.stringify(n);if(r.value===i)return;const d=w(r.value);h(d)}},[r.value,c]),u.useEffect(()=>{if(o)return;const i=JSON.stringify(n);r.value!==i&&r.onChange(i)},[n,r,o]);const R=u.useCallback(()=>{const i={_uid:y(),...s};h(d=>[...d,i])},[s]),v=u.useCallback(()=>{h(i=>i.filter(d=>!m.includes(d._uid))),f([])},[m]),j=u.useCallback((i,d,x)=>{h($=>$.map(N=>N._uid===i?{...N,[d]:x}:N))},[]),p=u.useCallback(i=>{f(d=>d.includes(i)?d.filter(x=>x!==i):[...d,i])},[]),b=u.useCallback(i=>{f(i?n.map(d=>d._uid):[])},[n]),C=n.length>0&&m.length===n.length,g=u.useMemo(()=>!l||l.length===0?n:n.filter(i=>l.every(d=>{if("custom"in d)return d.custom(i);const x=i[d.field];switch(d.operator){case"===":return x===d.value;case"!==":return x!==d.value;case">":return x>d.value;case"<":return x<d.value;case">=":return x>=d.value;case"<=":return x<=d.value;default:return!0}})),[n,l]);return{field:r,tableRows:n,visibleRows:g,selectedRowIds:m,isAllSelected:C,handle:{addRow:R,removeRows:v,updateCellValue:j,toggleSelection:p,toggleSelectAll:b}}}const Le=({name:e,title:a="Tabela Dinâmica",columns:s,defaultRowValue:c={},forceReadOnly:o=!1,layout:l="fluid",actions:r=!0,filters:n=[]})=>{const{control:h}=S.useFormContext(),{isView:m,isReadOnly:f}=_.useFluigRuntime(),{isReadOnly:y}=_.useSection(),w=o||m||f||y&&y(e),{field:R,visibleRows:v,selectedRowIds:j,isAllSelected:p,handle:b}=Be({name:e,control:h,defaultRowValue:c,isView:m,isReadOnly:!!w,filters:n}),C=l==="fixed";return t.jsxs("div",{className:`table-wrapper ${C?"table-fixed":"table-fluid"}`,children:[t.jsx("input",{type:"hidden",...R}),t.jsxs("div",{className:"header-handle",children:[t.jsx("h3",{children:a}),!w&&r&&t.jsxs("div",{className:"handle-actions",children:[t.jsxs("button",{type:"button",className:`btn ${j.length>0?"btn-danger":""}`,disabled:j.length===0,onClick:b.removeRows,children:["Remover (",j.length,")"]}),t.jsx("button",{type:"button",className:"btn-add",onClick:b.addRow,children:"Adicionar"})]})]}),t.jsx("div",{className:"table-scroll",children:t.jsxs("table",{className:"table-custom",children:[t.jsx("thead",{children:t.jsxs("tr",{children:[!w&&t.jsx("th",{style:{width:"50px"},children:t.jsx("input",{type:"checkbox",checked:p,onChange:g=>b.toggleSelectAll(g.target.checked)})}),s.map(g=>t.jsx("th",{style:g.width?{minWidth:C?g.width:"100%"}:{width:"max-content"},children:g.label},g.key))]})}),t.jsxs("tbody",{children:[v.map((g,i)=>t.jsxs("tr",{children:[!w&&t.jsx("td",{children:t.jsx("input",{type:"checkbox",checked:j.includes(g._uid),onChange:()=>b.toggleSelection(g._uid)})}),s.map(d=>t.jsx("td",{children:d.render?d.render.length<=1?d.render({row:g,index:i,updateRow:(x,$)=>b.updateCellValue(g._uid,x,$),isLocked:!!w,isView:!!m}):d.render(g,i,(x,$)=>b.updateCellValue(g._uid,x,$),!!w,!!m):g[d.key]},`${g._uid}-${d.key}`))]},g._uid)),v.length===0&&t.jsx("tr",{className:"empty-row",children:t.jsx("td",{colSpan:100,className:"text-center",children:w?"Nenhum registro encontrado.":"Nenhum registro."})})]})]})})]})},ze=(e,a)=>{const[s,c]=u.useState(null),{watch:o}=S.useFormContext(),l=a!==void 0?a:o(e),r=u.useCallback(()=>{try{const h=window.top.__REACT_ATTACHMENT_BRIDGE__;if(h){const m=h.getAttachment(e,l);c(m||(l?{name:l,documentId:0}:null))}else c(l?{name:l,documentId:0}:null)}catch{c(l?{name:l,documentId:0}:null)}},[e,l,a]);return u.useEffect(()=>{r();const n=setInterval(r,2e3);return()=>clearInterval(n)},[r]),{attachment:s,sync:r}},Xe=({name:e,label:a,help:s,valueManual:c,onChangeManual:o})=>{const[l,r]=u.useState(!1),{control:n}=S.useFormContext(),{field:h}=S.useController({name:e,control:n}),{attachment:m,sync:f}=ze(e,c),y=()=>{var b;try{const C=window.top;return{bridge:C.__REACT_ATTACHMENT_BRIDGE__,toast:(b=C.FLUIGC)==null?void 0:b.toast}}catch{return{bridge:null,toast:null}}},w=u.useCallback(()=>{const b=document.createElement("input");b.type="file",b.onchange=C=>{const g=C.target.files[0];if(!g)return;const{bridge:i,toast:d}=y();r(!0),i?i.upload(g,e,x=>{o?o(x.name):h.onChange(x.name),setTimeout(()=>{r(!1),f()},1e3),d&&d({title:"Sucesso",message:"Arquivo enviado",type:"success"})}):(o?o(g.name):h.onChange(g.name),r(!1))},b.click()},[e,h,f,o]),R=b=>{b.stopPropagation();const C=(m==null?void 0:m.name)||c||h.value;if(!C)return;const{bridge:g,toast:i}=y();g?g.removeByFileName(C)?(o?o(""):h.onChange(""),f()):i&&i({title:"Erro",message:"Erro ao remover anexo",type:"danger"}):(o?o(""):h.onChange(""),f())},v=!!m&&!l,j=(m==null?void 0:m.name)||c||h.value,p=["fluig-attachment__box",v?"fluig-attachment__box--has-file":"",l?"fluig-attachment__box--uploading":""].join(" ");return t.jsxs("div",{className:"form-group fluig-attachment",children:[a&&t.jsx("label",{className:"fluig-attachment__label",children:a}),t.jsxs("div",{className:p,onClick:()=>{if(v){const b=y();b.bridge&&j&&b.bridge.view(j)}else w()},children:[t.jsxs("span",{className:"fluig-attachment__content",children:[t.jsx("i",{className:`fluigicon icon-sm ${l?"fluigicon-loop-test":v?"fluigicon-file-pdf":"fluigicon-paperclip"} fluig-attachment__icon`}),t.jsx("span",{className:"fluig-attachment__filename",children:l?" Enviando...":v?j:s||"Anexar"})]}),v&&t.jsx("button",{type:"button",className:"fluig-attachment__btn-remove btn btn-link text-danger",onClick:R,children:t.jsx("i",{className:"flaticon flaticon-trash icon-sm","aria-hidden":"true"})})]}),!o&&t.jsx("input",{type:"hidden",name:e,value:h.value||""})]})},Ue=u.memo(Xe);function Ye({items:e,time:a=0,showNavigation:s=!0,progressBar:c=!0}){const[o,l]=u.useState(0),[r,n]=u.useState(0),h=u.useRef(null),m=u.useRef(null),f=u.useCallback(()=>{l(j=>(j+1)%e.length),n(0)},[e.length]),y=u.useCallback(()=>{l(j=>(j-1+e.length)%e.length),n(0)},[e.length]);if(u.useEffect(()=>{if(a>0&&e.length>1){const p=100/a*100;h.current=setInterval(f,a),m.current=setInterval(()=>{n(b=>b>=100?0:b+p)},100)}return()=>{h.current&&clearInterval(h.current),m.current&&clearInterval(m.current)}},[a,f,e.length,o]),!e||e.length===0)return null;const w=e[o],R=typeof w=="string"?w:w.url,v=/\.(jpg|jpeg|png|gif|webp)$/i.test(R);return t.jsxs("div",{className:"carousel-root",children:[t.jsxs("div",{className:"carousel-viewport",children:[s&&e.length>1&&t.jsxs(t.Fragment,{children:[t.jsx("button",{className:"nav-btn prev",onClick:y,children:t.jsx("i",{className:"flaticon flaticon-chevron-left"})}),t.jsx("button",{className:"nav-btn next",onClick:f,children:t.jsx("i",{className:"flaticon flaticon-chevron-right"})})]}),t.jsx("div",{className:"carousel-media",children:v?t.jsx("img",{src:R,alt:"Slide",className:"carousel-image"}):t.jsxs("div",{className:"carousel-file-fallback",children:[t.jsx("i",{className:"flaticon flaticon-file icon-xl"}),t.jsx("a",{href:R,target:"_blank",rel:"noreferrer",className:"btn-open",children:"Abrir Arquivo"})]})}),e.length>1&&t.jsx("div",{className:"carousel-dots",children:e.map((j,p)=>t.jsx("div",{className:`dot ${p===o?"active":""}`,onClick:()=>{l(p),n(0)}},p))})]}),c&&a>0&&e.length>1&&t.jsx("div",{className:"carousel-progress-container",children:t.jsx("div",{className:"carousel-progress-bar",style:{width:`${r}%`}})})]})}function Ge({title:e,isOpen:a,onOpen:s,onClose:c,content:o,footer:l,width:r}){const n=u.useCallback(h=>{h.key==="Escape"&&c()},[c]);return u.useEffect(()=>(a&&(document.addEventListener("keydown",n),s==null||s(),document.body.style.overflow="hidden"),()=>{document.removeEventListener("keydown",n),document.body.style.overflow="auto"}),[a,n,s]),a?t.jsx("div",{className:"modal-overlay",onClick:c,"aria-modal":"true",role:"dialog",children:t.jsxs("div",{style:{maxWidth:r},className:"modal-container",onClick:h=>h.stopPropagation(),children:[t.jsxs("div",{className:"modal-header",children:[t.jsx("h3",{children:e}),t.jsx("div",{className:"btn-close-modal",onClick:c,role:"button","aria-label":"Fechar modal",children:t.jsx("i",{className:"flaticon flaticon-close icon-md","aria-hidden":"true"})})]}),t.jsx("div",{className:"modal-content",children:o}),l&&t.jsx("div",{className:"modal-footer",children:l})]})}):null}function Qe({logo:e,childs:a,footer:s,contentExternal:c,bg:o,color:l,onSelect:r}){return t.jsxs("div",{className:"main-container dfea",children:[t.jsxs("div",{className:"sidebar-wrapper",style:{backgroundColor:`${o}`},children:[e&&t.jsx("div",{className:"sidebar-logo",children:t.jsx("img",{src:e,alt:"",width:"auto",height:"28px"})}),t.jsx("ul",{className:"sidebar-childs-content",children:a==null?void 0:a.map(n=>{var h,m;return n!=null&&n.options&&((h=n==null?void 0:n.options)==null?void 0:h.length)>0?t.jsx(t.Fragment,{children:t.jsxs("ul",{className:"sidebar-child sidebar-options-content",children:[t.jsxs("li",{className:"sidebar-child",onClick:()=>{var f;(f=n.action)==null||f.call(n),r==null||r(n.id)},style:{color:`${l}`},children:[n.icon&&t.jsx("i",{className:n.icon}),n.label]}),(m=n.options)==null?void 0:m.map(f=>t.jsx("li",{className:"sidebar-option",onClick:()=>{var y;(y=f.action)==null||y.call(f),r==null||r(f.id)},style:{color:`${l}`},children:f.label}))]})}):t.jsxs("li",{className:"sidebar-child",onClick:()=>{var f;(f=n.action)==null||f.call(n),r==null||r(n.id)},style:{color:`${l}`},children:[n.icon&&t.jsx("i",{className:n.icon}),n.label]})})}),s&&t.jsx("div",{className:"sidebar-footer",children:s})]}),t.jsx("div",{className:"sidebar-content-external",children:c})]})}exports.Attachment=Ue;exports.Carousel=Ye;exports.Checkbox=Z;exports.DatePicker=Ie;exports.Input=G;exports.Modal=Ge;exports.RadioBtn=ee;exports.Select=J;exports.Sidebar=Qe;exports.SimpleTable=Le;exports.StatusBadge=He;exports.TextArea=ne;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),u=require("react"),P=require("react-hook-form"),X=require("react-imask"),$=require("@fluig-kit/ecm"),L=require("react-datepicker"),O=require("date-fns"),U={cpf:"000.000.000-00",cnpj:"00.000.000/0000-00",telefone:"(00) 00000-0000",cep:"00000-000"};function Y({name:e,label:a="",placeholder:s="",type:c="text",mask:i,className:l="",forceReadOnly:r=!1,forceHidden:n=!1}){const{isReadOnly:x,isHidden:m}=$.useSection(),h=r||!!x(e),j=n||!!m(e),{control:N}=P.useFormContext(),{isView:k}=$.useFluigRuntime(),{field:y}=P.useController({name:e,control:N}),{errors:b}=P.useFormState({name:e}),v=b==null?void 0:b[e],w=u.useMemo(()=>i?U[i]??i:null,[i]),R=u.useCallback(o=>{if(!o)return"";const d=o.replace(/\D/g,"");return(Number(d)/100).toLocaleString("pt-BR",{style:"currency",currency:"BRL"})},[]),f=u.useCallback(o=>c==="monetary"?R(o):o,[c,R]);return k?t.jsxs("div",{className:"form-group",children:[t.jsx("label",{children:a}),t.jsx("span",{className:"form-control",children:y.value||"-"})]}):t.jsxs("div",{className:`form-group ${j?"hidden":""}`,children:[t.jsx("label",{children:a}),w?t.jsx(X.IMaskInput,{name:e,mask:w,value:String(y.value??""),unmask:!1,onAccept:o=>y.onChange(f(o)),placeholder:s,readOnly:h,className:`form-control ${v?"border-red":""} ${l}`,inputRef:y.ref,onBlur:y.onBlur}):t.jsx("input",{...y,type:"text",value:y.value??"",onChange:o=>y.onChange(f(o.target.value)),placeholder:s,readOnly:h,className:`form-control ${v?"border-red":""} ${l}`}),v&&t.jsx("p",{className:"text-danger",children:String(v.message)})]})}const G=u.memo(Y);function Q({name:e,label:a="",options:s=[],placeholder:c="",labelKey:i="label",valueKey:l="value",enableSearch:r=!1,searchPlaceholder:n="Buscar...",loading:x=!1,onSearchChange:m,debounceTime:h=300,onSelect:j,forceReadOnly:N=!1,forceHidden:k=!1}){const{isReadOnly:y,isHidden:b}=$.useSection(),v=N||!!y(e),w=k||!!b(e),{control:R,clearErrors:f}=P.useFormContext(),{isView:o}=$.useFluigRuntime(),{field:{onChange:d,value:g,ref:S},fieldState:{error:p}}=P.useController({name:e,control:R}),[_,F]=u.useState(!1),[M,q]=u.useState(""),D=u.useRef(null),E=u.useRef(m);u.useEffect(()=>{E.current=m},[m]),u.useEffect(()=>{const C=A=>{D.current&&!D.current.contains(A.target)&&F(!1)};return document.addEventListener("mousedown",C),()=>document.removeEventListener("mousedown",C)},[]),u.useEffect(()=>{_||q("")},[_]),u.useEffect(()=>{if(!r)return;const C=setTimeout(()=>{E.current&&E.current(M)},h);return()=>clearTimeout(C)},[M,r,h]);const H=u.useMemo(()=>r&&!m&&M.trim()?s.filter(C=>String((C==null?void 0:C[i])??"").toLowerCase().includes(M.toLowerCase())):s??[],[s,r,m,M,i]),B=u.useMemo(()=>{if(g==null)return"";if(typeof g=="object")return String(g[l]??"");const C=(s||[]).find(A=>String(A==null?void 0:A[l])===String(g));return String(C?(C==null?void 0:C[i])??"":g)},[g,s,l,i]),z=C=>{v||(d(C[l]),j&&j(C),f(e),F(!1))};return t.jsxs("div",{className:`select-wrapper form-group ${w?"hidden":""}`,ref:D,children:[t.jsx("label",{className:"control-label",children:a}),o?t.jsx("span",{className:"form-control",children:B||"-"}):t.jsxs(t.Fragment,{children:[t.jsxs("div",{className:`select-control ${p?"border-red":""} ${v?"readOnly":""}`,onClick:()=>!v&&F(C=>!C),ref:S,children:[t.jsx("span",{className:`select-display ${v?"readOnly":""}`,children:B||c}),t.jsx("i",{className:"flaticon flaticon-chevron-down select-icon"})]}),_&&!v&&t.jsxs("div",{className:"select-dropdown",children:[r&&t.jsx("div",{className:"select-search",children:t.jsx("input",{type:"text",className:"select-search-input",value:M,onChange:C=>q(C.target.value),placeholder:x?"Carregando...":n,autoFocus:!0,onClick:C=>C.stopPropagation()})}),t.jsx("ul",{className:"select-options",children:x?t.jsx("li",{className:"select-option readOnly",children:"Carregando..."}):H.length>0?H.map(C=>t.jsx("li",{onClick:()=>z(C),className:"select-option handleHover",children:C[i]},C[l])):t.jsx("li",{className:"select-option readOnly",children:"Sem resultados"})})]})]}),t.jsx("input",{type:"hidden",name:e,value:g||""}),p&&t.jsx("p",{className:"text-danger",children:String(p.message)})]})}const J=u.memo(Q);function Z({name:e,options:a=[],label:s="",valueKey:c="value",labelKey:i="label",forceReadOnly:l=!1,forceHidden:r=!1}){var g,S;const n=P.useFormContext(),{isView:x,isReadOnly:m}=$.useFluigRuntime(),{isReadOnly:h,isHidden:j}=$.useSection(),N=h?h(e):!1,k=j?j(e):!1,y=l||N,b=r||k,v=y||m||x;if(!n||!e)return console.error("Checkbox requer contexto de formulário e nome."),null;const w=()=>!a||!n?{}:a.reduce((p,_)=>{const F=_[c],M=n.getValues(F);return p[F]=M==="on",p},{}),R=n.watch(e),f=u.useMemo(()=>R&&typeof R=="object"?R:w(),[R,a,c]);u.useEffect(()=>{const p=n.getValues(e);(!p||typeof p!="object")&&n.setValue(e,f,{shouldDirty:!1,shouldValidate:!1})},[f,e,n]);const o=(p,_)=>{if(v)return;const F={...f,[p]:_};n.setValue(e,F,{shouldDirty:!0,shouldValidate:!0}),n.setValue(p,_?"on":"",{shouldValidate:!1})},d=(S=(g=n.formState)==null?void 0:g.errors)==null?void 0:S[e];return t.jsxs("div",{className:`form-group ${b?"hidden":""}`,children:[s&&t.jsx("label",{children:s}),t.jsx("div",{className:`checkbox-group-custom ${v?"readOnly":""}`,children:a.map(p=>{const _=String(p[c]),F=f[_]===!0;return t.jsxs("div",{children:[t.jsx("input",{type:"hidden",...n.register(_)}),t.jsxs("label",{className:`custom-checkbox ${F?"checked":""} ${v?"readOnly":""}`,children:[t.jsx("input",{type:"checkbox",checked:F,disabled:v,onChange:M=>o(_,M.target.checked)}),t.jsx("span",{className:"checkmark"}),t.jsx("span",{children:p[i]})]})]},_)})}),d&&t.jsx("p",{className:"text-danger",children:String(d.message)})]})}function K({name:e,label:a="",options:s=[],valueKey:c="value",labelKey:i="label",iconKey:l="icon",forceReadOnly:r=!1,forceHidden:n=!1}){const{isReadOnly:x,isHidden:m}=$.useSection(),h=r||!!x(e),j=n||!!m(e),{control:N}=P.useFormContext(),{isView:k,isReadOnly:y}=$.useFluigRuntime(),{field:b,fieldState:{error:v}}=P.useController({name:e,control:N}),w=h||y||k,R=b.value??"",f=u.useCallback(o=>{w||b.onChange(o)},[w,b]);return t.jsxs("div",{className:`form-group column ${j?"hidden":""}`,children:[a&&t.jsx("label",{className:"control-label",children:a}),t.jsx("div",{className:`btn-group ${w?"view-mode":""}`,"data-field-name":e,children:s.map(o=>{const d=o[c],g=R===d,S=o.color?{"--customColor":o.color}:void 0;return t.jsxs("label",{htmlFor:`${e}_${d}`,style:S,className:`btn fs-ellipsis ${g?"active":""}`,children:[t.jsx("input",{type:"radio",id:`${e}_${d}`,name:e,value:d,checked:g,className:"hidden",onChange:()=>f(d),disabled:w}),o[l]&&t.jsx("i",{className:`${o[l]} icon-sm`})," ",o[i]]},d)})}),v&&t.jsx("p",{className:"text-danger",children:String(v.message)})]})}const ee=u.memo(K),te=({name:e,label:a="",placeholder:s="",className:c="",rows:i=4,maxLength:l,forceReadOnly:r=!1,forceHidden:n=!1})=>{const{isReadOnly:x,isHidden:m}=$.useSection(),h=r||!!x(e),j=n||!!m(e),{control:N}=P.useFormContext(),{isView:k}=$.useFluigRuntime(),{field:y,fieldState:{error:b}}=P.useController({name:e,control:N});return k?t.jsxs("div",{className:`form-group ${j?"hidden":""}`,children:[t.jsx("label",{children:a}),t.jsx("span",{className:"form-control",children:y.value||"-"})]}):t.jsxs("div",{className:`form-group ${j?"hidden":""}`,children:[t.jsx("label",{children:a}),t.jsx("textarea",{...y,rows:i,maxLength:l,value:y.value||"",placeholder:s,readOnly:h,className:`form-control ${b?"border-red":""} ${c}`}),b&&t.jsx("p",{className:"text-danger",children:String(b.message)})]})},ne=u.memo(te);function T(e){return(a={})=>{const s=a.width?String(a.width):e.defaultWidth;return e.formats[s]||e.formats[e.defaultWidth]}}function V(e){return(a,s)=>{const c=s!=null&&s.context?String(s.context):"standalone";let i;if(c==="formatting"&&e.formattingValues){const r=e.defaultFormattingWidth||e.defaultWidth,n=s!=null&&s.width?String(s.width):r;i=e.formattingValues[n]||e.formattingValues[r]}else{const r=e.defaultWidth,n=s!=null&&s.width?String(s.width):e.defaultWidth;i=e.values[n]||e.values[r]}const l=e.argumentCallback?e.argumentCallback(a):a;return i[l]}}function W(e){return(a,s={})=>{const c=s.width,i=c&&e.matchPatterns[c]||e.matchPatterns[e.defaultMatchWidth],l=a.match(i);if(!l)return null;const r=l[0],n=c&&e.parsePatterns[c]||e.parsePatterns[e.defaultParseWidth],x=Array.isArray(n)?ae(n,j=>j.test(r)):se(n,j=>j.test(r));let m;m=e.valueCallback?e.valueCallback(x):x,m=s.valueCallback?s.valueCallback(m):m;const h=a.slice(r.length);return{value:m,rest:h}}}function se(e,a){for(const s in e)if(Object.prototype.hasOwnProperty.call(e,s)&&a(e[s]))return s}function ae(e,a){for(let s=0;s<e.length;s++)if(a(e[s]))return s}function re(e){return(a,s={})=>{const c=a.match(e.matchPattern);if(!c)return null;const i=c[0],l=a.match(e.parsePattern);if(!l)return null;let r=e.valueCallback?e.valueCallback(l[0]):l[0];r=s.valueCallback?s.valueCallback(r):r;const n=a.slice(i.length);return{value:r,rest:n}}}const oe={lessThanXSeconds:{one:"menos de um segundo",other:"menos de {{count}} segundos"},xSeconds:{one:"1 segundo",other:"{{count}} segundos"},halfAMinute:"meio minuto",lessThanXMinutes:{one:"menos de um minuto",other:"menos de {{count}} minutos"},xMinutes:{one:"1 minuto",other:"{{count}} minutos"},aboutXHours:{one:"cerca de 1 hora",other:"cerca de {{count}} horas"},xHours:{one:"1 hora",other:"{{count}} horas"},xDays:{one:"1 dia",other:"{{count}} dias"},aboutXWeeks:{one:"cerca de 1 semana",other:"cerca de {{count}} semanas"},xWeeks:{one:"1 semana",other:"{{count}} semanas"},aboutXMonths:{one:"cerca de 1 mês",other:"cerca de {{count}} meses"},xMonths:{one:"1 mês",other:"{{count}} meses"},aboutXYears:{one:"cerca de 1 ano",other:"cerca de {{count}} anos"},xYears:{one:"1 ano",other:"{{count}} anos"},overXYears:{one:"mais de 1 ano",other:"mais de {{count}} anos"},almostXYears:{one:"quase 1 ano",other:"quase {{count}} anos"}},ie=(e,a,s)=>{let c;const i=oe[e];return typeof i=="string"?c=i:a===1?c=i.one:c=i.other.replace("{{count}}",String(a)),s!=null&&s.addSuffix?s.comparison&&s.comparison>0?"em "+c:"há "+c:c},le={full:"EEEE, d 'de' MMMM 'de' y",long:"d 'de' MMMM 'de' y",medium:"d MMM y",short:"dd/MM/yyyy"},ce={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},de={full:"{{date}} 'às' {{time}}",long:"{{date}} 'às' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},ue={date:T({formats:le,defaultWidth:"full"}),time:T({formats:ce,defaultWidth:"full"}),dateTime:T({formats:de,defaultWidth:"full"})},me={lastWeek:e=>{const a=e.getDay();return"'"+(a===0||a===6?"último":"última")+"' eeee 'às' p"},yesterday:"'ontem às' p",today:"'hoje às' p",tomorrow:"'amanhã às' p",nextWeek:"eeee 'às' p",other:"P"},he=(e,a,s,c)=>{const i=me[e];return typeof i=="function"?i(a):i},fe={narrow:["AC","DC"],abbreviated:["AC","DC"],wide:["antes de cristo","depois de cristo"]},ge={narrow:["1","2","3","4"],abbreviated:["T1","T2","T3","T4"],wide:["1º trimestre","2º trimestre","3º trimestre","4º trimestre"]},xe={narrow:["j","f","m","a","m","j","j","a","s","o","n","d"],abbreviated:["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez"],wide:["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"]},be={narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sab"],abbreviated:["domingo","segunda","terça","quarta","quinta","sexta","sábado"],wide:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},ve={narrow:{am:"a",pm:"p",midnight:"mn",noon:"md",morning:"manhã",afternoon:"tarde",evening:"tarde",night:"noite"},abbreviated:{am:"AM",pm:"PM",midnight:"meia-noite",noon:"meio-dia",morning:"manhã",afternoon:"tarde",evening:"tarde",night:"noite"},wide:{am:"a.m.",pm:"p.m.",midnight:"meia-noite",noon:"meio-dia",morning:"manhã",afternoon:"tarde",evening:"tarde",night:"noite"}},je={narrow:{am:"a",pm:"p",midnight:"mn",noon:"md",morning:"da manhã",afternoon:"da tarde",evening:"da tarde",night:"da noite"},abbreviated:{am:"AM",pm:"PM",midnight:"meia-noite",noon:"meio-dia",morning:"da manhã",afternoon:"da tarde",evening:"da tarde",night:"da noite"},wide:{am:"a.m.",pm:"p.m.",midnight:"meia-noite",noon:"meio-dia",morning:"da manhã",afternoon:"da tarde",evening:"da tarde",night:"da noite"}},pe=(e,a)=>{const s=Number(e);return(a==null?void 0:a.unit)==="week"?s+"ª":s+"º"},ye={ordinalNumber:pe,era:V({values:fe,defaultWidth:"wide"}),quarter:V({values:ge,defaultWidth:"wide",argumentCallback:e=>e-1}),month:V({values:xe,defaultWidth:"wide"}),day:V({values:be,defaultWidth:"wide"}),dayPeriod:V({values:ve,defaultWidth:"wide",formattingValues:je,defaultFormattingWidth:"wide"})},Ne=/^(\d+)[ºªo]?/i,we=/\d+/i,Ce={narrow:/^(ac|dc|a|d)/i,abbreviated:/^(a\.?\s?c\.?|d\.?\s?c\.?)/i,wide:/^(antes de cristo|depois de cristo)/i},ke={any:[/^ac/i,/^dc/i],wide:[/^antes de cristo/i,/^depois de cristo/i]},Re={narrow:/^[1234]/i,abbreviated:/^T[1234]/i,wide:/^[1234](º)? trimestre/i},Se={any:[/1/i,/2/i,/3/i,/4/i]},Pe={narrow:/^[jfmajsond]/i,abbreviated:/^(jan|fev|mar|abr|mai|jun|jul|ago|set|out|nov|dez)/i,wide:/^(janeiro|fevereiro|março|abril|maio|junho|julho|agosto|setembro|outubro|novembro|dezembro)/i},_e={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^fev/i,/^mar/i,/^abr/i,/^mai/i,/^jun/i,/^jul/i,/^ago/i,/^set/i,/^out/i,/^nov/i,/^dez/i]},$e={narrow:/^(dom|[23456]ª?|s[aá]b)/i,short:/^(dom|[23456]ª?|s[aá]b)/i,abbreviated:/^(dom|seg|ter|qua|qui|sex|s[aá]b)/i,wide:/^(domingo|(segunda|ter[cç]a|quarta|quinta|sexta)([- ]feira)?|s[aá]bado)/i},Fe={short:[/^d/i,/^2/i,/^3/i,/^4/i,/^5/i,/^6/i,/^s[aá]/i],narrow:[/^d/i,/^2/i,/^3/i,/^4/i,/^5/i,/^6/i,/^s[aá]/i],any:[/^d/i,/^seg/i,/^t/i,/^qua/i,/^qui/i,/^sex/i,/^s[aá]b/i]},Me={narrow:/^(a|p|mn|md|(da) (manhã|tarde|noite))/i,any:/^([ap]\.?\s?m\.?|meia[-\s]noite|meio[-\s]dia|(da) (manhã|tarde|noite))/i},Ae={any:{am:/^a/i,pm:/^p/i,midnight:/^mn|^meia[-\s]noite/i,noon:/^md|^meio[-\s]dia/i,morning:/manhã/i,afternoon:/tarde/i,evening:/tarde/i,night:/noite/i}},Ve={ordinalNumber:re({matchPattern:Ne,parsePattern:we,valueCallback:e=>parseInt(e,10)}),era:W({matchPatterns:Ce,defaultMatchWidth:"wide",parsePatterns:ke,defaultParseWidth:"any"}),quarter:W({matchPatterns:Re,defaultMatchWidth:"wide",parsePatterns:Se,defaultParseWidth:"any",valueCallback:e=>e+1}),month:W({matchPatterns:Pe,defaultMatchWidth:"wide",parsePatterns:_e,defaultParseWidth:"any"}),day:W({matchPatterns:$e,defaultMatchWidth:"wide",parsePatterns:Fe,defaultParseWidth:"any"}),dayPeriod:W({matchPatterns:Me,defaultMatchWidth:"any",parsePatterns:Ae,defaultParseWidth:"any"})},We={code:"pt-BR",formatDistance:ie,formatLong:ue,formatRelative:he,localize:ye,match:Ve,options:{weekStartsOn:0,firstWeekContainsDate:1}};L.registerLocale("pt-BR",We);const I="dd/MM/yyyy",De=e=>{if(!e)return null;const a=O.parse(e,I,new Date);return O.isValid(a)?a:null},Ee=e=>e?O.format(e,I):"",Te=u.forwardRef(({shimRef:e,className:a,name:s,...c},i)=>t.jsx("input",{name:s,...c,className:a,ref:l=>{typeof i=="function"?i(l):i&&(i.current=l),e&&e(l)}})),Oe=({name:e,label:a="",placeholder:s="dd/mm/aaaa",className:c="",forceReadOnly:i=!1,forceHidden:l=!1})=>{const{control:r}=P.useFormContext(),{isView:n}=$.useFluigRuntime(),{isReadOnly:x,isHidden:m}=$.useSection(),h=i||!!x(e),j=l||!!m(e),{field:{onChange:N,onBlur:k,value:y,ref:b},fieldState:{error:v}}=P.useController({name:e,control:r}),w=u.useMemo(()=>De(y),[y]),R=u.useCallback(o=>{N(o?Ee(o):"")},[N]),f=u.useCallback(o=>{var d,g;if(b(o),o&&((g=(d=r._fields)==null?void 0:d[e])!=null&&g._f)){const S=r._fields[e];S._f.ref={focus:()=>{var p;return(p=o.focus)==null?void 0:p.call(o)},select:()=>{var p;return(p=o.select)==null?void 0:p.call(o)},setCustomValidity:p=>{var _;return(_=o.setCustomValidity)==null?void 0:_.call(o,p)},reportValidity:()=>{var p;return(p=o.reportValidity)==null?void 0:p.call(o)}}}},[b,r,e]);return j?null:n?t.jsxs("div",{className:"form-group",children:[t.jsx("label",{children:a}),t.jsx("span",{className:"form-control",children:y||"-"})]}):t.jsxs("div",{className:`form-group fluig-style-guide ${c}`,children:[a&&t.jsx("label",{className:"control-label",htmlFor:e,children:a}),t.jsx("div",{className:`${v?"border-red":""}`,children:t.jsx(L,{id:e,name:e,selected:w,onChange:R,onBlur:k,dateFormat:I,placeholderText:s,disabled:h,readOnly:h,locale:"pt-BR",className:`form-control ${v?"border-red":""}`,wrapperClassName:"w-100",showMonthDropdown:!0,showYearDropdown:!0,dropdownMode:"select",isClearable:!h&&!!y,autoComplete:"off",customInput:t.jsx(Te,{name:e,shimRef:f})})}),v&&t.jsx("span",{className:"help-block text-danger",children:String(v.message)})]})},Ie=u.memo(Oe);function qe({mapping:e={},defaultLabel:a="Não reconhecido",className:s="",hidden:c=!1,label:i}){const{activityId:l}=$.useFluigRuntime(),r=u.useMemo(()=>!e||l===null||l===void 0?null:e[l],[l,e]);if(!r)return t.jsxs("div",{className:`form-group ${c?"hidden":""}`,children:[i&&t.jsx("label",{children:i}),t.jsx("div",{className:`status-badge default ${s}`,children:a})]});const n={"--customColor":r.color};return t.jsxs("div",{className:`form-group ${c?"hidden":""}`,children:[i&&t.jsx("label",{children:i}),t.jsxs("div",{className:`status-badge ${s}`,style:n,children:[r.icon&&t.jsx("i",{className:r.icon}),t.jsx("span",{children:r.label})]})]})}const He=u.memo(qe);function Be({name:e,control:a,defaultRowValue:s,isView:c,isReadOnly:i,filters:l=[]}){const{field:r}=P.useController({name:e,control:a}),[n,x]=u.useState([]),[m,h]=u.useState([]),j=()=>Date.now()+Math.random(),N=o=>{try{const d=JSON.parse(o);return Array.isArray(d)?d.map(g=>({...g,_uid:g._uid||j()})):[]}catch(d){return console.error(`Erro ao ler dados da tabela "${e}":`,d),[]}};u.useEffect(()=>{if(!(n.length>0&&!c)&&r.value&&typeof r.value=="string"){const o=JSON.stringify(n);if(r.value===o)return;const d=N(r.value);x(d)}},[r.value,c]),u.useEffect(()=>{if(i)return;const o=JSON.stringify(n);r.value!==o&&r.onChange(o)},[n,r,i]);const k=u.useCallback(()=>{const o={_uid:j(),...s};x(d=>[...d,o])},[s]),y=u.useCallback(()=>{x(o=>o.filter(d=>!m.includes(d._uid))),h([])},[m]),b=u.useCallback((o,d,g)=>{x(S=>S.map(p=>p._uid===o?{...p,[d]:g}:p))},[]),v=u.useCallback(o=>{h(d=>d.includes(o)?d.filter(g=>g!==o):[...d,o])},[]),w=u.useCallback(o=>{h(o?n.map(d=>d._uid):[])},[n]),R=n.length>0&&m.length===n.length,f=u.useMemo(()=>!l||l.length===0?n:n.filter(o=>l.every(d=>{if("custom"in d)return d.custom(o);const g=o[d.field];switch(d.operator){case"===":return g===d.value;case"!==":return g!==d.value;case">":return g>d.value;case"<":return g<d.value;case">=":return g>=d.value;case"<=":return g<=d.value;default:return!0}})),[n,l]);return{field:r,tableRows:n,visibleRows:f,selectedRowIds:m,isAllSelected:R,handle:{addRow:k,removeRows:y,updateCellValue:b,toggleSelection:v,toggleSelectAll:w}}}const Le=({name:e,title:a="Tabela Dinâmica",columns:s,defaultRowValue:c={},forceReadOnly:i=!1,layout:l="fluid",actions:r=!0,filters:n=[]})=>{const{control:x}=P.useFormContext(),{isView:m,isReadOnly:h}=$.useFluigRuntime(),{isReadOnly:j}=$.useSection(),N=i||m||h||j&&j(e),{field:k,visibleRows:y,selectedRowIds:b,isAllSelected:v,handle:w}=Be({name:e,control:x,defaultRowValue:c,isView:m,isReadOnly:!!N,filters:n}),R=l==="fixed";return t.jsxs("div",{className:`table-wrapper ${R?"table-fixed":"table-fluid"}`,children:[t.jsx("input",{type:"hidden",...k}),t.jsxs("div",{className:"header-handle",children:[t.jsx("h3",{children:a}),!N&&r&&t.jsxs("div",{className:"handle-actions",children:[t.jsxs("button",{type:"button",className:`btn ${b.length>0?"btn-danger":""}`,disabled:b.length===0,onClick:w.removeRows,children:["Remover (",b.length,")"]}),t.jsx("button",{type:"button",className:"btn-add",onClick:w.addRow,children:"Adicionar"})]})]}),t.jsx("div",{className:"table-scroll",children:t.jsxs("table",{className:"table-custom",children:[t.jsx("thead",{children:t.jsxs("tr",{children:[!N&&t.jsx("th",{style:{width:"50px"},children:t.jsx("input",{type:"checkbox",checked:v,onChange:f=>w.toggleSelectAll(f.target.checked)})}),s.map(f=>t.jsx("th",{style:f.width?{minWidth:R?f.width:"100%"}:{width:"max-content"},children:f.label},f.key))]})}),t.jsxs("tbody",{children:[y.map((f,o)=>t.jsxs("tr",{children:[!N&&t.jsx("td",{children:t.jsx("input",{type:"checkbox",checked:b.includes(f._uid),onChange:()=>w.toggleSelection(f._uid)})}),s.map(d=>t.jsx("td",{children:d.render?d.render.length<=1?d.render({row:f,index:o,updateRow:(g,S)=>w.updateCellValue(f._uid,g,S),isLocked:!!N,isView:!!m}):d.render(f,o,(g,S)=>w.updateCellValue(f._uid,g,S),!!N,!!m):f[d.key]},`${f._uid}-${d.key}`))]},f._uid)),y.length===0&&t.jsx("tr",{className:"empty-row",children:t.jsx("td",{colSpan:100,className:"text-center",children:N?"Nenhum registro encontrado.":"Nenhum registro."})})]})]})})]})},ze=(e,a)=>{const[s,c]=u.useState(null),{watch:i}=P.useFormContext(),l=a!==void 0?a:i(e),r=u.useCallback(()=>{try{const x=window.top.__REACT_ATTACHMENT_BRIDGE__;if(x){const m=x.getAttachment(e,l);c(m||(l?{name:l,documentId:0}:null))}else c(l?{name:l,documentId:0}:null)}catch{c(l?{name:l,documentId:0}:null)}},[e,l,a]);return u.useEffect(()=>{r();const n=setInterval(r,2e3);return()=>clearInterval(n)},[r]),{attachment:s,sync:r}},Xe=({name:e,label:a,help:s,valueManual:c,onChangeManual:i,readOnly:l})=>{const[r,n]=u.useState(!1),{control:x}=P.useFormContext(),{field:m}=P.useController({name:e,control:x}),{attachment:h,sync:j}=ze(e,c),N=()=>{var f;try{const o=window.top;return{bridge:o.__REACT_ATTACHMENT_BRIDGE__,toast:(f=o.FLUIGC)==null?void 0:f.toast}}catch{return{bridge:null,toast:null}}},k=u.useCallback(()=>{if(l)return;const f=document.createElement("input");f.type="file",f.onchange=o=>{const d=o.target.files[0];if(!d)return;const{bridge:g,toast:S}=N();n(!0),g?g.upload(d,e,p=>{i?i(p.name):m.onChange(p.name),setTimeout(()=>{n(!1),j()},1e3),S&&S({title:"Sucesso",message:"Arquivo enviado",type:"success"})}):(i?i(d.name):m.onChange(d.name),n(!1))},f.click()},[e,m,j,i,l]),y=f=>{if(f.stopPropagation(),l)return;const o=(h==null?void 0:h.name)||c||m.value;if(!o)return;const{bridge:d,toast:g}=N();d?d.removeByFileName(o)?(i?i(""):m.onChange(""),j()):g&&g({title:"Erro",message:"Erro ao remover anexo",type:"danger"}):(i?i(""):m.onChange(""),j())},b=!!h&&!r,v=(h==null?void 0:h.name)||c||m.value,w=["fluig-attachment__box",b?"fluig-attachment__box--has-file":"",r?"fluig-attachment__box--uploading":""].join(" "),R=l&&!b;return t.jsxs("div",{className:"form-group fluig-attachment",children:[a&&t.jsx("label",{className:"fluig-attachment__label",children:a}),t.jsxs("div",{className:w,style:R?{pointerEvents:"none",opacity:.6,cursor:"not-allowed"}:{},onClick:()=>{if(b){const f=N();f.bridge&&v&&f.bridge.view(v)}else k()},children:[t.jsxs("span",{className:"fluig-attachment__content",children:[t.jsx("i",{className:`fluigicon icon-sm ${r?"fluigicon-loop-test":b?"fluigicon-file-pdf":"fluigicon-paperclip"} fluig-attachment__icon`}),t.jsx("span",{className:"fluig-attachment__filename",children:r?" Enviando...":b?v:l?"Nenhum arquivo":s||"Anexar"})]}),b&&!l&&t.jsx("button",{type:"button",className:"fluig-attachment__btn-remove btn btn-link text-danger",onClick:y,children:t.jsx("i",{className:"flaticon flaticon-trash icon-sm","aria-hidden":"true"})})]}),!i&&t.jsx("input",{type:"hidden",name:e,value:m.value||""})]})},Ue=u.memo(Xe);function Ye({items:e,time:a=0,showNavigation:s=!0,progressBar:c=!0}){const[i,l]=u.useState(0),[r,n]=u.useState(0),x=u.useRef(null),m=u.useRef(null),h=u.useCallback(()=>{l(b=>(b+1)%e.length),n(0)},[e.length]),j=u.useCallback(()=>{l(b=>(b-1+e.length)%e.length),n(0)},[e.length]);if(u.useEffect(()=>{if(a>0&&e.length>1){const v=100/a*100;x.current=setInterval(h,a),m.current=setInterval(()=>{n(w=>w>=100?0:w+v)},100)}return()=>{x.current&&clearInterval(x.current),m.current&&clearInterval(m.current)}},[a,h,e.length,i]),!e||e.length===0)return null;const N=e[i],k=typeof N=="string"?N:N.url,y=/\.(jpg|jpeg|png|gif|webp)$/i.test(k);return t.jsxs("div",{className:"carousel-root",children:[t.jsxs("div",{className:"carousel-viewport",children:[s&&e.length>1&&t.jsxs(t.Fragment,{children:[t.jsx("button",{className:"nav-btn prev",onClick:j,children:t.jsx("i",{className:"flaticon flaticon-chevron-left"})}),t.jsx("button",{className:"nav-btn next",onClick:h,children:t.jsx("i",{className:"flaticon flaticon-chevron-right"})})]}),t.jsx("div",{className:"carousel-media",children:y?t.jsx("img",{src:k,alt:"Slide",className:"carousel-image"}):t.jsxs("div",{className:"carousel-file-fallback",children:[t.jsx("i",{className:"flaticon flaticon-file icon-xl"}),t.jsx("a",{href:k,target:"_blank",rel:"noreferrer",className:"btn-open",children:"Abrir Arquivo"})]})}),e.length>1&&t.jsx("div",{className:"carousel-dots",children:e.map((b,v)=>t.jsx("div",{className:`dot ${v===i?"active":""}`,onClick:()=>{l(v),n(0)}},v))})]}),c&&a>0&&e.length>1&&t.jsx("div",{className:"carousel-progress-container",children:t.jsx("div",{className:"carousel-progress-bar",style:{width:`${r}%`}})})]})}function Ge({title:e,isOpen:a,onOpen:s,onClose:c,content:i,footer:l,width:r}){const n=u.useCallback(x=>{x.key==="Escape"&&c()},[c]);return u.useEffect(()=>(a&&(document.addEventListener("keydown",n),s==null||s(),document.body.style.overflow="hidden"),()=>{document.removeEventListener("keydown",n),document.body.style.overflow="auto"}),[a,n,s]),a?t.jsx("div",{className:"modal-overlay",onClick:c,"aria-modal":"true",role:"dialog",children:t.jsxs("div",{style:{maxWidth:r},className:"modal-container",onClick:x=>x.stopPropagation(),children:[t.jsxs("div",{className:"modal-header",children:[t.jsx("h3",{children:e}),t.jsx("div",{className:"btn-close-modal",onClick:c,role:"button","aria-label":"Fechar modal",children:t.jsx("i",{className:"flaticon flaticon-close icon-md","aria-hidden":"true"})})]}),t.jsx("div",{className:"modal-content",children:i}),l&&t.jsx("div",{className:"modal-footer",children:l})]})}):null}function Qe({logo:e,childs:a,footer:s,contentExternal:c,bg:i,color:l,onSelect:r}){return t.jsxs("div",{className:"main-container dfea",children:[t.jsxs("div",{className:"sidebar-wrapper",style:{backgroundColor:`${i}`},children:[e&&t.jsx("div",{className:"sidebar-logo",children:t.jsx("img",{src:e,alt:"",width:"auto",height:"28px"})}),t.jsx("ul",{className:"sidebar-childs-content",children:a==null?void 0:a.map(n=>{var x,m;return n!=null&&n.options&&((x=n==null?void 0:n.options)==null?void 0:x.length)>0?t.jsx(t.Fragment,{children:t.jsxs("ul",{className:"sidebar-child sidebar-options-content",children:[t.jsxs("li",{className:"sidebar-child",onClick:()=>{var h;(h=n.action)==null||h.call(n),r==null||r(n.id)},style:{color:`${l}`},children:[n.icon&&t.jsx("i",{className:n.icon}),n.label]}),(m=n.options)==null?void 0:m.map(h=>t.jsx("li",{className:"sidebar-option",onClick:()=>{var j;(j=h.action)==null||j.call(h),r==null||r(h.id)},style:{color:`${l}`},children:h.label}))]})}):t.jsxs("li",{className:"sidebar-child",onClick:()=>{var h;(h=n.action)==null||h.call(n),r==null||r(n.id)},style:{color:`${l}`},children:[n.icon&&t.jsx("i",{className:n.icon}),n.label]})})}),s&&t.jsx("div",{className:"sidebar-footer",children:s})]}),t.jsx("div",{className:"sidebar-content-external",children:c})]})}exports.Attachment=Ue;exports.Carousel=Ye;exports.Checkbox=Z;exports.DatePicker=Ie;exports.Input=G;exports.Modal=Ge;exports.RadioBtn=ee;exports.Select=J;exports.Sidebar=Qe;exports.SimpleTable=Le;exports.StatusBadge=He;exports.TextArea=ne;
|