@tech-diefra/fluig-ui 1.2.25 → 1.2.26

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.
@@ -1,4 +1,11 @@
1
1
  import { default as React } from 'react';
2
2
 
3
- declare const _default: React.MemoExoticComponent<({ name, label, help }: any) => import("react/jsx-runtime").JSX.Element>;
3
+ interface AttachmentProps {
4
+ name: string;
5
+ label?: string;
6
+ help?: string;
7
+ valueManual?: string;
8
+ onChangeManual?: (val: string) => void;
9
+ }
10
+ declare const _default: React.MemoExoticComponent<({ name, label, help, valueManual, onChangeManual, }: AttachmentProps) => import("react/jsx-runtime").JSX.Element>;
4
11
  export default _default;
@@ -1,4 +1,4 @@
1
- export declare const useFluigAttachment: (fieldName: string) => {
1
+ export declare const useFluigAttachment: (fieldName: string, manualValue?: string) => {
2
2
  attachment: any;
3
3
  sync: () => void;
4
4
  };
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"),M=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:s="",placeholder:a="",type:c="text",mask:o,className:l="",forceReadOnly:r=!1,forceHidden:n=!1}){const{isReadOnly:g,isHidden:m}=M.useSection(),h=r||!!g(e),y=n||!!m(e),{control:p}=S.useFormContext(),{isView:R}=M.useFluigRuntime(),{field:f}=S.useController({name:e,control:p}),{errors:b}=S.useFormState({name:e}),x=b==null?void 0:b[e],N=u.useMemo(()=>o?U[o]??o:null,[o]),k=u.useCallback(i=>{if(!i)return"";const d=i.replace(/\D/g,"");return(Number(d)/100).toLocaleString("pt-BR",{style:"currency",currency:"BRL"})},[]),j=u.useCallback(i=>c==="monetary"?k(i):i,[c,k]);return R?t.jsxs("div",{className:"form-group",children:[t.jsx("label",{children:s}),t.jsx("span",{className:"form-control",children:f.value||"-"})]}):t.jsxs("div",{className:`form-group ${y?"hidden":""}`,children:[t.jsx("label",{children:s}),N?t.jsx(X.IMaskInput,{name:e,mask:N,value:String(f.value??""),unmask:!1,onAccept:i=>f.onChange(j(i)),placeholder:a,readOnly:h,className:`form-control ${x?"border-red":""} ${l}`,inputRef:f.ref,onBlur:f.onBlur}):t.jsx("input",{...f,type:"text",value:f.value??"",onChange:i=>f.onChange(j(i.target.value)),placeholder:a,readOnly:h,className:`form-control ${x?"border-red":""} ${l}`}),x&&t.jsx("p",{className:"text-danger",children:String(x.message)})]})}const G=u.memo(Y);function Q({name:e,label:s="",options:a=[],placeholder:c="",labelKey:o="label",valueKey:l="value",enableSearch:r=!1,searchPlaceholder:n="Buscar...",loading:g=!1,onSearchChange:m,debounceTime:h=300,onSelect:y,forceReadOnly:p=!1,forceHidden:R=!1}){const{isReadOnly:f,isHidden:b}=M.useSection(),x=p||!!f(e),N=R||!!b(e),{control:k,clearErrors:j}=S.useFormContext(),{isView:i}=M.useFluigRuntime(),{field:{onChange:d,value:v,ref:_},fieldState:{error:C}}=S.useController({name:e,control:k}),[P,$]=u.useState(!1),[F,q]=u.useState(""),W=u.useRef(null),T=u.useRef(m);u.useEffect(()=>{T.current=m},[m]),u.useEffect(()=>{const w=V=>{W.current&&!W.current.contains(V.target)&&$(!1)};return document.addEventListener("mousedown",w),()=>document.removeEventListener("mousedown",w)},[]),u.useEffect(()=>{P||q("")},[P]),u.useEffect(()=>{if(!r)return;const w=setTimeout(()=>{T.current&&T.current(F)},h);return()=>clearTimeout(w)},[F,r,h]);const H=u.useMemo(()=>r&&!m&&F.trim()?a.filter(w=>String((w==null?void 0:w[o])??"").toLowerCase().includes(F.toLowerCase())):a??[],[a,r,m,F,o]),B=u.useMemo(()=>{if(v==null)return"";if(typeof v=="object")return String(v[l]??"");const w=(a||[]).find(V=>String(V==null?void 0:V[l])===String(v));return String(w?(w==null?void 0:w[o])??"":v)},[v,a,l,o]),z=w=>{x||(d(w[l]),y&&y(w),j(e),$(!1))};return t.jsxs("div",{className:`select-wrapper form-group ${N?"hidden":""}`,ref:W,children:[t.jsx("label",{className:"control-label",children:s}),i?t.jsx("span",{className:"form-control",children:B||"-"}):t.jsxs(t.Fragment,{children:[t.jsxs("div",{className:`select-control ${C?"border-red":""} ${x?"readOnly":""}`,onClick:()=>!x&&$(w=>!w),ref:_,children:[t.jsx("span",{className:`select-display ${x?"readOnly":""}`,children:B||c}),t.jsx("i",{className:"flaticon flaticon-chevron-down select-icon"})]}),P&&!x&&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:F,onChange:w=>q(w.target.value),placeholder:g?"Carregando...":n,autoFocus:!0,onClick:w=>w.stopPropagation()})}),t.jsx("ul",{className:"select-options",children:g?t.jsx("li",{className:"select-option readOnly",children:"Carregando..."}):H.length>0?H.map(w=>t.jsx("li",{onClick:()=>z(w),className:"select-option handleHover",children:w[o]},w[l])):t.jsx("li",{className:"select-option readOnly",children:"Sem resultados"})})]})]}),t.jsx("input",{type:"hidden",name:e,value:v||""}),C&&t.jsx("p",{className:"text-danger",children:String(C.message)})]})}const J=u.memo(Q);function Z({name:e,options:s=[],label:a="",valueKey:c="value",labelKey:o="label",forceReadOnly:l=!1,forceHidden:r=!1}){var v,_;const n=S.useFormContext(),{isView:g,isReadOnly:m}=M.useFluigRuntime(),{isReadOnly:h,isHidden:y}=M.useSection(),p=h?h(e):!1,R=y?y(e):!1,f=l||p,b=r||R,x=f||m||g;if(!n||!e)return console.error("Checkbox requer contexto de formulário e nome."),null;const N=()=>!s||!n?{}:s.reduce((C,P)=>{const $=P[c],F=n.getValues($);return C[$]=F==="on",C},{}),k=n.watch(e),j=u.useMemo(()=>k&&typeof k=="object"?k:N(),[k,s,c]);u.useEffect(()=>{const C=n.getValues(e);(!C||typeof C!="object")&&n.setValue(e,j,{shouldDirty:!1,shouldValidate:!1})},[j,e,n]);const i=(C,P)=>{if(x)return;const $={...j,[C]:P};n.setValue(e,$,{shouldDirty:!0,shouldValidate:!0}),n.setValue(C,P?"on":"",{shouldValidate:!1})},d=(_=(v=n.formState)==null?void 0:v.errors)==null?void 0:_[e];return t.jsxs("div",{className:`form-group ${b?"hidden":""}`,children:[a&&t.jsx("label",{children:a}),t.jsx("div",{className:`checkbox-group-custom ${x?"readOnly":""}`,children:s.map(C=>{const P=String(C[c]),$=j[P]===!0;return t.jsxs("div",{children:[t.jsx("input",{type:"hidden",...n.register(P)}),t.jsxs("label",{className:`custom-checkbox ${$?"checked":""} ${x?"readOnly":""}`,children:[t.jsx("input",{type:"checkbox",checked:$,disabled:x,onChange:F=>i(P,F.target.checked)}),t.jsx("span",{className:"checkmark"}),t.jsx("span",{children:C[o]})]})]},P)})}),d&&t.jsx("p",{className:"text-danger",children:String(d.message)})]})}function K({name:e,label:s="",options:a=[],valueKey:c="value",labelKey:o="label",iconKey:l="icon",forceReadOnly:r=!1,forceHidden:n=!1}){const{isReadOnly:g,isHidden:m}=M.useSection(),h=r||!!g(e),y=n||!!m(e),{control:p}=S.useFormContext(),{isView:R,isReadOnly:f}=M.useFluigRuntime(),{field:b,fieldState:{error:x}}=S.useController({name:e,control:p}),N=h||f||R,k=b.value??"",j=u.useCallback(i=>{N||b.onChange(i)},[N,b]);return t.jsxs("div",{className:`form-group column ${y?"hidden":""}`,children:[s&&t.jsx("label",{className:"control-label",children:s}),t.jsx("div",{className:`btn-group ${N?"view-mode":""}`,"data-field-name":e,children:a.map(i=>{const d=i[c],v=k===d,_=i.color?{"--customColor":i.color}:void 0;return t.jsxs("label",{htmlFor:`${e}_${d}`,style:_,className:`btn fs-ellipsis ${v?"active":""}`,children:[t.jsx("input",{type:"radio",id:`${e}_${d}`,name:e,value:d,checked:v,className:"hidden",onChange:()=>j(d),disabled:N}),i[l]&&t.jsx("i",{className:`${i[l]} icon-sm`})," ",i[o]]},d)})}),x&&t.jsx("p",{className:"text-danger",children:String(x.message)})]})}const ee=u.memo(K),te=({name:e,label:s="",placeholder:a="",className:c="",rows:o=4,maxLength:l,forceReadOnly:r=!1,forceHidden:n=!1})=>{const{isReadOnly:g,isHidden:m}=M.useSection(),h=r||!!g(e),y=n||!!m(e),{control:p}=S.useFormContext(),{isView:R}=M.useFluigRuntime(),{field:f,fieldState:{error:b}}=S.useController({name:e,control:p});return R?t.jsxs("div",{className:`form-group ${y?"hidden":""}`,children:[t.jsx("label",{children:s}),t.jsx("span",{className:"form-control",children:f.value||"-"})]}):t.jsxs("div",{className:`form-group ${y?"hidden":""}`,children:[t.jsx("label",{children:s}),t.jsx("textarea",{...f,rows:o,maxLength:l,value:f.value||"",placeholder:a,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 D(e){return(s={})=>{const a=s.width?String(s.width):e.defaultWidth;return e.formats[a]||e.formats[e.defaultWidth]}}function A(e){return(s,a)=>{const c=a!=null&&a.context?String(a.context):"standalone";let o;if(c==="formatting"&&e.formattingValues){const r=e.defaultFormattingWidth||e.defaultWidth,n=a!=null&&a.width?String(a.width):r;o=e.formattingValues[n]||e.formattingValues[r]}else{const r=e.defaultWidth,n=a!=null&&a.width?String(a.width):e.defaultWidth;o=e.values[n]||e.values[r]}const l=e.argumentCallback?e.argumentCallback(s):s;return o[l]}}function O(e){return(s,a={})=>{const c=a.width,o=c&&e.matchPatterns[c]||e.matchPatterns[e.defaultMatchWidth],l=s.match(o);if(!l)return null;const r=l[0],n=c&&e.parsePatterns[c]||e.parsePatterns[e.defaultParseWidth],g=Array.isArray(n)?se(n,y=>y.test(r)):ae(n,y=>y.test(r));let m;m=e.valueCallback?e.valueCallback(g):g,m=a.valueCallback?a.valueCallback(m):m;const h=s.slice(r.length);return{value:m,rest:h}}}function ae(e,s){for(const a in e)if(Object.prototype.hasOwnProperty.call(e,a)&&s(e[a]))return a}function se(e,s){for(let a=0;a<e.length;a++)if(s(e[a]))return a}function re(e){return(s,a={})=>{const c=s.match(e.matchPattern);if(!c)return null;const o=c[0],l=s.match(e.parsePattern);if(!l)return null;let r=e.valueCallback?e.valueCallback(l[0]):l[0];r=a.valueCallback?a.valueCallback(r):r;const n=s.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,s,a)=>{let c;const o=oe[e];return typeof o=="string"?c=o:s===1?c=o.one:c=o.other.replace("{{count}}",String(s)),a!=null&&a.addSuffix?a.comparison&&a.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 s=e.getDay();return"'"+(s===0||s===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,s,a,c)=>{const o=me[e];return typeof o=="function"?o(s):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,s)=>{const a=Number(e);return(s==null?void 0:s.unit)==="week"?a+"ª":a+"º"},ye={ordinalNumber:pe,era:A({values:fe,defaultWidth:"wide"}),quarter:A({values:ge,defaultWidth:"wide",argumentCallback:e=>e-1}),month:A({values:xe,defaultWidth:"wide"}),day:A({values:be,defaultWidth:"wide"}),dayPeriod:A({values:ve,defaultWidth:"wide",formattingValues:je,defaultFormattingWidth:"wide"})},Ne=/^(\d+)[ºªo]?/i,Ce=/\d+/i,we={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},Me={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},$e={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]},Fe={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},Ve={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}},Ae={ordinalNumber:re({matchPattern:Ne,parsePattern:Ce,valueCallback:e=>parseInt(e,10)}),era:O({matchPatterns:we,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:Me,defaultParseWidth:"any"}),day:O({matchPatterns:_e,defaultMatchWidth:"wide",parsePatterns:$e,defaultParseWidth:"any"}),dayPeriod:O({matchPatterns:Fe,defaultMatchWidth:"any",parsePatterns:Ve,defaultParseWidth:"any"})},Oe={code:"pt-BR",formatDistance:ie,formatLong:ue,formatRelative:he,localize:ye,match:Ae,options:{weekStartsOn:0,firstWeekContainsDate:1}};L.registerLocale("pt-BR",Oe);const I="dd/MM/yyyy",We=e=>{if(!e)return null;const s=E.parse(e,I,new Date);return E.isValid(s)?s:null},Te=e=>e?E.format(e,I):"",De=u.forwardRef(({shimRef:e,className:s,name:a,...c},o)=>t.jsx("input",{name:a,...c,className:s,ref:l=>{typeof o=="function"?o(l):o&&(o.current=l),e&&e(l)}})),Ee=({name:e,label:s="",placeholder:a="dd/mm/aaaa",className:c="",forceReadOnly:o=!1,forceHidden:l=!1})=>{const{control:r}=S.useFormContext(),{isView:n}=M.useFluigRuntime(),{isReadOnly:g,isHidden:m}=M.useSection(),h=o||!!g(e),y=l||!!m(e),{field:{onChange:p,onBlur:R,value:f,ref:b},fieldState:{error:x}}=S.useController({name:e,control:r}),N=u.useMemo(()=>We(f),[f]),k=u.useCallback(i=>{p(i?Te(i):"")},[p]),j=u.useCallback(i=>{var d,v;if(b(i),i&&((v=(d=r._fields)==null?void 0:d[e])!=null&&v._f)){const _=r._fields[e];_._f.ref={focus:()=>{var C;return(C=i.focus)==null?void 0:C.call(i)},select:()=>{var C;return(C=i.select)==null?void 0:C.call(i)},setCustomValidity:C=>{var P;return(P=i.setCustomValidity)==null?void 0:P.call(i,C)},reportValidity:()=>{var C;return(C=i.reportValidity)==null?void 0:C.call(i)}}}},[b,r,e]);return y?null:n?t.jsxs("div",{className:"form-group",children:[t.jsx("label",{children:s}),t.jsx("span",{className:"form-control",children:f||"-"})]}):t.jsxs("div",{className:`form-group fluig-style-guide ${c}`,children:[s&&t.jsx("label",{className:"control-label",htmlFor:e,children:s}),t.jsx("div",{className:`${x?"border-red":""}`,children:t.jsx(L,{id:e,name:e,selected:N,onChange:k,onBlur:R,dateFormat:I,placeholderText:a,disabled:h,readOnly:h,locale:"pt-BR",className:`form-control ${x?"border-red":""}`,wrapperClassName:"w-100",showMonthDropdown:!0,showYearDropdown:!0,dropdownMode:"select",isClearable:!h&&!!f,autoComplete:"off",customInput:t.jsx(De,{name:e,shimRef:j})})}),x&&t.jsx("span",{className:"help-block text-danger",children:String(x.message)})]})},Ie=u.memo(Ee);function qe({mapping:e={},defaultLabel:s="Não reconhecido",className:a="",hidden:c=!1,label:o}){const{activityId:l}=M.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 ${a}`,children:s})]});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 ${a}`,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:s,defaultRowValue:a,isView:c,isReadOnly:o,filters:l=[]}){const{field:r}=S.useController({name:e,control:s}),[n,g]=u.useState([]),[m,h]=u.useState([]),y=()=>Date.now()+Math.random(),p=i=>{try{const d=JSON.parse(i);return Array.isArray(d)?d.map(v=>({...v,_uid:v._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=p(r.value);g(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(),...a};g(d=>[...d,i])},[a]),f=u.useCallback(()=>{g(i=>i.filter(d=>!m.includes(d._uid))),h([])},[m]),b=u.useCallback((i,d,v)=>{g(_=>_.map(C=>C._uid===i?{...C,[d]:v}:C))},[]),x=u.useCallback(i=>{h(d=>d.includes(i)?d.filter(v=>v!==i):[...d,i])},[]),N=u.useCallback(i=>{h(i?n.map(d=>d._uid):[])},[n]),k=n.length>0&&m.length===n.length,j=u.useMemo(()=>!l||l.length===0?n:n.filter(i=>l.every(d=>{if("custom"in d)return d.custom(i);const v=i[d.field];switch(d.operator){case"===":return v===d.value;case"!==":return v!==d.value;case">":return v>d.value;case"<":return v<d.value;case">=":return v>=d.value;case"<=":return v<=d.value;default:return!0}})),[n,l]);return{field:r,tableRows:n,visibleRows:j,selectedRowIds:m,isAllSelected:k,handle:{addRow:R,removeRows:f,updateCellValue:b,toggleSelection:x,toggleSelectAll:N}}}const Le=({name:e,title:s="Tabela Dinâmica",columns:a,defaultRowValue:c={},forceReadOnly:o=!1,layout:l="fluid",actions:r=!0,filters:n=[]})=>{const{control:g}=S.useFormContext(),{isView:m,isReadOnly:h}=M.useFluigRuntime(),{isReadOnly:y}=M.useSection(),p=o||m||h||y&&y(e),{field:R,visibleRows:f,selectedRowIds:b,isAllSelected:x,handle:N}=Be({name:e,control:g,defaultRowValue:c,isView:m,isReadOnly:!!p,filters:n}),k=l==="fixed";return t.jsxs("div",{className:`table-wrapper ${k?"table-fixed":"table-fluid"}`,children:[t.jsx("input",{type:"hidden",...R}),t.jsxs("div",{className:"header-handle",children:[t.jsx("h3",{children:s}),!p&&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:N.removeRows,children:["Remover (",b.length,")"]}),t.jsx("button",{type:"button",className:"btn-add",onClick:N.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:[!p&&t.jsx("th",{style:{width:"50px"},children:t.jsx("input",{type:"checkbox",checked:x,onChange:j=>N.toggleSelectAll(j.target.checked)})}),a.map(j=>t.jsx("th",{style:j.width?{minWidth:k?j.width:"100%"}:{width:"max-content"},children:j.label},j.key))]})}),t.jsxs("tbody",{children:[f.map((j,i)=>t.jsxs("tr",{children:[!p&&t.jsx("td",{children:t.jsx("input",{type:"checkbox",checked:b.includes(j._uid),onChange:()=>N.toggleSelection(j._uid)})}),a.map(d=>t.jsx("td",{children:d.render?d.render.length<=1?d.render({row:j,index:i,updateRow:(v,_)=>N.updateCellValue(j._uid,v,_),isLocked:!!p,isView:!!m}):d.render(j,i,(v,_)=>N.updateCellValue(j._uid,v,_),!!p,!!m):j[d.key]},`${j._uid}-${d.key}`))]},j._uid)),f.length===0&&t.jsx("tr",{className:"empty-row",children:t.jsx("td",{colSpan:100,className:"text-center",children:p?"Nenhum registro encontrado.":"Nenhum registro."})})]})]})})]})},ze=e=>{const[s,a]=u.useState(null),{watch:c}=S.useFormContext(),o=c(e),l=u.useCallback(()=>{try{const n=window.top.__REACT_ATTACHMENT_BRIDGE__;if(n){const g=n.getAttachment(e);a(g||(o?{name:o,documentId:0}:null))}else a(o?{name:o,documentId:0}:null)}catch{a(o?{name:o,documentId:0}:null)}},[e,o]);return u.useEffect(()=>{l();const r=setInterval(l,2e3);return()=>clearInterval(r)},[l]),{attachment:s,sync:l}},Xe=({name:e,label:s,help:a})=>{const[c,o]=u.useState(!1),{control:l}=S.useFormContext(),{field:r}=S.useController({name:e,control:l}),{attachment:n,sync:g}=ze(e),m=()=>{var f;try{const b=window.top;return{bridge:b.__REACT_ATTACHMENT_BRIDGE__,toast:(f=b.FLUIGC)==null?void 0:f.toast}}catch{return{bridge:null,toast:null}}},h=u.useCallback(()=>{const f=document.createElement("input");f.type="file",f.onchange=b=>{const x=b.target.files[0];if(!x)return;const{bridge:N,toast:k}=m();o(!0),N?N.upload(x,e,j=>{r.onChange(j.name),setTimeout(()=>{o(!1),g()},1e3),k&&k({title:"Sucesso",message:"Arquivo enviado",type:"success"})}):(r.onChange(x.name),o(!1))},f.click()},[e,r,g]),y=f=>{f.stopPropagation();const b=(n==null?void 0:n.name)||r.value;if(!b)return;const{bridge:x,toast:N}=m();x?x.removeByFileName(b)?(r.onChange(""),g()):N&&N({title:"Erro",message:"Erro ao remover anexo",type:"danger"}):(r.onChange(""),g())},p=!!n&&!c,R=["fluig-attachment__box",p?"fluig-attachment__box--has-file":"",c?"fluig-attachment__box--uploading":""].join(" ");return t.jsxs("div",{className:"form-group fluig-attachment",children:[s&&t.jsx("label",{className:"fluig-attachment__label",children:s}),t.jsxs("div",{className:R,onClick:p?()=>{var f;return(f=m().bridge)==null?void 0:f.view(n.name)}:h,children:[t.jsxs("span",{className:"fluig-attachment__content",children:[t.jsx("i",{className:`fluigicon icon-sm ${c?"fluigicon-loop-test":p?"fluigicon-file-pdf":"fluigicon-paperclip"} fluig-attachment__icon`}),t.jsx("span",{className:"fluig-attachment__filename",children:c?" Enviando...":p?(n==null?void 0:n.name)||r.value:a||"Anexar"})]}),p&&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"})})]}),t.jsx("input",{type:"hidden",name:e,value:r.value||""})]})},Ue=u.memo(Xe);function Ye({items:e,time:s=0,showNavigation:a=!0,progressBar:c=!0}){const[o,l]=u.useState(0),[r,n]=u.useState(0),g=u.useRef(null),m=u.useRef(null),h=u.useCallback(()=>{l(b=>(b+1)%e.length),n(0)},[e.length]),y=u.useCallback(()=>{l(b=>(b-1+e.length)%e.length),n(0)},[e.length]);if(u.useEffect(()=>{if(s>0&&e.length>1){const x=100/s*100;g.current=setInterval(h,s),m.current=setInterval(()=>{n(N=>N>=100?0:N+x)},100)}return()=>{g.current&&clearInterval(g.current),m.current&&clearInterval(m.current)}},[s,h,e.length,o]),!e||e.length===0)return null;const p=e[o],R=typeof p=="string"?p:p.url,f=/\.(jpg|jpeg|png|gif|webp)$/i.test(R);return t.jsxs("div",{className:"carousel-root",children:[t.jsxs("div",{className:"carousel-viewport",children:[a&&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:h,children:t.jsx("i",{className:"flaticon flaticon-chevron-right"})})]}),t.jsx("div",{className:"carousel-media",children:f?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((b,x)=>t.jsx("div",{className:`dot ${x===o?"active":""}`,onClick:()=>{l(x),n(0)}},x))})]}),c&&s>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:s,onOpen:a,onClose:c,content:o,footer:l,width:r}){const n=u.useCallback(g=>{g.key==="Escape"&&c()},[c]);return u.useEffect(()=>(s&&(document.addEventListener("keydown",n),a==null||a(),document.body.style.overflow="hidden"),()=>{document.removeEventListener("keydown",n),document.body.style.overflow="auto"}),[s,n,a]),s?t.jsx("div",{className:"modal-overlay",onClick:c,"aria-modal":"true",role:"dialog",children:t.jsxs("div",{style:{maxWidth:r},className:"modal-container",onClick:g=>g.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:s,footer:a,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:s==null?void 0:s.map(n=>{var g,m;return n!=null&&n.options&&((g=n==null?void 0:n.options)==null?void 0:g.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 y;(y=h.action)==null||y.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]})})}),a&&t.jsx("div",{className:"sidebar-footer",children:a})]}),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"),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:s="",placeholder:a="",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:p}=S.useFormState({name:e}),j=p==null?void 0:p[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:s}),t.jsx("span",{className:"form-control",children:v.value||"-"})]}):t.jsxs("div",{className:`form-group ${y?"hidden":""}`,children:[t.jsx("label",{children:s}),b?t.jsx(X.IMaskInput,{name:e,mask:b,value:String(v.value??""),unmask:!1,onAccept:i=>v.onChange(g(i)),placeholder:a,readOnly:f,className:`form-control ${j?"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:a,readOnly:f,className:`form-control ${j?"border-red":""} ${l}`}),j&&t.jsx("p",{className:"text-danger",children:String(j.message)})]})}const G=u.memo(Y);function Q({name:e,label:s="",options:a=[],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:p}=_.useSection(),j=w||!!v(e),b=R||!!p(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=V=>{W.current&&!W.current.contains(V.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()?a.filter(k=>String((k==null?void 0:k[o])??"").toLowerCase().includes(M.toLowerCase())):a??[],[a,r,m,M,o]),B=u.useMemo(()=>{if(x==null)return"";if(typeof x=="object")return String(x[l]??"");const k=(a||[]).find(V=>String(V==null?void 0:V[l])===String(x));return String(k?(k==null?void 0:k[o])??"":x)},[x,a,l,o]),z=k=>{j||(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:s}),i?t.jsx("span",{className:"form-control",children:B||"-"}):t.jsxs(t.Fragment,{children:[t.jsxs("div",{className:`select-control ${N?"border-red":""} ${j?"readOnly":""}`,onClick:()=>!j&&F(k=>!k),ref:$,children:[t.jsx("span",{className:`select-display ${j?"readOnly":""}`,children:B||c}),t.jsx("i",{className:"flaticon flaticon-chevron-down select-icon"})]}),P&&!j&&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:s=[],label:a="",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,p=r||R,j=v||m||h;if(!n||!e)return console.error("Checkbox requer contexto de formulário e nome."),null;const b=()=>!s||!n?{}:s.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,s,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(j)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 ${p?"hidden":""}`,children:[a&&t.jsx("label",{children:a}),t.jsx("div",{className:`checkbox-group-custom ${j?"readOnly":""}`,children:s.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":""} ${j?"readOnly":""}`,children:[t.jsx("input",{type:"checkbox",checked:F,disabled:j,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:s="",options:a=[],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:p,fieldState:{error:j}}=S.useController({name:e,control:w}),b=f||v||R,C=p.value??"",g=u.useCallback(i=>{b||p.onChange(i)},[b,p]);return t.jsxs("div",{className:`form-group column ${y?"hidden":""}`,children:[s&&t.jsx("label",{className:"control-label",children:s}),t.jsx("div",{className:`btn-group ${b?"view-mode":""}`,"data-field-name":e,children:a.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)})}),j&&t.jsx("p",{className:"text-danger",children:String(j.message)})]})}const ee=u.memo(K),te=({name:e,label:s="",placeholder:a="",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:p}}=S.useController({name:e,control:w});return R?t.jsxs("div",{className:`form-group ${y?"hidden":""}`,children:[t.jsx("label",{children:s}),t.jsx("span",{className:"form-control",children:v.value||"-"})]}):t.jsxs("div",{className:`form-group ${y?"hidden":""}`,children:[t.jsx("label",{children:s}),t.jsx("textarea",{...v,rows:o,maxLength:l,value:v.value||"",placeholder:a,readOnly:f,className:`form-control ${p?"border-red":""} ${c}`}),p&&t.jsx("p",{className:"text-danger",children:String(p.message)})]})},ne=u.memo(te);function D(e){return(s={})=>{const a=s.width?String(s.width):e.defaultWidth;return e.formats[a]||e.formats[e.defaultWidth]}}function A(e){return(s,a)=>{const c=a!=null&&a.context?String(a.context):"standalone";let o;if(c==="formatting"&&e.formattingValues){const r=e.defaultFormattingWidth||e.defaultWidth,n=a!=null&&a.width?String(a.width):r;o=e.formattingValues[n]||e.formattingValues[r]}else{const r=e.defaultWidth,n=a!=null&&a.width?String(a.width):e.defaultWidth;o=e.values[n]||e.values[r]}const l=e.argumentCallback?e.argumentCallback(s):s;return o[l]}}function O(e){return(s,a={})=>{const c=a.width,o=c&&e.matchPatterns[c]||e.matchPatterns[e.defaultMatchWidth],l=s.match(o);if(!l)return null;const r=l[0],n=c&&e.parsePatterns[c]||e.parsePatterns[e.defaultParseWidth],h=Array.isArray(n)?se(n,y=>y.test(r)):ae(n,y=>y.test(r));let m;m=e.valueCallback?e.valueCallback(h):h,m=a.valueCallback?a.valueCallback(m):m;const f=s.slice(r.length);return{value:m,rest:f}}}function ae(e,s){for(const a in e)if(Object.prototype.hasOwnProperty.call(e,a)&&s(e[a]))return a}function se(e,s){for(let a=0;a<e.length;a++)if(s(e[a]))return a}function re(e){return(s,a={})=>{const c=s.match(e.matchPattern);if(!c)return null;const o=c[0],l=s.match(e.parsePattern);if(!l)return null;let r=e.valueCallback?e.valueCallback(l[0]):l[0];r=a.valueCallback?a.valueCallback(r):r;const n=s.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,s,a)=>{let c;const o=oe[e];return typeof o=="string"?c=o:s===1?c=o.one:c=o.other.replace("{{count}}",String(s)),a!=null&&a.addSuffix?a.comparison&&a.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 s=e.getDay();return"'"+(s===0||s===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,s,a,c)=>{const o=me[e];return typeof o=="function"?o(s):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,s)=>{const a=Number(e);return(s==null?void 0:s.unit)==="week"?a+"ª":a+"º"},ye={ordinalNumber:pe,era:A({values:fe,defaultWidth:"wide"}),quarter:A({values:ge,defaultWidth:"wide",argumentCallback:e=>e-1}),month:A({values:xe,defaultWidth:"wide"}),day:A({values:be,defaultWidth:"wide"}),dayPeriod:A({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},Ve={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}},Ae={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:Ve,defaultParseWidth:"any"})},Oe={code:"pt-BR",formatDistance:ie,formatLong:ue,formatRelative:he,localize:ye,match:Ae,options:{weekStartsOn:0,firstWeekContainsDate:1}};L.registerLocale("pt-BR",Oe);const I="dd/MM/yyyy",We=e=>{if(!e)return null;const s=E.parse(e,I,new Date);return E.isValid(s)?s:null},Te=e=>e?E.format(e,I):"",De=u.forwardRef(({shimRef:e,className:s,name:a,...c},o)=>t.jsx("input",{name:a,...c,className:s,ref:l=>{typeof o=="function"?o(l):o&&(o.current=l),e&&e(l)}})),Ee=({name:e,label:s="",placeholder:a="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:p},fieldState:{error:j}}=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(p(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)}}}},[p,r,e]);return y?null:n?t.jsxs("div",{className:"form-group",children:[t.jsx("label",{children:s}),t.jsx("span",{className:"form-control",children:v||"-"})]}):t.jsxs("div",{className:`form-group fluig-style-guide ${c}`,children:[s&&t.jsx("label",{className:"control-label",htmlFor:e,children:s}),t.jsx("div",{className:`${j?"border-red":""}`,children:t.jsx(L,{id:e,name:e,selected:b,onChange:C,onBlur:R,dateFormat:I,placeholderText:a,disabled:f,readOnly:f,locale:"pt-BR",className:`form-control ${j?"border-red":""}`,wrapperClassName:"w-100",showMonthDropdown:!0,showYearDropdown:!0,dropdownMode:"select",isClearable:!f&&!!v,autoComplete:"off",customInput:t.jsx(De,{name:e,shimRef:g})})}),j&&t.jsx("span",{className:"help-block text-danger",children:String(j.message)})]})},Ie=u.memo(Ee);function qe({mapping:e={},defaultLabel:s="Não reconhecido",className:a="",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 ${a}`,children:s})]});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 ${a}`,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:s,defaultRowValue:a,isView:c,isReadOnly:o,filters:l=[]}){const{field:r}=S.useController({name:e,control:s}),[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(),...a};h(d=>[...d,i])},[a]),v=u.useCallback(()=>{h(i=>i.filter(d=>!m.includes(d._uid))),f([])},[m]),p=u.useCallback((i,d,x)=>{h($=>$.map(N=>N._uid===i?{...N,[d]:x}:N))},[]),j=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:p,toggleSelection:j,toggleSelectAll:b}}}const Le=({name:e,title:s="Tabela Dinâmica",columns:a,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:p,isAllSelected:j,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:s}),!w&&r&&t.jsxs("div",{className:"handle-actions",children:[t.jsxs("button",{type:"button",className:`btn ${p.length>0?"btn-danger":""}`,disabled:p.length===0,onClick:b.removeRows,children:["Remover (",p.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:j,onChange:g=>b.toggleSelectAll(g.target.checked)})}),a.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:p.includes(g._uid),onChange:()=>b.toggleSelection(g._uid)})}),a.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,s)=>{const[a,c]=u.useState(null),{watch:o}=S.useFormContext(),l=s!==void 0?s:o(e),r=u.useCallback(()=>{try{const h=window.top.__REACT_ATTACHMENT_BRIDGE__;if(h){const m=h.getAttachment(e);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]);return u.useEffect(()=>{r();const n=setInterval(r,2e3);return()=>clearInterval(n)},[r]),{attachment:a,sync:r}},Xe=({name:e,label:s,help:a,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,p=(m==null?void 0:m.name)||c||h.value,j=["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:[s&&t.jsx("label",{className:"fluig-attachment__label",children:s}),t.jsxs("div",{className:j,onClick:v?()=>{var b;return(b=y().bridge)==null?void 0:b.view(p)}: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?p:a||"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:s=0,showNavigation:a=!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(p=>(p+1)%e.length),n(0)},[e.length]),y=u.useCallback(()=>{l(p=>(p-1+e.length)%e.length),n(0)},[e.length]);if(u.useEffect(()=>{if(s>0&&e.length>1){const j=100/s*100;h.current=setInterval(f,s),m.current=setInterval(()=>{n(b=>b>=100?0:b+j)},100)}return()=>{h.current&&clearInterval(h.current),m.current&&clearInterval(m.current)}},[s,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:[a&&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((p,j)=>t.jsx("div",{className:`dot ${j===o?"active":""}`,onClick:()=>{l(j),n(0)}},j))})]}),c&&s>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:s,onOpen:a,onClose:c,content:o,footer:l,width:r}){const n=u.useCallback(h=>{h.key==="Escape"&&c()},[c]);return u.useEffect(()=>(s&&(document.addEventListener("keydown",n),a==null||a(),document.body.style.overflow="hidden"),()=>{document.removeEventListener("keydown",n),document.body.style.overflow="auto"}),[s,n,a]),s?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:s,footer:a,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:s==null?void 0:s.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]})})}),a&&t.jsx("div",{className:"sidebar-footer",children:a})]}),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;