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