@wgalleti/primevue-components 0.3.7 → 0.3.8
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.
|
@@ -17,6 +17,7 @@ type __VLS_Props = {
|
|
|
17
17
|
cardFields?: number;
|
|
18
18
|
actionRail?: boolean;
|
|
19
19
|
contextMenu?: boolean;
|
|
20
|
+
showPrint?: boolean;
|
|
20
21
|
exportCsv?: boolean;
|
|
21
22
|
csvFilename?: string;
|
|
22
23
|
csvScope?: 'all' | 'page';
|
|
@@ -99,6 +100,7 @@ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {}, {}
|
|
|
99
100
|
defaultView: "table" | "cards";
|
|
100
101
|
cardFields: number;
|
|
101
102
|
actionRail: boolean;
|
|
103
|
+
showPrint: boolean;
|
|
102
104
|
exportCsv: boolean;
|
|
103
105
|
csvFilename: string;
|
|
104
106
|
csvScope: "all" | "page";
|
package/dist/index.cjs
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),ot=require("primevue/datatable"),ke=require("primevue/column"),U=require("primevue/button"),Z=require("primevue/inputtext"),$e=require("primevue/iconfield"),Ne=require("primevue/inputicon"),Ft=require("primevue/paginator"),Mt=require("primevue/contextmenu"),at=require("primevue/tag"),ge=require("dayjs"),nt=require("primevue/dialog"),He=require("primevue/inputnumber"),At=require("primevue/textarea"),Rt=require("primevue/select"),lt=require("primevue/autocomplete"),Ke=require("primevue/datepicker"),Lt=require("primevue/toggleswitch"),zt=require("primevue/colorpicker"),Tt=require("primevue/password"),It=require("primevue/usetoast"),Yt=require("primevue/useconfirm"),Ot=require("primevue/inputgroup"),Ge=require("primevue/inputgroupaddon"),Pe=require("primevue/skeleton"),rt=Symbol("w-axios"),De=Symbol("w-data-provider"),xe=Symbol("w-config");function jt(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Me={exports:{}},Wt=Me.exports,_e;function Ut(){return _e||(_e=1,(function(t,o){(function(a,l){t.exports=l()})(Wt,(function(){var a={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},l=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,r=/\d/,i=/\d\d/,s=/\d\d?/,v=/\d*[^-_:/,()\s\d]+/,d={},h=function(p){return(p=+p)+(p>68?1900:2e3)},N=function(p){return function(g){this[p]=+g}},V=[/[+-]\d\d:?(\d\d)?|Z/,function(p){(this.zone||(this.zone={})).offset=(function(g){if(!g||g==="Z")return 0;var k=g.match(/([+-]|\d\d)/g),w=60*k[1]+(+k[2]||0);return w===0?0:k[0]==="+"?-w:w})(p)}],A=function(p){var g=d[p];return g&&(g.indexOf?g:g.s.concat(g.f))},x=function(p,g){var k,w=d.meridiem;if(w){for(var R=1;R<=24;R+=1)if(p.indexOf(w(R,0,g))>-1){k=R>12;break}}else k=p===(g?"pm":"PM");return k},I={A:[v,function(p){this.afternoon=x(p,!1)}],a:[v,function(p){this.afternoon=x(p,!0)}],Q:[r,function(p){this.month=3*(p-1)+1}],S:[r,function(p){this.milliseconds=100*+p}],SS:[i,function(p){this.milliseconds=10*+p}],SSS:[/\d{3}/,function(p){this.milliseconds=+p}],s:[s,N("seconds")],ss:[s,N("seconds")],m:[s,N("minutes")],mm:[s,N("minutes")],H:[s,N("hours")],h:[s,N("hours")],HH:[s,N("hours")],hh:[s,N("hours")],D:[s,N("day")],DD:[i,N("day")],Do:[v,function(p){var g=d.ordinal,k=p.match(/\d+/);if(this.day=k[0],g)for(var w=1;w<=31;w+=1)g(w).replace(/\[|\]/g,"")===p&&(this.day=w)}],w:[s,N("week")],ww:[i,N("week")],M:[s,N("month")],MM:[i,N("month")],MMM:[v,function(p){var g=A("months"),k=(A("monthsShort")||g.map((function(w){return w.slice(0,3)}))).indexOf(p)+1;if(k<1)throw new Error;this.month=k%12||k}],MMMM:[v,function(p){var g=A("months").indexOf(p)+1;if(g<1)throw new Error;this.month=g%12||g}],Y:[/[+-]?\d+/,N("year")],YY:[i,function(p){this.year=h(p)}],YYYY:[/\d{4}/,N("year")],Z:V,ZZ:V};function Y(p){var g,k;g=p,k=d&&d.formats;for(var w=(p=g.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(K,H,W){var m=W&&W.toUpperCase();return H||k[W]||a[W]||k[m].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(C,c,n){return c||n.slice(1)}))}))).match(l),R=w.length,L=0;L<R;L+=1){var F=w[L],z=I[F],M=z&&z[0],O=z&&z[1];w[L]=O?{regex:M,parser:O}:F.replace(/^\[|\]$/g,"")}return function(K){for(var H={},W=0,m=0;W<R;W+=1){var C=w[W];if(typeof C=="string")m+=C.length;else{var c=C.regex,n=C.parser,f=K.slice(m),u=c.exec(f)[0];n.call(H,u),K=K.replace(u,"")}}return(function(E){var S=E.afternoon;if(S!==void 0){var T=E.hours;S?T<12&&(E.hours+=12):T===12&&(E.hours=0),delete E.afternoon}})(H),H}}return function(p,g,k){k.p.customParseFormat=!0,p&&p.parseTwoDigitYear&&(h=p.parseTwoDigitYear);var w=g.prototype,R=w.parse;w.parse=function(L){var F=L.date,z=L.utc,M=L.args;this.$u=z;var O=M[1];if(typeof O=="string"){var K=M[2]===!0,H=M[3]===!0,W=K||H,m=M[2];H&&(m=M[2]),d=this.$locale(),!K&&m&&(d=k.Ls[m]),this.$d=(function(f,u,E,S){try{if(["x","X"].indexOf(u)>-1)return new Date((u==="X"?1e3:1)*f);var T=Y(u)(f),G=T.year,X=T.month,be=T.day,we=T.hours,ae=T.minutes,ne=T.seconds,_=T.milliseconds,Q=T.zone,re=T.week,de=new Date,ie=be||(G||X?1:de.getDate()),me=G||de.getFullYear(),te=0;G&&!X||(te=X>0?X-1:de.getMonth());var se,fe=we||0,pe=ae||0,ve=ne||0,y=_||0;return Q?new Date(Date.UTC(me,te,ie,fe,pe,ve,y+60*Q.offset*1e3)):E?new Date(Date.UTC(me,te,ie,fe,pe,ve,y)):(se=new Date(me,te,ie,fe,pe,ve,y),re&&(se=S(se).week(re).toDate()),se)}catch{return new Date("")}})(F,O,z,k),this.init(),m&&m!==!0&&(this.$L=this.locale(m).$L),W&&F!=this.format(O)&&(this.$d=new Date("")),d={}}else if(O instanceof Array)for(var C=O.length,c=1;c<=C;c+=1){M[1]=O[c-1];var n=k.apply(this,M);if(n.isValid()){this.$d=n.$d,this.$L=n.$L,this.init();break}c===C&&(this.$d=new Date(""))}else R.call(this,L)}}}))})(Me)),Me.exports}var qt=Ut();const Ht=jt(qt);ge.extend(Ht);function Ie(t){if(!t)return null;if(t instanceof Date)return t;const o=ge(t,"YYYY-MM-DD",!0);return o.isValid()?o.toDate():ge(t).toDate()}function it(t){return t?typeof t=="string"?t:ge(t).format("YYYY-MM-DD"):null}function st(t){return t?typeof t=="string"?t:ge(t).toISOString():null}function Kt(t,o="DD/MM/YYYY"){return t?ge(t).format(o):"—"}function Gt(t){return t?ge(t).format("DD/MM/YYYY HH:mm"):"—"}function ue(t){return t.replace(/\D/g,"")}function ct(t){if(!t)return"—";const o=ue(t);return o.length!==11?t:o.replace(/^(\d{3})(\d{3})(\d{3})(\d{2})$/,"$1.$2.$3-$4")}function ut(t){if(!t)return"—";const o=ue(t);return o.length!==14?t:o.replace(/^(\d{2})(\d{3})(\d{3})(\d{4})(\d{2})$/,"$1.$2.$3/$4-$5")}function _t(t){if(!t)return"—";const o=ue(t);return o.length===11?ct(t):o.length===14?ut(t):t}function Jt(t){if(!t)return"—";const o=ue(t);return o.length===11?o.replace(/^(\d{2})(\d{5})(\d{4})$/,"($1) $2-$3"):o.length===10?o.replace(/^(\d{2})(\d{4})(\d{4})$/,"($1) $2-$3"):t}function dt(t){if(!t)return null;const o=ue(t);if(o.length!==11)return"CPF deve ter 11 dígitos.";if(/^(\d)\1{10}$/.test(o))return"CPF inválido.";let a=0;for(let s=0;s<9;s++)a+=parseInt(o[s])*(10-s);let l=a%11;const r=l<2?0:11-l;if(parseInt(o[9])!==r)return"CPF inválido.";a=0;for(let s=0;s<10;s++)a+=parseInt(o[s])*(11-s);l=a%11;const i=l<2?0:11-l;return parseInt(o[10])!==i?"CPF inválido.":null}function mt(t){if(!t)return null;const o=ue(t);if(o.length!==14)return"CNPJ deve ter 14 dígitos.";if(/^(\d)\1{13}$/.test(o))return"CNPJ inválido.";const a=[5,4,3,2,9,8,7,6,5,4,3,2];let l=0;for(let d=0;d<12;d++)l+=parseInt(o[d])*a[d];let r=l%11;const i=r<2?0:11-r;if(parseInt(o[12])!==i)return"CNPJ inválido.";const s=[6,5,4,3,2,9,8,7,6,5,4,3,2];l=0;for(let d=0;d<13;d++)l+=parseInt(o[d])*s[d];r=l%11;const v=r<2?0:11-r;return parseInt(o[13])!==v?"CNPJ inválido.":null}function Zt(t){if(!t)return null;const o=ue(t);return o.length===11?dt(t):o.length===14?mt(t):"CPF deve ter 11 dígitos ou CNPJ deve ter 14 dígitos."}const Ae=new Map;function Je(t,o){const a=`${t}-${o}`;let l=Ae.get(a);return l||(l=new Intl.NumberFormat(t,{minimumFractionDigits:o,maximumFractionDigits:o}),Ae.set(a,l)),l}function Xt(t,o){const a=`${t}-${o}`;let l=Ae.get(a);return l||(l=new Intl.NumberFormat(t,{style:"currency",currency:o}),Ae.set(a,l)),l}function Re(){const t=e.inject(xe,{defaultPageSize:20,dateFormat:"DD/MM/YYYY",dateTimeFormat:"DD/MM/YYYY HH:mm",locale:"pt-BR",currency:"BRL"}),o=(t==null?void 0:t.locale)??"pt-BR",a=(t==null?void 0:t.currency)??"BRL";function l(d){return d==null?"—":Xt(o,a).format(d)}function r(d,h=2){return d==null?"—":Je(o,h).format(d)}function i(d,h){return Kt(d,h??(t==null?void 0:t.dateFormat)??"DD/MM/YYYY")}function s(d){return Gt(d)}function v(d){return d==null?"—":`${Je(o,2).format(d)}%`}return{formatCurrency:l,formatNumber:r,formatDate:i,formatDateTime:s,formatPercent:v,formatCpf:ct,formatCnpj:ut,formatCpfCnpj:_t,formatTelefone:Jt,validateCpf:dt,validateCnpj:mt,validateCpfCnpj:Zt,parseDate:Ie,toDateString:it,toDateTimeString:st}}const Qt={key:0,class:"text-muted-color text-xs"},eo=["src","alt"],to={key:3,class:"text-muted-color tabular-nums text-[0.8125rem]"},oo={key:4,class:"text-muted-color tabular-nums text-[0.8125rem]"},ao={key:5,class:"font-semibold tabular-nums text-[0.8125rem]"},no={key:6,class:"font-semibold tabular-nums text-[0.8125rem]"},lo={key:7,class:"text-[0.8125rem]"},Se=e.defineComponent({__name:"WCrudColumnRenderer",props:{column:{},value:{},rowData:{}},setup(t){const{formatDate:o,formatDateTime:a,formatCurrency:l,formatNumber:r}=Re();return(i,s)=>t.value==null?(e.openBlock(),e.createElementBlock("span",Qt,"—")):t.column.type==="image"?(e.openBlock(),e.createElementBlock("img",{key:1,src:String(t.value),alt:t.column.header,class:"size-9 rounded-lg object-cover ring-1 ring-surface-200 dark:ring-surface-700"},null,8,eo)):t.column.type==="boolean"?(e.openBlock(),e.createBlock(e.unref(at),{key:2,value:t.column.tagValue?t.column.tagValue(t.value,t.rowData):t.value?"Ativo":"Inativo",severity:t.column.tagSeverity?t.column.tagSeverity(t.value,t.rowData):t.value?"success":"danger",class:"text-xs"},null,8,["value","severity"])):t.column.type==="date"?(e.openBlock(),e.createElementBlock("span",to,e.toDisplayString(e.unref(o)(t.value)),1)):t.column.type==="datetime"?(e.openBlock(),e.createElementBlock("span",oo,e.toDisplayString(e.unref(a)(t.value)),1)):t.column.type==="currency"?(e.openBlock(),e.createElementBlock("span",ao,e.toDisplayString(e.unref(l)(t.value)),1)):t.column.type==="number"?(e.openBlock(),e.createElementBlock("span",no,e.toDisplayString(t.column.format?t.column.format(t.value,t.rowData):e.unref(r)(t.value,t.column.decimals??0)),1)):(e.openBlock(),e.createElementBlock("span",lo,e.toDisplayString(t.column.format?t.column.format(t.value,t.rowData):t.value),1))}});var ro=Object.defineProperty,io=(t,o,a)=>o in t?ro(t,o,{enumerable:!0,configurable:!0,writable:!0,value:a}):t[o]=a,Ee=(t,o,a)=>io(t,typeof o!="symbol"?o+"":o,a);const Ze={"#":{pattern:/[0-9]/},"@":{pattern:/[a-zA-Z]/},"*":{pattern:/[a-zA-Z0-9]/}},Xe=(t,o,a)=>t.replaceAll(o,"").replace(a,".").replace("..",".").replace(/[^.\d]/g,""),Qe=(t,o,a)=>{var l;return new Intl.NumberFormat(((l=a.number)==null?void 0:l.locale)??"en",{minimumFractionDigits:t,maximumFractionDigits:o,roundingMode:"trunc"})},so=(t,o=!0,a)=>{var l,r,i,s;const v=((l=a.number)==null?void 0:l.unsigned)!==!0&&t.startsWith("-")?"-":"",d=((r=a.number)==null?void 0:r.fraction)??0;let h=Qe(0,d,a);const N=h.formatToParts(1000.12),V=((i=N.find(p=>p.type==="group"))==null?void 0:i.value)??" ",A=((s=N.find(p=>p.type==="decimal"))==null?void 0:s.value)??".",x=Xe(t,V,A);if(Number.isNaN(parseFloat(x)))return v;const I=x.split(".");if(I[1]!=null&&I[1].length>=1){const p=I[1].length<=d?I[1].length:d;h=Qe(p,d,a)}let Y=h.format(parseFloat(x));return o?d>0&&x.endsWith(".")&&!x.slice(0,-1).includes(".")&&(Y+=A):Y=Xe(Y,V,A),v+Y},ft=t=>JSON.parse(t.replaceAll("'",'"')),co=(t,o={})=>{const a={...o};t.dataset.maska!=null&&t.dataset.maska!==""&&(a.mask=uo(t.dataset.maska)),t.dataset.maskaEager!=null&&(a.eager=Fe(t.dataset.maskaEager)),t.dataset.maskaReversed!=null&&(a.reversed=Fe(t.dataset.maskaReversed)),t.dataset.maskaTokensReplace!=null&&(a.tokensReplace=Fe(t.dataset.maskaTokensReplace)),t.dataset.maskaTokens!=null&&(a.tokens=mo(t.dataset.maskaTokens));const l={};return t.dataset.maskaNumberLocale!=null&&(l.locale=t.dataset.maskaNumberLocale),t.dataset.maskaNumberFraction!=null&&(l.fraction=parseInt(t.dataset.maskaNumberFraction)),t.dataset.maskaNumberUnsigned!=null&&(l.unsigned=Fe(t.dataset.maskaNumberUnsigned)),(t.dataset.maskaNumber!=null||Object.values(l).length>0)&&(a.number=l),a},Fe=t=>t!==""?!!JSON.parse(t):!0,uo=t=>t.startsWith("[")&&t.endsWith("]")?ft(t):t,mo=t=>{if(t.startsWith("{")&&t.endsWith("}"))return ft(t);const o={};return t.split("|").forEach(a=>{const l=a.split(":");o[l[0]]={pattern:pt()?new RegExp(l[1],"u"):new RegExp(l[1]),optional:l[2]==="optional",multiple:l[2]==="multiple",repeated:l[2]==="repeated"}}),o},pt=()=>{try{return new RegExp("\\p{L}","u"),!0}catch{return!1}};class fo{constructor(o={}){Ee(this,"opts",{}),Ee(this,"memo",new Map);const a={...o};if(a.tokens!=null){a.tokens=a.tokensReplace?{...a.tokens}:{...Ze,...a.tokens};for(const l of Object.values(a.tokens))typeof l.pattern=="string"&&(l.pattern=pt()?new RegExp(l.pattern,"u"):new RegExp(l.pattern))}else a.tokens=Ze;Array.isArray(a.mask)&&(a.mask.length>1?a.mask=[...a.mask].sort((l,r)=>l.length-r.length):a.mask=a.mask[0]??""),a.mask===""&&(a.mask=null),this.opts=a}masked(o){return this.process(String(o),this.findMask(String(o)))}unmasked(o){return this.process(String(o),this.findMask(String(o)),!1)}isEager(){return this.opts.eager===!0}isReversed(){return this.opts.reversed===!0}completed(o){const a=this.findMask(String(o));if(this.opts.mask==null||a==null)return!1;const l=this.process(String(o),a).length;return typeof this.opts.mask=="string"?l>=this.opts.mask.length:l>=a.length}findMask(o){const a=this.opts.mask;if(a==null)return null;if(typeof a=="string")return a;if(typeof a=="function")return a(o);const l=this.process(o,a.slice(-1).pop()??"",!1);return a.find(r=>this.process(o,r,!1).length>=l.length)??""}escapeMask(o){const a=[],l=[];return o.split("").forEach((r,i)=>{r==="!"&&o[i-1]!=="!"?l.push(i-l.length):a.push(r)}),{mask:a.join(""),escaped:l}}process(o,a,l=!0){if(this.opts.number!=null)return so(o,l,this.opts);if(a==null)return o;const r=`v=${o},mr=${a},m=${l?1:0}`;if(this.memo.has(r))return this.memo.get(r);const{mask:i,escaped:s}=this.escapeMask(a),v=[],d=this.opts.tokens!=null?this.opts.tokens:{},h=this.isReversed()?-1:1,N=this.isReversed()?"unshift":"push",V=this.isReversed()?0:i.length-1,A=this.isReversed()?()=>p>-1&&g>-1:()=>p<i.length&&g<o.length,x=w=>!this.isReversed()&&w<=V||this.isReversed()&&w>=V;let I,Y=-1,p=this.isReversed()?i.length-1:0,g=this.isReversed()?o.length-1:0,k=!1;for(;A();){const w=i.charAt(p),R=d[w],L=(R==null?void 0:R.transform)!=null?R.transform(o.charAt(g)):o.charAt(g);if(!s.includes(p)&&R!=null?(L.match(R.pattern)!=null?(v[N](L),R.repeated?(Y===-1?Y=p:p===V&&p!==Y&&(p=Y-h),V===Y&&(p-=h)):R.multiple&&(k=!0,p-=h),p+=h):R.multiple?k&&(p+=h,g-=h,k=!1):L===I?I=void 0:R.optional&&(p+=h,g-=h),g+=h):(l&&!this.isEager()&&v[N](w),L===w&&!this.isEager()?g+=h:I=w,this.isEager()||(p+=h)),this.isEager())for(;x(p)&&(d[i.charAt(p)]==null||s.includes(p));){if(l){if(v[N](i.charAt(p)),o.charAt(g)===i.charAt(p)){p+=h,g+=h;continue}}else i.charAt(p)===o.charAt(g)&&(g+=h);p+=h}}return this.memo.set(r,v.join("")),this.memo.get(r)}}class po{constructor(o,a={}){Ee(this,"items",new Map),Ee(this,"eventAbortController"),Ee(this,"onInput",l=>{if(l instanceof CustomEvent&&l.type==="input"&&!l.isTrusted&&!l.bubbles)return;const r=l.target,i=this.items.get(r);if(i===void 0)return;const s="inputType"in l&&l.inputType.startsWith("delete"),v=i.isEager(),d=s&&v&&i.unmasked(r.value)===""?"":r.value;this.fixCursor(r,s,()=>this.setValue(r,d))}),this.options=a,this.eventAbortController=new AbortController,this.init(this.getInputs(o))}update(o={}){this.options={...o},this.init(Array.from(this.items.keys()))}updateValue(o){var a;o.value!==""&&o.value!==((a=this.processInput(o))==null?void 0:a.masked)&&this.setValue(o,o.value)}destroy(){this.eventAbortController.abort(),this.items.clear()}init(o){const a=this.getOptions(this.options);for(const l of o){if(!this.items.has(l)){const{signal:i}=this.eventAbortController;l.addEventListener("input",this.onInput,{capture:!0,signal:i})}const r=new fo(co(l,a));this.items.set(l,r),queueMicrotask(()=>this.updateValue(l)),l.selectionStart===null&&r.isEager()&&console.warn("Maska: input of `%s` type is not supported",l.type)}}getInputs(o){return typeof o=="string"?Array.from(document.querySelectorAll(o)):"length"in o?Array.from(o):[o]}getOptions(o){const{onMaska:a,preProcess:l,postProcess:r,...i}=o;return i}fixCursor(o,a,l){var r,i;const s=o.selectionStart,v=o.value;if(l(),s===null||s===v.length&&!a)return;const d=o.value,h=v.slice(0,s),N=d.slice(0,s),V=(r=this.processInput(o,h))==null?void 0:r.unmasked,A=(i=this.processInput(o,N))==null?void 0:i.unmasked;if(V===void 0||A===void 0)return;let x=s;h!==N&&(x+=a?d.length-v.length:V.length-A.length),o.setSelectionRange(x,x)}setValue(o,a){const l=this.processInput(o,a);l!==void 0&&(o.value=l.masked,this.options.onMaska!=null&&(Array.isArray(this.options.onMaska)?this.options.onMaska.forEach(r=>r(l)):this.options.onMaska(l)),o.dispatchEvent(new CustomEvent("maska",{detail:l})),o.dispatchEvent(new CustomEvent("input",{detail:l.masked})))}processInput(o,a){const l=this.items.get(o);if(l===void 0)return;let r=a??o.value;this.options.preProcess!=null&&(r=this.options.preProcess(r));let i=l.masked(r);return this.options.postProcess!=null&&(i=this.options.postProcess(i)),{masked:i,unmasked:l.unmasked(r),completed:l.completed(r)}}}const ze=new WeakMap,vo=(t,o)=>{if(t.arg==null||t.instance==null)return;const a="setup"in t.instance.$.type;t.arg in t.instance?t.instance[t.arg]=o:a&&console.warn("Maska: please expose `%s` using defineExpose",t.arg)},Te=(t,o)=>{var a;const l=t instanceof HTMLInputElement?t:t.querySelector("input");if(l==null||(l==null?void 0:l.type)==="file")return;let r={};if(o.value!=null&&(r=typeof o.value=="string"?{mask:o.value}:{...o.value}),o.arg!=null){const i=s=>{const v=o.modifiers.unmasked?s.unmasked:o.modifiers.completed?s.completed:s.masked;vo(o,v)};r.onMaska=r.onMaska==null?i:Array.isArray(r.onMaska)?[...r.onMaska,i]:[r.onMaska,i]}ze.has(l)?(a=ze.get(l))==null||a.update(r):ze.set(l,new po(l,r))},go={string:"text",integer:"number",decimal:"number",float:"number",boolean:"switch",choice:"select",fk:"fk",date:"date",datetime:"datetime",email:"email",url:"text",slug:"text",text:"textarea"};function vt(t){var l;const o=go[t.type]??"text",a={field:t.name,label:t.label,type:o,required:t.required??!1};return(t.type==="decimal"||t.type==="float")&&(a.minFractionDigits=2,a.maxFractionDigits=2),t.type==="boolean"&&(a.defaultValue=!1),t.type==="choice"&&((l=t.choices)!=null&&l.length)&&(a.options=t.choices.map(r=>({label:r.label,value:r.value}))),t.type==="fk"&&(a.endpoint=t.endpoint,t.option_label&&(a.optionLabel=t.option_label),t.option_value&&(a.optionValue=t.option_value)),a}function gt(t){return t.filter(o=>!o.read_only&&o.name!=="id").map(vt)}const ho={boolean:"boolean",date:"date",datetime:"datetime",decimal:"number",float:"number",integer:"number"};function ht(t){return{field:t.type==="fk"?`${t.name}_nome`:t.name,header:t.label,type:ho[t.type],sortable:!0}}function kt(t,o=6){return t.filter(a=>!a.read_only&&a.name!=="id").slice(0,o).map(ht)}function Ye(){const t=It.useToast();function o(i,s="Sucesso"){t.add({severity:"success",summary:s,detail:i,life:3e3})}function a(i,s="Erro"){t.add({severity:"error",summary:s,detail:i,life:5e3})}function l(i,s="Atenção"){t.add({severity:"warn",summary:s,detail:i,life:4e3})}function r(i,s="Info"){t.add({severity:"info",summary:s,detail:i,life:3e3})}return{success:o,error:a,warn:l,info:r}}function Oe(){const t=Yt.useConfirm();function o(l,r="Deseja realmente excluir este registro?"){t.require({message:r,header:"Confirmar Exclusão",icon:"pi pi-trash",rejectLabel:"Cancelar",rejectProps:{severity:"secondary",text:!0},acceptLabel:"Excluir",acceptProps:{severity:"danger"},accept:l})}function a(l,r,i="Confirmação"){t.require({message:l,header:i,icon:"pi pi-question-circle",rejectLabel:"Cancelar",rejectProps:{severity:"secondary",text:!0},acceptLabel:"Confirmar",accept:r})}return{confirmDelete:o,confirmAction:a}}function ko(t){return t.replace(/_/g," ").replace(/^\w/,o=>o.toUpperCase())}function yo(t){if(typeof t=="string")return t;if(Array.isArray(t)){const o=t.filter(a=>typeof a=="string");return o.length>0?o.join(" "):null}if(typeof t=="object"&&t!==null){const o=t;if(Array.isArray(o.non_field_errors)&&o.non_field_errors.length>0)return o.non_field_errors.filter(l=>typeof l=="string").join(" ");const a=[];for(const[l,r]of Object.entries(o)){if(l==="non_field_errors")continue;const i=ko(l);if(Array.isArray(r)){const s=r.filter(v=>typeof v=="string");s.length>0&&a.push(`${i}: ${s.join(" ")}`)}else typeof r=="string"&&a.push(`${i}: ${r}`)}return a.length>0?a.join(`
|
|
2
|
-
`):null}return null}function ye(t,o="Erro inesperado"){var i;if(!t||typeof t!="object")return o;const a=t,l=(i=a.response)==null?void 0:i.data;if(!l||typeof l!="object")return a.message||o;const r=l.detail??l;return yo(r)||o}function bo(){return{extractApiError:ye}}const wo={class:"w-autocompletefk"},Bo=["disabled"],Co={class:"w-autocompletefk-toolbar"},Vo={class:"w-autocompletefk-toolbar-actions"},Eo={class:"flex items-center justify-end gap-1"},$o={class:"w-autocompletefk-footer"},je=e.defineComponent({__name:"WAutoCompleteFK",props:{modelValue:{},endpoint:{},endpointParams:{},optionLabel:{default:"nome"},optionValue:{default:"id"},placeholder:{default:"Buscar..."},disabled:{type:Boolean,default:!1},showClear:{type:Boolean,default:!0},forceSelection:{type:Boolean,default:!0},columns:{},minLength:{default:0},dialogHeader:{},canCreate:{type:Boolean,default:void 0},canEdit:{type:Boolean,default:void 0},canDelete:{type:Boolean,default:void 0},crudFields:{},crudColumns:{},dialogWidth:{default:"480px"}},emits:["update:modelValue"],setup(t,{emit:o}){const a=t,l=o,r=e.inject(De);if(!r)throw new Error("[wPrimeVueComponents] dataProvider não encontrado. Registre o WPrimeVuePlugin.");const i=r,s=Ye(),{confirmDelete:v}=Oe(),d=e.ref(null),h=e.ref([]),N=e.ref(!1);let V=null;async function A(y){try{const B=await i.get(a.endpoint,y);d.value=B.data}catch{d.value=null}}async function x(y){N.value=!0;try{const B={page_size:20,...a.endpointParams};y&&(B.search=y);const q=await i.list(a.endpoint,B);h.value=q.data}catch{h.value=[]}finally{N.value=!1}}function I(y){const B=y.query||"";if(B.length<a.minLength){h.value=[];return}V&&clearTimeout(V),V=setTimeout(()=>x(B),300)}function Y(y){d.value=y.value,l("update:modelValue",y.value)}function p(){d.value=null,l("update:modelValue",null)}e.watch(()=>a.modelValue,async y=>{if(y!=null){if(typeof y=="object"&&y!==null&&a.optionLabel in y){d.value=y;return}(!d.value||d.value[a.optionValue]!==y)&&await A(y)}else d.value=null},{immediate:!0});const g=e.ref(!1),k=e.ref([]),w=e.ref(!1),R=e.ref(""),L=e.ref(1),F=e.ref(15),z=e.ref(0),M=e.ref(null),O=e.ref(null),K=e.ref(0);let H=null;const W=e.ref([]),m=e.computed(()=>{var y;return(y=a.crudFields)!=null&&y.length?!0:W.value.length>0}),C=e.computed(()=>a.canCreate??m.value),c=e.computed(()=>a.canEdit??m.value),n=e.computed(()=>a.canDelete??m.value),f=e.computed(()=>c.value||n.value),u=e.computed(()=>{var y;return(y=a.crudFields)!=null&&y.length?a.crudFields:gt(W.value)}),E=e.computed(()=>{var y,B;return(y=a.crudColumns)!=null&&y.length?a.crudColumns:(B=a.columns)!=null&&B.length?a.columns.map(q=>({field:q.field,header:q.header,sortable:!0})):W.value.length?kt(W.value):[{field:a.optionLabel,header:a.optionLabel,sortable:!0}]});async function S(){var y,B,q;w.value=!0;try{const P={page:L.value,page_size:F.value,...a.endpointParams};R.value&&(P.search=R.value),O.value&&K.value!==0&&(P.ordering=K.value===-1?`-${O.value}`:O.value);const J=await i.list(a.endpoint,P);k.value=J.data,z.value=J.rows,(y=J.extras)!=null&&y.fields&&!((B=a.columns)!=null&&B.length)&&!((q=a.crudFields)!=null&&q.length)&&(W.value=J.extras.fields)}catch{k.value=[],z.value=0}finally{w.value=!1}}function T(){a.disabled||(R.value="",L.value=1,O.value=null,K.value=0,M.value=null,g.value=!0,S())}function G(y){L.value=y.page+1,F.value=y.rows,S()}function X(y){O.value=y.sortField??null,K.value=y.sortOrder??0,L.value=1,S()}function be(){M.value&&(d.value=M.value,l("update:modelValue",M.value),g.value=!1)}function we(y){d.value=y.data,l("update:modelValue",y.data),g.value=!1}e.watch(R,()=>{H&&clearTimeout(H),H=setTimeout(()=>{L.value=1,S()},300)});const ae=e.ref(!1),ne=e.ref(!1),_=e.ref(null),Q=e.reactive({}),re=e.computed(()=>_.value!==null),de=e.computed(()=>re.value?"Editar Registro":"Novo Registro");function ie(){const y={};for(const B of u.value)y[B.field]=B.defaultValue!==void 0?typeof B.defaultValue=="function"?B.defaultValue():B.defaultValue:null;return y}function me(){const y=ie();for(const B of Object.keys(Q))delete Q[B];for(const[B,q]of Object.entries(y))Q[B]=q}function te(){_.value=null,me(),ae.value=!0}function se(y){_.value=y;for(const B of u.value)Q[B.field]=y[B.field]!==void 0?y[B.field]:null;ae.value=!0}function fe(y,B){Q[y]=B}async function pe(){ne.value=!0;try{const y={...Q};for(const q of u.value){const P=y[q.field];if(q.type==="fk"&&P!==null&&typeof P=="object"){const J=q.optionValue||"id";y[q.field]=P[J]??P}}let B;if(re.value&&_.value){const q=_.value[a.optionValue];B=await i.update(a.endpoint,q,y);const P=k.value.findIndex(J=>J[a.optionValue]===q);P!==-1&&(k.value[P]=B.data),s.success("Registro atualizado com sucesso")}else B=await i.create(a.endpoint,y),k.value.unshift(B.data),z.value++,s.success("Registro criado com sucesso");ae.value=!1,_.value=null,M.value=B.data}catch(y){s.error(ye(y,"Erro ao salvar registro"))}finally{ne.value=!1}}function ve(y){v(async()=>{try{const B=y[a.optionValue];await i.delete(a.endpoint,B);const q=k.value.findIndex(P=>P[a.optionValue]===B);q!==-1&&(k.value.splice(q,1),z.value--),d.value&&d.value[a.optionValue]===B&&(d.value=null,l("update:modelValue",null)),M.value&&M.value[a.optionValue]===B&&(M.value=null),s.success("Registro excluído com sucesso")}catch(B){s.error(ye(B,"Erro ao excluir registro"))}})}return(y,B)=>{const q=e.resolveDirective("tooltip");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",wo,[e.createVNode(e.unref(lt),{"model-value":d.value,suggestions:h.value,"option-label":t.optionLabel,placeholder:t.placeholder,disabled:t.disabled,"force-selection":t.forceSelection,loading:N.value,fluid:"",onComplete:I,onItemSelect:Y,onClear:p},null,8,["model-value","suggestions","option-label","placeholder","disabled","force-selection","loading"]),e.withDirectives((e.openBlock(),e.createElementBlock("button",{type:"button",disabled:t.disabled,class:"w-autocompletefk-trigger",onClick:T},[...B[6]||(B[6]=[e.createElementVNode("i",{class:"pi pi-search"},null,-1)])],8,Bo)),[[q,"Pesquisar",void 0,{top:!0}]])]),e.createVNode(e.unref(nt),{visible:g.value,"onUpdate:visible":B[4]||(B[4]=P=>g.value=P),header:t.dialogHeader||"Pesquisar",style:{width:"80vw"},modal:"",draggable:!1,class:"w-autocompletefk-dialog"},{footer:e.withCtx(()=>[e.createElementVNode("div",$o,[e.createVNode(e.unref(U),{label:"Cancelar",severity:"secondary",text:"",onClick:B[3]||(B[3]=P=>g.value=!1)}),e.createVNode(e.unref(U),{label:"Selecionar",icon:"pi pi-check",disabled:!M.value,onClick:be},null,8,["disabled"])])]),default:e.withCtx(()=>[e.createElementVNode("div",Co,[e.createVNode(e.unref($e),{class:"w-autocompletefk-toolbar-search"},{default:e.withCtx(()=>[e.createVNode(e.unref(Ne),{class:"pi pi-search"}),e.createVNode(e.unref(Z),{modelValue:R.value,"onUpdate:modelValue":B[0]||(B[0]=P=>R.value=P),placeholder:"Pesquisar...",class:"w-full"},null,8,["modelValue"])]),_:1}),e.createElementVNode("div",Vo,[C.value?(e.openBlock(),e.createBlock(e.unref(U),{key:0,label:"Novo",icon:"pi pi-plus",size:"small",onClick:te})):e.createCommentVNode("",!0)])]),e.createVNode(e.unref(ot),{selection:M.value,"onUpdate:selection":B[1]||(B[1]=P=>M.value=P),value:k.value,loading:w.value,paginator:"",lazy:"","striped-rows":"","removable-sort":"",size:"small",rows:F.value,"total-records":z.value,"sort-field":O.value??void 0,"sort-order":K.value,"selection-mode":"single","data-key":t.optionValue,onPage:G,onSort:B[2]||(B[2]=P=>X({sortField:P.sortField,sortOrder:P.sortOrder})),onRowDblclick:we},{empty:e.withCtx(()=>[...B[7]||(B[7]=[e.createElementVNode("div",{class:"w-autocompletefk-empty"},"Nenhum registro encontrado",-1)])]),default:e.withCtx(()=>[e.createVNode(e.unref(ke),{"selection-mode":"single","header-style":"width: 3rem"}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(E.value,P=>(e.openBlock(),e.createBlock(e.unref(ke),{key:P.field,field:P.field,header:P.header,sortable:P.sortable??!0,style:e.normalizeStyle(P.style)},{body:e.withCtx(({data:J})=>[P.type?(e.openBlock(),e.createBlock(Se,{key:0,column:P,value:J[P.field],"row-data":J},null,8,["column","value","row-data"])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(J[P.field]),1)],64))]),_:2},1032,["field","header","sortable","style"]))),128)),f.value?(e.openBlock(),e.createBlock(e.unref(ke),{key:0,header:"",style:{width:"6rem"}},{body:e.withCtx(({data:P})=>[e.createElementVNode("div",Eo,[c.value?e.withDirectives((e.openBlock(),e.createBlock(e.unref(U),{key:0,icon:"pi pi-pencil",text:"",rounded:"",size:"small",onClick:J=>se(P)},null,8,["onClick"])),[[q,"Editar",void 0,{top:!0}]]):e.createCommentVNode("",!0),n.value?e.withDirectives((e.openBlock(),e.createBlock(e.unref(U),{key:1,icon:"pi pi-trash",text:"",rounded:"",size:"small",severity:"danger",onClick:J=>ve(P)},null,8,["onClick"])),[[q,"Excluir",void 0,{top:!0}]]):e.createCommentVNode("",!0)])]),_:1})):e.createCommentVNode("",!0)]),_:1},8,["selection","value","loading","rows","total-records","sort-field","sort-order","data-key"])]),_:1},8,["visible","header"]),m.value?(e.openBlock(),e.createBlock(Le,{key:0,visible:ae.value,title:de.value,fields:u.value,"form-data":Q,"is-editing":re.value,saving:ne.value,width:t.dialogWidth,"onUpdate:visible":B[5]||(B[5]=P=>{ae.value=P,P||(_.value=null)}),"onUpdate:field":fe,onSave:pe},null,8,["visible","title","fields","form-data","is-editing","saving","width"])):e.createCommentVNode("",!0)],64)}}}),We=e.defineComponent({__name:"WMoneyInput",props:{modelValue:{},decimals:{default:2},currency:{type:Boolean,default:!1},prefix:{},suffix:{},locale:{default:"pt-BR"},disabled:{type:Boolean,default:!1},placeholder:{},invalid:{type:Boolean}},emits:["update:modelValue"],setup(t,{emit:o}){const a=t,l=o,r=e.computed(()=>a.prefix??(a.currency?"R$":void 0)),i=e.computed(()=>!!r.value||!!a.suffix),s=e.computed(()=>{const d=a.modelValue;return d==null||Number.isNaN(d)?"":new Intl.NumberFormat(a.locale,{minimumFractionDigits:a.decimals,maximumFractionDigits:a.decimals}).format(d)});function v(d){const h=d.target.value.replace(/\D/g,"");if(!h){l("update:modelValue",null);return}const N=Number(h)/Math.pow(10,a.decimals);l("update:modelValue",N)}return(d,h)=>i.value?(e.openBlock(),e.createBlock(e.unref(Ot),{key:0,class:"w-money-input"},{default:e.withCtx(()=>[r.value?(e.openBlock(),e.createBlock(e.unref(Ge),{key:0},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(r.value),1)]),_:1})):e.createCommentVNode("",!0),e.createVNode(e.unref(Z),{"model-value":s.value,inputmode:"numeric",class:"w-money-input__field",placeholder:t.placeholder,disabled:t.disabled,invalid:t.invalid,onInput:v},null,8,["model-value","placeholder","disabled","invalid"]),t.suffix?(e.openBlock(),e.createBlock(e.unref(Ge),{key:1},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.suffix),1)]),_:1})):e.createCommentVNode("",!0)]),_:1})):(e.openBlock(),e.createBlock(e.unref(Z),{key:1,"model-value":s.value,inputmode:"numeric",fluid:"",class:"w-money-input__field",placeholder:t.placeholder,disabled:t.disabled,invalid:t.invalid,onInput:v},null,8,["model-value","placeholder","disabled","invalid"]))}}),No={class:"w-transfer__pane"},So={class:"w-transfer__head"},Do={class:"w-transfer__count"},xo={class:"w-transfer__list"},Po=["onClick"],Fo={key:0,class:"w-transfer__empty"},Mo={class:"w-transfer__controls"},Ao={class:"w-transfer__pane"},Ro={class:"w-transfer__head"},Lo={class:"w-transfer__count"},zo={class:"w-transfer__list"},To=["onClick"],Io={key:0,class:"w-transfer__empty"},Ue=e.defineComponent({__name:"WTransferList",props:{source:{},selected:{default:()=>[]},trackBy:{default:"id"},optionLabel:{default:"nome"},searchFields:{},disabled:{type:Boolean}},emits:["update:selected"],setup(t,{emit:o}){const a=t,l=o,r=e.ref(""),i=e.ref(""),s=e.computed(()=>new Set(a.selected)),v=e.computed(()=>a.searchFields??[a.optionLabel]);function d(g){return g[a.trackBy]}function h(g){return String(g[a.optionLabel]??"")}function N(g,k){if(!k)return!0;const w=k.toLowerCase();return v.value.some(R=>String(g[R]??"").toLowerCase().includes(w))}const V=e.computed(()=>a.source.filter(g=>!s.value.has(d(g))&&N(g,r.value))),A=e.computed(()=>a.source.filter(g=>s.value.has(d(g))&&N(g,i.value)));function x(g){a.disabled||l("update:selected",[...a.selected,d(g)])}function I(g){if(a.disabled)return;const k=d(g);l("update:selected",a.selected.filter(w=>w!==k))}function Y(){a.disabled||l("update:selected",a.source.map(d))}function p(){a.disabled||l("update:selected",[])}return(g,k)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["w-transfer",{"w-transfer--disabled":t.disabled}])},[e.createElementVNode("div",No,[e.createElementVNode("div",So,[k[2]||(k[2]=e.createElementVNode("span",{class:"w-transfer__title"},"Disponíveis",-1)),e.createElementVNode("span",Do,e.toDisplayString(V.value.length),1)]),e.createVNode(e.unref($e),{class:"w-transfer__search"},{default:e.withCtx(()=>[e.createVNode(e.unref(Ne),{class:"pi pi-search"}),e.createVNode(e.unref(Z),{modelValue:r.value,"onUpdate:modelValue":k[0]||(k[0]=w=>r.value=w),placeholder:"Buscar...",fluid:""},null,8,["modelValue"])]),_:1}),e.createElementVNode("ul",xo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.value,w=>(e.openBlock(),e.createElementBlock("li",{key:`a-${d(w)}`,class:"w-transfer__item",onClick:R=>x(w)},[e.createElementVNode("span",null,e.toDisplayString(h(w)),1),k[3]||(k[3]=e.createElementVNode("i",{class:"pi pi-angle-right"},null,-1))],8,Po))),128)),V.value.length?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("li",Fo,"Nenhum item"))])]),e.createElementVNode("div",Mo,[e.createVNode(e.unref(U),{type:"button",icon:"pi pi-angle-double-right",text:"",rounded:"",disabled:t.disabled||!V.value.length,onClick:Y},null,8,["disabled"]),e.createVNode(e.unref(U),{type:"button",icon:"pi pi-angle-double-left",text:"",rounded:"",disabled:t.disabled||!t.selected.length,onClick:p},null,8,["disabled"])]),e.createElementVNode("div",Ao,[e.createElementVNode("div",Ro,[k[4]||(k[4]=e.createElementVNode("span",{class:"w-transfer__title"},"Selecionados",-1)),e.createElementVNode("span",Lo,e.toDisplayString(A.value.length),1)]),e.createVNode(e.unref($e),{class:"w-transfer__search"},{default:e.withCtx(()=>[e.createVNode(e.unref(Ne),{class:"pi pi-search"}),e.createVNode(e.unref(Z),{modelValue:i.value,"onUpdate:modelValue":k[1]||(k[1]=w=>i.value=w),placeholder:"Buscar...",fluid:""},null,8,["modelValue"])]),_:1}),e.createElementVNode("ul",zo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(A.value,w=>(e.openBlock(),e.createElementBlock("li",{key:`s-${d(w)}`,class:"w-transfer__item",onClick:R=>I(w)},[k[5]||(k[5]=e.createElementVNode("i",{class:"pi pi-angle-left"},null,-1)),e.createElementVNode("span",null,e.toDisplayString(h(w)),1)],8,To))),128)),A.value.length?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("li",Io,"Nenhum item"))])])],2))}});async function Yo(t){const o=t.replace(/\D/g,"");if(o.length!==8)return null;try{const a=await fetch(`https://viacep.com.br/ws/${o}/json/`);if(!a.ok)return null;const l=await a.json();return l.erro?null:l}catch{return null}}const Oo={class:"w-crud-form"},jo={key:0,class:"w-crud-form-group-header"},Wo={class:"w-crud-form-group-title"},Uo={key:0,class:"w-crud-form-group-desc"},qo={class:"w-crud-form-fields"},Ho={key:0,class:"w-crud-form-switch"},Ko={class:"w-crud-form-switch-label"},Go={key:1,class:"w-crud-form-col-full"},_o={class:"w-crud-form-label"},Jo={key:0,class:"w-crud-form-required"},Zo={class:"w-crud-form-color-row"},Xo={key:2,class:"w-crud-form-col-full"},Qo={class:"w-crud-form-label"},ea=["accept","disabled","onChange"],ta={key:3,class:"w-crud-form-col-full"},oa={class:"w-crud-form-label"},aa={key:0,class:"w-crud-form-required"},na={class:"w-crud-form-label"},la={key:0,class:"w-crud-form-required"},ra={key:1,class:"pi pi-spin pi-spinner w-crud-form-cep-spinner"},ia={key:16,class:"w-crud-form-cep-error"},sa={key:17,class:"w-crud-form-error"},yt=e.defineComponent({__name:"WFormRenderer",props:{fields:{},formData:{},isEditing:{type:Boolean},disabled:{type:Boolean,default:!1}},emits:["update:field"],setup(t,{expose:o,emit:a}){const l=t,r=a,i=e.reactive({}),s=e.reactive({}),v=e.reactive({}),d=e.reactive({});function h(m,C){const c=C.target.value,n=c.replace(/\D/g,"");r("update:field",m.field,c),v[m.field]=null,d[m.field]&&(clearTimeout(d[m.field]),d[m.field]=null),n.length===8&&(d[m.field]=setTimeout(async()=>{s[m.field]=!0,v[m.field]=null;try{const f=await Yo(n);if(!f)v[m.field]="CEP não encontrado. Preencha os campos manualmente.";else{const u=m.cepFields||{},E=Object.keys(u);for(const S of E){const T=u[S];if(!T)continue;const G=l.formData[T];(G==null||G==="")&&r("update:field",T,f[S]??"")}}}finally{s[m.field]=!1}},400))}const N=e.computed(()=>l.fields.filter(m=>m.visible===void 0||m.visible===!0?!0:typeof m.visible=="function"?m.visible(l.formData,l.isEditing):m.visible));function V(m){return l.disabled||m.disabledOnEdit&&l.isEditing?!0:typeof m.disabled=="function"?m.disabled(l.formData,l.isEditing):!!m.disabled}function A(m){return e.isRef(m)?m.value:m}const x=e.computed(()=>{const m=l.isEditing?"edit":"create",C=l.fields.find(n=>n.autofocus===!0||n.autofocus===m);if(C)return C.field;const c=N.value.find(n=>!(n.type==="switch"||n.type==="fk"||n.type==="select"||n.type==="image"||n.disabled===!0||n.disabledOnEdit&&l.isEditing));return(c==null?void 0:c.field)??null});function I(m){return m.field===x.value}function Y(m){if(m)return m.replace(/9/g,"#").replace(/a/g,"S").replace(/\*/g,"X")}function p(m){if(!m)return"";const C=String(m).replace(/\D/g,"").slice(0,14);return C.length<=11?C.replace(/(\d{3})(\d)/,"$1.$2").replace(/(\d{3})(\d)/,"$1.$2").replace(/(\d{3})(\d{1,2})$/,"$1-$2"):C.replace(/(\d{2})(\d)/,"$1.$2").replace(/(\d{3})(\d)/,"$1.$2").replace(/(\d{3})(\d)/,"$1/$2").replace(/(\d{4})(\d{1,2})$/,"$1-$2")}function g(m,C){const c=C.target.value.replace(/\D/g,"").slice(0,14);r("update:field",m,c)}const k=e.reactive({});function w(m){const C=l.formData[m.field];if(C==null)return null;const c=m.optionValue||"value";return(A(m.options)||[]).find(f=>f[c]===C)??null}function R(m){return k[m.field]||[]}function L(m,C){const c=(C.query||"").toLowerCase(),n=A(m.options)||[],f=m.optionLabel||"label";k[m.field]=n.filter(u=>String(u[f]||"").toLowerCase().includes(c))}function F(m,C){const c=m.optionValue||"value";r("update:field",m.field,C.value[c])}function z(m){const C=l.formData[m.field];return C?String(C).replace("#",""):"FFFFFF"}function M(m,C){r("update:field",m.field,`#${C}`)}function O(m){if(typeof m.validate=="function"){const C=m.validate(l.formData[m.field]);i[m.field]=C||null}}function K(){const m=[];for(const C of l.fields)if(typeof C.validate=="function"){const c=C.validate(l.formData[C.field]);i[C.field]=c||null,c&&m.push(c)}return m}function H(){Object.keys(i).forEach(m=>delete i[m])}const W=e.computed(()=>{var n,f,u,E;const m=new Map,C=[],c=new Map;for(const S of N.value){const T=((n=S.fieldGroup)==null?void 0:n.id)??"__default__";m.has(T)||(m.set(T,{id:T,title:(f=S.fieldGroup)==null?void 0:f.title,description:(u=S.fieldGroup)==null?void 0:u.description,fields:[]}),C.push(T),((E=S.fieldGroup)==null?void 0:E.order)!=null&&c.set(T,S.fieldGroup.order)),m.get(T).fields.push(S)}return C.slice().sort((S,T)=>{const G=c.get(S),X=c.get(T);return G!=null&&X!=null?G-X:G!=null?-1:X!=null?1:C.indexOf(S)-C.indexOf(T)}).map(S=>m.get(S))});return o({validateAll:K,clearErrors:H}),(m,C)=>(e.openBlock(),e.createElementBlock("div",Oo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(W.value,c=>(e.openBlock(),e.createElementBlock("div",{key:c.id,class:"w-crud-form-group"},[c.title?(e.openBlock(),e.createElementBlock("div",jo,[e.createElementVNode("h3",Wo,e.toDisplayString(c.title),1),c.description?(e.openBlock(),e.createElementBlock("p",Uo,e.toDisplayString(c.description),1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",qo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.fields,n=>e.renderSlot(m.$slots,`field-${n.field}`,{key:n.field,field:n,formData:t.formData,isEditing:t.isEditing,setFormField:(f,u)=>r("update:field",f,u)},()=>[n.type==="switch"?(e.openBlock(),e.createElementBlock("div",Ho,[e.createVNode(e.unref(Lt),{"model-value":t.formData[n.field],disabled:V(n),"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","disabled","onUpdate:modelValue"]),e.createElementVNode("label",Ko,e.toDisplayString(n.switchLabel||n.label),1)])):n.type==="color"?(e.openBlock(),e.createElementBlock("div",Go,[e.createElementVNode("label",_o,[e.createTextVNode(e.toDisplayString(n.label)+" ",1),n.required?(e.openBlock(),e.createElementBlock("span",Jo,"*")):e.createCommentVNode("",!0)]),e.createElementVNode("div",Zo,[e.createVNode(e.unref(zt),{"model-value":z(n),disabled:V(n),"onUpdate:modelValue":f=>M(n,f)},null,8,["model-value","disabled","onUpdate:modelValue"]),e.createVNode(e.unref(Z),{"model-value":t.formData[n.field],class:"w-28",maxlength:"7",placeholder:"#000000",disabled:V(n),"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","disabled","onUpdate:modelValue"])])])):n.type==="image"?(e.openBlock(),e.createElementBlock("div",Xo,[e.createElementVNode("label",Qo,e.toDisplayString(n.label),1),e.renderSlot(m.$slots,`image-${n.field}`,{field:n,formData:t.formData},()=>[e.createElementVNode("input",{type:"file",accept:n.accept||"image/*",disabled:V(n),onChange:f=>{var E;const u=((E=f.target.files)==null?void 0:E[0])??null;r("update:field",n.field,u)}},null,40,ea)])])):n.type==="transfer"?(e.openBlock(),e.createElementBlock("div",ta,[e.createElementVNode("label",oa,[e.createTextVNode(e.toDisplayString(n.label)+" ",1),n.required?(e.openBlock(),e.createElementBlock("span",aa,"*")):e.createCommentVNode("",!0)]),e.createVNode(Ue,{source:A(n.options)||[],selected:t.formData[n.field]||[],"track-by":n.optionValue||"id","option-label":n.optionLabel||"nome","search-fields":n.searchFields,disabled:V(n),"onUpdate:selected":f=>r("update:field",n.field,f)},null,8,["source","selected","track-by","option-label","search-fields","disabled","onUpdate:selected"])])):(e.openBlock(),e.createElementBlock("div",{key:4,class:e.normalizeClass(n.colSpan===.5?"w-crud-form-col-half":"w-crud-form-col-full")},[e.createElementVNode("label",na,[e.createTextVNode(e.toDisplayString(n.label)+" ",1),n.required?(e.openBlock(),e.createElementBlock("span",la,"*")):e.createCommentVNode("",!0),s[n.field]?(e.openBlock(),e.createElementBlock("i",ra)):e.createCommentVNode("",!0)]),(!n.type||n.type==="text")&&n.mask?e.withDirectives((e.openBlock(),e.createBlock(e.unref(Z),{key:0,"model-value":t.formData[n.field],fluid:"",autofocus:I(n)||void 0,placeholder:n.placeholder,disabled:V(n),"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","autofocus","placeholder","disabled","onUpdate:modelValue"])),[[e.unref(Te),{mask:Y(n.mask)}]]):!n.type||n.type==="text"?(e.openBlock(),e.createBlock(e.unref(Z),{key:1,"model-value":t.formData[n.field],fluid:"",autofocus:I(n)||void 0,placeholder:n.placeholder,disabled:V(n),"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","autofocus","placeholder","disabled","onUpdate:modelValue"])):n.type==="email"?(e.openBlock(),e.createBlock(e.unref(Z),{key:2,"model-value":t.formData[n.field],type:"email",fluid:"",autofocus:I(n)||void 0,placeholder:n.placeholder,disabled:V(n),"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","autofocus","placeholder","disabled","onUpdate:modelValue"])):n.type==="password"?(e.openBlock(),e.createBlock(e.unref(Tt),{key:3,"model-value":t.formData[n.field],fluid:"","toggle-mask":"",feedback:n.feedback!==!1,placeholder:n.placeholder,disabled:V(n),"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","feedback","placeholder","disabled","onUpdate:modelValue"])):n.type==="number"?(e.openBlock(),e.createBlock(e.unref(He),{key:4,"model-value":t.formData[n.field],fluid:"",locale:"pt-BR",min:n.min,max:n.max,"min-fraction-digits":n.minFractionDigits,"max-fraction-digits":n.maxFractionDigits,suffix:n.suffix,prefix:n.prefix,placeholder:n.placeholder,disabled:V(n),"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","min","max","min-fraction-digits","max-fraction-digits","suffix","prefix","placeholder","disabled","onUpdate:modelValue"])):n.type==="currency"&&n.fillFromRight?(e.openBlock(),e.createBlock(We,{key:5,"model-value":t.formData[n.field],decimals:n.decimals??2,currency:"",prefix:n.prefix,suffix:n.suffix,placeholder:n.placeholder,disabled:V(n),"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","decimals","prefix","suffix","placeholder","disabled","onUpdate:modelValue"])):n.type==="currency"?(e.openBlock(),e.createBlock(e.unref(He),{key:6,"model-value":t.formData[n.field],fluid:"",mode:"currency",currency:"BRL",locale:"pt-BR",min:n.min,max:n.max,placeholder:n.placeholder,disabled:V(n),"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","min","max","placeholder","disabled","onUpdate:modelValue"])):n.type==="select"?(e.openBlock(),e.createBlock(e.unref(Rt),{key:7,"model-value":t.formData[n.field],fluid:"",options:A(n.options),"option-label":n.optionLabel||"label","option-value":n.optionValue||"value","show-clear":n.showClear!==!1,placeholder:n.placeholder,disabled:V(n),"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","options","option-label","option-value","show-clear","placeholder","disabled","onUpdate:modelValue"])):n.type==="autocomplete"?(e.openBlock(),e.createBlock(e.unref(lt),{key:8,"model-value":w(n),fluid:"",suggestions:R(n),"option-label":n.optionLabel||"label",placeholder:n.placeholder,disabled:V(n),onComplete:f=>L(n,f),onItemSelect:f=>F(n,f),onClear:f=>r("update:field",n.field,null)},null,8,["model-value","suggestions","option-label","placeholder","disabled","onComplete","onItemSelect","onClear"])):n.type==="fk"?(e.openBlock(),e.createBlock(je,{key:9,"model-value":t.formData[n.field],endpoint:n.endpoint,"endpoint-params":n.endpointParams,"option-label":n.optionLabel||"nome",placeholder:n.placeholder,disabled:V(n),"show-clear":n.showClear!==!1,"dialog-header":n.label,"crud-fields":n.crudFields,"crud-columns":n.crudColumns,"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","endpoint","endpoint-params","option-label","placeholder","disabled","show-clear","dialog-header","crud-fields","crud-columns","onUpdate:modelValue"])):n.type==="date"?(e.openBlock(),e.createBlock(e.unref(Ke),{key:10,"model-value":t.formData[n.field],fluid:"","date-format":n.dateFormat||"dd/mm/yy",placeholder:n.placeholder,disabled:V(n),"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","date-format","placeholder","disabled","onUpdate:modelValue"])):n.type==="datetime"?(e.openBlock(),e.createBlock(e.unref(Ke),{key:11,"model-value":t.formData[n.field],fluid:"","show-time":"","hour-format":n.hourFormat||"24","date-format":n.dateFormat||"dd/mm/yy",placeholder:n.placeholder,disabled:V(n),"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","hour-format","date-format","placeholder","disabled","onUpdate:modelValue"])):n.type==="cpf_cnpj"?(e.openBlock(),e.createBlock(e.unref(Z),{key:12,"model-value":p(t.formData[n.field]),fluid:"",maxlength:"18",placeholder:n.placeholder||"000.000.000-00",disabled:V(n),invalid:!!i[n.field],onInput:f=>g(n.field,f),onBlur:f=>O(n)},null,8,["model-value","placeholder","disabled","invalid","onInput","onBlur"])):n.type==="mask"?e.withDirectives((e.openBlock(),e.createBlock(e.unref(Z),{key:13,"model-value":t.formData[n.field],fluid:"",placeholder:n.placeholder,disabled:V(n),invalid:!!i[n.field],"onUpdate:modelValue":f=>r("update:field",n.field,f),onBlur:f=>O(n)},null,8,["model-value","placeholder","disabled","invalid","onUpdate:modelValue","onBlur"])),[[e.unref(Te),{mask:Y(n.mask)}]]):n.type==="cep"?e.withDirectives((e.openBlock(),e.createBlock(e.unref(Z),{key:14,"model-value":t.formData[n.field],fluid:"",placeholder:n.placeholder||"00000-000",disabled:V(n),invalid:!!v[n.field],onInput:f=>h(n,f)},null,8,["model-value","placeholder","disabled","invalid","onInput"])),[[e.unref(Te),{mask:"#####-###"}]]):n.type==="textarea"?(e.openBlock(),e.createBlock(e.unref(At),{key:15,"model-value":t.formData[n.field],fluid:"",autofocus:I(n)||void 0,rows:n.rows||3,placeholder:n.placeholder,disabled:V(n),"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","autofocus","rows","placeholder","disabled","onUpdate:modelValue"])):e.createCommentVNode("",!0),v[n.field]?(e.openBlock(),e.createElementBlock("small",ia,e.toDisplayString(v[n.field]),1)):i[n.field]?(e.openBlock(),e.createElementBlock("small",sa,e.toDisplayString(i[n.field]),1)):e.createCommentVNode("",!0)],2))])),128))])]))),128))]))}}),ca={class:"w-crud-form-footer"},Le=e.defineComponent({__name:"WCrudFormDialog",props:{visible:{type:Boolean},title:{},fields:{},formData:{},isEditing:{type:Boolean},saving:{type:Boolean},disabled:{type:Boolean,default:!1},width:{default:"480px"}},emits:["update:visible","update:field","save"],setup(t,{emit:o}){const a=t,l=o,r=e.ref(null);function i(){r.value?r.value.validateAll().length===0&&l("save"):l("save")}return e.watch(()=>a.visible,s=>{s&&r.value&&r.value.clearErrors()}),(s,v)=>(e.openBlock(),e.createBlock(e.unref(nt),{visible:t.visible,header:t.title,style:e.normalizeStyle({width:t.width}),modal:"",draggable:!1,class:"w-crud-form-dialog","onUpdate:visible":v[2]||(v[2]=d=>l("update:visible",d))},{default:e.withCtx(()=>[e.createElementVNode("form",{class:"w-crud-form",onSubmit:e.withModifiers(i,["prevent"])},[e.createVNode(yt,{ref_key:"rendererRef",ref:r,fields:t.fields,"form-data":t.formData,"is-editing":t.isEditing,disabled:t.disabled,"onUpdate:field":v[0]||(v[0]=(d,h)=>l("update:field",d,h))},e.createSlots({_:2},[e.renderList(t.fields,d=>({name:`field-${d.field}`,fn:e.withCtx(h=>[e.renderSlot(s.$slots,`field-${d.field}`,e.normalizeProps(e.guardReactiveProps(h)))])})),e.renderList(t.fields.filter(d=>d.type==="image"),d=>({name:`image-${d.field}`,fn:e.withCtx(h=>[e.renderSlot(s.$slots,`image-${d.field}`,e.normalizeProps(e.guardReactiveProps(h)))])}))]),1032,["fields","form-data","is-editing","disabled"]),e.createElementVNode("div",ca,[e.renderSlot(s.$slots,"footer",{saving:t.saving,disabled:t.disabled},()=>[e.createVNode(e.unref(U),{type:"button",label:t.disabled?"Fechar":"Cancelar",severity:"secondary",text:"",disabled:t.saving,onClick:v[1]||(v[1]=d=>l("update:visible",!1))},null,8,["label","disabled"]),t.disabled?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(U),{key:0,type:"submit",label:t.isEditing?"Atualizar":"Salvar",icon:"pi pi-check",loading:t.saving},null,8,["label","loading"]))])])],32)]),_:3},8,["visible","header","style"]))}});function ua(t,o){const a=o[t.field];return t.format?t.format(a,o):a==null?"":typeof a=="boolean"?a?"Sim":"Não":String(a)}function et(t,o){return t.includes('"')||t.includes(o)||t.includes(`
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),ot=require("primevue/datatable"),ke=require("primevue/column"),U=require("primevue/button"),X=require("primevue/inputtext"),$e=require("primevue/iconfield"),Ne=require("primevue/inputicon"),Ft=require("primevue/paginator"),Mt=require("primevue/contextmenu"),at=require("primevue/tag"),ge=require("dayjs"),nt=require("primevue/dialog"),He=require("primevue/inputnumber"),At=require("primevue/textarea"),Rt=require("primevue/select"),lt=require("primevue/autocomplete"),Ke=require("primevue/datepicker"),Lt=require("primevue/toggleswitch"),zt=require("primevue/colorpicker"),Tt=require("primevue/password"),It=require("primevue/usetoast"),Yt=require("primevue/useconfirm"),Ot=require("primevue/inputgroup"),Ge=require("primevue/inputgroupaddon"),Pe=require("primevue/skeleton"),rt=Symbol("w-axios"),De=Symbol("w-data-provider"),xe=Symbol("w-config");function jt(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Me={exports:{}},Wt=Me.exports,Je;function Ut(){return Je||(Je=1,(function(t,o){(function(a,l){t.exports=l()})(Wt,(function(){var a={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},l=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,r=/\d/,i=/\d\d/,s=/\d\d?/,v=/\d*[^-_:/,()\s\d]+/,d={},h=function(p){return(p=+p)+(p>68?1900:2e3)},N=function(p){return function(g){this[p]=+g}},V=[/[+-]\d\d:?(\d\d)?|Z/,function(p){(this.zone||(this.zone={})).offset=(function(g){if(!g||g==="Z")return 0;var k=g.match(/([+-]|\d\d)/g),w=60*k[1]+(+k[2]||0);return w===0?0:k[0]==="+"?-w:w})(p)}],A=function(p){var g=d[p];return g&&(g.indexOf?g:g.s.concat(g.f))},x=function(p,g){var k,w=d.meridiem;if(w){for(var R=1;R<=24;R+=1)if(p.indexOf(w(R,0,g))>-1){k=R>12;break}}else k=p===(g?"pm":"PM");return k},I={A:[v,function(p){this.afternoon=x(p,!1)}],a:[v,function(p){this.afternoon=x(p,!0)}],Q:[r,function(p){this.month=3*(p-1)+1}],S:[r,function(p){this.milliseconds=100*+p}],SS:[i,function(p){this.milliseconds=10*+p}],SSS:[/\d{3}/,function(p){this.milliseconds=+p}],s:[s,N("seconds")],ss:[s,N("seconds")],m:[s,N("minutes")],mm:[s,N("minutes")],H:[s,N("hours")],h:[s,N("hours")],HH:[s,N("hours")],hh:[s,N("hours")],D:[s,N("day")],DD:[i,N("day")],Do:[v,function(p){var g=d.ordinal,k=p.match(/\d+/);if(this.day=k[0],g)for(var w=1;w<=31;w+=1)g(w).replace(/\[|\]/g,"")===p&&(this.day=w)}],w:[s,N("week")],ww:[i,N("week")],M:[s,N("month")],MM:[i,N("month")],MMM:[v,function(p){var g=A("months"),k=(A("monthsShort")||g.map((function(w){return w.slice(0,3)}))).indexOf(p)+1;if(k<1)throw new Error;this.month=k%12||k}],MMMM:[v,function(p){var g=A("months").indexOf(p)+1;if(g<1)throw new Error;this.month=g%12||g}],Y:[/[+-]?\d+/,N("year")],YY:[i,function(p){this.year=h(p)}],YYYY:[/\d{4}/,N("year")],Z:V,ZZ:V};function Y(p){var g,k;g=p,k=d&&d.formats;for(var w=(p=g.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(K,H,W){var m=W&&W.toUpperCase();return H||k[W]||a[W]||k[m].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(C,c,n){return c||n.slice(1)}))}))).match(l),R=w.length,L=0;L<R;L+=1){var F=w[L],z=I[F],M=z&&z[0],O=z&&z[1];w[L]=O?{regex:M,parser:O}:F.replace(/^\[|\]$/g,"")}return function(K){for(var H={},W=0,m=0;W<R;W+=1){var C=w[W];if(typeof C=="string")m+=C.length;else{var c=C.regex,n=C.parser,f=K.slice(m),u=c.exec(f)[0];n.call(H,u),K=K.replace(u,"")}}return(function(E){var S=E.afternoon;if(S!==void 0){var T=E.hours;S?T<12&&(E.hours+=12):T===12&&(E.hours=0),delete E.afternoon}})(H),H}}return function(p,g,k){k.p.customParseFormat=!0,p&&p.parseTwoDigitYear&&(h=p.parseTwoDigitYear);var w=g.prototype,R=w.parse;w.parse=function(L){var F=L.date,z=L.utc,M=L.args;this.$u=z;var O=M[1];if(typeof O=="string"){var K=M[2]===!0,H=M[3]===!0,W=K||H,m=M[2];H&&(m=M[2]),d=this.$locale(),!K&&m&&(d=k.Ls[m]),this.$d=(function(f,u,E,S){try{if(["x","X"].indexOf(u)>-1)return new Date((u==="X"?1e3:1)*f);var T=Y(u)(f),G=T.year,_=T.month,be=T.day,we=T.hours,ae=T.minutes,ne=T.seconds,J=T.milliseconds,Q=T.zone,re=T.week,de=new Date,ie=be||(G||_?1:de.getDate()),me=G||de.getFullYear(),te=0;G&&!_||(te=_>0?_-1:de.getMonth());var se,fe=we||0,pe=ae||0,ve=ne||0,y=J||0;return Q?new Date(Date.UTC(me,te,ie,fe,pe,ve,y+60*Q.offset*1e3)):E?new Date(Date.UTC(me,te,ie,fe,pe,ve,y)):(se=new Date(me,te,ie,fe,pe,ve,y),re&&(se=S(se).week(re).toDate()),se)}catch{return new Date("")}})(F,O,z,k),this.init(),m&&m!==!0&&(this.$L=this.locale(m).$L),W&&F!=this.format(O)&&(this.$d=new Date("")),d={}}else if(O instanceof Array)for(var C=O.length,c=1;c<=C;c+=1){M[1]=O[c-1];var n=k.apply(this,M);if(n.isValid()){this.$d=n.$d,this.$L=n.$L,this.init();break}c===C&&(this.$d=new Date(""))}else R.call(this,L)}}}))})(Me)),Me.exports}var qt=Ut();const Ht=jt(qt);ge.extend(Ht);function Ie(t){if(!t)return null;if(t instanceof Date)return t;const o=ge(t,"YYYY-MM-DD",!0);return o.isValid()?o.toDate():ge(t).toDate()}function it(t){return t?typeof t=="string"?t:ge(t).format("YYYY-MM-DD"):null}function st(t){return t?typeof t=="string"?t:ge(t).toISOString():null}function Kt(t,o="DD/MM/YYYY"){return t?ge(t).format(o):"—"}function Gt(t){return t?ge(t).format("DD/MM/YYYY HH:mm"):"—"}function ue(t){return t.replace(/\D/g,"")}function ct(t){if(!t)return"—";const o=ue(t);return o.length!==11?t:o.replace(/^(\d{3})(\d{3})(\d{3})(\d{2})$/,"$1.$2.$3-$4")}function ut(t){if(!t)return"—";const o=ue(t);return o.length!==14?t:o.replace(/^(\d{2})(\d{3})(\d{3})(\d{4})(\d{2})$/,"$1.$2.$3/$4-$5")}function Jt(t){if(!t)return"—";const o=ue(t);return o.length===11?ct(t):o.length===14?ut(t):t}function Zt(t){if(!t)return"—";const o=ue(t);return o.length===11?o.replace(/^(\d{2})(\d{5})(\d{4})$/,"($1) $2-$3"):o.length===10?o.replace(/^(\d{2})(\d{4})(\d{4})$/,"($1) $2-$3"):t}function dt(t){if(!t)return null;const o=ue(t);if(o.length!==11)return"CPF deve ter 11 dígitos.";if(/^(\d)\1{10}$/.test(o))return"CPF inválido.";let a=0;for(let s=0;s<9;s++)a+=parseInt(o[s])*(10-s);let l=a%11;const r=l<2?0:11-l;if(parseInt(o[9])!==r)return"CPF inválido.";a=0;for(let s=0;s<10;s++)a+=parseInt(o[s])*(11-s);l=a%11;const i=l<2?0:11-l;return parseInt(o[10])!==i?"CPF inválido.":null}function mt(t){if(!t)return null;const o=ue(t);if(o.length!==14)return"CNPJ deve ter 14 dígitos.";if(/^(\d)\1{13}$/.test(o))return"CNPJ inválido.";const a=[5,4,3,2,9,8,7,6,5,4,3,2];let l=0;for(let d=0;d<12;d++)l+=parseInt(o[d])*a[d];let r=l%11;const i=r<2?0:11-r;if(parseInt(o[12])!==i)return"CNPJ inválido.";const s=[6,5,4,3,2,9,8,7,6,5,4,3,2];l=0;for(let d=0;d<13;d++)l+=parseInt(o[d])*s[d];r=l%11;const v=r<2?0:11-r;return parseInt(o[13])!==v?"CNPJ inválido.":null}function Xt(t){if(!t)return null;const o=ue(t);return o.length===11?dt(t):o.length===14?mt(t):"CPF deve ter 11 dígitos ou CNPJ deve ter 14 dígitos."}const Ae=new Map;function Ze(t,o){const a=`${t}-${o}`;let l=Ae.get(a);return l||(l=new Intl.NumberFormat(t,{minimumFractionDigits:o,maximumFractionDigits:o}),Ae.set(a,l)),l}function _t(t,o){const a=`${t}-${o}`;let l=Ae.get(a);return l||(l=new Intl.NumberFormat(t,{style:"currency",currency:o}),Ae.set(a,l)),l}function Re(){const t=e.inject(xe,{defaultPageSize:20,dateFormat:"DD/MM/YYYY",dateTimeFormat:"DD/MM/YYYY HH:mm",locale:"pt-BR",currency:"BRL"}),o=(t==null?void 0:t.locale)??"pt-BR",a=(t==null?void 0:t.currency)??"BRL";function l(d){return d==null?"—":_t(o,a).format(d)}function r(d,h=2){return d==null?"—":Ze(o,h).format(d)}function i(d,h){return Kt(d,h??(t==null?void 0:t.dateFormat)??"DD/MM/YYYY")}function s(d){return Gt(d)}function v(d){return d==null?"—":`${Ze(o,2).format(d)}%`}return{formatCurrency:l,formatNumber:r,formatDate:i,formatDateTime:s,formatPercent:v,formatCpf:ct,formatCnpj:ut,formatCpfCnpj:Jt,formatTelefone:Zt,validateCpf:dt,validateCnpj:mt,validateCpfCnpj:Xt,parseDate:Ie,toDateString:it,toDateTimeString:st}}const Qt={key:0,class:"text-muted-color text-xs"},eo=["src","alt"],to={key:3,class:"text-muted-color tabular-nums text-[0.8125rem]"},oo={key:4,class:"text-muted-color tabular-nums text-[0.8125rem]"},ao={key:5,class:"font-semibold tabular-nums text-[0.8125rem]"},no={key:6,class:"font-semibold tabular-nums text-[0.8125rem]"},lo={key:7,class:"text-[0.8125rem]"},Se=e.defineComponent({__name:"WCrudColumnRenderer",props:{column:{},value:{},rowData:{}},setup(t){const{formatDate:o,formatDateTime:a,formatCurrency:l,formatNumber:r}=Re();return(i,s)=>t.value==null?(e.openBlock(),e.createElementBlock("span",Qt,"—")):t.column.type==="image"?(e.openBlock(),e.createElementBlock("img",{key:1,src:String(t.value),alt:t.column.header,class:"size-9 rounded-lg object-cover ring-1 ring-surface-200 dark:ring-surface-700"},null,8,eo)):t.column.type==="boolean"?(e.openBlock(),e.createBlock(e.unref(at),{key:2,value:t.column.tagValue?t.column.tagValue(t.value,t.rowData):t.value?"Ativo":"Inativo",severity:t.column.tagSeverity?t.column.tagSeverity(t.value,t.rowData):t.value?"success":"danger",class:"text-xs"},null,8,["value","severity"])):t.column.type==="date"?(e.openBlock(),e.createElementBlock("span",to,e.toDisplayString(e.unref(o)(t.value)),1)):t.column.type==="datetime"?(e.openBlock(),e.createElementBlock("span",oo,e.toDisplayString(e.unref(a)(t.value)),1)):t.column.type==="currency"?(e.openBlock(),e.createElementBlock("span",ao,e.toDisplayString(e.unref(l)(t.value)),1)):t.column.type==="number"?(e.openBlock(),e.createElementBlock("span",no,e.toDisplayString(t.column.format?t.column.format(t.value,t.rowData):e.unref(r)(t.value,t.column.decimals??0)),1)):(e.openBlock(),e.createElementBlock("span",lo,e.toDisplayString(t.column.format?t.column.format(t.value,t.rowData):t.value),1))}});var ro=Object.defineProperty,io=(t,o,a)=>o in t?ro(t,o,{enumerable:!0,configurable:!0,writable:!0,value:a}):t[o]=a,Ee=(t,o,a)=>io(t,typeof o!="symbol"?o+"":o,a);const Xe={"#":{pattern:/[0-9]/},"@":{pattern:/[a-zA-Z]/},"*":{pattern:/[a-zA-Z0-9]/}},_e=(t,o,a)=>t.replaceAll(o,"").replace(a,".").replace("..",".").replace(/[^.\d]/g,""),Qe=(t,o,a)=>{var l;return new Intl.NumberFormat(((l=a.number)==null?void 0:l.locale)??"en",{minimumFractionDigits:t,maximumFractionDigits:o,roundingMode:"trunc"})},so=(t,o=!0,a)=>{var l,r,i,s;const v=((l=a.number)==null?void 0:l.unsigned)!==!0&&t.startsWith("-")?"-":"",d=((r=a.number)==null?void 0:r.fraction)??0;let h=Qe(0,d,a);const N=h.formatToParts(1000.12),V=((i=N.find(p=>p.type==="group"))==null?void 0:i.value)??" ",A=((s=N.find(p=>p.type==="decimal"))==null?void 0:s.value)??".",x=_e(t,V,A);if(Number.isNaN(parseFloat(x)))return v;const I=x.split(".");if(I[1]!=null&&I[1].length>=1){const p=I[1].length<=d?I[1].length:d;h=Qe(p,d,a)}let Y=h.format(parseFloat(x));return o?d>0&&x.endsWith(".")&&!x.slice(0,-1).includes(".")&&(Y+=A):Y=_e(Y,V,A),v+Y},ft=t=>JSON.parse(t.replaceAll("'",'"')),co=(t,o={})=>{const a={...o};t.dataset.maska!=null&&t.dataset.maska!==""&&(a.mask=uo(t.dataset.maska)),t.dataset.maskaEager!=null&&(a.eager=Fe(t.dataset.maskaEager)),t.dataset.maskaReversed!=null&&(a.reversed=Fe(t.dataset.maskaReversed)),t.dataset.maskaTokensReplace!=null&&(a.tokensReplace=Fe(t.dataset.maskaTokensReplace)),t.dataset.maskaTokens!=null&&(a.tokens=mo(t.dataset.maskaTokens));const l={};return t.dataset.maskaNumberLocale!=null&&(l.locale=t.dataset.maskaNumberLocale),t.dataset.maskaNumberFraction!=null&&(l.fraction=parseInt(t.dataset.maskaNumberFraction)),t.dataset.maskaNumberUnsigned!=null&&(l.unsigned=Fe(t.dataset.maskaNumberUnsigned)),(t.dataset.maskaNumber!=null||Object.values(l).length>0)&&(a.number=l),a},Fe=t=>t!==""?!!JSON.parse(t):!0,uo=t=>t.startsWith("[")&&t.endsWith("]")?ft(t):t,mo=t=>{if(t.startsWith("{")&&t.endsWith("}"))return ft(t);const o={};return t.split("|").forEach(a=>{const l=a.split(":");o[l[0]]={pattern:pt()?new RegExp(l[1],"u"):new RegExp(l[1]),optional:l[2]==="optional",multiple:l[2]==="multiple",repeated:l[2]==="repeated"}}),o},pt=()=>{try{return new RegExp("\\p{L}","u"),!0}catch{return!1}};class fo{constructor(o={}){Ee(this,"opts",{}),Ee(this,"memo",new Map);const a={...o};if(a.tokens!=null){a.tokens=a.tokensReplace?{...a.tokens}:{...Xe,...a.tokens};for(const l of Object.values(a.tokens))typeof l.pattern=="string"&&(l.pattern=pt()?new RegExp(l.pattern,"u"):new RegExp(l.pattern))}else a.tokens=Xe;Array.isArray(a.mask)&&(a.mask.length>1?a.mask=[...a.mask].sort((l,r)=>l.length-r.length):a.mask=a.mask[0]??""),a.mask===""&&(a.mask=null),this.opts=a}masked(o){return this.process(String(o),this.findMask(String(o)))}unmasked(o){return this.process(String(o),this.findMask(String(o)),!1)}isEager(){return this.opts.eager===!0}isReversed(){return this.opts.reversed===!0}completed(o){const a=this.findMask(String(o));if(this.opts.mask==null||a==null)return!1;const l=this.process(String(o),a).length;return typeof this.opts.mask=="string"?l>=this.opts.mask.length:l>=a.length}findMask(o){const a=this.opts.mask;if(a==null)return null;if(typeof a=="string")return a;if(typeof a=="function")return a(o);const l=this.process(o,a.slice(-1).pop()??"",!1);return a.find(r=>this.process(o,r,!1).length>=l.length)??""}escapeMask(o){const a=[],l=[];return o.split("").forEach((r,i)=>{r==="!"&&o[i-1]!=="!"?l.push(i-l.length):a.push(r)}),{mask:a.join(""),escaped:l}}process(o,a,l=!0){if(this.opts.number!=null)return so(o,l,this.opts);if(a==null)return o;const r=`v=${o},mr=${a},m=${l?1:0}`;if(this.memo.has(r))return this.memo.get(r);const{mask:i,escaped:s}=this.escapeMask(a),v=[],d=this.opts.tokens!=null?this.opts.tokens:{},h=this.isReversed()?-1:1,N=this.isReversed()?"unshift":"push",V=this.isReversed()?0:i.length-1,A=this.isReversed()?()=>p>-1&&g>-1:()=>p<i.length&&g<o.length,x=w=>!this.isReversed()&&w<=V||this.isReversed()&&w>=V;let I,Y=-1,p=this.isReversed()?i.length-1:0,g=this.isReversed()?o.length-1:0,k=!1;for(;A();){const w=i.charAt(p),R=d[w],L=(R==null?void 0:R.transform)!=null?R.transform(o.charAt(g)):o.charAt(g);if(!s.includes(p)&&R!=null?(L.match(R.pattern)!=null?(v[N](L),R.repeated?(Y===-1?Y=p:p===V&&p!==Y&&(p=Y-h),V===Y&&(p-=h)):R.multiple&&(k=!0,p-=h),p+=h):R.multiple?k&&(p+=h,g-=h,k=!1):L===I?I=void 0:R.optional&&(p+=h,g-=h),g+=h):(l&&!this.isEager()&&v[N](w),L===w&&!this.isEager()?g+=h:I=w,this.isEager()||(p+=h)),this.isEager())for(;x(p)&&(d[i.charAt(p)]==null||s.includes(p));){if(l){if(v[N](i.charAt(p)),o.charAt(g)===i.charAt(p)){p+=h,g+=h;continue}}else i.charAt(p)===o.charAt(g)&&(g+=h);p+=h}}return this.memo.set(r,v.join("")),this.memo.get(r)}}class po{constructor(o,a={}){Ee(this,"items",new Map),Ee(this,"eventAbortController"),Ee(this,"onInput",l=>{if(l instanceof CustomEvent&&l.type==="input"&&!l.isTrusted&&!l.bubbles)return;const r=l.target,i=this.items.get(r);if(i===void 0)return;const s="inputType"in l&&l.inputType.startsWith("delete"),v=i.isEager(),d=s&&v&&i.unmasked(r.value)===""?"":r.value;this.fixCursor(r,s,()=>this.setValue(r,d))}),this.options=a,this.eventAbortController=new AbortController,this.init(this.getInputs(o))}update(o={}){this.options={...o},this.init(Array.from(this.items.keys()))}updateValue(o){var a;o.value!==""&&o.value!==((a=this.processInput(o))==null?void 0:a.masked)&&this.setValue(o,o.value)}destroy(){this.eventAbortController.abort(),this.items.clear()}init(o){const a=this.getOptions(this.options);for(const l of o){if(!this.items.has(l)){const{signal:i}=this.eventAbortController;l.addEventListener("input",this.onInput,{capture:!0,signal:i})}const r=new fo(co(l,a));this.items.set(l,r),queueMicrotask(()=>this.updateValue(l)),l.selectionStart===null&&r.isEager()&&console.warn("Maska: input of `%s` type is not supported",l.type)}}getInputs(o){return typeof o=="string"?Array.from(document.querySelectorAll(o)):"length"in o?Array.from(o):[o]}getOptions(o){const{onMaska:a,preProcess:l,postProcess:r,...i}=o;return i}fixCursor(o,a,l){var r,i;const s=o.selectionStart,v=o.value;if(l(),s===null||s===v.length&&!a)return;const d=o.value,h=v.slice(0,s),N=d.slice(0,s),V=(r=this.processInput(o,h))==null?void 0:r.unmasked,A=(i=this.processInput(o,N))==null?void 0:i.unmasked;if(V===void 0||A===void 0)return;let x=s;h!==N&&(x+=a?d.length-v.length:V.length-A.length),o.setSelectionRange(x,x)}setValue(o,a){const l=this.processInput(o,a);l!==void 0&&(o.value=l.masked,this.options.onMaska!=null&&(Array.isArray(this.options.onMaska)?this.options.onMaska.forEach(r=>r(l)):this.options.onMaska(l)),o.dispatchEvent(new CustomEvent("maska",{detail:l})),o.dispatchEvent(new CustomEvent("input",{detail:l.masked})))}processInput(o,a){const l=this.items.get(o);if(l===void 0)return;let r=a??o.value;this.options.preProcess!=null&&(r=this.options.preProcess(r));let i=l.masked(r);return this.options.postProcess!=null&&(i=this.options.postProcess(i)),{masked:i,unmasked:l.unmasked(r),completed:l.completed(r)}}}const ze=new WeakMap,vo=(t,o)=>{if(t.arg==null||t.instance==null)return;const a="setup"in t.instance.$.type;t.arg in t.instance?t.instance[t.arg]=o:a&&console.warn("Maska: please expose `%s` using defineExpose",t.arg)},Te=(t,o)=>{var a;const l=t instanceof HTMLInputElement?t:t.querySelector("input");if(l==null||(l==null?void 0:l.type)==="file")return;let r={};if(o.value!=null&&(r=typeof o.value=="string"?{mask:o.value}:{...o.value}),o.arg!=null){const i=s=>{const v=o.modifiers.unmasked?s.unmasked:o.modifiers.completed?s.completed:s.masked;vo(o,v)};r.onMaska=r.onMaska==null?i:Array.isArray(r.onMaska)?[...r.onMaska,i]:[r.onMaska,i]}ze.has(l)?(a=ze.get(l))==null||a.update(r):ze.set(l,new po(l,r))},go={string:"text",integer:"number",decimal:"number",float:"number",boolean:"switch",choice:"select",fk:"fk",date:"date",datetime:"datetime",email:"email",url:"text",slug:"text",text:"textarea"};function vt(t){var l;const o=go[t.type]??"text",a={field:t.name,label:t.label,type:o,required:t.required??!1};return(t.type==="decimal"||t.type==="float")&&(a.minFractionDigits=2,a.maxFractionDigits=2),t.type==="boolean"&&(a.defaultValue=!1),t.type==="choice"&&((l=t.choices)!=null&&l.length)&&(a.options=t.choices.map(r=>({label:r.label,value:r.value}))),t.type==="fk"&&(a.endpoint=t.endpoint,t.option_label&&(a.optionLabel=t.option_label),t.option_value&&(a.optionValue=t.option_value)),a}function gt(t){return t.filter(o=>!o.read_only&&o.name!=="id").map(vt)}const ho={boolean:"boolean",date:"date",datetime:"datetime",decimal:"number",float:"number",integer:"number"};function ht(t){return{field:t.type==="fk"?`${t.name}_nome`:t.name,header:t.label,type:ho[t.type],sortable:!0}}function kt(t,o=6){return t.filter(a=>!a.read_only&&a.name!=="id").slice(0,o).map(ht)}function Ye(){const t=It.useToast();function o(i,s="Sucesso"){t.add({severity:"success",summary:s,detail:i,life:3e3})}function a(i,s="Erro"){t.add({severity:"error",summary:s,detail:i,life:5e3})}function l(i,s="Atenção"){t.add({severity:"warn",summary:s,detail:i,life:4e3})}function r(i,s="Info"){t.add({severity:"info",summary:s,detail:i,life:3e3})}return{success:o,error:a,warn:l,info:r}}function Oe(){const t=Yt.useConfirm();function o(l,r="Deseja realmente excluir este registro?"){t.require({message:r,header:"Confirmar Exclusão",icon:"pi pi-trash",rejectLabel:"Cancelar",rejectProps:{severity:"secondary",text:!0},acceptLabel:"Excluir",acceptProps:{severity:"danger"},accept:l})}function a(l,r,i="Confirmação"){t.require({message:l,header:i,icon:"pi pi-question-circle",rejectLabel:"Cancelar",rejectProps:{severity:"secondary",text:!0},acceptLabel:"Confirmar",accept:r})}return{confirmDelete:o,confirmAction:a}}function ko(t){return t.replace(/_/g," ").replace(/^\w/,o=>o.toUpperCase())}function yo(t){if(typeof t=="string")return t;if(Array.isArray(t)){const o=t.filter(a=>typeof a=="string");return o.length>0?o.join(" "):null}if(typeof t=="object"&&t!==null){const o=t;if(Array.isArray(o.non_field_errors)&&o.non_field_errors.length>0)return o.non_field_errors.filter(l=>typeof l=="string").join(" ");const a=[];for(const[l,r]of Object.entries(o)){if(l==="non_field_errors")continue;const i=ko(l);if(Array.isArray(r)){const s=r.filter(v=>typeof v=="string");s.length>0&&a.push(`${i}: ${s.join(" ")}`)}else typeof r=="string"&&a.push(`${i}: ${r}`)}return a.length>0?a.join(`
|
|
2
|
+
`):null}return null}function ye(t,o="Erro inesperado"){var i;if(!t||typeof t!="object")return o;const a=t,l=(i=a.response)==null?void 0:i.data;if(!l||typeof l!="object")return a.message||o;const r=l.detail??l;return yo(r)||o}function bo(){return{extractApiError:ye}}const wo={class:"w-autocompletefk"},Bo=["disabled"],Co={class:"w-autocompletefk-toolbar"},Vo={class:"w-autocompletefk-toolbar-actions"},Eo={class:"flex items-center justify-end gap-1"},$o={class:"w-autocompletefk-footer"},je=e.defineComponent({__name:"WAutoCompleteFK",props:{modelValue:{},endpoint:{},endpointParams:{},optionLabel:{default:"nome"},optionValue:{default:"id"},placeholder:{default:"Buscar..."},disabled:{type:Boolean,default:!1},showClear:{type:Boolean,default:!0},forceSelection:{type:Boolean,default:!0},columns:{},minLength:{default:0},dialogHeader:{},canCreate:{type:Boolean,default:void 0},canEdit:{type:Boolean,default:void 0},canDelete:{type:Boolean,default:void 0},crudFields:{},crudColumns:{},dialogWidth:{default:"480px"}},emits:["update:modelValue"],setup(t,{emit:o}){const a=t,l=o,r=e.inject(De);if(!r)throw new Error("[wPrimeVueComponents] dataProvider não encontrado. Registre o WPrimeVuePlugin.");const i=r,s=Ye(),{confirmDelete:v}=Oe(),d=e.ref(null),h=e.ref([]),N=e.ref(!1);let V=null;async function A(y){try{const B=await i.get(a.endpoint,y);d.value=B.data}catch{d.value=null}}async function x(y){N.value=!0;try{const B={page_size:20,...a.endpointParams};y&&(B.search=y);const q=await i.list(a.endpoint,B);h.value=q.data}catch{h.value=[]}finally{N.value=!1}}function I(y){const B=y.query||"";if(B.length<a.minLength){h.value=[];return}V&&clearTimeout(V),V=setTimeout(()=>x(B),300)}function Y(y){d.value=y.value,l("update:modelValue",y.value)}function p(){d.value=null,l("update:modelValue",null)}e.watch(()=>a.modelValue,async y=>{if(y!=null){if(typeof y=="object"&&y!==null&&a.optionLabel in y){d.value=y;return}(!d.value||d.value[a.optionValue]!==y)&&await A(y)}else d.value=null},{immediate:!0});const g=e.ref(!1),k=e.ref([]),w=e.ref(!1),R=e.ref(""),L=e.ref(1),F=e.ref(15),z=e.ref(0),M=e.ref(null),O=e.ref(null),K=e.ref(0);let H=null;const W=e.ref([]),m=e.computed(()=>{var y;return(y=a.crudFields)!=null&&y.length?!0:W.value.length>0}),C=e.computed(()=>a.canCreate??m.value),c=e.computed(()=>a.canEdit??m.value),n=e.computed(()=>a.canDelete??m.value),f=e.computed(()=>c.value||n.value),u=e.computed(()=>{var y;return(y=a.crudFields)!=null&&y.length?a.crudFields:gt(W.value)}),E=e.computed(()=>{var y,B;return(y=a.crudColumns)!=null&&y.length?a.crudColumns:(B=a.columns)!=null&&B.length?a.columns.map(q=>({field:q.field,header:q.header,sortable:!0})):W.value.length?kt(W.value):[{field:a.optionLabel,header:a.optionLabel,sortable:!0}]});async function S(){var y,B,q;w.value=!0;try{const P={page:L.value,page_size:F.value,...a.endpointParams};R.value&&(P.search=R.value),O.value&&K.value!==0&&(P.ordering=K.value===-1?`-${O.value}`:O.value);const Z=await i.list(a.endpoint,P);k.value=Z.data,z.value=Z.rows,(y=Z.extras)!=null&&y.fields&&!((B=a.columns)!=null&&B.length)&&!((q=a.crudFields)!=null&&q.length)&&(W.value=Z.extras.fields)}catch{k.value=[],z.value=0}finally{w.value=!1}}function T(){a.disabled||(R.value="",L.value=1,O.value=null,K.value=0,M.value=null,g.value=!0,S())}function G(y){L.value=y.page+1,F.value=y.rows,S()}function _(y){O.value=y.sortField??null,K.value=y.sortOrder??0,L.value=1,S()}function be(){M.value&&(d.value=M.value,l("update:modelValue",M.value),g.value=!1)}function we(y){d.value=y.data,l("update:modelValue",y.data),g.value=!1}e.watch(R,()=>{H&&clearTimeout(H),H=setTimeout(()=>{L.value=1,S()},300)});const ae=e.ref(!1),ne=e.ref(!1),J=e.ref(null),Q=e.reactive({}),re=e.computed(()=>J.value!==null),de=e.computed(()=>re.value?"Editar Registro":"Novo Registro");function ie(){const y={};for(const B of u.value)y[B.field]=B.defaultValue!==void 0?typeof B.defaultValue=="function"?B.defaultValue():B.defaultValue:null;return y}function me(){const y=ie();for(const B of Object.keys(Q))delete Q[B];for(const[B,q]of Object.entries(y))Q[B]=q}function te(){J.value=null,me(),ae.value=!0}function se(y){J.value=y;for(const B of u.value)Q[B.field]=y[B.field]!==void 0?y[B.field]:null;ae.value=!0}function fe(y,B){Q[y]=B}async function pe(){ne.value=!0;try{const y={...Q};for(const q of u.value){const P=y[q.field];if(q.type==="fk"&&P!==null&&typeof P=="object"){const Z=q.optionValue||"id";y[q.field]=P[Z]??P}}let B;if(re.value&&J.value){const q=J.value[a.optionValue];B=await i.update(a.endpoint,q,y);const P=k.value.findIndex(Z=>Z[a.optionValue]===q);P!==-1&&(k.value[P]=B.data),s.success("Registro atualizado com sucesso")}else B=await i.create(a.endpoint,y),k.value.unshift(B.data),z.value++,s.success("Registro criado com sucesso");ae.value=!1,J.value=null,M.value=B.data}catch(y){s.error(ye(y,"Erro ao salvar registro"))}finally{ne.value=!1}}function ve(y){v(async()=>{try{const B=y[a.optionValue];await i.delete(a.endpoint,B);const q=k.value.findIndex(P=>P[a.optionValue]===B);q!==-1&&(k.value.splice(q,1),z.value--),d.value&&d.value[a.optionValue]===B&&(d.value=null,l("update:modelValue",null)),M.value&&M.value[a.optionValue]===B&&(M.value=null),s.success("Registro excluído com sucesso")}catch(B){s.error(ye(B,"Erro ao excluir registro"))}})}return(y,B)=>{const q=e.resolveDirective("tooltip");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",wo,[e.createVNode(e.unref(lt),{"model-value":d.value,suggestions:h.value,"option-label":t.optionLabel,placeholder:t.placeholder,disabled:t.disabled,"force-selection":t.forceSelection,loading:N.value,fluid:"",onComplete:I,onItemSelect:Y,onClear:p},null,8,["model-value","suggestions","option-label","placeholder","disabled","force-selection","loading"]),e.withDirectives((e.openBlock(),e.createElementBlock("button",{type:"button",disabled:t.disabled,class:"w-autocompletefk-trigger",onClick:T},[...B[6]||(B[6]=[e.createElementVNode("i",{class:"pi pi-search"},null,-1)])],8,Bo)),[[q,"Pesquisar",void 0,{top:!0}]])]),e.createVNode(e.unref(nt),{visible:g.value,"onUpdate:visible":B[4]||(B[4]=P=>g.value=P),header:t.dialogHeader||"Pesquisar",style:{width:"80vw"},modal:"",draggable:!1,class:"w-autocompletefk-dialog"},{footer:e.withCtx(()=>[e.createElementVNode("div",$o,[e.createVNode(e.unref(U),{label:"Cancelar",severity:"secondary",text:"",onClick:B[3]||(B[3]=P=>g.value=!1)}),e.createVNode(e.unref(U),{label:"Selecionar",icon:"pi pi-check",disabled:!M.value,onClick:be},null,8,["disabled"])])]),default:e.withCtx(()=>[e.createElementVNode("div",Co,[e.createVNode(e.unref($e),{class:"w-autocompletefk-toolbar-search"},{default:e.withCtx(()=>[e.createVNode(e.unref(Ne),{class:"pi pi-search"}),e.createVNode(e.unref(X),{modelValue:R.value,"onUpdate:modelValue":B[0]||(B[0]=P=>R.value=P),placeholder:"Pesquisar...",class:"w-full"},null,8,["modelValue"])]),_:1}),e.createElementVNode("div",Vo,[C.value?(e.openBlock(),e.createBlock(e.unref(U),{key:0,label:"Novo",icon:"pi pi-plus",size:"small",onClick:te})):e.createCommentVNode("",!0)])]),e.createVNode(e.unref(ot),{selection:M.value,"onUpdate:selection":B[1]||(B[1]=P=>M.value=P),value:k.value,loading:w.value,paginator:"",lazy:"","striped-rows":"","removable-sort":"",size:"small",rows:F.value,"total-records":z.value,"sort-field":O.value??void 0,"sort-order":K.value,"selection-mode":"single","data-key":t.optionValue,onPage:G,onSort:B[2]||(B[2]=P=>_({sortField:P.sortField,sortOrder:P.sortOrder})),onRowDblclick:we},{empty:e.withCtx(()=>[...B[7]||(B[7]=[e.createElementVNode("div",{class:"w-autocompletefk-empty"},"Nenhum registro encontrado",-1)])]),default:e.withCtx(()=>[e.createVNode(e.unref(ke),{"selection-mode":"single","header-style":"width: 3rem"}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(E.value,P=>(e.openBlock(),e.createBlock(e.unref(ke),{key:P.field,field:P.field,header:P.header,sortable:P.sortable??!0,style:e.normalizeStyle(P.style)},{body:e.withCtx(({data:Z})=>[P.type?(e.openBlock(),e.createBlock(Se,{key:0,column:P,value:Z[P.field],"row-data":Z},null,8,["column","value","row-data"])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(Z[P.field]),1)],64))]),_:2},1032,["field","header","sortable","style"]))),128)),f.value?(e.openBlock(),e.createBlock(e.unref(ke),{key:0,header:"",style:{width:"6rem"}},{body:e.withCtx(({data:P})=>[e.createElementVNode("div",Eo,[c.value?e.withDirectives((e.openBlock(),e.createBlock(e.unref(U),{key:0,icon:"pi pi-pencil",text:"",rounded:"",size:"small",onClick:Z=>se(P)},null,8,["onClick"])),[[q,"Editar",void 0,{top:!0}]]):e.createCommentVNode("",!0),n.value?e.withDirectives((e.openBlock(),e.createBlock(e.unref(U),{key:1,icon:"pi pi-trash",text:"",rounded:"",size:"small",severity:"danger",onClick:Z=>ve(P)},null,8,["onClick"])),[[q,"Excluir",void 0,{top:!0}]]):e.createCommentVNode("",!0)])]),_:1})):e.createCommentVNode("",!0)]),_:1},8,["selection","value","loading","rows","total-records","sort-field","sort-order","data-key"])]),_:1},8,["visible","header"]),m.value?(e.openBlock(),e.createBlock(Le,{key:0,visible:ae.value,title:de.value,fields:u.value,"form-data":Q,"is-editing":re.value,saving:ne.value,width:t.dialogWidth,"onUpdate:visible":B[5]||(B[5]=P=>{ae.value=P,P||(J.value=null)}),"onUpdate:field":fe,onSave:pe},null,8,["visible","title","fields","form-data","is-editing","saving","width"])):e.createCommentVNode("",!0)],64)}}}),We=e.defineComponent({__name:"WMoneyInput",props:{modelValue:{},decimals:{default:2},currency:{type:Boolean,default:!1},prefix:{},suffix:{},locale:{default:"pt-BR"},disabled:{type:Boolean,default:!1},placeholder:{},invalid:{type:Boolean}},emits:["update:modelValue"],setup(t,{emit:o}){const a=t,l=o,r=e.computed(()=>a.prefix??(a.currency?"R$":void 0)),i=e.computed(()=>!!r.value||!!a.suffix),s=e.computed(()=>{const d=a.modelValue;return d==null||Number.isNaN(d)?"":new Intl.NumberFormat(a.locale,{minimumFractionDigits:a.decimals,maximumFractionDigits:a.decimals}).format(d)});function v(d){const h=d.target.value.replace(/\D/g,"");if(!h){l("update:modelValue",null);return}const N=Number(h)/Math.pow(10,a.decimals);l("update:modelValue",N)}return(d,h)=>i.value?(e.openBlock(),e.createBlock(e.unref(Ot),{key:0,class:"w-money-input"},{default:e.withCtx(()=>[r.value?(e.openBlock(),e.createBlock(e.unref(Ge),{key:0},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(r.value),1)]),_:1})):e.createCommentVNode("",!0),e.createVNode(e.unref(X),{"model-value":s.value,inputmode:"numeric",class:"w-money-input__field",placeholder:t.placeholder,disabled:t.disabled,invalid:t.invalid,onInput:v},null,8,["model-value","placeholder","disabled","invalid"]),t.suffix?(e.openBlock(),e.createBlock(e.unref(Ge),{key:1},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.suffix),1)]),_:1})):e.createCommentVNode("",!0)]),_:1})):(e.openBlock(),e.createBlock(e.unref(X),{key:1,"model-value":s.value,inputmode:"numeric",fluid:"",class:"w-money-input__field",placeholder:t.placeholder,disabled:t.disabled,invalid:t.invalid,onInput:v},null,8,["model-value","placeholder","disabled","invalid"]))}}),No={class:"w-transfer__pane"},So={class:"w-transfer__head"},Do={class:"w-transfer__count"},xo={class:"w-transfer__list"},Po=["onClick"],Fo={key:0,class:"w-transfer__empty"},Mo={class:"w-transfer__controls"},Ao={class:"w-transfer__pane"},Ro={class:"w-transfer__head"},Lo={class:"w-transfer__count"},zo={class:"w-transfer__list"},To=["onClick"],Io={key:0,class:"w-transfer__empty"},Ue=e.defineComponent({__name:"WTransferList",props:{source:{},selected:{default:()=>[]},trackBy:{default:"id"},optionLabel:{default:"nome"},searchFields:{},disabled:{type:Boolean}},emits:["update:selected"],setup(t,{emit:o}){const a=t,l=o,r=e.ref(""),i=e.ref(""),s=e.computed(()=>new Set(a.selected)),v=e.computed(()=>a.searchFields??[a.optionLabel]);function d(g){return g[a.trackBy]}function h(g){return String(g[a.optionLabel]??"")}function N(g,k){if(!k)return!0;const w=k.toLowerCase();return v.value.some(R=>String(g[R]??"").toLowerCase().includes(w))}const V=e.computed(()=>a.source.filter(g=>!s.value.has(d(g))&&N(g,r.value))),A=e.computed(()=>a.source.filter(g=>s.value.has(d(g))&&N(g,i.value)));function x(g){a.disabled||l("update:selected",[...a.selected,d(g)])}function I(g){if(a.disabled)return;const k=d(g);l("update:selected",a.selected.filter(w=>w!==k))}function Y(){a.disabled||l("update:selected",a.source.map(d))}function p(){a.disabled||l("update:selected",[])}return(g,k)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["w-transfer",{"w-transfer--disabled":t.disabled}])},[e.createElementVNode("div",No,[e.createElementVNode("div",So,[k[2]||(k[2]=e.createElementVNode("span",{class:"w-transfer__title"},"Disponíveis",-1)),e.createElementVNode("span",Do,e.toDisplayString(V.value.length),1)]),e.createVNode(e.unref($e),{class:"w-transfer__search"},{default:e.withCtx(()=>[e.createVNode(e.unref(Ne),{class:"pi pi-search"}),e.createVNode(e.unref(X),{modelValue:r.value,"onUpdate:modelValue":k[0]||(k[0]=w=>r.value=w),placeholder:"Buscar...",fluid:""},null,8,["modelValue"])]),_:1}),e.createElementVNode("ul",xo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.value,w=>(e.openBlock(),e.createElementBlock("li",{key:`a-${d(w)}`,class:"w-transfer__item",onClick:R=>x(w)},[e.createElementVNode("span",null,e.toDisplayString(h(w)),1),k[3]||(k[3]=e.createElementVNode("i",{class:"pi pi-angle-right"},null,-1))],8,Po))),128)),V.value.length?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("li",Fo,"Nenhum item"))])]),e.createElementVNode("div",Mo,[e.createVNode(e.unref(U),{type:"button",icon:"pi pi-angle-double-right",text:"",rounded:"",disabled:t.disabled||!V.value.length,onClick:Y},null,8,["disabled"]),e.createVNode(e.unref(U),{type:"button",icon:"pi pi-angle-double-left",text:"",rounded:"",disabled:t.disabled||!t.selected.length,onClick:p},null,8,["disabled"])]),e.createElementVNode("div",Ao,[e.createElementVNode("div",Ro,[k[4]||(k[4]=e.createElementVNode("span",{class:"w-transfer__title"},"Selecionados",-1)),e.createElementVNode("span",Lo,e.toDisplayString(A.value.length),1)]),e.createVNode(e.unref($e),{class:"w-transfer__search"},{default:e.withCtx(()=>[e.createVNode(e.unref(Ne),{class:"pi pi-search"}),e.createVNode(e.unref(X),{modelValue:i.value,"onUpdate:modelValue":k[1]||(k[1]=w=>i.value=w),placeholder:"Buscar...",fluid:""},null,8,["modelValue"])]),_:1}),e.createElementVNode("ul",zo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(A.value,w=>(e.openBlock(),e.createElementBlock("li",{key:`s-${d(w)}`,class:"w-transfer__item",onClick:R=>I(w)},[k[5]||(k[5]=e.createElementVNode("i",{class:"pi pi-angle-left"},null,-1)),e.createElementVNode("span",null,e.toDisplayString(h(w)),1)],8,To))),128)),A.value.length?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("li",Io,"Nenhum item"))])])],2))}});async function Yo(t){const o=t.replace(/\D/g,"");if(o.length!==8)return null;try{const a=await fetch(`https://viacep.com.br/ws/${o}/json/`);if(!a.ok)return null;const l=await a.json();return l.erro?null:l}catch{return null}}const Oo={class:"w-crud-form"},jo={key:0,class:"w-crud-form-group-header"},Wo={class:"w-crud-form-group-title"},Uo={key:0,class:"w-crud-form-group-desc"},qo={class:"w-crud-form-fields"},Ho={key:0,class:"w-crud-form-switch"},Ko={class:"w-crud-form-switch-label"},Go={key:1,class:"w-crud-form-col-full"},Jo={class:"w-crud-form-label"},Zo={key:0,class:"w-crud-form-required"},Xo={class:"w-crud-form-color-row"},_o={key:2,class:"w-crud-form-col-full"},Qo={class:"w-crud-form-label"},ea=["accept","disabled","onChange"],ta={key:3,class:"w-crud-form-col-full"},oa={class:"w-crud-form-label"},aa={key:0,class:"w-crud-form-required"},na={class:"w-crud-form-label"},la={key:0,class:"w-crud-form-required"},ra={key:1,class:"pi pi-spin pi-spinner w-crud-form-cep-spinner"},ia={key:16,class:"w-crud-form-cep-error"},sa={key:17,class:"w-crud-form-error"},yt=e.defineComponent({__name:"WFormRenderer",props:{fields:{},formData:{},isEditing:{type:Boolean},disabled:{type:Boolean,default:!1}},emits:["update:field"],setup(t,{expose:o,emit:a}){const l=t,r=a,i=e.reactive({}),s=e.reactive({}),v=e.reactive({}),d=e.reactive({});function h(m,C){const c=C.target.value,n=c.replace(/\D/g,"");r("update:field",m.field,c),v[m.field]=null,d[m.field]&&(clearTimeout(d[m.field]),d[m.field]=null),n.length===8&&(d[m.field]=setTimeout(async()=>{s[m.field]=!0,v[m.field]=null;try{const f=await Yo(n);if(!f)v[m.field]="CEP não encontrado. Preencha os campos manualmente.";else{const u=m.cepFields||{},E=Object.keys(u);for(const S of E){const T=u[S];if(!T)continue;const G=l.formData[T];(G==null||G==="")&&r("update:field",T,f[S]??"")}}}finally{s[m.field]=!1}},400))}const N=e.computed(()=>l.fields.filter(m=>m.visible===void 0||m.visible===!0?!0:typeof m.visible=="function"?m.visible(l.formData,l.isEditing):m.visible));function V(m){return l.disabled||m.disabledOnEdit&&l.isEditing?!0:typeof m.disabled=="function"?m.disabled(l.formData,l.isEditing):!!m.disabled}function A(m){return e.isRef(m)?m.value:m}const x=e.computed(()=>{const m=l.isEditing?"edit":"create",C=l.fields.find(n=>n.autofocus===!0||n.autofocus===m);if(C)return C.field;const c=N.value.find(n=>!(n.type==="switch"||n.type==="fk"||n.type==="select"||n.type==="image"||n.disabled===!0||n.disabledOnEdit&&l.isEditing));return(c==null?void 0:c.field)??null});function I(m){return m.field===x.value}function Y(m){if(m)return m.replace(/9/g,"#").replace(/a/g,"S").replace(/\*/g,"X")}function p(m){if(!m)return"";const C=String(m).replace(/\D/g,"").slice(0,14);return C.length<=11?C.replace(/(\d{3})(\d)/,"$1.$2").replace(/(\d{3})(\d)/,"$1.$2").replace(/(\d{3})(\d{1,2})$/,"$1-$2"):C.replace(/(\d{2})(\d)/,"$1.$2").replace(/(\d{3})(\d)/,"$1.$2").replace(/(\d{3})(\d)/,"$1/$2").replace(/(\d{4})(\d{1,2})$/,"$1-$2")}function g(m,C){const c=C.target.value.replace(/\D/g,"").slice(0,14);r("update:field",m,c)}const k=e.reactive({});function w(m){const C=l.formData[m.field];if(C==null)return null;const c=m.optionValue||"value";return(A(m.options)||[]).find(f=>f[c]===C)??null}function R(m){return k[m.field]||[]}function L(m,C){const c=(C.query||"").toLowerCase(),n=A(m.options)||[],f=m.optionLabel||"label";k[m.field]=n.filter(u=>String(u[f]||"").toLowerCase().includes(c))}function F(m,C){const c=m.optionValue||"value";r("update:field",m.field,C.value[c])}function z(m){const C=l.formData[m.field];return C?String(C).replace("#",""):"FFFFFF"}function M(m,C){r("update:field",m.field,`#${C}`)}function O(m){if(typeof m.validate=="function"){const C=m.validate(l.formData[m.field]);i[m.field]=C||null}}function K(){const m=[];for(const C of l.fields)if(typeof C.validate=="function"){const c=C.validate(l.formData[C.field]);i[C.field]=c||null,c&&m.push(c)}return m}function H(){Object.keys(i).forEach(m=>delete i[m])}const W=e.computed(()=>{var n,f,u,E;const m=new Map,C=[],c=new Map;for(const S of N.value){const T=((n=S.fieldGroup)==null?void 0:n.id)??"__default__";m.has(T)||(m.set(T,{id:T,title:(f=S.fieldGroup)==null?void 0:f.title,description:(u=S.fieldGroup)==null?void 0:u.description,fields:[]}),C.push(T),((E=S.fieldGroup)==null?void 0:E.order)!=null&&c.set(T,S.fieldGroup.order)),m.get(T).fields.push(S)}return C.slice().sort((S,T)=>{const G=c.get(S),_=c.get(T);return G!=null&&_!=null?G-_:G!=null?-1:_!=null?1:C.indexOf(S)-C.indexOf(T)}).map(S=>m.get(S))});return o({validateAll:K,clearErrors:H}),(m,C)=>(e.openBlock(),e.createElementBlock("div",Oo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(W.value,c=>(e.openBlock(),e.createElementBlock("div",{key:c.id,class:"w-crud-form-group"},[c.title?(e.openBlock(),e.createElementBlock("div",jo,[e.createElementVNode("h3",Wo,e.toDisplayString(c.title),1),c.description?(e.openBlock(),e.createElementBlock("p",Uo,e.toDisplayString(c.description),1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",qo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.fields,n=>e.renderSlot(m.$slots,`field-${n.field}`,{key:n.field,field:n,formData:t.formData,isEditing:t.isEditing,setFormField:(f,u)=>r("update:field",f,u)},()=>[n.type==="switch"?(e.openBlock(),e.createElementBlock("div",Ho,[e.createVNode(e.unref(Lt),{"model-value":t.formData[n.field],disabled:V(n),"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","disabled","onUpdate:modelValue"]),e.createElementVNode("label",Ko,e.toDisplayString(n.switchLabel||n.label),1)])):n.type==="color"?(e.openBlock(),e.createElementBlock("div",Go,[e.createElementVNode("label",Jo,[e.createTextVNode(e.toDisplayString(n.label)+" ",1),n.required?(e.openBlock(),e.createElementBlock("span",Zo,"*")):e.createCommentVNode("",!0)]),e.createElementVNode("div",Xo,[e.createVNode(e.unref(zt),{"model-value":z(n),disabled:V(n),"onUpdate:modelValue":f=>M(n,f)},null,8,["model-value","disabled","onUpdate:modelValue"]),e.createVNode(e.unref(X),{"model-value":t.formData[n.field],class:"w-28",maxlength:"7",placeholder:"#000000",disabled:V(n),"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","disabled","onUpdate:modelValue"])])])):n.type==="image"?(e.openBlock(),e.createElementBlock("div",_o,[e.createElementVNode("label",Qo,e.toDisplayString(n.label),1),e.renderSlot(m.$slots,`image-${n.field}`,{field:n,formData:t.formData},()=>[e.createElementVNode("input",{type:"file",accept:n.accept||"image/*",disabled:V(n),onChange:f=>{var E;const u=((E=f.target.files)==null?void 0:E[0])??null;r("update:field",n.field,u)}},null,40,ea)])])):n.type==="transfer"?(e.openBlock(),e.createElementBlock("div",ta,[e.createElementVNode("label",oa,[e.createTextVNode(e.toDisplayString(n.label)+" ",1),n.required?(e.openBlock(),e.createElementBlock("span",aa,"*")):e.createCommentVNode("",!0)]),e.createVNode(Ue,{source:A(n.options)||[],selected:t.formData[n.field]||[],"track-by":n.optionValue||"id","option-label":n.optionLabel||"nome","search-fields":n.searchFields,disabled:V(n),"onUpdate:selected":f=>r("update:field",n.field,f)},null,8,["source","selected","track-by","option-label","search-fields","disabled","onUpdate:selected"])])):(e.openBlock(),e.createElementBlock("div",{key:4,class:e.normalizeClass(n.colSpan===.5?"w-crud-form-col-half":"w-crud-form-col-full")},[e.createElementVNode("label",na,[e.createTextVNode(e.toDisplayString(n.label)+" ",1),n.required?(e.openBlock(),e.createElementBlock("span",la,"*")):e.createCommentVNode("",!0),s[n.field]?(e.openBlock(),e.createElementBlock("i",ra)):e.createCommentVNode("",!0)]),(!n.type||n.type==="text")&&n.mask?e.withDirectives((e.openBlock(),e.createBlock(e.unref(X),{key:0,"model-value":t.formData[n.field],fluid:"",autofocus:I(n)||void 0,placeholder:n.placeholder,disabled:V(n),"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","autofocus","placeholder","disabled","onUpdate:modelValue"])),[[e.unref(Te),{mask:Y(n.mask)}]]):!n.type||n.type==="text"?(e.openBlock(),e.createBlock(e.unref(X),{key:1,"model-value":t.formData[n.field],fluid:"",autofocus:I(n)||void 0,placeholder:n.placeholder,disabled:V(n),"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","autofocus","placeholder","disabled","onUpdate:modelValue"])):n.type==="email"?(e.openBlock(),e.createBlock(e.unref(X),{key:2,"model-value":t.formData[n.field],type:"email",fluid:"",autofocus:I(n)||void 0,placeholder:n.placeholder,disabled:V(n),"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","autofocus","placeholder","disabled","onUpdate:modelValue"])):n.type==="password"?(e.openBlock(),e.createBlock(e.unref(Tt),{key:3,"model-value":t.formData[n.field],fluid:"","toggle-mask":"",feedback:n.feedback!==!1,placeholder:n.placeholder,disabled:V(n),"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","feedback","placeholder","disabled","onUpdate:modelValue"])):n.type==="number"?(e.openBlock(),e.createBlock(e.unref(He),{key:4,"model-value":t.formData[n.field],fluid:"",locale:"pt-BR",min:n.min,max:n.max,"min-fraction-digits":n.minFractionDigits,"max-fraction-digits":n.maxFractionDigits,suffix:n.suffix,prefix:n.prefix,placeholder:n.placeholder,disabled:V(n),"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","min","max","min-fraction-digits","max-fraction-digits","suffix","prefix","placeholder","disabled","onUpdate:modelValue"])):n.type==="currency"&&n.fillFromRight?(e.openBlock(),e.createBlock(We,{key:5,"model-value":t.formData[n.field],decimals:n.decimals??2,currency:"",prefix:n.prefix,suffix:n.suffix,placeholder:n.placeholder,disabled:V(n),"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","decimals","prefix","suffix","placeholder","disabled","onUpdate:modelValue"])):n.type==="currency"?(e.openBlock(),e.createBlock(e.unref(He),{key:6,"model-value":t.formData[n.field],fluid:"",mode:"currency",currency:"BRL",locale:"pt-BR",min:n.min,max:n.max,placeholder:n.placeholder,disabled:V(n),"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","min","max","placeholder","disabled","onUpdate:modelValue"])):n.type==="select"?(e.openBlock(),e.createBlock(e.unref(Rt),{key:7,"model-value":t.formData[n.field],fluid:"",options:A(n.options),"option-label":n.optionLabel||"label","option-value":n.optionValue||"value","show-clear":n.showClear!==!1,placeholder:n.placeholder,disabled:V(n),"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","options","option-label","option-value","show-clear","placeholder","disabled","onUpdate:modelValue"])):n.type==="autocomplete"?(e.openBlock(),e.createBlock(e.unref(lt),{key:8,"model-value":w(n),fluid:"",suggestions:R(n),"option-label":n.optionLabel||"label",placeholder:n.placeholder,disabled:V(n),onComplete:f=>L(n,f),onItemSelect:f=>F(n,f),onClear:f=>r("update:field",n.field,null)},null,8,["model-value","suggestions","option-label","placeholder","disabled","onComplete","onItemSelect","onClear"])):n.type==="fk"?(e.openBlock(),e.createBlock(je,{key:9,"model-value":t.formData[n.field],endpoint:n.endpoint,"endpoint-params":n.endpointParams,"option-label":n.optionLabel||"nome",placeholder:n.placeholder,disabled:V(n),"show-clear":n.showClear!==!1,"dialog-header":n.label,"crud-fields":n.crudFields,"crud-columns":n.crudColumns,"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","endpoint","endpoint-params","option-label","placeholder","disabled","show-clear","dialog-header","crud-fields","crud-columns","onUpdate:modelValue"])):n.type==="date"?(e.openBlock(),e.createBlock(e.unref(Ke),{key:10,"model-value":t.formData[n.field],fluid:"","date-format":n.dateFormat||"dd/mm/yy",placeholder:n.placeholder,disabled:V(n),"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","date-format","placeholder","disabled","onUpdate:modelValue"])):n.type==="datetime"?(e.openBlock(),e.createBlock(e.unref(Ke),{key:11,"model-value":t.formData[n.field],fluid:"","show-time":"","hour-format":n.hourFormat||"24","date-format":n.dateFormat||"dd/mm/yy",placeholder:n.placeholder,disabled:V(n),"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","hour-format","date-format","placeholder","disabled","onUpdate:modelValue"])):n.type==="cpf_cnpj"?(e.openBlock(),e.createBlock(e.unref(X),{key:12,"model-value":p(t.formData[n.field]),fluid:"",maxlength:"18",placeholder:n.placeholder||"000.000.000-00",disabled:V(n),invalid:!!i[n.field],onInput:f=>g(n.field,f),onBlur:f=>O(n)},null,8,["model-value","placeholder","disabled","invalid","onInput","onBlur"])):n.type==="mask"?e.withDirectives((e.openBlock(),e.createBlock(e.unref(X),{key:13,"model-value":t.formData[n.field],fluid:"",placeholder:n.placeholder,disabled:V(n),invalid:!!i[n.field],"onUpdate:modelValue":f=>r("update:field",n.field,f),onBlur:f=>O(n)},null,8,["model-value","placeholder","disabled","invalid","onUpdate:modelValue","onBlur"])),[[e.unref(Te),{mask:Y(n.mask)}]]):n.type==="cep"?e.withDirectives((e.openBlock(),e.createBlock(e.unref(X),{key:14,"model-value":t.formData[n.field],fluid:"",placeholder:n.placeholder||"00000-000",disabled:V(n),invalid:!!v[n.field],onInput:f=>h(n,f)},null,8,["model-value","placeholder","disabled","invalid","onInput"])),[[e.unref(Te),{mask:"#####-###"}]]):n.type==="textarea"?(e.openBlock(),e.createBlock(e.unref(At),{key:15,"model-value":t.formData[n.field],fluid:"",autofocus:I(n)||void 0,rows:n.rows||3,placeholder:n.placeholder,disabled:V(n),"onUpdate:modelValue":f=>r("update:field",n.field,f)},null,8,["model-value","autofocus","rows","placeholder","disabled","onUpdate:modelValue"])):e.createCommentVNode("",!0),v[n.field]?(e.openBlock(),e.createElementBlock("small",ia,e.toDisplayString(v[n.field]),1)):i[n.field]?(e.openBlock(),e.createElementBlock("small",sa,e.toDisplayString(i[n.field]),1)):e.createCommentVNode("",!0)],2))])),128))])]))),128))]))}}),ca={class:"w-crud-form-footer"},Le=e.defineComponent({__name:"WCrudFormDialog",props:{visible:{type:Boolean},title:{},fields:{},formData:{},isEditing:{type:Boolean},saving:{type:Boolean},disabled:{type:Boolean,default:!1},width:{default:"480px"}},emits:["update:visible","update:field","save"],setup(t,{emit:o}){const a=t,l=o,r=e.ref(null);function i(){r.value?r.value.validateAll().length===0&&l("save"):l("save")}return e.watch(()=>a.visible,s=>{s&&r.value&&r.value.clearErrors()}),(s,v)=>(e.openBlock(),e.createBlock(e.unref(nt),{visible:t.visible,header:t.title,style:e.normalizeStyle({width:t.width}),modal:"",draggable:!1,class:"w-crud-form-dialog","onUpdate:visible":v[2]||(v[2]=d=>l("update:visible",d))},{default:e.withCtx(()=>[e.createElementVNode("form",{class:"w-crud-form",onSubmit:e.withModifiers(i,["prevent"])},[e.createVNode(yt,{ref_key:"rendererRef",ref:r,fields:t.fields,"form-data":t.formData,"is-editing":t.isEditing,disabled:t.disabled,"onUpdate:field":v[0]||(v[0]=(d,h)=>l("update:field",d,h))},e.createSlots({_:2},[e.renderList(t.fields,d=>({name:`field-${d.field}`,fn:e.withCtx(h=>[e.renderSlot(s.$slots,`field-${d.field}`,e.normalizeProps(e.guardReactiveProps(h)))])})),e.renderList(t.fields.filter(d=>d.type==="image"),d=>({name:`image-${d.field}`,fn:e.withCtx(h=>[e.renderSlot(s.$slots,`image-${d.field}`,e.normalizeProps(e.guardReactiveProps(h)))])}))]),1032,["fields","form-data","is-editing","disabled"]),e.createElementVNode("div",ca,[e.renderSlot(s.$slots,"footer",{saving:t.saving,disabled:t.disabled},()=>[e.createVNode(e.unref(U),{type:"button",label:t.disabled?"Fechar":"Cancelar",severity:"secondary",text:"",disabled:t.saving,onClick:v[1]||(v[1]=d=>l("update:visible",!1))},null,8,["label","disabled"]),t.disabled?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(U),{key:0,type:"submit",label:t.isEditing?"Atualizar":"Salvar",icon:"pi pi-check",loading:t.saving},null,8,["label","loading"]))])])],32)]),_:3},8,["visible","header","style"]))}});function ua(t,o){const a=o[t.field];return t.format?t.format(a,o):a==null?"":typeof a=="boolean"?a?"Sim":"Não":String(a)}function et(t,o){return t.includes('"')||t.includes(o)||t.includes(`
|
|
3
3
|
`)||t.includes("\r")?`"${t.replace(/"/g,'""')}"`:t}function bt(t,o,a={}){const l=a.separator??";",r=o.map(s=>et(s.header,l)).join(l),i=t.map(s=>o.map(v=>et(ua(v,s),l)).join(l));return"\uFEFF"+[r,...i].join(`\r
|
|
4
|
-
`)}function wt(t,o="export.csv"){const a=new Blob([t],{type:"text/csv;charset=utf-8;"}),l=URL.createObjectURL(a),r=document.createElement("a");r.href=l,r.download=o,document.body.appendChild(r),r.click(),document.body.removeChild(r),URL.revokeObjectURL(l)}const da={class:"w-crud"},ma={key:0,class:"w-crud-header"},fa={class:"w-crud-header-content"},pa={class:"w-crud-title"},va={key:0,class:"w-crud-subtitle"},ga={class:"w-crud-header-actions"},ha={key:0,class:"w-crud-kpis"},ka={class:"w-crud-kpi-content"},ya={class:"w-crud-kpi-label"},ba={class:"w-crud-kpi-value"},wa={class:"w-crud-content-main"},Ba={key:0,class:"w-crud-table"},Ca={class:"w-crud-toolbar"},Va={class:"w-crud-toolbar-start"},Ea={class:"w-crud-toolbar-end"},$a={key:1,class:"w-crud-view-toggle"},Na={class:"w-crud-actions"},Sa={key:1,class:"w-crud-cards-wrap"},Da={class:"w-crud-toolbar w-crud-toolbar--standalone"},xa={class:"w-crud-toolbar-start"},Pa={class:"w-crud-toolbar-end"},Fa={key:1,class:"w-crud-view-toggle"},Ma={key:0,class:"w-crud-cards-loading"},Aa={key:2,class:"w-crud-cards"},Ra=["onClick","onDblclick","onContextmenu"],La={class:"w-crud-card-body"},za={key:0,class:"w-crud-card-label"},Ta={class:"w-crud-card-value"},Ia={key:0,class:"w-crud-card-actions"},Ya={key:0,class:"w-crud-rail"},Oa={key:1,class:"w-crud-rail-sep"},Bt=e.defineComponent({__name:"WCrudView",props:{crud:{},title:{},subtitle:{},showSearch:{type:Boolean,default:!0},showHeader:{type:Boolean,default:!0},dialogWidth:{default:"480px"},autoInit:{type:Boolean,default:!0},showKpi:{type:Boolean,default:!1},kpiIcon:{default:"pi pi-list"},kpiLabel:{default:"Total de Registros"},extraKpis:{default:()=>[]},expandable:{type:Boolean,default:!1},viewToggle:{type:Boolean,default:!0},defaultView:{default:"table"},cardFields:{default:4},actionRail:{type:Boolean,default:!0},contextMenu:{type:Boolean,default:!0},exportCsv:{type:Boolean,default:!0},csvFilename:{default:"export.csv"},csvScope:{default:"all"},csvPageSize:{default:200}},emits:["row-expand","row-collapse","print"],setup(t,{emit:o}){const a=t,l=o,r=e.useSlots(),{formatNumber:i}=Re(),s=e.ref({}),v=e.ref(a.defaultView);function d(c){return v.value===c}function h(c){v.value=c}const N=e.computed(()=>(a.crud.pagination.page-1)*a.crud.pagination.pageSize),V=e.computed(()=>a.crud.config.columns.filter(c=>c.visible!==!1).map(c=>c.type==="number"&&!c.align?{...c,align:"right"}:c.type==="currency"&&!c.align?{...c,align:"right"}:c));function A(c){if(c.align==="right")return"text-right";if(c.align==="center")return"text-center"}const x=e.computed(()=>V.value.slice(0,a.cardFields)),I=e.computed(()=>{const c=[];return a.crud.config.canEdit!==!1&&c.push({action:"edit",icon:"pi pi-pencil",tooltip:"Editar"}),a.crud.config.canCreate!==!1&&c.push({action:"duplicate",icon:"pi pi-copy",tooltip:"Duplicar",severity:"info"}),a.crud.config.canDelete!==!1&&c.push({action:"delete",icon:"pi pi-trash",tooltip:"Excluir",severity:"danger"}),c}),Y=e.computed(()=>a.crud.config.rowActions??I.value),p=e.computed(()=>Y.value.length>0||!!r["row-actions"]);function g(c,n){if(c.handler){c.handler(n);return}c.action==="edit"?a.crud.openEditDialog(n):c.action==="view"?a.crud.openViewDialog(n):c.action==="duplicate"?a.crud.openDuplicateDialog(n):c.action==="delete"&&a.crud.confirmDelete(n)}function k(c,n){return c.visible?c.visible(n):!0}function w(c,n){return c.disabled?c.disabled(n):!1}const R=e.computed(()=>{const c=[];return a.showKpi&&c.push({icon:a.kpiIcon,label:a.kpiLabel,value:i(a.crud.pagination.rows,0)}),c.push(...a.extraKpis),c});e.computed(()=>a.crud.config.labels??{});const L=e.computed(()=>a.crud.config.canCreate!==!1),F=e.ref(null),z=e.ref(null);function M(c){F.value=c}function O(c){var n;a.contextMenu&&(F.value=c.data,(n=z.value)==null||n.show(c.originalEvent))}function K(c,n){var f;a.contextMenu&&(c.preventDefault(),F.value=n,(f=z.value)==null||f.show(c))}const H=e.computed(()=>{const c=F.value;if(!c)return[];const n=[{label:"Ver detalhes",icon:"pi pi-eye",command:()=>a.crud.openViewDialog(c)}];for(const f of Y.value)k(f,c)&&n.push({label:f.tooltip??f.action,icon:f.icon,class:f.severity==="danger"?"w-crud-ctx-danger":void 0,disabled:w(f,c),command:()=>g(f,c)});return n.push({label:"Imprimir",icon:"pi pi-print",command:()=>l("print",c)}),a.exportCsv&&(n.push({separator:!0}),n.push({label:a.csvScope==="all"?"Exportar tudo (CSV)":"Exportar página (CSV)",icon:"pi pi-download",command:()=>C()})),n});function W(){F.value&&l("print",F.value)}const m=e.ref(!1);async function C(){if(!m.value){m.value=!0;try{const c=a.csvScope==="page"?a.crud.items.value:await a.crud.fetchAll(a.csvPageSize),n=bt(c,V.value);wt(n,a.csvFilename)}finally{m.value=!1}}}return e.onMounted(()=>{a.autoInit&&a.crud.init()}),(c,n)=>{const f=e.resolveDirective("tooltip");return e.openBlock(),e.createElementBlock("div",da,[t.showHeader?(e.openBlock(),e.createElementBlock("div",ma,[e.createElementVNode("div",fa,[e.createElementVNode("h1",pa,e.toDisplayString(t.title),1),t.subtitle?(e.openBlock(),e.createElementBlock("p",va,e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",ga,[e.renderSlot(c.$slots,"header-actions"),L.value?(e.openBlock(),e.createBlock(e.unref(U),{key:0,label:"Novo",icon:"pi pi-plus",onClick:n[0]||(n[0]=u=>t.crud.openCreateDialog())})):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"before-table",{},()=>[R.value.length?(e.openBlock(),e.createElementBlock("div",ha,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(R.value,(u,E)=>(e.openBlock(),e.createElementBlock("div",{key:E,class:"w-crud-kpi"},[e.createElementVNode("div",{class:e.normalizeClass(["w-crud-kpi-icon",u.severity?`w-crud-kpi-icon--${u.severity}`:""])},[e.createElementVNode("i",{class:e.normalizeClass([u.icon]),style:e.normalizeStyle(u.color?`color: ${u.color}`:"")},null,6)],2),e.createElementVNode("div",ka,[e.createElementVNode("div",ya,e.toDisplayString(u.label),1),e.createElementVNode("div",ba,e.toDisplayString(u.value),1)])]))),128))])):e.createCommentVNode("",!0)]),e.createElementVNode("div",{class:e.normalizeClass(["w-crud-content",{"w-crud-content--rail":t.actionRail}])},[e.createElementVNode("div",wa,[v.value==="table"?(e.openBlock(),e.createElementBlock("div",Ba,[e.createVNode(e.unref(ot),{value:t.crud.items.value,loading:t.crud.loading.value,"expanded-rows":s.value,"onUpdate:expandedRows":n[4]||(n[4]=u=>s.value=u),paginator:"",rows:t.crud.pagination.pageSize,"total-records":t.crud.pagination.rows,"rows-per-page-options":[10,20,50],"paginator-template":"CurrentPageReport PrevPageLink NextPageLink","current-page-report-template":"Página {currentPage} de {totalPages}",pt:{pcPaginator:{root:{class:"w-crud-paginator"}}},lazy:"","striped-rows":"","removable-sort":"",size:"small","sort-field":t.crud.sort.field??void 0,"sort-order":t.crud.sort.order,"data-key":t.crud.config.pk||"id",selection:t.actionRail||t.contextMenu?F.value:void 0,"selection-mode":t.actionRail||t.contextMenu?"single":void 0,"context-menu":t.contextMenu,"context-menu-selection":t.contextMenu?F.value:void 0,"onUpdate:selection":n[5]||(n[5]=u=>F.value=u),"onUpdate:contextMenuSelection":n[6]||(n[6]=u=>F.value=u),onRowContextmenu:O,onPage:t.crud.onPage,onSort:n[7]||(n[7]=u=>t.crud.onSort({sortField:u.sortField,sortOrder:u.sortOrder})),onRowExpand:n[8]||(n[8]=u=>l("row-expand",u.data)),onRowCollapse:n[9]||(n[9]=u=>l("row-collapse",u.data))},e.createSlots({header:e.withCtx(()=>[e.createElementVNode("div",Ca,[e.createElementVNode("div",Va,[t.showSearch?(e.openBlock(),e.createBlock(e.unref($e),{key:0},{default:e.withCtx(()=>[e.createVNode(e.unref(Ne),{class:"pi pi-search"}),e.createVNode(e.unref(Z),{"model-value":t.crud.search.value,placeholder:"Buscar...",class:"w-72",onInput:t.crud.onSearch},null,8,["model-value","onInput"])]),_:1})):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"toolbar-start"),e.renderSlot(c.$slots,"toolbar-filters")]),e.createElementVNode("div",Ea,[e.renderSlot(c.$slots,"toolbar-actions"),t.exportCsv?e.withDirectives((e.openBlock(),e.createBlock(e.unref(U),{key:0,icon:"pi pi-download",text:"",size:"small",loading:m.value,onClick:C},null,8,["loading"])),[[f,t.csvScope==="all"?"Exportar tudo (CSV)":"Exportar página (CSV)",void 0,{top:!0}]]):e.createCommentVNode("",!0),t.viewToggle?(e.openBlock(),e.createElementBlock("div",$a,[e.createVNode(e.unref(U),{icon:"pi pi-table",size:"small",text:!d("table"),outlined:d("table"),onClick:n[1]||(n[1]=u=>h("table"))},null,8,["text","outlined"]),e.createVNode(e.unref(U),{icon:"pi pi-th-large",size:"small",text:!d("cards"),outlined:d("cards"),onClick:n[2]||(n[2]=u=>h("cards"))},null,8,["text","outlined"])])):e.createCommentVNode("",!0),!t.showHeader&&L.value?(e.openBlock(),e.createBlock(e.unref(U),{key:2,label:"Novo",icon:"pi pi-plus",onClick:n[3]||(n[3]=u=>t.crud.openCreateDialog())})):e.createCommentVNode("",!0)])])]),empty:e.withCtx(()=>[e.renderSlot(c.$slots,"empty",{},()=>[n[17]||(n[17]=e.createElementVNode("div",{class:"w-crud-empty"},[e.createElementVNode("div",{class:"w-crud-empty-icon"},[e.createElementVNode("i",{class:"pi pi-inbox"})]),e.createElementVNode("p",{class:"w-crud-empty-title"},"Nenhum registro encontrado"),e.createElementVNode("p",{class:"w-crud-empty-text"},"Tente ajustar sua busca ou crie um novo registro")],-1))])]),default:e.withCtx(()=>[t.expandable?(e.openBlock(),e.createBlock(e.unref(ke),{key:0,expander:"",style:{width:"3rem"}})):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.value,u=>(e.openBlock(),e.createBlock(e.unref(ke),{key:u.field,field:u.field,header:u.header,sortable:u.sortable,style:e.normalizeStyle(u.style),"header-class":A(u),"body-class":A(u)},{body:e.withCtx(({data:E})=>[e.renderSlot(c.$slots,`column-${u.field}`,{data:E,value:E[u.field]},()=>[e.createVNode(Se,{column:u,value:E[u.field],"row-data":E},null,8,["column","value","row-data"])])]),_:2},1032,["field","header","sortable","style","header-class","body-class"]))),128)),p.value&&!t.actionRail?(e.openBlock(),e.createBlock(e.unref(ke),{key:1,"header-class":"w-crud-actions-header",style:e.normalizeStyle({width:`${(Y.value.length+(e.unref(r)["row-actions"]?1:0))*2.5+1}rem`})},{body:e.withCtx(({data:u})=>[e.createElementVNode("div",Na,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Y.value,E=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:E.action},[k(E,u)?e.withDirectives((e.openBlock(),e.createBlock(e.unref(U),{key:0,icon:E.icon,text:"",rounded:"",size:"small",severity:E.severity,disabled:w(E,u),onClick:S=>g(E,u)},null,8,["icon","severity","disabled","onClick"])),[[f,E.tooltip,void 0,{top:!0}]]):e.createCommentVNode("",!0)],64))),128)),e.renderSlot(c.$slots,"row-actions",{data:u,crud:t.crud})])]),_:3},8,["style"])):e.createCommentVNode("",!0)]),_:2},[t.expandable?{name:"expansion",fn:e.withCtx(u=>[e.renderSlot(c.$slots,"expansion",{data:u.data})]),key:"0"}:void 0]),1032,["value","loading","expanded-rows","rows","total-records","sort-field","sort-order","data-key","selection","selection-mode","context-menu","context-menu-selection","onPage"])])):(e.openBlock(),e.createElementBlock("div",Sa,[e.createElementVNode("div",Da,[e.createElementVNode("div",xa,[t.showSearch?(e.openBlock(),e.createBlock(e.unref($e),{key:0},{default:e.withCtx(()=>[e.createVNode(e.unref(Ne),{class:"pi pi-search"}),e.createVNode(e.unref(Z),{"model-value":t.crud.search.value,placeholder:"Buscar...",class:"w-72",onInput:t.crud.onSearch},null,8,["model-value","onInput"])]),_:1})):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"toolbar-start"),e.renderSlot(c.$slots,"toolbar-filters")]),e.createElementVNode("div",Pa,[e.renderSlot(c.$slots,"toolbar-actions"),t.exportCsv?e.withDirectives((e.openBlock(),e.createBlock(e.unref(U),{key:0,icon:"pi pi-download",text:"",size:"small",loading:m.value,onClick:C},null,8,["loading"])),[[f,t.csvScope==="all"?"Exportar tudo (CSV)":"Exportar página (CSV)",void 0,{top:!0}]]):e.createCommentVNode("",!0),t.viewToggle?(e.openBlock(),e.createElementBlock("div",Fa,[e.createVNode(e.unref(U),{icon:"pi pi-table",size:"small",text:!d("table"),outlined:d("table"),onClick:n[10]||(n[10]=u=>h("table"))},null,8,["text","outlined"]),e.createVNode(e.unref(U),{icon:"pi pi-th-large",size:"small",text:!d("cards"),outlined:d("cards"),onClick:n[11]||(n[11]=u=>h("cards"))},null,8,["text","outlined"])])):e.createCommentVNode("",!0),!t.showHeader&&L.value?(e.openBlock(),e.createBlock(e.unref(U),{key:2,label:"Novo",icon:"pi pi-plus",onClick:n[12]||(n[12]=u=>t.crud.openCreateDialog())})):e.createCommentVNode("",!0)])]),t.crud.loading.value?(e.openBlock(),e.createElementBlock("div",Ma,[...n[18]||(n[18]=[e.createElementVNode("i",{class:"pi pi-spin pi-spinner"},null,-1)])])):t.crud.items.value.length?(e.openBlock(),e.createElementBlock("div",Aa,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.crud.items.value,(u,E)=>(e.openBlock(),e.createElementBlock("div",{key:u[t.crud.config.pk||"id"]??E,class:e.normalizeClass(["w-crud-card",{"w-crud-card--selected":F.value===u}]),onClick:S=>M(u),onDblclick:S=>t.crud.config.canEdit!==!1&&t.crud.openEditDialog(u),onContextmenu:S=>K(S,u)},[e.createElementVNode("div",La,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(x.value,(S,T)=>(e.openBlock(),e.createElementBlock("div",{key:S.field,class:e.normalizeClass(["w-crud-card-row",{"w-crud-card-row--title":T===0}])},[T!==0?(e.openBlock(),e.createElementBlock("span",za,e.toDisplayString(S.header),1)):e.createCommentVNode("",!0),e.createElementVNode("span",Ta,[e.renderSlot(c.$slots,`column-${S.field}`,{data:u,value:u[S.field]},()=>[e.createVNode(Se,{column:S,value:u[S.field],"row-data":u},null,8,["column","value","row-data"])])])],2))),128))]),p.value&&!t.actionRail?(e.openBlock(),e.createElementBlock("div",Ia,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Y.value,S=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:S.action},[k(S,u)?e.withDirectives((e.openBlock(),e.createBlock(e.unref(U),{key:0,icon:S.icon,text:"",rounded:"",size:"small",severity:S.severity,disabled:w(S,u),onClick:T=>g(S,u)},null,8,["icon","severity","disabled","onClick"])),[[f,S.tooltip,void 0,{top:!0}]]):e.createCommentVNode("",!0)],64))),128)),e.renderSlot(c.$slots,"row-actions",{data:u,crud:t.crud})])):e.createCommentVNode("",!0)],42,Ra))),128))])):e.renderSlot(c.$slots,"empty",{key:1},()=>[n[19]||(n[19]=e.createStaticVNode('<div class="w-crud-empty"><div class="w-crud-empty-icon"><i class="pi pi-inbox"></i></div><p class="w-crud-empty-title">Nenhum registro encontrado</p><p class="w-crud-empty-text">Tente ajustar sua busca ou crie um novo registro</p></div>',1))]),t.crud.items.value.length?(e.openBlock(),e.createBlock(e.unref(Ft),{key:3,rows:t.crud.pagination.pageSize,"total-records":t.crud.pagination.rows,first:N.value,"rows-per-page-options":[10,20,50],template:"CurrentPageReport PrevPageLink NextPageLink","current-page-report-template":"Página {currentPage} de {totalPages}",class:"w-crud-paginator",onPage:t.crud.onPage},null,8,["rows","total-records","first","onPage"])):e.createCommentVNode("",!0)]))]),t.actionRail?(e.openBlock(),e.createElementBlock("aside",Ya,[L.value?e.withDirectives((e.openBlock(),e.createBlock(e.unref(U),{key:0,icon:"pi pi-plus",rounded:"",onClick:n[13]||(n[13]=u=>t.crud.openCreateDialog())},null,512)),[[f,"Novo",void 0,{left:!0}]]):e.createCommentVNode("",!0),L.value&&Y.value.length?(e.openBlock(),e.createElementBlock("div",Oa)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Y.value,u=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:u.action},[!F.value||k(u,F.value)?e.withDirectives((e.openBlock(),e.createBlock(e.unref(U),{key:0,icon:u.icon,text:"",rounded:"",severity:u.severity,disabled:!F.value||w(u,F.value),onClick:E=>F.value&&g(u,F.value)},null,8,["icon","severity","disabled","onClick"])),[[f,u.tooltip,void 0,{left:!0}]]):e.createCommentVNode("",!0)],64))),128)),e.renderSlot(c.$slots,"rail-actions",{selected:F.value,crud:t.crud}),n[20]||(n[20]=e.createElementVNode("div",{class:"w-crud-rail-sep"},null,-1)),e.withDirectives(e.createVNode(e.unref(U),{icon:"pi pi-print",text:"",rounded:"",disabled:!F.value,onClick:W},null,8,["disabled"]),[[f,"Imprimir",void 0,{left:!0}]]),t.exportCsv?e.withDirectives((e.openBlock(),e.createBlock(e.unref(U),{key:2,icon:"pi pi-download",text:"",rounded:"",loading:m.value,onClick:C},null,8,["loading"])),[[f,t.csvScope==="all"?"Exportar tudo (CSV)":"Exportar página (CSV)",void 0,{left:!0}]]):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)],2),t.contextMenu?(e.openBlock(),e.createBlock(e.unref(Mt),{key:1,ref_key:"cm",ref:z,model:H.value},null,8,["model"])):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"form-dialog",{crud:t.crud,dialogWidth:t.dialogWidth},()=>{var u;return[e.createVNode(Le,{visible:t.crud.dialogVisible.value,title:t.crud.dialogTitle.value,fields:t.crud.config.form,"form-data":t.crud.formData,"is-editing":t.crud.isEditing.value,saving:t.crud.saving.value,disabled:((u=t.crud.viewMode)==null?void 0:u.value)??!1,width:t.dialogWidth,"onUpdate:visible":n[14]||(n[14]=E=>{t.crud.dialogVisible.value=E,E||(t.crud.editingItem.value=null)}),"onUpdate:field":n[15]||(n[15]=(E,S)=>t.crud.setFormField(E,S)),onSave:n[16]||(n[16]=E=>t.crud.save())},e.createSlots({_:2},[e.renderList(t.crud.config.form,E=>({name:`field-${E.field}`,fn:e.withCtx(S=>[e.renderSlot(c.$slots,`field-${E.field}`,e.normalizeProps(e.guardReactiveProps(S)))])}))]),1032,["visible","title","fields","form-data","is-editing","saving","disabled","width"])]})])}}}),Ct=e.defineComponent({__name:"WStatusTag",props:{value:{},map:{}},setup(t){const o=t,a={ativo:{label:"Ativo",severity:"success"},ativa:{label:"Ativa",severity:"success"},inativo:{label:"Inativo",severity:"danger"},inativa:{label:"Inativa",severity:"danger"},suspensa:{label:"Suspensa",severity:"warn"},suspenso:{label:"Suspenso",severity:"warn"},cancelada:{label:"Cancelada",severity:"danger"},cancelado:{label:"Cancelado",severity:"danger"},pendente:{label:"Pendente",severity:"warn"},confirmada:{label:"Confirmada",severity:"success"},confirmado:{label:"Confirmado",severity:"success"},vencida:{label:"Vencida",severity:"danger"},vencido:{label:"Vencido",severity:"danger"},concluido:{label:"Concluído",severity:"success"},concluida:{label:"Concluída",severity:"success"},em_progresso:{label:"Em Progresso",severity:"info"},em_andamento:{label:"Em Andamento",severity:"info"},expirado:{label:"Expirado",severity:"secondary"},expirada:{label:"Expirada",severity:"secondary"},aberto:{label:"Aberto",severity:"info"},aberta:{label:"Aberta",severity:"info"},fechado:{label:"Fechado",severity:"secondary"},fechada:{label:"Fechada",severity:"secondary"},pago:{label:"Pago",severity:"success"},paga:{label:"Paga",severity:"success"},inadimplente:{label:"Inadimplente",severity:"danger"}},l=e.computed(()=>(o.map??a)[o.value]??{label:o.value,severity:"secondary"});return(r,i)=>(e.openBlock(),e.createBlock(e.unref(at),{value:l.value.label,severity:l.value.severity},null,8,["value","severity"]))}}),ja={class:"w-page-header"},Wa={class:"w-page-header-content"},Ua={class:"w-page-header-title"},qa={key:0,class:"w-page-header-subtitle"},Ha={class:"w-page-header-actions"},Ka=e.defineComponent({__name:"WPageHeader",props:{title:{},subtitle:{},actionLabel:{},actionIcon:{}},emits:["action"],setup(t,{emit:o}){const a=o;return(l,r)=>(e.openBlock(),e.createElementBlock("div",ja,[e.createElementVNode("div",Wa,[e.createElementVNode("h2",Ua,e.toDisplayString(t.title),1),t.subtitle?(e.openBlock(),e.createElementBlock("p",qa,e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Ha,[e.renderSlot(l.$slots,"actions"),t.actionLabel?(e.openBlock(),e.createBlock(e.unref(U),{key:0,label:t.actionLabel,icon:t.actionIcon,onClick:r[0]||(r[0]=i=>a("action"))},null,8,["label","icon"])):e.createCommentVNode("",!0)])]))}}),Ga={class:"w-empty-state"},_a={class:"w-empty-state-icon"},Ja={class:"w-empty-state-title"},Za={key:0,class:"w-empty-state-description"},Xa=e.defineComponent({__name:"WEmptyState",props:{icon:{},title:{},description:{},actionLabel:{},actionIcon:{}},emits:["action"],setup(t,{emit:o}){const a=o;return(l,r)=>(e.openBlock(),e.createElementBlock("div",Ga,[e.createElementVNode("div",_a,[e.createElementVNode("i",{class:e.normalizeClass(t.icon)},null,2)]),e.createElementVNode("p",Ja,e.toDisplayString(t.title),1),t.description?(e.openBlock(),e.createElementBlock("p",Za,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0),t.actionLabel?(e.openBlock(),e.createBlock(e.unref(U),{key:1,label:t.actionLabel,icon:t.actionIcon,size:"small",class:"mt-3",onClick:r[0]||(r[0]=i=>a("action"))},null,8,["label","icon"])):e.createCommentVNode("",!0)]))}});/*!
|
|
4
|
+
`)}function wt(t,o="export.csv"){const a=new Blob([t],{type:"text/csv;charset=utf-8;"}),l=URL.createObjectURL(a),r=document.createElement("a");r.href=l,r.download=o,document.body.appendChild(r),r.click(),document.body.removeChild(r),URL.revokeObjectURL(l)}const da={class:"w-crud"},ma={key:0,class:"w-crud-header"},fa={class:"w-crud-header-content"},pa={class:"w-crud-title"},va={key:0,class:"w-crud-subtitle"},ga={class:"w-crud-header-actions"},ha={key:0,class:"w-crud-kpis"},ka={class:"w-crud-kpi-content"},ya={class:"w-crud-kpi-label"},ba={class:"w-crud-kpi-value"},wa={class:"w-crud-content-main"},Ba={key:0,class:"w-crud-table"},Ca={class:"w-crud-toolbar"},Va={class:"w-crud-toolbar-start"},Ea={class:"w-crud-toolbar-end"},$a={key:1,class:"w-crud-view-toggle"},Na={class:"w-crud-actions"},Sa={key:1,class:"w-crud-cards-wrap"},Da={class:"w-crud-toolbar w-crud-toolbar--standalone"},xa={class:"w-crud-toolbar-start"},Pa={class:"w-crud-toolbar-end"},Fa={key:1,class:"w-crud-view-toggle"},Ma={key:0,class:"w-crud-cards-loading"},Aa={key:2,class:"w-crud-cards"},Ra=["onClick","onDblclick","onContextmenu"],La={class:"w-crud-card-body"},za={key:0,class:"w-crud-card-label"},Ta={class:"w-crud-card-value"},Ia={key:0,class:"w-crud-card-actions"},Ya={key:0,class:"w-crud-rail"},Oa={key:1,class:"w-crud-rail-sep"},ja={key:2,class:"w-crud-rail-sep"},Bt=e.defineComponent({__name:"WCrudView",props:{crud:{},title:{},subtitle:{},showSearch:{type:Boolean,default:!0},showHeader:{type:Boolean,default:!0},dialogWidth:{default:"480px"},autoInit:{type:Boolean,default:!0},showKpi:{type:Boolean,default:!1},kpiIcon:{default:"pi pi-list"},kpiLabel:{default:"Total de Registros"},extraKpis:{default:()=>[]},expandable:{type:Boolean,default:!1},viewToggle:{type:Boolean,default:!0},defaultView:{default:"table"},cardFields:{default:4},actionRail:{type:Boolean,default:!0},contextMenu:{type:Boolean,default:!0},showPrint:{type:Boolean,default:!1},exportCsv:{type:Boolean,default:!0},csvFilename:{default:"export.csv"},csvScope:{default:"all"},csvPageSize:{default:200}},emits:["row-expand","row-collapse","print"],setup(t,{emit:o}){const a=t,l=o,r=e.useSlots(),{formatNumber:i}=Re(),s=e.ref({}),v=e.ref(a.defaultView);function d(c){return v.value===c}function h(c){v.value=c}const N=e.computed(()=>(a.crud.pagination.page-1)*a.crud.pagination.pageSize),V=e.computed(()=>a.crud.config.columns.filter(c=>c.visible!==!1).map(c=>c.type==="number"&&!c.align?{...c,align:"right"}:c.type==="currency"&&!c.align?{...c,align:"right"}:c));function A(c){if(c.align==="right")return"text-right";if(c.align==="center")return"text-center"}const x=e.computed(()=>V.value.slice(0,a.cardFields)),I=e.computed(()=>{const c=[];return a.crud.config.canEdit!==!1&&c.push({action:"edit",icon:"pi pi-pencil",tooltip:"Editar"}),a.crud.config.canCreate!==!1&&c.push({action:"duplicate",icon:"pi pi-copy",tooltip:"Duplicar",severity:"info"}),a.crud.config.canDelete!==!1&&c.push({action:"delete",icon:"pi pi-trash",tooltip:"Excluir",severity:"danger"}),c}),Y=e.computed(()=>a.crud.config.rowActions??I.value),p=e.computed(()=>Y.value.length>0||!!r["row-actions"]);function g(c,n){if(c.handler){c.handler(n);return}c.action==="edit"?a.crud.openEditDialog(n):c.action==="view"?a.crud.openViewDialog(n):c.action==="duplicate"?a.crud.openDuplicateDialog(n):c.action==="delete"&&a.crud.confirmDelete(n)}function k(c,n){return c.visible?c.visible(n):!0}function w(c,n){return c.disabled?c.disabled(n):!1}const R=e.computed(()=>{const c=[];return a.showKpi&&c.push({icon:a.kpiIcon,label:a.kpiLabel,value:i(a.crud.pagination.rows,0)}),c.push(...a.extraKpis),c});e.computed(()=>a.crud.config.labels??{});const L=e.computed(()=>a.crud.config.canCreate!==!1),F=e.ref(null),z=e.ref(null);function M(c){F.value=c}function O(c){var n;a.contextMenu&&(F.value=c.data,(n=z.value)==null||n.show(c.originalEvent))}function K(c,n){var f;a.contextMenu&&(c.preventDefault(),F.value=n,(f=z.value)==null||f.show(c))}const H=e.computed(()=>{const c=F.value;if(!c)return[];const n=[{label:"Ver detalhes",icon:"pi pi-eye",command:()=>a.crud.openViewDialog(c)}];for(const f of Y.value)k(f,c)&&n.push({label:f.tooltip??f.action,icon:f.icon,class:f.severity==="danger"?"w-crud-ctx-danger":void 0,disabled:w(f,c),command:()=>g(f,c)});return a.showPrint&&n.push({label:"Imprimir",icon:"pi pi-print",command:()=>l("print",c)}),a.exportCsv&&(n.push({separator:!0}),n.push({label:a.csvScope==="all"?"Exportar tudo (CSV)":"Exportar página (CSV)",icon:"pi pi-download",command:()=>C()})),n});function W(){F.value&&l("print",F.value)}const m=e.ref(!1);async function C(){if(!m.value){m.value=!0;try{const c=a.csvScope==="page"?a.crud.items.value:await a.crud.fetchAll(a.csvPageSize),n=bt(c,V.value);wt(n,a.csvFilename)}finally{m.value=!1}}}return e.onMounted(()=>{a.autoInit&&a.crud.init()}),(c,n)=>{const f=e.resolveDirective("tooltip");return e.openBlock(),e.createElementBlock("div",da,[t.showHeader?(e.openBlock(),e.createElementBlock("div",ma,[e.createElementVNode("div",fa,[e.createElementVNode("h1",pa,e.toDisplayString(t.title),1),t.subtitle?(e.openBlock(),e.createElementBlock("p",va,e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",ga,[e.renderSlot(c.$slots,"header-actions"),L.value&&!t.actionRail?(e.openBlock(),e.createBlock(e.unref(U),{key:0,label:"Novo",icon:"pi pi-plus",onClick:n[0]||(n[0]=u=>t.crud.openCreateDialog())})):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"before-table",{},()=>[R.value.length?(e.openBlock(),e.createElementBlock("div",ha,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(R.value,(u,E)=>(e.openBlock(),e.createElementBlock("div",{key:E,class:"w-crud-kpi"},[e.createElementVNode("div",{class:e.normalizeClass(["w-crud-kpi-icon",u.severity?`w-crud-kpi-icon--${u.severity}`:""])},[e.createElementVNode("i",{class:e.normalizeClass([u.icon]),style:e.normalizeStyle(u.color?`color: ${u.color}`:"")},null,6)],2),e.createElementVNode("div",ka,[e.createElementVNode("div",ya,e.toDisplayString(u.label),1),e.createElementVNode("div",ba,e.toDisplayString(u.value),1)])]))),128))])):e.createCommentVNode("",!0)]),e.createElementVNode("div",{class:e.normalizeClass(["w-crud-content",{"w-crud-content--rail":t.actionRail}])},[e.createElementVNode("div",wa,[v.value==="table"?(e.openBlock(),e.createElementBlock("div",Ba,[e.createVNode(e.unref(ot),{value:t.crud.items.value,loading:t.crud.loading.value,"expanded-rows":s.value,"onUpdate:expandedRows":n[4]||(n[4]=u=>s.value=u),paginator:"",rows:t.crud.pagination.pageSize,"total-records":t.crud.pagination.rows,"rows-per-page-options":[10,20,50],"paginator-template":"CurrentPageReport PrevPageLink NextPageLink","current-page-report-template":"Página {currentPage} de {totalPages}",pt:{pcPaginator:{root:{class:"w-crud-paginator"}}},lazy:"","striped-rows":"","removable-sort":"",size:"small","sort-field":t.crud.sort.field??void 0,"sort-order":t.crud.sort.order,"data-key":t.crud.config.pk||"id",selection:t.actionRail||t.contextMenu?F.value:void 0,"selection-mode":t.actionRail||t.contextMenu?"single":void 0,"context-menu":t.contextMenu,"context-menu-selection":t.contextMenu?F.value:void 0,"onUpdate:selection":n[5]||(n[5]=u=>F.value=u),"onUpdate:contextMenuSelection":n[6]||(n[6]=u=>F.value=u),onRowContextmenu:O,onPage:t.crud.onPage,onSort:n[7]||(n[7]=u=>t.crud.onSort({sortField:u.sortField,sortOrder:u.sortOrder})),onRowExpand:n[8]||(n[8]=u=>l("row-expand",u.data)),onRowCollapse:n[9]||(n[9]=u=>l("row-collapse",u.data))},e.createSlots({header:e.withCtx(()=>[e.createElementVNode("div",Ca,[e.createElementVNode("div",Va,[t.showSearch?(e.openBlock(),e.createBlock(e.unref($e),{key:0},{default:e.withCtx(()=>[e.createVNode(e.unref(Ne),{class:"pi pi-search"}),e.createVNode(e.unref(X),{"model-value":t.crud.search.value,placeholder:"Buscar...",class:"w-72",onInput:t.crud.onSearch},null,8,["model-value","onInput"])]),_:1})):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"toolbar-start"),e.renderSlot(c.$slots,"toolbar-filters")]),e.createElementVNode("div",Ea,[e.renderSlot(c.$slots,"toolbar-actions"),t.exportCsv?e.withDirectives((e.openBlock(),e.createBlock(e.unref(U),{key:0,icon:"pi pi-download",text:"",size:"small",loading:m.value,onClick:C},null,8,["loading"])),[[f,t.csvScope==="all"?"Exportar tudo (CSV)":"Exportar página (CSV)",void 0,{top:!0}]]):e.createCommentVNode("",!0),t.viewToggle?(e.openBlock(),e.createElementBlock("div",$a,[e.createVNode(e.unref(U),{icon:"pi pi-table",size:"small",text:!d("table"),outlined:d("table"),onClick:n[1]||(n[1]=u=>h("table"))},null,8,["text","outlined"]),e.createVNode(e.unref(U),{icon:"pi pi-th-large",size:"small",text:!d("cards"),outlined:d("cards"),onClick:n[2]||(n[2]=u=>h("cards"))},null,8,["text","outlined"])])):e.createCommentVNode("",!0),!t.showHeader&&L.value&&!t.actionRail?(e.openBlock(),e.createBlock(e.unref(U),{key:2,label:"Novo",icon:"pi pi-plus",onClick:n[3]||(n[3]=u=>t.crud.openCreateDialog())})):e.createCommentVNode("",!0)])])]),empty:e.withCtx(()=>[e.renderSlot(c.$slots,"empty",{},()=>[n[17]||(n[17]=e.createElementVNode("div",{class:"w-crud-empty"},[e.createElementVNode("div",{class:"w-crud-empty-icon"},[e.createElementVNode("i",{class:"pi pi-inbox"})]),e.createElementVNode("p",{class:"w-crud-empty-title"},"Nenhum registro encontrado"),e.createElementVNode("p",{class:"w-crud-empty-text"},"Tente ajustar sua busca ou crie um novo registro")],-1))])]),default:e.withCtx(()=>[t.expandable?(e.openBlock(),e.createBlock(e.unref(ke),{key:0,expander:"",style:{width:"3rem"}})):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.value,u=>(e.openBlock(),e.createBlock(e.unref(ke),{key:u.field,field:u.field,header:u.header,sortable:u.sortable,style:e.normalizeStyle(u.style),"header-class":A(u),"body-class":A(u)},{body:e.withCtx(({data:E})=>[e.renderSlot(c.$slots,`column-${u.field}`,{data:E,value:E[u.field]},()=>[e.createVNode(Se,{column:u,value:E[u.field],"row-data":E},null,8,["column","value","row-data"])])]),_:2},1032,["field","header","sortable","style","header-class","body-class"]))),128)),p.value&&!t.actionRail?(e.openBlock(),e.createBlock(e.unref(ke),{key:1,"header-class":"w-crud-actions-header",style:e.normalizeStyle({width:`${(Y.value.length+(e.unref(r)["row-actions"]?1:0))*2.5+1}rem`})},{body:e.withCtx(({data:u})=>[e.createElementVNode("div",Na,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Y.value,E=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:E.action},[k(E,u)?e.withDirectives((e.openBlock(),e.createBlock(e.unref(U),{key:0,icon:E.icon,text:"",rounded:"",size:"small",severity:E.severity,disabled:w(E,u),onClick:S=>g(E,u)},null,8,["icon","severity","disabled","onClick"])),[[f,E.tooltip,void 0,{top:!0}]]):e.createCommentVNode("",!0)],64))),128)),e.renderSlot(c.$slots,"row-actions",{data:u,crud:t.crud})])]),_:3},8,["style"])):e.createCommentVNode("",!0)]),_:2},[t.expandable?{name:"expansion",fn:e.withCtx(u=>[e.renderSlot(c.$slots,"expansion",{data:u.data})]),key:"0"}:void 0]),1032,["value","loading","expanded-rows","rows","total-records","sort-field","sort-order","data-key","selection","selection-mode","context-menu","context-menu-selection","onPage"])])):(e.openBlock(),e.createElementBlock("div",Sa,[e.createElementVNode("div",Da,[e.createElementVNode("div",xa,[t.showSearch?(e.openBlock(),e.createBlock(e.unref($e),{key:0},{default:e.withCtx(()=>[e.createVNode(e.unref(Ne),{class:"pi pi-search"}),e.createVNode(e.unref(X),{"model-value":t.crud.search.value,placeholder:"Buscar...",class:"w-72",onInput:t.crud.onSearch},null,8,["model-value","onInput"])]),_:1})):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"toolbar-start"),e.renderSlot(c.$slots,"toolbar-filters")]),e.createElementVNode("div",Pa,[e.renderSlot(c.$slots,"toolbar-actions"),t.exportCsv?e.withDirectives((e.openBlock(),e.createBlock(e.unref(U),{key:0,icon:"pi pi-download",text:"",size:"small",loading:m.value,onClick:C},null,8,["loading"])),[[f,t.csvScope==="all"?"Exportar tudo (CSV)":"Exportar página (CSV)",void 0,{top:!0}]]):e.createCommentVNode("",!0),t.viewToggle?(e.openBlock(),e.createElementBlock("div",Fa,[e.createVNode(e.unref(U),{icon:"pi pi-table",size:"small",text:!d("table"),outlined:d("table"),onClick:n[10]||(n[10]=u=>h("table"))},null,8,["text","outlined"]),e.createVNode(e.unref(U),{icon:"pi pi-th-large",size:"small",text:!d("cards"),outlined:d("cards"),onClick:n[11]||(n[11]=u=>h("cards"))},null,8,["text","outlined"])])):e.createCommentVNode("",!0),!t.showHeader&&L.value&&!t.actionRail?(e.openBlock(),e.createBlock(e.unref(U),{key:2,label:"Novo",icon:"pi pi-plus",onClick:n[12]||(n[12]=u=>t.crud.openCreateDialog())})):e.createCommentVNode("",!0)])]),t.crud.loading.value?(e.openBlock(),e.createElementBlock("div",Ma,[...n[18]||(n[18]=[e.createElementVNode("i",{class:"pi pi-spin pi-spinner"},null,-1)])])):t.crud.items.value.length?(e.openBlock(),e.createElementBlock("div",Aa,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.crud.items.value,(u,E)=>(e.openBlock(),e.createElementBlock("div",{key:u[t.crud.config.pk||"id"]??E,class:e.normalizeClass(["w-crud-card",{"w-crud-card--selected":F.value===u}]),onClick:S=>M(u),onDblclick:S=>t.crud.config.canEdit!==!1&&t.crud.openEditDialog(u),onContextmenu:S=>K(S,u)},[e.createElementVNode("div",La,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(x.value,(S,T)=>(e.openBlock(),e.createElementBlock("div",{key:S.field,class:e.normalizeClass(["w-crud-card-row",{"w-crud-card-row--title":T===0}])},[T!==0?(e.openBlock(),e.createElementBlock("span",za,e.toDisplayString(S.header),1)):e.createCommentVNode("",!0),e.createElementVNode("span",Ta,[e.renderSlot(c.$slots,`column-${S.field}`,{data:u,value:u[S.field]},()=>[e.createVNode(Se,{column:S,value:u[S.field],"row-data":u},null,8,["column","value","row-data"])])])],2))),128))]),p.value&&!t.actionRail?(e.openBlock(),e.createElementBlock("div",Ia,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Y.value,S=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:S.action},[k(S,u)?e.withDirectives((e.openBlock(),e.createBlock(e.unref(U),{key:0,icon:S.icon,text:"",rounded:"",size:"small",severity:S.severity,disabled:w(S,u),onClick:T=>g(S,u)},null,8,["icon","severity","disabled","onClick"])),[[f,S.tooltip,void 0,{top:!0}]]):e.createCommentVNode("",!0)],64))),128)),e.renderSlot(c.$slots,"row-actions",{data:u,crud:t.crud})])):e.createCommentVNode("",!0)],42,Ra))),128))])):e.renderSlot(c.$slots,"empty",{key:1},()=>[n[19]||(n[19]=e.createStaticVNode('<div class="w-crud-empty"><div class="w-crud-empty-icon"><i class="pi pi-inbox"></i></div><p class="w-crud-empty-title">Nenhum registro encontrado</p><p class="w-crud-empty-text">Tente ajustar sua busca ou crie um novo registro</p></div>',1))]),t.crud.items.value.length?(e.openBlock(),e.createBlock(e.unref(Ft),{key:3,rows:t.crud.pagination.pageSize,"total-records":t.crud.pagination.rows,first:N.value,"rows-per-page-options":[10,20,50],template:"CurrentPageReport PrevPageLink NextPageLink","current-page-report-template":"Página {currentPage} de {totalPages}",class:"w-crud-paginator",onPage:t.crud.onPage},null,8,["rows","total-records","first","onPage"])):e.createCommentVNode("",!0)]))]),t.actionRail?(e.openBlock(),e.createElementBlock("aside",Ya,[L.value?e.withDirectives((e.openBlock(),e.createBlock(e.unref(U),{key:0,icon:"pi pi-plus",rounded:"",onClick:n[13]||(n[13]=u=>t.crud.openCreateDialog())},null,512)),[[f,"Novo",void 0,{left:!0}]]):e.createCommentVNode("",!0),L.value&&Y.value.length?(e.openBlock(),e.createElementBlock("div",Oa)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Y.value,u=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:u.action},[!F.value||k(u,F.value)?e.withDirectives((e.openBlock(),e.createBlock(e.unref(U),{key:0,icon:u.icon,text:"",rounded:"",severity:u.severity,disabled:!F.value||w(u,F.value),onClick:E=>F.value&&g(u,F.value)},null,8,["icon","severity","disabled","onClick"])),[[f,u.tooltip,void 0,{left:!0}]]):e.createCommentVNode("",!0)],64))),128)),e.renderSlot(c.$slots,"rail-actions",{selected:F.value,crud:t.crud}),t.showPrint||t.exportCsv?(e.openBlock(),e.createElementBlock("div",ja)):e.createCommentVNode("",!0),t.showPrint?e.withDirectives((e.openBlock(),e.createBlock(e.unref(U),{key:3,icon:"pi pi-print",text:"",rounded:"",disabled:!F.value,onClick:W},null,8,["disabled"])),[[f,"Imprimir",void 0,{left:!0}]]):e.createCommentVNode("",!0),t.exportCsv?e.withDirectives((e.openBlock(),e.createBlock(e.unref(U),{key:4,icon:"pi pi-download",text:"",rounded:"",loading:m.value,onClick:C},null,8,["loading"])),[[f,t.csvScope==="all"?"Exportar tudo (CSV)":"Exportar página (CSV)",void 0,{left:!0}]]):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)],2),t.contextMenu?(e.openBlock(),e.createBlock(e.unref(Mt),{key:1,ref_key:"cm",ref:z,model:H.value},null,8,["model"])):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"form-dialog",{crud:t.crud,dialogWidth:t.dialogWidth},()=>{var u;return[e.createVNode(Le,{visible:t.crud.dialogVisible.value,title:t.crud.dialogTitle.value,fields:t.crud.config.form,"form-data":t.crud.formData,"is-editing":t.crud.isEditing.value,saving:t.crud.saving.value,disabled:((u=t.crud.viewMode)==null?void 0:u.value)??!1,width:t.dialogWidth,"onUpdate:visible":n[14]||(n[14]=E=>{t.crud.dialogVisible.value=E,E||(t.crud.editingItem.value=null)}),"onUpdate:field":n[15]||(n[15]=(E,S)=>t.crud.setFormField(E,S)),onSave:n[16]||(n[16]=E=>t.crud.save())},e.createSlots({_:2},[e.renderList(t.crud.config.form,E=>({name:`field-${E.field}`,fn:e.withCtx(S=>[e.renderSlot(c.$slots,`field-${E.field}`,e.normalizeProps(e.guardReactiveProps(S)))])}))]),1032,["visible","title","fields","form-data","is-editing","saving","disabled","width"])]})])}}}),Ct=e.defineComponent({__name:"WStatusTag",props:{value:{},map:{}},setup(t){const o=t,a={ativo:{label:"Ativo",severity:"success"},ativa:{label:"Ativa",severity:"success"},inativo:{label:"Inativo",severity:"danger"},inativa:{label:"Inativa",severity:"danger"},suspensa:{label:"Suspensa",severity:"warn"},suspenso:{label:"Suspenso",severity:"warn"},cancelada:{label:"Cancelada",severity:"danger"},cancelado:{label:"Cancelado",severity:"danger"},pendente:{label:"Pendente",severity:"warn"},confirmada:{label:"Confirmada",severity:"success"},confirmado:{label:"Confirmado",severity:"success"},vencida:{label:"Vencida",severity:"danger"},vencido:{label:"Vencido",severity:"danger"},concluido:{label:"Concluído",severity:"success"},concluida:{label:"Concluída",severity:"success"},em_progresso:{label:"Em Progresso",severity:"info"},em_andamento:{label:"Em Andamento",severity:"info"},expirado:{label:"Expirado",severity:"secondary"},expirada:{label:"Expirada",severity:"secondary"},aberto:{label:"Aberto",severity:"info"},aberta:{label:"Aberta",severity:"info"},fechado:{label:"Fechado",severity:"secondary"},fechada:{label:"Fechada",severity:"secondary"},pago:{label:"Pago",severity:"success"},paga:{label:"Paga",severity:"success"},inadimplente:{label:"Inadimplente",severity:"danger"}},l=e.computed(()=>(o.map??a)[o.value]??{label:o.value,severity:"secondary"});return(r,i)=>(e.openBlock(),e.createBlock(e.unref(at),{value:l.value.label,severity:l.value.severity},null,8,["value","severity"]))}}),Wa={class:"w-page-header"},Ua={class:"w-page-header-content"},qa={class:"w-page-header-title"},Ha={key:0,class:"w-page-header-subtitle"},Ka={class:"w-page-header-actions"},Ga=e.defineComponent({__name:"WPageHeader",props:{title:{},subtitle:{},actionLabel:{},actionIcon:{}},emits:["action"],setup(t,{emit:o}){const a=o;return(l,r)=>(e.openBlock(),e.createElementBlock("div",Wa,[e.createElementVNode("div",Ua,[e.createElementVNode("h2",qa,e.toDisplayString(t.title),1),t.subtitle?(e.openBlock(),e.createElementBlock("p",Ha,e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Ka,[e.renderSlot(l.$slots,"actions"),t.actionLabel?(e.openBlock(),e.createBlock(e.unref(U),{key:0,label:t.actionLabel,icon:t.actionIcon,onClick:r[0]||(r[0]=i=>a("action"))},null,8,["label","icon"])):e.createCommentVNode("",!0)])]))}}),Ja={class:"w-empty-state"},Za={class:"w-empty-state-icon"},Xa={class:"w-empty-state-title"},_a={key:0,class:"w-empty-state-description"},Qa=e.defineComponent({__name:"WEmptyState",props:{icon:{},title:{},description:{},actionLabel:{},actionIcon:{}},emits:["action"],setup(t,{emit:o}){const a=o;return(l,r)=>(e.openBlock(),e.createElementBlock("div",Ja,[e.createElementVNode("div",Za,[e.createElementVNode("i",{class:e.normalizeClass(t.icon)},null,2)]),e.createElementVNode("p",Xa,e.toDisplayString(t.title),1),t.description?(e.openBlock(),e.createElementBlock("p",_a,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0),t.actionLabel?(e.openBlock(),e.createBlock(e.unref(U),{key:1,label:t.actionLabel,icon:t.actionIcon,size:"small",class:"mt-3",onClick:r[0]||(r[0]=i=>a("action"))},null,8,["label","icon"])):e.createCommentVNode("",!0)]))}});/*!
|
|
5
5
|
* vue-router v4.6.4
|
|
6
6
|
* (c) 2025 Eduardo San Martin Morote
|
|
7
7
|
* @license MIT
|
|
8
|
-
*/Symbol(process.env.NODE_ENV!=="production"?"navigation failure":"");Symbol(process.env.NODE_ENV!=="production"?"router view location matched":"");Symbol(process.env.NODE_ENV!=="production"?"router view depth":"");const
|
|
8
|
+
*/Symbol(process.env.NODE_ENV!=="production"?"navigation failure":"");Symbol(process.env.NODE_ENV!=="production"?"router view location matched":"");Symbol(process.env.NODE_ENV!=="production"?"router view depth":"");const en=Symbol(process.env.NODE_ENV!=="production"?"router":"");Symbol(process.env.NODE_ENV!=="production"?"route location":"");Symbol(process.env.NODE_ENV!=="production"?"router view location":"");/*!
|
|
9
9
|
* vue-router v4.6.4
|
|
10
10
|
* (c) 2025 Eduardo San Martin Morote
|
|
11
11
|
* @license MIT
|
|
12
|
-
*/function en(){return e.inject(Qa)}const tn={class:"w-detail-header"},on={class:"w-detail-header-left"},an={class:"w-detail-header-content"},nn={class:"w-detail-header-title"},ln={key:0,class:"w-detail-header-subtitle"},rn={class:"w-detail-header-actions"},sn=e.defineComponent({__name:"WDetailHeader",props:{title:{},subtitle:{},icon:{},backRoute:{},backTo:{},status:{},statusMap:{}},setup(t){const o=t,a=en();function l(){o.backTo?a.push(typeof o.backTo=="string"?{name:o.backTo}:o.backTo):o.backRoute?a.push({name:o.backRoute}):a.back()}return(r,i)=>(e.openBlock(),e.createElementBlock("div",tn,[e.createElementVNode("div",on,[e.createVNode(e.unref(U),{icon:"pi pi-arrow-left",text:"",rounded:"",onClick:l}),t.icon?(e.openBlock(),e.createElementBlock("i",{key:0,class:e.normalizeClass([t.icon,"w-detail-header-icon"])},null,2)):e.createCommentVNode("",!0),e.createElementVNode("div",an,[e.createElementVNode("h2",nn,e.toDisplayString(t.title),1),t.subtitle?(e.openBlock(),e.createElementBlock("p",ln,e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0)]),t.status?(e.openBlock(),e.createBlock(Ct,{key:1,value:t.status,map:t.statusMap},null,8,["value","map"])):e.createCommentVNode("",!0)]),e.createElementVNode("div",rn,[e.renderSlot(r.$slots,"actions")])]))}}),cn={class:"w-info-card"},un={key:0,class:"w-info-card-title"},dn={class:"w-info-card-grid"},mn={class:"w-info-card-label"},fn={class:"w-info-card-value"},pn=e.defineComponent({__name:"WInfoCard",props:{title:{},fields:{}},setup(t){const{formatCurrency:o,formatDate:a,formatNumber:l}=Re();function r(i){const s=i.value;return s==null||s===""?"-":i.format==="currency"?o(Number(s)):i.format==="date"?a(String(s)):i.format==="datetime"?a(String(s),"DD/MM/YYYY HH:mm"):i.format==="number"?l(Number(s)):String(s)}return(i,s)=>(e.openBlock(),e.createElementBlock("div",cn,[t.title?(e.openBlock(),e.createElementBlock("h3",un,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),e.createElementVNode("div",dn,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.fields,v=>(e.openBlock(),e.createElementBlock("div",{key:v.label,class:"w-info-card-field"},[e.createElementVNode("span",mn,e.toDisplayString(v.label),1),e.createElementVNode("span",fn,e.toDisplayString(r(v)),1)]))),128))])]))}}),vn={key:0,class:"w-kpi-card__loading"},gn={class:"w-kpi-card__loading-content"},hn={class:"w-kpi-card__header"},kn={key:0,class:"w-kpi-card__icon"},yn={key:1,class:"w-kpi-card__trend"},bn={class:"w-kpi-card__content"},wn={class:"w-kpi-card__label"},Bn={class:"w-kpi-card__value"},Cn={key:0,class:"w-kpi-card__hint"},Vn={key:0,class:"w-kpi-card__footer"},Vt=e.defineComponent({__name:"WKpiCard",props:{label:{},value:{},icon:{},hint:{},severity:{},trend:{},loading:{type:Boolean}},setup(t){return(o,a)=>(e.openBlock(),e.createElementBlock("article",{class:e.normalizeClass(["w-kpi-card",t.severity?`w-kpi-card--${t.severity}`:""])},[t.loading?(e.openBlock(),e.createElementBlock("div",vn,[e.createVNode(e.unref(Pe),{shape:"circle",size:"2.75rem"}),e.createElementVNode("div",gn,[e.createVNode(e.unref(Pe),{width:"6rem",height:"0.75rem"}),e.createVNode(e.unref(Pe),{width:"7.5rem",height:"1.5rem"}),e.createVNode(e.unref(Pe),{width:"5rem",height:"0.75rem"})])])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("div",hn,[t.icon||o.$slots.icon?(e.openBlock(),e.createElementBlock("div",kn,[e.renderSlot(o.$slots,"icon",{},()=>[t.icon?(e.openBlock(),e.createElementBlock("i",{key:0,class:e.normalizeClass(t.icon)},null,2)):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0),t.trend||o.$slots.trend?(e.openBlock(),e.createElementBlock("div",yn,[e.renderSlot(o.$slots,"trend",{},()=>[t.trend?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(["w-kpi-card__trend-badge",t.trend.direction?`w-kpi-card__trend-badge--${t.trend.direction}`:""])},e.toDisplayString(t.trend.value),3)):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0)]),e.createElementVNode("div",bn,[e.createElementVNode("p",wn,e.toDisplayString(t.label),1),e.createElementVNode("div",Bn,[e.renderSlot(o.$slots,"value",{},()=>[e.createTextVNode(e.toDisplayString(t.value),1)])]),t.hint||o.$slots.hint?(e.openBlock(),e.createElementBlock("p",Cn,[e.renderSlot(o.$slots,"hint",{},()=>[e.createTextVNode(e.toDisplayString(t.hint),1)])])):e.createCommentVNode("",!0)]),o.$slots.footer?(e.openBlock(),e.createElementBlock("footer",Vn,[e.renderSlot(o.$slots,"footer")])):e.createCommentVNode("",!0)],64))],2))}}),En=e.defineComponent({__name:"WKpiGrid",props:{items:{default:()=>[]},columns:{default:4},dense:{type:Boolean,default:!1}},setup(t){const o=t,a=e.computed(()=>[`w-kpi-grid--cols-${o.columns}`,{"w-kpi-grid--dense":o.dense}]);return(l,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["w-kpi-grid",a.value])},[l.$slots.item?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(t.items,(i,s)=>e.renderSlot(l.$slots,"item",{key:s,item:i,index:s})),128)):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(t.items,(i,s)=>(e.openBlock(),e.createBlock(Vt,{key:s,label:i.label,value:i.value,icon:i.icon,severity:i.severity||"primary",hint:i.hint,trend:i.trend,loading:i.loading},null,8,["label","value","icon","severity","hint","trend","loading"]))),128))],2))}}),$n={class:"w-section-header__main"},Nn={key:0,class:"w-section-header__icon"},Sn={class:"w-section-header__content"},Dn={class:"w-section-header__title-row"},xn={class:"w-section-header__title"},Pn={key:0,class:"w-section-header__subtitle"},Fn={key:0,class:"w-section-header__actions"},Mn=e.defineComponent({__name:"WSectionHeader",props:{title:{},subtitle:{},icon:{},compact:{type:Boolean}},setup(t){return(o,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["w-section-header",{"w-section-header--compact":t.compact}])},[e.createElementVNode("div",$n,[t.icon||o.$slots.icon?(e.openBlock(),e.createElementBlock("div",Nn,[e.renderSlot(o.$slots,"icon",{},()=>[t.icon?(e.openBlock(),e.createElementBlock("i",{key:0,class:e.normalizeClass(t.icon)},null,2)):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0),e.createElementVNode("div",Sn,[e.createElementVNode("div",Dn,[e.createElementVNode("h3",xn,e.toDisplayString(t.title),1),e.renderSlot(o.$slots,"meta")]),t.subtitle?(e.openBlock(),e.createElementBlock("p",Pn,e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0)])]),o.$slots.actions?(e.openBlock(),e.createElementBlock("div",Fn,[e.renderSlot(o.$slots,"actions")])):e.createCommentVNode("",!0)],2))}}),An={key:0,class:"w-form-section__header"},Rn={class:"w-form-section__content"},Ln={class:"w-form-section__title"},zn={key:0,class:"w-form-section__description"},Tn={key:0,class:"w-form-section__actions"},In={class:"w-form-section__body"},Yn=e.defineComponent({__name:"WFormSection",props:{title:{},description:{},variant:{}},setup(t){return(o,a)=>(e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass(["w-form-section",t.variant?`w-form-section--${t.variant}`:""])},[t.title||t.description||o.$slots.actions?(e.openBlock(),e.createElementBlock("div",An,[e.createElementVNode("div",Rn,[e.createElementVNode("h3",Ln,e.toDisplayString(t.title),1),t.description?(e.openBlock(),e.createElementBlock("p",zn,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0)]),o.$slots.actions?(e.openBlock(),e.createElementBlock("div",Tn,[e.renderSlot(o.$slots,"actions")])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",In,[e.renderSlot(o.$slots,"default")])],2))}}),On={key:0,class:"w-action-bar__primary"},jn={key:1,class:"w-action-bar__filters"},Wn={key:2,class:"w-action-bar__secondary"},Un=e.defineComponent({__name:"WActionBar",props:{align:{default:"between"},stackOnMobile:{type:Boolean,default:!0}},setup(t){return(o,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["w-action-bar",[`w-action-bar--${t.align}`,{"w-action-bar--stack":t.stackOnMobile}]])},[o.$slots.primary||o.$slots.default?(e.openBlock(),e.createElementBlock("div",On,[e.renderSlot(o.$slots,"primary",{},()=>[e.renderSlot(o.$slots,"default")])])):e.createCommentVNode("",!0),o.$slots.filters?(e.openBlock(),e.createElementBlock("div",jn,[e.renderSlot(o.$slots,"filters")])):e.createCommentVNode("",!0),o.$slots.secondary?(e.openBlock(),e.createElementBlock("div",Wn,[e.renderSlot(o.$slots,"secondary")])):e.createCommentVNode("",!0)],2))}}),qn={class:"w-progress-flow__marker"},Hn={class:"w-progress-flow__content"},Kn={class:"w-progress-flow__label"},Gn={key:0,class:"w-progress-flow__description"},_n=e.defineComponent({__name:"WProgressFlow",props:{steps:{},currentStep:{},orientation:{default:"horizontal"}},setup(t){const o=t,a=e.computed(()=>o.steps.findIndex(r=>r.key===o.currentStep));function l(r){return r<a.value?"done":r===a.value?"current":"pending"}return(r,i)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["w-progress-flow",`w-progress-flow--${t.orientation}`])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.steps,(s,v)=>(e.openBlock(),e.createElementBlock("div",{key:s.key,class:e.normalizeClass(["w-progress-flow__step",`w-progress-flow__step--${l(v)}`])},[e.renderSlot(r.$slots,"step",{step:s,index:v,state:l(v)},()=>[e.createElementVNode("div",qn,[e.createElementVNode("span",null,e.toDisplayString(v+1),1)]),e.createElementVNode("div",Hn,[e.createElementVNode("p",Kn,e.toDisplayString(s.label),1),s.description?(e.openBlock(),e.createElementBlock("p",Gn,e.toDisplayString(s.description),1)):e.createCommentVNode("",!0)])])],2))),128))],2))}});function Jn(t,o,a){const l=t;return Array.isArray(l.results)?{data:l.results,page:l.page??o,page_size:l.page_size??a,rows:l.count??0,extras:l.extras??{}}:Array.isArray(l.data)?{data:l.data,page:l.page??o,page_size:l.page_size??a,rows:l.rows??0,extras:l.extras??{}}:{data:Array.isArray(t)?t:[],page:o,page_size:a,rows:Array.isArray(t)?t.length:0,extras:{}}}function Et(t){return{async list(o,a={}){const l=await t.get(o,{params:a});return Jn(l.data,Number(a.page??1),Number(a.page_size??20))},async get(o,a,l){return{data:(await t.get(`${o}${a}/`,l)).data}},async create(o,a,l){return{data:(await t.post(o,a,l)).data}},async update(o,a,l,r){return{data:(await t.patch(`${o}${a}/`,l,r)).data}},async delete(o,a){await t.delete(`${o}${a}/`)}}}const Zn={install(t,o){if(!(o!=null&&o.axios)&&!(o!=null&&o.dataProvider))throw new Error('[wPrimeVueComponents] Informe "axios" ou "dataProvider" ao registrar o WPrimeVuePlugin.');const a=o.dataProvider??Et(o.axios),l={axios:o.axios,dataProvider:a,defaultPageSize:o.defaultPageSize??20,dateFormat:o.dateFormat??"DD/MM/YYYY",dateTimeFormat:o.dateTimeFormat??"DD/MM/YYYY HH:mm",locale:o.locale??"pt-BR",currency:o.currency??"BRL"};o.axios&&t.provide(rt,o.axios),t.provide(De,a),t.provide(xe,l),o.registerComponents!==!1&&(t.component("WCrudView",Bt),t.component("WCrudFormDialog",Le),t.component("WCrudColumnRenderer",Se),t.component("WAutoCompleteFK",je),t.component("WMoneyInput",We),t.component("WTransferList",Ue))}},$t={createTitle:"Novo Registro",editTitle:"Editar Registro",createButton:"Novo",saveButton:"Salvar",updateButton:"Atualizar",cancelButton:"Cancelar",deleteConfirmTitle:"Confirmar Exclusão",deleteConfirmMessage:"Deseja realmente excluir este registro?",searchPlaceholder:"Buscar...",emptyMessage:"Nenhum registro encontrado",successCreate:"Registro criado com sucesso",successUpdate:"Registro atualizado com sucesso",successDelete:"Registro excluído com sucesso"};function Xn(t,o){const a={};for(const l of Object.keys(o))JSON.stringify(t[l])!==JSON.stringify(o[l])&&(a[l]=o[l]);return a}function Qn(t){const{endpoint:o,columns:a,form:l,pk:r="id",searchDebounce:i=300,partialUpdate:s=!0,refetchOnSave:v=!0,canCreate:d=!0,canEdit:h=!0,canDelete:N=!0,rowActions:V=void 0,filterParams:A=void 0,createDefaults:x=void 0,transformPayload:I=void 0,onAfterSave:Y=void 0,onAfterDelete:p=void 0}=t,g=e.inject(De);if(!g)throw new Error("[wPrimeVueComponents] dataProvider não encontrado. Registre o WPrimeVuePlugin antes de usar useCrudManager.");const k=g,w=e.inject(xe),R=t.pageSize??(w==null?void 0:w.defaultPageSize)??20,L={...$t,...t.labels},F=Ye(),{confirmDelete:z}=Oe(),M=e.ref([]),O=e.ref({}),K=e.ref(!1),H=e.ref(!1),W=e.ref(""),m=e.ref(!1),C=e.ref(!1),c=e.ref(null),n=e.reactive({});let f=null;const u=e.reactive({page:1,pageSize:R,rows:0,totalPages:0}),E=e.reactive({field:null,order:0});function S(){const b={};for(const $ of l)b[$.field]=$.defaultValue!==void 0?typeof $.defaultValue=="function"?$.defaultValue():$.defaultValue:null;return b}const T=S();for(const b of Object.keys(T))n[b]=T[b];const G=e.computed(()=>c.value!==null&&!C.value),X=e.computed(()=>C.value),be=e.computed(()=>C.value?L.viewTitle??"Visualizar Registro":G.value?L.editTitle:L.createTitle),we=e.computed(()=>u.page<=1),ae=e.computed(()=>u.page>=u.totalPages);let ne=null;async function _(b={}){K.value=!0;try{const $={page:u.page,page_size:u.pageSize,...b};W.value&&($.search=W.value),E.field&&E.order!==0&&($.ordering=E.order===-1?`-${E.field}`:E.field),A&&Object.assign($,A());const D=await k.list(o,$);M.value=D.data,u.rows=D.rows,O.value=D.extras??{},D.page&&(u.page=D.page),D.page_size&&(u.pageSize=D.page_size),u.totalPages=Math.ceil(u.rows/u.pageSize)||0}finally{K.value=!1}}async function Q(){await _()}async function re(){await _()}async function de(b=200){const $={};W.value&&($.search=W.value),E.field&&E.order!==0&&($.ordering=E.order===-1?`-${E.field}`:E.field),A&&Object.assign($,A());const D=[];let j=1;const he=1e4;for(;j<=he;){const oe=await k.list(o,{...$,page:j,page_size:b});D.push(...oe.data);const ee=oe.rows??D.length;if(oe.data.length===0||D.length>=ee)break;j++}return D}function ie(b){W.value=b,ne&&clearTimeout(ne),ne=setTimeout(()=>{u.page=1,_()},i)}function me(b){const $=b.target;ie($.value)}function te(b){u.page=b,_()}function se(){te(1)}function fe(){te(u.totalPages)}function pe(b){u.page=b.page+1,u.pageSize=b.rows,_()}function ve(b){E.field=b.sortField??null,E.order=b.sortOrder??0,u.page=1,_()}function y(){const b=S();for(const $ of Object.keys(b))n[$]=b[$]}function B(b,$){n[b]=$}function q(){if(C.value=!1,c.value=null,f=null,y(),x){const b=x();for(const[$,D]of Object.entries(b))n[$]=D}m.value=!0}function P(b){const $={};for(const D of l){let j=b[D.field]!==void 0?b[D.field]:null;j&&(D.type==="date"||D.type==="datetime")&&typeof j=="string"&&(j=Ie(j)),n[D.field]=j,$[D.field]=j}f=$}function J(b){C.value=!1,c.value=b,P(b),m.value=!0}function St(b){C.value=!0,c.value=b,P(b),m.value=!0}function Dt(b){C.value=!1,c.value=null,f=null,y();for(const $ of l){if($.field===r)continue;let D=b[$.field]!==void 0?b[$.field]:n[$.field];D&&($.type==="date"||$.type==="datetime")&&typeof D=="string"&&(D=Ie(D)),n[$.field]=D}if(x){const $=x();for(const[D,j]of Object.entries($))n[D]=j}m.value=!0}function qe(b){const $={...b};for(const D of l){const j=$[D.field];if(D.type==="date"&&j instanceof Date?$[D.field]=it(j):D.type==="datetime"&&j instanceof Date&&($[D.field]=st(j)),D.type==="fk"&&j!==null&&typeof j=="object"){const he=D.optionValue||"id";$[D.field]=j[he]??j}(D.type==="mask"||D.type==="cpf_cnpj")&&typeof j=="string"&&($[D.field]=ue(j))}return $}async function xt(){for(const b of l){if(b.validate){const $=b.validate(n[b.field]);if($)return F.error($),null}if(b.required){const $=n[b.field];if($==null||$==="")return F.error(`${b.label} é obrigatório`),null}}H.value=!0;try{let b=qe(n);if(!G.value&&x&&Object.assign(b,x()),G.value&&s&&f){const ee=qe(f);if(b=Xn(ee,b),Object.keys(b).length===0&&!I){m.value=!1;const ce=c.value;return c.value=null,f=null,ce}}I&&(b=I(b,G.value));const $=l.some(ee=>ee.type==="image"&&b[ee.field]instanceof File);let D=b,j;if($){const ee=new Set(l.filter(le=>le.type==="image").map(le=>le.field)),ce=new FormData;for(const[le,Be]of Object.entries(b))if(Be!=null)if(Be instanceof File)ce.append(le,Be);else{if(ee.has(le))continue;ce.append(le,String(Be))}D=ce,j={"Content-Type":"multipart/form-data"}}const he=j?{headers:j}:void 0;let oe;if(G.value&&c.value){const ee=c.value[r];if(oe=await k.update(o,ee,D,he),!v){const ce=M.value.findIndex(le=>le[r]===ee);ce!==-1&&(M.value[ce]=oe.data)}F.success(L.successUpdate)}else oe=await k.create(o,D,he),v||(M.value.unshift(oe.data),u.rows++),F.success(L.successCreate);return m.value=!1,c.value=null,f=null,v&&await _(),Y&&Y(oe.data,G.value),oe.data}catch(b){return F.error(ye(b,"Erro ao salvar registro")),null}finally{H.value=!1}}function Pt(b){z(async()=>{try{const $=b[r];await k.delete(o,$);const D=M.value.findIndex(j=>j[r]===$);D!==-1&&(M.value.splice(D,1),u.rows--),F.success(L.successDelete),p&&p(b)}catch($){F.error(ye($,"Erro ao excluir registro"))}},L.deleteConfirmMessage)}return{items:M,extras:O,loading:K,saving:H,search:W,dialogVisible:m,editingItem:c,formData:n,pagination:u,sort:E,isEditing:G,isViewing:X,viewMode:C,dialogTitle:be,isFirstPage:we,isLastPage:ae,init:Q,fetchItems:_,fetchAll:de,refresh:re,setSearch:ie,onSearch:me,onPage:pe,onSort:ve,openCreateDialog:q,openEditDialog:J,openViewDialog:St,openDuplicateDialog:Dt,save:xt,confirmDelete:Pt,setFormField:B,resetForm:y,goToPage:te,firstPage:se,lastPage:fe,config:t}}function el(t){const{endpoint:o,searchDebounce:a=300,immediate:l=!1}=t,r=e.inject(De);if(!r)throw new Error("[wPrimeVueComponents] dataProvider não encontrado. Registre o WPrimeVuePlugin antes de usar useApi.");const i=r,s=e.inject(xe),v=t.pageSize??(s==null?void 0:s.defaultPageSize)??20,d=e.ref([]),h=e.ref(!1),N=e.ref(""),V=e.ref({}),A=e.reactive({}),x=e.reactive({page:1,pageSize:v,rows:0,totalPages:0}),I=e.reactive({field:null,order:0});let Y=null;async function p(z={}){h.value=!0;try{const M={page:x.page,page_size:x.pageSize,...z};N.value&&(M.search=N.value),I.field&&I.order!==0&&(M.ordering=I.order===-1?`-${I.field}`:I.field);for(const[K,H]of Object.entries(A))H!=null&&H!==""&&(M[K]=H);const O=await i.list(o,M);d.value=O.data,x.rows=O.rows,O.page&&(x.page=O.page),O.page_size&&(x.pageSize=O.page_size),x.totalPages=Math.ceil(x.rows/x.pageSize)||0,V.value=O.extras??{}}finally{h.value=!1}}async function g(){await p()}function k(z){N.value=z,Y&&clearTimeout(Y),Y=setTimeout(()=>{x.page=1,p()},a)}function w(z,M){A[z]=M,x.page=1,p()}function R(){for(const z of Object.keys(A))delete A[z];x.page=1,p()}function L(z){x.page=z.page+1,x.pageSize=z.rows,p()}function F(z){I.field=z.sortField??null,I.order=z.sortOrder??0,x.page=1,p()}return l&&p(),{items:d,loading:h,search:N,pagination:x,sort:I,extras:V,fetchItems:p,refresh:g,setSearch:k,setFilter:w,clearFilters:R,onPage:L,onSort:F}}function tl(t){return t.split("?")[0].replace(/^\/+|\/+$/g,"").replace(/^api\/v\d+\//,"")}function ol(t){return typeof t=="string"?{table:t}:t}function Nt(t,o=400){return{response:{status:o,data:{detail:t}},message:t}}function tt(t){if(t instanceof FormData)throw Nt("SupabaseDataProvider nao envia FormData diretamente. Faça upload do arquivo no Storage e envie a URL/caminho no payload.");return t}function Ce(t){throw{response:{data:{detail:(t==null?void 0:t.message)??"Erro ao consultar Supabase",code:t==null?void 0:t.code,details:t==null?void 0:t.details,hint:t==null?void 0:t.hint}},message:(t==null?void 0:t.message)??"Erro ao consultar Supabase"}}function Ve(t,o){var r,i;const a=tl(t),l=(r=o.resources)==null?void 0:r[a];if(l)return ol(l);if((i=o.allowedTables)!=null&&i.includes(a))return{table:a};throw Nt(`Recurso Supabase nao registrado para o endpoint "${t}".`,404)}function al(t,o,a){const l=new Set(["page","page_size","search","ordering"]),r={...a.defaultFilters,...o};for(const[i,s]of Object.entries(r))l.has(i)||s===null||s===void 0||s===""||(t=t.eq(i,s));return t}function nl(t,o,a){if(typeof o!="string"||!o.trim()||!(a!=null&&a.length))return t;const l=o.trim().replace(/,/g,"\\,"),r=a.map(i=>`${i}.ilike.%${l}%`).join(",");return t.or(r)}function ll(t,o){const a=typeof t=="string"&&t?t:o;return a?{field:a.startsWith("-")?a.slice(1):a,ascending:!a.startsWith("-")}:null}function rl(t,o){return t?o.mapListItem?t.map(a=>{var l;return(l=o.mapListItem)==null?void 0:l.call(o,a)}):t:[]}function il(t){const o=t.defaultSelect??"*";return{async list(a,l={}){var A;const r=Ve(a,t),i=Math.max(Number(l.page??1),1),s=Math.max(Number(l.page_size??20),1),v=(i-1)*s,d=v+s-1;let h=t.client.from(r.table).select(r.select??o,{count:"exact"});h=al(h,l,r),h=nl(h,l.search,r.searchFields);const N=ll(l.ordering,r.defaultOrdering);N&&(h=h.order(N.field,{ascending:N.ascending}));const V=await h.range(v,d);return V.error&&Ce(V.error),{data:rl(V.data,r),page:i,page_size:s,rows:V.count??((A=V.data)==null?void 0:A.length)??0,extras:{}}},async get(a,l,r){const i=Ve(a,t),s=i.pk??"id",v=await t.client.from(i.table).select(i.select??o).eq(s,l).single();return v.error&&Ce(v.error),{data:v.data}},async create(a,l,r){const i=Ve(a,t),s=tt(l),v=i.mapPayload?i.mapPayload(s,"create"):s,d=await t.client.from(i.table).insert(v).select(i.select??o).single();return d.error&&Ce(d.error),{data:d.data}},async update(a,l,r,i){const s=Ve(a,t),v=s.pk??"id",d=tt(r),h=s.mapPayload?s.mapPayload(d,"update"):d,N=await t.client.from(s.table).update(h).eq(v,l).select(s.select??o).single();return N.error&&Ce(N.error),{data:N.data}},async delete(a,l){const r=Ve(a,t),i=r.pk??"id",s=r.softDelete===!0?{is_active:!1}:typeof r.softDelete=="object"?r.softDelete:null,v=s?await t.client.from(r.table).update(s).eq(i,l):await t.client.from(r.table).delete().eq(i,l);v.error&&Ce(v.error)}}}exports.DEFAULT_CRUD_LABELS=$t;exports.WActionBar=Un;exports.WAutoCompleteFK=je;exports.WCrudColumnRenderer=Se;exports.WCrudFormDialog=Le;exports.WCrudView=Bt;exports.WDetailHeader=sn;exports.WEmptyState=Xa;exports.WFormRenderer=yt;exports.WFormSection=Yn;exports.WInfoCard=pn;exports.WKpiCard=Vt;exports.WKpiGrid=En;exports.WMoneyInput=We;exports.WPageHeader=Ka;exports.WPrimeVuePlugin=Zn;exports.WProgressFlow=_n;exports.WSectionHeader=Mn;exports.WStatusTag=Ct;exports.WTransferList=Ue;exports.W_AXIOS_KEY=rt;exports.W_CONFIG_KEY=xe;exports.W_DATA_PROVIDER_KEY=De;exports.createAxiosDataProvider=Et;exports.createSupabaseDataProvider=il;exports.downloadCsv=wt;exports.extractApiError=ye;exports.mapApiFieldToColumnDef=ht;exports.mapApiFieldToFieldDef=vt;exports.mapApiFieldsToColumnDefs=kt;exports.mapApiFieldsToFieldDefs=gt;exports.toCsv=bt;exports.useApi=el;exports.useApiError=bo;exports.useAppConfirm=Oe;exports.useAppToast=Ye;exports.useCrudManager=Qn;exports.useFormatters=Re;
|
|
12
|
+
*/function tn(){return e.inject(en)}const on={class:"w-detail-header"},an={class:"w-detail-header-left"},nn={class:"w-detail-header-content"},ln={class:"w-detail-header-title"},rn={key:0,class:"w-detail-header-subtitle"},sn={class:"w-detail-header-actions"},cn=e.defineComponent({__name:"WDetailHeader",props:{title:{},subtitle:{},icon:{},backRoute:{},backTo:{},status:{},statusMap:{}},setup(t){const o=t,a=tn();function l(){o.backTo?a.push(typeof o.backTo=="string"?{name:o.backTo}:o.backTo):o.backRoute?a.push({name:o.backRoute}):a.back()}return(r,i)=>(e.openBlock(),e.createElementBlock("div",on,[e.createElementVNode("div",an,[e.createVNode(e.unref(U),{icon:"pi pi-arrow-left",text:"",rounded:"",onClick:l}),t.icon?(e.openBlock(),e.createElementBlock("i",{key:0,class:e.normalizeClass([t.icon,"w-detail-header-icon"])},null,2)):e.createCommentVNode("",!0),e.createElementVNode("div",nn,[e.createElementVNode("h2",ln,e.toDisplayString(t.title),1),t.subtitle?(e.openBlock(),e.createElementBlock("p",rn,e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0)]),t.status?(e.openBlock(),e.createBlock(Ct,{key:1,value:t.status,map:t.statusMap},null,8,["value","map"])):e.createCommentVNode("",!0)]),e.createElementVNode("div",sn,[e.renderSlot(r.$slots,"actions")])]))}}),un={class:"w-info-card"},dn={key:0,class:"w-info-card-title"},mn={class:"w-info-card-grid"},fn={class:"w-info-card-label"},pn={class:"w-info-card-value"},vn=e.defineComponent({__name:"WInfoCard",props:{title:{},fields:{}},setup(t){const{formatCurrency:o,formatDate:a,formatNumber:l}=Re();function r(i){const s=i.value;return s==null||s===""?"-":i.format==="currency"?o(Number(s)):i.format==="date"?a(String(s)):i.format==="datetime"?a(String(s),"DD/MM/YYYY HH:mm"):i.format==="number"?l(Number(s)):String(s)}return(i,s)=>(e.openBlock(),e.createElementBlock("div",un,[t.title?(e.openBlock(),e.createElementBlock("h3",dn,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),e.createElementVNode("div",mn,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.fields,v=>(e.openBlock(),e.createElementBlock("div",{key:v.label,class:"w-info-card-field"},[e.createElementVNode("span",fn,e.toDisplayString(v.label),1),e.createElementVNode("span",pn,e.toDisplayString(r(v)),1)]))),128))])]))}}),gn={key:0,class:"w-kpi-card__loading"},hn={class:"w-kpi-card__loading-content"},kn={class:"w-kpi-card__header"},yn={key:0,class:"w-kpi-card__icon"},bn={key:1,class:"w-kpi-card__trend"},wn={class:"w-kpi-card__content"},Bn={class:"w-kpi-card__label"},Cn={class:"w-kpi-card__value"},Vn={key:0,class:"w-kpi-card__hint"},En={key:0,class:"w-kpi-card__footer"},Vt=e.defineComponent({__name:"WKpiCard",props:{label:{},value:{},icon:{},hint:{},severity:{},trend:{},loading:{type:Boolean}},setup(t){return(o,a)=>(e.openBlock(),e.createElementBlock("article",{class:e.normalizeClass(["w-kpi-card",t.severity?`w-kpi-card--${t.severity}`:""])},[t.loading?(e.openBlock(),e.createElementBlock("div",gn,[e.createVNode(e.unref(Pe),{shape:"circle",size:"2.75rem"}),e.createElementVNode("div",hn,[e.createVNode(e.unref(Pe),{width:"6rem",height:"0.75rem"}),e.createVNode(e.unref(Pe),{width:"7.5rem",height:"1.5rem"}),e.createVNode(e.unref(Pe),{width:"5rem",height:"0.75rem"})])])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("div",kn,[t.icon||o.$slots.icon?(e.openBlock(),e.createElementBlock("div",yn,[e.renderSlot(o.$slots,"icon",{},()=>[t.icon?(e.openBlock(),e.createElementBlock("i",{key:0,class:e.normalizeClass(t.icon)},null,2)):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0),t.trend||o.$slots.trend?(e.openBlock(),e.createElementBlock("div",bn,[e.renderSlot(o.$slots,"trend",{},()=>[t.trend?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(["w-kpi-card__trend-badge",t.trend.direction?`w-kpi-card__trend-badge--${t.trend.direction}`:""])},e.toDisplayString(t.trend.value),3)):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0)]),e.createElementVNode("div",wn,[e.createElementVNode("p",Bn,e.toDisplayString(t.label),1),e.createElementVNode("div",Cn,[e.renderSlot(o.$slots,"value",{},()=>[e.createTextVNode(e.toDisplayString(t.value),1)])]),t.hint||o.$slots.hint?(e.openBlock(),e.createElementBlock("p",Vn,[e.renderSlot(o.$slots,"hint",{},()=>[e.createTextVNode(e.toDisplayString(t.hint),1)])])):e.createCommentVNode("",!0)]),o.$slots.footer?(e.openBlock(),e.createElementBlock("footer",En,[e.renderSlot(o.$slots,"footer")])):e.createCommentVNode("",!0)],64))],2))}}),$n=e.defineComponent({__name:"WKpiGrid",props:{items:{default:()=>[]},columns:{default:4},dense:{type:Boolean,default:!1}},setup(t){const o=t,a=e.computed(()=>[`w-kpi-grid--cols-${o.columns}`,{"w-kpi-grid--dense":o.dense}]);return(l,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["w-kpi-grid",a.value])},[l.$slots.item?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(t.items,(i,s)=>e.renderSlot(l.$slots,"item",{key:s,item:i,index:s})),128)):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(t.items,(i,s)=>(e.openBlock(),e.createBlock(Vt,{key:s,label:i.label,value:i.value,icon:i.icon,severity:i.severity||"primary",hint:i.hint,trend:i.trend,loading:i.loading},null,8,["label","value","icon","severity","hint","trend","loading"]))),128))],2))}}),Nn={class:"w-section-header__main"},Sn={key:0,class:"w-section-header__icon"},Dn={class:"w-section-header__content"},xn={class:"w-section-header__title-row"},Pn={class:"w-section-header__title"},Fn={key:0,class:"w-section-header__subtitle"},Mn={key:0,class:"w-section-header__actions"},An=e.defineComponent({__name:"WSectionHeader",props:{title:{},subtitle:{},icon:{},compact:{type:Boolean}},setup(t){return(o,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["w-section-header",{"w-section-header--compact":t.compact}])},[e.createElementVNode("div",Nn,[t.icon||o.$slots.icon?(e.openBlock(),e.createElementBlock("div",Sn,[e.renderSlot(o.$slots,"icon",{},()=>[t.icon?(e.openBlock(),e.createElementBlock("i",{key:0,class:e.normalizeClass(t.icon)},null,2)):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0),e.createElementVNode("div",Dn,[e.createElementVNode("div",xn,[e.createElementVNode("h3",Pn,e.toDisplayString(t.title),1),e.renderSlot(o.$slots,"meta")]),t.subtitle?(e.openBlock(),e.createElementBlock("p",Fn,e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0)])]),o.$slots.actions?(e.openBlock(),e.createElementBlock("div",Mn,[e.renderSlot(o.$slots,"actions")])):e.createCommentVNode("",!0)],2))}}),Rn={key:0,class:"w-form-section__header"},Ln={class:"w-form-section__content"},zn={class:"w-form-section__title"},Tn={key:0,class:"w-form-section__description"},In={key:0,class:"w-form-section__actions"},Yn={class:"w-form-section__body"},On=e.defineComponent({__name:"WFormSection",props:{title:{},description:{},variant:{}},setup(t){return(o,a)=>(e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass(["w-form-section",t.variant?`w-form-section--${t.variant}`:""])},[t.title||t.description||o.$slots.actions?(e.openBlock(),e.createElementBlock("div",Rn,[e.createElementVNode("div",Ln,[e.createElementVNode("h3",zn,e.toDisplayString(t.title),1),t.description?(e.openBlock(),e.createElementBlock("p",Tn,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0)]),o.$slots.actions?(e.openBlock(),e.createElementBlock("div",In,[e.renderSlot(o.$slots,"actions")])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",Yn,[e.renderSlot(o.$slots,"default")])],2))}}),jn={key:0,class:"w-action-bar__primary"},Wn={key:1,class:"w-action-bar__filters"},Un={key:2,class:"w-action-bar__secondary"},qn=e.defineComponent({__name:"WActionBar",props:{align:{default:"between"},stackOnMobile:{type:Boolean,default:!0}},setup(t){return(o,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["w-action-bar",[`w-action-bar--${t.align}`,{"w-action-bar--stack":t.stackOnMobile}]])},[o.$slots.primary||o.$slots.default?(e.openBlock(),e.createElementBlock("div",jn,[e.renderSlot(o.$slots,"primary",{},()=>[e.renderSlot(o.$slots,"default")])])):e.createCommentVNode("",!0),o.$slots.filters?(e.openBlock(),e.createElementBlock("div",Wn,[e.renderSlot(o.$slots,"filters")])):e.createCommentVNode("",!0),o.$slots.secondary?(e.openBlock(),e.createElementBlock("div",Un,[e.renderSlot(o.$slots,"secondary")])):e.createCommentVNode("",!0)],2))}}),Hn={class:"w-progress-flow__marker"},Kn={class:"w-progress-flow__content"},Gn={class:"w-progress-flow__label"},Jn={key:0,class:"w-progress-flow__description"},Zn=e.defineComponent({__name:"WProgressFlow",props:{steps:{},currentStep:{},orientation:{default:"horizontal"}},setup(t){const o=t,a=e.computed(()=>o.steps.findIndex(r=>r.key===o.currentStep));function l(r){return r<a.value?"done":r===a.value?"current":"pending"}return(r,i)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["w-progress-flow",`w-progress-flow--${t.orientation}`])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.steps,(s,v)=>(e.openBlock(),e.createElementBlock("div",{key:s.key,class:e.normalizeClass(["w-progress-flow__step",`w-progress-flow__step--${l(v)}`])},[e.renderSlot(r.$slots,"step",{step:s,index:v,state:l(v)},()=>[e.createElementVNode("div",Hn,[e.createElementVNode("span",null,e.toDisplayString(v+1),1)]),e.createElementVNode("div",Kn,[e.createElementVNode("p",Gn,e.toDisplayString(s.label),1),s.description?(e.openBlock(),e.createElementBlock("p",Jn,e.toDisplayString(s.description),1)):e.createCommentVNode("",!0)])])],2))),128))],2))}});function Xn(t,o,a){const l=t;return Array.isArray(l.results)?{data:l.results,page:l.page??o,page_size:l.page_size??a,rows:l.count??0,extras:l.extras??{}}:Array.isArray(l.data)?{data:l.data,page:l.page??o,page_size:l.page_size??a,rows:l.rows??0,extras:l.extras??{}}:{data:Array.isArray(t)?t:[],page:o,page_size:a,rows:Array.isArray(t)?t.length:0,extras:{}}}function Et(t){return{async list(o,a={}){const l=await t.get(o,{params:a});return Xn(l.data,Number(a.page??1),Number(a.page_size??20))},async get(o,a,l){return{data:(await t.get(`${o}${a}/`,l)).data}},async create(o,a,l){return{data:(await t.post(o,a,l)).data}},async update(o,a,l,r){return{data:(await t.patch(`${o}${a}/`,l,r)).data}},async delete(o,a){await t.delete(`${o}${a}/`)}}}const _n={install(t,o){if(!(o!=null&&o.axios)&&!(o!=null&&o.dataProvider))throw new Error('[wPrimeVueComponents] Informe "axios" ou "dataProvider" ao registrar o WPrimeVuePlugin.');const a=o.dataProvider??Et(o.axios),l={axios:o.axios,dataProvider:a,defaultPageSize:o.defaultPageSize??20,dateFormat:o.dateFormat??"DD/MM/YYYY",dateTimeFormat:o.dateTimeFormat??"DD/MM/YYYY HH:mm",locale:o.locale??"pt-BR",currency:o.currency??"BRL"};o.axios&&t.provide(rt,o.axios),t.provide(De,a),t.provide(xe,l),o.registerComponents!==!1&&(t.component("WCrudView",Bt),t.component("WCrudFormDialog",Le),t.component("WCrudColumnRenderer",Se),t.component("WAutoCompleteFK",je),t.component("WMoneyInput",We),t.component("WTransferList",Ue))}},$t={createTitle:"Novo Registro",editTitle:"Editar Registro",createButton:"Novo",saveButton:"Salvar",updateButton:"Atualizar",cancelButton:"Cancelar",deleteConfirmTitle:"Confirmar Exclusão",deleteConfirmMessage:"Deseja realmente excluir este registro?",searchPlaceholder:"Buscar...",emptyMessage:"Nenhum registro encontrado",successCreate:"Registro criado com sucesso",successUpdate:"Registro atualizado com sucesso",successDelete:"Registro excluído com sucesso"};function Qn(t,o){const a={};for(const l of Object.keys(o))JSON.stringify(t[l])!==JSON.stringify(o[l])&&(a[l]=o[l]);return a}function el(t){const{endpoint:o,columns:a,form:l,pk:r="id",searchDebounce:i=300,partialUpdate:s=!0,refetchOnSave:v=!0,canCreate:d=!0,canEdit:h=!0,canDelete:N=!0,rowActions:V=void 0,filterParams:A=void 0,createDefaults:x=void 0,transformPayload:I=void 0,onAfterSave:Y=void 0,onAfterDelete:p=void 0}=t,g=e.inject(De);if(!g)throw new Error("[wPrimeVueComponents] dataProvider não encontrado. Registre o WPrimeVuePlugin antes de usar useCrudManager.");const k=g,w=e.inject(xe),R=t.pageSize??(w==null?void 0:w.defaultPageSize)??20,L={...$t,...t.labels},F=Ye(),{confirmDelete:z}=Oe(),M=e.ref([]),O=e.ref({}),K=e.ref(!1),H=e.ref(!1),W=e.ref(""),m=e.ref(!1),C=e.ref(!1),c=e.ref(null),n=e.reactive({});let f=null;const u=e.reactive({page:1,pageSize:R,rows:0,totalPages:0}),E=e.reactive({field:null,order:0});function S(){const b={};for(const $ of l)b[$.field]=$.defaultValue!==void 0?typeof $.defaultValue=="function"?$.defaultValue():$.defaultValue:null;return b}const T=S();for(const b of Object.keys(T))n[b]=T[b];const G=e.computed(()=>c.value!==null&&!C.value),_=e.computed(()=>C.value),be=e.computed(()=>C.value?L.viewTitle??"Visualizar Registro":G.value?L.editTitle:L.createTitle),we=e.computed(()=>u.page<=1),ae=e.computed(()=>u.page>=u.totalPages);let ne=null;async function J(b={}){K.value=!0;try{const $={page:u.page,page_size:u.pageSize,...b};W.value&&($.search=W.value),E.field&&E.order!==0&&($.ordering=E.order===-1?`-${E.field}`:E.field),A&&Object.assign($,A());const D=await k.list(o,$);M.value=D.data,u.rows=D.rows,O.value=D.extras??{},D.page&&(u.page=D.page),D.page_size&&(u.pageSize=D.page_size),u.totalPages=Math.ceil(u.rows/u.pageSize)||0}finally{K.value=!1}}async function Q(){await J()}async function re(){await J()}async function de(b=200){const $={};W.value&&($.search=W.value),E.field&&E.order!==0&&($.ordering=E.order===-1?`-${E.field}`:E.field),A&&Object.assign($,A());const D=[];let j=1;const he=1e4;for(;j<=he;){const oe=await k.list(o,{...$,page:j,page_size:b});D.push(...oe.data);const ee=oe.rows??D.length;if(oe.data.length===0||D.length>=ee)break;j++}return D}function ie(b){W.value=b,ne&&clearTimeout(ne),ne=setTimeout(()=>{u.page=1,J()},i)}function me(b){const $=b.target;ie($.value)}function te(b){u.page=b,J()}function se(){te(1)}function fe(){te(u.totalPages)}function pe(b){u.page=b.page+1,u.pageSize=b.rows,J()}function ve(b){E.field=b.sortField??null,E.order=b.sortOrder??0,u.page=1,J()}function y(){const b=S();for(const $ of Object.keys(b))n[$]=b[$]}function B(b,$){n[b]=$}function q(){if(C.value=!1,c.value=null,f=null,y(),x){const b=x();for(const[$,D]of Object.entries(b))n[$]=D}m.value=!0}function P(b){const $={};for(const D of l){let j=b[D.field]!==void 0?b[D.field]:null;j&&(D.type==="date"||D.type==="datetime")&&typeof j=="string"&&(j=Ie(j)),n[D.field]=j,$[D.field]=j}f=$}function Z(b){C.value=!1,c.value=b,P(b),m.value=!0}function St(b){C.value=!0,c.value=b,P(b),m.value=!0}function Dt(b){C.value=!1,c.value=null,f=null,y();for(const $ of l){if($.field===r)continue;let D=b[$.field]!==void 0?b[$.field]:n[$.field];D&&($.type==="date"||$.type==="datetime")&&typeof D=="string"&&(D=Ie(D)),n[$.field]=D}if(x){const $=x();for(const[D,j]of Object.entries($))n[D]=j}m.value=!0}function qe(b){const $={...b};for(const D of l){const j=$[D.field];if(D.type==="date"&&j instanceof Date?$[D.field]=it(j):D.type==="datetime"&&j instanceof Date&&($[D.field]=st(j)),D.type==="fk"&&j!==null&&typeof j=="object"){const he=D.optionValue||"id";$[D.field]=j[he]??j}(D.type==="mask"||D.type==="cpf_cnpj")&&typeof j=="string"&&($[D.field]=ue(j))}return $}async function xt(){for(const b of l){if(b.validate){const $=b.validate(n[b.field]);if($)return F.error($),null}if(b.required){const $=n[b.field];if($==null||$==="")return F.error(`${b.label} é obrigatório`),null}}H.value=!0;try{let b=qe(n);if(!G.value&&x&&Object.assign(b,x()),G.value&&s&&f){const ee=qe(f);if(b=Qn(ee,b),Object.keys(b).length===0&&!I){m.value=!1;const ce=c.value;return c.value=null,f=null,ce}}I&&(b=I(b,G.value));const $=l.some(ee=>ee.type==="image"&&b[ee.field]instanceof File);let D=b,j;if($){const ee=new Set(l.filter(le=>le.type==="image").map(le=>le.field)),ce=new FormData;for(const[le,Be]of Object.entries(b))if(Be!=null)if(Be instanceof File)ce.append(le,Be);else{if(ee.has(le))continue;ce.append(le,String(Be))}D=ce,j={"Content-Type":"multipart/form-data"}}const he=j?{headers:j}:void 0;let oe;if(G.value&&c.value){const ee=c.value[r];if(oe=await k.update(o,ee,D,he),!v){const ce=M.value.findIndex(le=>le[r]===ee);ce!==-1&&(M.value[ce]=oe.data)}F.success(L.successUpdate)}else oe=await k.create(o,D,he),v||(M.value.unshift(oe.data),u.rows++),F.success(L.successCreate);return m.value=!1,c.value=null,f=null,v&&await J(),Y&&Y(oe.data,G.value),oe.data}catch(b){return F.error(ye(b,"Erro ao salvar registro")),null}finally{H.value=!1}}function Pt(b){z(async()=>{try{const $=b[r];await k.delete(o,$);const D=M.value.findIndex(j=>j[r]===$);D!==-1&&(M.value.splice(D,1),u.rows--),F.success(L.successDelete),p&&p(b)}catch($){F.error(ye($,"Erro ao excluir registro"))}},L.deleteConfirmMessage)}return{items:M,extras:O,loading:K,saving:H,search:W,dialogVisible:m,editingItem:c,formData:n,pagination:u,sort:E,isEditing:G,isViewing:_,viewMode:C,dialogTitle:be,isFirstPage:we,isLastPage:ae,init:Q,fetchItems:J,fetchAll:de,refresh:re,setSearch:ie,onSearch:me,onPage:pe,onSort:ve,openCreateDialog:q,openEditDialog:Z,openViewDialog:St,openDuplicateDialog:Dt,save:xt,confirmDelete:Pt,setFormField:B,resetForm:y,goToPage:te,firstPage:se,lastPage:fe,config:t}}function tl(t){const{endpoint:o,searchDebounce:a=300,immediate:l=!1}=t,r=e.inject(De);if(!r)throw new Error("[wPrimeVueComponents] dataProvider não encontrado. Registre o WPrimeVuePlugin antes de usar useApi.");const i=r,s=e.inject(xe),v=t.pageSize??(s==null?void 0:s.defaultPageSize)??20,d=e.ref([]),h=e.ref(!1),N=e.ref(""),V=e.ref({}),A=e.reactive({}),x=e.reactive({page:1,pageSize:v,rows:0,totalPages:0}),I=e.reactive({field:null,order:0});let Y=null;async function p(z={}){h.value=!0;try{const M={page:x.page,page_size:x.pageSize,...z};N.value&&(M.search=N.value),I.field&&I.order!==0&&(M.ordering=I.order===-1?`-${I.field}`:I.field);for(const[K,H]of Object.entries(A))H!=null&&H!==""&&(M[K]=H);const O=await i.list(o,M);d.value=O.data,x.rows=O.rows,O.page&&(x.page=O.page),O.page_size&&(x.pageSize=O.page_size),x.totalPages=Math.ceil(x.rows/x.pageSize)||0,V.value=O.extras??{}}finally{h.value=!1}}async function g(){await p()}function k(z){N.value=z,Y&&clearTimeout(Y),Y=setTimeout(()=>{x.page=1,p()},a)}function w(z,M){A[z]=M,x.page=1,p()}function R(){for(const z of Object.keys(A))delete A[z];x.page=1,p()}function L(z){x.page=z.page+1,x.pageSize=z.rows,p()}function F(z){I.field=z.sortField??null,I.order=z.sortOrder??0,x.page=1,p()}return l&&p(),{items:d,loading:h,search:N,pagination:x,sort:I,extras:V,fetchItems:p,refresh:g,setSearch:k,setFilter:w,clearFilters:R,onPage:L,onSort:F}}function ol(t){return t.split("?")[0].replace(/^\/+|\/+$/g,"").replace(/^api\/v\d+\//,"")}function al(t){return typeof t=="string"?{table:t}:t}function Nt(t,o=400){return{response:{status:o,data:{detail:t}},message:t}}function tt(t){if(t instanceof FormData)throw Nt("SupabaseDataProvider nao envia FormData diretamente. Faça upload do arquivo no Storage e envie a URL/caminho no payload.");return t}function Ce(t){throw{response:{data:{detail:(t==null?void 0:t.message)??"Erro ao consultar Supabase",code:t==null?void 0:t.code,details:t==null?void 0:t.details,hint:t==null?void 0:t.hint}},message:(t==null?void 0:t.message)??"Erro ao consultar Supabase"}}function Ve(t,o){var r,i;const a=ol(t),l=(r=o.resources)==null?void 0:r[a];if(l)return al(l);if((i=o.allowedTables)!=null&&i.includes(a))return{table:a};throw Nt(`Recurso Supabase nao registrado para o endpoint "${t}".`,404)}function nl(t,o,a){const l=new Set(["page","page_size","search","ordering"]),r={...a.defaultFilters,...o};for(const[i,s]of Object.entries(r))l.has(i)||s===null||s===void 0||s===""||(t=t.eq(i,s));return t}function ll(t,o,a){if(typeof o!="string"||!o.trim()||!(a!=null&&a.length))return t;const l=o.trim().replace(/,/g,"\\,"),r=a.map(i=>`${i}.ilike.%${l}%`).join(",");return t.or(r)}function rl(t,o){const a=typeof t=="string"&&t?t:o;return a?{field:a.startsWith("-")?a.slice(1):a,ascending:!a.startsWith("-")}:null}function il(t,o){return t?o.mapListItem?t.map(a=>{var l;return(l=o.mapListItem)==null?void 0:l.call(o,a)}):t:[]}function sl(t){const o=t.defaultSelect??"*";return{async list(a,l={}){var A;const r=Ve(a,t),i=Math.max(Number(l.page??1),1),s=Math.max(Number(l.page_size??20),1),v=(i-1)*s,d=v+s-1;let h=t.client.from(r.table).select(r.select??o,{count:"exact"});h=nl(h,l,r),h=ll(h,l.search,r.searchFields);const N=rl(l.ordering,r.defaultOrdering);N&&(h=h.order(N.field,{ascending:N.ascending}));const V=await h.range(v,d);return V.error&&Ce(V.error),{data:il(V.data,r),page:i,page_size:s,rows:V.count??((A=V.data)==null?void 0:A.length)??0,extras:{}}},async get(a,l,r){const i=Ve(a,t),s=i.pk??"id",v=await t.client.from(i.table).select(i.select??o).eq(s,l).single();return v.error&&Ce(v.error),{data:v.data}},async create(a,l,r){const i=Ve(a,t),s=tt(l),v=i.mapPayload?i.mapPayload(s,"create"):s,d=await t.client.from(i.table).insert(v).select(i.select??o).single();return d.error&&Ce(d.error),{data:d.data}},async update(a,l,r,i){const s=Ve(a,t),v=s.pk??"id",d=tt(r),h=s.mapPayload?s.mapPayload(d,"update"):d,N=await t.client.from(s.table).update(h).eq(v,l).select(s.select??o).single();return N.error&&Ce(N.error),{data:N.data}},async delete(a,l){const r=Ve(a,t),i=r.pk??"id",s=r.softDelete===!0?{is_active:!1}:typeof r.softDelete=="object"?r.softDelete:null,v=s?await t.client.from(r.table).update(s).eq(i,l):await t.client.from(r.table).delete().eq(i,l);v.error&&Ce(v.error)}}}exports.DEFAULT_CRUD_LABELS=$t;exports.WActionBar=qn;exports.WAutoCompleteFK=je;exports.WCrudColumnRenderer=Se;exports.WCrudFormDialog=Le;exports.WCrudView=Bt;exports.WDetailHeader=cn;exports.WEmptyState=Qa;exports.WFormRenderer=yt;exports.WFormSection=On;exports.WInfoCard=vn;exports.WKpiCard=Vt;exports.WKpiGrid=$n;exports.WMoneyInput=We;exports.WPageHeader=Ga;exports.WPrimeVuePlugin=_n;exports.WProgressFlow=Zn;exports.WSectionHeader=An;exports.WStatusTag=Ct;exports.WTransferList=Ue;exports.W_AXIOS_KEY=rt;exports.W_CONFIG_KEY=xe;exports.W_DATA_PROVIDER_KEY=De;exports.createAxiosDataProvider=Et;exports.createSupabaseDataProvider=sl;exports.downloadCsv=wt;exports.extractApiError=ye;exports.mapApiFieldToColumnDef=ht;exports.mapApiFieldToFieldDef=vt;exports.mapApiFieldsToColumnDefs=kt;exports.mapApiFieldsToFieldDefs=gt;exports.toCsv=bt;exports.useApi=tl;exports.useApiError=bo;exports.useAppConfirm=Oe;exports.useAppToast=Ye;exports.useCrudManager=el;exports.useFormatters=Re;
|
|
13
13
|
//# sourceMappingURL=index.cjs.map
|