@wgalleti/primevue-components 0.3.4
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/README.md +218 -0
- package/dist/components/crud/WCrudColumnRenderer.vue.d.ts +8 -0
- package/dist/components/crud/WCrudFormDialog.vue.d.ts +214 -0
- package/dist/components/crud/WCrudView.vue.d.ts +89 -0
- package/dist/components/form/WAutoCompleteFK.vue.d.ts +43 -0
- package/dist/components/form/WFormRenderer.vue.d.ts +41 -0
- package/dist/components/form/WMoneyInput.vue.d.ts +28 -0
- package/dist/components/form/WTransferList.vue.d.ts +25 -0
- package/dist/components/index.d.ts +18 -0
- package/dist/components/ui/WActionBar.vue.d.ts +27 -0
- package/dist/components/ui/WDetailHeader.vue.d.ts +29 -0
- package/dist/components/ui/WEmptyState.vue.d.ts +13 -0
- package/dist/components/ui/WFormSection.vue.d.ts +23 -0
- package/dist/components/ui/WInfoCard.vue.d.ts +11 -0
- package/dist/components/ui/WKpiCard.vue.d.ts +33 -0
- package/dist/components/ui/WKpiGrid.vue.d.ts +31 -0
- package/dist/components/ui/WPageHeader.vue.d.ts +27 -0
- package/dist/components/ui/WProgressFlow.vue.d.ts +33 -0
- package/dist/components/ui/WSectionHeader.vue.d.ts +25 -0
- package/dist/components/ui/WStatusTag.vue.d.ts +10 -0
- package/dist/composables/index.d.ts +6 -0
- package/dist/composables/useApi.d.ts +2 -0
- package/dist/composables/useApiError.d.ts +4 -0
- package/dist/composables/useAppConfirm.d.ts +4 -0
- package/dist/composables/useAppToast.d.ts +6 -0
- package/dist/composables/useCrudManager.d.ts +2 -0
- package/dist/composables/useFormatters.d.ts +19 -0
- package/dist/data-providers/axiosDataProvider.d.ts +3 -0
- package/dist/data-providers/index.d.ts +2 -0
- package/dist/data-providers/supabaseDataProvider.d.ts +54 -0
- package/dist/index.cjs +11 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.js +3287 -0
- package/dist/index.js.map +1 -0
- package/dist/plugin.d.ts +2 -0
- package/dist/primevue-components.css +1 -0
- package/dist/types/api.d.ts +60 -0
- package/dist/types/components/crud/WCrudColumnRenderer.vue.d.ts +8 -0
- package/dist/types/components/crud/WCrudFormDialog.vue.d.ts +49 -0
- package/dist/types/components/crud/WCrudView.vue.d.ts +103 -0
- package/dist/types/components/form/WAutoCompleteFK.vue.d.ts +43 -0
- package/dist/types/components/form/WFormRenderer.vue.d.ts +40 -0
- package/dist/types/components/form/WMoneyInput.vue.d.ts +28 -0
- package/dist/types/components/form/WTransferList.vue.d.ts +25 -0
- package/dist/types/components/index.d.ts +18 -0
- package/dist/types/components/ui/WActionBar.vue.d.ts +25 -0
- package/dist/types/components/ui/WDetailHeader.vue.d.ts +24 -0
- package/dist/types/components/ui/WEmptyState.vue.d.ts +13 -0
- package/dist/types/components/ui/WFormSection.vue.d.ts +19 -0
- package/dist/types/components/ui/WInfoCard.vue.d.ts +11 -0
- package/dist/types/components/ui/WKpiCard.vue.d.ts +32 -0
- package/dist/types/components/ui/WKpiGrid.vue.d.ts +26 -0
- package/dist/types/components/ui/WPageHeader.vue.d.ts +22 -0
- package/dist/types/components/ui/WProgressFlow.vue.d.ts +28 -0
- package/dist/types/components/ui/WSectionHeader.vue.d.ts +22 -0
- package/dist/types/components/ui/WStatusTag.vue.d.ts +10 -0
- package/dist/types/composables/index.d.ts +6 -0
- package/dist/types/composables/useApi.d.ts +2 -0
- package/dist/types/composables/useApiError.d.ts +4 -0
- package/dist/types/composables/useAppConfirm.d.ts +4 -0
- package/dist/types/composables/useAppToast.d.ts +6 -0
- package/dist/types/composables/useCrudManager.d.ts +2 -0
- package/dist/types/composables/useFormatters.d.ts +19 -0
- package/dist/types/crud.d.ts +184 -0
- package/dist/types/data-providers/axiosDataProvider.d.ts +3 -0
- package/dist/types/data-providers/index.d.ts +2 -0
- package/dist/types/data-providers/supabaseDataProvider.d.ts +54 -0
- package/dist/types/dataProvider.d.ts +28 -0
- package/dist/types/index.d.ts +12 -0
- package/dist/types/plugin.d.ts +2 -0
- package/dist/types/types/api.d.ts +60 -0
- package/dist/types/types/crud.d.ts +184 -0
- package/dist/types/types/dataProvider.d.ts +28 -0
- package/dist/types/types/index.d.ts +6 -0
- package/dist/types/types/plugin.d.ts +24 -0
- package/dist/types/utils/cep.d.ts +14 -0
- package/dist/types/utils/dates.d.ts +5 -0
- package/dist/types/utils/fieldMapper.d.ts +20 -0
- package/dist/types/utils/masks.d.ts +8 -0
- package/dist/utils/cep.d.ts +14 -0
- package/dist/utils/dates.d.ts +5 -0
- package/dist/utils/fieldMapper.d.ts +20 -0
- package/dist/utils/masks.d.ts +8 -0
- package/package.json +78 -0
package/dist/index.cjs
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),Qe=require("primevue/datatable"),he=require("primevue/column"),_=require("primevue/button"),J=require("primevue/inputtext"),Ce=require("primevue/iconfield"),$e=require("primevue/inputicon"),$t=require("primevue/paginator"),et=require("primevue/tag"),ve=require("dayjs"),tt=require("primevue/dialog"),Ue=require("primevue/inputnumber"),Nt=require("primevue/textarea"),Dt=require("primevue/select"),ot=require("primevue/autocomplete"),qe=require("primevue/datepicker"),St=require("primevue/toggleswitch"),xt=require("primevue/colorpicker"),Pt=require("primevue/password"),Ft=require("primevue/usetoast"),At=require("primevue/useconfirm"),Mt=require("primevue/inputgroup"),_e=require("primevue/inputgroupaddon"),Pe=require("primevue/skeleton"),at=Symbol("w-axios"),De=Symbol("w-data-provider"),Se=Symbol("w-config");function Tt(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Ae={exports:{}},Lt=Ae.exports,He;function zt(){return He||(He=1,(function(t,o){(function(a,n){t.exports=n()})(Lt,(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/,i=/\d\d?/,v=/\d*[^-_:/,()\s\d]+/,c={},k=function(u){return(u=+u)+(u>68?1900:2e3)},$=function(u){return function(g){this[u]=+g}},B=[/[+-]\d\d:?(\d\d)?|Z/,function(u){(this.zone||(this.zone={})).offset=(function(g){if(!g||g==="Z")return 0;var y=g.match(/([+-]|\d\d)/g),E=60*y[1]+(+y[2]||0);return E===0?0:y[0]==="+"?-E:E})(u)}],M=function(u){var g=c[u];return g&&(g.indexOf?g:g.s.concat(g.f))},F=function(u,g){var y,E=c.meridiem;if(E){for(var S=1;S<=24;S+=1)if(u.indexOf(E(S,0,g))>-1){y=S>12;break}}else y=u===(g?"pm":"PM");return y},I={A:[v,function(u){this.afternoon=F(u,!1)}],a:[v,function(u){this.afternoon=F(u,!0)}],Q:[r,function(u){this.month=3*(u-1)+1}],S:[r,function(u){this.milliseconds=100*+u}],SS:[s,function(u){this.milliseconds=10*+u}],SSS:[/\d{3}/,function(u){this.milliseconds=+u}],s:[i,$("seconds")],ss:[i,$("seconds")],m:[i,$("minutes")],mm:[i,$("minutes")],H:[i,$("hours")],h:[i,$("hours")],HH:[i,$("hours")],hh:[i,$("hours")],D:[i,$("day")],DD:[s,$("day")],Do:[v,function(u){var g=c.ordinal,y=u.match(/\d+/);if(this.day=y[0],g)for(var E=1;E<=31;E+=1)g(E).replace(/\[|\]/g,"")===u&&(this.day=E)}],w:[i,$("week")],ww:[s,$("week")],M:[i,$("month")],MM:[s,$("month")],MMM:[v,function(u){var g=M("months"),y=(M("monthsShort")||g.map((function(E){return E.slice(0,3)}))).indexOf(u)+1;if(y<1)throw new Error;this.month=y%12||y}],MMMM:[v,function(u){var g=M("months").indexOf(u)+1;if(g<1)throw new Error;this.month=g%12||g}],Y:[/[+-]?\d+/,$("year")],YY:[s,function(u){this.year=k(u)}],YYYY:[/\d{4}/,$("year")],Z:B,ZZ:B};function W(u){var g,y;g=u,y=c&&c.formats;for(var E=(u=g.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(D,x,O){var d=O&&O.toUpperCase();return x||y[O]||a[O]||y[d].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(C,N,l){return N||l.slice(1)}))}))).match(n),S=E.length,T=0;T<S;T+=1){var h=E[T],p=I[h],L=p&&p[0],m=p&&p[1];E[T]=m?{regex:L,parser:m}:h.replace(/^\[|\]$/g,"")}return function(D){for(var x={},O=0,d=0;O<S;O+=1){var C=E[O];if(typeof C=="string")d+=C.length;else{var N=C.regex,l=C.parser,f=D.slice(d),Y=N.exec(f)[0];l.call(x,Y),D=D.replace(Y,"")}}return(function(H){var j=H.afternoon;if(j!==void 0){var z=H.hours;j?z<12&&(H.hours+=12):z===12&&(H.hours=0),delete H.afternoon}})(x),x}}return function(u,g,y){y.p.customParseFormat=!0,u&&u.parseTwoDigitYear&&(k=u.parseTwoDigitYear);var E=g.prototype,S=E.parse;E.parse=function(T){var h=T.date,p=T.utc,L=T.args;this.$u=p;var m=L[1];if(typeof m=="string"){var D=L[2]===!0,x=L[3]===!0,O=D||x,d=L[2];x&&(d=L[2]),c=this.$locale(),!D&&d&&(c=y.Ls[d]),this.$d=(function(f,Y,H,j){try{if(["x","X"].indexOf(Y)>-1)return new Date((Y==="X"?1e3:1)*f);var z=W(Y)(f),G=z.year,X=z.month,ye=z.day,be=z.hours,ee=z.minutes,Z=z.seconds,te=z.milliseconds,Q=z.zone,oe=z.week,ue=new Date,ae=ye||(G||X?1:ue.getDate()),me=G||ue.getFullYear(),re=0;G&&!X||(re=X>0?X-1:ue.getMonth());var se,fe=be||0,ie=ee||0,pe=Z||0,b=te||0;return Q?new Date(Date.UTC(me,re,ae,fe,ie,pe,b+60*Q.offset*1e3)):H?new Date(Date.UTC(me,re,ae,fe,ie,pe,b)):(se=new Date(me,re,ae,fe,ie,pe,b),oe&&(se=j(se).week(oe).toDate()),se)}catch{return new Date("")}})(h,m,p,y),this.init(),d&&d!==!0&&(this.$L=this.locale(d).$L),O&&h!=this.format(m)&&(this.$d=new Date("")),c={}}else if(m instanceof Array)for(var C=m.length,N=1;N<=C;N+=1){L[1]=m[N-1];var l=y.apply(this,L);if(l.isValid()){this.$d=l.$d,this.$L=l.$L,this.init();break}N===C&&(this.$d=new Date(""))}else S.call(this,T)}}}))})(Ae)),Ae.exports}var Rt=zt();const It=Tt(Rt);ve.extend(It);function nt(t){if(!t)return null;if(t instanceof Date)return t;const o=ve(t,"YYYY-MM-DD",!0);return o.isValid()?o.toDate():ve(t).toDate()}function lt(t){return t?typeof t=="string"?t:ve(t).format("YYYY-MM-DD"):null}function rt(t){return t?typeof t=="string"?t:ve(t).toISOString():null}function Yt(t,o="DD/MM/YYYY"){return t?ve(t).format(o):"—"}function Wt(t){return t?ve(t).format("DD/MM/YYYY HH:mm"):"—"}function de(t){return t.replace(/\D/g,"")}function st(t){if(!t)return"—";const o=de(t);return o.length!==11?t:o.replace(/^(\d{3})(\d{3})(\d{3})(\d{2})$/,"$1.$2.$3-$4")}function it(t){if(!t)return"—";const o=de(t);return o.length!==14?t:o.replace(/^(\d{2})(\d{3})(\d{3})(\d{4})(\d{2})$/,"$1.$2.$3/$4-$5")}function Ot(t){if(!t)return"—";const o=de(t);return o.length===11?st(t):o.length===14?it(t):t}function jt(t){if(!t)return"—";const o=de(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 ct(t){if(!t)return null;const o=de(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 i=0;i<9;i++)a+=parseInt(o[i])*(10-i);let n=a%11;const r=n<2?0:11-n;if(parseInt(o[9])!==r)return"CPF inválido.";a=0;for(let i=0;i<10;i++)a+=parseInt(o[i])*(11-i);n=a%11;const s=n<2?0:11-n;return parseInt(o[10])!==s?"CPF inválido.":null}function dt(t){if(!t)return null;const o=de(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 c=0;c<12;c++)n+=parseInt(o[c])*a[c];let r=n%11;const s=r<2?0:11-r;if(parseInt(o[12])!==s)return"CNPJ inválido.";const i=[6,5,4,3,2,9,8,7,6,5,4,3,2];n=0;for(let c=0;c<13;c++)n+=parseInt(o[c])*i[c];r=n%11;const v=r<2?0:11-r;return parseInt(o[13])!==v?"CNPJ inválido.":null}function Ut(t){if(!t)return null;const o=de(t);return o.length===11?ct(t):o.length===14?dt(t):"CPF deve ter 11 dígitos ou CNPJ deve ter 14 dígitos."}const Me=new Map;function Ke(t,o){const a=`${t}-${o}`;let n=Me.get(a);return n||(n=new Intl.NumberFormat(t,{minimumFractionDigits:o,maximumFractionDigits:o}),Me.set(a,n)),n}function qt(t,o){const a=`${t}-${o}`;let n=Me.get(a);return n||(n=new Intl.NumberFormat(t,{style:"currency",currency:o}),Me.set(a,n)),n}function Te(){const t=e.inject(Se,{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(c){return c==null?"—":qt(o,a).format(c)}function r(c,k=2){return c==null?"—":Ke(o,k).format(c)}function s(c,k){return Yt(c,k??(t==null?void 0:t.dateFormat)??"DD/MM/YYYY")}function i(c){return Wt(c)}function v(c){return c==null?"—":`${Ke(o,2).format(c)}%`}return{formatCurrency:n,formatNumber:r,formatDate:s,formatDateTime:i,formatPercent:v,formatCpf:st,formatCnpj:it,formatCpfCnpj:Ot,formatTelefone:jt,validateCpf:ct,validateCnpj:dt,validateCpfCnpj:Ut,parseDate:nt,toDateString:lt,toDateTimeString:rt}}const _t={key:0,class:"text-muted-color text-xs"},Ht=["src","alt"],Kt={key:3,class:"text-muted-color tabular-nums text-[0.8125rem]"},Gt={key:4,class:"text-muted-color tabular-nums text-[0.8125rem]"},Jt={key:5,class:"font-semibold tabular-nums text-[0.8125rem]"},Zt={key:6,class:"font-semibold tabular-nums text-[0.8125rem]"},Xt={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}=Te();return(s,i)=>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,Ht)):t.column.type==="boolean"?(e.openBlock(),e.createBlock(e.unref(et),{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",Kt,e.toDisplayString(e.unref(o)(t.value)),1)):t.column.type==="datetime"?(e.openBlock(),e.createElementBlock("span",Gt,e.toDisplayString(e.unref(a)(t.value)),1)):t.column.type==="currency"?(e.openBlock(),e.createElementBlock("span",Jt,e.toDisplayString(e.unref(n)(t.value)),1)):t.column.type==="number"?(e.openBlock(),e.createElementBlock("span",Zt,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",Xt,e.toDisplayString(t.column.format?t.column.format(t.value,t.rowData):t.value),1))}});var Qt=Object.defineProperty,eo=(t,o,a)=>o in t?Qt(t,o,{enumerable:!0,configurable:!0,writable:!0,value:a}):t[o]=a,Ee=(t,o,a)=>eo(t,typeof o!="symbol"?o+"":o,a);const Ge={"#":{pattern:/[0-9]/},"@":{pattern:/[a-zA-Z]/},"*":{pattern:/[a-zA-Z0-9]/}},Je=(t,o,a)=>t.replaceAll(o,"").replace(a,".").replace("..",".").replace(/[^.\d]/g,""),Ze=(t,o,a)=>{var n;return new Intl.NumberFormat(((n=a.number)==null?void 0:n.locale)??"en",{minimumFractionDigits:t,maximumFractionDigits:o,roundingMode:"trunc"})},to=(t,o=!0,a)=>{var n,r,s,i;const v=((n=a.number)==null?void 0:n.unsigned)!==!0&&t.startsWith("-")?"-":"",c=((r=a.number)==null?void 0:r.fraction)??0;let k=Ze(0,c,a);const $=k.formatToParts(1000.12),B=((s=$.find(u=>u.type==="group"))==null?void 0:s.value)??" ",M=((i=$.find(u=>u.type==="decimal"))==null?void 0:i.value)??".",F=Je(t,B,M);if(Number.isNaN(parseFloat(F)))return v;const I=F.split(".");if(I[1]!=null&&I[1].length>=1){const u=I[1].length<=c?I[1].length:c;k=Ze(u,c,a)}let W=k.format(parseFloat(F));return o?c>0&&F.endsWith(".")&&!F.slice(0,-1).includes(".")&&(W+=M):W=Je(W,B,M),v+W},ut=t=>JSON.parse(t.replaceAll("'",'"')),oo=(t,o={})=>{const a={...o};t.dataset.maska!=null&&t.dataset.maska!==""&&(a.mask=ao(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=no(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,ao=t=>t.startsWith("[")&&t.endsWith("]")?ut(t):t,no=t=>{if(t.startsWith("{")&&t.endsWith("}"))return ut(t);const o={};return t.split("|").forEach(a=>{const n=a.split(":");o[n[0]]={pattern:mt()?new RegExp(n[1],"u"):new RegExp(n[1]),optional:n[2]==="optional",multiple:n[2]==="multiple",repeated:n[2]==="repeated"}}),o},mt=()=>{try{return new RegExp("\\p{L}","u"),!0}catch{return!1}};class lo{constructor(o={}){Ee(this,"opts",{}),Ee(this,"memo",new Map);const a={...o};if(a.tokens!=null){a.tokens=a.tokensReplace?{...a.tokens}:{...Ge,...a.tokens};for(const n of Object.values(a.tokens))typeof n.pattern=="string"&&(n.pattern=mt()?new RegExp(n.pattern,"u"):new RegExp(n.pattern))}else a.tokens=Ge;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 to(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:i}=this.escapeMask(a),v=[],c=this.opts.tokens!=null?this.opts.tokens:{},k=this.isReversed()?-1:1,$=this.isReversed()?"unshift":"push",B=this.isReversed()?0:s.length-1,M=this.isReversed()?()=>u>-1&&g>-1:()=>u<s.length&&g<o.length,F=E=>!this.isReversed()&&E<=B||this.isReversed()&&E>=B;let I,W=-1,u=this.isReversed()?s.length-1:0,g=this.isReversed()?o.length-1:0,y=!1;for(;M();){const E=s.charAt(u),S=c[E],T=(S==null?void 0:S.transform)!=null?S.transform(o.charAt(g)):o.charAt(g);if(!i.includes(u)&&S!=null?(T.match(S.pattern)!=null?(v[$](T),S.repeated?(W===-1?W=u:u===B&&u!==W&&(u=W-k),B===W&&(u-=k)):S.multiple&&(y=!0,u-=k),u+=k):S.multiple?y&&(u+=k,g-=k,y=!1):T===I?I=void 0:S.optional&&(u+=k,g-=k),g+=k):(n&&!this.isEager()&&v[$](E),T===E&&!this.isEager()?g+=k:I=E,this.isEager()||(u+=k)),this.isEager())for(;F(u)&&(c[s.charAt(u)]==null||i.includes(u));){if(n){if(v[$](s.charAt(u)),o.charAt(g)===s.charAt(u)){u+=k,g+=k;continue}}else s.charAt(u)===o.charAt(g)&&(g+=k);u+=k}}return this.memo.set(r,v.join("")),this.memo.get(r)}}class ro{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 i="inputType"in n&&n.inputType.startsWith("delete"),v=s.isEager(),c=i&&v&&s.unmasked(r.value)===""?"":r.value;this.fixCursor(r,i,()=>this.setValue(r,c))}),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 lo(oo(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 i=o.selectionStart,v=o.value;if(n(),i===null||i===v.length&&!a)return;const c=o.value,k=v.slice(0,i),$=c.slice(0,i),B=(r=this.processInput(o,k))==null?void 0:r.unmasked,M=(s=this.processInput(o,$))==null?void 0:s.unmasked;if(B===void 0||M===void 0)return;let F=i;k!==$&&(F+=a?c.length-v.length:B.length-M.length),o.setSelectionRange(F,F)}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 ze=new WeakMap,so=(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)},Re=(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=i=>{const v=o.modifiers.unmasked?i.unmasked:o.modifiers.completed?i.completed:i.masked;so(o,v)};r.onMaska=r.onMaska==null?s:Array.isArray(r.onMaska)?[...r.onMaska,s]:[r.onMaska,s]}ze.has(n)?(a=ze.get(n))==null||a.update(r):ze.set(n,new ro(n,r))},io={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 ft(t){var n;const o=io[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 pt(t){return t.filter(o=>!o.read_only&&o.name!=="id").map(ft)}const co={boolean:"boolean",date:"date",datetime:"datetime",decimal:"number",float:"number",integer:"number"};function vt(t){return{field:t.type==="fk"?`${t.name}_nome`:t.name,header:t.label,type:co[t.type],sortable:!0}}function gt(t,o=6){return t.filter(a=>!a.read_only&&a.name!=="id").slice(0,o).map(vt)}function Ie(){const t=Ft.useToast();function o(s,i="Sucesso"){t.add({severity:"success",summary:i,detail:s,life:3e3})}function a(s,i="Erro"){t.add({severity:"error",summary:i,detail:s,life:5e3})}function n(s,i="Atenção"){t.add({severity:"warn",summary:i,detail:s,life:4e3})}function r(s,i="Info"){t.add({severity:"info",summary:i,detail:s,life:3e3})}return{success:o,error:a,warn:n,info:r}}function Ye(){const t=At.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 uo(t){return t.replace(/_/g," ").replace(/^\w/,o=>o.toUpperCase())}function mo(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=uo(n);if(Array.isArray(r)){const i=r.filter(v=>typeof v=="string");i.length>0&&a.push(`${s}: ${i.join(" ")}`)}else typeof r=="string"&&a.push(`${s}: ${r}`)}return a.length>0?a.join(`
|
|
2
|
+
`):null}return null}function ke(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 mo(r)||o}function fo(){return{extractApiError:ke}}const po={class:"w-autocompletefk"},vo=["disabled"],go={class:"w-autocompletefk-toolbar"},ho={class:"w-autocompletefk-toolbar-actions"},ko={class:"flex items-center justify-end gap-1"},yo={class:"w-autocompletefk-footer"},We=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,i=Ie(),{confirmDelete:v}=Ye(),c=e.ref(null),k=e.ref([]),$=e.ref(!1);let B=null;async function M(b){try{const w=await s.get(a.endpoint,b);c.value=w.data}catch{c.value=null}}async function F(b){$.value=!0;try{const w={page_size:20,...a.endpointParams};b&&(w.search=b);const U=await s.list(a.endpoint,w);k.value=U.data}catch{k.value=[]}finally{$.value=!1}}function I(b){const w=b.query||"";if(w.length<a.minLength){k.value=[];return}B&&clearTimeout(B),B=setTimeout(()=>F(w),300)}function W(b){c.value=b.value,n("update:modelValue",b.value)}function u(){c.value=null,n("update:modelValue",null)}e.watch(()=>a.modelValue,async b=>{if(b!=null){if(typeof b=="object"&&b!==null&&a.optionLabel in b){c.value=b;return}(!c.value||c.value[a.optionValue]!==b)&&await M(b)}else c.value=null},{immediate:!0});const g=e.ref(!1),y=e.ref([]),E=e.ref(!1),S=e.ref(""),T=e.ref(1),h=e.ref(15),p=e.ref(0),L=e.ref(null),m=e.ref(null),D=e.ref(0);let x=null;const O=e.ref([]),d=e.computed(()=>{var b;return(b=a.crudFields)!=null&&b.length?!0:O.value.length>0}),C=e.computed(()=>a.canCreate??d.value),N=e.computed(()=>a.canEdit??d.value),l=e.computed(()=>a.canDelete??d.value),f=e.computed(()=>N.value||l.value),Y=e.computed(()=>{var b;return(b=a.crudFields)!=null&&b.length?a.crudFields:pt(O.value)}),H=e.computed(()=>{var b,w;return(b=a.crudColumns)!=null&&b.length?a.crudColumns:(w=a.columns)!=null&&w.length?a.columns.map(U=>({field:U.field,header:U.header,sortable:!0})):O.value.length?gt(O.value):[{field:a.optionLabel,header:a.optionLabel,sortable:!0}]});async function j(){var b,w,U;E.value=!0;try{const A={page:T.value,page_size:h.value,...a.endpointParams};S.value&&(A.search=S.value),m.value&&D.value!==0&&(A.ordering=D.value===-1?`-${m.value}`:m.value);const K=await s.list(a.endpoint,A);y.value=K.data,p.value=K.rows,(b=K.extras)!=null&&b.fields&&!((w=a.columns)!=null&&w.length)&&!((U=a.crudFields)!=null&&U.length)&&(O.value=K.extras.fields)}catch{y.value=[],p.value=0}finally{E.value=!1}}function z(){a.disabled||(S.value="",T.value=1,m.value=null,D.value=0,L.value=null,g.value=!0,j())}function G(b){T.value=b.page+1,h.value=b.rows,j()}function X(b){m.value=b.sortField??null,D.value=b.sortOrder??0,T.value=1,j()}function ye(){L.value&&(c.value=L.value,n("update:modelValue",L.value),g.value=!1)}function be(b){c.value=b.data,n("update:modelValue",b.data),g.value=!1}e.watch(S,()=>{x&&clearTimeout(x),x=setTimeout(()=>{T.value=1,j()},300)});const ee=e.ref(!1),Z=e.ref(!1),te=e.ref(null),Q=e.reactive({}),oe=e.computed(()=>te.value!==null),ue=e.computed(()=>oe.value?"Editar Registro":"Novo Registro");function ae(){const b={};for(const w of Y.value)b[w.field]=w.defaultValue!==void 0?typeof w.defaultValue=="function"?w.defaultValue():w.defaultValue:null;return b}function me(){const b=ae();for(const w of Object.keys(Q))delete Q[w];for(const[w,U]of Object.entries(b))Q[w]=U}function re(){te.value=null,me(),ee.value=!0}function se(b){te.value=b;for(const w of Y.value)Q[w.field]=b[w.field]!==void 0?b[w.field]:null;ee.value=!0}function fe(b,w){Q[b]=w}async function ie(){Z.value=!0;try{const b={...Q};for(const U of Y.value){const A=b[U.field];if(U.type==="fk"&&A!==null&&typeof A=="object"){const K=U.optionValue||"id";b[U.field]=A[K]??A}}let w;if(oe.value&&te.value){const U=te.value[a.optionValue];w=await s.update(a.endpoint,U,b);const A=y.value.findIndex(K=>K[a.optionValue]===U);A!==-1&&(y.value[A]=w.data),i.success("Registro atualizado com sucesso")}else w=await s.create(a.endpoint,b),y.value.unshift(w.data),p.value++,i.success("Registro criado com sucesso");ee.value=!1,te.value=null,L.value=w.data}catch(b){i.error(ke(b,"Erro ao salvar registro"))}finally{Z.value=!1}}function pe(b){v(async()=>{try{const w=b[a.optionValue];await s.delete(a.endpoint,w);const U=y.value.findIndex(A=>A[a.optionValue]===w);U!==-1&&(y.value.splice(U,1),p.value--),c.value&&c.value[a.optionValue]===w&&(c.value=null,n("update:modelValue",null)),L.value&&L.value[a.optionValue]===w&&(L.value=null),i.success("Registro excluído com sucesso")}catch(w){i.error(ke(w,"Erro ao excluir registro"))}})}return(b,w)=>{const U=e.resolveDirective("tooltip");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",po,[e.createVNode(e.unref(ot),{"model-value":c.value,suggestions:k.value,"option-label":t.optionLabel,placeholder:t.placeholder,disabled:t.disabled,"force-selection":t.forceSelection,loading:$.value,fluid:"",onComplete:I,onItemSelect:W,onClear:u},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:z},[...w[6]||(w[6]=[e.createElementVNode("i",{class:"pi pi-search"},null,-1)])],8,vo)),[[U,"Pesquisar",void 0,{top:!0}]])]),e.createVNode(e.unref(tt),{visible:g.value,"onUpdate:visible":w[4]||(w[4]=A=>g.value=A),header:t.dialogHeader||"Pesquisar",style:{width:"80vw"},modal:"",draggable:!1,class:"w-autocompletefk-dialog"},{footer:e.withCtx(()=>[e.createElementVNode("div",yo,[e.createVNode(e.unref(_),{label:"Cancelar",severity:"secondary",text:"",onClick:w[3]||(w[3]=A=>g.value=!1)}),e.createVNode(e.unref(_),{label:"Selecionar",icon:"pi pi-check",disabled:!L.value,onClick:ye},null,8,["disabled"])])]),default:e.withCtx(()=>[e.createElementVNode("div",go,[e.createVNode(e.unref(Ce),{class:"w-autocompletefk-toolbar-search"},{default:e.withCtx(()=>[e.createVNode(e.unref($e),{class:"pi pi-search"}),e.createVNode(e.unref(J),{modelValue:S.value,"onUpdate:modelValue":w[0]||(w[0]=A=>S.value=A),placeholder:"Pesquisar...",class:"w-full"},null,8,["modelValue"])]),_:1}),e.createElementVNode("div",ho,[C.value?(e.openBlock(),e.createBlock(e.unref(_),{key:0,label:"Novo",icon:"pi pi-plus",size:"small",onClick:re})):e.createCommentVNode("",!0)])]),e.createVNode(e.unref(Qe),{selection:L.value,"onUpdate:selection":w[1]||(w[1]=A=>L.value=A),value:y.value,loading:E.value,paginator:"",lazy:"","striped-rows":"","removable-sort":"",size:"small",rows:h.value,"total-records":p.value,"sort-field":m.value??void 0,"sort-order":D.value,"selection-mode":"single","data-key":t.optionValue,onPage:G,onSort:w[2]||(w[2]=A=>X({sortField:A.sortField,sortOrder:A.sortOrder})),onRowDblclick:be},{empty:e.withCtx(()=>[...w[7]||(w[7]=[e.createElementVNode("div",{class:"w-autocompletefk-empty"},"Nenhum registro encontrado",-1)])]),default:e.withCtx(()=>[e.createVNode(e.unref(he),{"selection-mode":"single","header-style":"width: 3rem"}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(H.value,A=>(e.openBlock(),e.createBlock(e.unref(he),{key:A.field,field:A.field,header:A.header,sortable:A.sortable??!0,style:e.normalizeStyle(A.style)},{body:e.withCtx(({data:K})=>[A.type?(e.openBlock(),e.createBlock(Ne,{key:0,column:A,value:K[A.field],"row-data":K},null,8,["column","value","row-data"])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(K[A.field]),1)],64))]),_:2},1032,["field","header","sortable","style"]))),128)),f.value?(e.openBlock(),e.createBlock(e.unref(he),{key:0,header:"",style:{width:"6rem"}},{body:e.withCtx(({data:A})=>[e.createElementVNode("div",ko,[N.value?e.withDirectives((e.openBlock(),e.createBlock(e.unref(_),{key:0,icon:"pi pi-pencil",text:"",rounded:"",size:"small",onClick:K=>se(A)},null,8,["onClick"])),[[U,"Editar",void 0,{top:!0}]]):e.createCommentVNode("",!0),l.value?e.withDirectives((e.openBlock(),e.createBlock(e.unref(_),{key:1,icon:"pi pi-trash",text:"",rounded:"",size:"small",severity:"danger",onClick:K=>pe(A)},null,8,["onClick"])),[[U,"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"]),d.value?(e.openBlock(),e.createBlock(Le,{key:0,visible:ee.value,title:ue.value,fields:Y.value,"form-data":Q,"is-editing":oe.value,saving:Z.value,width:t.dialogWidth,"onUpdate:visible":w[5]||(w[5]=A=>{ee.value=A,A||(te.value=null)}),"onUpdate:field":fe,onSave:ie},null,8,["visible","title","fields","form-data","is-editing","saving","width"])):e.createCommentVNode("",!0)],64)}}}),Oe=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),i=e.computed(()=>{const c=a.modelValue;return c==null||Number.isNaN(c)?"":new Intl.NumberFormat(a.locale,{minimumFractionDigits:a.decimals,maximumFractionDigits:a.decimals}).format(c)});function v(c){const k=c.target.value.replace(/\D/g,"");if(!k){n("update:modelValue",null);return}const $=Number(k)/Math.pow(10,a.decimals);n("update:modelValue",$)}return(c,k)=>s.value?(e.openBlock(),e.createBlock(e.unref(Mt),{key:0,class:"w-money-input"},{default:e.withCtx(()=>[r.value?(e.openBlock(),e.createBlock(e.unref(_e),{key:0},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(r.value),1)]),_:1})):e.createCommentVNode("",!0),e.createVNode(e.unref(J),{"model-value":i.value,inputmode:"numeric",class:"w-money-input__field",placeholder:t.placeholder,disabled:t.disabled,invalid:t.invalid,onInput:v},null,8,["model-value","placeholder","disabled","invalid"]),t.suffix?(e.openBlock(),e.createBlock(e.unref(_e),{key:1},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.suffix),1)]),_:1})):e.createCommentVNode("",!0)]),_:1})):(e.openBlock(),e.createBlock(e.unref(J),{key:1,"model-value":i.value,inputmode:"numeric",fluid:"",class:"w-money-input__field",placeholder:t.placeholder,disabled:t.disabled,invalid:t.invalid,onInput:v},null,8,["model-value","placeholder","disabled","invalid"]))}}),bo={class:"w-transfer__pane"},wo={class:"w-transfer__head"},Bo={class:"w-transfer__count"},Vo={class:"w-transfer__list"},Eo=["onClick"],Co={key:0,class:"w-transfer__empty"},$o={class:"w-transfer__controls"},No={class:"w-transfer__pane"},Do={class:"w-transfer__head"},So={class:"w-transfer__count"},xo={class:"w-transfer__list"},Po=["onClick"],Fo={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:o}){const a=t,n=o,r=e.ref(""),s=e.ref(""),i=e.computed(()=>new Set(a.selected)),v=e.computed(()=>a.searchFields??[a.optionLabel]);function c(g){return g[a.trackBy]}function k(g){return String(g[a.optionLabel]??"")}function $(g,y){if(!y)return!0;const E=y.toLowerCase();return v.value.some(S=>String(g[S]??"").toLowerCase().includes(E))}const B=e.computed(()=>a.source.filter(g=>!i.value.has(c(g))&&$(g,r.value))),M=e.computed(()=>a.source.filter(g=>i.value.has(c(g))&&$(g,s.value)));function F(g){a.disabled||n("update:selected",[...a.selected,c(g)])}function I(g){if(a.disabled)return;const y=c(g);n("update:selected",a.selected.filter(E=>E!==y))}function W(){a.disabled||n("update:selected",a.source.map(c))}function u(){a.disabled||n("update:selected",[])}return(g,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["w-transfer",{"w-transfer--disabled":t.disabled}])},[e.createElementVNode("div",bo,[e.createElementVNode("div",wo,[y[2]||(y[2]=e.createElementVNode("span",{class:"w-transfer__title"},"Disponíveis",-1)),e.createElementVNode("span",Bo,e.toDisplayString(B.value.length),1)]),e.createVNode(e.unref(Ce),{class:"w-transfer__search"},{default:e.withCtx(()=>[e.createVNode(e.unref($e),{class:"pi pi-search"}),e.createVNode(e.unref(J),{modelValue:r.value,"onUpdate:modelValue":y[0]||(y[0]=E=>r.value=E),placeholder:"Buscar...",fluid:""},null,8,["modelValue"])]),_:1}),e.createElementVNode("ul",Vo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(B.value,E=>(e.openBlock(),e.createElementBlock("li",{key:`a-${c(E)}`,class:"w-transfer__item",onClick:S=>F(E)},[e.createElementVNode("span",null,e.toDisplayString(k(E)),1),y[3]||(y[3]=e.createElementVNode("i",{class:"pi pi-angle-right"},null,-1))],8,Eo))),128)),B.value.length?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("li",Co,"Nenhum item"))])]),e.createElementVNode("div",$o,[e.createVNode(e.unref(_),{type:"button",icon:"pi pi-angle-double-right",text:"",rounded:"",disabled:t.disabled||!B.value.length,onClick:W},null,8,["disabled"]),e.createVNode(e.unref(_),{type:"button",icon:"pi pi-angle-double-left",text:"",rounded:"",disabled:t.disabled||!t.selected.length,onClick:u},null,8,["disabled"])]),e.createElementVNode("div",No,[e.createElementVNode("div",Do,[y[4]||(y[4]=e.createElementVNode("span",{class:"w-transfer__title"},"Selecionados",-1)),e.createElementVNode("span",So,e.toDisplayString(M.value.length),1)]),e.createVNode(e.unref(Ce),{class:"w-transfer__search"},{default:e.withCtx(()=>[e.createVNode(e.unref($e),{class:"pi pi-search"}),e.createVNode(e.unref(J),{modelValue:s.value,"onUpdate:modelValue":y[1]||(y[1]=E=>s.value=E),placeholder:"Buscar...",fluid:""},null,8,["modelValue"])]),_:1}),e.createElementVNode("ul",xo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(M.value,E=>(e.openBlock(),e.createElementBlock("li",{key:`s-${c(E)}`,class:"w-transfer__item",onClick:S=>I(E)},[y[5]||(y[5]=e.createElementVNode("i",{class:"pi pi-angle-left"},null,-1)),e.createElementVNode("span",null,e.toDisplayString(k(E)),1)],8,Po))),128)),M.value.length?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("li",Fo,"Nenhum item"))])])],2))}});async function Ao(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 Mo={class:"w-crud-form"},To={key:0,class:"w-crud-form-group-header"},Lo={class:"w-crud-form-group-title"},zo={key:0,class:"w-crud-form-group-desc"},Ro={class:"w-crud-form-fields"},Io={key:0,class:"w-crud-form-switch"},Yo={class:"w-crud-form-switch-label"},Wo={key:1,class:"w-crud-form-col-full"},Oo={class:"w-crud-form-label"},jo={key:0,class:"w-crud-form-required"},Uo={class:"w-crud-form-color-row"},qo={key:2,class:"w-crud-form-col-full"},_o={class:"w-crud-form-label"},Ho=["accept","disabled","onChange"],Ko={key:3,class:"w-crud-form-col-full"},Go={class:"w-crud-form-label"},Jo={key:0,class:"w-crud-form-required"},Zo={class:"w-crud-form-label"},Xo={key:0,class:"w-crud-form-required"},Qo={key:1,class:"pi pi-spin pi-spinner w-crud-form-cep-spinner"},ea={key:16,class:"w-crud-form-cep-error"},ta={key:17,class:"w-crud-form-error"},ht=e.defineComponent({__name:"WFormRenderer",props:{fields:{},formData:{},isEditing:{type:Boolean},disabled:{type:Boolean,default:!1}},emits:["update:field"],setup(t,{expose:o,emit:a}){const n=t,r=a,s=e.reactive({}),i=e.reactive({}),v=e.reactive({}),c=e.reactive({});function k(d,C){const N=C.target.value,l=N.replace(/\D/g,"");r("update:field",d.field,N),v[d.field]=null,c[d.field]&&(clearTimeout(c[d.field]),c[d.field]=null),l.length===8&&(c[d.field]=setTimeout(async()=>{i[d.field]=!0,v[d.field]=null;try{const f=await Ao(l);if(!f)v[d.field]="CEP não encontrado. Preencha os campos manualmente.";else{const Y=d.cepFields||{},H=Object.keys(Y);for(const j of H){const z=Y[j];if(!z)continue;const G=n.formData[z];(G==null||G==="")&&r("update:field",z,f[j]??"")}}}finally{i[d.field]=!1}},400))}const $=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 B(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 F=e.computed(()=>{const d=n.isEditing?"edit":"create",C=n.fields.find(l=>l.autofocus===!0||l.autofocus===d);if(C)return C.field;const N=$.value.find(l=>!(l.type==="switch"||l.type==="fk"||l.type==="select"||l.type==="image"||l.disabled===!0||l.disabledOnEdit&&n.isEditing));return(N==null?void 0:N.field)??null});function I(d){return d.field===F.value}function W(d){if(d)return d.replace(/9/g,"#").replace(/a/g,"S").replace(/\*/g,"X")}function u(d){if(!d)return"";const C=String(d).replace(/\D/g,"").slice(0,14);return C.length<=11?C.replace(/(\d{3})(\d)/,"$1.$2").replace(/(\d{3})(\d)/,"$1.$2").replace(/(\d{3})(\d{1,2})$/,"$1-$2"):C.replace(/(\d{2})(\d)/,"$1.$2").replace(/(\d{3})(\d)/,"$1.$2").replace(/(\d{3})(\d)/,"$1/$2").replace(/(\d{4})(\d{1,2})$/,"$1-$2")}function g(d,C){const N=C.target.value.replace(/\D/g,"").slice(0,14);r("update:field",d,N)}const y=e.reactive({});function E(d){const C=n.formData[d.field];if(C==null)return null;const N=d.optionValue||"value";return(M(d.options)||[]).find(f=>f[N]===C)??null}function S(d){return y[d.field]||[]}function T(d,C){const N=(C.query||"").toLowerCase(),l=M(d.options)||[],f=d.optionLabel||"label";y[d.field]=l.filter(Y=>String(Y[f]||"").toLowerCase().includes(N))}function h(d,C){const N=d.optionValue||"value";r("update:field",d.field,C.value[N])}function p(d){const C=n.formData[d.field];return C?String(C).replace("#",""):"FFFFFF"}function L(d,C){r("update:field",d.field,`#${C}`)}function m(d){if(typeof d.validate=="function"){const C=d.validate(n.formData[d.field]);s[d.field]=C||null}}function D(){const d=[];for(const C of n.fields)if(typeof C.validate=="function"){const N=C.validate(n.formData[C.field]);s[C.field]=N||null,N&&d.push(N)}return d}function x(){Object.keys(s).forEach(d=>delete s[d])}const O=e.computed(()=>{var l,f,Y,H;const d=new Map,C=[],N=new Map;for(const j of $.value){const z=((l=j.fieldGroup)==null?void 0:l.id)??"__default__";d.has(z)||(d.set(z,{id:z,title:(f=j.fieldGroup)==null?void 0:f.title,description:(Y=j.fieldGroup)==null?void 0:Y.description,fields:[]}),C.push(z),((H=j.fieldGroup)==null?void 0:H.order)!=null&&N.set(z,j.fieldGroup.order)),d.get(z).fields.push(j)}return C.slice().sort((j,z)=>{const G=N.get(j),X=N.get(z);return G!=null&&X!=null?G-X:G!=null?-1:X!=null?1:C.indexOf(j)-C.indexOf(z)}).map(j=>d.get(j))});return o({validateAll:D,clearErrors:x}),(d,C)=>(e.openBlock(),e.createElementBlock("div",Mo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(O.value,N=>(e.openBlock(),e.createElementBlock("div",{key:N.id,class:"w-crud-form-group"},[N.title?(e.openBlock(),e.createElementBlock("div",To,[e.createElementVNode("h3",Lo,e.toDisplayString(N.title),1),N.description?(e.openBlock(),e.createElementBlock("p",zo,e.toDisplayString(N.description),1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",Ro,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(N.fields,l=>e.renderSlot(d.$slots,`field-${l.field}`,{key:l.field,field:l,formData:t.formData,isEditing:t.isEditing,setFormField:(f,Y)=>r("update:field",f,Y)},()=>[l.type==="switch"?(e.openBlock(),e.createElementBlock("div",Io,[e.createVNode(e.unref(St),{"model-value":t.formData[l.field],disabled:B(l),"onUpdate:modelValue":f=>r("update:field",l.field,f)},null,8,["model-value","disabled","onUpdate:modelValue"]),e.createElementVNode("label",Yo,e.toDisplayString(l.switchLabel||l.label),1)])):l.type==="color"?(e.openBlock(),e.createElementBlock("div",Wo,[e.createElementVNode("label",Oo,[e.createTextVNode(e.toDisplayString(l.label)+" ",1),l.required?(e.openBlock(),e.createElementBlock("span",jo,"*")):e.createCommentVNode("",!0)]),e.createElementVNode("div",Uo,[e.createVNode(e.unref(xt),{"model-value":p(l),disabled:B(l),"onUpdate:modelValue":f=>L(l,f)},null,8,["model-value","disabled","onUpdate:modelValue"]),e.createVNode(e.unref(J),{"model-value":t.formData[l.field],class:"w-28",maxlength:"7",placeholder:"#000000",disabled:B(l),"onUpdate:modelValue":f=>r("update:field",l.field,f)},null,8,["model-value","disabled","onUpdate:modelValue"])])])):l.type==="image"?(e.openBlock(),e.createElementBlock("div",qo,[e.createElementVNode("label",_o,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:B(l),onChange:f=>{var H;const Y=((H=f.target.files)==null?void 0:H[0])??null;r("update:field",l.field,Y)}},null,40,Ho)])])):l.type==="transfer"?(e.openBlock(),e.createElementBlock("div",Ko,[e.createElementVNode("label",Go,[e.createTextVNode(e.toDisplayString(l.label)+" ",1),l.required?(e.openBlock(),e.createElementBlock("span",Jo,"*")):e.createCommentVNode("",!0)]),e.createVNode(je,{source:M(l.options)||[],selected:t.formData[l.field]||[],"track-by":l.optionValue||"id","option-label":l.optionLabel||"nome","search-fields":l.searchFields,disabled:B(l),"onUpdate:selected":f=>r("update:field",l.field,f)},null,8,["source","selected","track-by","option-label","search-fields","disabled","onUpdate:selected"])])):(e.openBlock(),e.createElementBlock("div",{key:4,class:e.normalizeClass(l.colSpan===.5?"w-crud-form-col-half":"w-crud-form-col-full")},[e.createElementVNode("label",Zo,[e.createTextVNode(e.toDisplayString(l.label)+" ",1),l.required?(e.openBlock(),e.createElementBlock("span",Xo,"*")):e.createCommentVNode("",!0),i[l.field]?(e.openBlock(),e.createElementBlock("i",Qo)):e.createCommentVNode("",!0)]),(!l.type||l.type==="text")&&l.mask?e.withDirectives((e.openBlock(),e.createBlock(e.unref(J),{key:0,"model-value":t.formData[l.field],fluid:"",autofocus:I(l)||void 0,placeholder:l.placeholder,disabled:B(l),"onUpdate:modelValue":f=>r("update:field",l.field,f)},null,8,["model-value","autofocus","placeholder","disabled","onUpdate:modelValue"])),[[e.unref(Re),{mask:W(l.mask)}]]):!l.type||l.type==="text"?(e.openBlock(),e.createBlock(e.unref(J),{key:1,"model-value":t.formData[l.field],fluid:"",autofocus:I(l)||void 0,placeholder:l.placeholder,disabled:B(l),"onUpdate:modelValue":f=>r("update:field",l.field,f)},null,8,["model-value","autofocus","placeholder","disabled","onUpdate:modelValue"])):l.type==="email"?(e.openBlock(),e.createBlock(e.unref(J),{key:2,"model-value":t.formData[l.field],type:"email",fluid:"",autofocus:I(l)||void 0,placeholder:l.placeholder,disabled:B(l),"onUpdate:modelValue":f=>r("update:field",l.field,f)},null,8,["model-value","autofocus","placeholder","disabled","onUpdate:modelValue"])):l.type==="password"?(e.openBlock(),e.createBlock(e.unref(Pt),{key:3,"model-value":t.formData[l.field],fluid:"","toggle-mask":"",feedback:l.feedback!==!1,placeholder:l.placeholder,disabled:B(l),"onUpdate:modelValue":f=>r("update:field",l.field,f)},null,8,["model-value","feedback","placeholder","disabled","onUpdate:modelValue"])):l.type==="number"?(e.openBlock(),e.createBlock(e.unref(Ue),{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:B(l),"onUpdate:modelValue":f=>r("update:field",l.field,f)},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(Oe,{key:5,"model-value":t.formData[l.field],decimals:l.decimals??2,currency:"",prefix:l.prefix,suffix:l.suffix,placeholder:l.placeholder,disabled:B(l),"onUpdate:modelValue":f=>r("update:field",l.field,f)},null,8,["model-value","decimals","prefix","suffix","placeholder","disabled","onUpdate:modelValue"])):l.type==="currency"?(e.openBlock(),e.createBlock(e.unref(Ue),{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:B(l),"onUpdate:modelValue":f=>r("update:field",l.field,f)},null,8,["model-value","min","max","placeholder","disabled","onUpdate:modelValue"])):l.type==="select"?(e.openBlock(),e.createBlock(e.unref(Dt),{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:B(l),"onUpdate:modelValue":f=>r("update:field",l.field,f)},null,8,["model-value","options","option-label","option-value","show-clear","placeholder","disabled","onUpdate:modelValue"])):l.type==="autocomplete"?(e.openBlock(),e.createBlock(e.unref(ot),{key:8,"model-value":E(l),fluid:"",suggestions:S(l),"option-label":l.optionLabel||"label",placeholder:l.placeholder,disabled:B(l),onComplete:f=>T(l,f),onItemSelect:f=>h(l,f),onClear:f=>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(We,{key:9,"model-value":t.formData[l.field],endpoint:l.endpoint,"endpoint-params":l.endpointParams,"option-label":l.optionLabel||"nome",placeholder:l.placeholder,disabled:B(l),"show-clear":l.showClear!==!1,"dialog-header":l.label,"crud-fields":l.crudFields,"crud-columns":l.crudColumns,"onUpdate:modelValue":f=>r("update:field",l.field,f)},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(qe),{key:10,"model-value":t.formData[l.field],fluid:"","date-format":l.dateFormat||"dd/mm/yy",placeholder:l.placeholder,disabled:B(l),"onUpdate:modelValue":f=>r("update:field",l.field,f)},null,8,["model-value","date-format","placeholder","disabled","onUpdate:modelValue"])):l.type==="datetime"?(e.openBlock(),e.createBlock(e.unref(qe),{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:B(l),"onUpdate:modelValue":f=>r("update:field",l.field,f)},null,8,["model-value","hour-format","date-format","placeholder","disabled","onUpdate:modelValue"])):l.type==="cpf_cnpj"?(e.openBlock(),e.createBlock(e.unref(J),{key:12,"model-value":u(t.formData[l.field]),fluid:"",maxlength:"18",placeholder:l.placeholder||"000.000.000-00",disabled:B(l),invalid:!!s[l.field],onInput:f=>g(l.field,f),onBlur:f=>m(l)},null,8,["model-value","placeholder","disabled","invalid","onInput","onBlur"])):l.type==="mask"?e.withDirectives((e.openBlock(),e.createBlock(e.unref(J),{key:13,"model-value":t.formData[l.field],fluid:"",placeholder:l.placeholder,disabled:B(l),invalid:!!s[l.field],"onUpdate:modelValue":f=>r("update:field",l.field,f),onBlur:f=>m(l)},null,8,["model-value","placeholder","disabled","invalid","onUpdate:modelValue","onBlur"])),[[e.unref(Re),{mask:W(l.mask)}]]):l.type==="cep"?e.withDirectives((e.openBlock(),e.createBlock(e.unref(J),{key:14,"model-value":t.formData[l.field],fluid:"",placeholder:l.placeholder||"00000-000",disabled:B(l),invalid:!!v[l.field],onInput:f=>k(l,f)},null,8,["model-value","placeholder","disabled","invalid","onInput"])),[[e.unref(Re),{mask:"#####-###"}]]):l.type==="textarea"?(e.openBlock(),e.createBlock(e.unref(Nt),{key:15,"model-value":t.formData[l.field],fluid:"",autofocus:I(l)||void 0,rows:l.rows||3,placeholder:l.placeholder,disabled:B(l),"onUpdate:modelValue":f=>r("update:field",l.field,f)},null,8,["model-value","autofocus","rows","placeholder","disabled","onUpdate:modelValue"])):e.createCommentVNode("",!0),v[l.field]?(e.openBlock(),e.createElementBlock("small",ea,e.toDisplayString(v[l.field]),1)):s[l.field]?(e.openBlock(),e.createElementBlock("small",ta,e.toDisplayString(s[l.field]),1)):e.createCommentVNode("",!0)],2))])),128))])]))),128))]))}}),oa={class:"w-crud-form-footer"},Le=e.defineComponent({__name:"WCrudFormDialog",props:{visible:{type:Boolean},title:{},fields:{},formData:{},isEditing:{type:Boolean},saving:{type:Boolean},disabled:{type:Boolean,default:!1},width:{default:"480px"}},emits:["update:visible","update:field","save"],setup(t,{emit:o}){const a=t,n=o,r=e.ref(null);function s(){r.value?r.value.validateAll().length===0&&n("save"):n("save")}return e.watch(()=>a.visible,i=>{i&&r.value&&r.value.clearErrors()}),(i,v)=>(e.openBlock(),e.createBlock(e.unref(tt),{visible:t.visible,header:t.title,style:e.normalizeStyle({width:t.width}),modal:"",draggable:!1,class:"w-crud-form-dialog","onUpdate:visible":v[2]||(v[2]=c=>n("update:visible",c))},{default:e.withCtx(()=>[e.createElementVNode("form",{class:"w-crud-form",onSubmit:e.withModifiers(s,["prevent"])},[e.createVNode(ht,{ref_key:"rendererRef",ref:r,fields:t.fields,"form-data":t.formData,"is-editing":t.isEditing,disabled:t.disabled,"onUpdate:field":v[0]||(v[0]=(c,k)=>n("update:field",c,k))},e.createSlots({_:2},[e.renderList(t.fields,c=>({name:`field-${c.field}`,fn:e.withCtx(k=>[e.renderSlot(i.$slots,`field-${c.field}`,e.normalizeProps(e.guardReactiveProps(k)))])})),e.renderList(t.fields.filter(c=>c.type==="image"),c=>({name:`image-${c.field}`,fn:e.withCtx(k=>[e.renderSlot(i.$slots,`image-${c.field}`,e.normalizeProps(e.guardReactiveProps(k)))])}))]),1032,["fields","form-data","is-editing","disabled"]),e.createElementVNode("div",oa,[e.renderSlot(i.$slots,"footer",{saving:t.saving,disabled:t.disabled},()=>[e.createVNode(e.unref(_),{type:"button",label:t.disabled?"Fechar":"Cancelar",severity:"secondary",text:"",disabled:t.saving,onClick:v[1]||(v[1]=c=>n("update:visible",!1))},null,8,["label","disabled"]),t.disabled?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(_),{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"]))}}),aa={class:"w-crud"},na={key:0,class:"w-crud-header"},la={class:"w-crud-header-content"},ra={class:"w-crud-title"},sa={key:0,class:"w-crud-subtitle"},ia={class:"w-crud-header-actions"},ca={key:0,class:"w-crud-kpis"},da={class:"w-crud-kpi-content"},ua={class:"w-crud-kpi-label"},ma={class:"w-crud-kpi-value"},fa={key:1,class:"w-crud-table"},pa={class:"w-crud-toolbar"},va={class:"w-crud-toolbar-start"},ga={class:"w-crud-toolbar-end"},ha={key:0,class:"w-crud-view-toggle"},ka={class:"w-crud-actions"},ya={key:2,class:"w-crud-cards-wrap"},ba={class:"w-crud-toolbar w-crud-toolbar--standalone"},wa={class:"w-crud-toolbar-start"},Ba={class:"w-crud-toolbar-end"},Va={key:0,class:"w-crud-view-toggle"},Ea={key:0,class:"w-crud-cards-loading"},Ca={key:2,class:"w-crud-cards"},$a=["onDblclick"],Na={class:"w-crud-card-body"},Da={key:0,class:"w-crud-card-label"},Sa={class:"w-crud-card-value"},xa={key:0,class:"w-crud-card-actions"},kt=e.defineComponent({__name:"WCrudView",props:{crud:{},title:{},subtitle:{},showSearch:{type:Boolean,default:!0},showHeader:{type:Boolean,default:!0},dialogWidth:{default:"480px"},autoInit:{type:Boolean,default:!0},showKpi:{type:Boolean,default:!1},kpiIcon:{default:"pi pi-list"},kpiLabel:{default:"Total de Registros"},extraKpis:{default:()=>[]},expandable:{type:Boolean,default:!1},viewToggle:{type:Boolean,default:!1},defaultView:{default:"table"},cardFields:{default:4}},emits:["row-expand","row-collapse"],setup(t,{emit:o}){const a=t,n=o,r=e.useSlots(),{formatNumber:s}=Te(),i=e.ref({}),v=e.ref(a.defaultView);function c(h){return v.value===h}function k(h){v.value=h}const $=e.computed(()=>(a.crud.pagination.page-1)*a.crud.pagination.pageSize),B=e.computed(()=>a.crud.config.columns.filter(h=>h.visible!==!1).map(h=>h.type==="number"&&!h.align?{...h,align:"right"}:h.type==="currency"&&!h.align?{...h,align:"right"}:h));function M(h){if(h.align==="right")return"text-right";if(h.align==="center")return"text-center"}const F=e.computed(()=>B.value.slice(0,a.cardFields)),I=e.computed(()=>{const h=[];return a.crud.config.canEdit!==!1&&h.push({action:"edit",icon:"pi pi-pencil",tooltip:"Editar"}),a.crud.config.canDelete!==!1&&h.push({action:"delete",icon:"pi pi-trash",tooltip:"Excluir",severity:"danger"}),h}),W=e.computed(()=>a.crud.config.rowActions??I.value),u=e.computed(()=>W.value.length>0||!!r["row-actions"]);function g(h,p){h.action==="edit"?a.crud.openEditDialog(p):h.action==="view"?a.crud.openViewDialog(p):h.action==="delete"?a.crud.confirmDelete(p):h.handler&&h.handler(p)}function y(h,p){return h.visible?h.visible(p):!0}function E(h,p){return h.disabled?h.disabled(p):!1}const S=e.computed(()=>{const h=[];return a.showKpi&&h.push({icon:a.kpiIcon,label:a.kpiLabel,value:s(a.crud.pagination.rows,0)}),h.push(...a.extraKpis),h});e.computed(()=>a.crud.config.labels??{});const T=e.computed(()=>a.crud.config.canCreate!==!1);return e.onMounted(()=>{a.autoInit&&a.crud.init()}),(h,p)=>{const L=e.resolveDirective("tooltip");return e.openBlock(),e.createElementBlock("div",aa,[t.showHeader?(e.openBlock(),e.createElementBlock("div",na,[e.createElementVNode("div",la,[e.createElementVNode("h1",ra,e.toDisplayString(t.title),1),t.subtitle?(e.openBlock(),e.createElementBlock("p",sa,e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",ia,[e.renderSlot(h.$slots,"header-actions"),T.value?(e.openBlock(),e.createBlock(e.unref(_),{key:0,label:"Novo",icon:"pi pi-plus",onClick:p[0]||(p[0]=m=>t.crud.openCreateDialog())})):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0),e.renderSlot(h.$slots,"before-table",{},()=>[S.value.length?(e.openBlock(),e.createElementBlock("div",ca,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(S.value,(m,D)=>(e.openBlock(),e.createElementBlock("div",{key:D,class:"w-crud-kpi"},[e.createElementVNode("div",{class:e.normalizeClass(["w-crud-kpi-icon",m.severity?`w-crud-kpi-icon--${m.severity}`:""])},[e.createElementVNode("i",{class:e.normalizeClass([m.icon]),style:e.normalizeStyle(m.color?`color: ${m.color}`:"")},null,6)],2),e.createElementVNode("div",da,[e.createElementVNode("div",ua,e.toDisplayString(m.label),1),e.createElementVNode("div",ma,e.toDisplayString(m.value),1)])]))),128))])):e.createCommentVNode("",!0)]),v.value==="table"?(e.openBlock(),e.createElementBlock("div",fa,[e.createVNode(e.unref(Qe),{value:t.crud.items.value,loading:t.crud.loading.value,"expanded-rows":i.value,"onUpdate:expandedRows":p[4]||(p[4]=m=>i.value=m),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",onPage:t.crud.onPage,onSort:p[5]||(p[5]=m=>t.crud.onSort({sortField:m.sortField,sortOrder:m.sortOrder})),onRowExpand:p[6]||(p[6]=m=>n("row-expand",m.data)),onRowCollapse:p[7]||(p[7]=m=>n("row-collapse",m.data))},e.createSlots({header:e.withCtx(()=>[e.createElementVNode("div",pa,[e.createElementVNode("div",va,[t.showSearch?(e.openBlock(),e.createBlock(e.unref(Ce),{key:0},{default:e.withCtx(()=>[e.createVNode(e.unref($e),{class:"pi pi-search"}),e.createVNode(e.unref(J),{"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(h.$slots,"toolbar-start"),e.renderSlot(h.$slots,"toolbar-filters")]),e.createElementVNode("div",ga,[e.renderSlot(h.$slots,"toolbar-actions"),t.viewToggle?(e.openBlock(),e.createElementBlock("div",ha,[e.createVNode(e.unref(_),{icon:"pi pi-table",size:"small",text:!c("table"),outlined:c("table"),onClick:p[1]||(p[1]=m=>k("table"))},null,8,["text","outlined"]),e.createVNode(e.unref(_),{icon:"pi pi-th-large",size:"small",text:!c("cards"),outlined:c("cards"),onClick:p[2]||(p[2]=m=>k("cards"))},null,8,["text","outlined"])])):e.createCommentVNode("",!0),!t.showHeader&&T.value?(e.openBlock(),e.createBlock(e.unref(_),{key:1,label:"Novo",icon:"pi pi-plus",onClick:p[3]||(p[3]=m=>t.crud.openCreateDialog())})):e.createCommentVNode("",!0)])])]),empty:e.withCtx(()=>[e.renderSlot(h.$slots,"empty",{},()=>[p[14]||(p[14]=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(he),{key:0,expander:"",style:{width:"3rem"}})):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(B.value,m=>(e.openBlock(),e.createBlock(e.unref(he),{key:m.field,field:m.field,header:m.header,sortable:m.sortable,style:e.normalizeStyle(m.style),"header-class":M(m),"body-class":M(m)},{body:e.withCtx(({data:D})=>[e.renderSlot(h.$slots,`column-${m.field}`,{data:D,value:D[m.field]},()=>[e.createVNode(Ne,{column:m,value:D[m.field],"row-data":D},null,8,["column","value","row-data"])])]),_:2},1032,["field","header","sortable","style","header-class","body-class"]))),128)),u.value?(e.openBlock(),e.createBlock(e.unref(he),{key:1,"header-class":"w-crud-actions-header",style:e.normalizeStyle({width:`${(W.value.length+(e.unref(r)["row-actions"]?1:0))*2.5+1}rem`})},{body:e.withCtx(({data:m})=>[e.createElementVNode("div",ka,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(W.value,D=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:D.action},[y(D,m)?e.withDirectives((e.openBlock(),e.createBlock(e.unref(_),{key:0,icon:D.icon,text:"",rounded:"",size:"small",severity:D.severity,disabled:E(D,m),onClick:x=>g(D,m)},null,8,["icon","severity","disabled","onClick"])),[[L,D.tooltip,void 0,{top:!0}]]):e.createCommentVNode("",!0)],64))),128)),e.renderSlot(h.$slots,"row-actions",{data:m,crud:t.crud})])]),_:3},8,["style"])):e.createCommentVNode("",!0)]),_:2},[t.expandable?{name:"expansion",fn:e.withCtx(m=>[e.renderSlot(h.$slots,"expansion",{data:m.data})]),key:"0"}:void 0]),1032,["value","loading","expanded-rows","rows","total-records","sort-field","sort-order","data-key","onPage"])])):(e.openBlock(),e.createElementBlock("div",ya,[e.createElementVNode("div",ba,[e.createElementVNode("div",wa,[t.showSearch?(e.openBlock(),e.createBlock(e.unref(Ce),{key:0},{default:e.withCtx(()=>[e.createVNode(e.unref($e),{class:"pi pi-search"}),e.createVNode(e.unref(J),{"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(h.$slots,"toolbar-start"),e.renderSlot(h.$slots,"toolbar-filters")]),e.createElementVNode("div",Ba,[e.renderSlot(h.$slots,"toolbar-actions"),t.viewToggle?(e.openBlock(),e.createElementBlock("div",Va,[e.createVNode(e.unref(_),{icon:"pi pi-table",size:"small",text:!c("table"),outlined:c("table"),onClick:p[8]||(p[8]=m=>k("table"))},null,8,["text","outlined"]),e.createVNode(e.unref(_),{icon:"pi pi-th-large",size:"small",text:!c("cards"),outlined:c("cards"),onClick:p[9]||(p[9]=m=>k("cards"))},null,8,["text","outlined"])])):e.createCommentVNode("",!0),!t.showHeader&&T.value?(e.openBlock(),e.createBlock(e.unref(_),{key:1,label:"Novo",icon:"pi pi-plus",onClick:p[10]||(p[10]=m=>t.crud.openCreateDialog())})):e.createCommentVNode("",!0)])]),t.crud.loading.value?(e.openBlock(),e.createElementBlock("div",Ea,[...p[15]||(p[15]=[e.createElementVNode("i",{class:"pi pi-spin pi-spinner"},null,-1)])])):t.crud.items.value.length?(e.openBlock(),e.createElementBlock("div",Ca,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.crud.items.value,(m,D)=>(e.openBlock(),e.createElementBlock("div",{key:m[t.crud.config.pk||"id"]??D,class:"w-crud-card",onDblclick:x=>t.crud.config.canEdit!==!1&&t.crud.openEditDialog(m)},[e.createElementVNode("div",Na,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(F.value,(x,O)=>(e.openBlock(),e.createElementBlock("div",{key:x.field,class:e.normalizeClass(["w-crud-card-row",{"w-crud-card-row--title":O===0}])},[O!==0?(e.openBlock(),e.createElementBlock("span",Da,e.toDisplayString(x.header),1)):e.createCommentVNode("",!0),e.createElementVNode("span",Sa,[e.renderSlot(h.$slots,`column-${x.field}`,{data:m,value:m[x.field]},()=>[e.createVNode(Ne,{column:x,value:m[x.field],"row-data":m},null,8,["column","value","row-data"])])])],2))),128))]),u.value?(e.openBlock(),e.createElementBlock("div",xa,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(W.value,x=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:x.action},[y(x,m)?e.withDirectives((e.openBlock(),e.createBlock(e.unref(_),{key:0,icon:x.icon,text:"",rounded:"",size:"small",severity:x.severity,disabled:E(x,m),onClick:O=>g(x,m)},null,8,["icon","severity","disabled","onClick"])),[[L,x.tooltip,void 0,{top:!0}]]):e.createCommentVNode("",!0)],64))),128)),e.renderSlot(h.$slots,"row-actions",{data:m,crud:t.crud})])):e.createCommentVNode("",!0)],40,$a))),128))])):e.renderSlot(h.$slots,"empty",{key:1},()=>[p[16]||(p[16]=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($t),{key:3,rows:t.crud.pagination.pageSize,"total-records":t.crud.pagination.rows,first:$.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)])),e.renderSlot(h.$slots,"form-dialog",{crud:t.crud,dialogWidth:t.dialogWidth},()=>{var m;return[e.createVNode(Le,{visible:t.crud.dialogVisible.value,title:t.crud.dialogTitle.value,fields:t.crud.config.form,"form-data":t.crud.formData,"is-editing":t.crud.isEditing.value,saving:t.crud.saving.value,disabled:((m=t.crud.viewMode)==null?void 0:m.value)??!1,width:t.dialogWidth,"onUpdate:visible":p[11]||(p[11]=D=>{t.crud.dialogVisible.value=D,D||(t.crud.editingItem.value=null)}),"onUpdate:field":p[12]||(p[12]=(D,x)=>t.crud.setFormField(D,x)),onSave:p[13]||(p[13]=D=>t.crud.save())},e.createSlots({_:2},[e.renderList(t.crud.config.form,D=>({name:`field-${D.field}`,fn:e.withCtx(x=>[e.renderSlot(h.$slots,`field-${D.field}`,e.normalizeProps(e.guardReactiveProps(x)))])}))]),1032,["visible","title","fields","form-data","is-editing","saving","disabled","width"])]})])}}}),yt=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(et),{value:n.value.label,severity:n.value.severity},null,8,["value","severity"]))}}),Pa={class:"w-page-header"},Fa={class:"w-page-header-content"},Aa={class:"w-page-header-title"},Ma={key:0,class:"w-page-header-subtitle"},Ta={class:"w-page-header-actions"},La=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",Pa,[e.createElementVNode("div",Fa,[e.createElementVNode("h2",Aa,e.toDisplayString(t.title),1),t.subtitle?(e.openBlock(),e.createElementBlock("p",Ma,e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Ta,[e.renderSlot(n.$slots,"actions"),t.actionLabel?(e.openBlock(),e.createBlock(e.unref(_),{key:0,label:t.actionLabel,icon:t.actionIcon,onClick:r[0]||(r[0]=s=>a("action"))},null,8,["label","icon"])):e.createCommentVNode("",!0)])]))}}),za={class:"w-empty-state"},Ra={class:"w-empty-state-icon"},Ia={class:"w-empty-state-title"},Ya={key:0,class:"w-empty-state-description"},Wa=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",za,[e.createElementVNode("div",Ra,[e.createElementVNode("i",{class:e.normalizeClass(t.icon)},null,2)]),e.createElementVNode("p",Ia,e.toDisplayString(t.title),1),t.description?(e.openBlock(),e.createElementBlock("p",Ya,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0),t.actionLabel?(e.openBlock(),e.createBlock(e.unref(_),{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)]))}});/*!
|
|
3
|
+
* vue-router v4.6.4
|
|
4
|
+
* (c) 2025 Eduardo San Martin Morote
|
|
5
|
+
* @license MIT
|
|
6
|
+
*/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 Oa=Symbol(process.env.NODE_ENV!=="production"?"router":"");Symbol(process.env.NODE_ENV!=="production"?"route location":"");Symbol(process.env.NODE_ENV!=="production"?"router view location":"");/*!
|
|
7
|
+
* vue-router v4.6.4
|
|
8
|
+
* (c) 2025 Eduardo San Martin Morote
|
|
9
|
+
* @license MIT
|
|
10
|
+
*/function ja(){return e.inject(Oa)}const Ua={class:"w-detail-header"},qa={class:"w-detail-header-left"},_a={class:"w-detail-header-content"},Ha={class:"w-detail-header-title"},Ka={key:0,class:"w-detail-header-subtitle"},Ga={class:"w-detail-header-actions"},Ja=e.defineComponent({__name:"WDetailHeader",props:{title:{},subtitle:{},icon:{},backRoute:{},backTo:{},status:{},statusMap:{}},setup(t){const o=t,a=ja();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",Ua,[e.createElementVNode("div",qa,[e.createVNode(e.unref(_),{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",Ha,e.toDisplayString(t.title),1),t.subtitle?(e.openBlock(),e.createElementBlock("p",Ka,e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0)]),t.status?(e.openBlock(),e.createBlock(yt,{key:1,value:t.status,map:t.statusMap},null,8,["value","map"])):e.createCommentVNode("",!0)]),e.createElementVNode("div",Ga,[e.renderSlot(r.$slots,"actions")])]))}}),Za={class:"w-info-card"},Xa={key:0,class:"w-info-card-title"},Qa={class:"w-info-card-grid"},en={class:"w-info-card-label"},tn={class:"w-info-card-value"},on=e.defineComponent({__name:"WInfoCard",props:{title:{},fields:{}},setup(t){const{formatCurrency:o,formatDate:a,formatNumber:n}=Te();function r(s){const i=s.value;return i==null||i===""?"-":s.format==="currency"?o(Number(i)):s.format==="date"?a(String(i)):s.format==="datetime"?a(String(i),"DD/MM/YYYY HH:mm"):s.format==="number"?n(Number(i)):String(i)}return(s,i)=>(e.openBlock(),e.createElementBlock("div",Za,[t.title?(e.openBlock(),e.createElementBlock("h3",Xa,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),e.createElementVNode("div",Qa,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.fields,v=>(e.openBlock(),e.createElementBlock("div",{key:v.label,class:"w-info-card-field"},[e.createElementVNode("span",en,e.toDisplayString(v.label),1),e.createElementVNode("span",tn,e.toDisplayString(r(v)),1)]))),128))])]))}}),an={key:0,class:"w-kpi-card__loading"},nn={class:"w-kpi-card__loading-content"},ln={class:"w-kpi-card__header"},rn={key:0,class:"w-kpi-card__icon"},sn={key:1,class:"w-kpi-card__trend"},cn={class:"w-kpi-card__content"},dn={class:"w-kpi-card__label"},un={class:"w-kpi-card__value"},mn={key:0,class:"w-kpi-card__hint"},fn={key:0,class:"w-kpi-card__footer"},bt=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",an,[e.createVNode(e.unref(Pe),{shape:"circle",size:"2.75rem"}),e.createElementVNode("div",nn,[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",ln,[t.icon||o.$slots.icon?(e.openBlock(),e.createElementBlock("div",rn,[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",sn,[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",cn,[e.createElementVNode("p",dn,e.toDisplayString(t.label),1),e.createElementVNode("div",un,[e.renderSlot(o.$slots,"value",{},()=>[e.createTextVNode(e.toDisplayString(t.value),1)])]),t.hint||o.$slots.hint?(e.openBlock(),e.createElementBlock("p",mn,[e.renderSlot(o.$slots,"hint",{},()=>[e.createTextVNode(e.toDisplayString(t.hint),1)])])):e.createCommentVNode("",!0)]),o.$slots.footer?(e.openBlock(),e.createElementBlock("footer",fn,[e.renderSlot(o.$slots,"footer")])):e.createCommentVNode("",!0)],64))],2))}}),pn=e.defineComponent({__name:"WKpiGrid",props:{items:{default:()=>[]},columns:{default:4},dense:{type:Boolean,default:!1}},setup(t){const o=t,a=e.computed(()=>[`w-kpi-grid--cols-${o.columns}`,{"w-kpi-grid--dense":o.dense}]);return(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,i)=>e.renderSlot(n.$slots,"item",{key:i,item:s,index:i})),128)):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(t.items,(s,i)=>(e.openBlock(),e.createBlock(bt,{key:i,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))}}),vn={class:"w-section-header__main"},gn={key:0,class:"w-section-header__icon"},hn={class:"w-section-header__content"},kn={class:"w-section-header__title-row"},yn={class:"w-section-header__title"},bn={key:0,class:"w-section-header__subtitle"},wn={key:0,class:"w-section-header__actions"},Bn=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",vn,[t.icon||o.$slots.icon?(e.openBlock(),e.createElementBlock("div",gn,[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",hn,[e.createElementVNode("div",kn,[e.createElementVNode("h3",yn,e.toDisplayString(t.title),1),e.renderSlot(o.$slots,"meta")]),t.subtitle?(e.openBlock(),e.createElementBlock("p",bn,e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0)])]),o.$slots.actions?(e.openBlock(),e.createElementBlock("div",wn,[e.renderSlot(o.$slots,"actions")])):e.createCommentVNode("",!0)],2))}}),Vn={key:0,class:"w-form-section__header"},En={class:"w-form-section__content"},Cn={class:"w-form-section__title"},$n={key:0,class:"w-form-section__description"},Nn={key:0,class:"w-form-section__actions"},Dn={class:"w-form-section__body"},Sn=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",Vn,[e.createElementVNode("div",En,[e.createElementVNode("h3",Cn,e.toDisplayString(t.title),1),t.description?(e.openBlock(),e.createElementBlock("p",$n,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0)]),o.$slots.actions?(e.openBlock(),e.createElementBlock("div",Nn,[e.renderSlot(o.$slots,"actions")])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",Dn,[e.renderSlot(o.$slots,"default")])],2))}}),xn={key:0,class:"w-action-bar__primary"},Pn={key:1,class:"w-action-bar__filters"},Fn={key:2,class:"w-action-bar__secondary"},An=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",xn,[e.renderSlot(o.$slots,"primary",{},()=>[e.renderSlot(o.$slots,"default")])])):e.createCommentVNode("",!0),o.$slots.filters?(e.openBlock(),e.createElementBlock("div",Pn,[e.renderSlot(o.$slots,"filters")])):e.createCommentVNode("",!0),o.$slots.secondary?(e.openBlock(),e.createElementBlock("div",Fn,[e.renderSlot(o.$slots,"secondary")])):e.createCommentVNode("",!0)],2))}}),Mn={class:"w-progress-flow__marker"},Tn={class:"w-progress-flow__content"},Ln={class:"w-progress-flow__label"},zn={key:0,class:"w-progress-flow__description"},Rn=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,(i,v)=>(e.openBlock(),e.createElementBlock("div",{key:i.key,class:e.normalizeClass(["w-progress-flow__step",`w-progress-flow__step--${n(v)}`])},[e.renderSlot(r.$slots,"step",{step:i,index:v,state:n(v)},()=>[e.createElementVNode("div",Mn,[e.createElementVNode("span",null,e.toDisplayString(v+1),1)]),e.createElementVNode("div",Tn,[e.createElementVNode("p",Ln,e.toDisplayString(i.label),1),i.description?(e.openBlock(),e.createElementBlock("p",zn,e.toDisplayString(i.description),1)):e.createCommentVNode("",!0)])])],2))),128))],2))}});function In(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 wt(t){return{async list(o,a={}){const n=await t.get(o,{params:a});return In(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 Yn={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??wt(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(at,o.axios),t.provide(De,a),t.provide(Se,n),o.registerComponents!==!1&&(t.component("WCrudView",kt),t.component("WCrudFormDialog",Le),t.component("WCrudColumnRenderer",Ne),t.component("WAutoCompleteFK",We),t.component("WMoneyInput",Oe),t.component("WTransferList",je))}},Bt={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 Wn(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 On(t){const{endpoint:o,columns:a,form:n,pk:r="id",searchDebounce:s=300,partialUpdate:i=!0,canCreate:v=!0,canEdit:c=!0,canDelete:k=!0,rowActions:$=void 0,filterParams:B=void 0,createDefaults:M=void 0,transformPayload:F=void 0,onAfterSave:I=void 0,onAfterDelete:W=void 0}=t,u=e.inject(De);if(!u)throw new Error("[wPrimeVueComponents] dataProvider não encontrado. Registre o WPrimeVuePlugin antes de usar useCrudManager.");const g=u,y=e.inject(Se),E=t.pageSize??(y==null?void 0:y.defaultPageSize)??20,S={...Bt,...t.labels},T=Ie(),{confirmDelete:h}=Ye(),p=e.ref([]),L=e.ref({}),m=e.ref(!1),D=e.ref(!1),x=e.ref(""),O=e.ref(!1),d=e.ref(!1),C=e.ref(null),N=e.reactive({});let l=null;const f=e.reactive({page:1,pageSize:E,rows:0,totalPages:0}),Y=e.reactive({field:null,order:0});function H(){const V={};for(const P of n)V[P.field]=P.defaultValue!==void 0?typeof P.defaultValue=="function"?P.defaultValue():P.defaultValue:null;return V}const j=H();for(const V of Object.keys(j))N[V]=j[V];const z=e.computed(()=>C.value!==null&&!d.value),G=e.computed(()=>d.value),X=e.computed(()=>d.value?S.viewTitle??"Visualizar Registro":z.value?S.editTitle:S.createTitle),ye=e.computed(()=>f.page<=1),be=e.computed(()=>f.page>=f.totalPages);let ee=null;async function Z(V={}){m.value=!0;try{const P={page:f.page,page_size:f.pageSize,...V};x.value&&(P.search=x.value),Y.field&&Y.order!==0&&(P.ordering=Y.order===-1?`-${Y.field}`:Y.field),B&&Object.assign(P,B());const R=await g.list(o,P);p.value=R.data,f.rows=R.rows,L.value=R.extras??{},R.page&&(f.page=R.page),R.page_size&&(f.pageSize=R.page_size),f.totalPages=Math.ceil(f.rows/f.pageSize)||0}finally{m.value=!1}}async function te(){await Z()}async function Q(){await Z()}function oe(V){x.value=V,ee&&clearTimeout(ee),ee=setTimeout(()=>{f.page=1,Z()},s)}function ue(V){const P=V.target;oe(P.value)}function ae(V){f.page=V,Z()}function me(){ae(1)}function re(){ae(f.totalPages)}function se(V){f.page=V.page+1,f.pageSize=V.rows,Z()}function fe(V){Y.field=V.sortField??null,Y.order=V.sortOrder??0,f.page=1,Z()}function ie(){const V=H();for(const P of Object.keys(V))N[P]=V[P]}function pe(V,P){N[V]=P}function b(){if(d.value=!1,C.value=null,l=null,ie(),M){const V=M();for(const[P,R]of Object.entries(V))N[P]=R}O.value=!0}function w(V){const P={};for(const R of n){let q=V[R.field]!==void 0?V[R.field]:null;q&&(R.type==="date"||R.type==="datetime")&&typeof q=="string"&&(q=nt(q)),N[R.field]=q,P[R.field]=q}l=P}function U(V){d.value=!1,C.value=V,w(V),O.value=!0}function A(V){d.value=!0,C.value=V,w(V),O.value=!0}function K(V){const P={...V};for(const R of n){const q=P[R.field];if(R.type==="date"&&q instanceof Date?P[R.field]=lt(q):R.type==="datetime"&&q instanceof Date&&(P[R.field]=rt(q)),R.type==="fk"&&q!==null&&typeof q=="object"){const xe=R.optionValue||"id";P[R.field]=q[xe]??q}(R.type==="mask"||R.type==="cpf_cnpj")&&typeof q=="string"&&(P[R.field]=de(q))}return P}async function Et(){for(const V of n){if(V.validate){const P=V.validate(N[V.field]);if(P)return T.error(P),null}if(V.required){const P=N[V.field];if(P==null||P==="")return T.error(`${V.label} é obrigatório`),null}}D.value=!0;try{let V=K(N);if(!z.value&&M&&Object.assign(V,M()),z.value&&i&&l){const ne=K(l);if(V=Wn(ne,V),Object.keys(V).length===0&&!F){O.value=!1;const ce=C.value;return C.value=null,l=null,ce}}F&&(V=F(V,z.value));const P=n.some(ne=>ne.type==="image"&&V[ne.field]instanceof File);let R=V,q;if(P){const ne=new Set(n.filter(le=>le.type==="image").map(le=>le.field)),ce=new FormData;for(const[le,we]of Object.entries(V))if(we!=null)if(we instanceof File)ce.append(le,we);else{if(ne.has(le))continue;ce.append(le,String(we))}R=ce,q={"Content-Type":"multipart/form-data"}}const xe=q?{headers:q}:void 0;let ge;if(z.value&&C.value){const ne=C.value[r];ge=await g.update(o,ne,R,xe);const ce=p.value.findIndex(le=>le[r]===ne);ce!==-1&&(p.value[ce]=ge.data),T.success(S.successUpdate)}else ge=await g.create(o,R,xe),p.value.unshift(ge.data),f.rows++,T.success(S.successCreate);return O.value=!1,C.value=null,l=null,I&&I(ge.data,z.value),ge.data}catch(V){return T.error(ke(V,"Erro ao salvar registro")),null}finally{D.value=!1}}function Ct(V){h(async()=>{try{const P=V[r];await g.delete(o,P);const R=p.value.findIndex(q=>q[r]===P);R!==-1&&(p.value.splice(R,1),f.rows--),T.success(S.successDelete),W&&W(V)}catch(P){T.error(ke(P,"Erro ao excluir registro"))}},S.deleteConfirmMessage)}return{items:p,extras:L,loading:m,saving:D,search:x,dialogVisible:O,editingItem:C,formData:N,pagination:f,sort:Y,isEditing:z,isViewing:G,viewMode:d,dialogTitle:X,isFirstPage:ye,isLastPage:be,init:te,fetchItems:Z,refresh:Q,setSearch:oe,onSearch:ue,onPage:se,onSort:fe,openCreateDialog:b,openEditDialog:U,openViewDialog:A,save:Et,confirmDelete:Ct,setFormField:pe,resetForm:ie,goToPage:ae,firstPage:me,lastPage:re,config:t}}function jn(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,i=e.inject(Se),v=t.pageSize??(i==null?void 0:i.defaultPageSize)??20,c=e.ref([]),k=e.ref(!1),$=e.ref(""),B=e.ref({}),M=e.reactive({}),F=e.reactive({page:1,pageSize:v,rows:0,totalPages:0}),I=e.reactive({field:null,order:0});let W=null;async function u(p={}){k.value=!0;try{const L={page:F.page,page_size:F.pageSize,...p};$.value&&(L.search=$.value),I.field&&I.order!==0&&(L.ordering=I.order===-1?`-${I.field}`:I.field);for(const[D,x]of Object.entries(M))x!=null&&x!==""&&(L[D]=x);const m=await s.list(o,L);c.value=m.data,F.rows=m.rows,m.page&&(F.page=m.page),m.page_size&&(F.pageSize=m.page_size),F.totalPages=Math.ceil(F.rows/F.pageSize)||0,B.value=m.extras??{}}finally{k.value=!1}}async function g(){await u()}function y(p){$.value=p,W&&clearTimeout(W),W=setTimeout(()=>{F.page=1,u()},a)}function E(p,L){M[p]=L,F.page=1,u()}function S(){for(const p of Object.keys(M))delete M[p];F.page=1,u()}function T(p){F.page=p.page+1,F.pageSize=p.rows,u()}function h(p){I.field=p.sortField??null,I.order=p.sortOrder??0,F.page=1,u()}return n&&u(),{items:c,loading:k,search:$,pagination:F,sort:I,extras:B,fetchItems:u,refresh:g,setSearch:y,setFilter:E,clearFilters:S,onPage:T,onSort:h}}function Un(t){return t.split("?")[0].replace(/^\/+|\/+$/g,"").replace(/^api\/v\d+\//,"")}function qn(t){return typeof t=="string"?{table:t}:t}function Vt(t,o=400){return{response:{status:o,data:{detail:t}},message:t}}function Xe(t){if(t instanceof FormData)throw Vt("SupabaseDataProvider nao envia FormData diretamente. Faça upload do arquivo no Storage e envie a URL/caminho no payload.");return t}function Be(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=Un(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 Vt(`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,i]of Object.entries(r))n.has(s)||i===null||i===void 0||i===""||(t=t.eq(s,i));return t}function Hn(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 Kn(t,o){const a=typeof t=="string"&&t?t:o;return a?{field:a.startsWith("-")?a.slice(1):a,ascending:!a.startsWith("-")}:null}function Gn(t,o){return t?o.mapListItem?t.map(a=>{var n;return(n=o.mapListItem)==null?void 0:n.call(o,a)}):t:[]}function Jn(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),i=Math.max(Number(n.page_size??20),1),v=(s-1)*i,c=v+i-1;let k=t.client.from(r.table).select(r.select??o,{count:"exact"});k=_n(k,n,r),k=Hn(k,n.search,r.searchFields);const $=Kn(n.ordering,r.defaultOrdering);$&&(k=k.order($.field,{ascending:$.ascending}));const B=await k.range(v,c);return B.error&&Be(B.error),{data:Gn(B.data,r),page:s,page_size:i,rows:B.count??((M=B.data)==null?void 0:M.length)??0,extras:{}}},async get(a,n,r){const s=Ve(a,t),i=s.pk??"id",v=await t.client.from(s.table).select(s.select??o).eq(i,n).single();return v.error&&Be(v.error),{data:v.data}},async create(a,n,r){const s=Ve(a,t),i=Xe(n),v=s.mapPayload?s.mapPayload(i,"create"):i,c=await t.client.from(s.table).insert(v).select(s.select??o).single();return c.error&&Be(c.error),{data:c.data}},async update(a,n,r,s){const i=Ve(a,t),v=i.pk??"id",c=Xe(r),k=i.mapPayload?i.mapPayload(c,"update"):c,$=await t.client.from(i.table).update(k).eq(v,n).select(i.select??o).single();return $.error&&Be($.error),{data:$.data}},async delete(a,n){const r=Ve(a,t),s=r.pk??"id",i=r.softDelete===!0?{is_active:!1}:typeof r.softDelete=="object"?r.softDelete:null,v=i?await t.client.from(r.table).update(i).eq(s,n):await t.client.from(r.table).delete().eq(s,n);v.error&&Be(v.error)}}}exports.DEFAULT_CRUD_LABELS=Bt;exports.WActionBar=An;exports.WAutoCompleteFK=We;exports.WCrudColumnRenderer=Ne;exports.WCrudFormDialog=Le;exports.WCrudView=kt;exports.WDetailHeader=Ja;exports.WEmptyState=Wa;exports.WFormRenderer=ht;exports.WFormSection=Sn;exports.WInfoCard=on;exports.WKpiCard=bt;exports.WKpiGrid=pn;exports.WMoneyInput=Oe;exports.WPageHeader=La;exports.WPrimeVuePlugin=Yn;exports.WProgressFlow=Rn;exports.WSectionHeader=Bn;exports.WStatusTag=yt;exports.WTransferList=je;exports.W_AXIOS_KEY=at;exports.W_CONFIG_KEY=Se;exports.W_DATA_PROVIDER_KEY=De;exports.createAxiosDataProvider=wt;exports.createSupabaseDataProvider=Jn;exports.extractApiError=ke;exports.mapApiFieldToColumnDef=vt;exports.mapApiFieldToFieldDef=ft;exports.mapApiFieldsToColumnDefs=gt;exports.mapApiFieldsToFieldDefs=pt;exports.useApi=jn;exports.useApiError=fo;exports.useAppConfirm=Ye;exports.useAppToast=Ie;exports.useCrudManager=On;exports.useFormatters=Te;
|
|
11
|
+
//# sourceMappingURL=index.cjs.map
|