@tech-diefra/fluig-ui 1.2.13 → 1.2.15
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 +11 -1
- package/dist/Attachment/useFluigAttachment.d.ts +4 -0
- package/dist/index.cjs +1 -1
- package/dist/index.js +700 -590
- package/package.json +1 -1
|
@@ -1,2 +1,12 @@
|
|
|
1
|
-
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
|
|
3
|
+
export interface AttachmentProps {
|
|
4
|
+
name: string;
|
|
5
|
+
label?: string;
|
|
6
|
+
help?: string;
|
|
7
|
+
className?: string;
|
|
8
|
+
showRemove?: boolean;
|
|
9
|
+
showUpdate?: boolean;
|
|
10
|
+
}
|
|
11
|
+
declare const _default: React.MemoExoticComponent<({ name, label, help, className, showRemove, showUpdate, }: AttachmentProps) => import("react/jsx-runtime").JSX.Element>;
|
|
2
12
|
export default _default;
|
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),u=require("react"),P=require("react-hook-form"),X=require("react-imask"),$=require("@fluig-kit/ecm"),B=require("react-datepicker"),q=require("date-fns"),Y={cpf:"000.000.000-00",cnpj:"00.000.000/0000-00",telefone:"(00) 00000-0000",cep:"00000-000"};function Q({name:e,label:s="",placeholder:a="",type:c="text",mask:o,className:l="",forceReadOnly:r=!1,forceHidden:n=!1}){const{isReadOnly:x,isHidden:h}=$.useSection(),m=r||!!x(e),v=n||!!h(e),{control:y}=P.useFormContext(),{isView:k}=$.useFluigRuntime(),{field:j}=P.useController({name:e,control:y}),{errors:b}=P.useFormState({name:e}),f=b==null?void 0:b[e],N=u.useMemo(()=>o?Y[o]??o:null,[o]),R=u.useCallback(i=>{if(!i)return"";const d=i.replace(/\D/g,"");return(Number(d)/100).toLocaleString("pt-BR",{style:"currency",currency:"BRL"})},[]),p=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:j.value||"-"})]}):t.jsxs("div",{className:`form-group ${v?"hidden":""}`,children:[t.jsx("label",{children:s}),N?t.jsx(X.IMaskInput,{name:e,mask:N,value:String(j.value??""),unmask:!1,onAccept:i=>j.onChange(p(i)),placeholder:a,readOnly:m,className:`form-control ${f?"border-red":""} ${l}`,inputRef:j.ref,onBlur:j.onBlur}):t.jsx("input",{...j,type:"text",value:j.value??"",onChange:i=>j.onChange(p(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 J=u.memo(Q);function U({name:e,label:s="",options:a=[],placeholder:c="",labelKey:o="label",valueKey:l="value",enableSearch:r=!1,searchPlaceholder:n="Buscar...",loading:x=!1,onSearchChange:h,debounceTime:m=300,onSelect:v,forceReadOnly:y=!1,forceHidden:k=!1}){const{isReadOnly:j,isHidden:b}=$.useSection(),f=y||!!j(e),N=k||!!b(e),{control:R,clearErrors:p}=P.useFormContext(),{isView:i}=$.useFluigRuntime(),{field:{onChange:d,value:g,ref:M},fieldState:{error:w}}=P.useController({name:e,control:R}),[S,F]=u.useState(!1),[V,T]=u.useState(""),D=u.useRef(null),_=u.useRef(h);u.useEffect(()=>{_.current=h},[h]),u.useEffect(()=>{const C=O=>{D.current&&!D.current.contains(O.target)&&F(!1)};return document.addEventListener("mousedown",C),()=>document.removeEventListener("mousedown",C)},[]),u.useEffect(()=>{S||T("")},[S]),u.useEffect(()=>{if(!r)return;const C=setTimeout(()=>{_.current&&_.current(V)},m);return()=>clearTimeout(C)},[V,r,m]);const H=u.useMemo(()=>r&&!h&&V.trim()?a.filter(C=>String((C==null?void 0:C[o])??"").toLowerCase().includes(V.toLowerCase())):a??[],[a,r,h,V,o]),L=u.useMemo(()=>{if(g==null)return"";if(typeof g=="object")return String(g[l]??"");const C=(a||[]).find(O=>String(O==null?void 0:O[l])===String(g));return String(C?(C==null?void 0:C[o])??"":g)},[g,a,l,o]),z=C=>{f||(d(C[l]),v&&v(C),p(e),F(!1))};return t.jsxs("div",{className:`select-wrapper form-group ${N?"hidden":""}`,ref:D,children:[t.jsx("label",{className:"control-label",children:s}),i?t.jsx("span",{className:"form-control",children:L||"-"}):t.jsxs(t.Fragment,{children:[t.jsxs("div",{className:`select-control ${w?"border-red":""} ${f?"readOnly":""}`,onClick:()=>!f&&F(C=>!C),ref:M,children:[t.jsx("span",{className:`select-display ${f?"readOnly":""}`,children:L||c}),t.jsx("i",{className:"flaticon flaticon-chevron-down select-icon"})]}),S&&!f&&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:V,onChange:C=>T(C.target.value),placeholder:x?"Carregando...":n,autoFocus:!0,onClick:C=>C.stopPropagation()})}),t.jsx("ul",{className:"select-options",children:x?t.jsx("li",{className:"select-option readOnly",children:"Carregando..."}):H.length>0?H.map(C=>t.jsx("li",{onClick:()=>z(C),className:"select-option handleHover",children:C[o]},C[l])):t.jsx("li",{className:"select-option readOnly",children:"Sem resultados"})})]})]}),t.jsx("input",{type:"hidden",name:e,value:g||""}),w&&t.jsx("p",{className:"text-danger",children:String(w.message)})]})}const G=u.memo(U);function Z({name:e,options:s=[],label:a="",valueKey:c="value",labelKey:o="label",forceReadOnly:l=!1,forceHidden:r=!1}){var g,M;const n=P.useFormContext(),{isView:x,isReadOnly:h}=$.useFluigRuntime(),{isReadOnly:m,isHidden:v}=$.useSection(),y=m?m(e):!1,k=v?v(e):!1,j=l||y,b=r||k,f=j||h||x;if(!n||!e)return console.error("Checkbox requer contexto de formulário e nome."),null;const N=()=>!s||!n?{}:s.reduce((w,S)=>{const F=S[c],V=n.getValues(F);return w[F]=V==="on",w},{}),R=n.watch(e),p=u.useMemo(()=>R&&typeof R=="object"?R:N(),[R,s,c]);u.useEffect(()=>{const w=n.getValues(e);(!w||typeof w!="object")&&n.setValue(e,p,{shouldDirty:!1,shouldValidate:!1})},[p,e,n]);const i=(w,S)=>{if(f)return;const F={...p,[w]:S};n.setValue(e,F,{shouldDirty:!0,shouldValidate:!0}),n.setValue(w,S?"on":"",{shouldValidate:!1})},d=(M=(g=n.formState)==null?void 0:g.errors)==null?void 0:M[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(w=>{const S=String(w[c]),F=p[S]===!0;return t.jsxs("div",{children:[t.jsx("input",{type:"hidden",...n.register(S)}),t.jsxs("label",{className:`custom-checkbox ${F?"checked":""} ${f?"readOnly":""}`,children:[t.jsx("input",{type:"checkbox",checked:F,disabled:f,onChange:V=>i(S,V.target.checked)}),t.jsx("span",{className:"checkmark"}),t.jsx("span",{children:w[o]})]})]},S)})}),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:x,isHidden:h}=$.useSection(),m=r||!!x(e),v=n||!!h(e),{control:y}=P.useFormContext(),{isView:k,isReadOnly:j}=$.useFluigRuntime(),{field:b,fieldState:{error:f}}=P.useController({name:e,control:y}),N=m||j||k,R=b.value??"",p=u.useCallback(i=>{N||b.onChange(i)},[N,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 ${N?"view-mode":""}`,"data-field-name":e,children:a.map(i=>{const d=i[c],g=R===d,M=i.color?{"--customColor":i.color}:void 0;return t.jsxs("label",{htmlFor:`${e}_${d}`,style:M,className:`btn fs-ellipsis ${g?"active":""}`,children:[t.jsx("input",{type:"radio",id:`${e}_${d}`,name:e,value:d,checked:g,className:"hidden",onChange:()=>p(d),disabled:N}),i[l]&&t.jsx("i",{className:`${i[l]} icon-sm`})," ",i[o]]},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:o=4,maxLength:l,forceReadOnly:r=!1,forceHidden:n=!1})=>{const{isReadOnly:x,isHidden:h}=$.useSection(),m=r||!!x(e),v=n||!!h(e),{control:y}=P.useFormContext(),{isView:k}=$.useFluigRuntime(),{field:j,fieldState:{error:b}}=P.useController({name:e,control:y});return k?t.jsxs("div",{className:`form-group ${v?"hidden":""}`,children:[t.jsx("label",{children:s}),t.jsx("span",{className:"form-control",children:j.value||"-"})]}):t.jsxs("div",{className:`form-group ${v?"hidden":""}`,children:[t.jsx("label",{children:s}),t.jsx("textarea",{...j,rows:o,maxLength:l,value:j.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 I(e){return(s={})=>{const a=s.width?String(s.width):e.defaultWidth;return e.formats[a]||e.formats[e.defaultWidth]}}function W(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 A(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],x=Array.isArray(n)?se(n,v=>v.test(r)):ae(n,v=>v.test(r));let h;h=e.valueCallback?e.valueCallback(x):x,h=a.valueCallback?a.valueCallback(h):h;const m=s.slice(r.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 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:I({formats:le,defaultWidth:"full"}),time:I({formats:ce,defaultWidth:"full"}),dateTime:I({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:W({values:fe,defaultWidth:"wide"}),quarter:W({values:ge,defaultWidth:"wide",argumentCallback:e=>e-1}),month:W({values:xe,defaultWidth:"wide"}),day:W({values:be,defaultWidth:"wide"}),dayPeriod:W({values:ve,defaultWidth:"wide",formattingValues:je,defaultFormattingWidth:"wide"})},we=/^(\d+)[ºªo]?/i,Ne=/\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]},Me={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]},Ve={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},Oe={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}},We={ordinalNumber:re({matchPattern:we,parsePattern:Ne,valueCallback:e=>parseInt(e,10)}),era:A({matchPatterns:Ce,defaultMatchWidth:"wide",parsePatterns:ke,defaultParseWidth:"any"}),quarter:A({matchPatterns:Re,defaultMatchWidth:"wide",parsePatterns:Se,defaultParseWidth:"any",valueCallback:e=>e+1}),month:A({matchPatterns:Pe,defaultMatchWidth:"wide",parsePatterns:$e,defaultParseWidth:"any"}),day:A({matchPatterns:Me,defaultMatchWidth:"wide",parsePatterns:Fe,defaultParseWidth:"any"}),dayPeriod:A({matchPatterns:Ve,defaultMatchWidth:"any",parsePatterns:Oe,defaultParseWidth:"any"})},Ae={code:"pt-BR",formatDistance:ie,formatLong:ue,formatRelative:he,localize:ye,match:We,options:{weekStartsOn:0,firstWeekContainsDate:1}};B.registerLocale("pt-BR",Ae);const E="dd/MM/yyyy",De=e=>{if(!e)return null;const s=q.parse(e,E,new Date);return q.isValid(s)?s:null},_e=e=>e?q.format(e,E):"",Ie=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)}})),qe=({name:e,label:s="",placeholder:a="dd/mm/aaaa",className:c="",forceReadOnly:o=!1,forceHidden:l=!1})=>{const{control:r}=P.useFormContext(),{isView:n}=$.useFluigRuntime(),{isReadOnly:x,isHidden:h}=$.useSection(),m=o||!!x(e),v=l||!!h(e),{field:{onChange:y,onBlur:k,value:j,ref:b},fieldState:{error:f}}=P.useController({name:e,control:r}),N=u.useMemo(()=>De(j),[j]),R=u.useCallback(i=>{y(i?_e(i):"")},[y]),p=u.useCallback(i=>{var d,g;if(b(i),i&&((g=(d=r._fields)==null?void 0:d[e])!=null&&g._f)){const M=r._fields[e];M._f.ref={focus:()=>{var w;return(w=i.focus)==null?void 0:w.call(i)},select:()=>{var w;return(w=i.select)==null?void 0:w.call(i)},setCustomValidity:w=>{var S;return(S=i.setCustomValidity)==null?void 0:S.call(i,w)},reportValidity:()=>{var w;return(w=i.reportValidity)==null?void 0:w.call(i)}}}},[b,r,e]);return v?null:n?t.jsxs("div",{className:"form-group",children:[t.jsx("label",{children:s}),t.jsx("span",{className:"form-control",children:j||"-"})]}):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(B,{id:e,name:e,selected:N,onChange:R,onBlur:k,dateFormat:E,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&&!!j,autoComplete:"off",customInput:t.jsx(Ie,{name:e,shimRef:p})})}),f&&t.jsx("span",{className:"help-block text-danger",children:String(f.message)})]})},Ee=u.memo(qe);function Te({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(Te);function Le({name:e,control:s,defaultRowValue:a,isView:c,isReadOnly:o,filters:l=[]}){const{field:r}=P.useController({name:e,control:s}),[n,x]=u.useState([]),[h,m]=u.useState([]),v=()=>Date.now()+Math.random(),y=i=>{try{const d=JSON.parse(i);return Array.isArray(d)?d.map(g=>({...g,_uid:g._uid||v()})):[]}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);x(d)}},[r.value,c]),u.useEffect(()=>{if(o)return;const i=JSON.stringify(n);r.value!==i&&r.onChange(i)},[n,r,o]);const k=u.useCallback(()=>{const i={_uid:v(),...a};x(d=>[...d,i])},[a]),j=u.useCallback(()=>{x(i=>i.filter(d=>!h.includes(d._uid))),m([])},[h]),b=u.useCallback((i,d,g)=>{x(M=>M.map(w=>w._uid===i?{...w,[d]:g}:w))},[]),f=u.useCallback(i=>{m(d=>d.includes(i)?d.filter(g=>g!==i):[...d,i])},[]),N=u.useCallback(i=>{m(i?n.map(d=>d._uid):[])},[n]),R=n.length>0&&h.length===n.length,p=u.useMemo(()=>!l||l.length===0?n:n.filter(i=>l.every(d=>{if("custom"in d)return d.custom(i);const g=i[d.field];switch(d.operator){case"===":return g===d.value;case"!==":return g!==d.value;case">":return g>d.value;case"<":return g<d.value;case">=":return g>=d.value;case"<=":return g<=d.value;default:return!0}})),[n,l]);return{field:r,tableRows:n,visibleRows:p,selectedRowIds:h,isAllSelected:R,handle:{addRow:k,removeRows:j,updateCellValue:b,toggleSelection:f,toggleSelectAll:N}}}const Be=({name:e,title:s="Tabela Dinâmica",columns:a,defaultRowValue:c={},forceReadOnly:o=!1,layout:l="fluid",actions:r=!0,filters:n=[]})=>{const{control:x}=P.useFormContext(),{isView:h,isReadOnly:m}=$.useFluigRuntime(),{isReadOnly:v}=$.useSection(),y=o||h||m||v&&v(e),{field:k,visibleRows:j,selectedRowIds:b,isAllSelected:f,handle:N}=Le({name:e,control:x,defaultRowValue:c,isView:h,isReadOnly:!!y,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}),!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: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:[!y&&t.jsx("th",{style:{width:"50px"},children:t.jsx("input",{type:"checkbox",checked:f,onChange:p=>N.toggleSelectAll(p.target.checked)})}),a.map(p=>t.jsx("th",{style:p.width?{minWidth:R?p.width:"100%"}:{width:"max-content"},children:p.label},p.key))]})}),t.jsxs("tbody",{children:[j.map((p,i)=>t.jsxs("tr",{children:[!y&&t.jsx("td",{children:t.jsx("input",{type:"checkbox",checked:b.includes(p._uid),onChange:()=>N.toggleSelection(p._uid)})}),a.map(d=>t.jsx("td",{children:d.render?d.render.length<=1?d.render({row:p,index:i,updateRow:(g,M)=>N.updateCellValue(p._uid,g,M),isLocked:!!y,isView:!!h}):d.render(p,i,(g,M)=>N.updateCellValue(p._uid,g,M),!!y,!!h):p[d.key]},`${p._uid}-${d.key}`))]},p._uid)),j.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=({name:e,label:s,help:a})=>{const{control:c}=P.useFormContext(),{field:o}=P.useController({name:e,control:c}),[l,r]=u.useState(null),n=u.useCallback(()=>{var k,j;const y=(((j=(k=window.top.WKFViewAttachment)==null?void 0:k.getAllAttachments)==null?void 0:j.call(k))||[]).find(b=>{var f,N;return((f=b.description)==null?void 0:f.includes(e))||((N=b.name)==null?void 0:N.includes(e))});y&&(r(y),o.value!==y.description&&o.onChange(y.description))},[e,o]);u.useEffect(()=>{const m=window.top;return m.addEventListener("fluig_attachments_updated",n),window.addEventListener("fluig_attachments_updated",n),n(),()=>{m.removeEventListener("fluig_attachments_updated",n),window.removeEventListener("fluig_attachments_updated",n)}},[n]);const x=()=>{var v;const m=window.top;l?m.WKFViewAttachment.openAttachmentView(l.colleagueId,l.documentId,l.version):(v=m.openInputFile)==null||v.call(m,"ecm-navigation-inputFile-clone",e)},h=!!l||!!o.value;return t.jsxs("div",{className:"form-group",children:[s&&t.jsx("label",{children:s}),t.jsxs("button",{type:"button",className:`btn btn-block ${h?"btn-success":"btn-default"}`,onClick:x,style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[t.jsxs("span",{children:[t.jsx("i",{className:`fluigicon ${h?"fluigicon-check-circle-on":"fluigicon-paperclip"}`})," ",h?o.value||"Ver arquivo":a||"Anexar arquivo"]}),h&&t.jsx("i",{className:"fluigicon fluigicon-eye-open"})]}),t.jsx("input",{type:"hidden",name:e,value:o.value||""})]})},Xe=u.memo(ze);function Ye({items:e,time:s=0,showNavigation:a=!0,progressBar:c=!0}){const[o,l]=u.useState(0),[r,n]=u.useState(0),x=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;x.current=setInterval(m,s),h.current=setInterval(()=>{n(N=>N>=100?0:N+f)},100)}return()=>{x.current&&clearInterval(x.current),h.current&&clearInterval(h.current)}},[s,m,e.length,o]),!e||e.length===0)return null;const y=e[o],k=typeof y=="string"?y:y.url,j=/\.(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:j?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===o?"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:`${r}%`}})})]})}function Qe({title:e,isOpen:s,onOpen:a,onClose:c,content:o,footer:l,width:r}){const n=u.useCallback(x=>{x.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:x=>x.stopPropagation(),children:[t.jsxs("div",{className:"modal-header",children:[t.jsx("h3",{children:e}),t.jsx("div",{className:"btn-close-modal",onClick:c,role:"button","aria-label":"Fechar modal",children:t.jsx("i",{className:"flaticon flaticon-close icon-md","aria-hidden":"true"})})]}),t.jsx("div",{className:"modal-content",children:o}),l&&t.jsx("div",{className:"modal-footer",children:l})]})}):null}function Je({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 x,h;return n!=null&&n.options&&((x=n==null?void 0:n.options)==null?void 0:x.length)>0?t.jsx(t.Fragment,{children:t.jsxs("ul",{className:"sidebar-child sidebar-options-content",children:[t.jsxs("li",{className:"sidebar-child",onClick:()=>{var m;(m=n.action)==null||m.call(n),r==null||r(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),r==null||r(m.id)},style:{color:`${l}`},children:m.label}))]})}):t.jsxs("li",{className:"sidebar-child",onClick:()=>{var m;(m=n.action)==null||m.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=Xe;exports.Carousel=Ye;exports.Checkbox=Z;exports.DatePicker=Ee;exports.Input=J;exports.Modal=Qe;exports.RadioBtn=ee;exports.Select=G;exports.Sidebar=Je;exports.SimpleTable=Be;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"),B=require("react-datepicker"),I=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:n="",type:d="text",mask:i,className:c="",forceReadOnly:o=!1,forceHidden:a=!1}){const{isReadOnly:x,isHidden:f}=$.useSection(),h=o||!!x(e),y=a||!!f(e),{control:w}=S.useFormContext(),{isView:b}=$.useFluigRuntime(),{field:j}=S.useController({name:e,control:w}),{errors:p}=S.useFormState({name:e}),v=p==null?void 0:p[e],N=u.useMemo(()=>i?U[i]??i:null,[i]),R=u.useCallback(r=>{if(!r)return"";const l=r.replace(/\D/g,"");return(Number(l)/100).toLocaleString("pt-BR",{style:"currency",currency:"BRL"})},[]),m=u.useCallback(r=>d==="monetary"?R(r):r,[d,R]);return b?t.jsxs("div",{className:"form-group",children:[t.jsx("label",{children:s}),t.jsx("span",{className:"form-control",children:j.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(j.value??""),unmask:!1,onAccept:r=>j.onChange(m(r)),placeholder:n,readOnly:h,className:`form-control ${v?"border-red":""} ${c}`,inputRef:j.ref,onBlur:j.onBlur}):t.jsx("input",{...j,type:"text",value:j.value??"",onChange:r=>j.onChange(m(r.target.value)),placeholder:n,readOnly:h,className:`form-control ${v?"border-red":""} ${c}`}),v&&t.jsx("p",{className:"text-danger",children:String(v.message)})]})}const G=u.memo(Y);function Q({name:e,label:s="",options:n=[],placeholder:d="",labelKey:i="label",valueKey:c="value",enableSearch:o=!1,searchPlaceholder:a="Buscar...",loading:x=!1,onSearchChange:f,debounceTime:h=300,onSelect:y,forceReadOnly:w=!1,forceHidden:b=!1}){const{isReadOnly:j,isHidden:p}=$.useSection(),v=w||!!j(e),N=b||!!p(e),{control:R,clearErrors:m}=S.useFormContext(),{isView:r}=$.useFluigRuntime(),{field:{onChange:l,value:g,ref:P},fieldState:{error:C}}=S.useController({name:e,control:R}),[M,F]=u.useState(!1),[O,q]=u.useState(""),W=u.useRef(null),D=u.useRef(f);u.useEffect(()=>{D.current=f},[f]),u.useEffect(()=>{const k=A=>{W.current&&!W.current.contains(A.target)&&F(!1)};return document.addEventListener("mousedown",k),()=>document.removeEventListener("mousedown",k)},[]),u.useEffect(()=>{M||q("")},[M]),u.useEffect(()=>{if(!o)return;const k=setTimeout(()=>{D.current&&D.current(O)},h);return()=>clearTimeout(k)},[O,o,h]);const H=u.useMemo(()=>o&&!f&&O.trim()?n.filter(k=>String((k==null?void 0:k[i])??"").toLowerCase().includes(O.toLowerCase())):n??[],[n,o,f,O,i]),L=u.useMemo(()=>{if(g==null)return"";if(typeof g=="object")return String(g[c]??"");const k=(n||[]).find(A=>String(A==null?void 0:A[c])===String(g));return String(k?(k==null?void 0:k[i])??"":g)},[g,n,c,i]),z=k=>{v||(l(k[c]),y&&y(k),m(e),F(!1))};return t.jsxs("div",{className:`select-wrapper form-group ${N?"hidden":""}`,ref:W,children:[t.jsx("label",{className:"control-label",children:s}),r?t.jsx("span",{className:"form-control",children:L||"-"}):t.jsxs(t.Fragment,{children:[t.jsxs("div",{className:`select-control ${C?"border-red":""} ${v?"readOnly":""}`,onClick:()=>!v&&F(k=>!k),ref:P,children:[t.jsx("span",{className:`select-display ${v?"readOnly":""}`,children:L||d}),t.jsx("i",{className:"flaticon flaticon-chevron-down select-icon"})]}),M&&!v&&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:O,onChange:k=>q(k.target.value),placeholder:x?"Carregando...":a,autoFocus:!0,onClick:k=>k.stopPropagation()})}),t.jsx("ul",{className:"select-options",children:x?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[i]},k[c])):t.jsx("li",{className:"select-option readOnly",children:"Sem resultados"})})]})]}),t.jsx("input",{type:"hidden",name:e,value:g||""}),C&&t.jsx("p",{className:"text-danger",children:String(C.message)})]})}const J=u.memo(Q);function Z({name:e,options:s=[],label:n="",valueKey:d="value",labelKey:i="label",forceReadOnly:c=!1,forceHidden:o=!1}){var g,P;const a=S.useFormContext(),{isView:x,isReadOnly:f}=$.useFluigRuntime(),{isReadOnly:h,isHidden:y}=$.useSection(),w=h?h(e):!1,b=y?y(e):!1,j=c||w,p=o||b,v=j||f||x;if(!a||!e)return console.error("Checkbox requer contexto de formulário e nome."),null;const N=()=>!s||!a?{}:s.reduce((C,M)=>{const F=M[d],O=a.getValues(F);return C[F]=O==="on",C},{}),R=a.watch(e),m=u.useMemo(()=>R&&typeof R=="object"?R:N(),[R,s,d]);u.useEffect(()=>{const C=a.getValues(e);(!C||typeof C!="object")&&a.setValue(e,m,{shouldDirty:!1,shouldValidate:!1})},[m,e,a]);const r=(C,M)=>{if(v)return;const F={...m,[C]:M};a.setValue(e,F,{shouldDirty:!0,shouldValidate:!0}),a.setValue(C,M?"on":"",{shouldValidate:!1})},l=(P=(g=a.formState)==null?void 0:g.errors)==null?void 0:P[e];return t.jsxs("div",{className:`form-group ${p?"hidden":""}`,children:[n&&t.jsx("label",{children:n}),t.jsx("div",{className:`checkbox-group-custom ${v?"readOnly":""}`,children:s.map(C=>{const M=String(C[d]),F=m[M]===!0;return t.jsxs("div",{children:[t.jsx("input",{type:"hidden",...a.register(M)}),t.jsxs("label",{className:`custom-checkbox ${F?"checked":""} ${v?"readOnly":""}`,children:[t.jsx("input",{type:"checkbox",checked:F,disabled:v,onChange:O=>r(M,O.target.checked)}),t.jsx("span",{className:"checkmark"}),t.jsx("span",{children:C[i]})]})]},M)})}),l&&t.jsx("p",{className:"text-danger",children:String(l.message)})]})}function K({name:e,label:s="",options:n=[],valueKey:d="value",labelKey:i="label",iconKey:c="icon",forceReadOnly:o=!1,forceHidden:a=!1}){const{isReadOnly:x,isHidden:f}=$.useSection(),h=o||!!x(e),y=a||!!f(e),{control:w}=S.useFormContext(),{isView:b,isReadOnly:j}=$.useFluigRuntime(),{field:p,fieldState:{error:v}}=S.useController({name:e,control:w}),N=h||j||b,R=p.value??"",m=u.useCallback(r=>{N||p.onChange(r)},[N,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 ${N?"view-mode":""}`,"data-field-name":e,children:n.map(r=>{const l=r[d],g=R===l,P=r.color?{"--customColor":r.color}:void 0;return t.jsxs("label",{htmlFor:`${e}_${l}`,style:P,className:`btn fs-ellipsis ${g?"active":""}`,children:[t.jsx("input",{type:"radio",id:`${e}_${l}`,name:e,value:l,checked:g,className:"hidden",onChange:()=>m(l),disabled:N}),r[c]&&t.jsx("i",{className:`${r[c]} icon-sm`})," ",r[i]]},l)})}),v&&t.jsx("p",{className:"text-danger",children:String(v.message)})]})}const ee=u.memo(K),te=({name:e,label:s="",placeholder:n="",className:d="",rows:i=4,maxLength:c,forceReadOnly:o=!1,forceHidden:a=!1})=>{const{isReadOnly:x,isHidden:f}=$.useSection(),h=o||!!x(e),y=a||!!f(e),{control:w}=S.useFormContext(),{isView:b}=$.useFluigRuntime(),{field:j,fieldState:{error:p}}=S.useController({name:e,control:w});return b?t.jsxs("div",{className:`form-group ${y?"hidden":""}`,children:[t.jsx("label",{children:s}),t.jsx("span",{className:"form-control",children:j.value||"-"})]}):t.jsxs("div",{className:`form-group ${y?"hidden":""}`,children:[t.jsx("label",{children:s}),t.jsx("textarea",{...j,rows:i,maxLength:c,value:j.value||"",placeholder:n,readOnly:h,className:`form-control ${p?"border-red":""} ${d}`}),p&&t.jsx("p",{className:"text-danger",children:String(p.message)})]})},ne=u.memo(te);function _(e){return(s={})=>{const n=s.width?String(s.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}function V(e){return(s,n)=>{const d=n!=null&&n.context?String(n.context):"standalone";let i;if(d==="formatting"&&e.formattingValues){const o=e.defaultFormattingWidth||e.defaultWidth,a=n!=null&&n.width?String(n.width):o;i=e.formattingValues[a]||e.formattingValues[o]}else{const o=e.defaultWidth,a=n!=null&&n.width?String(n.width):e.defaultWidth;i=e.values[a]||e.values[o]}const c=e.argumentCallback?e.argumentCallback(s):s;return i[c]}}function T(e){return(s,n={})=>{const d=n.width,i=d&&e.matchPatterns[d]||e.matchPatterns[e.defaultMatchWidth],c=s.match(i);if(!c)return null;const o=c[0],a=d&&e.parsePatterns[d]||e.parsePatterns[e.defaultParseWidth],x=Array.isArray(a)?se(a,y=>y.test(o)):ae(a,y=>y.test(o));let f;f=e.valueCallback?e.valueCallback(x):x,f=n.valueCallback?n.valueCallback(f):f;const h=s.slice(o.length);return{value:f,rest:h}}}function ae(e,s){for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&s(e[n]))return n}function se(e,s){for(let n=0;n<e.length;n++)if(s(e[n]))return n}function re(e){return(s,n={})=>{const d=s.match(e.matchPattern);if(!d)return null;const i=d[0],c=s.match(e.parsePattern);if(!c)return null;let o=e.valueCallback?e.valueCallback(c[0]):c[0];o=n.valueCallback?n.valueCallback(o):o;const a=s.slice(i.length);return{value:o,rest:a}}}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,n)=>{let d;const i=oe[e];return typeof i=="string"?d=i:s===1?d=i.one:d=i.other.replace("{{count}}",String(s)),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?"em "+d:"há "+d:d},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:_({formats:le,defaultWidth:"full"}),time:_({formats:ce,defaultWidth:"full"}),dateTime:_({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,n,d)=>{const i=me[e];return typeof i=="function"?i(s):i},fe={narrow:["AC","DC"],abbreviated:["AC","DC"],wide:["antes de cristo","depois de cristo"]},ge={narrow:["1","2","3","4"],abbreviated:["T1","T2","T3","T4"],wide:["1º trimestre","2º trimestre","3º trimestre","4º trimestre"]},xe={narrow:["j","f","m","a","m","j","j","a","s","o","n","d"],abbreviated:["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez"],wide:["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"]},be={narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sab"],abbreviated:["domingo","segunda","terça","quarta","quinta","sexta","sábado"],wide:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},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 n=Number(e);return(s==null?void 0:s.unit)==="week"?n+"ª":n+"º"},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"})},we=/^(\d+)[ºªo]?/i,Ce=/\d+/i,Ne={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]},$e={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},Pe={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]},Me={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]},Oe={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:we,parsePattern:Ce,valueCallback:e=>parseInt(e,10)}),era:T({matchPatterns:Ne,defaultMatchWidth:"wide",parsePatterns:ke,defaultParseWidth:"any"}),quarter:T({matchPatterns:Re,defaultMatchWidth:"wide",parsePatterns:Se,defaultParseWidth:"any",valueCallback:e=>e+1}),month:T({matchPatterns:$e,defaultMatchWidth:"wide",parsePatterns:Pe,defaultParseWidth:"any"}),day:T({matchPatterns:Me,defaultMatchWidth:"wide",parsePatterns:Fe,defaultParseWidth:"any"}),dayPeriod:T({matchPatterns:Oe,defaultMatchWidth:"any",parsePatterns:Ae,defaultParseWidth:"any"})},Te={code:"pt-BR",formatDistance:ie,formatLong:ue,formatRelative:he,localize:ye,match:Ve,options:{weekStartsOn:0,firstWeekContainsDate:1}};B.registerLocale("pt-BR",Te);const E="dd/MM/yyyy",We=e=>{if(!e)return null;const s=I.parse(e,E,new Date);return I.isValid(s)?s:null},De=e=>e?I.format(e,E):"",_e=u.forwardRef(({shimRef:e,className:s,name:n,...d},i)=>t.jsx("input",{name:n,...d,className:s,ref:c=>{typeof i=="function"?i(c):i&&(i.current=c),e&&e(c)}})),Ie=({name:e,label:s="",placeholder:n="dd/mm/aaaa",className:d="",forceReadOnly:i=!1,forceHidden:c=!1})=>{const{control:o}=S.useFormContext(),{isView:a}=$.useFluigRuntime(),{isReadOnly:x,isHidden:f}=$.useSection(),h=i||!!x(e),y=c||!!f(e),{field:{onChange:w,onBlur:b,value:j,ref:p},fieldState:{error:v}}=S.useController({name:e,control:o}),N=u.useMemo(()=>We(j),[j]),R=u.useCallback(r=>{w(r?De(r):"")},[w]),m=u.useCallback(r=>{var l,g;if(p(r),r&&((g=(l=o._fields)==null?void 0:l[e])!=null&&g._f)){const P=o._fields[e];P._f.ref={focus:()=>{var C;return(C=r.focus)==null?void 0:C.call(r)},select:()=>{var C;return(C=r.select)==null?void 0:C.call(r)},setCustomValidity:C=>{var M;return(M=r.setCustomValidity)==null?void 0:M.call(r,C)},reportValidity:()=>{var C;return(C=r.reportValidity)==null?void 0:C.call(r)}}}},[p,o,e]);return y?null:a?t.jsxs("div",{className:"form-group",children:[t.jsx("label",{children:s}),t.jsx("span",{className:"form-control",children:j||"-"})]}):t.jsxs("div",{className:`form-group fluig-style-guide ${d}`,children:[s&&t.jsx("label",{className:"control-label",htmlFor:e,children:s}),t.jsx("div",{className:`${v?"border-red":""}`,children:t.jsx(B,{id:e,name:e,selected:N,onChange:R,onBlur:b,dateFormat:E,placeholderText:n,disabled:h,readOnly:h,locale:"pt-BR",className:`form-control ${v?"border-red":""}`,wrapperClassName:"w-100",showMonthDropdown:!0,showYearDropdown:!0,dropdownMode:"select",isClearable:!h&&!!j,autoComplete:"off",customInput:t.jsx(_e,{name:e,shimRef:m})})}),v&&t.jsx("span",{className:"help-block text-danger",children:String(v.message)})]})},Ee=u.memo(Ie);function qe({mapping:e={},defaultLabel:s="Não reconhecido",className:n="",hidden:d=!1,label:i}){const{activityId:c}=$.useFluigRuntime(),o=u.useMemo(()=>!e||c===null||c===void 0?null:e[c],[c,e]);if(!o)return t.jsxs("div",{className:`form-group ${d?"hidden":""}`,children:[i&&t.jsx("label",{children:i}),t.jsx("div",{className:`status-badge default ${n}`,children:s})]});const a={"--customColor":o.color};return t.jsxs("div",{className:`form-group ${d?"hidden":""}`,children:[i&&t.jsx("label",{children:i}),t.jsxs("div",{className:`status-badge ${n}`,style:a,children:[o.icon&&t.jsx("i",{className:o.icon}),t.jsx("span",{children:o.label})]})]})}const He=u.memo(qe);function Le({name:e,control:s,defaultRowValue:n,isView:d,isReadOnly:i,filters:c=[]}){const{field:o}=S.useController({name:e,control:s}),[a,x]=u.useState([]),[f,h]=u.useState([]),y=()=>Date.now()+Math.random(),w=r=>{try{const l=JSON.parse(r);return Array.isArray(l)?l.map(g=>({...g,_uid:g._uid||y()})):[]}catch(l){return console.error(`Erro ao ler dados da tabela "${e}":`,l),[]}};u.useEffect(()=>{if(!(a.length>0&&!d)&&o.value&&typeof o.value=="string"){const r=JSON.stringify(a);if(o.value===r)return;const l=w(o.value);x(l)}},[o.value,d]),u.useEffect(()=>{if(i)return;const r=JSON.stringify(a);o.value!==r&&o.onChange(r)},[a,o,i]);const b=u.useCallback(()=>{const r={_uid:y(),...n};x(l=>[...l,r])},[n]),j=u.useCallback(()=>{x(r=>r.filter(l=>!f.includes(l._uid))),h([])},[f]),p=u.useCallback((r,l,g)=>{x(P=>P.map(C=>C._uid===r?{...C,[l]:g}:C))},[]),v=u.useCallback(r=>{h(l=>l.includes(r)?l.filter(g=>g!==r):[...l,r])},[]),N=u.useCallback(r=>{h(r?a.map(l=>l._uid):[])},[a]),R=a.length>0&&f.length===a.length,m=u.useMemo(()=>!c||c.length===0?a:a.filter(r=>c.every(l=>{if("custom"in l)return l.custom(r);const g=r[l.field];switch(l.operator){case"===":return g===l.value;case"!==":return g!==l.value;case">":return g>l.value;case"<":return g<l.value;case">=":return g>=l.value;case"<=":return g<=l.value;default:return!0}})),[a,c]);return{field:o,tableRows:a,visibleRows:m,selectedRowIds:f,isAllSelected:R,handle:{addRow:b,removeRows:j,updateCellValue:p,toggleSelection:v,toggleSelectAll:N}}}const Be=({name:e,title:s="Tabela Dinâmica",columns:n,defaultRowValue:d={},forceReadOnly:i=!1,layout:c="fluid",actions:o=!0,filters:a=[]})=>{const{control:x}=S.useFormContext(),{isView:f,isReadOnly:h}=$.useFluigRuntime(),{isReadOnly:y}=$.useSection(),w=i||f||h||y&&y(e),{field:b,visibleRows:j,selectedRowIds:p,isAllSelected:v,handle:N}=Le({name:e,control:x,defaultRowValue:d,isView:f,isReadOnly:!!w,filters:a}),R=c==="fixed";return t.jsxs("div",{className:`table-wrapper ${R?"table-fixed":"table-fluid"}`,children:[t.jsx("input",{type:"hidden",...b}),t.jsxs("div",{className:"header-handle",children:[t.jsx("h3",{children:s}),!w&&o&&t.jsxs("div",{className:"handle-actions",children:[t.jsxs("button",{type:"button",className:`btn ${p.length>0?"btn-danger":""}`,disabled:p.length===0,onClick:N.removeRows,children:["Remover (",p.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:[!w&&t.jsx("th",{style:{width:"50px"},children:t.jsx("input",{type:"checkbox",checked:v,onChange:m=>N.toggleSelectAll(m.target.checked)})}),n.map(m=>t.jsx("th",{style:m.width?{minWidth:R?m.width:"100%"}:{width:"max-content"},children:m.label},m.key))]})}),t.jsxs("tbody",{children:[j.map((m,r)=>t.jsxs("tr",{children:[!w&&t.jsx("td",{children:t.jsx("input",{type:"checkbox",checked:p.includes(m._uid),onChange:()=>N.toggleSelection(m._uid)})}),n.map(l=>t.jsx("td",{children:l.render?l.render.length<=1?l.render({row:m,index:r,updateRow:(g,P)=>N.updateCellValue(m._uid,g,P),isLocked:!!w,isView:!!f}):l.render(m,r,(g,P)=>N.updateCellValue(m._uid,g,P),!!w,!!f):m[l.key]},`${m._uid}-${l.key}`))]},m._uid)),j.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=>{const[s,n]=u.useState(null),{watch:d}=S.useFormContext(),i=d(e),c=u.useCallback(()=>{try{const a=window.top.__REACT_ATTACHMENT_BRIDGE__;if(a){const x=a.getAttachment(e);n(x||null)}else n(i?{name:i,documentId:0}:null)}catch{n(i?{name:i,documentId:0}:null)}},[e,i]);return u.useEffect(()=>{c();const o=setInterval(c,1500);return()=>clearInterval(o)},[c]),{attachment:s,sync:c}},Xe=({name:e,label:s,help:n,className:d="",showRemove:i=!0,showUpdate:c=!0})=>{const{isReadOnly:o}=$.useSection(),{isView:a}=$.useFluigRuntime(),{control:x}=S.useFormContext(),{field:f}=S.useController({name:e,control:x}),{attachment:h,sync:y}=ze(e),w=a||!!o(e),b=!!h,j=()=>{var m;try{const r=window.top;return{bridge:r.__REACT_ATTACHMENT_BRIDGE__,toast:(m=r.FLUIGC)==null?void 0:m.toast}}catch{return{bridge:null,toast:null}}},p=(m,r="info")=>{const{toast:l}=j();l?l({title:"Anexos: ",message:m,type:r}):console.log(`[LOCALHOST TOAST - ${r.toUpperCase()}]: ${m}`)},v=u.useCallback(()=>{if(w||b)return;const m=document.createElement("input");m.type="file",m.onchange=r=>{const l=r.target.files[0];if(!l)return;const{bridge:g}=j();g?g.upload(l,e,P=>{f.onChange(P.name),p(`Arquivo ${l.name} enviado com sucesso!`,"success"),y()}):(f.onChange(l.name),p(`[LOCALHOST] Arquivo "${l.name}" simulado na UI.`,"info"))},m.click()},[w,b,e,f,y]),N=()=>{if(!b)return;const{bridge:m}=j();m?m.view(e):p(`Visualização não disponível em localhost (${h.name})`,"warning")},R=m=>{m.stopPropagation();const{bridge:r}=j();window.confirm(`Deseja remover o anexo "${h.name}"?`)&&(r&&r.remove(e),f.onChange(""),p("Anexo removido.","danger"),y())};return t.jsxs("div",{className:`form-group ${d}`,style:{marginBottom:"15px"},children:[s&&t.jsx("label",{className:"control-label",children:s}),t.jsxs("div",{className:`attachment-container ${b?"has-file":""}`,style:{border:`1px ${b?"solid":"dashed"} ${b?"#5cb85c":"#ccc"}`,borderRadius:"4px",padding:"8px 15px",display:"flex",alignItems:"center",justifyContent:"space-between",backgroundColor:w?"#f5f5f5":b?"#f9fff9":"#fff",cursor:w&&!b?"default":"pointer",minHeight:"48px",transition:"all 0.3s ease"},onClick:b?N:v,children:[t.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px",flex:1,overflow:"hidden"},children:[t.jsx("i",{className:`fluigicon ${b?"fluigicon-file-pdf":"fluigicon-paperclip"} icon-sm`,style:{color:b?"#5cb85c":"#777"}}),t.jsx("span",{style:{fontSize:"14px",fontWeight:b?"500":"400",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",color:b?"#333":"#777"},children:b?h.name:n||"Anexar arquivo"})]}),t.jsxs("div",{style:{display:"flex",gap:"8px",marginLeft:"10px"},children:[b&&t.jsx("button",{type:"button",className:"btn btn-sm btn-link",title:"Visualizar",style:{padding:"0 5px",color:"#555"},children:t.jsx("i",{className:"fluigicon fluigicon-eye-open"})}),!w&&b&&t.jsxs(t.Fragment,{children:[c&&t.jsx("button",{type:"button",className:"btn btn-sm btn-link",title:"Substituir",style:{padding:"0 5px",color:"#31708f"},onClick:m=>{R(m),setTimeout(v,400)},children:t.jsx("i",{className:"fluigicon fluigicon-refresh"})}),i&&t.jsx("button",{type:"button",className:"btn btn-sm btn-link text-danger",title:"Remover",style:{padding:"0 5px"},onClick:R,children:t.jsx("i",{className:"fluigicon fluigicon-trash"})})]})]})]}),t.jsx("input",{type:"hidden",name:e,value:f.value||""})]})},Ue=u.memo(Xe);function Ye({items:e,time:s=0,showNavigation:n=!0,progressBar:d=!0}){const[i,c]=u.useState(0),[o,a]=u.useState(0),x=u.useRef(null),f=u.useRef(null),h=u.useCallback(()=>{c(p=>(p+1)%e.length),a(0)},[e.length]),y=u.useCallback(()=>{c(p=>(p-1+e.length)%e.length),a(0)},[e.length]);if(u.useEffect(()=>{if(s>0&&e.length>1){const v=100/s*100;x.current=setInterval(h,s),f.current=setInterval(()=>{a(N=>N>=100?0:N+v)},100)}return()=>{x.current&&clearInterval(x.current),f.current&&clearInterval(f.current)}},[s,h,e.length,i]),!e||e.length===0)return null;const w=e[i],b=typeof w=="string"?w:w.url,j=/\.(jpg|jpeg|png|gif|webp)$/i.test(b);return t.jsxs("div",{className:"carousel-root",children:[t.jsxs("div",{className:"carousel-viewport",children:[n&&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:j?t.jsx("img",{src:b,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:b,target:"_blank",rel:"noreferrer",className:"btn-open",children:"Abrir Arquivo"})]})}),e.length>1&&t.jsx("div",{className:"carousel-dots",children:e.map((p,v)=>t.jsx("div",{className:`dot ${v===i?"active":""}`,onClick:()=>{c(v),a(0)}},v))})]}),d&&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:n,onClose:d,content:i,footer:c,width:o}){const a=u.useCallback(x=>{x.key==="Escape"&&d()},[d]);return u.useEffect(()=>(s&&(document.addEventListener("keydown",a),n==null||n(),document.body.style.overflow="hidden"),()=>{document.removeEventListener("keydown",a),document.body.style.overflow="auto"}),[s,a,n]),s?t.jsx("div",{className:"modal-overlay",onClick:d,"aria-modal":"true",role:"dialog",children:t.jsxs("div",{style:{maxWidth:o},className:"modal-container",onClick:x=>x.stopPropagation(),children:[t.jsxs("div",{className:"modal-header",children:[t.jsx("h3",{children:e}),t.jsx("div",{className:"btn-close-modal",onClick:d,role:"button","aria-label":"Fechar modal",children:t.jsx("i",{className:"flaticon flaticon-close icon-md","aria-hidden":"true"})})]}),t.jsx("div",{className:"modal-content",children:i}),c&&t.jsx("div",{className:"modal-footer",children:c})]})}):null}function Qe({logo:e,childs:s,footer:n,contentExternal:d,bg:i,color:c,onSelect:o}){return t.jsxs("div",{className:"main-container dfea",children:[t.jsxs("div",{className:"sidebar-wrapper",style:{backgroundColor:`${i}`},children:[e&&t.jsx("div",{className:"sidebar-logo",children:t.jsx("img",{src:e,alt:"",width:"auto",height:"28px"})}),t.jsx("ul",{className:"sidebar-childs-content",children:s==null?void 0:s.map(a=>{var x,f;return a!=null&&a.options&&((x=a==null?void 0:a.options)==null?void 0:x.length)>0?t.jsx(t.Fragment,{children:t.jsxs("ul",{className:"sidebar-child sidebar-options-content",children:[t.jsxs("li",{className:"sidebar-child",onClick:()=>{var h;(h=a.action)==null||h.call(a),o==null||o(a.id)},style:{color:`${c}`},children:[a.icon&&t.jsx("i",{className:a.icon}),a.label]}),(f=a.options)==null?void 0:f.map(h=>t.jsx("li",{className:"sidebar-option",onClick:()=>{var y;(y=h.action)==null||y.call(h),o==null||o(h.id)},style:{color:`${c}`},children:h.label}))]})}):t.jsxs("li",{className:"sidebar-child",onClick:()=>{var h;(h=a.action)==null||h.call(a),o==null||o(a.id)},style:{color:`${c}`},children:[a.icon&&t.jsx("i",{className:a.icon}),a.label]})})}),n&&t.jsx("div",{className:"sidebar-footer",children:n})]}),t.jsx("div",{className:"sidebar-content-external",children:d})]})}exports.Attachment=Ue;exports.Carousel=Ye;exports.Checkbox=Z;exports.DatePicker=Ee;exports.Input=G;exports.Modal=Ge;exports.RadioBtn=ee;exports.Select=J;exports.Sidebar=Qe;exports.SimpleTable=Be;exports.StatusBadge=He;exports.TextArea=ne;
|