@tech-diefra/fluig-ui 1.2.21 → 1.2.23
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 +4 -9
- package/dist/index.cjs +1 -1
- package/dist/index.js +475 -468
- package/dist/style.css +1 -1
- package/package.json +1 -1
|
@@ -1,9 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
className?: string;
|
|
6
|
-
showRemove?: boolean;
|
|
7
|
-
showUpdate?: boolean;
|
|
8
|
-
}
|
|
9
|
-
export default function AttachmentInput({ name, label, help, className, }: AttachmentProps): import("react/jsx-runtime").JSX.Element;
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
declare const _default: React.MemoExoticComponent<({ name, label, help }: any) => import("react/jsx-runtime").JSX.Element>;
|
|
4
|
+
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"),M=require("@fluig-kit/ecm"),L=require("react-datepicker"),D=require("date-fns"),U={cpf:"000.000.000-00",cnpj:"00.000.000/0000-00",telefone:"(00) 00000-0000",cep:"00000-000"};function G({name:e,label:s="",placeholder:a="",type:c="text",mask:r,className:l="",forceReadOnly:o=!1,forceHidden:n=!1}){const{isReadOnly:g,isHidden:h}=M.useSection(),m=o||!!g(e),v=n||!!h(e),{control:N}=S.useFormContext(),{isView:k}=M.useFluigRuntime(),{field:x}=S.useController({name:e,control:N}),{errors:b}=S.useFormState({name:e}),f=b==null?void 0:b[e],y=u.useMemo(()=>r?U[r]??r:null,[r]),R=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"?R(i):i,[c,R]);return k?t.jsxs("div",{className:"form-group",children:[t.jsx("label",{children:s}),t.jsx("span",{className:"form-control",children:x.value||"-"})]}):t.jsxs("div",{className:`form-group ${v?"hidden":""}`,children:[t.jsx("label",{children:s}),y?t.jsx(X.IMaskInput,{name:e,mask:y,value:String(x.value??""),unmask:!1,onAccept:i=>x.onChange(j(i)),placeholder:a,readOnly:m,className:`form-control ${f?"border-red":""} ${l}`,inputRef:x.ref,onBlur:x.onBlur}):t.jsx("input",{...x,type:"text",value:x.value??"",onChange:i=>x.onChange(j(i.target.value)),placeholder:a,readOnly:m,className:`form-control ${f?"border-red":""} ${l}`}),f&&t.jsx("p",{className:"text-danger",children:String(f.message)})]})}const Y=u.memo(G);function Q({name:e,label:s="",options:a=[],placeholder:c="",labelKey:r="label",valueKey:l="value",enableSearch:o=!1,searchPlaceholder:n="Buscar...",loading:g=!1,onSearchChange:h,debounceTime:m=300,onSelect:v,forceReadOnly:N=!1,forceHidden:k=!1}){const{isReadOnly:x,isHidden:b}=M.useSection(),f=N||!!x(e),y=k||!!b(e),{control:R,clearErrors:j}=S.useFormContext(),{isView:i}=M.useFluigRuntime(),{field:{onChange:d,value:p,ref:$},fieldState:{error:C}}=S.useController({name:e,control:R}),[P,F]=u.useState(!1),[A,q]=u.useState(""),O=u.useRef(null),E=u.useRef(h);u.useEffect(()=>{E.current=h},[h]),u.useEffect(()=>{const w=_=>{O.current&&!O.current.contains(_.target)&&F(!1)};return document.addEventListener("mousedown",w),()=>document.removeEventListener("mousedown",w)},[]),u.useEffect(()=>{P||q("")},[P]),u.useEffect(()=>{if(!o)return;const w=setTimeout(()=>{E.current&&E.current(A)},m);return()=>clearTimeout(w)},[A,o,m]);const H=u.useMemo(()=>o&&!h&&A.trim()?a.filter(w=>String((w==null?void 0:w[r])??"").toLowerCase().includes(A.toLowerCase())):a??[],[a,o,h,A,r]),B=u.useMemo(()=>{if(p==null)return"";if(typeof p=="object")return String(p[l]??"");const w=(a||[]).find(_=>String(_==null?void 0:_[l])===String(p));return String(w?(w==null?void 0:w[r])??"":p)},[p,a,l,r]),z=w=>{f||(d(w[l]),v&&v(w),j(e),F(!1))};return t.jsxs("div",{className:`select-wrapper form-group ${y?"hidden":""}`,ref:O,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":""} ${f?"readOnly":""}`,onClick:()=>!f&&F(w=>!w),ref:$,children:[t.jsx("span",{className:`select-display ${f?"readOnly":""}`,children:B||c}),t.jsx("i",{className:"flaticon flaticon-chevron-down select-icon"})]}),P&&!f&&t.jsxs("div",{className:"select-dropdown",children:[o&&t.jsx("div",{className:"select-search",children:t.jsx("input",{type:"text",className:"select-search-input",value:A,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[r]},w[l])):t.jsx("li",{className:"select-option readOnly",children:"Sem resultados"})})]})]}),t.jsx("input",{type:"hidden",name:e,value:p||""}),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:r="label",forceReadOnly:l=!1,forceHidden:o=!1}){var p,$;const n=S.useFormContext(),{isView:g,isReadOnly:h}=M.useFluigRuntime(),{isReadOnly:m,isHidden:v}=M.useSection(),N=m?m(e):!1,k=v?v(e):!1,x=l||N,b=o||k,f=x||h||g;if(!n||!e)return console.error("Checkbox requer contexto de formulário e nome."),null;const y=()=>!s||!n?{}:s.reduce((C,P)=>{const F=P[c],A=n.getValues(F);return C[F]=A==="on",C},{}),R=n.watch(e),j=u.useMemo(()=>R&&typeof R=="object"?R:y(),[R,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(f)return;const F={...j,[C]:P};n.setValue(e,F,{shouldDirty:!0,shouldValidate:!0}),n.setValue(C,P?"on":"",{shouldValidate:!1})},d=($=(p=n.formState)==null?void 0:p.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 ${f?"readOnly":""}`,children:s.map(C=>{const P=String(C[c]),F=j[P]===!0;return t.jsxs("div",{children:[t.jsx("input",{type:"hidden",...n.register(P)}),t.jsxs("label",{className:`custom-checkbox ${F?"checked":""} ${f?"readOnly":""}`,children:[t.jsx("input",{type:"checkbox",checked:F,disabled:f,onChange:A=>i(P,A.target.checked)}),t.jsx("span",{className:"checkmark"}),t.jsx("span",{children:C[r]})]})]},P)})}),d&&t.jsx("p",{className:"text-danger",children:String(d.message)})]})}function K({name:e,label:s="",options:a=[],valueKey:c="value",labelKey:r="label",iconKey:l="icon",forceReadOnly:o=!1,forceHidden:n=!1}){const{isReadOnly:g,isHidden:h}=M.useSection(),m=o||!!g(e),v=n||!!h(e),{control:N}=S.useFormContext(),{isView:k,isReadOnly:x}=M.useFluigRuntime(),{field:b,fieldState:{error:f}}=S.useController({name:e,control:N}),y=m||x||k,R=b.value??"",j=u.useCallback(i=>{y||b.onChange(i)},[y,b]);return t.jsxs("div",{className:`form-group column ${v?"hidden":""}`,children:[s&&t.jsx("label",{className:"control-label",children:s}),t.jsx("div",{className:`btn-group ${y?"view-mode":""}`,"data-field-name":e,children:a.map(i=>{const d=i[c],p=R===d,$=i.color?{"--customColor":i.color}:void 0;return t.jsxs("label",{htmlFor:`${e}_${d}`,style:$,className:`btn fs-ellipsis ${p?"active":""}`,children:[t.jsx("input",{type:"radio",id:`${e}_${d}`,name:e,value:d,checked:p,className:"hidden",onChange:()=>j(d),disabled:y}),i[l]&&t.jsx("i",{className:`${i[l]} icon-sm`})," ",i[r]]},d)})}),f&&t.jsx("p",{className:"text-danger",children:String(f.message)})]})}const ee=u.memo(K),te=({name:e,label:s="",placeholder:a="",className:c="",rows:r=4,maxLength:l,forceReadOnly:o=!1,forceHidden:n=!1})=>{const{isReadOnly:g,isHidden:h}=M.useSection(),m=o||!!g(e),v=n||!!h(e),{control:N}=S.useFormContext(),{isView:k}=M.useFluigRuntime(),{field:x,fieldState:{error:b}}=S.useController({name:e,control:N});return k?t.jsxs("div",{className:`form-group ${v?"hidden":""}`,children:[t.jsx("label",{children:s}),t.jsx("span",{className:"form-control",children:x.value||"-"})]}):t.jsxs("div",{className:`form-group ${v?"hidden":""}`,children:[t.jsx("label",{children:s}),t.jsx("textarea",{...x,rows:r,maxLength:l,value:x.value||"",placeholder:a,readOnly:m,className:`form-control ${b?"border-red":""} ${c}`}),b&&t.jsx("p",{className:"text-danger",children:String(b.message)})]})},ne=u.memo(te);function W(e){return(s={})=>{const a=s.width?String(s.width):e.defaultWidth;return e.formats[a]||e.formats[e.defaultWidth]}}function V(e){return(s,a)=>{const c=a!=null&&a.context?String(a.context):"standalone";let r;if(c==="formatting"&&e.formattingValues){const o=e.defaultFormattingWidth||e.defaultWidth,n=a!=null&&a.width?String(a.width):o;r=e.formattingValues[n]||e.formattingValues[o]}else{const o=e.defaultWidth,n=a!=null&&a.width?String(a.width):e.defaultWidth;r=e.values[n]||e.values[o]}const l=e.argumentCallback?e.argumentCallback(s):s;return r[l]}}function T(e){return(s,a={})=>{const c=a.width,r=c&&e.matchPatterns[c]||e.matchPatterns[e.defaultMatchWidth],l=s.match(r);if(!l)return null;const o=l[0],n=c&&e.parsePatterns[c]||e.parsePatterns[e.defaultParseWidth],g=Array.isArray(n)?se(n,v=>v.test(o)):ae(n,v=>v.test(o));let h;h=e.valueCallback?e.valueCallback(g):g,h=a.valueCallback?a.valueCallback(h):h;const m=s.slice(o.length);return{value:h,rest:m}}}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 r=c[0],l=s.match(e.parsePattern);if(!l)return null;let o=e.valueCallback?e.valueCallback(l[0]):l[0];o=a.valueCallback?a.valueCallback(o):o;const n=s.slice(r.length);return{value:o,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 r=oe[e];return typeof r=="string"?c=r:s===1?c=r.one:c=r.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:W({formats:le,defaultWidth:"full"}),time:W({formats:ce,defaultWidth:"full"}),dateTime:W({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 r=me[e];return typeof r=="function"?r(s):r},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"]},pe={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"}},ve={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"}},je=(e,s)=>{const a=Number(e);return(s==null?void 0:s.unit)==="week"?a+"ª":a+"º"},ye={ordinalNumber:je,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:pe,defaultWidth:"wide",formattingValues:ve,defaultFormattingWidth:"wide"})},Ce=/^(\d+)[ºªo]?/i,Ne=/\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},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]},Ae={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},_e={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:Ce,parsePattern:Ne,valueCallback:e=>parseInt(e,10)}),era:T({matchPatterns:we,defaultMatchWidth:"wide",parsePatterns:ke,defaultParseWidth:"any"}),quarter:T({matchPatterns:Re,defaultMatchWidth:"wide",parsePatterns:Se,defaultParseWidth:"any",valueCallback:e=>e+1}),month:T({matchPatterns:Pe,defaultMatchWidth:"wide",parsePatterns:Me,defaultParseWidth:"any"}),day:T({matchPatterns:$e,defaultMatchWidth:"wide",parsePatterns:Fe,defaultParseWidth:"any"}),dayPeriod:T({matchPatterns:Ae,defaultMatchWidth:"any",parsePatterns:_e,defaultParseWidth:"any"})},Te={code:"pt-BR",formatDistance:ie,formatLong:ue,formatRelative:he,localize:ye,match:Ve,options:{weekStartsOn:0,firstWeekContainsDate:1}};L.registerLocale("pt-BR",Te);const I="dd/MM/yyyy",Oe=e=>{if(!e)return null;const s=D.parse(e,I,new Date);return D.isValid(s)?s:null},Ee=e=>e?D.format(e,I):"",We=u.forwardRef(({shimRef:e,className:s,name:a,...c},r)=>t.jsx("input",{name:a,...c,className:s,ref:l=>{typeof r=="function"?r(l):r&&(r.current=l),e&&e(l)}})),De=({name:e,label:s="",placeholder:a="dd/mm/aaaa",className:c="",forceReadOnly:r=!1,forceHidden:l=!1})=>{const{control:o}=S.useFormContext(),{isView:n}=M.useFluigRuntime(),{isReadOnly:g,isHidden:h}=M.useSection(),m=r||!!g(e),v=l||!!h(e),{field:{onChange:N,onBlur:k,value:x,ref:b},fieldState:{error:f}}=S.useController({name:e,control:o}),y=u.useMemo(()=>Oe(x),[x]),R=u.useCallback(i=>{N(i?Ee(i):"")},[N]),j=u.useCallback(i=>{var d,p;if(b(i),i&&((p=(d=o._fields)==null?void 0:d[e])!=null&&p._f)){const $=o._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,o,e]);return v?null:n?t.jsxs("div",{className:"form-group",children:[t.jsx("label",{children:s}),t.jsx("span",{className:"form-control",children:x||"-"})]}):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:`${f?"border-red":""}`,children:t.jsx(L,{id:e,name:e,selected:y,onChange:R,onBlur:k,dateFormat:I,placeholderText:a,disabled:m,readOnly:m,locale:"pt-BR",className:`form-control ${f?"border-red":""}`,wrapperClassName:"w-100",showMonthDropdown:!0,showYearDropdown:!0,dropdownMode:"select",isClearable:!m&&!!x,autoComplete:"off",customInput:t.jsx(We,{name:e,shimRef:j})})}),f&&t.jsx("span",{className:"help-block text-danger",children:String(f.message)})]})},Ie=u.memo(De);function qe({mapping:e={},defaultLabel:s="Não reconhecido",className:a="",hidden:c=!1,label:r}){const{activityId:l}=M.useFluigRuntime(),o=u.useMemo(()=>!e||l===null||l===void 0?null:e[l],[l,e]);if(!o)return t.jsxs("div",{className:`form-group ${c?"hidden":""}`,children:[r&&t.jsx("label",{children:r}),t.jsx("div",{className:`status-badge default ${a}`,children:s})]});const n={"--customColor":o.color};return t.jsxs("div",{className:`form-group ${c?"hidden":""}`,children:[r&&t.jsx("label",{children:r}),t.jsxs("div",{className:`status-badge ${a}`,style:n,children:[o.icon&&t.jsx("i",{className:o.icon}),t.jsx("span",{children:o.label})]})]})}const He=u.memo(qe);function Be({name:e,control:s,defaultRowValue:a,isView:c,isReadOnly:r,filters:l=[]}){const{field:o}=S.useController({name:e,control:s}),[n,g]=u.useState([]),[h,m]=u.useState([]),v=()=>Date.now()+Math.random(),N=i=>{try{const d=JSON.parse(i);return Array.isArray(d)?d.map(p=>({...p,_uid:p._uid||v()})):[]}catch(d){return console.error(`Erro ao ler dados da tabela "${e}":`,d),[]}};u.useEffect(()=>{if(!(n.length>0&&!c)&&o.value&&typeof o.value=="string"){const i=JSON.stringify(n);if(o.value===i)return;const d=N(o.value);g(d)}},[o.value,c]),u.useEffect(()=>{if(r)return;const i=JSON.stringify(n);o.value!==i&&o.onChange(i)},[n,o,r]);const k=u.useCallback(()=>{const i={_uid:v(),...a};g(d=>[...d,i])},[a]),x=u.useCallback(()=>{g(i=>i.filter(d=>!h.includes(d._uid))),m([])},[h]),b=u.useCallback((i,d,p)=>{g($=>$.map(C=>C._uid===i?{...C,[d]:p}:C))},[]),f=u.useCallback(i=>{m(d=>d.includes(i)?d.filter(p=>p!==i):[...d,i])},[]),y=u.useCallback(i=>{m(i?n.map(d=>d._uid):[])},[n]),R=n.length>0&&h.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 p=i[d.field];switch(d.operator){case"===":return p===d.value;case"!==":return p!==d.value;case">":return p>d.value;case"<":return p<d.value;case">=":return p>=d.value;case"<=":return p<=d.value;default:return!0}})),[n,l]);return{field:o,tableRows:n,visibleRows:j,selectedRowIds:h,isAllSelected:R,handle:{addRow:k,removeRows:x,updateCellValue:b,toggleSelection:f,toggleSelectAll:y}}}const Le=({name:e,title:s="Tabela Dinâmica",columns:a,defaultRowValue:c={},forceReadOnly:r=!1,layout:l="fluid",actions:o=!0,filters:n=[]})=>{const{control:g}=S.useFormContext(),{isView:h,isReadOnly:m}=M.useFluigRuntime(),{isReadOnly:v}=M.useSection(),N=r||h||m||v&&v(e),{field:k,visibleRows:x,selectedRowIds:b,isAllSelected:f,handle:y}=Be({name:e,control:g,defaultRowValue:c,isView:h,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:s}),!N&&o&&t.jsxs("div",{className:"handle-actions",children:[t.jsxs("button",{type:"button",className:`btn ${b.length>0?"btn-danger":""}`,disabled:b.length===0,onClick:y.removeRows,children:["Remover (",b.length,")"]}),t.jsx("button",{type:"button",className:"btn-add",onClick:y.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:f,onChange:j=>y.toggleSelectAll(j.target.checked)})}),a.map(j=>t.jsx("th",{style:j.width?{minWidth:R?j.width:"100%"}:{width:"max-content"},children:j.label},j.key))]})}),t.jsxs("tbody",{children:[x.map((j,i)=>t.jsxs("tr",{children:[!N&&t.jsx("td",{children:t.jsx("input",{type:"checkbox",checked:b.includes(j._uid),onChange:()=>y.toggleSelection(j._uid)})}),a.map(d=>t.jsx("td",{children:d.render?d.render.length<=1?d.render({row:j,index:i,updateRow:(p,$)=>y.updateCellValue(j._uid,p,$),isLocked:!!N,isView:!!h}):d.render(j,i,(p,$)=>y.updateCellValue(j._uid,p,$),!!N,!!h):j[d.key]},`${j._uid}-${d.key}`))]},j._uid)),x.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=>{const[s,a]=u.useState(null),{watch:c}=S.useFormContext(),r=c(e),l=u.useCallback(()=>{try{const n=window.top.__REACT_ATTACHMENT_BRIDGE__;if(n){const g=n.getAttachment(e);a(g||(r?{name:r,documentId:0}:null))}else a(r?{name:r,documentId:0}:null)}catch{a(r?{name:r,documentId:0}:null)}},[e,r]);return u.useEffect(()=>{l();const o=setInterval(l,2e3);return()=>clearInterval(o)},[l]),{attachment:s,sync:l}};function Xe({name:e,label:s,help:a,className:c=""}){const[r,l]=u.useState(!1),{control:o}=S.useFormContext(),{field:n}=S.useController({name:e,control:o}),{attachment:g,sync:h}=ze(e),{bridge:m}=(()=>{try{return{bridge:window.top.__REACT_ATTACHMENT_BRIDGE__}}catch{return{bridge:null}}})(),v=!!g&&!r,N=u.useCallback(()=>{const x=document.createElement("input");x.type="file",x.onchange=b=>{const f=b.target.files[0];f&&(l(!0),m?m.upload(f,e,y=>{n.onChange(y.name),setTimeout(()=>{l(!1),h()},1e3)}):(n.onChange(f.name),l(!1)))},x.click()},[m,e,n,h]),k=x=>{var R;x.stopPropagation();const b=window.top,f=b.__REACT_ATTACHMENT_BRIDGE__,y=(R=b.FLUIGC)==null?void 0:R.toast;f?f.remove(e)?(n.onChange(""),h(),y&&y({title:"Sucesso: ",message:"Anexo removido com sucesso.",type:"success"})):y&&y({title:"Erro: ",message:"Não foi possível localizar o anexo para remoção.",type:"danger"}):(n.onChange(""),h())};return t.jsxs("div",{className:`form-group ${c}`,children:[s&&t.jsx("label",{children:s}),t.jsxs("div",{className:"attachment-container",style:{border:`1px ${v?"solid #5cb85c":"dashed #ccc"}`,padding:"10px",borderRadius:"4px",cursor:"pointer",display:"flex",justifyContent:"space-between",alignItems:"center",backgroundColor:r?"#f9f9f9":"white"},onClick:v?()=>m==null?void 0:m.view(e):N,children:[t.jsxs("span",{children:[t.jsx("i",{className:`fluigicon ${r?"fluigicon-loop-test":v?"fluigicon-file-pdf":"fluigicon-paperclip"}`}),r?" Enviando...":v?` ${g.name}`:` ${a||"Anexar"}`]}),v&&t.jsx("button",{type:"button",className:"btn btn-link text-danger",onClick:k,children:t.jsx("i",{className:"fluigicon fluigicon-trash"})})]}),t.jsx("input",{type:"hidden",...n})]})}function Ue({items:e,time:s=0,showNavigation:a=!0,progressBar:c=!0}){const[r,l]=u.useState(0),[o,n]=u.useState(0),g=u.useRef(null),h=u.useRef(null),m=u.useCallback(()=>{l(b=>(b+1)%e.length),n(0)},[e.length]),v=u.useCallback(()=>{l(b=>(b-1+e.length)%e.length),n(0)},[e.length]);if(u.useEffect(()=>{if(s>0&&e.length>1){const f=100/s*100;g.current=setInterval(m,s),h.current=setInterval(()=>{n(y=>y>=100?0:y+f)},100)}return()=>{g.current&&clearInterval(g.current),h.current&&clearInterval(h.current)}},[s,m,e.length,r]),!e||e.length===0)return null;const N=e[r],k=typeof N=="string"?N:N.url,x=/\.(jpg|jpeg|png|gif|webp)$/i.test(k);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:v,children:t.jsx("i",{className:"flaticon flaticon-chevron-left"})}),t.jsx("button",{className:"nav-btn next",onClick:m,children:t.jsx("i",{className:"flaticon flaticon-chevron-right"})})]}),t.jsx("div",{className:"carousel-media",children:x?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,f)=>t.jsx("div",{className:`dot ${f===r?"active":""}`,onClick:()=>{l(f),n(0)}},f))})]}),c&&s>0&&e.length>1&&t.jsx("div",{className:"carousel-progress-container",children:t.jsx("div",{className:"carousel-progress-bar",style:{width:`${o}%`}})})]})}function Ge({title:e,isOpen:s,onOpen:a,onClose:c,content:r,footer:l,width:o}){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:o},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:r}),l&&t.jsx("div",{className:"modal-footer",children:l})]})}):null}function Ye({logo:e,childs:s,footer:a,contentExternal:c,bg:r,color:l,onSelect:o}){return t.jsxs("div",{className:"main-container dfea",children:[t.jsxs("div",{className:"sidebar-wrapper",style:{backgroundColor:`${r}`},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,h;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 m;(m=n.action)==null||m.call(n),o==null||o(n.id)},style:{color:`${l}`},children:[n.icon&&t.jsx("i",{className:n.icon}),n.label]}),(h=n.options)==null?void 0:h.map(m=>t.jsx("li",{className:"sidebar-option",onClick:()=>{var v;(v=m.action)==null||v.call(m),o==null||o(m.id)},style:{color:`${l}`},children:m.label}))]})}):t.jsxs("li",{className:"sidebar-child",onClick:()=>{var m;(m=n.action)==null||m.call(n),o==null||o(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=Xe;exports.Carousel=Ue;exports.Checkbox=Z;exports.DatePicker=Ie;exports.Input=Y;exports.Modal=Ge;exports.RadioBtn=ee;exports.Select=J;exports.Sidebar=Ye;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"),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),N=n||!!m(e),{control:y}=S.useFormContext(),{isView:R}=M.useFluigRuntime(),{field:f}=S.useController({name:e,control:y}),{errors:b}=S.useFormState({name:e}),x=b==null?void 0:b[e],p=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 ${N?"hidden":""}`,children:[t.jsx("label",{children:s}),p?t.jsx(X.IMaskInput,{name:e,mask:p,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:N,forceReadOnly:y=!1,forceHidden:R=!1}){const{isReadOnly:f,isHidden:b}=M.useSection(),x=y||!!f(e),p=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=A=>{W.current&&!W.current.contains(A.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(A=>String(A==null?void 0:A[l])===String(v));return String(w?(w==null?void 0:w[o])??"":v)},[v,a,l,o]),z=w=>{x||(d(w[l]),N&&N(w),j(e),$(!1))};return t.jsxs("div",{className:`select-wrapper form-group ${p?"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:N}=M.useSection(),y=h?h(e):!1,R=N?N(e):!1,f=l||y,b=r||R,x=f||m||g;if(!n||!e)return console.error("Checkbox requer contexto de formulário e nome."),null;const p=()=>!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:p(),[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),N=n||!!m(e),{control:y}=S.useFormContext(),{isView:R,isReadOnly:f}=M.useFluigRuntime(),{field:b,fieldState:{error:x}}=S.useController({name:e,control:y}),p=h||f||R,k=b.value??"",j=u.useCallback(i=>{p||b.onChange(i)},[p,b]);return t.jsxs("div",{className:`form-group column ${N?"hidden":""}`,children:[s&&t.jsx("label",{className:"control-label",children:s}),t.jsx("div",{className:`btn-group ${p?"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:p}),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),N=n||!!m(e),{control:y}=S.useFormContext(),{isView:R}=M.useFluigRuntime(),{field:f,fieldState:{error:b}}=S.useController({name:e,control:y});return R?t.jsxs("div",{className:`form-group ${N?"hidden":""}`,children:[t.jsx("label",{children:s}),t.jsx("span",{className:"form-control",children:f.value||"-"})]}):t.jsxs("div",{className:`form-group ${N?"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 V(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,N=>N.test(r)):ae(n,N=>N.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: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,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},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: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: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 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),N=l||!!m(e),{field:{onChange:y,onBlur:R,value:f,ref:b},fieldState:{error:x}}=S.useController({name:e,control:r}),p=u.useMemo(()=>We(f),[f]),k=u.useCallback(i=>{y(i?Te(i):"")},[y]),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 N?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:p,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([]),N=()=>Date.now()+Math.random(),y=i=>{try{const d=JSON.parse(i);return Array.isArray(d)?d.map(v=>({...v,_uid:v._uid||N()})):[]}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=y(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:N(),...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])},[]),p=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:p}}}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:N}=M.useSection(),y=o||m||h||N&&N(e),{field:R,visibleRows:f,selectedRowIds:b,isAllSelected:x,handle:p}=Be({name:e,control:g,defaultRowValue:c,isView:m,isReadOnly:!!y,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}),!y&&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:p.removeRows,children:["Remover (",b.length,")"]}),t.jsx("button",{type:"button",className:"btn-add",onClick:p.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:[!y&&t.jsx("th",{style:{width:"50px"},children:t.jsx("input",{type:"checkbox",checked:x,onChange:j=>p.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:[!y&&t.jsx("td",{children:t.jsx("input",{type:"checkbox",checked:b.includes(j._uid),onChange:()=>p.toggleSelection(j._uid)})}),a.map(d=>t.jsx("td",{children:d.render?d.render.length<=1?d.render({row:j,index:i,updateRow:(v,_)=>p.updateCellValue(j._uid,v,_),isLocked:!!y,isView:!!m}):d.render(j,i,(v,_)=>p.updateCellValue(j._uid,v,_),!!y,!!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:y?"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:p,toast:k}=m();o(!0),p?p.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]),N=f=>{f.stopPropagation();const b=(n==null?void 0:n.name)||r.value;if(!b)return;const{bridge:x,toast:p}=m();x?x.removeByFileName(b)?(r.onChange(""),g(),p&&p({title:"Sucesso",message:"Anexo removido",type:"success"})):p&&p({title:"Erro",message:"Erro ao remover anexo",type:"danger"}):(r.onChange(""),g())},y=!!n&&!c,R=["fluig-attachment__box",y?"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:y?()=>{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":y?"fluigicon-file-pdf":"fluigicon-paperclip"} fluig-attachment__icon`}),t.jsx("span",{className:"fluig-attachment__filename",children:c?" Enviando...":y?n.name:a||"Anexar"})]}),y&&t.jsx("button",{type:"button",className:"fluig-attachment__btn-remove btn btn-link text-danger",onClick:N,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]),N=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(p=>p>=100?0:p+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 y=e[o],R=typeof y=="string"?y:y.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:N,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 N;(N=h.action)==null||N.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;
|