@bildvitta/quasar-ui-asteroid 3.0.0-beta.9 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/QasAppBar.json +0 -4
- package/dist/api/QasBtn.json +2 -1
- package/dist/api/QasCard.json +13 -9
- package/dist/api/QasDateTimeInput.json +12 -12
- package/dist/api/QasDialog.json +6 -2
- package/dist/api/QasFilters.json +4 -4
- package/dist/api/QasFormGenerator.json +33 -2
- package/dist/api/QasFormView.json +26 -9
- package/dist/api/QasGridGenerator.json +5 -4
- package/dist/api/QasInput.json +1 -1
- package/dist/api/QasListItems.json +18 -17
- package/dist/api/QasListView.json +21 -7
- package/dist/api/QasNestedFields.json +13 -3
- package/dist/api/QasNumericInput.json +10 -10
- package/dist/api/QasPasswordInput.json +1 -1
- package/dist/api/QasSearchBox.json +80 -1
- package/dist/api/QasSelect.json +79 -6
- package/dist/api/QasSelectList.json +16 -14
- package/dist/api/QasSignaturePad.json +1 -1
- package/dist/api/QasSingleView.json +13 -4
- package/dist/api/QasTabsGenerator.json +5 -2
- package/dist/api/QasUploader.json +5 -0
- package/dist/asteroid.cjs.css +1 -1
- package/dist/asteroid.cjs.js +1463 -663
- package/dist/asteroid.cjs.min.js +2 -2
- package/dist/asteroid.esm.css +1 -1
- package/dist/asteroid.esm.js +1466 -666
- package/dist/asteroid.esm.min.js +2 -2
- package/dist/asteroid.umd.css +1 -1
- package/dist/asteroid.umd.js +1466 -667
- package/dist/asteroid.umd.min.js +2 -2
- package/dist/vetur/asteroid-attributes.json +162 -94
- package/dist/vetur/asteroid-tags.json +54 -37
- package/package.json +1 -1
- package/src/components/actions-menu/QasActionsMenu.vue +2 -8
- package/src/components/app-bar/QasAppBar.vue +16 -12
- package/src/components/app-bar/QasAppBar.yml +0 -4
- package/src/components/avatar/QasAvatar.vue +0 -4
- package/src/components/btn/QasBtn.vue +5 -8
- package/src/components/btn/QasBtn.yml +2 -1
- package/src/components/card/QasCard.vue +18 -9
- package/src/components/card/QasCard.yml +13 -9
- package/src/components/date-time-input/QasDateTimeInput.vue +39 -41
- package/src/components/date-time-input/QasDateTimeInput.yml +11 -12
- package/src/components/delete/QasDelete.vue +15 -1
- package/src/components/dialog/QasDialog.vue +26 -3
- package/src/components/dialog/QasDialog.yml +6 -3
- package/src/components/dialog-router/QasDialogRouter.vue +1 -1
- package/src/components/field/QasField.vue +15 -14
- package/src/components/filters/QasFilters.vue +27 -10
- package/src/components/filters/QasFilters.yml +4 -4
- package/src/components/form-generator/QasFormGenerator.vue +87 -12
- package/src/components/form-generator/QasFormGenerator.yml +16 -2
- package/src/components/form-view/QasFormView.vue +99 -39
- package/src/components/form-view/QasFormView.yml +22 -9
- package/src/components/grid-generator/QasGridGenerator.vue +23 -7
- package/src/components/grid-generator/QasGridGenerator.yml +5 -4
- package/src/components/input/QasInput.vue +37 -21
- package/src/components/input/QasInput.yml +1 -1
- package/src/components/layout/QasLayout.vue +4 -0
- package/src/components/list-items/QasListItems.vue +15 -23
- package/src/components/list-items/QasListItems.yml +14 -15
- package/src/components/list-view/QasListView.vue +45 -24
- package/src/components/list-view/QasListView.yml +19 -7
- package/src/components/map/QasMap.vue +5 -5
- package/src/components/nested-fields/QasNestedFields.vue +29 -21
- package/src/components/nested-fields/QasNestedFields.yml +9 -3
- package/src/components/numeric-input/QasNumericInput.vue +14 -14
- package/src/components/numeric-input/QasNumericInput.yml +10 -10
- package/src/components/page-header/QasPageHeader.vue +14 -11
- package/src/components/password-input/QasPasswordInput.vue +17 -16
- package/src/components/password-input/QasPasswordInput.yml +1 -1
- package/src/components/profile/QasProfile.vue +1 -1
- package/src/components/search-box/QasSearchBox.vue +137 -36
- package/src/components/search-box/QasSearchBox.yml +66 -1
- package/src/components/select/QasSelect.vue +62 -46
- package/src/components/select/QasSelect.yml +63 -6
- package/src/components/select-list/QasSelectList.vue +11 -27
- package/src/components/select-list/QasSelectList.yml +13 -14
- package/src/components/signature-pad/QasSignaturePad.yml +1 -1
- package/src/components/signature-uploader/QasSignatureUploader.vue +7 -5
- package/src/components/single-view/QasSingleView.vue +22 -6
- package/src/components/single-view/QasSingleView.yml +11 -4
- package/src/components/table-generator/QasTableGenerator.vue +11 -1
- package/src/components/tabs-generator/QasTabsGenerator.vue +2 -2
- package/src/components/tabs-generator/QasTabsGenerator.yml +2 -2
- package/src/components/text-truncate/QasTextTruncate.vue +1 -1
- package/src/components/uploader/QasUploader.vue +62 -15
- package/src/components/uploader/QasUploader.yml +5 -0
- package/src/helpers/camelize-fields-name.js +15 -0
- package/src/helpers/filters.js +2 -0
- package/src/helpers/get-normalized-options.js +20 -0
- package/src/helpers/handle-process.js +13 -0
- package/src/helpers/index.js +3 -0
- package/src/mixins/generator.js +10 -2
- package/src/mixins/index.js +2 -0
- package/src/mixins/search-filter.js +227 -0
- package/src/mixins/view.js +32 -12
- package/src/plugins/index.js +4 -2
- package/src/plugins/logger/Logger.js +44 -0
- package/src/plugins/logger/Logger.yml +9 -0
- package/src/vue-plugin.js +6 -3
package/dist/asteroid.umd.min.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* @bildvitta/quasar-ui-asteroid v3.0.0
|
|
2
|
+
* @bildvitta/quasar-ui-asteroid v3.0.0
|
|
3
3
|
* (c) 2022 Bild & Vitta <systemteam@bild.com.br>
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
6
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("vue"),require("humps"),require("date-fns"),require("date-fns/locale"),require("quasar"),require("lodash-es"),require("autonumeric"),require("pica"),require("signature_pad"),require("vue-router"),require("fuse.js"),require("sortablejs"),require("@fawmi/vue-google-maps")):"function"==typeof define&&define.amd?define(["vue","humps","date-fns","date-fns/locale","quasar","lodash-es","autonumeric","pica","signature_pad","vue-router","fuse.js","sortablejs","@fawmi/vue-google-maps"],t):(e="undefined"!=typeof globalThis?globalThis:e||self)["{{ umdExportName }}"]=t(e.Vue,e.humps,e.dateFns,e.dateFnsLocale,e.Quasar,e._,e.AutoNumeric,e.Pica,e.SignaturePad,e.VueRouter,e.Fuse,e.Sortable,e.VueGoogleMaps)}(this,(function(e,t,o,s,l,a,r,n,i,d,c,u,m){"use strict";function p(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var h=p(r),f=p(n),g=p(i),y=p(c),v=p(u),b=p(m),k={name:"QasActions",props:{align:{default:"end",type:String,validator:e=>["start","around","between","center","end"].includes(e)},gutter:{default:"md",type:String,validator:e=>["xs","sm","md","lg","xl"].includes(e)}},computed:{classes(){return[`justify-${this.align}`,`q-col-gutter-${this.gutter}`,this.$qas.screen.isSmall?"column reverse":"row"]}}};const C={class:"col-12 col-sm-auto"},x={class:"col-12 col-sm-auto"};k.render=function(t,o,s,l,a,r){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(r.classes)},[e.createElementVNode("div",C,[e.renderSlot(t.$slots,"secondary")]),e.createElementVNode("div",x,[e.renderSlot(t.$slots,"primary")])],2)},k.__file="src/components/actions/QasActions.vue";var V={name:"QasBtn",props:{hideLabelOnSmallScreen:{type:Boolean},label:{type:String,default:""}},computed:{attributes(){return{...this.showLabel&&{label:this.label},...this.$attrs}},hasLabel(){return!!this.label},showLabel(){return this.hasLabel&&!(this.hideLabelOnSmallScreen&&this.$qas.screen.isSmall)},slots(){const{default:e,...t}=this.$slots;return t}}};V.render=function(t,o,s,l,a,r){const n=e.resolveComponent("q-btn");return e.openBlock(),e.createBlock(n,e.mergeProps({color:"primary","no-caps":"",unelevated:""},r.attributes),e.createSlots({default:e.withCtx((()=>[e.renderSlot(t.$slots,"default")])),_:2},[e.renderList(r.slots,((o,s)=>({name:s,fn:e.withCtx((o=>[e.renderSlot(t.$slots,s,e.normalizeProps(e.guardReactiveProps(o||{})))]))})))]),1040)},V.__file="src/components/btn/QasBtn.vue";var B={name:"QasActionsMenu",components:{QasBtn:V},props:{icon:{default:"o_settings",type:String},label:{default:"Configurações",type:String},list:{default:()=>({}),type:Object},deleteLabel:{type:String,default:"Excluir"},deleteIcon:{type:String,default:"o_delete"},deleteProps:{default:()=>({}),type:Object}},emits:["delete-success"],computed:{hasDelete(){return!!Object.keys(this.deleteProps).length}},methods:{onClick(e){if("function"==typeof e.handler){const{handler:t,...o}=e;e.handler(o)}},onDeleteSuccess(){this.$emit("delete-success")}}};const w={class:"flex items-center justify-center q-gutter-x-md"},S={class:"flex items-center justify-center q-gutter-x-sm"};function _(e){return e.map((e=>e.children&&"string"!=typeof e.children?Array.isArray(e.children)?_(e.children):e.children.default?_(e.children.default()):void 0:e.children||"")).join("")}function N(e,o){const s={};for(const l in o){const a=t.camelize(l);if(!a.startsWith(e))continue;const r=a.replace(`${e}.`,""),[n,i,d]=r.split(".");s[n]||(s[n]={}),d?s[n][i]=N([e,n,i].join("."),o):i?s[n][i]=o[l]:s[n]=o[l]}return s}function q(e,t,l={}){return e?(e=e instanceof Date?e:o.parseISO(e),o.format(e,t,{locale:s.ptBR,...l})):""}function $(e,t="dd/MM/yyyy",o){return q(e,t,o)}function E(e=0){return(e=Number(e))?e.toLocaleString("pt-BR"):""}function P(e){return e.replace(/^(\d{2})(\d{3})(\d{3})(\d{4})(\d{2})/g,"$1.$2.$3/$4-$5")}function D(e){return e.replace(/^(\d{3})\D*(\d{3})\D*(\d{3})\D*(\d{2})$/g,"$1.$2.$3-$4")}function Q(e){return{"company-document":()=>P(e),document:()=>function(e){return e.length<12?D(e):P(e)}(e),"personal-document":()=>D(e),phone:()=>function(e){return e.replace(/^(\d{2})\D*(\d{5}|\d{4})\D*(\d{4})$/g,"($1) $2-$3")}(e),"postal-code":()=>function(e){return e.replace(/^(\d{5})\D*(\d{3})$/g,"$1-$2")}(e),decimal:()=>E(e),money:()=>function(e=0,t={style:"currency",currency:"BRL"}){return e=Number(e),isNaN(e)?"":e.toLocaleString("pt-BR",t)}(e),"square-area":()=>function(e=0,t="m²"){return(e=E(e))?`${e} ${t}`:""}(e)}}function L(e={},t){if(e.mask&&!t)return t;const s=Q(t);if(s[e.mask])return s[e.mask]();switch(e.type){case"boolean":return function(e,t="sim",o="não"){try{return JSON.parse(e)?t:o}catch{return e}}(t);case"select":return O(e.options,t,e.multiple);case"date":return $(t);case"datetime":return function(e,t="dd/MM/yyyy HH:mm:ss",o){return q(e,t,o)}(t);case"time":return function(e,t="HH:mm",s){return o.isMatch(e,t)?e:q(e,t,s)}(t);case"radio":return O(e.options,t);case"percent":return function(e=0,t=2){return(e=Number(e))?e.toLocaleString("pt-BR",{style:"percent",minimumFractionDigits:t}):""}(t);default:return t}}function O(e,t,o){return o?function(e,t){return t.map((t=>F(e,t)))}(e,t):F(e,t)}function F(e=[],t){return(e.find((e=>String(e.value)===String(t)))||{}).label||""}function M(e){try{return JSON.parse(e)}catch{return e}}B.render=function(t,o,s,l,a,r){const n=e.resolveComponent("q-icon"),i=e.resolveComponent("q-item-section"),d=e.resolveComponent("q-item"),c=e.resolveComponent("qas-delete"),u=e.resolveComponent("q-list"),m=e.resolveComponent("q-menu"),p=e.resolveComponent("qas-btn");return e.openBlock(),e.createBlock(p,{class:"qas-actions-menu",color:"primary","hide-label-on-small-screen":"",icon:s.icon,label:s.label,outline:"",padding:"md"},{default:e.withCtx((()=>[e.createVNode(m,{class:"qas-actions-menu__menu"},{default:e.withCtx((()=>[e.createVNode(u,{class:"qas-actions-menu__list",separator:""},{default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.list,((o,s)=>e.renderSlot(t.$slots,s,{item:o},(()=>[(e.openBlock(),e.createBlock(d,e.mergeProps({key:s,class:"text-primary",clickable:""},o.props,{onClick:e=>r.onClick(o)}),{default:e.withCtx((()=>[e.createVNode(i,null,{default:e.withCtx((()=>[e.createElementVNode("div",w,[e.createVNode(n,{name:o.icon,size:"sm"},null,8,["name"]),e.createElementVNode("div",null,e.toDisplayString(o.label),1)])])),_:2},1024)])),_:2},1040,["onClick"]))])))),256)),r.hasDelete?(e.openBlock(),e.createBlock(c,e.mergeProps({key:0},s.deleteProps,{class:"text-negative",clickable:"",tag:"q-item",onSuccess:r.onDeleteSuccess}),{default:e.withCtx((()=>[e.createVNode(i,null,{default:e.withCtx((()=>[e.createElementVNode("div",S,[e.createVNode(n,{name:s.deleteIcon,size:"sm"},null,8,["name"]),e.createElementVNode("div",null,e.toDisplayString(s.deleteLabel),1)])])),_:1})])),_:1},16,["onSuccess"])):e.createCommentVNode("v-if",!0)])),_:3})])),_:3})])),_:3},8,["icon","label"])},B.__file="src/components/actions-menu/QasActionsMenu.vue";var I={name:"QasBreakline",props:{split:{default:"\n",type:String},tag:{default:"div",type:String},text:{default:"",type:String}},computed:{lines(){return(this.text||_(this.$slots.default())).split(this.split)}}};I.render=function(t,o,s,l,a,r){return e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.lines,((o,l)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.tag),e.mergeProps({key:l},t.$attrs),{default:e.withCtx((()=>[e.createTextVNode(e.toDisplayString(o),1)])),_:2},1040)))),128)},I.__file="src/components/breakline/QasBreakline.vue";var R={name:"QasAlert",components:{QasBreakline:I,QasBtn:V},props:{modelValue:{default:!0,type:Boolean},text:{default:"",type:String},color:{type:String,default:"primary"},title:{default:"",type:String}},emits:["update:modelValue"],data:()=>({model:!0}),computed:{classes(){return{[`text-${this.color}`]:!0,[`bg-${this.color}-contrast`]:["primary","secondary"].includes(this.color)}}},watch:{modelValue:{handler(e){this.model=e},immediate:!0}},methods:{close(){this.$emit("update:modelValue",!1)}}};const z={class:"q-gutter-md q-mr-lg"},A={key:0,class:"text-bold text-h5"};R.render=function(t,o,s,l,a,r){const n=e.resolveComponent("qas-btn"),i=e.resolveComponent("qas-breakline");return a.model?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["q-pa-lg qas-alert relative-position rounded-borders",r.classes])},[e.createVNode(n,{class:"absolute-top-right q-mr-md q-mt-sm",color:s.color,dense:"",flat:"",icon:"o_close",rounded:"",onClick:r.close},null,8,["color","onClick"]),e.createElementVNode("div",z,[e.renderSlot(t.$slots,"header",{},(()=>[s.title?(e.openBlock(),e.createElementBlock("h5",A,e.toDisplayString(s.title),1)):e.createCommentVNode("v-if",!0)])),e.renderSlot(t.$slots,"default",{},(()=>[e.createVNode(i,{tag:"p",text:s.text},null,8,["text"])]))])],2)):e.createCommentVNode("v-if",!0)},R.__file="src/components/alert/QasAlert.vue";var j={name:"QasAvatar",props:{color:{default:"",type:String},dark:{type:Boolean},icon:{default:"o_error",type:String},image:{default:"",type:String},textColor:{default:"primary",type:String},title:{default:"",type:String}},data:()=>({hasImageError:!1}),computed:{avatarClass(){if(this.hasImage)return null;const e=this.color?this.color:this.contrastColor;return[this.dark?`bg-${this.textColor} text-${e}`:`bg-${e} text-${this.textColor}`]},contrastColor(){return`${this.textColor}-contrast`},firstLetter(){return this.title[0].toUpperCase()},hasImage(){return!this.hasImageError&&!!this.image},hasTitle(){return!!this.title}},watch:{image(){this.hasImageError=!1}},methods:{onImageLoadedError(){this.hasImageError=!0}}};j.render=function(t,o,s,l,a,r){const n=e.resolveComponent("q-img"),i=e.resolveComponent("q-icon"),d=e.resolveComponent("q-avatar");return e.openBlock(),e.createBlock(d,{class:e.normalizeClass(["text-bold",r.avatarClass]),rounded:""},{default:e.withCtx((()=>[r.hasImage?(e.openBlock(),e.createBlock(n,{key:0,alt:s.title,ratio:1,"spinner-color":"primary","spinner-size":"16px",src:s.image,onError:r.onImageLoadedError},null,8,["alt","src","onError"])):r.hasTitle?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(r.firstLetter),1)],2112)):(e.openBlock(),e.createBlock(i,{key:2,name:s.icon},null,8,["name"]))])),_:1},8,["class"])},j.__file="src/components/avatar/QasAvatar.vue";var T={name:"QasAppBar",components:{QasAvatar:j,QasBtn:V},props:{brand:{default:"",type:String},isAuth:{type:Boolean},title:{type:String,default:""},notifications:{default:()=>({}),type:Object},user:{default:()=>({}),require:!0,type:Object}},emits:["sign-out","toggle-menu"],data:()=>({menuDrawer:!0}),computed:{developmentBadgeLabel(){const e={localhost:"Local",develop:"Develop",release:"Release"};if(process.env.DEV)return e.localhost;const t=Object.keys(e).find((e=>location.hostname.includes(e)));return t?e[t]:""},hasDevelopmentBadge(){return!!this.developmentBadgeLabel},hasNotifications(){return!!Object.keys(this.notifications).length},showTitle(){return this.title&&!this.brand}},methods:{goToProfile(){return this.$router.push(this.user.to)},goToRoot(){this.$router.push({name:"Root"})},signOut(){this.$emit("sign-out")},toggleMenuDrawer(){this.$emit("toggle-menu")}}};const U=["alt","src"],G={key:1,class:"text-bold text-grey-9 text-subtitle1 text-uppercase"},H={key:0,class:"q-mr-md"},K={class:"items-center no-wrap q-gutter-md row"},W=["title"],Y={class:"q-px-sm qas-app-bar__user-data qs-lh-lg text-caption"},J={class:"ellipsis"},X={class:"ellipsis text-bold"},Z={class:"qas-app-bar__user-menu"},ee={class:"q-pa-lg text-center"},te={class:"ellipsis q-mt-lg qs-lh-sm text-bold text-subtitle1"},oe={class:"ellipsis q-mt-xs text-caption"},se={class:"q-mt-sm"},le={class:"q-mt-sm"};T.render=function(t,o,s,l,a,r){const n=e.resolveComponent("q-ajax-bar"),i=e.resolveComponent("q-btn"),d=e.resolveComponent("q-badge"),c=e.resolveComponent("q-toolbar-title"),u=e.resolveComponent("qas-avatar"),m=e.resolveComponent("qas-btn"),p=e.resolveComponent("q-menu"),h=e.resolveComponent("q-toolbar"),f=e.resolveComponent("q-header"),g=e.resolveDirective("close-popup");return e.openBlock(),e.createBlock(f,{class:"bg-white qas-app-bar shadow-14","height-hint":"70"},{default:e.withCtx((()=>[e.createVNode(h,{class:"qas-app-bar__toolbar",color:"bg-white"},{default:e.withCtx((()=>[e.createVNode(n,{color:"white",position:"top",size:"2px"}),e.createVNode(i,{color:"grey-7",dense:"",flat:"",icon:"o_menu",round:"",onClick:r.toggleMenuDrawer},null,8,["onClick"]),e.createVNode(c,{class:"flex"},{default:e.withCtx((()=>[e.createElementVNode("div",{class:"cursor-pointer",onClick:o[0]||(o[0]=(...e)=>r.goToRoot&&r.goToRoot(...e))},[s.brand?(e.openBlock(),e.createElementBlock("img",{key:0,alt:s.title,class:"q-mr-sm qas-app-bar__brand",src:s.brand},null,8,U)):e.createCommentVNode("v-if",!0),r.showTitle?(e.openBlock(),e.createElementBlock("span",G,e.toDisplayString(s.title),1)):e.createCommentVNode("v-if",!0),r.hasDevelopmentBadge?(e.openBlock(),e.createBlock(d,{key:2,align:"middle",class:"q-ml-sm",color:"negative",label:r.developmentBadgeLabel},null,8,["label"])):e.createCommentVNode("v-if",!0)])])),_:1}),r.hasNotifications?(e.openBlock(),e.createElementBlock("div",H,[e.createVNode(i,{class:"q-mr-md",dense:"",icon:"o_notifications",round:"",unelevated:""},{default:e.withCtx((()=>[s.notifications?(e.openBlock(),e.createBlock(d,{key:0,color:"red",floating:""},{default:e.withCtx((()=>[e.createTextVNode(e.toDisplayString(s.notifications.count),1)])),_:1})):e.createCommentVNode("v-if",!0)])),_:1})])):e.createCommentVNode("v-if",!0),e.createElementVNode("div",K,[e.renderSlot(t.$slots,"tools"),s.isAuth?(e.openBlock(),e.createElementBlock("div",{key:0,class:"cursor-pointer items-center q-mr-sm qas-app-bar__user rounded-borders row text-grey-9",title:s.user.name||s.user.givenName},[e.createVNode(u,{class:"rounded-borders-left",color:"white",dark:"",image:s.user.photo,rounded:"",size:"42px","text-color":"primary",title:s.user.name||s.user.givenName},null,8,["image","title"]),e.createElementVNode("div",Y,[e.createElementVNode("div",J,e.toDisplayString(s.user.name||s.user.givenName),1),e.createElementVNode("div",X,e.toDisplayString(s.user.email),1)]),e.createVNode(p,{anchor:"bottom end",class:"shadow-14","max-height":"400px",offset:[0,5],self:"top end"},{default:e.withCtx((()=>[e.createElementVNode("div",Z,[e.createElementVNode("div",ee,[e.createElementVNode("button",{class:"unset",onClick:o[1]||(o[1]=(...e)=>r.goToProfile&&r.goToProfile(...e))},[e.createVNode(u,{image:s.user.photo,size:"145px",title:s.user.name||s.user.givenName},null,8,["image","title"])]),e.createElementVNode("div",te,e.toDisplayString(s.user.name||s.user.givenName),1),e.createElementVNode("div",oe,e.toDisplayString(s.user.email),1),e.createElementVNode("div",se,[e.createVNode(m,{flat:"",icon:"o_edit",label:"Editar",to:s.user.to},null,8,["to"])]),e.createElementVNode("div",le,[e.withDirectives(e.createVNode(m,{class:"q-px-lg q-py-xs",dense:"",icon:"o_exit_to_app",label:"Sair",outline:"",onClick:r.signOut},null,8,["onClick"]),[[g]])]),e.renderSlot(t.$slots,"user",{user:s.user})])])])),_:3})],8,W)):e.createCommentVNode("v-if",!0)])])),_:3})])),_:3})},T.__file="src/components/app-bar/QasAppBar.vue";var ae={name:"QasAppMenu",props:{items:{default:()=>[],type:Array},modelValue:{default:!0,type:Boolean},title:{default:"",type:String},brandMenu:{default:"",type:String},modules:{default:()=>[],type:Array}},emits:["update:modelValue"],data:()=>({miniMode:!1,module:"",isMini:!1}),computed:{activeItemClasses:()=>"bg-primary-contrast text-primary text-weight-bold",activeItemClassesSecondary:()=>"text-primary bg-secondary-contrast",defaultModules(){if(!["localhost","127.0.0.1"].includes(window.location.hostname))return this.modules;const e=[...this.modules],{host:t,protocol:o}=window.location,s=`${o}//${t}`;return e.unshift({label:"Localhost "+(this.title?`(${this.title})`:""),value:s}),e},model:{get(){return this.modelValue},set(e){return this.$emit("update:modelValue",e)}},currentModelOption(){return this.defaultModules.find((e=>e?.value===this.module))},displayModuleSection(){return!this.isMini&&this.defaultModules.length},currentModule(){const e=window.location.hostname;return this.defaultModules.find((t=>t?.value.includes(e)))?.value}},watch:{currentModule:{handler(e){this.module=e},immediate:!0}},methods:{hasChildren:({children:e})=>!!(e||[]).length,shouldExpand({children:e,to:t}){return e?.length&&this.$route.matched.some((e=>e?.path===t?.path))},beforeHide(){this.$qas.screen.isLarge&&(this.model=!0,this.miniMode=!this.miniMode)},setMiniState(e){this.isMini=e},redirectHandler({value:e}){e.includes(window.location.host)||(window.location.href=e)},toggleItem(e){const t=this.getComponent(e);t?.to&&this.isMini&&t.toggle()},getComponent(e){return this.$refs[`item-${e}`]?.[0]}}};const re={class:"column flex full-height justify-between no-wrap overflow-x-hidden"},ne={key:0,class:"q-ma-md"},ie=e.createElementVNode("div",{class:"q-mb-sm text-caption text-grey-7 text-weight-medium"}," Você está no modulo: ",-1),de={key:0,class:"q-mx-md"},ce=["alt","src"];ae.render=function(t,o,s,l,a,r){const n=e.resolveComponent("qas-select"),i=e.resolveComponent("q-icon"),d=e.resolveComponent("q-item-section"),c=e.resolveComponent("q-item-label"),u=e.resolveComponent("q-item"),m=e.resolveComponent("q-expansion-item"),p=e.resolveComponent("q-list"),h=e.resolveComponent("q-drawer"),f=e.resolveDirective("ripple");return e.openBlock(),e.createBlock(h,{modelValue:r.model,"onUpdate:modelValue":o[2]||(o[2]=e=>r.model=e),class:"qas-app-menu",mini:a.miniMode,width:230,onBeforeHide:r.beforeHide,onMiniState:r.setMiniState},{default:e.withCtx((()=>[e.createElementVNode("div",re,[e.createElementVNode("div",null,[r.displayModuleSection?(e.openBlock(),e.createElementBlock("div",ne,[ie,e.createVNode(n,{modelValue:a.module,"onUpdate:modelValue":[o[0]||(o[0]=e=>a.module=e),o[1]||(o[1]=e=>r.redirectHandler(r.currentModelOption))],options:r.defaultModules},null,8,["modelValue","options"])])):e.createCommentVNode("v-if",!0),e.createVNode(p,{class:"text-grey-9 text-weight-medium"},{default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.items,((t,o)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[r.hasChildren(t)?(e.openBlock(),e.createBlock(m,{key:t.label,ref_for:!0,ref:`item-${o}`,"active-class":r.activeItemClassesSecondary,"default-opened":r.shouldExpand(t),"expand-icon":"o_keyboard_arrow_down","expand-separator":"",group:"item",icon:t.icon,label:t.label,to:t.to,onClick:e=>r.toggleItem(o)},{default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.children,((t,o)=>e.withDirectives((e.openBlock(),e.createBlock(u,{key:o,"active-class":r.activeItemClasses,clickable:"",to:t.to},{default:e.withCtx((()=>[t.icon?(e.openBlock(),e.createBlock(d,{key:0,avatar:""},{default:e.withCtx((()=>[e.createVNode(i,{name:t.icon},null,8,["name"])])),_:2},1024)):e.createCommentVNode("v-if",!0),e.createVNode(d,null,{default:e.withCtx((()=>[e.createVNode(c,null,{default:e.withCtx((()=>[e.createTextVNode(e.toDisplayString(t.label),1)])),_:2},1024)])),_:2},1024)])),_:2},1032,["active-class","to"])),[[f]]))),128))])),_:2},1032,["active-class","default-opened","icon","label","to","onClick"])):e.withDirectives((e.openBlock(),e.createBlock(u,{key:o,"active-class":r.activeItemClasses,clickable:"",to:t.to},{default:e.withCtx((()=>[t.icon?(e.openBlock(),e.createBlock(d,{key:0,avatar:""},{default:e.withCtx((()=>[e.createVNode(i,{name:t.icon},null,8,["name"])])),_:2},1024)):e.createCommentVNode("v-if",!0),e.createVNode(d,null,{default:e.withCtx((()=>[e.createVNode(c,null,{default:e.withCtx((()=>[e.createTextVNode(e.toDisplayString(t.label),1)])),_:2},1024)])),_:2},1024)])),_:2},1032,["active-class","to"])),[[f]])],64)))),256))])),_:1})]),s.brandMenu?(e.openBlock(),e.createElementBlock("div",de,[a.isMini?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock("img",{key:0,alt:s.title,class:"block q-mb-md q-mx-auto",src:s.brandMenu},null,8,ce))])):e.createCommentVNode("v-if",!0)])])),_:1},8,["modelValue","mini","onBeforeHide","onMiniState"])},ae.__file="src/components/app-menu/QasAppMenu.vue";var ue={name:"QasBox",props:{outlined:{type:Boolean},unelevated:{type:Boolean}},computed:{boxClass(){return{"border-primary-contrast":this.outlined,"shadow-14":!this.unelevated}}}};ue.render=function(t,o,s,l,a,r){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["bg-white q-px-md q-py-lg rounded-borders",r.boxClass])},[e.renderSlot(t.$slots,"default")],2)},ue.__file="src/components/box/QasBox.vue";var me={name:"QasCard",props:{bgImagePosition:{type:String,default:"center"},formMode:{type:Boolean},gutter:{type:String,default:"sm"},images:{default:()=>[],type:Array},useHeader:{type:Boolean}},data:()=>({slideImage:0}),computed:{bgImagePositionClass(){return`bg-position-${this.bgImagePosition}`},cardClasses(){return this.formMode?"bg-white border-primary no-shadow":"shadow-14"},gutterClass(){return`q-col-gutter-${this.gutter}`},hasActionsSlot(){return!!this.$slots.actions},hasImages(){return this.images.length>1},imagesLength(){return this.images?.length},imagesList(){return this.imagesLength&&this.images.slice(0,3)}},methods:{getNavigationIcon:(e,{icon:t})=>e?"o_radio_button_checked":t}};const pe={class:"col-12 col-lg-3 col-md-4 col-sm-6"},he={key:0,class:"overflow-hidden relative-position w-full"},fe={class:"absolute-top flex items-center q-pa-md"},ge={key:1,class:"border-primary-contrast border-top overflow-hidden row"};me.render=function(t,o,s,l,a,r){const n=e.resolveComponent("qas-btn"),i=e.resolveComponent("q-carousel-slide"),d=e.resolveComponent("q-carousel"),c=e.resolveComponent("q-card-section"),u=e.resolveComponent("q-card");return e.openBlock(),e.createElementBlock("div",pe,[e.createVNode(u,{class:e.normalizeClass(["border-radius-lg column full-height overflow-hidden",r.cardClasses])},{default:e.withCtx((()=>[s.useHeader?(e.openBlock(),e.createElementBlock("header",he,[e.renderSlot(t.$slots,"header",{},(()=>[e.createVNode(d,{modelValue:a.slideImage,"onUpdate:modelValue":o[0]||(o[0]=e=>a.slideImage=e),animated:"",class:"cursor-pointer",height:"205px",infinite:"",navigation:r.hasImages,"navigation-icon":"o_fiber_manual_record",swipeable:""},{"navigation-icon":e.withCtx((({active:t,btnProps:o,onClick:s})=>[e.createVNode(n,{color:"white",dense:"",flat:"",icon:r.getNavigationIcon(t,o),round:"",size:"sm",onClick:s},null,8,["icon","onClick"])])),default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.imagesList,((t,o)=>(e.openBlock(),e.createBlock(i,{key:o,class:e.normalizeClass(["bg-no-repeat",r.bgImagePositionClass]),"img-src":t,name:o},null,8,["class","img-src","name"])))),128))])),_:1},8,["modelValue","navigation"]),e.createElementVNode("div",fe,[e.renderSlot(t.$slots,"carousel-header")])]))])):e.createCommentVNode("v-if",!0),e.createVNode(c,{class:"col-grow column justify-between w-full"},{default:e.withCtx((()=>[e.createElementVNode("div",{class:e.normalizeClass(["w-full",r.gutterClass])},[e.renderSlot(t.$slots,"default")],2)])),_:3}),r.hasActionsSlot?(e.openBlock(),e.createElementBlock("div",ge,[e.renderSlot(t.$slots,"actions")])):e.createCommentVNode("v-if",!0)])),_:3},8,["class"])])},me.__file="src/components/card/QasCard.vue";var ye={name:"QasCheckboxGroup",props:{options:{default:()=>[],type:Array},modelValue:{default:()=>[],type:Array},inline:{default:!0,type:Boolean}},emits:["update:modelValue"],data:()=>({group:{}}),computed:{model:{get(){return this.modelValue},set(e){this.$emit("update:modelValue",e)}},classes(){return this.inline&&"flex q-gutter-x-sm"}},watch:{options(){this.handleParent()}},created(){this.handleParent()},methods:{handleParent(){for(const e in this.options){const t=this.options[e];this.hasChildren(t)&&this.setGroupIntersection(this.modelValue,t,e)}},hasChildren:e=>Object.prototype.hasOwnProperty.call(e,"children"),setGroupIntersection(e,t,o){const s=t.children.map((e=>e.value)),l=s.filter((t=>e.includes(t)));this.group[o]=l.length&&(l.length===s.length||null)},updateCheckbox(e,t,o){this.group[o]=e;const s=t.children.map((e=>e.value)),l=e?[...new Set([...this.modelValue,...s])]:this.modelValue.filter((e=>!s.includes(e)));this.updateModelValue(l)},updateChildren(e,t,o){this.setGroupIntersection(e,t,o),this.updateModelValue(e)},getCheckboxClass(e){return this.hasChildren(e)&&"text-weight-bold"},getModelValue(e){return this.group[e]},updateModelValue(e){this.$emit("update:modelValue",e)}}};ye.render=function(t,o,s,l,a,r){const n=e.resolveComponent("q-checkbox"),i=e.resolveComponent("q-option-group");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(r.classes)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.options,((l,a)=>(e.openBlock(),e.createElementBlock("div",{key:a},[r.hasChildren(l)?(e.openBlock(),e.createBlock(n,{key:0,class:e.normalizeClass(r.getCheckboxClass(l)),label:l.label,"model-value":r.getModelValue(a),"onUpdate:modelValue":e=>r.updateCheckbox(e,l,a)},null,8,["class","label","model-value","onUpdate:modelValue"])):e.createCommentVNode("v-if",!0),r.hasChildren(l)?(e.openBlock(),e.createBlock(i,{key:1,class:"q-ml-sm",inline:s.inline,"model-value":s.modelValue,options:l.children,type:"checkbox","onUpdate:modelValue":e=>r.updateChildren(e,l,a)},null,8,["inline","model-value","options","onUpdate:modelValue"])):(e.openBlock(),e.createBlock(i,e.mergeProps({key:2,modelValue:r.model,"onUpdate:modelValue":o[0]||(o[0]=e=>r.model=e)},t.$attrs,{options:[l],type:"checkbox"}),null,16,["modelValue","options"]))])))),128))],2)},ye.__file="src/components/checkbox-group/QasCheckboxGroup.vue";var ve={name:"QasCopy",props:{icon:{default:"o_file_copy",type:String},size:{default:"xs",type:String},text:{required:!0,type:String}},data:()=>({isLoading:!1}),methods:{async copy(){this.isLoading=!0;try{await l.copyToClipboard(this.text),this.$qas.success("Copiado!",this.text)}catch(e){this.$qas.error("Não foi possível copiar.",this.text)}finally{setTimeout((()=>{this.isLoading=!1}),500)}}}};const be=e.createTextVNode("Copiar");ve.render=function(t,o,s,l,a,r){const n=e.resolveComponent("q-tooltip"),i=e.resolveComponent("qas-btn");return e.openBlock(),e.createElementBlock("span",null,[e.renderSlot(t.$slots,"default",{},(()=>[e.createTextVNode(e.toDisplayString(s.text),1)])),e.createVNode(i,{class:"q-ml-xs",color:"grey-7",flat:"",icon:s.icon,loading:a.isLoading,round:"",size:s.size,onClick:r.copy},{default:e.withCtx((()=>[e.createVNode(n,null,{default:e.withCtx((()=>[be])),_:1})])),_:1},8,["icon","loading","size","onClick"])])},ve.__file="src/components/copy/QasCopy.vue";var ke={name:"QasDateTimeInput",inheritAttrs:!1,props:{dateMask:{default:"DD/MM/YYYY",type:String},dateOnly:{type:Boolean},dateProps:{default:()=>({}),type:Object},gmt:{type:Boolean},timeMask:{default:"HH:mm",type:String},timeOnly:{type:Boolean},timeProps:{default:()=>({}),type:Object},modelValue:{default:"",type:String}},emits:["update:modelValue"],data:()=>({currentValue:"",lastValue:""}),computed:{attributes(){const{modelValue:e,...t}=this.$attrs;return{...t,mask:this.mask}},inputElement(){return this.$refs.input},mask(){return this.maskDate.replace(/\w/g,"#")},maskDate(){const e=[];return this.timeOnly||e.push(this.dateMask),this.dateOnly||e.push(this.timeMask),e.join(" ")}},watch:{value(e,t){e&&!this.timeOnly?e!==t&&e!==this.lastValue&&(this.currentValue=this.toMask(e)):this.currentValue=e}},created(){this.currentValue=this.toMask(this.modelValue)},methods:{blur(){this.inputElement.blur()},focus(){this.inputElement.focus()},updateModelValue(e){this.currentValue=e;const t=e.replace(/_/g,"").length;""!==e&&t!==this.mask.length||(this.lastValue=this.timeOnly?e:this.toISOString(e),this.$emit("update:modelValue",this.lastValue)),this.dateOnly&&this.$refs.dateProxy.hide(),this.timeOnly&&this.$refs.timeProxy.hide()},toISOString(e){return e?this.dateOnly&&!this.gmt?$(l.date.extractDate(e,this.maskDate),"yyyy-MM-dd"):this.timeOnly&&!this.gmt?l.date.extractDate(e,"HH:MM"):l.date.extractDate(e,this.maskDate).toISOString():""},toMask(e){if(!e||this.timeOnly)return e||"";const t=new Date(e).toISOString();return l.date.formatDate(this.dateOnly?t.slice(0,23):t,this.maskDate)}}};ke.render=function(t,o,s,l,a,r){const n=e.resolveComponent("q-date"),i=e.resolveComponent("q-popup-proxy"),d=e.resolveComponent("q-icon"),c=e.resolveComponent("q-time"),u=e.resolveComponent("qas-input");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(u,e.mergeProps({ref:"input"},r.attributes,{modelValue:a.currentValue,"onUpdate:modelValue":[o[2]||(o[2]=e=>a.currentValue=e),r.updateModelValue],"unmasked-value":!1}),{append:e.withCtx((()=>[s.timeOnly?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createBlock(d,{key:0,class:"cursor-pointer",name:"o_event"},{default:e.withCtx((()=>[e.createVNode(i,{ref:"dateProxy","transition-hide":"scale","transition-show":"scale"},{default:e.withCtx((()=>[e.createVNode(n,e.mergeProps({modelValue:a.currentValue,"onUpdate:modelValue":o[0]||(o[0]=e=>a.currentValue=e)},s.dateProps,{mask:r.maskDate,"onUpdate:modelValue":r.updateModelValue}),null,16,["modelValue","mask","onUpdate:modelValue"])])),_:1},512)])),_:1})),s.dateOnly?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createBlock(d,{key:1,class:"cursor-pointer q-ml-md",name:"o_access_time"},{default:e.withCtx((()=>[e.createVNode(i,{ref:"timeProxy","transition-hide":"scale","transition-show":"scale"},{default:e.withCtx((()=>[e.createVNode(c,e.mergeProps({modelValue:a.currentValue,"onUpdate:modelValue":o[1]||(o[1]=e=>a.currentValue=e)},s.timeProps,{format24h:"",mask:r.maskDate,"onUpdate:modelValue":r.updateModelValue}),null,16,["modelValue","mask","onUpdate:modelValue"])])),_:1},512)])),_:1}))])),_:1},16,["modelValue","onUpdate:modelValue"])])},ke.__file="src/components/date-time-input/QasDateTimeInput.vue";var Ce={name:"QasDebugger",props:{inspect:{default:()=>[],required:!0,type:Array}}};const xe={class:"bg-grey-3 q-my-md q-pa-md rounded-borders"},Ve=e.createElementVNode("summary",null,"Debugger",-1),Be={class:"row"};Ce.render=function(t,o,s,l,a,r){return e.openBlock(),e.createElementBlock("details",xe,[Ve,e.createElementVNode("div",Be,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.inspect,((t,o)=>(e.openBlock(),e.createElementBlock("pre",{key:o,class:"col q-pa-sm scroll",style:{"max-height":"300px"}},e.toDisplayString(t),1)))),128))])])},Ce.__file="src/components/debugger/QasDebugger.vue";var we={name:"QasDialog",components:{QasBtn:V,QasActions:k},props:{actionsProps:{default:()=>({}),type:Object},cancel:{default:()=>({}),type:[Object,Boolean]},card:{default:()=>({}),type:Object},cardProps:{default:()=>({}),type:Object},maxWidth:{default:"",type:String},minWidth:{default:"",type:String},ok:{default:()=>({}),type:[Object,Boolean]},persistent:{default:!0,type:Boolean},useForm:{type:Boolean},modelValue:{type:Boolean},usePlugin:{type:Boolean},useCloseIcon:{type:Boolean}},emits:["update:modelValue","validate"],computed:{defaultCancel(){return{label:"Cancelar",outline:!0,...this.cancel}},defaultOk(){return{label:"Ok",type:this.ok?.type||this.useForm?"submit":"button",...this.ok}},style(){return{maxWidth:this.maxWidth||(this.$qas.screen.isSmall?"":"600px"),minWidth:this.minWidth||(this.$qas.screen.isSmall?"":"400px")}},componentTag(){return this.useForm?"q-form":"div"},dialogProps(){return{...!this.usePlugin&&{modelValue:this.modelValue},...this.$attrs}}},methods:{async submitHandler(){this.useForm&&this.$emit("validate",await this.$refs.form.validate())},show(){this.$refs.dialog.show()},hide(){this.$refs.dialog.hide()},updateModelValue(e){this.$emit("update:modelValue",e)}}};const Se={class:"justify-between row"},_e={class:"text-bold text-h6"},Ne={key:0};we.render=function(t,o,s,l,a,r){const n=e.resolveComponent("qas-btn"),i=e.resolveComponent("q-card-section"),d=e.resolveComponent("qas-actions"),c=e.resolveComponent("q-card"),u=e.resolveComponent("q-dialog"),m=e.resolveDirective("close-popup");return e.openBlock(),e.createBlock(u,e.mergeProps({ref:"dialog",persistent:s.persistent},r.dialogProps,{"onUpdate:modelValue":r.updateModelValue}),{default:e.withCtx((()=>[e.createVNode(c,e.mergeProps(s.cardProps,{class:"q-pa-sm",style:r.style}),{default:e.withCtx((()=>[e.createVNode(i,null,{default:e.withCtx((()=>[e.renderSlot(t.$slots,"header",{},(()=>[e.createElementVNode("div",Se,[e.createElementVNode("div",_e,e.toDisplayString(s.card.title),1),s.useCloseIcon?e.withDirectives((e.openBlock(),e.createBlock(n,{key:0,dense:"",flat:"",icon:"o_close",rounded:""},null,512)),[[m]]):e.createCommentVNode("v-if",!0)])]))])),_:3}),e.createVNode(i,{class:"q-pt-none"},{default:e.withCtx((()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.componentTag),{ref:"form"},{default:e.withCtx((()=>[e.renderSlot(t.$slots,"description",{},(()=>[s.card.description?(e.openBlock(),e.createElementBlock("div",Ne,e.toDisplayString(s.card.description),1)):e.createCommentVNode("v-if",!0)]))])),_:3},512))])),_:3}),e.createVNode(i,null,{default:e.withCtx((()=>[e.renderSlot(t.$slots,"actions",{},(()=>[e.createVNode(d,e.normalizeProps(e.guardReactiveProps(s.actionsProps)),{primary:e.withCtx((()=>[s.ok?e.withDirectives((e.openBlock(),e.createBlock(n,e.mergeProps({key:0,class:"full-width"},r.defaultOk,{onClick:r.submitHandler}),null,16,["onClick"])),[[m,!s.useForm]]):e.createCommentVNode("v-if",!0)])),secondary:e.withCtx((()=>[s.cancel?e.withDirectives((e.openBlock(),e.createBlock(n,e.mergeProps({key:0,class:"full-width"},r.defaultCancel),null,16)),[[m]]):e.createCommentVNode("v-if",!0)])),_:1},16)]))])),_:3})])),_:3},16,["style"])])),_:3},16,["persistent","onUpdate:modelValue"])},we.__file="src/components/dialog/QasDialog.vue";var qe=(e={})=>{l.Dialog.create({component:we,componentProps:{...e,usePlugin:!0}})};l.Notify.registerType("error",{color:"negative",progress:!0});var $e=(e,t)=>{l.Notify.create({caption:t,message:e,type:"error"})};l.Notify.registerType("success",{icon:"o_check",progress:!0});var Ee=(e,t)=>{l.Notify?.create({caption:t,message:e,type:"success"})},Pe=()=>{const e={isSmall:()=>l.Screen.xs,isMedium:()=>l.Screen.sm,isLarge:()=>l.Screen.gt.sm,untilMedium:()=>l.Screen.lt.sm,untilLarge:()=>l.Screen.lt.md,isMobile:()=>l.Platform.is.mobile||!1},t={};for(const o in e)Object.defineProperty(t,o,{get:()=>e[o](),enumerable:!0});return t};const De=e.reactive({list:[]});function Qe(){const t=e.computed((()=>De.list.length>1));return{history:De,hasPreviousRoute:t,getPreviousRoute:function(e){const t=a.findLastIndex(De.list,(t=>t.name===e.name));return~t&&De.list.splice(t,1),De.list[De.list.length-1]},addRoute:function(e){De.list?.[De.list?.length-1]?.name===e.name||De.list.push(e)},destroyRoutes:function(e){if(!De.list.length)return null;e.forEach((e=>{const t=De.list.findIndex((t=>t.name===e.name));~t&&De.list.splice(t,1)}))}}}var Le={name:"QasDelete",components:{QasBtn:V,QasDialog:we},props:{customId:{default:"",type:[Number,String]},dialogProps:{default:()=>({}),type:Object},entity:{required:!0,type:String},tag:{default:"qas-btn",type:String},url:{default:"",type:String},deleting:{type:Boolean},useAutoDeleteRoute:{default:!0,type:Boolean}},emits:["success","error","update:deleting"],data:()=>({showDialog:!1}),computed:{defaultDialogProps(){return{card:{title:"Confirmar",description:"Tem certeza que deseja excluir este item?"},ok:{label:"Excluir",onClick:this.destroy},...this.dialogProps}},id(){return this.customId||this.$route.params.id}},methods:{openConfirmDialog(){this.showDialog=!0},async destroy(){l.Loading.show(),this.$emit("update:deleting",!0);try{const{destroyRoutes:e,history:t}=Qe();if(await this.$store.dispatch(`${this.entity}/destroy`,{id:this.id,url:this.url}),Ee("Item deletado com sucesso!"),this.useAutoDeleteRoute){e(this.getRoutesToBeDeletedById(t.list))}this.createDeleteSuccessEvent(),this.$emit("success")}catch(e){$e("Ops! Não foi possível deletar o item."),this.$emit("error",e)}finally{l.Loading.hide(),this.$emit("update:deleting",!1)}},getRoutesToBeDeletedById(e=[]){return e.filter((({params:e})=>e.id===this.id))},createDeleteSuccessEvent(){const e=new CustomEvent("delete-success",{bubbles:!1,cancelable:!1,detail:{entity:this.entity,url:this.url,id:this.id}});window.dispatchEvent(e)}}};Le.render=function(t,o,s,l,a,r){const n=e.resolveComponent("qas-dialog");return e.openBlock(),e.createElementBlock(e.Fragment,null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.tag),e.mergeProps(t.$attrs,{onClick:r.openConfirmDialog}),e.createSlots({_:2},[e.renderList(t.$slots,((o,s)=>({name:s,fn:e.withCtx((o=>[e.renderSlot(t.$slots,s,e.normalizeProps(e.guardReactiveProps(o||{})))]))})))]),1040,["onClick"])),e.createVNode(n,e.mergeProps({modelValue:a.showDialog,"onUpdate:modelValue":o[0]||(o[0]=e=>a.showDialog=e)},r.defaultDialogProps),null,16,["modelValue"])],64)},Le.__file="src/components/delete/QasDelete.vue";var Oe={name:"QasDialogRouter",emits:["error","hide"],expose:["show","hide"],data:()=>({component:null,parentRoute:"",route:null}),methods:{hide(){this.$refs.dialog.hide()},onDialogHide(){history&&this.parentRoute&&history.replaceState(null,null,this.parentRoute),this.component="",this.parentRoute="",this.route=null,this.$emit("hide")},resolveRoute(e){return this.$router.resolve(e)},async show(t){this.parentRoute=this.$route.fullPath,this.route=this.resolveRoute(t),history&&history.replaceState(null,null,this.route.fullPath);try{l.Loading.show();const t=e.markRaw(l.extend(!0,{},[...this.route.matched].pop().components.default));if("function"!=typeof t.value)this.component=t,this.$refs.dialog.show();else{const e=(await t()).default;this.component=e,this.$refs.dialog.show()}}catch(e){$e("Ops! Erro ao carregar item."),this.$emit("error",e)}finally{l.Loading.hide()}}}};Oe.render=function(t,o,s,l,a,r){const n=e.resolveComponent("q-card-section"),i=e.resolveComponent("q-card"),d=e.resolveComponent("q-dialog");return e.openBlock(),e.createBlock(d,{ref:"dialog",persistent:"",onHide:r.onDialogHide},{default:e.withCtx((()=>[e.createVNode(i,{class:"full-width",style:{"max-width":"80vw"}},{default:e.withCtx((()=>[e.createVNode(n,null,{default:e.withCtx((()=>[a.component?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.component),{key:0,dialog:"",route:a.route,onHide:r.hide},null,8,["route","onHide"])):e.createCommentVNode("v-if",!0)])),_:1})])),_:1})])),_:1},8,["onHide"])},Oe.__file="src/components/dialog-router/QasDialogRouter.vue";var Fe={name:"QasInput",inheritAttrs:!1,props:{modelValue:{default:"",type:[String,Number]},unmaskedValue:{default:!0,type:Boolean},outlined:{default:!0,type:Boolean},removeErrorOnType:{type:Boolean},error:{type:Boolean},errorMessage:{type:String,default:""}},emits:["update:modelValue"],data:()=>({errorData:!1,messageErrorData:""}),computed:{hasError(){return this.inputReference.hasError},inputReference(){return this.$refs.input},mask(){const{mask:e}=this.$attrs;return Object.prototype.hasOwnProperty.call(this.masks,e)?this.masks[e]():e},masks(){return{"company-document":()=>"##.###.###/####-##",document:()=>this.toggleMask("###.###.###-###","##.###.###/####-##"),"personal-document":()=>"###.###.###-##",phone:()=>this.toggleMask("(##) ####-#####","(##) #####-####"),"postal-code":()=>"#####-###"}},model:{get(){return this.modelValue},set(e){return this.removeErrorOnType&&this.error&&(this.errorData=!1,this.errorMessageData=""),this.$emit("update:modelValue",e)}}},watch:{mask(){const e=this.inputReference.$el?.querySelector("input");requestAnimationFrame((()=>{e.selectionStart=e.value?e.value.length:""}))},error:{handler(e){this.errorData=e},immediate:!0},errorMessage:{handler(e){this.errorMessageData=e},immediate:!0}},methods:{focus(){return this.inputReference.focus()},resetValidation(){return this.inputReference.resetValidation()},toggleMask(e,t){const o=e.split("#").length-2;return this.modelValue?.length>o?t:e},validate(e){return this.inputReference.validate(e)}}};Fe.render=function(t,o,s,l,a,r){const n=e.resolveComponent("q-input");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(n,e.mergeProps({ref:"input",modelValue:r.model,"onUpdate:modelValue":o[0]||(o[0]=e=>r.model=e),"bottom-slots":"",error:a.errorData},t.$attrs,{"error-message":t.errorMessageData,mask:r.mask,outlined:s.outlined,"unmasked-value":s.unmaskedValue}),e.createSlots({_:2},[e.renderList(t.$slots,((o,s)=>({name:s,fn:e.withCtx((o=>[e.renderSlot(t.$slots,s,e.normalizeProps(e.guardReactiveProps(o||{})))]))})))]),1040,["modelValue","error","error-message","mask","outlined","unmasked-value"])])},Fe.__file="src/components/input/QasInput.vue";const Me={decimal:"commaDecimalCharDotSeparator",integer:["commaDecimalCharDotSeparator","integer"],money:"Brazilian",percent:"percentageEU2dec"};var Ie={name:"QasNumericInput",props:{allowNegative:{default:!0,type:Boolean},allowPositive:{default:!0,type:Boolean},autonumericProps:{default:()=>({}),type:Object},decimalPlaces:{default:2,type:Number},mode:{default:"integer",type:String,validator:e=>["integer","decimal","percent","money"].includes(e)},modelValue:{default:"",type:[String,Number],validator:e=>"number"==typeof e||"string"==typeof e||""===e||null===e},preset:{default:!1,type:[Boolean,String]}},emits:["update:modelValue","update-model"],data:()=>({autoNumeric:null}),computed:{defaultMode(){return Me[this.mode]}},watch:{modelValue(e){this.autoNumeric&&this.autoNumeric.set(e)}},async created(){const e=h.default.getPredefinedOptions();let t=this.preset||this.defaultMode;Array.isArray(t)||(t=[t]);const o={};for(const s of t)Object.assign(o,e[s]);this.allowNegative||(o.minimumValue=0),this.allowPositive||(o.maximumValue=0),"integer"!==this.mode&&(o.decimalPlaces=this.decimalPlaces),Object.assign(o,this.autonumericProps),this.$nextTick((()=>{this.autoNumeric=new h.default(this.$refs.input,o),this.autoNumeric.set(this.modelValue)}))},beforeUnmount(){this.autoNumeric.remove()},methods:{setSelect(){this.$refs?.input?.select()},emitValue(){this.$emit("update:modelValue",this.autoNumeric.getNumber())},emitUpdateModel(e){this.$emit("update-model",{value:e,raw:this.autoNumeric.getNumber()})}}};const Re=["id"];Ie.render=function(t,o,s,l,a,r){const n=e.resolveComponent("q-field");return e.openBlock(),e.createBlock(n,{"model-value":s.modelValue,outlined:""},{control:e.withCtx((({floatingLabel:t,id:s})=>[e.withDirectives(e.createElementVNode("input",{id:s,ref:"input",class:"q-field__input",onBlur:o[0]||(o[0]=(...e)=>r.emitValue&&r.emitValue(...e)),onClick:o[1]||(o[1]=(...e)=>r.setSelect&&r.setSelect(...e)),onInput:o[2]||(o[2]=e=>r.emitUpdateModel(e.target.value))},null,40,Re),[[e.vShow,t]])])),_:1},8,["model-value"])},Ie.__file="src/components/numeric-input/QasNumericInput.vue";const ze={0:{color:"negative",label:"Muito fraco",progress:.05,textClass:"text-negative"},1:{color:"warning",label:"Fraco",progress:.25,textClass:"text-warning"},2:{color:"warning",label:"Bom",progress:.5,textClass:"text-warning"},3:{color:"positive",label:"Forte",progress:.75,textClass:"text-positive"},4:{color:"positive",label:"Muito forte",progress:1,textClass:"text-positive"}};var Ae={props:{levels:{default:()=>ze,type:Object},minlength:{default:8,type:[Number,String]},specials:{default:/[!@#$%^&*()_+\-=[\]{}|;:'",<.>/?`~]/g,type:RegExp},trackColor:{default:"blue-grey-1",type:String},useLowercase:{default:!0,type:Boolean},useNumbers:{default:!0,type:Boolean},useSpecial:{default:!0,type:Boolean},useUppercase:{default:!0,type:Boolean}}},je={name:"QasPasswordStrengthChecker",mixins:[Ae],props:{modelValue:{default:!1,type:Boolean},password:{default:"",type:String}},emits:["update:modelValue"],computed:{length(){return this.password.length},level(){return this.levels[this.score]},score(){let e=-1;return e+=this.useLowercase?this.password.match(/[a-z]/g)?1:0:1,e+=this.useNumbers?this.password.match(/[0-9]/g)?1:0:1,e+=this.useSpecial?this.password.match(this.specials)?1:0:1,e+=this.useUppercase?this.password.match(/[A-Z]/g)?1:0:1,e+=this.length>=parseInt(this.minlength)?1:0,e}},watch:{password(){this.emitValue()}},created(){this.emitValue()},methods:{emitValue(){this.$emit("update:modelValue",4===this.score)}}};const Te={key:0};je.render=function(t,o,s,l,a,r){const n=e.resolveComponent("q-linear-progress");return r.length?(e.openBlock(),e.createElementBlock("div",Te,[e.renderSlot(t.$slots,"default",{level:r.level},(()=>[e.createVNode(n,{color:r.level.color,"track-color":t.trackColor,value:r.level.progress},null,8,["color","track-color","value"]),e.createElementVNode("div",{class:e.normalizeClass(["text-caption",r.level.textClass])},e.toDisplayString(r.level.label),3)]))])):e.createCommentVNode("v-if",!0)},je.__file="src/components/password-strength-checker/QasPasswordStrengthChecker.vue";var Ue={name:"QasPasswordInput",components:{QasPasswordStrengthChecker:je},mixins:[Ae],props:{hideStrengthChecker:{type:Boolean},iconColor:{type:String,default:"primary"},modelValue:{type:String,default:""}},emits:["update:modelValue"],data:()=>({toggleType:!0}),computed:{icon(){return this.toggleType?"o_visibility_off":"o_visibility"},model:{get(){return this.modelValue},set(e){return this.$emit("update:modelValue",e)}},strengthCheckerProps(){const{modelValue:e,...t}=this.$props;return t},type(){return this.toggleType?"password":"text"}},methods:{toggle(){this.toggleType=!this.toggleType}}};Ue.render=function(t,o,s,l,a,r){const n=e.resolveComponent("q-icon"),i=e.resolveComponent("qas-password-strength-checker"),d=e.resolveComponent("qas-input");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(d,e.mergeProps({modelValue:r.model,"onUpdate:modelValue":o[0]||(o[0]=e=>r.model=e),"bottom-slots":!1,color:"negative"},t.$attrs,{"remove-error-on-type":"",type:r.type}),e.createSlots({append:e.withCtx((()=>[e.createVNode(n,{class:"cursor-pointer",color:s.iconColor,name:r.icon,onClick:r.toggle},null,8,["color","name","onClick"])])),_:2},[e.renderList(t.$slots,((o,s)=>({name:s,fn:e.withCtx((o=>[e.renderSlot(t.$slots,s,e.normalizeProps(e.guardReactiveProps(o||{})))]))}))),s.hideStrengthChecker?void 0:{name:"hint",fn:e.withCtx((()=>[e.createVNode(i,e.mergeProps(r.strengthCheckerProps,{password:r.model}),null,16,["password"])]))}]),1040,["modelValue","type"])])},Ue.__file="src/components/password-input/QasPasswordInput.vue";var Ge={name:"QasUploader",components:{QasAvatar:j},inheritAttrs:!1,props:{acceptResizeTypes:{default:()=>["image/jpeg","image/png","image/gif","image/bmp","image/webp","image/jpg"],type:Array},entity:{required:!0,type:String},errorMessage:{default:"",type:String},hint:{default:"",type:String},maxFiles:{default:void 0,type:Number},picaResizeOptions:{default:()=>({}),type:Object},sizeLimit:{default:1280,type:Number},useResize:{default:!0,type:Boolean},readonly:{type:Boolean},modelValue:{default:"",type:[Array,String]},uploading:{type:Boolean}},emits:["update:modelValue","update:uploading"],data:()=>({isFetching:!1,isUploading:!1,hiddenInputElement:null,uploader:null}),computed:{self(){return this},uploaderClasses(){return this.hasCustomUpload?"hidden":"fit"},showAddFile(){if(!this.readonly)return!this.maxFiles||this.modelValue.length<this.maxFiles},isMultiple(){return this.$attrs.multiple||""===this.$attrs.multiple},hasCustomUpload(){return this.$slots["custom-upload"]},itemClass(){return this.isMultiple?"col-12 col-md-3 col-sm-4":"col-12"},hintValue(){return this.hint||void 0},hasHeaderSlot(){return this.$slots.header},hasErrorMessage(){return!!this.errorMessage.length},attributes(){return{...this.$attrs,...this.$props}},defaultPicaResizeOptions(){return{unsharpAmount:160,unsharpRadius:.6,unsharpThreshold:1,...this.picaResizeOptions}}},mounted(){this.hiddenInputElement=this.$refs.hiddenInput,this.uploader=this.$refs.uploader,this.hiddenInputElement?.addEventListener?.("change",this.addFiles)},unmounted(){this.hiddenInputElement?.removeEventListener?.("change",this.addFiles)},methods:{async factory([e]){this.isMultiple||this.hasHeaderSlot||this.$refs.buttonCleanFiles.$el.click();const t=`${l.uid()}.${e.name.split(".").pop()}`,{endpoint:o}=await this.fetchCredentials(t);return{headers:[{name:"Content-Type",value:e.type||"image/jpeg"},{name:"Content-Disposition",value:"Attachment"}],sendRaw:!0,url:o}},factoryFailed(){this.updateUploading(!1),$e("Ops! Erro ao enviar o arquivo.")},dispatchUpload(){this.$refs.buttonCleanFiles.$el.click(),this.hiddenInputElement.click()},uploaded(e){const t=e.xhr.responseURL.split("?").shift();this.$emit("update:modelValue",this.isMultiple?[...this.modelValue,t]:t||""),this.updateUploading(!1)},async fetchCredentials(e){this.isFetching=!0;try{const{data:t}=await this.$axios.post("/upload-credentials/",{entity:this.entity,filename:e});return t}finally{this.isFetching=!1}},removeItem(e,t,o){if(o.isUploaded&&t.removeFile(t.files[o.indexToDelete]),o.isFailed)return;if(!this.isMultiple)return this.$emit("update:modelValue");const s=l.extend(!0,[],this.modelValue),a=this.modelValue.findIndex((t=>this.getFileName(t)===e));s.splice(a,1),this.$emit("update:modelValue",s)},getFileName:e=>e.split("/").pop(),getFilesList(e){const t=Array.isArray(this.modelValue)?this.modelValue:this.modelValue?[this.modelValue]:[];e=e.map(((e,t)=>({isUploaded:!0,image:e.xhr?e.xhr.responseURL.split("?").shift():"",name:e.name,progressLabel:e.__progressLabel,sizeLabel:e.__sizeLabel,indexToDelete:t,isFailed:this.isFailed(e)})));const o=[...t,...e],s={};return o.forEach((e=>{if(e.isFailed)s[e.name]=e;else if("string"!=typeof e){if(e.image){const t=this.getFileName(e.image);s[t]=e}}else{const t=this.getFileName(e);s[t]={image:e,isUploaded:!1,name:t}}})),s},getFileNameClass:e=>e?"text-negative":"text-grey-9",isFailed:e=>"failed"===e.__status,getColorFileIcon(e){return this.isFailed(e)?"negative":"primary"},async addFiles(){const e=Array.from(this.hiddenInputElement.files),t=[];e.forEach((e=>t.push(this.resizeImage(e)))),this.uploader.addFiles(await Promise.all(t))},async resizeImage(e){const{type:t}=e;if(!this.acceptResizeTypes.includes(t)||!this.useResize)return e;try{const o=new Image,s=document.createElement("canvas");o.src=URL.createObjectURL(e);const{width:l,height:a}=await function(e){return new Promise(((t,o)=>{e.addEventListener("load",(()=>{t({width:e.naturalWidth,height:e.naturalHeight})})),e.addEventListener("error",o)}))}(o);if(l<=this.sizeLimit)return e;const r=function(e,t,o){const s=e/Math.max(t,o);return s<1&&(t*=s,o*=s),{width:Math.round(t),height:Math.round(o)}}(this.sizeLimit,l,a);s.width=r.width,s.height=r.height,o.crossOrigin="",o.width=l,o.height=a;const n=f.default(),i=await n.resize(o,s,this.defaultPicaResizeOptions),d=await n.toBlob(i,t,.9);return new File([d],e.name,{type:t})}catch{return e}},updateUploading(e){this.$emit("update:uploading",e)}}};const He={class:"flex flex-center full-width justify-between no-border no-wrap q-gutter-xs q-pa-sm text-white transparent"},Ke={class:"col column items-start justify-center"},We={key:0,class:"q-uploader__title"},Ye={key:1,class:"q-uploader__subtitle"},Je=["multiple"],Xe={class:"col-12 q-col-gutter-md row"},Ze={class:"col items-center no-wrap row"},et={key:0,class:"text-caption"},tt={class:"items-center q-ml-sm row"};Ge.render=function(t,o,s,l,a,r){const n=e.resolveComponent("q-spinner"),i=e.resolveComponent("qas-btn"),d=e.resolveComponent("qas-avatar"),c=e.resolveComponent("q-icon"),u=e.resolveComponent("q-uploader"),m=e.resolveComponent("q-field");return e.openBlock(),e.createBlock(m,{borderless:"",class:"qas-uploader",error:r.hasErrorMessage,"error-message":s.errorMessage,hint:r.hintValue,"no-error-icon":""},e.createSlots({default:e.withCtx((()=>[e.createVNode(u,e.mergeProps({ref:"uploader","auto-upload":"",bordered:"",class:r.uploaderClasses,factory:r.factory,flat:"","max-files":s.maxFiles,method:"PUT",readonly:s.readonly},r.attributes,{onFactoryFailed:r.factoryFailed,onUploaded:r.uploaded,onUploading:o[1]||(o[1]=e=>r.updateUploading(!0))}),{header:e.withCtx((s=>[e.renderSlot(t.$slots,"header",{scope:s},(()=>[e.createElementVNode("div",He,[s.isUploading?(e.openBlock(),e.createBlock(n,{key:0,size:"24px"})):e.createCommentVNode("v-if",!0),e.createElementVNode("div",Ke,[t.$attrs.label?(e.openBlock(),e.createElementBlock("div",We,e.toDisplayString(t.$attrs.label),1)):e.createCommentVNode("v-if",!0),s.files.length?(e.openBlock(),e.createElementBlock("div",Ye,e.toDisplayString(s.uploadProgressLabel)+" ("+e.toDisplayString(s.uploadSizeLabel)+") ",1)):e.createCommentVNode("v-if",!0)]),r.showAddFile?(e.openBlock(),e.createBlock(i,{key:1,ref:"buttonUpload",color:"white",dense:"",flat:"",icon:"o_add",round:"",onClick:o[0]||(o[0]=e=>t.$refs.hiddenInput.click())},null,512)):e.createCommentVNode("v-if",!0),e.createElementVNode("input",{ref:"hiddenInput",class:"qas-uploader__input",multiple:r.isMultiple,type:"file"},null,8,Je),e.createVNode(i,{ref:"buttonCleanFiles",class:"hidden",color:"white",onClick:s.removeUploadedFiles},null,8,["onClick"]),s.canUpload?(e.openBlock(),e.createBlock(i,{key:2,color:"white",dense:"",flat:"",icon:"o_cloud_upload",round:"",onClick:s.upload},null,8,["onClick"])):e.createCommentVNode("v-if",!0),s.isUploading?(e.openBlock(),e.createBlock(i,{key:3,color:"white",dense:"",flat:"",icon:"o_clear",round:"",onClick:s.abort},null,8,["onClick"])):e.createCommentVNode("v-if",!0)])]))])),list:e.withCtx((o=>[e.renderSlot(t.$slots,"list",{scope:o},(()=>[e.createElementVNode("div",Xe,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.getFilesList(o.files,o),((t,s)=>(e.openBlock(),e.createElementBlock("div",{key:s,class:e.normalizeClass(["row",r.itemClass])},[e.createVNode(d,{class:"q-mr-sm",color:"contrast-primary",icon:"o_attach_file",image:t.image,rounded:"","text-color":r.getColorFileIcon(t)},null,8,["image","text-color"]),e.createElementVNode("div",Ze,[e.createElementVNode("div",{class:e.normalizeClass(["column no-wrap",{col:r.isMultiple}])},[e.createElementVNode("div",{class:e.normalizeClass(["ellipsis",r.getFileNameClass(t.isFailed)])},e.toDisplayString(t.name),3),t.isUploaded?(e.openBlock(),e.createElementBlock("div",et,e.toDisplayString(t.progressLabel)+" ("+e.toDisplayString(t.sizeLabel)+")",1)):e.createCommentVNode("v-if",!0)],2),e.createElementVNode("div",tt,[t.isFailed?(e.openBlock(),e.createBlock(c,{key:0,color:"negative",name:"o_warning",size:"20px"})):e.createCommentVNode("v-if",!0),o.readonly?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createBlock(i,{key:1,dense:"",flat:"",icon:"o_delete",round:"",onClick:e=>r.removeItem(s,o,t)},null,8,["onClick"]))])])],2)))),128))])]))])),_:3},16,["class","factory","max-files","readonly","onFactoryFailed","onUploaded"]),e.renderSlot(t.$slots,"custom-upload",{context:r.self})])),_:2},[r.hasErrorMessage?{name:"after",fn:e.withCtx((()=>[e.createVNode(c,{color:"negative",name:"o_error"})]))}:void 0]),1032,["error","error-message","hint"])},Ge.__file="src/components/uploader/QasUploader.vue";var ot={name:"QasSignaturePad",components:{QasBtn:V},props:{empty:{type:Boolean,default:!0},height:{default:"250",type:String},signatureOptions:{default:()=>({}),type:Object},type:{default:"image/png",type:String}},emits:["update:empty"],expose:["clearSignature","getSignatureData"],data:()=>({canvasId:l.uid(),hasEndStrokeEvent:!1,signaturePad:null,SignaturePad:null}),watch:{async signatureOptions(e,t){a.isEqual(e,t)||(await this.setupSignaturePad(),this.updateEmptyModel())}},mounted(){window.addEventListener("resize",this.setCanvasWidth),this.setCanvasWidth(),this.setupSignaturePad()},unmounted(){window.removeEventListener("resize",this.setCanvasWidth),this.signaturePad.off()},methods:{clearSignature(){this.signaturePad.clear(),this.updateEmptyModel()},getSignatureData(){return this.signaturePad.toDataURL(this.type)},setCanvasWidth(){const e=this.$refs.signatureContainer;e.querySelector("canvas").setAttribute("width",e.offsetWidth)},setupSignaturePad(){const e=document.getElementById(this.canvasId);this.signaturePad=new g.default(e,this.signatureOptions),this.hasEndStrokeEvent||this.signaturePad.addEventListener("endStroke",this.updateEmptyModel),this.hasEndStrokeEvent=!0,this.clearSignature()},updateEmptyModel(){this.$emit("update:empty",this.signaturePad.isEmpty())}}};const st={ref:"signatureContainer",class:"qas-signature-pad relative-position"},lt=["id","height"];ot.render=function(t,o,s,l,a,r){const n=e.resolveComponent("qas-btn");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",st,[e.createElementVNode("canvas",{id:a.canvasId,ref:t.$attrs.ref,class:"qas-signature-pad__canvas rounded-borders vertical-bottom",height:s.height},null,8,lt),s.empty?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createBlock(n,{key:0,class:"absolute-bottom-right q-mb-sm q-mr-sm",color:"primary",dense:"",icon:"o_delete",round:"",onClick:r.clearSignature},null,8,["onClick"]))],512),e.createElementVNode("div",null,[e.renderSlot(t.$slots,"default",{clearSignature:r.clearSignature,getSignatureData:r.getSignatureData})])],64)},ot.__file="src/components/signature-pad/QasSignaturePad.vue";var at={name:"QasSignatureUploader",components:{QasDialog:we,QasUploader:Ge,QasSignaturePad:ot},props:{dialogProps:{type:Object,default:()=>({})},uploadLabel:{default:"",type:String},signatureLabel:{default:"Assinatura",type:String},modelValue:{default:"",type:String},type:{default:"image/png",type:String},readonly:{type:Boolean}},emits:["update:modelValue"],data:()=>({isOpenedDialog:!1,isEmpty:!0,base64:""}),computed:{model:{get(){return this.modelValue},set(e){this.$emit("update:modelValue",e)}},headerClass(){return"q-pa-"+(this.readonly?"md":"sm")},defaultDialogProps(){return{maxWidth:"620px",...this.dialogProps}},signaturePadWidth(){return{[this.$qas.screen.isSmall]:{width:"100%"},[this.$qas.screen.isMedium]:{width:"570px"},[this.$qas.screen.isLarge]:{width:"350px"}}.true},signaturePadHeight(){return{[this.$qas.screen.isSmall]:"250",[this.$qas.screen.isMedium]:"400",[this.$qas.screen.isLarge]:"250"}.true}},methods:{NotifyError:$e,openDialog(){this.readonly||(this.isOpenedDialog=!0)},getSignatureData(){this.$refs.buttonCleanFiles.$el.click(),this.base64=this.$refs.signaturePadModal.getSignatureData(),this.$refs.forceUpload.$el.click(),this.closeSignature()},closeSignature(){this.isOpenedDialog=!1},removeSignature(){this.$refs.buttonCleanFiles.$el.click(),this.$emit("update:modelValue")},upload(e){try{const t=this.signatureLabel.split(" ").join("-"),o=this.type.split("/").pop()||"png",s=function(e){const t=e.indexOf(";base64,"),o=e.substring(5,t),s=e.substr(t+8),l=atob(s),a=new ArrayBuffer(l.length),r=new Uint8Array(a);for(const e in[...l])r[e]=l.charCodeAt(e);return new Blob([a],{type:o})}(this.base64),l=new File([s],`${t}.${o}`,{type:this.type});e.addFiles([l])}catch{$e("Ops! Erro ao enviar sua assinatura.")}}}};const rt={class:"col column items-start justify-center"},nt={key:0,class:"q-uploader__title"},it=e.createElementVNode("div",{class:"text-bold text-center"},"Insira sua assinatura digital no campo abaixo",-1);at.render=function(t,o,s,l,a,r){const n=e.resolveComponent("q-btn"),i=e.resolveComponent("qas-uploader"),d=e.resolveComponent("qas-signature-pad"),c=e.resolveComponent("qas-dialog");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(i,e.mergeProps({ref:"uploader",modelValue:r.model,"onUpdate:modelValue":o[1]||(o[1]=e=>r.model=e),label:s.uploadLabel,readonly:s.readonly,"use-resize":!1},t.$attrs),{header:e.withCtx((({scope:t})=>[e.createElementVNode("div",{class:e.normalizeClass(["cursor-pointer flex flex-center full-width justify-between no-border no-wrap q-gutter-xs text-white transparent",r.headerClass]),onClick:o[0]||(o[0]=(...e)=>r.openDialog&&r.openDialog(...e))},[e.createElementVNode("div",rt,[s.uploadLabel?(e.openBlock(),e.createElementBlock("div",nt,e.toDisplayString(s.uploadLabel),1)):e.createCommentVNode("v-if",!0)]),s.readonly?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createBlock(n,{key:0,dense:"",flat:"",icon:"o_add",round:"",onClick:r.openDialog},null,8,["onClick"])),e.createVNode(n,{ref:"forceUpload",class:"hidden",onClick:e=>r.upload(t)},null,8,["onClick"]),e.createVNode(n,{ref:"buttonCleanFiles",class:"hidden",onClick:t.removeUploadedFiles},null,8,["onClick"])],2)])),_:1},16,["modelValue","label","readonly"]),e.createVNode(c,e.mergeProps({modelValue:a.isOpenedDialog,"onUpdate:modelValue":o[3]||(o[3]=e=>a.isOpenedDialog=e)},r.defaultDialogProps),{header:e.withCtx((()=>[it])),description:e.withCtx((()=>[e.createElementVNode("div",{style:e.normalizeStyle(r.signaturePadWidth)},[e.createVNode(d,{ref:"signaturePadModal",empty:a.isEmpty,"onUpdate:empty":o[2]||(o[2]=e=>a.isEmpty=e),height:r.signaturePadHeight},null,8,["empty","height"])],4)])),actions:e.withCtx((()=>[e.createVNode(n,{class:"full-width",color:"primary",disable:a.isEmpty,label:"Salvar","no-caps":"",onClick:r.getSignatureData},null,8,["disable","onClick"]),e.createVNode(n,{class:"full-width q-mt-sm",color:"primary",flat:"",label:"Cancelar","no-caps":"",onClick:r.closeSignature},null,8,["onClick"])])),_:1},16,["modelValue"])])},at.__file="src/components/signature-uploader/QasSignatureUploader.vue";const dt={maxLength:"maxlength",minLength:"minlength",readOnly:"readonly"};var ct={name:"QasField",components:{QasCheckboxGroup:ye,QasDateTimeInput:ke,QasInput:Fe,QasNumericInput:Ie,QasPasswordInput:Ue,QasUploader:Ge,QasSignatureUploader:at},props:{error:{default:"",type:[Array,String]},field:{default:()=>({}),required:!0,type:Object},modelValue:{default:void 0,type:[Object,Array,String,Number,Boolean]}},emits:["update:modelValue"],computed:{component(){const{entity:e,extensions:t,label:o,maxlength:s,minlength:l,multiple:a,name:r,options:n,readonly:i,disable:d,filled:c=i,suffix:u,prefix:m,type:p,mask:h,maxFiles:f,searchable:g,gmt:y}=this.formattedField,v={error:this.hasError||void 0,errorMessage:this.errorMessage||void 0},b={label:o,hideBottomSpace:!v.error,outlined:!0,...v,readonly:i,disable:d,filled:c,maxlength:s,minlength:l,suffix:u,prefix:m,gmt:y},k={is:"qas-numeric-input",...b},C={is:"qas-date-time-input",gmt:y,...b},x=t&&t.length?t.map((e=>`.${e}`)).join(","):"",V={default:{is:"qas-input",...b,mask:h},textarea:{is:"qas-input",type:p,...b},number:{is:"qas-input",type:"number",...b},hidden:{is:"input",name:r,type:p},email:{is:"qas-input",type:p,...b},password:{is:"qas-password-input",...b},decimal:{...k,mode:"decimal"},money:{...k,mode:"money"},percent:{...k,mode:"percent"},date:{...C,dateOnly:!0},datetime:{...C},time:{...C,timeOnly:!0},boolean:{is:"q-toggle",label:o,...v},checkbox:{is:"qas-checkbox-group",label:o,options:n,...v},radio:{is:"q-option-group",label:o,options:n,type:"radio",...v},upload:{is:"qas-uploader",accept:x,autoUpload:!0,entity:e,label:o,multiple:a,readonly:i,maxFiles:f,...v},editor:{is:"q-editor",toolbar:[["undo","redo"],["bold","italic","underline"],["left","center","right","justify"],["hr","link"],["quote","unordered","ordered","outdent","indent"],["print","fullscreen"]],...v},"signature-uploader":{is:"qas-signature-uploader",entity:e,uploadLabel:o,...v},select:{is:"qas-select",multiple:a,options:n,searchable:g,...b}};return{...V[p]||V.default,...this.$attrs}},errorMessage(){return Array.isArray(this.error)?this.error.join(" "):this.error},formattedField(){const e={};for(const t in this.field)e[dt[t]||t]=this.field[t];return e},formattedValue(){return this.isBoolean?this.isEmptyValue?!!this.modelValue:JSON.parse(this.modelValue):this.modelValue},hasError(){return!!(Array.isArray(this.error)?this.error.length:this.error)},isBoolean(){return"boolean"===this.field.type},isEmptyValue(){return!!this.isBoolean&&(!this.modelValue&&(void 0===this.modelValue||"string"==typeof this.modelValue))},isNumberType(){return"number"===this.field.type}},methods:{updateModel(e){this.$emit("update:modelValue",this.isNumberType?Number(e):e)}}};ct.render=function(t,o,s,l,a,r){return e.openBlock(),e.createElementBlock("div",null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.component.is),e.mergeProps(r.component,{"data-cy":s.field.name,"model-value":r.formattedValue,"onUpdate:modelValue":r.updateModel}),e.createSlots({_:2},[e.renderList(t.$slots,((o,s)=>({name:s,fn:e.withCtx((o=>[e.renderSlot(t.$slots,s,e.normalizeProps(e.guardReactiveProps(o||{})))]))})))]),1040,["data-cy","model-value","onUpdate:modelValue"]))])},ct.__file="src/components/field/QasField.vue";var ut={computed:{mx_context(){const{limit:e,ordering:t,page:o,search:s,...l}=this.$route.query;return{filters:l,limit:e,ordering:t,page:o?parseInt(o):1,search:s}}}},mt={name:"QasFilters",components:{QasField:ct},mixins:[ut],props:{useChip:{default:!0,type:Boolean},entity:{required:!0,type:String},useFilterButton:{default:!0,type:Boolean},useSearch:{default:!0,type:Boolean},useSearchOnType:{default:!0,type:Boolean},searchPlaceholder:{default:"Pesquisar...",type:String},url:{default:"",type:String},forceRefetch:{type:Boolean}},emits:["fetch-success","fetch-error"],data:()=>({filters:{},hasFetchError:!1,isFetching:!1,search:""}),computed:{activeFilters(){if(!this.hasFields)return{};const e={},o=Object.keys(this.fields),s=t.camelizeKeys(this.mx_context.filters);for(const t in s){if(o.includes(t)){const o=L(this.fields[t],this.normalizeValues(s[t],this.fields[t]?.multiple)),{label:l,name:a}=this.fields[t];e[t]={label:l,name:a,value:o}}}return e},debounce(){return this.useSearchOnType?"500":""},fields(){return this.$store.getters[`${this.entity}/filters`]},filterButtonColor(){return this.hasActiveFilters?"primary":"grey-9"},filterButtonLabel(){return this.$q.screen.gt.xs?"Filtrar":void 0},hasActiveFilters(){return!!Object.keys(this.activeFilters).length},hasFields(){return!!Object.keys(this.fields).length},hasSearch(){return this.search.length},showFilterButton(){return!!this.$slots.filterButton||this.useFilterButton},showFilters(){return this.useFilterButton||this.showSearch},showSearch(){return!!this.$slots.search||this.useSearch}},watch:{$route(e,t){e.name===t.name&&(this.fetchFilters(),this.updateValues())},search(){this.debounce&&this.filter()}},created(){this.fetchFilters(),this.watchOnceFields()},methods:{clearFilters(){const{filters:e,...o}=this.mx_context;if(this.hasFields){const s=Object.keys(this.fields);for(const l in e){const e=t.camelize(l);s.includes(e)&&(delete o[l],delete this.filters[l])}}else this.filters={};this.$router.push({query:o})},clearSearch(){this.search="",this.filter()},async fetchFilters(){if(!this.forceRefetch&&(this.hasFields||!this.useFilterButton))return null;this.hasFetchError=!1,this.isFetching=!0;try{const e=await this.$store.dispatch(`${this.entity}/fetchFilters`,{url:this.url});this.$emit("fetch-success",e)}catch(e){this.hasFetchError=!0,this.$emit("fetch-error",e)}finally{this.isFetching=!1}},filter(e){const{filters:t,page:o,...s}=this.mx_context,l={...t,...this.filters,...e,...s,search:this.search||void 0};this.$router.push({query:l})},getChipValue:e=>Array.isArray(e)?e.join(", "):e,removeFilter({name:e}){const t={...this.$route.query};delete t[e],delete this.filters[e],this.$router.push({query:t})},updateValues(){const{filters:e,search:t}=this.mx_context;this.search=t||"";for(const t in e)this.filters[t]=M(this.normalizeValues(e[t],this.fields[t]?.multiple))},normalizeValues:(e,t)=>Array.isArray(e)?e:t?[e]:e,watchOnceFields(){const e=this.$watch("fields",(t=>{Object.keys(t).length&&(this.updateValues(),e())}))}}};const pt={class:"q-mb-lg"},ht={key:0,class:"q-gutter-x-md row"},ft={key:0,class:"col"},gt={key:0,class:"q-pa-xl text-center"},yt={key:1,class:"q-pa-xl text-center"},vt={class:"text-right"},bt={key:1,class:"q-mt-md"};mt.render=function(t,o,s,l,a,r){const n=e.resolveComponent("q-btn"),i=e.resolveComponent("q-input"),d=e.resolveComponent("q-form"),c=e.resolveComponent("q-spinner"),u=e.resolveComponent("q-icon"),m=e.resolveComponent("qas-field"),p=e.resolveComponent("q-menu"),h=e.resolveComponent("q-chip");return e.openBlock(),e.createElementBlock("section",pt,[r.showFilters?(e.openBlock(),e.createElementBlock("div",ht,[r.showSearch?(e.openBlock(),e.createElementBlock("div",ft,[e.renderSlot(t.$slots,"search",{filter:r.filter},(()=>[s.useSearch?(e.openBlock(),e.createBlock(d,{key:0,onSubmit:o[2]||(o[2]=e.withModifiers((e=>r.filter()),["prevent"]))},{default:e.withCtx((()=>[e.createVNode(i,{modelValue:a.search,"onUpdate:modelValue":o[1]||(o[1]=e=>a.search=e),debounce:r.debounce,dense:"",placeholder:s.searchPlaceholder,type:"search"},{append:e.withCtx((()=>[r.hasSearch?(e.openBlock(),e.createBlock(n,{key:0,icon:"o_clear",unelevated:"",onClick:r.clearSearch},null,8,["onClick"])):e.createCommentVNode("v-if",!0),r.debounce?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createBlock(n,{key:1,icon:"o_search",type:"submit",unelevated:"",onClick:o[0]||(o[0]=e=>r.filter())}))])),_:1},8,["modelValue","debounce","placeholder"])])),_:1})):e.createCommentVNode("v-if",!0)]))])):e.createCommentVNode("v-if",!0),r.showFilterButton?e.renderSlot(t.$slots,"filter-button",{key:1,filter:r.filter},(()=>[s.useFilterButton?(e.openBlock(),e.createBlock(n,{key:0,color:r.filterButtonColor,flat:"",icon:"o_filter_list",label:r.filterButtonLabel},{default:e.withCtx((()=>[e.createVNode(p,{class:"full-width","max-width":"240px"},{default:e.withCtx((()=>[a.isFetching?(e.openBlock(),e.createElementBlock("div",gt,[e.createVNode(c,{color:"grey",size:"2em"})])):a.hasFetchError?(e.openBlock(),e.createElementBlock("div",yt,[e.createVNode(u,{color:"negative",name:"o_warning",size:"2em"})])):(e.openBlock(),e.createBlock(d,{key:2,class:"q-gutter-y-md q-pa-md",onSubmit:o[3]||(o[3]=e.withModifiers((e=>r.filter()),["prevent"]))},{default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.fields,((t,o)=>(e.openBlock(),e.createElementBlock("div",{key:o},[e.createVNode(m,{modelValue:a.filters[t.name],"onUpdate:modelValue":e=>a.filters[t.name]=e,dense:"",field:t},null,8,["modelValue","onUpdate:modelValue","field"])])))),128)),e.createElementVNode("div",vt,[e.createVNode(n,{class:"q-mr-sm",label:"Limpar",size:"12px",unelevated:"",onClick:r.clearFilters},null,8,["onClick"]),e.createVNode(n,{color:"primary",label:"Filtrar",size:"12px",type:"submit",unelevated:""})])])),_:1}))])),_:1})])),_:1},8,["color","label"])):e.createCommentVNode("v-if",!0)])):e.createCommentVNode("v-if",!0)])):e.createCommentVNode("v-if",!0),s.useChip&&r.hasActiveFilters?(e.openBlock(),e.createElementBlock("div",bt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.activeFilters,((t,o)=>(e.openBlock(),e.createBlock(h,{key:o,color:"primary",dense:"",removable:"",size:"md","text-color":"white",onRemove:e=>r.removeFilter(t)},{default:e.withCtx((()=>[e.createTextVNode(e.toDisplayString(t.label)+' = "'+e.toDisplayString(r.getChipValue(t.value))+'"',1)])),_:2},1032,["onRemove"])))),128))])):e.createCommentVNode("v-if",!0),e.renderSlot(t.$slots,"default",{context:t.mx_context,filter:r.filter,filters:r.activeFilters,removeFilter:r.removeFilter})])},mt.__file="src/components/filters/QasFilters.vue";const kt=["col","col-auto","fit"];var Ct={props:{columns:{default:()=>[],type:[Array,String,Object]},fields:{default:()=>({}),type:Object},gutter:{default:"md",type:[String,Boolean],validator:e=>["xs","sm","md","lg","xl"].includes(e)}},computed:{mx_classes(){const e=["row"];return this.gutter&&e.push(`q-col-gutter-${this.gutter}`),e}},methods:{mx_getBreakpoint(e){const t=[],o={col:"col",xs:"col-xs",sm:"col-sm",md:"col-md",lg:"col-lg",xl:"col-xl"},{fieldProps:s,classes:l,...a}=e||{};for(const e in a){const s=a[e];t.push(kt.includes(s)?s:`${o[e]}-${s}`)}return[...t,l]},mx_getFieldClass(e,t){return"string"==typeof this.columns?kt.includes(this.columns)?this.columns:`col-${this.columns}`:Array.isArray(this.columns)?this.mx_handleColumnsByIndex(e,t):this.mx_handleColumnsByField(e,t)},mx_handleColumnsByField(e,t){return this.columns[e]?this.mx_getBreakpoint(this.columns[e]):this.mx_setDefaultColumnClass(t)},mx_handleColumnsByIndex(e,t){const o=t?this.fields:this.groupedFields.visible;Array.isArray(o)||(e=Object.keys(o).findIndex((t=>t===e)));return this.columns.length?this.mx_getBreakpoint(this.columns[e]):this.mx_setDefaultColumnClass(t)},mx_setDefaultColumnClass:e=>e?"col-6 col-xs-12 col-sm-4":"col-6"}},xt={name:"QasFormGenerator",components:{QasField:ct},mixins:[Ct],props:{errors:{default:()=>({}),type:Object},fieldsProps:{default:()=>({}),type:Object},order:{default:()=>[],type:Array},modelValue:{default:()=>({}),required:!0,type:Object}},emits:["update:modelValue"],computed:{groupedFields(){const e={hidden:{},visible:{}};for(const t in this.fields){const o=this.fields[t];e["hidden"===o.type?"hidden":"visible"][t]=o}if(this.order.length){const t={};for(const o of this.order)e.visible[o]&&(t[o]=e.visible[o]);e.visible=t}return e}},methods:{updateModelValue(e,t){const o={...this.modelValue};o[e]=t,this.$emit("update:modelValue",o)}}};xt.render=function(t,o,s,l,a,r){const n=e.resolveComponent("qas-field");return e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("div",{class:e.normalizeClass(t.mx_classes)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.groupedFields.visible,((o,l)=>(e.openBlock(),e.createElementBlock("div",{key:l,class:e.normalizeClass(t.mx_getFieldClass(l))},[e.renderSlot(t.$slots,`field-${o.name}`,{field:o},(()=>[e.createVNode(n,e.mergeProps(s.fieldsProps[o.name],{error:s.errors[l],field:o,"model-value":s.modelValue[o.name],"onUpdate:modelValue":e=>r.updateModelValue(o.name,e)}),null,16,["error","field","model-value","onUpdate:modelValue"])]))],2)))),128))],2),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.groupedFields.hidden,((o,l)=>(e.openBlock(),e.createElementBlock("div",{key:l},[e.renderSlot(t.$slots,`field-${o.name}`,{field:o},(()=>[e.createVNode(n,e.mergeProps(s.fieldsProps[o.name],{field:o,"model-value":s.modelValue[o.name],"onUpdate:modelValue":e=>r.updateModelValue(o.name,e)}),null,16,["field","model-value","onUpdate:modelValue"])]))])))),128))])},xt.__file="src/components/form-generator/QasFormGenerator.vue";var Vt={props:{dialog:{type:Boolean},entity:{required:!0,type:String},url:{default:"",type:String},fields:{default:()=>({}),type:Object},errors:{default:()=>({}),type:Object},metadata:{default:()=>({}),type:Object},fetching:{type:Boolean}},emits:["update:fields","update:errors","update:metadata","update:fetching"],data:()=>({mx_errors:{},mx_fields:{},mx_metadata:{},mx_isFetching:!1}),watch:{mx_isFetching(e){this.$emit("update:fetching",e)}},computed:{mx_componentTag(){return this.dialog?"div":"q-page"},mx_componentClass(){return!this.dialog&&"container spaced"},mx_hasFooterSlot(){return!!this.$slots.footer},mx_hasHeaderSlot(){return!!this.$slots.header}},methods:{mx_fetchError(e){const{response:t}=e,o=t?.data?.exception||e.message;this.$qas.error("Ops! Erro ao obter os dados.",o);const s=t?.status,l=s>=500?"ServerError":{401:"Unauthorized",403:"Forbidden",404:"NotFound"}[s];l&&this.$router.replace({name:l})},mx_setErrors(t={}){this.mx_errors=e.markRaw(t)},mx_setFields(o={}){for(const e in o)o[e].name=t.camelize(o[e].name);this.mx_fields=e.markRaw(o)},mx_setMetadata(t={}){this.mx_metadata=e.markRaw(t)},mx_updateModels(e){for(const t in e)e[t]&&this.$emit(`update:${t}`,e[t])}}},Bt={name:"QasFormView",components:{QasBtn:V,QasDialog:we},mixins:[Vt],props:{cancelButtonLabel:{default:"Cancelar",type:String},cancelRoute:{default:"",type:[Boolean,Object,String,Function]},customId:{default:"",type:[Number,String]},disable:{type:Boolean},mode:{default:"create",type:String},route:{default:()=>({}),type:Object},showDialogOnUnsavedChanges:{default:!0,type:Boolean},ignoreKeysInUnsavedChanges:{default:()=>[],type:Array},submitButtonLabel:{default:"Salvar",type:String},modelValue:{default:()=>({}),type:Object},submitting:{type:Boolean},useActions:{default:!0,type:Boolean},useCancelButton:{default:!0,type:Boolean},useSubmitButton:{default:!0,type:Boolean}},emits:["submit-success","submit-error","fetch-success","fetch-error","update:modelValue","update:submitting","update:errors"],data:()=>({cachedResult:{},hasResult:!1,isSubmitting:!1,showDialog:!1,ignoreRouterGuard:!1,defaultDialogProps:{card:{title:"Atenção!",description:"Você está deixando a página e suas alterações serão perdidas. Tem certeza que deseja sair sem salvar?"},ok:{label:"Continuar editando"},cancel:{label:"Sair"}}}),computed:{cancelButtonClass(){return this.$qas.screen.isSmall&&"order-last"},fetchURL(){return this.url?`${this.url}/${this.isCreateMode?"new":"edit"}`:""},hasCancelButton(){return!("boolean"==typeof this.cancelRoute&&!this.cancelRoute)&&this.useCancelButton},id(){return this.customId||this.resolvedRoute.params.id},isCreateMode(){return"create"===this.mode},resolvedRoute(){return this.route&&Object.keys(this.route).length?this.route:this.$route},submitButtonClass(){return this.$qas.screen.isSmall&&"order-first"},isCancelButtonDisabled(){return this.disable||this.isSubmitting}},watch:{mx_fields(e){const t={...this.getModelsByFields(e),...this.modelValue};this.$emit("update:modelValue",t),!this.hasResult&&this.showDialogOnUnsavedChanges&&(this.cachedResult=l.extend(!0,{},t))},isSubmitting(e){this.$emit("update:submitting",e)}},created(){d.onBeforeRouteLeave(this.beforeRouteLeave),window.addEventListener("delete-success",this.setIgnoreRouterGuard),this.fetch()},onUnmounted(){window.removeEventListener("delete-success",this.setIgnoreRouterGuard)},methods:{beforeRouteLeave(e,t,o){const s=l.extend(!0,{},this.modelValue),r=l.extend(!0,{},this.cachedResult);if(!this.showDialogOnUnsavedChanges||this.ignoreRouterGuard||a.isEqualWith(s,r,this.handleIgnoreKeysInUnsavedChanges))return o();this.handleDialog((()=>{this.ignoreRouterGuard=!0,o()}))},cancel(){this.dialog||this.handleCancelRoute()},async fetch(e){this.mx_isFetching=!0;try{const t=await this.$store.dispatch(`${this.entity}/fetchSingle`,{form:!0,id:this.id,params:e,url:this.fetchURL}),{errors:o,fields:s,metadata:a,result:r}=t.data;this.mx_setErrors(o),this.mx_setFields(s),this.mx_setMetadata(a),this.mx_updateModels({errors:o,fields:this.mx_fields,metadata:a}),r&&(this.hasResult=!0,this.$nextTick((()=>{this.$emit("update:modelValue",{...this.modelValue,...r})})),this.cachedResult=this.showDialogOnUnsavedChanges&&l.extend(!0,{},r)),this.$emit("fetch-success",t,this.modelValue)}catch(e){this.mx_fetchError(e),this.$emit("fetch-error",e)}finally{this.mx_isFetching=!1}},getModelsByFields(e){const t={};for(const o in e)t[o]=e[o].default;return t},handleCancelRoute(){if("function"==typeof this.cancelRoute)return this.cancelRoute();if(this.cancelRoute&&["string","object"].includes(typeof this.cancelRoute))return this.$router.push(this.cancelRoute);const[,e]=this.$route.path.split("/"),t=this.$router.resolve(`/${e}`);this.$router.push(t)},handleDialog(e){this.openDialog();const{addRoute:t}=Qe();this.defaultDialogProps.ok.onClick=()=>t(this.$route),this.defaultDialogProps.cancel.onClick=e},openDialog(){this.showDialog=!0},handleIgnoreKeysInUnsavedChanges(e,t){this.ignoreKeysInUnsavedChanges.length&&this.ignoreKeysInUnsavedChanges.forEach((o=>{e&&(delete e[o],delete t[o])}))},async submit(e){if(this.disable)return null;e&&e.preventDefault(),this.isSubmitting=!0;try{const e=await this.$store.dispatch(`${this.entity}/${this.mode}`,{id:this.id,payload:this.modelValue,url:this.url});this.showDialogOnUnsavedChanges&&(this.cachedResult=l.extend(!0,{},this.modelValue)),this.mx_setErrors(),Ee(e.data.status.text||"Item salvo com sucesso!"),this.$emit("submit-success",e,this.modelValue)}catch(e){const t=e?.response?.data?.errors,o=e?.response?.data?.status?.text,s=e?.response?.data?.exception,l=t?"Existem erros de validação no formulário.":s||e.message;this.mx_setErrors(t),this.$emit("update:errors",this.mx_errors),$e(o||"Ops! Erro ao salvar item.",l),this.$emit("submit-error",e)}finally{this.isSubmitting=!1}},setIgnoreRouterGuard({detail:{id:e,entity:t}}){this.ignoreRouterGuard=this.id===e&&this.entity===t}}};const wt={key:0},St={class:"justify-end q-col-gutter-md q-my-lg row"},_t={key:1};Bt.render=function(t,o,s,l,a,r){const n=e.resolveComponent("qas-btn"),i=e.resolveComponent("q-form"),d=e.resolveComponent("qas-dialog"),c=e.resolveComponent("q-spinner"),u=e.resolveComponent("q-inner-loading"),m=e.resolveDirective("close-popup");return e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.mx_componentTag),{class:e.normalizeClass(t.mx_componentClass)},{default:e.withCtx((()=>[t.mx_hasHeaderSlot?(e.openBlock(),e.createElementBlock("header",wt,[e.renderSlot(t.$slots,"header")])):e.createCommentVNode("v-if",!0),e.createVNode(i,{ref:"form",onSubmit:r.submit},{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default"),s.useActions?e.renderSlot(t.$slots,"actions",{key:0},(()=>[e.createElementVNode("div",St,[r.hasCancelButton?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["col-12 col-sm-2",r.cancelButtonClass])},[e.withDirectives(e.createVNode(n,{class:"full-width","data-cy":`btnCancel-${t.entity}`,disable:r.isCancelButtonDisabled,label:s.cancelButtonLabel,outline:"",type:"button",onClick:r.cancel},null,8,["data-cy","disable","label","onClick"]),[[m,t.dialog]])],2)):e.createCommentVNode("v-if",!0),s.useSubmitButton?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["col-12 col-sm-2",r.submitButtonClass])},[e.createVNode(n,{class:"full-width","data-cy":`btnSave-${t.entity}`,disable:s.disable,label:s.submitButtonLabel,loading:a.isSubmitting,type:"submit"},null,8,["data-cy","disable","label","loading"])],2)):e.createCommentVNode("v-if",!0)])])):e.createCommentVNode("v-if",!0)])),_:3},8,["onSubmit"]),t.mx_hasFooterSlot?(e.openBlock(),e.createElementBlock("footer",_t,[e.renderSlot(t.$slots,"footer")])):e.createCommentVNode("v-if",!0),e.createVNode(d,e.mergeProps({modelValue:a.showDialog,"onUpdate:modelValue":o[0]||(o[0]=e=>a.showDialog=e)},a.defaultDialogProps),null,16,["modelValue"]),e.createVNode(u,{showing:t.mx_isFetching},{default:e.withCtx((()=>[e.createVNode(c,{color:"grey",size:"3em"})])),_:1},8,["showing"])])),_:3},8,["class"])},Bt.__file="src/components/form-view/QasFormView.vue";var Nt={name:"QasGallery",props:{carouselNextIcon:{type:String,default:"o_chevron_right"},carouselPreviousIcon:{type:String,default:"o_chevron_left"},height:{type:String,default:""},initialSize:{type:Number,default:6},images:{type:Array,default:()=>[]},loadSize:{type:Number,default:6},showMoreLabel:{type:String,default:"Ver mais"},useLoadAll:{type:Boolean}},data(){return{carouselDialog:!1,clonedImages:[],imageIndex:[],displayedImages:this.initialSize}},computed:{imageHeight(){return this.isSingleImage?this.height||"auto":this.$qas.screen.isSmall?"90px":"120px"},galleryColumnsClasses(){return this.isSingleImage?"col-12":this.$qas.screen.isSmall?"col-6":"col-2"},hideShowMore(){return this.clonedImages.length<=this.displayedImages||this.useLoadAll},carouselImageHeight:()=>"calc((500/976) * 100vh)",showThumbnails(){return!this.isSingleImage},isSingleImage(){return 1===this.clonedImages.length}},watch:{images:{handler(e){this.clonedImages=[...e]},immediate:!0}},methods:{toggleCarouselDialog(e){this.imageIndex=e,this.carouselDialog=!this.carouselDialog},showMore(){this.displayedImages+=this.loadSize},onError(e){const t=this.clonedImages.findIndex((t=>t===e));~t&&(this.clonedImages.splice(t,1),this.$forceUpdate())},initialImages(){return this.useLoadAll?this.clonedImages:this.clonedImages.slice(0,this.displayedImages)}}};const qt={class:"q-col-gutter-md row"},$t={key:0,class:"full-width text-center"},Et={class:"text-right"},Pt={key:0,class:"full-width justify-end row"};Nt.render=function(t,o,s,l,a,r){const n=e.resolveComponent("q-img"),i=e.resolveComponent("qas-btn"),d=e.resolveComponent("q-carousel-slide"),c=e.resolveComponent("q-carousel"),u=e.resolveComponent("qas-dialog"),m=e.resolveComponent("qas-box"),p=e.resolveDirective("close-popup");return e.openBlock(),e.createBlock(m,{class:"gallery"},{default:e.withCtx((()=>[e.createElementVNode("div",qt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.initialImages(),((t,o)=>(e.openBlock(),e.createElementBlock("div",{key:o,class:e.normalizeClass(r.galleryColumnsClasses)},[e.createVNode(n,{class:"cursor-pointer rounded-borders",height:r.imageHeight,src:t,onClick:e=>r.toggleCarouselDialog(o),onError:e=>r.onError(t)},null,8,["height","src","onClick","onError"])],2)))),128)),e.renderSlot(t.$slots,"default",{},(()=>[r.hideShowMore?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock("div",$t,[e.createVNode(i,{class:"text-weight-bolder",color:"primary",flat:"",onClick:r.showMore},{default:e.withCtx((()=>[e.createTextVNode(e.toDisplayString(s.showMoreLabel),1)])),_:1},8,["onClick"])]))])),e.createVNode(u,{modelValue:a.carouselDialog,"onUpdate:modelValue":o[1]||(o[1]=e=>a.carouselDialog=e),cancel:!1,class:"q-pa-xl","min-width":"1100px",ok:!1,persistent:!1},{header:e.withCtx((()=>[e.createElementVNode("div",Et,[e.withDirectives(e.createVNode(i,{dense:"",flat:"",icon:"o_close",rounded:"",onClick:r.toggleCarouselDialog},null,8,["onClick"]),[[p]])])])),description:e.withCtx((()=>[e.createVNode(c,{modelValue:a.imageIndex,"onUpdate:modelValue":o[0]||(o[0]=e=>a.imageIndex=e),animated:"",arrows:!t.$qas.screen.isSmall,"control-text-color":"primary",fullscreen:t.$qas.screen.isSmall,height:r.carouselImageHeight,"next-icon":s.carouselNextIcon,"prev-icon":s.carouselPreviousIcon,swipeable:"",thumbnails:r.showThumbnails},{default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.clonedImages,((o,s)=>(e.openBlock(),e.createBlock(d,{key:s,class:"bg-no-repeat bg-size-contain","img-src":o,name:s},{default:e.withCtx((()=>[t.$qas.screen.isSmall?(e.openBlock(),e.createElementBlock("div",Pt,[e.createVNode(i,{dense:"",flat:"",icon:"o_close",onClick:r.toggleCarouselDialog},null,8,["onClick"])])):e.createCommentVNode("v-if",!0)])),_:2},1032,["img-src","name"])))),128))])),_:1},8,["modelValue","arrows","fullscreen","height","next-icon","prev-icon","thumbnails"])])),_:1},8,["modelValue"])])])),_:3})},Nt.__file="src/components/gallery/QasGallery.vue";var Dt={name:"QasGridGenerator",mixins:[Ct],props:{contentClass:{default:"",type:[Array,Object,String]},headerClass:{default:"text-bold",type:[Array,Object,String]},hideEmptyResult:{type:Boolean},emptyResultText:{default:"-",type:String},result:{default:()=>({}),type:Object}},data:()=>({slotValue:{}}),computed:{formattedFields(){if(!this.hideEmptyResult)return this.fields;const e={};for(const t in this.fields){const o=this.result[t];(Array.isArray(o)?o.length:a.isObject(o)?Object.keys(o).length:o)&&(e[t]=this.fields[t])}return e},resultsByFields(){return this.getResultsByFields()}},methods:{getResultsByFields(){const e={},t=l.extend(!0,{},this.result);for(const o in t)this.formattedFields[o]?.type&&(e[o]=L(this.formattedFields[o],t[o])||this.emptyResultText,this.slotValue[o]={...this.formattedFields[o],formattedResult:e[o]});return e}}};Dt.render=function(t,o,s,l,a,r){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.mx_classes)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.formattedFields,((o,l)=>(e.openBlock(),e.createElementBlock("div",{key:l,class:e.normalizeClass(t.mx_getFieldClass(l,!0))},[e.renderSlot(t.$slots,`field-${o.name}`,{field:a.slotValue[l]},(()=>[e.renderSlot(t.$slots,"header",{field:a.slotValue[l]},(()=>[e.createElementVNode("header",{class:e.normalizeClass(s.headerClass)},e.toDisplayString(o.label),3)])),e.renderSlot(t.$slots,"content",{field:a.slotValue[l]},(()=>[e.createElementVNode("div",{class:e.normalizeClass(s.contentClass)},e.toDisplayString(r.resultsByFields[l]),3)]))]))],2)))),128))],2)},Dt.__file="src/components/grid-generator/QasGridGenerator.vue";var Qt={name:"QasLabel",props:{count:{default:0,type:[Number,String]},label:{default:"",type:String},margin:{default:"sm",type:String}},computed:{labelClass(){return`q-mb-${this.margin}`},labelWithSuffix(){return e=this.label,(t=parseFloat(this.count))?`${e} (${t})`:e;var e,t}}};Qt.render=function(t,o,s,l,a,r){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["text-bold text-subtitle2",r.labelClass])},[e.renderSlot(t.$slots,"default",{labelWithSuffix:r.labelWithSuffix},(()=>[e.createTextVNode(e.toDisplayString(r.labelWithSuffix),1)]))],2)},Qt.__file="src/components/label/QasLabel.vue";var Lt={name:"QasLayout",components:{QasAppBar:T,QasAppMenu:ae},props:{appBarProps:{default:()=>({}),type:Object},appMenuProps:{default:()=>({}),type:Object},modelValue:{default:!0,type:Boolean}},emits:["update:modelValue"],data:()=>({menuDrawer:!0}),computed:{defaultAppMenuProps(){return{...this.appMenuProps,title:this.appBarProps?.title}}},watch:{modelValue:{handler(e){this.menuDrawer=e},immediate:!0}},methods:{toggleMenuDrawer(){this.menuDrawer=!this.menuDrawer,this.$emit("update:modelValue",this.menuDrawer)}}};Lt.render=function(t,o,s,l,a,r){const n=e.resolveComponent("qas-app-bar"),i=e.resolveComponent("qas-app-menu"),d=e.resolveComponent("router-view"),c=e.resolveComponent("q-page-container"),u=e.resolveComponent("q-layout");return e.openBlock(),e.createBlock(u,{view:"hHh Lpr lFf"},{default:e.withCtx((()=>[e.renderSlot(t.$slots,"app-bar",{},(()=>[e.createVNode(n,e.mergeProps(s.appBarProps,{onToggleMenu:r.toggleMenuDrawer}),null,16,["onToggleMenu"])])),e.renderSlot(t.$slots,"app-menu",{},(()=>[e.createVNode(i,e.mergeProps({modelValue:a.menuDrawer,"onUpdate:modelValue":o[0]||(o[0]=e=>a.menuDrawer=e)},r.defaultAppMenuProps),null,16,["modelValue"])])),e.renderSlot(t.$slots,"default",{},(()=>[e.createVNode(c,null,{default:e.withCtx((()=>[e.createVNode(d)])),_:1})]))])),_:3})},Lt.__file="src/components/layout/QasLayout.vue";var Ot={name:"QasListItems",components:{QasBtn:V},props:{iconProps:{default:()=>({color:"primary",name:"o_chevron_right"}),type:Object},list:{default:()=>[],type:Array},redirectKey:{default:"uuid",type:String},redirectOnIcon:{default:!0,type:Boolean},to:{default:()=>({}),type:Object},useSectionActions:{default:!0,type:Boolean}},methods:{getRedirectPayload(e){return{params:{[this.redirectKey]:e[this.redirectKey]},...this.to}},redirect(e){return this.redirectOnIcon?void 0:this.getRedirectPayload(e)}}};const Ft={class:"qas-list-items shadow-14"};Ot.render=function(t,o,s,l,a,r){const n=e.resolveComponent("q-item-section"),i=e.resolveComponent("q-icon"),d=e.resolveComponent("qas-btn"),c=e.resolveComponent("q-item"),u=e.resolveComponent("q-list"),m=e.resolveDirective("ripple");return e.openBlock(),e.createElementBlock("div",Ft,[e.createVNode(u,{bordered:"",class:"rounded-borders",separator:""},{default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.list,((o,l)=>e.withDirectives((e.openBlock(),e.createBlock(c,{key:l,clickable:!s.redirectOnIcon,to:r.redirect(o)},{default:e.withCtx((()=>[e.renderSlot(t.$slots,"item",{index:l,item:o},(()=>[e.createVNode(n,null,{default:e.withCtx((()=>[e.renderSlot(t.$slots,"item-section-left",{index:l,item:o})])),_:2},1024),s.useSectionActions?(e.openBlock(),e.createBlock(n,{key:0,side:""},{default:e.withCtx((()=>[e.renderSlot(t.$slots,"item-section-side",{index:l,item:o},(()=>[e.createVNode(d,{flat:"",round:"",to:r.getRedirectPayload(o)},{default:e.withCtx((()=>[e.createVNode(i,e.normalizeProps(e.guardReactiveProps(s.iconProps)),null,16)])),_:2},1032,["to"])]))])),_:2},1024)):e.createCommentVNode("v-if",!0)]))])),_:2},1032,["clickable","to"])),[[m]]))),128))])),_:3})])},Ot.__file="src/components/list-items/QasListItems.vue";var Mt={components:{QasFilters:mt},mixins:[ut,Vt],props:{disableRefresh:{type:Boolean},useFilter:{default:!0,type:Boolean},filtersProps:{default:()=>({}),type:Object},results:{default:()=>[],type:Array}},emits:["fetch-success","fetch-error","update:errors","update:results"],data:()=>({page:1}),computed:{hasHeaderSlot(){return!!this.$slots.header},hasPages(){return this.totalPages>1},hasResults(){return!!(this.resultsModel||[]).length},resultsModel(){return this.$store.getters[`${this.entity}/list`]},totalPages(){return this.$store.getters[`${this.entity}/totalPages`]}},watch:{$route(e,t){e.name===t.name&&(this.fetchList(),this.setCurrentPage())},resultsModel:{handler(e){this.$emit("update:results",l.extend([],!0,e))},deep:!0,immediate:!0}},created(){this.fetchList(),this.setCurrentPage()},methods:{changePage(){const e={...this.$route.query,page:this.page};this.$router.push({query:e})},async fetchList(e={}){this.mx_isFetching=!0;const t=!!Object.keys(e).length;try{const o=await this.$store.dispatch(`${this.entity}/fetchList`,{...this.mx_context,url:this.url,...t&&{filters:e}}),{errors:s,fields:l,metadata:a}=o.data;this.mx_setErrors(s),this.mx_setFields(l),this.mx_setMetadata(a),this.mx_updateModels({errors:this.mx_errors,fields:this.mx_fields,metadata:this.mx_metadata}),this.$emit("fetch-success",o)}catch(e){this.mx_fetchError(e),this.$emit("update:errors",e),this.$emit("fetch-error",e)}finally{this.mx_isFetching=!1}},async refresh(e){await this.fetchList(),"function"==typeof e&&e()},setCurrentPage(){this.page=parseInt(this.$route.query.page||1)}}};const It={key:0},Rt={class:"relative-position"},zt={key:0},At={key:1},jt={class:"q-my-xl text-center"},Tt=e.createElementVNode("div",{class:"text-grey-7"},"Nenhum item encontrado.",-1),Ut={key:2,class:"q-py-lg text-center"},Gt={key:3,class:"justify-center q-mt-lg"};Mt.render=function(t,o,s,l,a,r){const n=e.resolveComponent("qas-filters"),i=e.resolveComponent("q-icon"),d=e.resolveComponent("q-spinner"),c=e.resolveComponent("q-pagination"),u=e.resolveComponent("q-inner-loading"),m=e.resolveComponent("q-pull-to-refresh");return e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.mx_componentTag),{class:e.normalizeClass(t.mx_componentClass)},{default:e.withCtx((()=>[e.createVNode(m,{disable:s.disableRefresh,onRefresh:r.refresh},{default:e.withCtx((()=>[r.hasHeaderSlot?(e.openBlock(),e.createElementBlock("header",It,[e.renderSlot(t.$slots,"header")])):e.createCommentVNode("v-if",!0),s.useFilter?e.renderSlot(t.$slots,"filter",{key:1},(()=>[e.createVNode(n,e.mergeProps(s.filtersProps,{entity:t.entity}),null,16,["entity"])])):e.createCommentVNode("v-if",!0),e.createElementVNode("main",Rt,[r.hasResults?(e.openBlock(),e.createElementBlock("div",zt,[e.renderSlot(t.$slots,"default")])):t.mx_isFetching?(e.openBlock(),e.createElementBlock("div",Ut,[e.createVNode(d,{color:"grey",size:"3em"})])):(e.openBlock(),e.createElementBlock("div",At,[e.renderSlot(t.$slots,"empty-results",{},(()=>[e.createElementVNode("div",jt,[e.createVNode(i,{class:"q-mb-sm text-center",color:"grey-7",name:"o_search",size:"38px"}),Tt])]))])),r.hasPages?(e.openBlock(),e.createElementBlock("div",Gt,[e.createVNode(c,{modelValue:a.page,"onUpdate:modelValue":o[0]||(o[0]=e=>a.page=e),"boundary-links":"",class:"flex-center","direction-links":"",input:t.$q.screen.lt.sm,max:r.totalPages,"max-pages":6,onClick:r.changePage},null,8,["modelValue","input","max","onClick"])])):e.createCommentVNode("v-if",!0),e.createVNode(u,{showing:r.hasResults&&t.mx_isFetching},{default:e.withCtx((()=>[e.createVNode(d,{color:"grey",size:"3em"})])),_:1},8,["showing"])])])),_:3},8,["disable","onRefresh"]),e.renderSlot(t.$slots,"footer")])),_:3},8,["class"])},Mt.__file="src/components/list-view/QasListView.vue";var Ht={name:"QasMap",props:{centerPosition:{type:Object,default:()=>({})},markers:{type:Array,default:()=>[]},usePopup:{type:Boolean},zoom:{type:Number,default:17}},emits:["update-position"],data:()=>({isPopupDisplayed:!1,currentPlace:null,indexMarker:null}),methods:{openPopup({title:e,description:t},o){this.indexMarker=o,this.isPopupDisplayed=!(!e&&!t)},canShowPopup(e){return this.isPopupDisplayed&&this.usePopup&&e===this.indexMarker},closePopup(){this.isPopupDisplayed=!1},updatePosition(e){this.$emit("update-position",e.latLng.toJSON())}}};const Kt={class:"qas-map"},Wt={class:"text-weight-bold"};Ht.render=function(t,o,s,l,a,r){const n=e.resolveComponent("g-map-info-window"),i=e.resolveComponent("g-map-marker"),d=e.resolveComponent("g-map-map");return e.openBlock(),e.createElementBlock("div",Kt,[e.createVNode(d,{center:s.centerPosition,class:"qas-map__draw",zoom:s.zoom},{default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.markers,((t,o)=>(e.openBlock(),e.createBlock(i,{key:o,draggable:t.draggable,icon:t.icon,position:t.position,onDragend:r.updatePosition,onMouseout:r.closePopup,onMouseover:e=>r.openPopup(t,o)},{default:e.withCtx((()=>[e.createVNode(n,{opened:r.canShowPopup(o)},{default:e.withCtx((()=>[e.createElementVNode("div",Wt,e.toDisplayString(t.title),1),e.createElementVNode("div",null,e.toDisplayString(t.description),1)])),_:2},1032,["opened"])])),_:2},1032,["draggable","icon","position","onDragend","onMouseout","onMouseover"])))),128))])),_:1},8,["center","zoom"])])},Ht.__file="src/components/map/QasMap.vue";var Yt={name:"QasNestedFields",components:{QasBtn:V,QasFormGenerator:xt,QasInput:Fe,QasLabel:Qt,TransitionGroup:e.TransitionGroup},props:{addInputLabel:{type:String,default:"Inserir novo campo"},btnDestroyProps:{type:Object,default:()=>({label:"Remover",icon:"o_cancel",flat:!0,dense:!0})},btnDuplicateProps:{type:Object,default:()=>({label:"Duplicar",icon:"o_content_copy",flat:!0,hideMobileLabel:!0,dense:!0})},destroyKey:{type:String,default:"destroyed"},errors:{type:[Array,Object],default:()=>({})},field:{type:Object,default:()=>({})},fieldsProps:{type:Object,default:()=>({})},formColumns:{type:Object,default:()=>({})},formGutter:{type:String,default:"md",validator:e=>["xs","sm","md","lg","xl"].includes(e)},rowLabel:{type:String,default:""},rowObject:{type:Object,default:()=>({})},useAnimation:{type:Boolean,default:!0},useDestroyAlways:{type:Boolean},useDuplicate:{type:Boolean,default:!0},useIndexLabel:{type:Boolean},useInlineActions:{type:Boolean},useSingleLabel:{type:Boolean},useRemoveOnDestroy:{type:Boolean,default:!0},modelValue:{type:Array,default:()=>[]}},emits:["update:modelValue"],data:()=>({nested:[]}),computed:{fieldLabel(){return this.field?.label},fieldName(){return this.field?.name},children(){const e=l.extend(!0,{},this.field);for(const o in e?.children)e.children[o].name=t.camelize(e?.children[o].name);return e?.children},showDestroyBtn(){return this.nested.filter((e=>!e[this.destroyKey])).length>1||this.useDestroyAlways},formClasses(){return{col:!0,[`q-col-gutter-x-${this.formGutter}`]:this.useInlineActions}},transformedErrors(){return Array.isArray(this.errors)?this.errors:N(this.fieldName,this.errors)},componentTag(){return this.useAnimation?"transition-group":"div"},componentProps(){return this.useAnimation?{tag:"div",enterActiveClass:"animated slideInDown",leaveActiveClass:"animated slideOutUp"}:{}}},watch:{modelValue:{handler(e){this.nested=l.extend(!0,[],e)},immediate:!0},field:{handler(){!this.modelValue.length&&this.setDefaultNestedValue()},immediate:!0}},methods:{add(e={}){return this.nested.push({...this.rowObject,...e}),this.$nextTick((()=>{this.useAnimation&&this.setScroll(),this.setFocus()})),this.updateModelValue()},setFocus(){const{formGenerator:e}=this.$refs,t=e.pop().querySelector("input, select, textarea");return t?.focus&&t.focus()},updateModelValue(e){return this.$emit("update:modelValue",e||this.nested)},destroy(e,t){return this.useRemoveOnDestroy?this.nested.splice(e,1):this.nested.splice(e,1,{[this.destroyKey]:!0,...t}),this.updateModelValue()},updateValuesFromInput(e,t){return this.nested.splice(t,1,e),this.updateModelValue(null,t)},setDefaultNestedValue(){this.nested.splice(0,0,{...this.rowObject})},setScroll(){const e=this.$refs.inputContent.children,t=e[e.length-1],{top:o}=t.getBoundingClientRect(),s=window.pageYOffset;window.scrollTo({behavior:"smooth",top:s+o})},setRowLabel(e){return this.rowLabel?this.useIndexLabel?`${this.rowLabel} ${e+1}`:this.rowLabel:this.fieldLabel}}};const Jt=["id"],Xt={class:"text-left"},Zt={ref:"inputContent"},eo=["id"],to={class:"flex items-center justify-between q-py-xs"},oo={key:1,class:"q-gutter-x-sm"},so={key:0,class:"flex items-center qas-nested-fields__actions"},lo={class:"col-auto"},ao={class:"col-auto"},ro={class:"col-12"},no={class:"q-mt-md"},io={class:"col"},co={class:"col-auto"},uo={key:1,class:"q-mt-lg"};Yt.render=function(t,o,s,l,a,r){const n=e.resolveComponent("qas-label"),i=e.resolveComponent("qas-btn"),d=e.resolveComponent("qas-form-generator"),c=e.resolveComponent("qas-input");return e.openBlock(),e.createElementBlock("div",{id:r.fieldName,class:"qas-nested-fields"},[e.createElementVNode("div",Xt,[s.useSingleLabel?(e.openBlock(),e.createBlock(n,{key:0,label:r.fieldLabel},null,8,["label"])):e.createCommentVNode("v-if",!0)]),e.createElementVNode("div",Zt,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.componentTag),e.normalizeProps(e.guardReactiveProps(r.componentProps)),{default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.nested,((o,l)=>(e.openBlock(),e.createElementBlock("div",{id:`row-${l}`,key:`row-${l}`,class:"full-width"},[o[s.destroyKey]?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock("div",{key:l,class:"col-12 q-mt-md"},[e.createElementVNode("div",null,[e.createElementVNode("div",to,[s.useSingleLabel?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createBlock(n,{key:0,label:r.setRowLabel(l)},null,8,["label"])),s.useInlineActions?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock("div",oo,[s.useDuplicate?(e.openBlock(),e.createBlock(i,e.mergeProps({key:0},s.btnDuplicateProps,{onClick:e=>r.add(o)}),null,16,["onClick"])):e.createCommentVNode("v-if",!0),r.showDestroyBtn?(e.openBlock(),e.createBlock(i,e.mergeProps({key:1},s.btnDestroyProps,{onClick:e=>r.destroy(l,o)}),null,16,["onClick"])):e.createCommentVNode("v-if",!0)]))]),e.createElementVNode("div",{ref_for:!0,ref:"formGenerator",class:"col-12 justify-between q-col-gutter-x-md row"},[e.renderSlot(t.$slots,"fields",{errors:r.transformedErrors,fields:r.children,index:l,updateValue:r.updateValuesFromInput},(()=>[e.createVNode(d,{modelValue:a.nested[l],"onUpdate:modelValue":[e=>a.nested[l]=e,e=>r.updateValuesFromInput(e,l)],class:e.normalizeClass(r.formClasses),columns:s.formColumns,errors:r.transformedErrors[l],fields:r.children,"fields-props":s.fieldsProps},e.createSlots({_:2},[e.renderList(t.$slots,((o,s)=>({name:s,fn:e.withCtx((o=>[e.renderSlot(t.$slots,s,e.mergeProps(o,{errors:r.transformedErrors,index:l}))]))})))]),1032,["modelValue","onUpdate:modelValue","class","columns","errors","fields","fields-props"])])),s.useInlineActions?(e.openBlock(),e.createElementBlock("div",so,[e.createElementVNode("div",lo,[s.useDuplicate?(e.openBlock(),e.createBlock(i,{key:0,color:"primary",flat:"",icon:"o_content_copy",round:"",onClick:e=>r.add(o)},null,8,["onClick"])):e.createCommentVNode("v-if",!0)]),e.createElementVNode("div",ao,[r.showDestroyBtn?(e.openBlock(),e.createBlock(i,{key:0,color:"negative",flat:"",icon:"o_cancel",round:"",onClick:e=>r.destroy(l,o)},null,8,["onClick"])):e.createCommentVNode("v-if",!0)])])):e.createCommentVNode("v-if",!0)],512),e.createElementVNode("div",ro,[e.renderSlot(t.$slots,"custom-fields",{fields:r.children,index:l,model:a.nested[l],updateValue:r.updateValuesFromInput})])])]))],8,eo)))),128))])),_:3},16)),e.createElementVNode("div",no,[e.renderSlot(t.$slots,"add-input",{add:r.add},(()=>[s.useInlineActions?(e.openBlock(),e.createElementBlock("div",{key:0,class:"cursor-pointer items-center q-col-gutter-x-md q-mt-md row",onClick:o[1]||(o[1]=e=>r.add())},[e.createElementVNode("div",io,[e.createVNode(c,{class:"disabled no-pointer-events","hide-bottom-space":"",label:s.addInputLabel,outlined:"",onFocus:o[0]||(o[0]=e=>r.add())},null,8,["label"])]),e.createElementVNode("div",co,[e.createVNode(i,{color:"green",flat:"",icon:"o_add_circle_outline",round:""})])])):(e.openBlock(),e.createElementBlock("div",uo,[e.createVNode(i,{class:"full-width q-py-md",icon:"o_add",outline:"",onClick:o[2]||(o[2]=e=>r.add())},{default:e.withCtx((()=>[e.createTextVNode(e.toDisplayString(s.addInputLabel),1)])),_:1})]))]))])],512)],8,Jt)},Yt.__file="src/components/nested-fields/QasNestedFields.vue";const{hasPreviousRoute:mo,history:po,getPreviousRoute:ho}=Qe();var fo={name:"QasPageHeader",props:{breadcrumbs:{default:"",type:[Array,String]},useBreadcrumbs:{default:!0,type:Boolean},root:{default:"",type:[Object,String]},title:{default:"",type:String}},computed:{hasPreviousRoute:()=>mo.value,transformedBreadcrumbs(){const e=[...a.castArray(this.breadcrumbs||this.title)];return this.root&&e.unshift(this.root),e.map((e=>{if(e&&"string"==typeof e)return{label:e};!e.route&&e.routeName&&(e.route={name:e.routeName});const t=po.list;if(t.length&&e?.route?.name){const o=t.find((t=>t.name===e.route.name));e.route.query=o?o.query:null}return e}))}},methods:{back(){this.$router.push(ho(this.$route))},getBreadcrumbsClass(e){return this.transformedBreadcrumbs.length-1===e?"text-grey-7":"text-primary"}},meta(){return{title:this.title}}};const go={class:"ellipsis"};fo.render=function(t,o,s,l,a,r){const n=e.resolveComponent("q-icon"),i=e.resolveComponent("q-toolbar-title"),d=e.resolveComponent("q-breadcrumbs-el"),c=e.resolveComponent("q-breadcrumbs"),u=e.resolveComponent("q-toolbar");return e.openBlock(),e.createBlock(u,{class:"justify-between q-mb-lg q-px-none"},{default:e.withCtx((()=>[e.createElementVNode("div",go,[s.title?(e.openBlock(),e.createBlock(i,{key:0,class:"text-bold text-h5"},{default:e.withCtx((()=>[r.hasPreviousRoute?(e.openBlock(),e.createBlock(n,{key:0,class:"cursor-pointer vertical-baseline",name:"o_arrow_back",size:"18px",onClick:r.back},null,8,["onClick"])):e.createCommentVNode("v-if",!0),e.createTextVNode(" "+e.toDisplayString(s.title),1)])),_:1})):e.createCommentVNode("v-if",!0),s.useBreadcrumbs?(e.openBlock(),e.createBlock(c,{key:1,class:"text-caption","separator-color":"grey-7"},{default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.transformedBreadcrumbs,((t,o)=>(e.openBlock(),e.createBlock(d,{key:t.label,class:e.normalizeClass(r.getBreadcrumbsClass(o)),label:t.label,to:t.route},null,8,["class","label","to"])))),128))])),_:1})):e.createCommentVNode("v-if",!0)]),e.renderSlot(t.$slots,"default")])),_:3})},fo.__file="src/components/page-header/QasPageHeader.vue";var yo={name:"QasProfile",components:{QasAvatar:j,QasBox:ue,QasGridGenerator:Dt},props:{columns:{type:Object,default:()=>({})},fields:{type:Object,default:()=>({})},list:{type:Array,default:()=>[]},result:{type:Object,default:()=>({})},subtitle:{type:String,default:""},tag:{type:String,default:"qas-box"},title:{type:String,default:"",required:!0}},computed:{directionClasses(){return this.$qas.screen.untilMedium?"col":"row items-center"},userAvatarImage(){return this.result.image},avatarSize(){return this.$qas.screen.isSmall?"145px":"188px"}},methods:{filterObject:function(e={},t){if(!t.length)return e;if(!Object.keys(e).length)return{};if(!Object.keys(e).length)return{};const o={};return t.forEach((t=>{e[t]&&(o[t]=e[t])})),o}}};const vo={class:"q-col-gutter-md row"},bo={class:"col-lg-5 col-xs-12"},ko={class:"justify-center lg:q-mb-none md:q-mr-lg row xs:q-mb-md"},Co={class:"text-bold text-h6"},xo={key:0};yo.render=function(t,o,s,l,a,r){const n=e.resolveComponent("qas-avatar"),i=e.resolveComponent("qas-grid-generator");return e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.tag),null,{default:e.withCtx((()=>[e.createElementVNode("div",vo,[e.createElementVNode("div",bo,[e.createElementVNode("div",{class:e.normalizeClass(["no-wrap q-col-gutter-md",r.directionClasses])},[e.createElementVNode("div",ko,[e.createVNode(n,{image:r.userAvatarImage,size:r.avatarSize,title:s.title},null,8,["image","size","title"])]),e.renderSlot(t.$slots,"default",{},(()=>[e.createElementVNode("h6",Co,e.toDisplayString(s.title),1),s.subtitle?(e.openBlock(),e.createElementBlock("div",xo,e.toDisplayString(s.subtitle),1)):e.createCommentVNode("v-if",!0)]))],2)]),e.renderSlot(t.$slots,"grid",{},(()=>[e.createVNode(i,{class:"col-lg-7 col-xs-12 items-center",columns:s.columns,fields:r.filterObject(s.fields,s.list),"hide-empty-result":"",result:s.result},e.createSlots({_:2},[e.renderList(t.$slots,((o,s)=>({name:s,fn:e.withCtx((o=>[e.renderSlot(t.$slots,s,e.normalizeProps(e.guardReactiveProps(o||{})))]))})))]),1032,["columns","fields","result"])]))])])),_:3})},yo.__file="src/components/profile/QasProfile.vue";var Vo={name:"QasResizer",props:{size:{default:"",type:String},source:{required:!0,type:String},resize:{default:"cover",type:String,validator:e=>["cover","contain","fill","inside","outside"].includes(e)}},computed:{height(){return this.$attrs.height||this.imageSize.height},imageParameters(){const e={bucket:process.env.BUCKET,key:this.source,edits:{}};return(this.height||this.width)&&(e.edits.resize={fit:this.resize,height:this.height,width:this.width}),e},imageSize(){const[e,t]=this.size.split("x");return{height:t,width:e}},imageSource(){return"https://image-resize.nave.dev/"+btoa(JSON.stringify(this.imageParameters))},ratio(){if(!this.height||!this.width)return;if(this.height===this.width)return 1;const e=parseInt(this.height),t=parseInt(this.width),o=function(e,t){if("number"!=typeof e||"number"!=typeof t)throw new Error("Arguments need to be a number.");for(e=Math.abs(e),t=Math.abs(t);t;){const o=t;t=e%t,e=o}return e}(e,t);return t/o/(e/o)},width(){return this.$attrs.width||this.imageSize.width}}};const Bo=e.createElementVNode("div",{class:"absolute-full bg-grey-2 flex flex-center text-grey"},"⚠︎",-1);Vo.render=function(t,o,s,l,a,r){const n=e.resolveComponent("q-img");return e.openBlock(),e.createBlock(n,{ratio:r.ratio,"spinner-color":"grey-7",src:r.imageSource},{error:e.withCtx((()=>[Bo])),_:1},8,["ratio","src"])},Vo.__file="src/components/resizer/QasResizer.vue";var wo={name:"QasSearchBox",components:{QasBox:ue},props:{emptyListHeight:{default:"100px",type:String},fuseOptions:{default:()=>({}),type:Object},height:{default:"300px",type:String},list:{default:()=>[],type:Array},modelValue:{default:"",type:String},placeholder:{default:"Pesquisar",type:String},useEmptySlot:{default:!0,type:Boolean},results:{type:Array,default:()=>[]}},emits:["empty-result","update:modelValue","update:results"],data(){return{fuse:null,searchResults:this.list,search:""}},computed:{contentStyle(){return{height:this.list.length?this.height:this.emptyListHeight}},defaultFuseOptions(){return{threshold:.1,ignoreLocation:!0,...this.fuseOptions}},hasResults(){return!!this.searchResults.length}},watch:{defaultFuseOptions(e){this.fuse.options={...this.fuse.options,...e}},hasResults(e){!e&&this.$emit("empty-result")},list:{handler(e){this.fuse=new y.default(e,this.defaultFuseOptions),this.setResults(this.search),this.updateResultsModel(e)},deep:!0},search:{handler(e){this.setResults(e),this.$emit("update:modelValue",e)},immediate:!0},searchResults:{handler(e){this.updateResultsModel(e)},immediate:!0}},created(){this.search=this.modelValue,this.fuse=new y.default(this.list,this.defaultFuseOptions),this.setResults()},methods:{setResults(e){this.searchResults=e?this.fuse.search(e):this.list},updateResultsModel(e){this.$emit("update:results",e.map((e=>e.item||e)))}}};const So={class:"absolute-center text-center"},_o=e.createElementVNode("div",null,"Não há resultados disponíveis.",-1);wo.render=function(t,o,s,l,a,r){const n=e.resolveComponent("q-icon"),i=e.resolveComponent("q-input"),d=e.resolveComponent("qas-box");return e.openBlock(),e.createBlock(d,null,{default:e.withCtx((()=>[e.createVNode(i,{modelValue:a.search,"onUpdate:modelValue":o[0]||(o[0]=e=>a.search=e),clearable:"",disable:!s.list.length,outlined:"",placeholder:s.placeholder},{append:e.withCtx((()=>[e.createVNode(n,{color:"primary",name:"o_search"})])),_:1},8,["modelValue","disable","placeholder"]),e.createElementVNode("div",{class:"overflow-auto q-mt-xs relative-position",style:e.normalizeStyle(r.contentStyle)},[r.hasResults?e.renderSlot(t.$slots,"default",{key:0}):s.useEmptySlot?e.renderSlot(t.$slots,"empty-result",{key:1},(()=>[e.createElementVNode("div",So,[e.createVNode(n,{class:"q-mb-sm text-center",color:"primary",name:"o_search",size:"38px"}),_o])])):e.createCommentVNode("v-if",!0)],4)])),_:3})},wo.__file="src/components/search-box/QasSearchBox.vue";var No={name:"QasSelect",props:{fuseOptions:{default:()=>({}),type:Object},labelKey:{default:"",type:String},modelValue:{default:()=>[],type:[Array,Object,String,Number]},noOptionLabel:{default:"Nenhum resultado foi encontrado.",type:String},options:{default:()=>[],type:Array},searchable:{type:Boolean},valueKey:{default:"",type:String}},emits:["update:modelValue"],data:()=>({filteredOptions:[],fuse:null}),computed:{attributes(){return{clearable:this.searchable,emitValue:!0,mapOptions:!0,outlined:!0,...this.$attrs,options:this.filteredOptions,useInput:this.searchable}},defaultFuseOptions(){return{ignoreLocation:!0,keys:["label","value"],threshold:.1,...this.fuseOptions}},formattedResult(){return this.labelKey||this.valueKey?this.options.map((e=>this.renameKey(e))):this.options},model:{get(){return this.modelValue},set(e){this.$emit("update:modelValue",e)}}},watch:{defaultFuseOptions(){this.setFuse()},options:{handler(){this.fuse&&(this.fuse.list=this.formattedResult),this.filteredOptions=this.formattedResult},immediate:!0}},created(){this.setFuse()},methods:{filterOptions(e,t){t((()=>{if(this.searchable)if(""===e)this.filteredOptions=this.formattedResult;else{const t=this.fuse.search(e);this.filteredOptions=t.map((e=>e.item))}}))},renameKey(e){const t={label:this.labelKey,value:this.valueKey};for(const o in t)e.hasOwnProperty.call(o)||(e[o]=e[t[o]],delete e[t[o]]);return e},setFuse(){this.searchable&&(this.fuse=new y.default(this.options,this.defaultFuseOptions))}}};No.render=function(t,o,s,l,a,r){const n=e.resolveComponent("q-icon"),i=e.resolveComponent("q-item-section"),d=e.resolveComponent("q-item"),c=e.resolveComponent("q-select");return e.openBlock(),e.createBlock(c,e.mergeProps({modelValue:r.model,"onUpdate:modelValue":o[0]||(o[0]=e=>r.model=e)},r.attributes,{onFilter:r.filterOptions}),e.createSlots({append:e.withCtx((()=>[e.renderSlot(t.$slots,"append",{},(()=>[s.searchable?(e.openBlock(),e.createBlock(n,{key:0,name:"o_search"})):e.createCommentVNode("v-if",!0)]))])),"no-option":e.withCtx((()=>[e.renderSlot(t.$slots,"no-option",{},(()=>[e.createVNode(d,null,{default:e.withCtx((()=>[e.createVNode(i,{class:"text-grey"},{default:e.withCtx((()=>[e.createTextVNode(e.toDisplayString(s.noOptionLabel),1)])),_:1})])),_:1})]))])),_:2},[e.renderList(t.$slots,((o,s)=>({name:s,fn:e.withCtx((o=>[e.renderSlot(t.$slots,s,e.normalizeProps(e.guardReactiveProps(o||{})))]))})))]),1040,["modelValue","onFilter"])},No.__file="src/components/select/QasSelect.vue";var qo={name:"QasSelectList",components:{QasBtn:V,QasSearchBox:wo},props:{deleteOnly:{type:Boolean},fuseOptions:{default:()=>({keys:["label"]}),type:Object},list:{default:()=>[],type:Array},modelValue:{type:Array,default:()=>[]},to:{default:()=>({}),type:Object},redirectKey:{default:"uuid",type:String},paramKey:{default:"id",type:String}},emits:["added","update:modelValue","removed"],data:()=>({sortedList:[],values:[],results:[]}),computed:{isRedirectEnabled(){return Object.keys(this.to).length},labelClass(){return this.isRedirectEnabled?"cursor-pointer":""},slotData(){return{add:this.add,handleClick:this.handleClick,remove:this.remove,updateModel:this.updateModel}}},watch:{list:{handler(e){this.sortedList.length||(this.sortedList=e)},immediate:!0},modelValue:{handler(e){this.values=[...e]},immediate:!0}},created(){this.handleList()},methods:{add(e){this.values.push(e.value),this.updateModel(),this.$emit("added",e)},getButtonProps({value:e}){const t=this.values.includes(e);return{dense:this.$qas.screen.isSmall,hideLabelOnSmallScreen:!0,icon:this.$qas.screen.isSmall?t?"o_close":"o_add":void 0,label:t?"Remover":"Adicionar",outline:t,size:"sm"}},handleClick(e){return this.values.includes(e.value)?this.remove(e):this.add(e)},handleList(){if(this.modelValue.length)return this.sortList();const e=this.$watch("modelValue",(()=>{this.sortedList.length||(this.sortList(),e())}))},redirectRoute(e){return this.isRedirectEnabled&&this.$router.push({params:{[this.paramKey]:e[this.redirectKey]},...this.to})},remove(e){const t=this.values.findIndex((t=>t===e.value));this.values.splice(t,1),this.updateModel(),this.$emit("removed",e,t)},sortList(){this.sortedList=this.deleteOnly?this.list.filter((e=>this.modelValue.includes(e.value))):a.sortBy(this.list,(e=>!this.modelValue.includes(e.value)))},updateModel(e){this.$emit("update:modelValue",e||this.values)}}};const $o=["onClick"];qo.render=function(t,o,s,l,a,r){const n=e.resolveComponent("q-item-section"),i=e.resolveComponent("qas-btn"),d=e.resolveComponent("q-item"),c=e.resolveComponent("q-list"),u=e.resolveComponent("qas-search-box");return e.openBlock(),e.createBlock(u,{results:a.results,"onUpdate:results":o[0]||(o[0]=e=>a.results=e),class:"q-pa-md","fuse-options":s.fuseOptions,list:a.sortedList},{default:e.withCtx((()=>[e.createVNode(c,{separator:""},{default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.results,(o=>(e.openBlock(),e.createBlock(d,{key:o.value},{default:e.withCtx((()=>[e.renderSlot(t.$slots,"item",e.mergeProps(r.slotData,{item:o}),(()=>[e.renderSlot(t.$slots,"item-section",{result:o},(()=>[e.createVNode(n,{class:"items-start text-bold"},{default:e.withCtx((()=>[e.createElementVNode("div",{class:e.normalizeClass(r.labelClass),onClick:e=>r.redirectRoute(o)},e.toDisplayString(o.label),11,$o)])),_:2},1024)])),e.createVNode(n,{avatar:""},{default:e.withCtx((()=>[e.renderSlot(t.$slots,"item-action",e.mergeProps({item:o},r.slotData),(()=>[e.createVNode(i,e.mergeProps(r.getButtonProps(o),{onClick:e=>r.handleClick(o)}),null,16,["onClick"])]))])),_:2},1024)]))])),_:2},1024)))),128))])),_:3})])),_:3},8,["results","fuse-options","list"])},qo.__file="src/components/select-list/QasSelectList.vue";var Eo={name:"QasSingleView",mixins:[Vt],props:{customId:{default:"",type:[Number,String]},result:{default:()=>({}),type:Object}},emits:["update:result","fetch-success","fetch-error"],computed:{hasResult(){return!!this.resultModel},id(){return this.customId||this.$route.params.id},resultModel(){return this.$store.getters[`${this.entity}/byId`](this.id)||{}}},watch:{$route(e,t){e.name===t.name&&this.fetchSingle()},resultModel(t){this.$emit("update:result",e.markRaw({...t}))}},created(){this.fetchSingle()},methods:{async fetchSingle(e={}){this.mx_isFetching=!0;try{const t=await this.$store.dispatch(`${this.entity}/fetchSingle`,{id:this.id,url:this.url,params:e}),{errors:o,fields:s,metadata:l}=t.data;this.mx_setErrors(o),this.mx_setFields(s),this.mx_setMetadata(l),this.mx_updateModels({errors:this.mx_errors,fields:this.mx_fields,metadata:this.mx_metadata}),this.$emit("fetch-success",t)}catch(e){this.mx_fetchError(e),this.$emit("fetch-error",e)}finally{this.mx_isFetching=!1}}}};const Po={key:0},Do={key:2,class:"q-my-xl text-center"},Qo=e.createElementVNode("div",{class:"text-grey-7"},"Nenhum item encontrado.",-1),Lo={key:3};Eo.render=function(t,o,s,l,a,r){const n=e.resolveComponent("q-icon"),i=e.resolveComponent("q-spinner"),d=e.resolveComponent("q-inner-loading");return e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.mx_componentTag),{class:e.normalizeClass(t.mx_componentClass)},{default:e.withCtx((()=>[t.mx_hasHeaderSlot?(e.openBlock(),e.createElementBlock("header",Po,[e.renderSlot(t.$slots,"header")])):e.createCommentVNode("v-if",!0),r.hasResult?e.renderSlot(t.$slots,"default",{key:1}):t.mx_isFetching?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock("div",Do,[e.createVNode(n,{class:"q-mb-sm text-center",color:"grey-7",name:"o_search",size:"38px"}),Qo])),t.mx_hasFooterSlot?(e.openBlock(),e.createElementBlock("footer",Lo,[e.renderSlot(t.$slots,"footer")])):e.createCommentVNode("v-if",!0),e.createVNode(d,{showing:t.mx_isFetching},{default:e.withCtx((()=>[e.createVNode(i,{color:"grey",size:"3em"})])),_:1},8,["showing"])])),_:3},8,["class"])},Eo.__file="src/components/single-view/QasSingleView.vue";var Oo={name:"QasSortable",props:{entity:{default:"",required:!0,type:String},sortableOptions:{default:()=>({animation:500}),type:Object},list:{default:()=>[],type:Array},tag:{default:"div",type:String},url:{default:"",type:String},sorted:{default:()=>[],type:Array}},emits:["update:sorted","sort","success","error"],data:()=>({sortable:null,sortedList:null}),computed:{identifiers(){return this.sortedList.map((({id:e})=>e))}},watch:{sortableOptions(e){this.sortable.options={...this.sortable.options,...e}},list(e){this.setSortedValue(e),this.sortable.sort(this.sortable.toArray())}},created(){this.setSortedValue()},async mounted(){this.sortable=new v.default(this.$refs.sortableItems,{...this.sortableOptions,onUpdate:e=>{this.updateOrder(e),this.$emit("sort",e)}})},unmounted(){this.sortable.destroy()},methods:{setError(e){const{response:t}=e,o=t?.data?.exception||e.message;$e("Ops! Erro ao salvar ordenação.",o)},async replace(){l.Loading.show();try{const e=await this.$store.dispatch(`${this.entity}/replace`,{payload:{order:this.identifiers},url:this.url||`${this.entity}/sort`});this.$emit("success",e)}catch(e){this.setError(e),this.$emit("error",e)}finally{l.Loading.hide()}},updateOrder({newIndex:e,oldIndex:t}){const o=this.sortedList.splice(t,1);this.sortedList.splice(e,0,o[0]),this.replace()},setSortedValue(e){this.sortedList=l.extend(!0,[],e||this.list),this.updateSortedModel()},updateSortedModel(){return this.$emit("update:sorted",this.sortedList)}}};Oo.render=function(t,o,s,l,a,r){return e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.tag),{ref:"sortableItems"},{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default")])),_:3},512)},Oo.__file="src/components/sortable/QasSortable.vue";var Fo={name:"QasTableGenerator",props:{columns:{default:()=>[],type:Array},fields:{default:()=>({}),type:[Array,Object]},results:{default:()=>[],required:!0,type:Array},rowKey:{default:"name",type:String},emptyResultText:{default:"-",type:String},useScrollOnGrab:{type:Boolean,default:!0}},data:()=>({scrollableElement:null,scrollOnGrab:{},elementToObserve:null,resizeObserver:null}),computed:{attributes(){return{columns:this.columnsByFields,rows:this.resultsByFields,flat:!0,hideBottom:!0,pagination:{rowsPerPage:0},rowKey:this.rowKey}},columnsByFields(){if(!this.hasFields)return this.columns.filter((e=>e instanceof Object));const e=[];function t(t){const{align:o,label:s,name:l}=t;e.push({align:o||"left",field:l,label:s,name:l,headerClasses:"text-primary"})}if(!this.columns.length){for(const e in this.fields)t(this.fields[e]);return e}return this.columns.forEach((e=>{e instanceof Object?t(e):this.fields[e]&&t(this.fields[e])})),e},hasBodySlot(){return!!this.$slots.body},hasTbodySlot(){return!!this.$slots.tbody},hasFields(){return Object.keys(this.fields).length},resultsByFields(){return l.extend(!0,[],this.results).map(((e,t)=>{for(const o in e)e.default=this.results[t],e[o]=L(this.fields[o],e[o])||this.emptyResultText;return e}))},rowsPerPage(){return this.results.length},tableClass(){return this.$qas.screen.isSmall&&"qas-table-generator--mobile"},hasScrollOnGrab(){return!!Object.keys(this.scrollOnGrab).length}},mounted(){this.useScrollOnGrab&&(this.setObserver(),window.addEventListener("resize",this.handleScrollOnGrab))},onUnmounted(){this.hasScrollOnGrab&&(this.destroyObserver(),this.scrollOnGrab.destroyEvents(),window.removeEventListener("resize",this.handleScrollOnGrab))},methods:{initializeScrollOnGrab(){if(this.hasScrollOnGrab)return;const e=this.getTableElementComponent().querySelector(".q-table__middle.scroll");this.scrollOnGrab=function(e){i();let t,o,s=!1;function l(l){s=!0,e.classList.add("active"),t=l.pageX-e.offsetLeft,o=e.scrollLeft}function a(){s=!1,e.classList.remove("active"),i()}function r(){s=!1,e.classList.remove("active"),i()}function n(l){if(!s)return;l.preventDefault(),i("grabbing");const a=3*(l.pageX-e.offsetLeft-t);e.scrollLeft=o-a}function i(t="grab"){e.style.cursor=t}return e.addEventListener("mousedown",l),e.addEventListener("mouseleave",a),e.addEventListener("mouseup",r),e.addEventListener("mousemove",n),{element:e,destroyEvents:function(){e.removeEventListener("mousedown",l),e.removeEventListener("mouseleave",a),e.removeEventListener("mouseup",r),e.removeEventListener("mousemove",n)}}}(e)},getTableElementComponent(){return this.$refs?.table?.$el},getTableElement(){return this.getTableElementComponent()?.querySelector("table")},getFullTableWidth(){return this.getTableElement()?.getBoundingClientRect?.()?.width},getContainerTableWidth(){const e=this.getTableElementComponent()?.querySelector(".q-table__middle");return e?.getBoundingClientRect?.()?.width},handleScrollOnGrab(){const e=this.getFullTableWidth(),t=this.getContainerTableWidth(),o=!!Object.keys(this.scrollOnGrab).length;e>t?this.initializeScrollOnGrab():o&&(this.scrollOnGrab.destroyEvents(),this.scrollOnGrab.element.style.cursor="auto",this.scrollOnGrab={})},setObserver(){this.elementToObserve=this.getTableElement(),this.resizeObserver=new ResizeObserver((e=>{e.forEach((()=>this.handleScrollOnGrab()))})),this.resizeObserver.observe(this.elementToObserve)},destroyObserver(){this.resizeObserver.unobserve(this.elementToObserve)}}};Fo.render=function(t,o,s,l,a,r){const n=e.resolveComponent("q-td"),i=e.resolveComponent("q-table"),d=e.resolveComponent("qas-box");return e.openBlock(),e.createBlock(d,{class:"q-mb-xl q-px-lg q-py-md"},{default:e.withCtx((()=>[e.createVNode(i,e.mergeProps({ref:"table",class:["bg-transparent qas-table-generator",r.tableClass]},r.attributes),e.createSlots({_:2},[e.renderList(t.$slots,((o,s)=>({name:s,fn:e.withCtx((o=>[r.hasBodySlot?e.renderSlot(t.$slots,"body",{key:0,props:o}):(e.openBlock(),e.createBlock(n,{key:s},{default:e.withCtx((()=>[e.renderSlot(t.$slots,s,e.normalizeProps(e.guardReactiveProps(o||{})))])),_:2},1024))]))})))]),1040,["class"])])),_:3})},Fo.__file="src/components/table-generator/QasTableGenerator.vue";var Mo={name:"QasTabsGenerator",props:{activeColor:{default:"primary",type:String},counterProps:{default:()=>({}),type:Object},counters:{default:()=>({}),type:Object},indicatorColor:{default:"primary",type:String},modelValue:{default:"",type:String},tabClass:{default:"text-primary",type:String},tabs:{default:()=>({}),required:!0,type:Object}},emits:["update:modelValue"],computed:{defaultCounterProps(){return{color:"negative",floating:!0,...this.counterProps}},formattedTabs(){const e=l.extend(!0,{},this.tabs);for(const t in e)"string"==typeof e[t]&&(e[t]={label:e[t],value:t});return e},model:{get(){return this.modelValue},set(e){this.$emit("update:modelValue",e)}}}};Mo.render=function(t,o,s,l,a,r){const n=e.resolveComponent("q-badge"),i=e.resolveComponent("q-tab"),d=e.resolveComponent("q-tabs");return e.openBlock(),e.createBlock(d,{modelValue:r.model,"onUpdate:modelValue":o[0]||(o[0]=e=>r.model=e),"active-color":s.activeColor,"indicator-color":s.indicatorColor,"outside-arrows":""},{default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.formattedTabs,((o,l)=>e.renderSlot(t.$slots,`tab-${o.value}`,{item:o},(()=>[(e.openBlock(),e.createBlock(i,e.mergeProps({key:l},o,{class:s.tabClass,label:o.label,name:l}),{default:e.withCtx((()=>[e.renderSlot(t.$slots,`tab-after-${o.value}`,{item:o},(()=>[s.counters[l]?(e.openBlock(),e.createBlock(n,e.mergeProps({key:0,label:s.counters[l]},r.defaultCounterProps),null,16,["label"])):e.createCommentVNode("v-if",!0)]))])),_:2},1040,["class","label","name"]))])))),256))])),_:3},8,["modelValue","active-color","indicator-color"])},Mo.__file="src/components/tabs-generator/QasTabsGenerator.vue";var Io={name:"QasTextTruncate",components:{QasDialog:we},props:{dialogProps:{type:Object,default:()=>({persistent:!1})},dialogTitle:{type:String,default:""},maxWidth:{type:Number,default:0},seeMoreLabel:{type:String,default:"Ver mais"},text:{type:String,default:""}},data:()=>({maxPossibleWidth:"",showDialog:!1,textWidth:""}),computed:{truncateTextClass(){return(this.isTruncated||this.$qas.screen.isSmall)&&"ellipsis q-pr-sm"},isTruncated(){return this.textWidth>this.maxPossibleWidth},headerClass(){return this.dialogTitle?"justify-between":"justify-end"},defaultDialogProps(){return{cancel:!1,ok:!1,useCloseIcon:!0,...this.dialogProps,card:{title:this.dialogTitle,description:this.text}}}},watch:{maxWidth(){this.truncateText()}},mounted(){this.truncateText()},methods:{truncateText(){this.$refs.parent.style.maxWidth="100%",this.textWidth=this.$refs.truncate.clientWidth,this.maxPossibleWidth=this.maxWidth||.9*this.$refs.truncate.parentElement.clientWidth,this.$refs.parent.style.maxWidth=`${this.maxPossibleWidth}px`},toggleDialog(){this.showDialog=!this.showDialog}}};const Ro={ref:"parent",class:"full-width"},zo={class:"justify-between no-wrap row text-no-wrap"};Io.render=function(t,o,s,l,a,r){const n=e.resolveComponent("qas-dialog");return e.openBlock(),e.createElementBlock("div",Ro,[e.createElementVNode("div",zo,[e.createElementVNode("div",{ref:"truncate",class:e.normalizeClass(r.truncateTextClass)},[e.renderSlot(t.$slots,"default",{},(()=>[e.createTextVNode(e.toDisplayString(s.text),1)]))],2),r.isTruncated?(e.openBlock(),e.createElementBlock("div",{key:0,class:"cursor-pointer text-primary",onClick:o[0]||(o[0]=(...e)=>r.toggleDialog&&r.toggleDialog(...e))},e.toDisplayString(s.seeMoreLabel),1)):e.createCommentVNode("v-if",!0)]),e.createVNode(n,e.mergeProps({modelValue:a.showDialog,"onUpdate:modelValue":o[1]||(o[1]=e=>a.showDialog=e)},r.defaultDialogProps),{description:e.withCtx((()=>[e.renderSlot(t.$slots,"default",{},(()=>[e.createElementVNode("div",null,e.toDisplayString(s.text),1)]))])),_:3},16,["modelValue"])],512)},Io.__file="src/components/text-truncate/QasTextTruncate.vue";var Ao={name:"QasTransfer",components:{QasBtn:V,QasLabel:Qt,QasSearchBox:wo},props:{emitValue:{type:Boolean},fuseOptions:{default:()=>({keys:["label"]}),type:Object},label:{default:"",required:!0,type:String},labelKey:{default:"label",type:String},modelValue:{default:()=>[],type:Array},options:{default:()=>[],type:Array},useEmptySlot:{default:!0,type:Boolean},valueKey:{default:"value",type:String}},emits:["update:modelValue"],data:()=>({firstQueue:[],optionsList:[],secondQueue:[],selectedList:[],firstResults:[],secondResults:[]}),computed:{actionsClass(){return!this.$qas.screen.isSmall&&"column"},gutterClass(){return"q-col-gutter-"+(this.$qas.screen.untilLarge?"md":"xl")},iconClass(){return!this.$qas.screen.isSmall&&"qas-transfer__icon"},searchBoxProps(){return{fuseOptions:this.fuseOptions,useEmptySlot:this.useEmptySlot}}},watch:{options:{handler(e){this.optionsList=l.extend(!0,[],e),this.setSelectedFromValue(!0)},immediate:!0},modelValue:{handler(){this.setSelectedFromValue(!0)},immediate:!0}},methods:{deleteItemsFromList(e){this[e?"firstQueue":"secondQueue"].forEach((t=>{const o=e?"optionsList":"selectedList",s=this[o].findIndex((e=>(e[this.valueKey]||e)===t[this.valueKey]));~s&&this[o].splice(s,1)}))},getItemClass(e,t){return this[t?"firstQueue":"secondQueue"].some((t=>t[this.valueKey]===e[this.valueKey]))&&"bg-secondary"},getItemLabel(e){return e?.[this.labelKey]},getModelValue(){const e=l.extend(!0,[],this.selectedList);return this.emitValue?e.map((e=>e[this.valueKey])):e},handleSelectedList(e){const t=e?"firstQueue":"secondQueue";this[e?"selectedList":"optionsList"].push(...this[t]),this.deleteItemsFromList(e),this[t]=[]},onSelectQueue(e,t){const o=t?"firstQueue":"secondQueue",s=this[o].findIndex((t=>t[this.valueKey]===e[this.valueKey]));~s?this[o].splice(s,1):this[o].push(e)},setSelectedFromClick(e){this.handleSelectedList(e),this.updateModelValue()},setSelectedFromValue(e){this.optionsList.length&&this.modelValue.forEach((e=>{const t=this.optionsList.find((t=>t[this.valueKey]===(this.emitValue?e:e[this.valueKey])));t&&this.firstQueue.push(l.extend(!0,{},t))})),this.handleSelectedList(e)},updateModelValue(){return this.$emit("update:modelValue",this.getModelValue())}}};const jo=e.createElementVNode("div",{class:"col-12"},null,-1),To={class:"col-12 col-sm"},Uo=e.createTextVNode("Selecionar"),Go=e.createTextVNode("Remover"),Ho={class:"col-12 col-sm"};Ao.render=function(t,o,s,l,a,r){const n=e.resolveComponent("qas-label"),i=e.resolveComponent("q-item-section"),d=e.resolveComponent("q-item"),c=e.resolveComponent("q-list"),u=e.resolveComponent("qas-search-box"),m=e.resolveComponent("qas-btn"),p=e.resolveComponent("q-tooltip");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["qas-transfer row",r.gutterClass])},[jo,e.createElementVNode("div",To,[e.createVNode(n,{label:s.label,quantity:a.optionsList.length},null,8,["label","quantity"]),e.createVNode(u,e.mergeProps({results:a.firstResults,"onUpdate:results":o[0]||(o[0]=e=>a.firstResults=e),list:a.optionsList,outlined:""},r.searchBoxProps),{default:e.withCtx((()=>[e.createVNode(c,{separator:""},{default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.firstResults,((o,s)=>(e.openBlock(),e.createBlock(d,{key:s,class:e.normalizeClass(r.getItemClass(o,!0)),clickable:"",onClick:e=>r.onSelectQueue(o,!0)},{default:e.withCtx((()=>[e.renderSlot(t.$slots,"item-first-column",{},(()=>[e.createVNode(i,null,{default:e.withCtx((()=>[e.createTextVNode(e.toDisplayString(r.getItemLabel(o)),1)])),_:2},1024)]))])),_:2},1032,["class","onClick"])))),128))])),_:3})])),_:3},16,["results","list"])]),e.createElementVNode("div",{class:e.normalizeClass(["col-12 col-sm-auto items-center justify-center q-col-gutter-md row",r.actionsClass])},[e.createElementVNode("div",null,[e.createVNode(m,{class:e.normalizeClass(r.iconClass),dense:"",disabled:!a.firstQueue.length,flat:"",icon:"o_arrow_circle_down",rounded:"",onClick:o[1]||(o[1]=e=>r.setSelectedFromClick(!0))},null,8,["class","disabled"]),e.createVNode(p,{anchor:"top middle",self:"center middle"},{default:e.withCtx((()=>[Uo])),_:1})]),e.createElementVNode("div",null,[e.createElementVNode("div",null,[e.createVNode(m,{class:e.normalizeClass(r.iconClass),dense:"",disabled:!a.secondQueue.length,flat:"",icon:"o_arrow_circle_up",rounded:"",onClick:o[2]||(o[2]=e=>r.setSelectedFromClick())},null,8,["class","disabled"]),e.createVNode(p,{anchor:"bottom middle",self:"center middle"},{default:e.withCtx((()=>[Go])),_:1})])])],2),e.createElementVNode("div",Ho,[e.createVNode(n,{label:"Selecionadas",quantity:a.selectedList.length},null,8,["quantity"]),e.createVNode(u,e.mergeProps({results:a.secondResults,"onUpdate:results":o[3]||(o[3]=e=>a.secondResults=e)},r.searchBoxProps,{"empty-list-height":"300px",label:"Selecionadas",list:a.selectedList,outlined:""}),{default:e.withCtx((()=>[e.createVNode(c,{separator:""},{default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.secondResults,((o,s)=>(e.openBlock(),e.createBlock(d,{key:s,class:e.normalizeClass(r.getItemClass(o)),clickable:"",onClick:e=>r.onSelectQueue(o)},{default:e.withCtx((()=>[e.renderSlot(t.$slots,"item-second-column",{},(()=>[e.createVNode(i,null,{default:e.withCtx((()=>[e.createTextVNode(e.toDisplayString(r.getItemLabel(o)),1)])),_:2},1024)]))])),_:2},1032,["class","onClick"])))),128))])),_:3})])),_:3},16,["results","list"])])],2)},Ao.__file="src/components/transfer/QasTransfer.vue";var Ko={name:"test",bind(e,{arg:t,value:o}){e&&t&&(e.dataset.test=t),e&&o&&(e.dataset.testKey=o)}};const Wo="3.0.0-beta.9";return Object.freeze({__proto__:null,version:Wo,QasActions:k,QasActionsMenu:B,QasAlert:R,QasAppBar:T,QasAppMenu:ae,QasAvatar:j,QasBox:ue,QasBreakline:I,QasBtn:V,QasCard:me,QasCheckboxGroup:ye,QasCopy:ve,QasDateTimeInput:ke,QasDebugger:Ce,QasDelete:Le,QasDialog:we,QasDialogRouter:Oe,QasField:ct,QasFilters:mt,QasFormGenerator:xt,QasFormView:Bt,QasGallery:Nt,QasGridGenerator:Dt,QasInput:Fe,QasLabel:Qt,QasLayout:Lt,QasListItems:Ot,QasListView:Mt,QasMap:Ht,QasNestedFields:Yt,QasNumericInput:Ie,QasPageHeader:fo,QasPasswordInput:Ue,QasPasswordStrengthChecker:je,QasProfile:yo,QasResizer:Vo,QasSearchBox:wo,QasSelect:No,QasSelectList:qo,QasSignaturePad:ot,QasSignatureUploader:at,QasSingleView:Eo,QasSortable:Oo,QasTableGenerator:Fo,QasTabsGenerator:Mo,QasTextTruncate:Io,QasTransfer:Ao,QasUploader:Ge,Dialog:qe,NotifyError:$e,NotifySuccess:Ee,Screen:Pe,install:function(e){e.component("QasActions",k),e.component("QasActionsMenu",B),e.component("QasAlert",R),e.component("QasAppBar",T),e.component("QasAppMenu",ae),e.component("QasAvatar",j),e.component("QasBox",ue),e.component("QasBreakline",I),e.component("QasBtn",V),e.component("QasCard",me),e.component("QasCheckboxGroup",ye),e.component("QasCopy",ve),e.component("QasDateTimeInput",ke),e.component("QasDebugger",Ce),e.component("QasDelete",Le),e.component("QasDialog",we),e.component("QasDialogRouter",Oe),e.component("QasField",ct),e.component("QasFilters",mt),e.component("QasFormGenerator",xt),e.component("QasFormView",Bt),e.component("QasGallery",Nt),e.component("QasGridGenerator",Dt),e.component("QasInput",Fe),e.component("QasLabel",Qt),e.component("QasLayout",Lt),e.component("QasListItems",Ot),e.component("QasListView",Mt),e.component("QasMap",Ht),e.component("QasNestedFields",Yt),e.component("QasNumericInput",Ie),e.component("QasPageHeader",fo),e.component("QasPasswordInput",Ue),e.component("QasPasswordStrengthChecker",je),e.component("QasProfile",yo),e.component("QasResizer",Vo),e.component("QasSearchBox",wo),e.component("QasSelect",No),e.component("QasSelectList",qo),e.component("QasSignaturePad",ot),e.component("QasSignatureUploader",at),e.component("QasSingleView",Eo),e.component("QasSortable",Oo),e.component("QasTableGenerator",Fo),e.component("QasTabsGenerator",Mo),e.component("QasTextTruncate",Io),e.component("QasTransfer",Ao),e.component("QasUploader",Ge),e.use(l.Quasar,{plugins:{Notify:l.Notify,QuasarDialog:l.Dialog,Dialog:qe}}),process.env.MAPS_API_KEY&&e.use(b.default,{load:{key:process.env.MAPS_API_KEY,libraries:"places"}}),e.config.globalProperties.$qas={dialog:qe,error:$e,success:Ee,screen:Pe()},e.directive(Ko.name,Ko)}})}));
|
|
6
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("vue"),require("humps"),require("date-fns"),require("date-fns/locale"),require("quasar"),require("lodash-es"),require("autonumeric"),require("pica"),require("signature_pad"),require("vue-router"),require("lodash"),require("fuse.js"),require("sortablejs"),require("@fawmi/vue-google-maps")):"function"==typeof define&&define.amd?define(["vue","humps","date-fns","date-fns/locale","quasar","lodash-es","autonumeric","pica","signature_pad","vue-router","lodash","fuse.js","sortablejs","@fawmi/vue-google-maps"],t):(e="undefined"!=typeof globalThis?globalThis:e||self)["{{ umdExportName }}"]=t(e.Vue,e.humps,e.dateFns,e.dateFnsLocale,e.Quasar,e._,e.AutoNumeric,e.Pica,e.SignaturePad,e.VueRouter,e.lodash,e.Fuse,e.Sortable,e.VueGoogleMaps)}(this,(function(e,t,s,o,l,a,r,i,n,d,c,u,m,p){"use strict";function h(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var f=h(r),g=h(i),y=h(n),v=h(u),b=h(m),x=h(p),k={name:"QasActions",props:{align:{default:"end",type:String,validator:e=>["start","around","between","center","end"].includes(e)},gutter:{default:"md",type:String,validator:e=>["xs","sm","md","lg","xl"].includes(e)}},computed:{classes(){return[`justify-${this.align}`,`q-col-gutter-${this.gutter}`,this.$qas.screen.isSmall?"column reverse":"row"]}}};const C={class:"col-12 col-sm-auto"},V={class:"col-12 col-sm-auto"};k.render=function(t,s,o,l,a,r){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(r.classes)},[e.createElementVNode("div",C,[e.renderSlot(t.$slots,"secondary")]),e.createElementVNode("div",V,[e.renderSlot(t.$slots,"primary")])],2)},k.__file="src/components/actions/QasActions.vue";var B={name:"QasBtn",props:{useLabelOnSmallScreen:{default:!0,type:Boolean},label:{default:"",type:String}},computed:{attributes(){return{...this.showLabel&&{label:this.label},...this.$attrs}},showLabel(){return this.useLabelOnSmallScreen||!this.$qas.screen.isSmall},slots(){const{default:e,...t}=this.$slots;return t}}};B.render=function(t,s,o,l,a,r){const i=e.resolveComponent("q-btn");return e.openBlock(),e.createBlock(i,e.mergeProps({color:"primary","no-caps":"",unelevated:""},r.attributes),e.createSlots({default:e.withCtx((()=>[e.renderSlot(t.$slots,"default")])),_:2},[e.renderList(r.slots,((s,o)=>({name:o,fn:e.withCtx((s=>[e.renderSlot(t.$slots,o,e.normalizeProps(e.guardReactiveProps(s||{})))]))})))]),1040)},B.__file="src/components/btn/QasBtn.vue";var S={name:"QasActionsMenu",components:{QasBtn:B},props:{icon:{default:"o_settings",type:String},label:{default:"Configurações",type:String},list:{default:()=>({}),type:Object},deleteLabel:{type:String,default:"Excluir"},deleteIcon:{type:String,default:"o_delete"},deleteProps:{default:()=>({}),type:Object}},computed:{hasDelete(){return!!Object.keys(this.deleteProps).length}},methods:{onClick(e){if("function"==typeof e.handler){const{handler:t,...s}=e;e.handler(s)}}}};const w={class:"flex items-center justify-center q-gutter-x-md"},_={class:"flex items-center justify-center q-gutter-x-sm"};function $(e){return e.map((e=>e.children&&"string"!=typeof e.children?Array.isArray(e.children)?$(e.children):e.children.default?$(e.children.default()):void 0:e.children||"")).join("")}function N(e,s){const o={};for(const l in s){const a=t.camelize(l);if(!a.startsWith(e))continue;const r=a.replace(`${e}.`,""),[i,n,d]=r.split(".");o[i]||(o[i]={}),d?o[i][n]=N([e,i,n].join("."),s):n?o[i][n]=s[l]:o[i]=s[l]}return o}function q(e){for(const s in e){const o=e[s];o.name=t.camelize(o.name),Object.keys(o.children||{}).length&&q(o.children)}return e}S.render=function(t,s,o,l,a,r){const i=e.resolveComponent("q-icon"),n=e.resolveComponent("q-item-section"),d=e.resolveComponent("q-item"),c=e.resolveComponent("qas-delete"),u=e.resolveComponent("q-list"),m=e.resolveComponent("q-menu"),p=e.resolveComponent("qas-btn");return e.openBlock(),e.createBlock(p,{class:"qas-actions-menu",color:"primary",icon:o.icon,label:o.label,outline:"",padding:"md","use-label-on-small-screen":""},{default:e.withCtx((()=>[e.createVNode(m,{class:"qas-actions-menu__menu"},{default:e.withCtx((()=>[e.createVNode(u,{class:"qas-actions-menu__list",separator:""},{default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.list,((s,o)=>e.renderSlot(t.$slots,o,{item:s},(()=>[(e.openBlock(),e.createBlock(d,e.mergeProps({key:o,class:"text-primary",clickable:""},s.props,{onClick:e=>r.onClick(s)}),{default:e.withCtx((()=>[e.createVNode(n,null,{default:e.withCtx((()=>[e.createElementVNode("div",w,[e.createVNode(i,{name:s.icon,size:"sm"},null,8,["name"]),e.createElementVNode("div",null,e.toDisplayString(s.label),1)])])),_:2},1024)])),_:2},1040,["onClick"]))])))),256)),r.hasDelete?(e.openBlock(),e.createBlock(c,e.mergeProps({key:0},o.deleteProps,{class:"text-negative",clickable:"",tag:"q-item"}),{default:e.withCtx((()=>[e.createVNode(n,null,{default:e.withCtx((()=>[e.createElementVNode("div",_,[e.createVNode(i,{name:o.deleteIcon,size:"sm"},null,8,["name"]),e.createElementVNode("div",null,e.toDisplayString(o.deleteLabel),1)])])),_:1})])),_:1},16)):e.createCommentVNode("v-if",!0)])),_:3})])),_:3})])),_:3},8,["icon","label"])},S.__file="src/components/actions-menu/QasActionsMenu.vue";function E(e,t,l={}){return e?(e=e instanceof Date?e:s.parseISO(e),s.format(e,t,{locale:o.ptBR,...l})):""}function F(e,t="dd/MM/yyyy",s){return E(e,t,s)}function L(e=0){return(e=Number(e))?e.toLocaleString("pt-BR"):""}function O(e=0,t={style:"currency",currency:"BRL"}){return e=Number(e),isNaN(e)?"":e.toLocaleString("pt-BR",t)}function Q(e){return e.replace(/^(\d{2})(\d{3})(\d{3})(\d{4})(\d{2})/g,"$1.$2.$3/$4-$5")}function P(e){return e.replace(/^(\d{3})\D*(\d{3})\D*(\d{3})\D*(\d{2})$/g,"$1.$2.$3-$4")}function D(e){return{"company-document":()=>Q(e),document:()=>function(e){return e.length<12?P(e):Q(e)}(e),"personal-document":()=>P(e),phone:()=>function(e){return e.replace(/^(\d{2})\D*(\d{5}|\d{4})\D*(\d{4})$/g,"($1) $2-$3")}(e),"postal-code":()=>function(e){return e.replace(/^(\d{5})\D*(\d{3})$/g,"$1-$2")}(e),decimal:()=>L(e),money:()=>O(e),"square-area":()=>function(e=0,t="m²"){return(e=L(e))?`${e} ${t}`:""}(e)}}function M(e={},t){if(e.mask&&!t)return t;const o=D(t);if(o[e.mask])return o[e.mask]();switch(e.type){case"boolean":return function(e,t="sim",s="não"){try{return JSON.parse(e)?t:s}catch{return e}}(t);case"select":return I(e.options,t,e.multiple);case"date":return F(t);case"datetime":return function(e,t="dd/MM/yyyy HH:mm:ss",s){return E(e,t,s)}(t);case"time":return function(e,t="HH:mm",o){return s.isMatch(e,t)?e:E(e,t,o)}(t);case"radio":return I(e.options,t);case"percent":return function(e=0,t=2){return(e=Number(e))?e.toLocaleString("pt-BR",{style:"percent",minimumFractionDigits:t}):""}(t);case"money":return O(t);case"decimal":return L(t);default:return t}}function I(e,t,s){return s?function(e,t){return t.map((t=>z(e,t)))}(e,t):z(e,t)}function z(e=[],t){return(e.find((e=>String(e.value)===String(t)))||{}).label||""}function R(e){try{return JSON.parse(e)}catch{return e}}var A={name:"QasBreakline",props:{split:{default:"\n",type:String},tag:{default:"div",type:String},text:{default:"",type:String}},computed:{lines(){return(this.text||$(this.$slots.default())).split(this.split)}}};A.render=function(t,s,o,l,a,r){return e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.lines,((s,l)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.tag),e.mergeProps({key:l},t.$attrs),{default:e.withCtx((()=>[e.createTextVNode(e.toDisplayString(s),1)])),_:2},1040)))),128)},A.__file="src/components/breakline/QasBreakline.vue";var j={name:"QasAlert",components:{QasBreakline:A,QasBtn:B},props:{modelValue:{default:!0,type:Boolean},text:{default:"",type:String},color:{type:String,default:"primary"},title:{default:"",type:String}},emits:["update:modelValue"],data:()=>({model:!0}),computed:{classes(){return{[`text-${this.color}`]:!0,[`bg-${this.color}-contrast`]:["primary","secondary"].includes(this.color)}}},watch:{modelValue:{handler(e){this.model=e},immediate:!0}},methods:{close(){this.$emit("update:modelValue",!1)}}};const T={class:"q-gutter-md q-mr-lg"},U={key:0,class:"text-bold text-h5"};j.render=function(t,s,o,l,a,r){const i=e.resolveComponent("qas-btn"),n=e.resolveComponent("qas-breakline");return a.model?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["q-pa-lg qas-alert relative-position rounded-borders",r.classes])},[e.createVNode(i,{class:"absolute-top-right q-mr-md q-mt-sm",color:o.color,dense:"",flat:"",icon:"o_close",rounded:"",onClick:r.close},null,8,["color","onClick"]),e.createElementVNode("div",T,[e.renderSlot(t.$slots,"header",{},(()=>[o.title?(e.openBlock(),e.createElementBlock("h5",U,e.toDisplayString(o.title),1)):e.createCommentVNode("v-if",!0)])),e.renderSlot(t.$slots,"default",{},(()=>[e.createVNode(n,{tag:"p",text:o.text},null,8,["text"])]))])],2)):e.createCommentVNode("v-if",!0)},j.__file="src/components/alert/QasAlert.vue";var G={name:"QasAvatar",props:{color:{default:"",type:String},dark:{type:Boolean},icon:{default:"o_error",type:String},image:{default:"",type:String},textColor:{default:"primary",type:String},title:{default:"",type:String}},data:()=>({hasImageError:!1}),computed:{avatarClass(){if(this.hasImage)return null;const e=this.color?this.color:this.contrastColor;return[this.dark?`bg-${this.textColor} text-${e}`:`bg-${e} text-${this.textColor}`]},contrastColor(){return`${this.textColor}-contrast`},firstLetter(){return this.title[0].toUpperCase()},hasImage(){return!this.hasImageError&&!!this.image},hasTitle(){return!!this.title}},watch:{image(){this.hasImageError=!1}},methods:{onImageLoadedError(){this.hasImageError=!0}}};G.render=function(t,s,o,l,a,r){const i=e.resolveComponent("q-img"),n=e.resolveComponent("q-icon"),d=e.resolveComponent("q-avatar");return e.openBlock(),e.createBlock(d,{class:e.normalizeClass(["text-bold",r.avatarClass]),rounded:""},{default:e.withCtx((()=>[r.hasImage?(e.openBlock(),e.createBlock(i,{key:0,alt:o.title,ratio:1,"spinner-color":"primary","spinner-size":"16px",src:o.image,onError:r.onImageLoadedError},null,8,["alt","src","onError"])):r.hasTitle?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(r.firstLetter),1)],2112)):(e.openBlock(),e.createBlock(n,{key:2,name:o.icon},null,8,["name"]))])),_:1},8,["class"])},G.__file="src/components/avatar/QasAvatar.vue";var H={name:"QasAppBar",components:{QasAvatar:G,QasBtn:B},props:{brand:{default:"",type:String},title:{type:String,default:""},notifications:{default:()=>({}),type:Object},user:{default:()=>({}),require:!0,type:Object}},emits:["sign-out","toggle-menu"],data:()=>({menuDrawer:!0}),computed:{developmentBadgeLabel(){const e={localhost:"Local",develop:"Develop",release:"Release"};if(process.env.DEV)return e.localhost;const t=Object.keys(e).find((e=>location.hostname.includes(e)));return t?e[t]:""},hasDevelopmentBadge(){return!!this.developmentBadgeLabel},hasNotifications(){return!!Object.keys(this.notifications).length},showTitle(){return this.title&&!this.brand},hasUser(){return!!Object.keys(this.user).length},userName(){return this.user.name||this.user.givenName}},methods:{goToProfile(){return this.$router.push(this.user.to)},goToRoot(){this.$router.push({name:"Root"})},signOut(){this.$emit("sign-out")},toggleMenuDrawer(){this.$emit("toggle-menu")}}};const W=["alt","src"],K={key:1,class:"text-bold text-grey-9 text-subtitle1 text-uppercase"},Y={key:0,class:"q-mr-md"},J={class:"items-center no-wrap q-gutter-md row"},X=["title"],Z={class:"q-px-sm qas-app-bar__user-data qs-lh-lg text-caption"},ee={class:"ellipsis"},te={class:"ellipsis text-bold"},se={class:"qas-app-bar__user-menu"},oe={class:"q-pa-lg text-center"},le={class:"ellipsis q-mt-lg qs-lh-sm text-bold text-subtitle1"},ae={class:"ellipsis q-mt-xs text-caption"},re={class:"q-mt-sm"},ie={class:"q-mt-sm"};H.render=function(t,s,o,l,a,r){const i=e.resolveComponent("q-ajax-bar"),n=e.resolveComponent("qas-btn"),d=e.resolveComponent("q-badge"),c=e.resolveComponent("q-toolbar-title"),u=e.resolveComponent("qas-avatar"),m=e.resolveComponent("q-menu"),p=e.resolveComponent("q-toolbar"),h=e.resolveComponent("q-header"),f=e.resolveDirective("close-popup");return e.openBlock(),e.createBlock(h,{class:"bg-white qas-app-bar shadow-14","height-hint":"70"},{default:e.withCtx((()=>[e.createVNode(p,{class:"qas-app-bar__toolbar",color:"bg-white"},{default:e.withCtx((()=>[e.createVNode(i,{color:"white",position:"top",size:"2px"}),e.createVNode(n,{color:"grey-7",dense:"",flat:"",icon:"o_menu",round:"",onClick:r.toggleMenuDrawer},null,8,["onClick"]),e.createVNode(c,{class:"flex"},{default:e.withCtx((()=>[e.createElementVNode("div",{class:"cursor-pointer",onClick:s[0]||(s[0]=(...e)=>r.goToRoot&&r.goToRoot(...e))},[o.brand?(e.openBlock(),e.createElementBlock("img",{key:0,alt:o.title,class:"q-mr-sm qas-app-bar__brand",src:o.brand},null,8,W)):e.createCommentVNode("v-if",!0),r.showTitle?(e.openBlock(),e.createElementBlock("span",K,e.toDisplayString(o.title),1)):e.createCommentVNode("v-if",!0),r.hasDevelopmentBadge?(e.openBlock(),e.createBlock(d,{key:2,align:"middle",class:"q-ml-sm",color:"negative",label:r.developmentBadgeLabel},null,8,["label"])):e.createCommentVNode("v-if",!0)])])),_:1}),r.hasNotifications?(e.openBlock(),e.createElementBlock("div",Y,[e.createVNode(n,{class:"q-mr-md",dense:"",icon:"o_notifications",round:"",unelevated:""},{default:e.withCtx((()=>[o.notifications?(e.openBlock(),e.createBlock(d,{key:0,color:"red",floating:""},{default:e.withCtx((()=>[e.createTextVNode(e.toDisplayString(o.notifications.count),1)])),_:1})):e.createCommentVNode("v-if",!0)])),_:1})])):e.createCommentVNode("v-if",!0),e.createElementVNode("div",J,[e.renderSlot(t.$slots,"tools"),r.hasUser?(e.openBlock(),e.createElementBlock("div",{key:0,class:"cursor-pointer items-center q-mr-sm qas-app-bar__user rounded-borders row text-grey-9",title:r.userName},[e.createVNode(u,{class:"rounded-borders-left",color:"white",dark:"",image:o.user.photo,rounded:"",size:"42px","text-color":"primary",title:r.userName},null,8,["image","title"]),e.createElementVNode("div",Z,[e.createElementVNode("div",ee,e.toDisplayString(r.userName),1),e.createElementVNode("div",te,e.toDisplayString(o.user.email),1)]),e.createVNode(m,{anchor:"bottom end",class:"shadow-14","max-height":"400px",offset:[0,5],self:"top end"},{default:e.withCtx((()=>[e.createElementVNode("div",se,[e.createElementVNode("div",oe,[e.createElementVNode("button",{class:"unset",onClick:s[1]||(s[1]=(...e)=>r.goToProfile&&r.goToProfile(...e))},[e.createVNode(u,{image:o.user.photo,size:"145px",title:r.userName},null,8,["image","title"])]),e.createElementVNode("div",le,e.toDisplayString(r.userName),1),e.createElementVNode("div",ae,e.toDisplayString(o.user.email),1),e.createElementVNode("div",re,[e.createVNode(n,{flat:"",icon:"o_edit",label:"Editar",to:o.user.to},null,8,["to"])]),e.createElementVNode("div",ie,[e.withDirectives(e.createVNode(n,{class:"q-px-lg q-py-xs",dense:"",icon:"o_exit_to_app",label:"Sair",outline:"",onClick:r.signOut},null,8,["onClick"]),[[f]])]),e.renderSlot(t.$slots,"user",{user:o.user})])])])),_:3})],8,X)):e.createCommentVNode("v-if",!0)])])),_:3})])),_:3})},H.__file="src/components/app-bar/QasAppBar.vue";var ne={name:"QasAppMenu",props:{items:{default:()=>[],type:Array},modelValue:{default:!0,type:Boolean},title:{default:"",type:String},brandMenu:{default:"",type:String},modules:{default:()=>[],type:Array}},emits:["update:modelValue"],data:()=>({miniMode:!1,module:"",isMini:!1}),computed:{activeItemClasses:()=>"bg-primary-contrast text-primary text-weight-bold",activeItemClassesSecondary:()=>"text-primary bg-secondary-contrast",defaultModules(){if(!["localhost","127.0.0.1"].includes(window.location.hostname))return this.modules;const e=[...this.modules],{host:t,protocol:s}=window.location,o=`${s}//${t}`;return e.unshift({label:"Localhost "+(this.title?`(${this.title})`:""),value:o}),e},model:{get(){return this.modelValue},set(e){return this.$emit("update:modelValue",e)}},currentModelOption(){return this.defaultModules.find((e=>e?.value===this.module))},displayModuleSection(){return!this.isMini&&this.defaultModules.length},currentModule(){const e=window.location.hostname;return this.defaultModules.find((t=>t?.value.includes(e)))?.value}},watch:{currentModule:{handler(e){this.module=e},immediate:!0}},methods:{hasChildren:({children:e})=>!!(e||[]).length,shouldExpand({children:e,to:t}){return e?.length&&this.$route.matched.some((e=>e?.path===t?.path))},beforeHide(){this.$qas.screen.isLarge&&(this.model=!0,this.miniMode=!this.miniMode)},setMiniState(e){this.isMini=e},redirectHandler({value:e}){e.includes(window.location.host)||(window.location.href=e)},toggleItem(e){const t=this.getComponent(e);t?.to&&this.isMini&&t.toggle()},getComponent(e){return this.$refs[`item-${e}`]?.[0]}}};const de={class:"column flex full-height justify-between no-wrap overflow-x-hidden"},ce={key:0,class:"q-ma-md"},ue=e.createElementVNode("div",{class:"q-mb-sm text-caption text-grey-7 text-weight-medium"}," Você está no modulo: ",-1),me={key:0,class:"q-mx-md"},pe=["alt","src"];ne.render=function(t,s,o,l,a,r){const i=e.resolveComponent("qas-select"),n=e.resolveComponent("q-icon"),d=e.resolveComponent("q-item-section"),c=e.resolveComponent("q-item-label"),u=e.resolveComponent("q-item"),m=e.resolveComponent("q-expansion-item"),p=e.resolveComponent("q-list"),h=e.resolveComponent("q-drawer"),f=e.resolveDirective("ripple");return e.openBlock(),e.createBlock(h,{modelValue:r.model,"onUpdate:modelValue":s[2]||(s[2]=e=>r.model=e),class:"qas-app-menu",mini:a.miniMode,width:230,onBeforeHide:r.beforeHide,onMiniState:r.setMiniState},{default:e.withCtx((()=>[e.createElementVNode("div",de,[e.createElementVNode("div",null,[r.displayModuleSection?(e.openBlock(),e.createElementBlock("div",ce,[ue,e.createVNode(i,{modelValue:a.module,"onUpdate:modelValue":[s[0]||(s[0]=e=>a.module=e),s[1]||(s[1]=e=>r.redirectHandler(r.currentModelOption))],options:r.defaultModules},null,8,["modelValue","options"])])):e.createCommentVNode("v-if",!0),e.createVNode(p,{class:"text-grey-9 text-weight-medium"},{default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.items,((t,s)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[r.hasChildren(t)?(e.openBlock(),e.createBlock(m,{key:t.label,ref_for:!0,ref:`item-${s}`,"active-class":r.activeItemClassesSecondary,"default-opened":r.shouldExpand(t),"expand-icon":"o_keyboard_arrow_down","expand-separator":"",group:"item",icon:t.icon,label:t.label,to:t.to,onClick:e=>r.toggleItem(s)},{default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.children,((t,s)=>e.withDirectives((e.openBlock(),e.createBlock(u,{key:s,"active-class":r.activeItemClasses,clickable:"",to:t.to},{default:e.withCtx((()=>[t.icon?(e.openBlock(),e.createBlock(d,{key:0,avatar:""},{default:e.withCtx((()=>[e.createVNode(n,{name:t.icon},null,8,["name"])])),_:2},1024)):e.createCommentVNode("v-if",!0),e.createVNode(d,null,{default:e.withCtx((()=>[e.createVNode(c,null,{default:e.withCtx((()=>[e.createTextVNode(e.toDisplayString(t.label),1)])),_:2},1024)])),_:2},1024)])),_:2},1032,["active-class","to"])),[[f]]))),128))])),_:2},1032,["active-class","default-opened","icon","label","to","onClick"])):e.withDirectives((e.openBlock(),e.createBlock(u,{key:s,"active-class":r.activeItemClasses,clickable:"",to:t.to},{default:e.withCtx((()=>[t.icon?(e.openBlock(),e.createBlock(d,{key:0,avatar:""},{default:e.withCtx((()=>[e.createVNode(n,{name:t.icon},null,8,["name"])])),_:2},1024)):e.createCommentVNode("v-if",!0),e.createVNode(d,null,{default:e.withCtx((()=>[e.createVNode(c,null,{default:e.withCtx((()=>[e.createTextVNode(e.toDisplayString(t.label),1)])),_:2},1024)])),_:2},1024)])),_:2},1032,["active-class","to"])),[[f]])],64)))),256))])),_:1})]),o.brandMenu?(e.openBlock(),e.createElementBlock("div",me,[a.isMini?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock("img",{key:0,alt:o.title,class:"block q-mb-md q-mx-auto",src:o.brandMenu},null,8,pe))])):e.createCommentVNode("v-if",!0)])])),_:1},8,["modelValue","mini","onBeforeHide","onMiniState"])},ne.__file="src/components/app-menu/QasAppMenu.vue";var he={name:"QasBox",props:{outlined:{type:Boolean},unelevated:{type:Boolean}},computed:{boxClass(){return{"border-primary-contrast":this.outlined,"shadow-14":!this.unelevated}}}};he.render=function(t,s,o,l,a,r){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["bg-white q-px-md q-py-lg rounded-borders",r.boxClass])},[e.renderSlot(t.$slots,"default")],2)},he.__file="src/components/box/QasBox.vue";var fe={name:"QasCard",props:{imagePosition:{type:String,default:"center"},gutter:{type:String,default:"sm"},images:{default:()=>[],type:Array},outlined:{type:Boolean},unelevated:{type:Boolean},useHeader:{type:Boolean}},data:()=>({slideImage:0}),computed:{imagePositionClass(){return`bg-position-${this.imagePosition}`},cardClasses(){return{"shadow-14":!this.unelevated,"border-primary":this.outlined,"no-shadow":this.outlined,"bg-white":this.outlined}},gutterClass(){return`q-col-gutter-${this.gutter}`},hasActionsSlot(){return!!this.$slots.actions},hasImages(){return this.images.length>1},imagesLength(){return this.images?.length},imagesList(){return this.imagesLength&&this.images.slice(0,3)}},methods:{getNavigationIcon:(e,{icon:t})=>e?"o_radio_button_checked":t}};const ge={class:"col-12 col-lg-3 col-md-4 col-sm-6"},ye={key:0,class:"overflow-hidden relative-position w-full"},ve={class:"absolute-top flex items-center q-pa-md"},be={key:1,class:"border-primary-contrast border-top overflow-hidden row"};fe.render=function(t,s,o,l,a,r){const i=e.resolveComponent("qas-btn"),n=e.resolveComponent("q-carousel-slide"),d=e.resolveComponent("q-carousel"),c=e.resolveComponent("q-card-section"),u=e.resolveComponent("q-card");return e.openBlock(),e.createElementBlock("div",ge,[e.createVNode(u,{class:e.normalizeClass(["border-radius-lg column full-height overflow-hidden",r.cardClasses])},{default:e.withCtx((()=>[o.useHeader?(e.openBlock(),e.createElementBlock("header",ye,[e.renderSlot(t.$slots,"header",{},(()=>[e.createVNode(d,{modelValue:a.slideImage,"onUpdate:modelValue":s[0]||(s[0]=e=>a.slideImage=e),animated:"",class:"cursor-pointer",height:"205px",infinite:"",navigation:r.hasImages,"navigation-icon":"o_fiber_manual_record",swipeable:""},{"navigation-icon":e.withCtx((({active:t,btnProps:s,onClick:o})=>[e.createVNode(i,{color:"white",dense:"",flat:"",icon:r.getNavigationIcon(t,s),round:"",size:"sm",onClick:o},null,8,["icon","onClick"])])),default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.imagesList,((t,s)=>(e.openBlock(),e.createBlock(n,{key:s,class:e.normalizeClass(["bg-no-repeat",r.imagePositionClass]),"img-src":t,name:s},null,8,["class","img-src","name"])))),128))])),_:1},8,["modelValue","navigation"]),e.createElementVNode("div",ve,[e.renderSlot(t.$slots,"carousel-header")])]))])):e.createCommentVNode("v-if",!0),e.createVNode(c,{class:"col-grow column justify-between w-full"},{default:e.withCtx((()=>[e.createElementVNode("div",{class:e.normalizeClass(["w-full",r.gutterClass])},[e.renderSlot(t.$slots,"default")],2)])),_:3}),r.hasActionsSlot?(e.openBlock(),e.createElementBlock("div",be,[e.renderSlot(t.$slots,"actions")])):e.createCommentVNode("v-if",!0)])),_:3},8,["class"])])},fe.__file="src/components/card/QasCard.vue";var xe={name:"QasCheckboxGroup",props:{options:{default:()=>[],type:Array},modelValue:{default:()=>[],type:Array},inline:{default:!0,type:Boolean}},emits:["update:modelValue"],data:()=>({group:{}}),computed:{model:{get(){return this.modelValue},set(e){this.$emit("update:modelValue",e)}},classes(){return this.inline&&"flex q-gutter-x-sm"}},watch:{options(){this.handleParent()}},created(){this.handleParent()},methods:{handleParent(){for(const e in this.options){const t=this.options[e];this.hasChildren(t)&&this.setGroupIntersection(this.modelValue,t,e)}},hasChildren:e=>Object.prototype.hasOwnProperty.call(e,"children"),setGroupIntersection(e,t,s){const o=t.children.map((e=>e.value)),l=o.filter((t=>e.includes(t)));this.group[s]=l.length&&(l.length===o.length||null)},updateCheckbox(e,t,s){this.group[s]=e;const o=t.children.map((e=>e.value)),l=e?[...new Set([...this.modelValue,...o])]:this.modelValue.filter((e=>!o.includes(e)));this.updateModelValue(l)},updateChildren(e,t,s){this.setGroupIntersection(e,t,s),this.updateModelValue(e)},getCheckboxClass(e){return this.hasChildren(e)&&"text-weight-bold"},getModelValue(e){return this.group[e]},updateModelValue(e){this.$emit("update:modelValue",e)}}};xe.render=function(t,s,o,l,a,r){const i=e.resolveComponent("q-checkbox"),n=e.resolveComponent("q-option-group");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(r.classes)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.options,((l,a)=>(e.openBlock(),e.createElementBlock("div",{key:a},[r.hasChildren(l)?(e.openBlock(),e.createBlock(i,{key:0,class:e.normalizeClass(r.getCheckboxClass(l)),label:l.label,"model-value":r.getModelValue(a),"onUpdate:modelValue":e=>r.updateCheckbox(e,l,a)},null,8,["class","label","model-value","onUpdate:modelValue"])):e.createCommentVNode("v-if",!0),r.hasChildren(l)?(e.openBlock(),e.createBlock(n,{key:1,class:"q-ml-sm",inline:o.inline,"model-value":o.modelValue,options:l.children,type:"checkbox","onUpdate:modelValue":e=>r.updateChildren(e,l,a)},null,8,["inline","model-value","options","onUpdate:modelValue"])):(e.openBlock(),e.createBlock(n,e.mergeProps({key:2,modelValue:r.model,"onUpdate:modelValue":s[0]||(s[0]=e=>r.model=e)},t.$attrs,{options:[l],type:"checkbox"}),null,16,["modelValue","options"]))])))),128))],2)},xe.__file="src/components/checkbox-group/QasCheckboxGroup.vue";var ke={name:"QasCopy",props:{icon:{default:"o_file_copy",type:String},size:{default:"xs",type:String},text:{required:!0,type:String}},data:()=>({isLoading:!1}),methods:{async copy(){this.isLoading=!0;try{await l.copyToClipboard(this.text),this.$qas.success("Copiado!",this.text)}catch(e){this.$qas.error("Não foi possível copiar.",this.text)}finally{setTimeout((()=>{this.isLoading=!1}),500)}}}};const Ce=e.createTextVNode("Copiar");ke.render=function(t,s,o,l,a,r){const i=e.resolveComponent("q-tooltip"),n=e.resolveComponent("qas-btn");return e.openBlock(),e.createElementBlock("span",null,[e.renderSlot(t.$slots,"default",{},(()=>[e.createTextVNode(e.toDisplayString(o.text),1)])),e.createVNode(n,{class:"q-ml-xs",color:"grey-7",flat:"",icon:o.icon,loading:a.isLoading,round:"",size:o.size,onClick:r.copy},{default:e.withCtx((()=>[e.createVNode(i,null,{default:e.withCtx((()=>[Ce])),_:1})])),_:1},8,["icon","loading","size","onClick"])])},ke.__file="src/components/copy/QasCopy.vue";var Ve={name:"QasDateTimeInput",inheritAttrs:!1,props:{dateMask:{default:"DD/MM/YYYY",type:String},dateProps:{default:()=>({}),type:Object},timeMask:{default:"HH:mm",type:String},timeProps:{default:()=>({}),type:Object},useIso:{type:Boolean},useTimeOnly:{type:Boolean},useDateOnly:{type:Boolean},modelValue:{default:"",type:String}},emits:["update:modelValue"],data:()=>({currentValue:"",lastValue:""}),computed:{attributes(){const{modelValue:e,...t}=this.$attrs;return{...t,mask:this.mask}},inputElement(){return this.$refs.input},mask(){return this.maskDate.replace(/\w/g,"#")},maskDate(){const e=[];return this.useTimeOnly||e.push(this.dateMask),this.useDateOnly||e.push(this.timeMask),e.join(" ")}},watch:{modelValue(e,t){e&&!this.useTimeOnly?e!==t&&e!==this.lastValue&&(this.currentValue=this.toMask(e)):this.currentValue=e}},created(){this.currentValue=this.toMask(this.modelValue)},methods:{blur(){this.inputElement.blur()},focus(){this.inputElement.focus()},updateModelValue(e){this.currentValue=e;const t=e?.replace?.(/_/g,"")?.length;""!==e&&t!==this.mask.length||(this.lastValue=this.useTimeOnly?e:this.toISOString(e),this.$emit("update:modelValue",this.lastValue)),this.useDateOnly&&this.$refs.dateProxy.hide(),this.useTimeOnly&&this.$refs.timeProxy.hide()},toISOString(e){return e?this.useDateOnly&&!this.useIso?F(l.date.extractDate(e,this.maskDate),"yyyy-MM-dd"):this.useTimeOnly&&!this.useIso?l.date.extractDate(e,"HH:MM"):l.date.extractDate(e,this.maskDate).toISOString():""},toMask(e){if(!e||this.useTimeOnly)return e||"";const t=new Date(e).toISOString();return l.date.formatDate(this.useDateOnly?t.slice(0,23):t,this.maskDate)}}};Ve.render=function(t,s,o,l,a,r){const i=e.resolveComponent("q-date"),n=e.resolveComponent("q-popup-proxy"),d=e.resolveComponent("q-icon"),c=e.resolveComponent("q-time"),u=e.resolveComponent("qas-input");return e.openBlock(),e.createBlock(u,e.mergeProps({ref:"input"},r.attributes,{modelValue:a.currentValue,"onUpdate:modelValue":[s[2]||(s[2]=e=>a.currentValue=e),r.updateModelValue],"unmasked-value":!1}),{append:e.withCtx((()=>[o.useTimeOnly?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createBlock(d,{key:0,class:"cursor-pointer",name:"o_event"},{default:e.withCtx((()=>[e.createVNode(n,{ref:"dateProxy","transition-hide":"scale","transition-show":"scale"},{default:e.withCtx((()=>[e.createVNode(i,e.mergeProps({modelValue:a.currentValue,"onUpdate:modelValue":s[0]||(s[0]=e=>a.currentValue=e)},o.dateProps,{mask:r.maskDate,"onUpdate:modelValue":r.updateModelValue}),null,16,["modelValue","mask","onUpdate:modelValue"])])),_:1},512)])),_:1})),o.useDateOnly?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createBlock(d,{key:1,class:"cursor-pointer q-ml-md",name:"o_access_time"},{default:e.withCtx((()=>[e.createVNode(n,{ref:"timeProxy","transition-hide":"scale","transition-show":"scale"},{default:e.withCtx((()=>[e.createVNode(c,e.mergeProps({modelValue:a.currentValue,"onUpdate:modelValue":s[1]||(s[1]=e=>a.currentValue=e)},o.timeProps,{format24h:"",mask:r.maskDate,"onUpdate:modelValue":r.updateModelValue}),null,16,["modelValue","mask","onUpdate:modelValue"])])),_:1},512)])),_:1}))])),_:1},16,["modelValue","onUpdate:modelValue"])},Ve.__file="src/components/date-time-input/QasDateTimeInput.vue";var Be={name:"QasDebugger",props:{inspect:{default:()=>[],required:!0,type:Array}}};const Se={class:"bg-grey-3 q-my-md q-pa-md rounded-borders"},we=e.createElementVNode("summary",null,"Debugger",-1),_e={class:"row"};Be.render=function(t,s,o,l,a,r){return e.openBlock(),e.createElementBlock("details",Se,[we,e.createElementVNode("div",_e,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.inspect,((t,s)=>(e.openBlock(),e.createElementBlock("pre",{key:s,class:"col q-pa-sm scroll",style:{"max-height":"300px"}},e.toDisplayString(t),1)))),128))])])},Be.__file="src/components/debugger/QasDebugger.vue";var $e={name:"QasDialog",components:{QasBtn:B,QasActions:k},props:{actionsProps:{default:()=>({}),type:Object},cancel:{default:()=>({}),type:[Object,Boolean]},card:{default:()=>({}),type:Object},cardProps:{default:()=>({}),type:Object},maxWidth:{default:"",type:String},minWidth:{default:"",type:String},ok:{default:()=>({}),type:[Object,Boolean]},persistent:{default:!0,type:Boolean},useForm:{type:Boolean},modelValue:{type:Boolean},usePlugin:{type:Boolean},useCloseButton:{type:Boolean},useValidationAllAtOnce:{type:Boolean}},emits:["update:modelValue","validate"],computed:{defaultCancel(){return{label:"Cancelar",outline:!0,...this.cancel}},defaultOk(){return{label:"Ok",type:this.ok?.type||this.useForm?"submit":"button",...this.ok}},style(){return{maxWidth:this.maxWidth||(this.$qas.screen.isSmall?"":"600px"),minWidth:this.minWidth||(this.$qas.screen.isSmall?"":"400px")}},componentTag(){return this.useForm?"q-form":"div"},dialogProps(){return{...!this.usePlugin&&{modelValue:this.modelValue},...this.$attrs}}},methods:{async submitHandler(){if(this.useForm)if(this.useValidationAllAtOnce){let e=!0;const t=this.$refs.form.getValidationComponents()||[];for(const s of t){const t=s?.validate?.();t||(e=!1)}this.$emit("validate",e)}else this.$emit("validate",await this.$refs.form.validate())},show(){this.$refs.dialog.show()},hide(){this.$refs.dialog.hide()},updateModelValue(e){this.$emit("update:modelValue",e)}}};const Ne={class:"justify-between row"},qe={class:"text-bold text-h6"},Ee={key:0};$e.render=function(t,s,o,l,a,r){const i=e.resolveComponent("qas-btn"),n=e.resolveComponent("q-card-section"),d=e.resolveComponent("qas-actions"),c=e.resolveComponent("q-card"),u=e.resolveComponent("q-dialog"),m=e.resolveDirective("close-popup");return e.openBlock(),e.createBlock(u,e.mergeProps({ref:"dialog",persistent:o.persistent},r.dialogProps,{"onUpdate:modelValue":r.updateModelValue}),{default:e.withCtx((()=>[e.createVNode(c,e.mergeProps(o.cardProps,{class:"q-pa-sm",style:r.style}),{default:e.withCtx((()=>[e.createVNode(n,null,{default:e.withCtx((()=>[e.renderSlot(t.$slots,"header",{},(()=>[e.createElementVNode("div",Ne,[e.createElementVNode("div",qe,e.toDisplayString(o.card.title),1),o.useCloseButton?e.withDirectives((e.openBlock(),e.createBlock(i,{key:0,dense:"",flat:"",icon:"o_close",rounded:""},null,512)),[[m]]):e.createCommentVNode("v-if",!0)])]))])),_:3}),e.createVNode(n,{class:"q-pt-none"},{default:e.withCtx((()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.componentTag),{ref:"form"},{default:e.withCtx((()=>[e.renderSlot(t.$slots,"description",{},(()=>[o.card.description?(e.openBlock(),e.createElementBlock("div",Ee,e.toDisplayString(o.card.description),1)):e.createCommentVNode("v-if",!0)]))])),_:3},512))])),_:3}),e.createVNode(n,null,{default:e.withCtx((()=>[e.renderSlot(t.$slots,"actions",{},(()=>[e.createVNode(d,e.normalizeProps(e.guardReactiveProps(o.actionsProps)),{primary:e.withCtx((()=>[o.ok?e.withDirectives((e.openBlock(),e.createBlock(i,e.mergeProps({key:0,class:"full-width"},r.defaultOk,{onClick:r.submitHandler}),null,16,["onClick"])),[[m,!o.useForm]]):e.createCommentVNode("v-if",!0)])),secondary:e.withCtx((()=>[o.cancel?e.withDirectives((e.openBlock(),e.createBlock(i,e.mergeProps({key:0,class:"full-width"},r.defaultCancel),null,16)),[[m]]):e.createCommentVNode("v-if",!0)])),_:1},16)]))])),_:3})])),_:3},16,["style"])])),_:3},16,["persistent","onUpdate:modelValue"])},$e.__file="src/components/dialog/QasDialog.vue";var Fe=(e={})=>{l.Dialog.create({component:$e,componentProps:{...e,usePlugin:!0}})},Le=()=>{const e=process.env.DEBUGGING,t=e=>`%c ${e}`,s=e=>`\n background: ${e?"#C10015 ":"#1976d2"};\n font-weight: bold;\n color: white;\n padding: 6px 20px;\n border-radius: 4px;\n display: block;\n width: 100%;\n font-size: 12px;\n `;return{group(o,l=[],{error:a}={}){if(e){console.groupCollapsed(t(o),s(a));for(const e of l)"string"!=typeof e?console.table(e):console.info(t(e),s(a));console.groupEnd()}},info(o){e&&console.info(t(o),s())},error(o){e&&console.info(t(o),s(!0))}}};l.Notify.registerType("error",{color:"negative",progress:!0});var Oe=(e,t)=>{l.Notify.create({caption:t,message:e,type:"error"})};l.Notify.registerType("success",{icon:"o_check",progress:!0});var Qe=(e,t)=>{l.Notify?.create({caption:t,message:e,type:"success"})},Pe=()=>{const e={isSmall:()=>l.Screen.xs,isMedium:()=>l.Screen.sm,isLarge:()=>l.Screen.gt.sm,untilMedium:()=>l.Screen.lt.sm,untilLarge:()=>l.Screen.lt.md,isMobile:()=>l.Platform.is.mobile||!1},t={};for(const s in e)Object.defineProperty(t,s,{get:()=>e[s](),enumerable:!0});return t};const De=e.reactive({list:[]});function Me(){const t=e.computed((()=>De.list.length>1));return{history:De,hasPreviousRoute:t,getPreviousRoute:function(e){const t=a.findLastIndex(De.list,(t=>t.name===e.name));return~t&&De.list.splice(t,1),De.list[De.list.length-1]},addRoute:function(e){De.list?.[De.list?.length-1]?.name===e.name||De.list.push(e)},destroyRoutes:function(e){if(!De.list.length)return null;e.forEach((e=>{const t=De.list.findIndex((t=>t.name===e.name));~t&&De.list.splice(t,1)}))}}}var Ie={name:"QasDelete",components:{QasBtn:B,QasDialog:$e},props:{customId:{default:"",type:[Number,String]},dialogProps:{default:()=>({}),type:Object},entity:{required:!0,type:String},tag:{default:"qas-btn",type:String},url:{default:"",type:String},deleting:{type:Boolean},useAutoDeleteRoute:{default:!0,type:Boolean}},emits:["success","error","update:deleting"],data:()=>({showDialog:!1}),computed:{defaultDialogProps(){return{card:{title:"Confirmar",description:"Tem certeza que deseja excluir este item?"},ok:{label:"Excluir",onClick:this.destroy},...this.dialogProps}},id(){return this.customId||this.$route.params.id}},methods:{openConfirmDialog(){this.showDialog=!0},async destroy(){l.Loading.show(),this.$emit("update:deleting",!0);try{const{destroyRoutes:e,history:t}=Me(),s={id:this.id,url:this.url};if(this.$qas.logger.group(`QasDelete - destroy -> Payload do parâmetro do ${this.entity}/destroy`,[s]),await this.$store.dispatch(`${this.entity}/destroy`,s),Qe("Item deletado com sucesso!"),this.useAutoDeleteRoute){e(this.getRoutesToBeDeletedById(t.list))}this.createDeleteSuccessEvent(),this.$emit("success"),this.$qas.logger.info("QasDelete - destroy -> item deletado com sucesso!")}catch(e){Oe("Ops! Não foi possível deletar o item."),this.$emit("error",e),this.$qas.logger.group(`QasDelete - destroy -> exceção da action ${this.entity}/destroy`,[e],{error:!0})}finally{l.Loading.hide(),this.$emit("update:deleting",!1)}},getRoutesToBeDeletedById(e=[]){return e.filter((({params:e})=>e.id===this.id))},createDeleteSuccessEvent(){const e=new CustomEvent("delete-success",{bubbles:!1,cancelable:!1,detail:{entity:this.entity,url:this.url,id:this.id}});window.dispatchEvent(e)}}};Ie.render=function(t,s,o,l,a,r){const i=e.resolveComponent("qas-dialog");return e.openBlock(),e.createElementBlock(e.Fragment,null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.tag),e.mergeProps(t.$attrs,{onClick:r.openConfirmDialog}),e.createSlots({_:2},[e.renderList(t.$slots,((s,o)=>({name:o,fn:e.withCtx((s=>[e.renderSlot(t.$slots,o,e.normalizeProps(e.guardReactiveProps(s||{})))]))})))]),1040,["onClick"])),e.createVNode(i,e.mergeProps({modelValue:a.showDialog,"onUpdate:modelValue":s[0]||(s[0]=e=>a.showDialog=e)},r.defaultDialogProps),null,16,["modelValue"])],64)},Ie.__file="src/components/delete/QasDelete.vue";var ze={name:"QasDialogRouter",emits:["error","hide"],expose:["show","hide"],data:()=>({component:null,parentRoute:"",route:null}),methods:{hide(){this.$refs.dialog.hide()},onDialogHide(){history&&this.parentRoute&&history.replaceState(null,null,this.parentRoute),this.component="",this.parentRoute="",this.route=null,this.$emit("hide")},resolveRoute(e){return this.$router.resolve(e)},async show(t){this.parentRoute=this.$route.fullPath,this.route=this.resolveRoute(t),history&&history.replaceState(null,null,this.route.fullPath);try{l.Loading.show();const t=e.markRaw(l.extend(!0,{},[...this.route.matched].pop().components.default));if("function"!=typeof t.value)this.component=t,this.$refs.dialog.show();else{const e=(await t()).default;this.component=e,this.$refs.dialog.show()}}catch(e){Oe("Ops! Erro ao carregar item."),this.$emit("error",e)}finally{l.Loading.hide()}}}};ze.render=function(t,s,o,l,a,r){const i=e.resolveComponent("q-card-section"),n=e.resolveComponent("q-card"),d=e.resolveComponent("q-dialog");return e.openBlock(),e.createBlock(d,{ref:"dialog",persistent:"",onHide:r.onDialogHide},{default:e.withCtx((()=>[e.createVNode(n,{class:"full-width",style:{"max-width":"80vw"}},{default:e.withCtx((()=>[e.createVNode(i,null,{default:e.withCtx((()=>[a.component?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.component),{key:0,route:a.route,"use-boundary":!1,onHide:r.hide},null,8,["route","onHide"])):e.createCommentVNode("v-if",!0)])),_:1})])),_:1})])),_:1},8,["onHide"])},ze.__file="src/components/dialog-router/QasDialogRouter.vue";var Re={name:"QasInput",inheritAttrs:!1,props:{error:{type:Boolean},errorMessage:{type:String,default:""},modelValue:{default:"",type:[String,Number]},outlined:{default:!0,type:Boolean},unmaskedValue:{default:!0,type:Boolean},useRemoveErrorOnType:{type:Boolean}},emits:["update:modelValue"],data:()=>({errorData:!1,messageErrorData:""}),computed:{hasError(){return this.inputReference.hasError},inputReference(){return this.$refs.input},mask(){const{mask:e}=this.$attrs;return Object.prototype.hasOwnProperty.call(this.masks,e)?this.masks[e]():e},masks(){return{"company-document":()=>"##.###.###/####-##",document:()=>this.toggleMask("###.###.###-###","##.###.###/####-##"),"personal-document":()=>"###.###.###-##",phone:()=>this.toggleMask("(##) ####-#####","(##) #####-####"),"postal-code":()=>"#####-###"}},model:{get(){return this.modelValue},set(e){return this.useRemoveErrorOnType&&this.error&&(this.errorData=!1,this.errorMessageData=""),this.$emit("update:modelValue",e)}}},watch:{mask(){const e=this.getInput();requestAnimationFrame((()=>{e.selectionStart=e.value?e.value.length:""}))},error:{handler(e){this.errorData=e},immediate:!0},errorMessage:{handler(e){this.errorMessageData=e},immediate:!0}},methods:{focus(){return this.inputReference.focus()},resetValidation(){return this.inputReference.resetValidation()},toggleMask(e,t){if(!this.modelValue?.length)return;const s=e.split("#").length-2;return this.modelValue?.length>s?t:e},validate(e){return this.inputReference.validate(e)},onPaste(e){if(!this.mask)return;const t=e.clipboardData.getData("text"),s=this.getInput();requestAnimationFrame((()=>{this.$emit("update:modelValue",t),s.selectionStart=s.value?s.value.length:""}))},getInput(){return this.inputReference.$el?.querySelector("input")}}};Re.render=function(t,s,o,l,a,r){const i=e.resolveComponent("q-input");return e.openBlock(),e.createBlock(i,e.mergeProps({ref:"input",modelValue:r.model,"onUpdate:modelValue":s[0]||(s[0]=e=>r.model=e),"bottom-slots":"",error:a.errorData},t.$attrs,{"error-message":t.errorMessageData,mask:r.mask,outlined:o.outlined,"unmasked-value":o.unmaskedValue,onPaste:r.onPaste}),e.createSlots({_:2},[e.renderList(t.$slots,((s,o)=>({name:o,fn:e.withCtx((s=>[e.renderSlot(t.$slots,o,e.normalizeProps(e.guardReactiveProps(s||{})))]))})))]),1040,["modelValue","error","error-message","mask","outlined","unmasked-value","onPaste"])},Re.__file="src/components/input/QasInput.vue";const Ae={decimal:"commaDecimalCharDotSeparator",integer:["commaDecimalCharDotSeparator","integer"],money:"Brazilian",percent:"percentageEU2dec"};var je={name:"QasNumericInput",props:{autonumericOptions:{default:()=>({}),type:Object},decimalPlaces:{default:2,type:Number},mode:{default:"integer",type:String,validator:e=>["integer","decimal","percent","money"].includes(e)},modelValue:{default:"",type:[String,Number],validator:e=>"number"==typeof e||"string"==typeof e||""===e||null===e},preset:{default:!1,type:[Boolean,String]},useNegative:{default:!0,type:Boolean},usePositive:{default:!0,type:Boolean}},emits:["update:modelValue","update-model"],data:()=>({autoNumeric:null}),computed:{defaultMode(){return Ae[this.mode]}},watch:{modelValue(e){this.autoNumeric&&this.autoNumeric.set(e)}},async created(){const e=f.default.getPredefinedOptions();let t=this.preset||this.defaultMode;Array.isArray(t)||(t=[t]);const s={};for(const o of t)Object.assign(s,e[o]);this.useNegative||(s.minimumValue=0),this.usePositive||(s.maximumValue=0),"integer"!==this.mode&&(s.decimalPlaces=this.decimalPlaces),Object.assign(s,this.autonumericOptions),this.$nextTick((()=>{this.autoNumeric=new f.default(this.$refs.input,s),this.autoNumeric.set(this.modelValue)}))},beforeUnmount(){this.autoNumeric.remove()},methods:{setSelect(){this.$refs?.input?.select()},emitValue(){this.$emit("update:modelValue",this.autoNumeric.getNumber())},emitUpdateModel(e){this.$emit("update-model",{value:e,raw:this.autoNumeric.getNumber()})}}};const Te=["id"];je.render=function(t,s,o,l,a,r){const i=e.resolveComponent("q-field");return e.openBlock(),e.createBlock(i,{"model-value":o.modelValue,outlined:""},{control:e.withCtx((({floatingLabel:t,id:o})=>[e.withDirectives(e.createElementVNode("input",{id:o,ref:"input",class:"q-field__input",onBlur:s[0]||(s[0]=(...e)=>r.emitValue&&r.emitValue(...e)),onClick:s[1]||(s[1]=(...e)=>r.setSelect&&r.setSelect(...e)),onInput:s[2]||(s[2]=e=>r.emitUpdateModel(e.target.value))},null,40,Te),[[e.vShow,t]])])),_:1},8,["model-value"])},je.__file="src/components/numeric-input/QasNumericInput.vue";const Ue={0:{color:"negative",label:"Muito fraco",progress:.05,textClass:"text-negative"},1:{color:"warning",label:"Fraco",progress:.25,textClass:"text-warning"},2:{color:"warning",label:"Bom",progress:.5,textClass:"text-warning"},3:{color:"positive",label:"Forte",progress:.75,textClass:"text-positive"},4:{color:"positive",label:"Muito forte",progress:1,textClass:"text-positive"}};var Ge={props:{levels:{default:()=>Ue,type:Object},minlength:{default:8,type:[Number,String]},specials:{default:/[!@#$%^&*()_+\-=[\]{}|;:'",<.>/?`~]/g,type:RegExp},trackColor:{default:"blue-grey-1",type:String},useLowercase:{default:!0,type:Boolean},useNumbers:{default:!0,type:Boolean},useSpecial:{default:!0,type:Boolean},useUppercase:{default:!0,type:Boolean}}},He={name:"QasPasswordStrengthChecker",mixins:[Ge],props:{modelValue:{default:!1,type:Boolean},password:{default:"",type:String}},emits:["update:modelValue"],computed:{length(){return this.password.length},level(){return this.levels[this.score]},score(){let e=-1;return e+=this.useLowercase?this.password.match(/[a-z]/g)?1:0:1,e+=this.useNumbers?this.password.match(/[0-9]/g)?1:0:1,e+=this.useSpecial?this.password.match(this.specials)?1:0:1,e+=this.useUppercase?this.password.match(/[A-Z]/g)?1:0:1,e+=this.length>=parseInt(this.minlength)?1:0,e}},watch:{password(){this.emitValue()}},created(){this.emitValue()},methods:{emitValue(){this.$emit("update:modelValue",4===this.score)}}};const We={key:0};He.render=function(t,s,o,l,a,r){const i=e.resolveComponent("q-linear-progress");return r.length?(e.openBlock(),e.createElementBlock("div",We,[e.renderSlot(t.$slots,"default",{level:r.level},(()=>[e.createVNode(i,{color:r.level.color,"track-color":t.trackColor,value:r.level.progress},null,8,["color","track-color","value"]),e.createElementVNode("div",{class:e.normalizeClass(["text-caption",r.level.textClass])},e.toDisplayString(r.level.label),3)]))])):e.createCommentVNode("v-if",!0)},He.__file="src/components/password-strength-checker/QasPasswordStrengthChecker.vue";var Ke={name:"QasPasswordInput",components:{QasPasswordStrengthChecker:He},mixins:[Ge],inheritAttrs:!1,props:{useStrengthChecker:{default:!0,type:Boolean},iconColor:{type:String,default:"primary"},modelValue:{type:String,default:""}},emits:["update:modelValue"],data:()=>({toggleType:!0}),computed:{icon(){return this.toggleType?"o_visibility_off":"o_visibility"},model:{get(){return this.modelValue},set(e){return this.$emit("update:modelValue",e)}},strengthCheckerProps(){const{modelValue:e,...t}=this.$props;return t},type(){return this.toggleType?"password":"text"}},methods:{toggle(){this.toggleType=!this.toggleType}}};Ke.render=function(t,s,o,l,a,r){const i=e.resolveComponent("q-icon"),n=e.resolveComponent("qas-password-strength-checker"),d=e.resolveComponent("qas-input");return e.openBlock(),e.createBlock(d,e.mergeProps({modelValue:r.model,"onUpdate:modelValue":s[0]||(s[0]=e=>r.model=e),"bottom-slots":!1},t.$attrs,{type:r.type,"use-remove-error-on-type":""}),e.createSlots({append:e.withCtx((()=>[e.createVNode(i,{class:"cursor-pointer",color:o.iconColor,name:r.icon,onClick:r.toggle},null,8,["color","name","onClick"])])),_:2},[e.renderList(t.$slots,((s,o)=>({name:o,fn:e.withCtx((s=>[e.renderSlot(t.$slots,o,e.normalizeProps(e.guardReactiveProps(s||{})))]))}))),o.useStrengthChecker?{name:"hint",fn:e.withCtx((()=>[e.createVNode(n,e.mergeProps(r.strengthCheckerProps,{password:r.model}),null,16,["password"])]))}:void 0]),1040,["modelValue","type"])},Ke.__file="src/components/password-input/QasPasswordInput.vue";var Ye={name:"QasUploader",components:{QasAvatar:G},inheritAttrs:!1,props:{acceptResizeTypes:{default:()=>["image/jpeg","image/png","image/gif","image/bmp","image/webp","image/jpg"],type:Array},entity:{required:!0,type:String},errorMessage:{default:"",type:String},hint:{default:"",type:String},maxFiles:{default:void 0,type:Number},picaResizeOptions:{default:()=>({}),type:Object},sizeLimit:{default:1280,type:Number},useResize:{default:!0,type:Boolean},readonly:{type:Boolean},modelValue:{default:"",type:[Array,String]},uploading:{type:Boolean},useObjectModel:{type:Boolean}},emits:["update:modelValue","update:uploading"],data:()=>({isFetching:!1,isUploading:!1,hiddenInputElement:null,uploader:null}),computed:{self(){return this},uploaderClasses(){return this.hasCustomUpload?"hidden":"fit"},showAddFile(){if(!this.readonly)return!this.maxFiles||this.modelValue.length<this.maxFiles},isMultiple(){return this.$attrs.multiple||""===this.$attrs.multiple},hasCustomUpload(){return this.$slots["custom-upload"]},itemClass(){return this.isMultiple?"col-12 col-md-3 col-sm-4":"col-12"},hintValue(){return this.hint||void 0},hasHeaderSlot(){return this.$slots.header},hasErrorMessage(){return!!this.errorMessage.length},attributes(){return{...this.$attrs,...this.$props}},defaultPicaResizeOptions(){return{unsharpAmount:160,unsharpRadius:.6,unsharpThreshold:1,...this.picaResizeOptions}}},mounted(){this.hiddenInputElement=this.$refs.hiddenInput,this.uploader=this.$refs.uploader,this.hiddenInputElement?.addEventListener?.("change",this.addFiles)},unmounted(){this.hiddenInputElement?.removeEventListener?.("change",this.addFiles)},methods:{async factory([e]){this.isMultiple||this.hasHeaderSlot||this.$refs.buttonCleanFiles.$el.click();const t=`${l.uid()}.${e.name.split(".").pop()}`,{endpoint:s}=await this.fetchCredentials(t);return{headers:[{name:"Content-Type",value:e.type||"image/jpeg"},{name:"Content-Disposition",value:"Attachment"}],sendRaw:!0,url:s}},factoryFailed(){this.updateUploading(!1),Oe("Ops! Erro ao enviar o arquivo.")},dispatchUpload(){this.$refs.buttonCleanFiles.$el.click(),this.hiddenInputElement.click()},uploaded(e){const t=e.xhr.responseURL.split("?").shift(),s={format:e.files[0].type,url:t,name:e.files[0].name},o=this.useObjectModel?s:t;this.$emit("update:modelValue",this.isMultiple?[...this.modelValue,o]:o||""),this.updateUploading(!1),this.$qas.logger.group("QasUploader - uploaded",[this.modelValue])},async fetchCredentials(e){this.isFetching=!0;try{const{data:t}=await this.$axios.post("/upload-credentials/",{entity:this.entity,filename:e});return this.$qas.logger.group("QasUploader - fetchCredentials -> resposta de /upload-credentials/",[t]),t}finally{this.isFetching=!1}},removeItem(e,t,s){if(s.isUploaded&&t.removeFile(t.files[s.indexToDelete]),s.isFailed)return;if(!this.isMultiple)return this.$emit("update:modelValue");const o=l.extend(!0,[],this.modelValue),a=this.modelValue.findIndex((t=>this.useObjectModel?t.uuid===e||t.url.includes(e):this.getFileName(t)===e));o.splice(a,1),this.$emit("update:modelValue",o)},getFileName:e=>e.split("/").pop(),getFilesList(e){e=e.map(((e,t)=>({isUploaded:!0,url:e.xhr?e.xhr.responseURL.split("?").shift():"",name:e.name,progressLabel:e.__progressLabel,sizeLabel:e.__sizeLabel,indexToDelete:t,isFailed:this.isFailed(e)})));const t=[...Array.isArray(this.modelValue)?this.modelValue:this.modelValue?[this.modelValue]:[],...e],s={};return t.forEach((e=>{if(this.useObjectModel&&e.uuid)s[e.uuid]=e;else if(e.isFailed)s[e.name]=e;else if("string"!=typeof e){if(e.url){const t=this.getFileName(e.url);s[t]=e}}else{const t=this.getFileName(e);s[t]={url:e,isUploaded:!1,name:t}}})),this.$qas.logger.group("QasUploader - getFilesList",[s]),s},getFileNameClass:e=>e?"text-negative":"text-grey-9",isFailed:e=>"failed"===e.__status,getColorFileIcon(e){return this.isFailed(e)?"negative":"primary"},async addFiles(){const e=Array.from(this.hiddenInputElement.files),t=[];this.$refs.hiddenInput.value="",e.forEach((e=>t.push(this.resizeImage(e)))),this.uploader.addFiles(await Promise.all(t))},async resizeImage(e){const{type:t}=e;if(!this.acceptResizeTypes.includes(t)||!this.useResize)return e;try{const s=new Image,o=document.createElement("canvas");s.src=URL.createObjectURL(e);const{width:l,height:a}=await function(e){return new Promise(((t,s)=>{e.addEventListener("load",(()=>{t({width:e.naturalWidth,height:e.naturalHeight})})),e.addEventListener("error",s)}))}(s);if(l<=this.sizeLimit)return this.$qas.logger.info("\n QasUploader - resizeImage -> Tamanho da imagem menor que o tamanho limite,\n sendo assim, não faz o resize\n "),e;const r=function(e,t,s){const o=e/Math.max(t,s);return o<1&&(t*=o,s*=o),{width:Math.round(t),height:Math.round(s)}}(this.sizeLimit,l,a);o.width=r.width,o.height=r.height,s.crossOrigin="",s.width=l,s.height=a;const i=g.default(),n=await i.resize(s,o,this.defaultPicaResizeOptions),d=await i.toBlob(n,t,.9),c=new File([d],e.name,{type:t});return this.$qas.logger.group("QasUploader - resizeImage -> nova imagem",[c]),c}catch{return e}},updateUploading(e){this.$emit("update:uploading",e)}}};const Je={class:"flex flex-center full-width justify-between no-border no-wrap q-gutter-xs q-pa-sm text-white transparent"},Xe={class:"col column items-start justify-center"},Ze={key:0,class:"q-uploader__title"},et={key:1,class:"q-uploader__subtitle"},tt=["accept","multiple"],st={class:"col-12 q-col-gutter-md row"},ot={class:"col items-center no-wrap row"},lt={key:0,class:"text-caption"},at={class:"items-center q-ml-sm row"};Ye.render=function(t,s,o,l,a,r){const i=e.resolveComponent("q-spinner"),n=e.resolveComponent("qas-btn"),d=e.resolveComponent("qas-avatar"),c=e.resolveComponent("q-icon"),u=e.resolveComponent("q-uploader"),m=e.resolveComponent("q-field");return e.openBlock(),e.createBlock(m,{borderless:"",class:"qas-uploader",error:r.hasErrorMessage,"error-message":o.errorMessage,hint:r.hintValue,"no-error-icon":""},e.createSlots({default:e.withCtx((()=>[e.createVNode(u,e.mergeProps({ref:"uploader","auto-upload":"",bordered:"",class:r.uploaderClasses,factory:r.factory,flat:"","max-files":o.maxFiles,method:"PUT",readonly:o.readonly},r.attributes,{onFactoryFailed:r.factoryFailed,onUploaded:r.uploaded,onUploading:s[1]||(s[1]=e=>r.updateUploading(!0))}),{header:e.withCtx((o=>[e.renderSlot(t.$slots,"header",{scope:o},(()=>[e.createElementVNode("div",Je,[o.isUploading?(e.openBlock(),e.createBlock(i,{key:0,size:"24px"})):e.createCommentVNode("v-if",!0),e.createElementVNode("div",Xe,[t.$attrs.label?(e.openBlock(),e.createElementBlock("div",Ze,e.toDisplayString(t.$attrs.label),1)):e.createCommentVNode("v-if",!0),o.files.length?(e.openBlock(),e.createElementBlock("div",et,e.toDisplayString(o.uploadProgressLabel)+" ("+e.toDisplayString(o.uploadSizeLabel)+") ",1)):e.createCommentVNode("v-if",!0)]),r.showAddFile?(e.openBlock(),e.createBlock(n,{key:1,ref:"buttonUpload",color:"white",dense:"",flat:"",icon:"o_add",round:"",onClick:s[0]||(s[0]=e=>t.$refs.hiddenInput.click())},null,512)):e.createCommentVNode("v-if",!0),e.createElementVNode("input",{ref:"hiddenInput",accept:r.attributes.accept,class:"qas-uploader__input",multiple:r.isMultiple,type:"file"},null,8,tt),e.createVNode(n,{ref:"buttonCleanFiles",class:"hidden",color:"white",onClick:o.removeUploadedFiles},null,8,["onClick"]),o.canUpload?(e.openBlock(),e.createBlock(n,{key:2,color:"white",dense:"",flat:"",icon:"o_cloud_upload",round:"",onClick:o.upload},null,8,["onClick"])):e.createCommentVNode("v-if",!0),o.isUploading?(e.openBlock(),e.createBlock(n,{key:3,color:"white",dense:"",flat:"",icon:"o_clear",round:"",onClick:o.abort},null,8,["onClick"])):e.createCommentVNode("v-if",!0)])]))])),list:e.withCtx((s=>[e.renderSlot(t.$slots,"list",{scope:s},(()=>[e.createElementVNode("div",st,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.getFilesList(s.files,s),((t,o)=>(e.openBlock(),e.createElementBlock("div",{key:o,class:e.normalizeClass(["row",r.itemClass])},[e.createVNode(d,{class:"q-mr-sm",color:"contrast-primary",icon:"o_attach_file",image:t.url,rounded:"","text-color":r.getColorFileIcon(t)},null,8,["image","text-color"]),e.createElementVNode("div",ot,[e.createElementVNode("div",{class:e.normalizeClass(["column no-wrap",{col:r.isMultiple}])},[e.createElementVNode("div",{class:e.normalizeClass(["ellipsis",r.getFileNameClass(t.isFailed)])},e.toDisplayString(t.name),3),t.isUploaded?(e.openBlock(),e.createElementBlock("div",lt,e.toDisplayString(t.progressLabel)+" ("+e.toDisplayString(t.sizeLabel)+")",1)):e.createCommentVNode("v-if",!0)],2),e.createElementVNode("div",at,[t.isFailed?(e.openBlock(),e.createBlock(c,{key:0,color:"negative",name:"o_warning",size:"20px"})):e.createCommentVNode("v-if",!0),s.readonly?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createBlock(n,{key:1,dense:"",flat:"",icon:"o_delete",round:"",onClick:e=>r.removeItem(o,s,t)},null,8,["onClick"]))])])],2)))),128))])]))])),_:3},16,["class","factory","max-files","readonly","onFactoryFailed","onUploaded"]),e.renderSlot(t.$slots,"custom-upload",{context:r.self})])),_:2},[r.hasErrorMessage?{name:"after",fn:e.withCtx((()=>[e.createVNode(c,{color:"negative",name:"o_error"})]))}:void 0]),1032,["error","error-message","hint"])},Ye.__file="src/components/uploader/QasUploader.vue";var rt={name:"QasSignaturePad",components:{QasBtn:B},props:{empty:{type:Boolean,default:!0},height:{default:"250",type:String},signatureOptions:{default:()=>({}),type:Object},type:{default:"image/png",type:String}},emits:["update:empty"],expose:["clearSignature","getSignatureData"],data:()=>({canvasId:l.uid(),hasEndStrokeEvent:!1,signaturePad:null,SignaturePad:null}),watch:{async signatureOptions(e,t){a.isEqual(e,t)||(await this.setupSignaturePad(),this.updateEmptyModel())}},mounted(){window.addEventListener("resize",this.setCanvasWidth),this.setCanvasWidth(),this.setupSignaturePad()},unmounted(){window.removeEventListener("resize",this.setCanvasWidth),this.signaturePad.off()},methods:{clearSignature(){this.signaturePad.clear(),this.updateEmptyModel()},getSignatureData(){return this.signaturePad.toDataURL(this.type)},setCanvasWidth(){const e=this.$refs.signatureContainer;e.querySelector("canvas").setAttribute("width",e.offsetWidth)},setupSignaturePad(){const e=document.getElementById(this.canvasId);this.signaturePad=new y.default(e,this.signatureOptions),this.hasEndStrokeEvent||this.signaturePad.addEventListener("endStroke",this.updateEmptyModel),this.hasEndStrokeEvent=!0,this.clearSignature()},updateEmptyModel(){this.$emit("update:empty",this.signaturePad.isEmpty())}}};const it={ref:"signatureContainer",class:"qas-signature-pad relative-position"},nt=["id","height"];rt.render=function(t,s,o,l,a,r){const i=e.resolveComponent("qas-btn");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",it,[e.createElementVNode("canvas",{id:a.canvasId,ref:t.$attrs.ref,class:"qas-signature-pad__canvas rounded-borders vertical-bottom",height:o.height},null,8,nt),o.empty?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createBlock(i,{key:0,class:"absolute-bottom-right q-mb-sm q-mr-sm",color:"primary",dense:"",icon:"o_delete",round:"",onClick:r.clearSignature},null,8,["onClick"]))],512),e.createElementVNode("div",null,[e.renderSlot(t.$slots,"default",{clearSignature:r.clearSignature,getSignatureData:r.getSignatureData})])],64)},rt.__file="src/components/signature-pad/QasSignaturePad.vue";var dt={name:"QasSignatureUploader",components:{QasBtn:B,QasDialog:$e,QasUploader:Ye,QasSignaturePad:rt},props:{dialogProps:{type:Object,default:()=>({})},uploadLabel:{default:"",type:String},signatureLabel:{default:"Assinatura",type:String},modelValue:{default:"",type:String},type:{default:"image/png",type:String},readonly:{type:Boolean}},emits:["update:modelValue"],data:()=>({isOpenedDialog:!1,isEmpty:!0,base64:""}),computed:{model:{get(){return this.modelValue},set(e){this.$emit("update:modelValue",e)}},headerClass(){return"q-pa-"+(this.readonly?"md":"sm")},defaultDialogProps(){return{maxWidth:"620px",...this.dialogProps}},signaturePadWidth(){return{[this.$qas.screen.isSmall]:{width:"100%"},[this.$qas.screen.isMedium]:{width:"570px"},[this.$qas.screen.isLarge]:{width:"350px"}}.true},signaturePadHeight(){return{[this.$qas.screen.isSmall]:"250",[this.$qas.screen.isMedium]:"400",[this.$qas.screen.isLarge]:"250"}.true}},methods:{NotifyError:Oe,openDialog(){this.readonly||(this.isOpenedDialog=!0)},getSignatureData(){this.$refs.buttonCleanFiles.$el.click(),this.base64=this.$refs.signaturePadModal.getSignatureData(),this.$refs.forceUpload.$el.click(),this.closeSignature()},closeSignature(){this.isOpenedDialog=!1},removeSignature(){this.$refs.buttonCleanFiles.$el.click(),this.$emit("update:modelValue")},upload(e){try{const t=this.signatureLabel.split(" ").join("-"),s=this.type.split("/").pop()||"png",o=function(e){const t=e.indexOf(";base64,"),s=e.substring(5,t),o=e.substr(t+8),l=atob(o),a=new ArrayBuffer(l.length),r=new Uint8Array(a);for(const e in[...l])r[e]=l.charCodeAt(e);return new Blob([a],{type:s})}(this.base64),l=new File([o],`${t}.${s}`,{type:this.type});e.addFiles([l])}catch{Oe("Ops! Erro ao enviar sua assinatura.")}}}};const ct={class:"col column items-start justify-center"},ut={key:0,class:"q-uploader__title"},mt=e.createElementVNode("div",{class:"text-bold text-center"},"Insira sua assinatura digital no campo abaixo",-1);dt.render=function(t,s,o,l,a,r){const i=e.resolveComponent("qas-btn"),n=e.resolveComponent("qas-uploader"),d=e.resolveComponent("qas-signature-pad"),c=e.resolveComponent("qas-dialog");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(n,e.mergeProps({ref:"uploader",modelValue:r.model,"onUpdate:modelValue":s[1]||(s[1]=e=>r.model=e),label:o.uploadLabel,readonly:o.readonly,"use-resize":!1},t.$attrs),{header:e.withCtx((({scope:t})=>[e.createElementVNode("div",{class:e.normalizeClass(["cursor-pointer flex flex-center full-width justify-between no-border no-wrap q-gutter-xs text-white transparent",r.headerClass]),onClick:s[0]||(s[0]=(...e)=>r.openDialog&&r.openDialog(...e))},[e.createElementVNode("div",ct,[o.uploadLabel?(e.openBlock(),e.createElementBlock("div",ut,e.toDisplayString(o.uploadLabel),1)):e.createCommentVNode("v-if",!0)]),o.readonly?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createBlock(i,{key:0,color:"white",dense:"",flat:"",icon:"o_add",round:"",onClick:r.openDialog},null,8,["onClick"])),e.createVNode(i,{ref:"forceUpload",class:"hidden",onClick:e=>r.upload(t)},null,8,["onClick"]),e.createVNode(i,{ref:"buttonCleanFiles",class:"hidden",onClick:t.removeUploadedFiles},null,8,["onClick"])],2)])),_:1},16,["modelValue","label","readonly"]),e.createVNode(c,e.mergeProps({modelValue:a.isOpenedDialog,"onUpdate:modelValue":s[3]||(s[3]=e=>a.isOpenedDialog=e)},r.defaultDialogProps),{header:e.withCtx((()=>[mt])),description:e.withCtx((()=>[e.createElementVNode("div",{style:e.normalizeStyle(r.signaturePadWidth)},[e.createVNode(d,{ref:"signaturePadModal",empty:a.isEmpty,"onUpdate:empty":s[2]||(s[2]=e=>a.isEmpty=e),height:r.signaturePadHeight},null,8,["empty","height"])],4)])),actions:e.withCtx((()=>[e.createVNode(i,{class:"full-width",color:"primary",disable:a.isEmpty,label:"Salvar","no-caps":"",onClick:r.getSignatureData},null,8,["disable","onClick"]),e.createVNode(i,{class:"full-width q-mt-sm",color:"primary",flat:"",label:"Cancelar","no-caps":"",onClick:r.closeSignature},null,8,["onClick"])])),_:1},16,["modelValue"])])},dt.__file="src/components/signature-uploader/QasSignatureUploader.vue";const pt={maxLength:"maxlength",minLength:"minlength",readOnly:"readonly"};var ht={name:"QasField",components:{QasCheckboxGroup:xe,QasDateTimeInput:Ve,QasInput:Re,QasNumericInput:je,QasPasswordInput:Ke,QasUploader:Ye,QasSignatureUploader:dt},inheritAttrs:!1,props:{error:{default:"",type:[Array,String]},field:{default:()=>({}),required:!0,type:Object},modelValue:{default:void 0,type:[Object,Array,String,Number,Boolean]}},emits:["update:modelValue"],computed:{component(){const{entity:e,extensions:t,label:s,maxlength:o,minlength:l,multiple:a,name:r,options:i,readonly:n,disable:d,filled:c=n,suffix:u,prefix:m,type:p,mask:h,maxFiles:f,useIso:g,useSearch:y,useLazyLoading:v}=this.formattedField,b={error:this.hasError||void 0,errorMessage:this.errorMessage||void 0},x={label:s,hideBottomSpace:!b.error,outlined:!0,...b,readonly:n,disable:d,filled:c,maxlength:o,minlength:l,suffix:u,prefix:m,useIso:g},k={is:"qas-numeric-input",...x},C={is:"qas-date-time-input",useIso:g,...x},V=t&&t.length?t.map((e=>`.${e}`)).join(","):"",B={default:{is:"qas-input",...x,mask:h},textarea:{is:"qas-input",type:p,...x},number:{is:"qas-input",type:"number",...x},hidden:{is:"input",name:r,type:p},email:{is:"qas-input",type:p,...x},password:{is:"qas-password-input",...x},decimal:{...k,mode:"decimal"},money:{...k,mode:"money"},percent:{...k,mode:"percent"},date:{...C,useDateOnly:!0},datetime:{...C},time:{...C,useTimeOnly:!0},boolean:{is:"q-toggle",label:s,...b},checkbox:{is:"qas-checkbox-group",label:s,options:i,...b},radio:{is:"q-option-group",label:s,options:i,type:"radio",...b},upload:{is:"qas-uploader",accept:V,autoUpload:!0,entity:e,label:s,multiple:a,readonly:n,maxFiles:f,...b},editor:{is:"q-editor",toolbar:[["undo","redo"],["bold","italic","underline"],["left","center","right","justify"],["hr","link"],["quote","unordered","ordered","outdent","indent"],["print","fullscreen"]],...b},"signature-uploader":{is:"qas-signature-uploader",entity:e,uploadLabel:s,...b},select:{is:"qas-select",entity:e,name:r,multiple:a,options:i,useSearch:y,useLazyLoading:v,...x}};return{...B[p]||B.default,...this.$attrs}},errorMessage(){return Array.isArray(this.error)?this.error.join(" "):this.error},formattedField(){const e={};for(const t in this.field)e[pt[t]||t]=this.field[t];return e},formattedValue(){return this.isBoolean?this.isEmptyValue?!!this.modelValue:JSON.parse(this.modelValue):this.modelValue},hasError(){return!!(Array.isArray(this.error)?this.error.length:this.error)},isBoolean(){return"boolean"===this.field.type},isEmptyValue(){return!!this.isBoolean&&(!this.modelValue&&(void 0===this.modelValue||"string"==typeof this.modelValue))},isNumberType(){return"number"===this.field.type}},methods:{updateModel(e){this.$emit("update:modelValue",this.isNumberType?Number(e):e)}}};ht.render=function(t,s,o,l,a,r){return e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.component.is),e.mergeProps(r.component,{"data-cy":o.field.name,"model-value":r.formattedValue,"onUpdate:modelValue":r.updateModel}),e.createSlots({_:2},[e.renderList(t.$slots,((s,o)=>({name:o,fn:e.withCtx((s=>[e.renderSlot(t.$slots,o,e.normalizeProps(e.guardReactiveProps(s||{})))]))})))]),1040,["data-cy","model-value","onUpdate:modelValue"])},ht.__file="src/components/field/QasField.vue";var ft={computed:{mx_context(){const{limit:e,ordering:t,page:s,search:o,...l}=this.$route.query;return{filters:l,limit:e,ordering:t,page:s?parseInt(s):1,search:o}}}},gt={name:"QasFilters",components:{QasBtn:B,QasField:ht},mixins:[ft],props:{useChip:{default:!0,type:Boolean},entity:{required:!0,type:String},useFilterButton:{default:!0,type:Boolean},useSearch:{default:!0,type:Boolean},useSearchOnType:{default:!0,type:Boolean},searchPlaceholder:{default:"Pesquisar...",type:String},url:{default:"",type:String},useForceRefetch:{type:Boolean}},emits:["fetch-success","fetch-error"],data:()=>({filters:{},hasFetchError:!1,isFetching:!1,search:""}),computed:{activeFilters(){if(!this.hasFields)return{};const e={},s=Object.keys(this.fields),o=t.camelizeKeys(this.mx_context.filters);for(const t in o){if(s.includes(t)){const s=M(this.fields[t],this.normalizeValues(o[t],this.fields[t]?.multiple)),{label:l,name:a}=this.fields[t];e[t]={label:l,name:a,value:s}}}return e},debounce(){return this.useSearchOnType?"500":""},fields(){return this.$store.getters[`${this.entity}/filters`]},filterButtonColor(){return this.hasActiveFilters?"primary":"grey-9"},filterButtonLabel(){return this.$q.screen.gt.xs?"Filtrar":void 0},hasActiveFilters(){return!!Object.keys(this.activeFilters).length},hasFields(){return!!Object.keys(this.fields).length},hasSearch(){return this.search.length},showFilterButton(){return!!this.$slots.filterButton||this.useFilterButton},showFilters(){return this.useFilterButton||this.showSearch},showSearch(){return!!this.$slots.search||this.useSearch}},watch:{$route(e,t){e.name===t.name&&(this.fetchFilters(),this.updateValues())},search(){this.debounce&&this.filter()}},created(){this.fetchFilters(),this.watchOnceFields()},methods:{clearFilters(){const{filters:e,...s}=this.mx_context;if(this.hasFields){const o=Object.keys(this.fields);for(const l in e){const e=t.camelize(l);o.includes(e)&&(delete s[l],delete this.filters[l])}}else this.filters={};this.$router.push({query:s})},clearSearch(){this.search="",this.filter()},async fetchFilters(){if(!this.useForceRefetch&&(this.hasFields||!this.useFilterButton))return null;this.hasFetchError=!1,this.isFetching=!0;try{this.$qas.logger.group(`QasFilters - fetchFilters -> Payload do parâmetro do ${this.entity}/fetchFilters`,[{url:this.url}]);const e=await this.$store.dispatch(`${this.entity}/fetchFilters`,{url:this.url});this.$emit("fetch-success",e),this.$qas.logger.group(`QasFilters - fetchFilters -> resposta da action ${this.entity}/fetchFilters`,[e])}catch(e){this.hasFetchError=!0,this.$emit("fetch-error",e),this.$qas.logger.group(`QasFilters - fetchFilters -> exceção da action ${this.entity}/fetchFilters`,[e],{error:!0})}finally{this.isFetching=!1}},filter(e){const{filters:t,page:s,...o}=this.mx_context,l={...t,...this.filters,...e,...o,search:this.search||void 0};this.$router.push({query:l})},getChipValue:e=>Array.isArray(e)?e.join(", "):e,removeFilter({name:e}){const t={...this.$route.query};delete t[e],delete this.filters[e],this.$router.push({query:t})},updateValues(){const{filters:e,search:t}=this.mx_context;this.search=t||"";for(const t in e)this.filters[t]=R(this.normalizeValues(e[t],this.fields[t]?.multiple))},normalizeValues:(e,t)=>Array.isArray(e)?e:t?[e]:e,watchOnceFields(){const e=this.$watch("fields",(t=>{Object.keys(t).length&&(this.updateValues(),e())}))}}};const yt={class:"q-mb-lg"},vt={key:0,class:"q-gutter-x-md row"},bt={key:0,class:"col"},xt={key:0,class:"q-pa-xl text-center"},kt={key:1,class:"q-pa-xl text-center"},Ct={class:"text-right"},Vt={key:1,class:"q-mt-md"};gt.render=function(t,s,o,l,a,r){const i=e.resolveComponent("qas-btn"),n=e.resolveComponent("qas-input"),d=e.resolveComponent("q-form"),c=e.resolveComponent("q-spinner"),u=e.resolveComponent("q-icon"),m=e.resolveComponent("qas-field"),p=e.resolveComponent("q-menu"),h=e.resolveComponent("q-chip");return e.openBlock(),e.createElementBlock("section",yt,[r.showFilters?(e.openBlock(),e.createElementBlock("div",vt,[r.showSearch?(e.openBlock(),e.createElementBlock("div",bt,[e.renderSlot(t.$slots,"search",{filter:r.filter},(()=>[o.useSearch?(e.openBlock(),e.createBlock(d,{key:0,onSubmit:s[2]||(s[2]=e.withModifiers((e=>r.filter()),["prevent"]))},{default:e.withCtx((()=>[e.createVNode(n,{modelValue:a.search,"onUpdate:modelValue":s[1]||(s[1]=e=>a.search=e),debounce:r.debounce,dense:"","hide-bottom-space":"",outlined:!1,placeholder:o.searchPlaceholder,type:"search"},{append:e.withCtx((()=>[r.hasSearch?(e.openBlock(),e.createBlock(i,{key:0,color:"grey-9",flat:"",icon:"o_clear",unelevated:"",onClick:r.clearSearch},null,8,["onClick"])):e.createCommentVNode("v-if",!0),r.debounce?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createBlock(i,{key:1,color:"grey-9",flat:"",icon:"o_search",type:"submit",unelevated:"",onClick:s[0]||(s[0]=e=>r.filter())}))])),_:1},8,["modelValue","debounce","placeholder"])])),_:1})):e.createCommentVNode("v-if",!0)]))])):e.createCommentVNode("v-if",!0),r.showFilterButton?e.renderSlot(t.$slots,"filter-button",{key:1,filter:r.filter},(()=>[o.useFilterButton?(e.openBlock(),e.createBlock(i,{key:0,color:r.filterButtonColor,flat:"",icon:"o_filter_list",label:r.filterButtonLabel},{default:e.withCtx((()=>[e.createVNode(p,{class:"full-width","max-width":"240px"},{default:e.withCtx((()=>[a.isFetching?(e.openBlock(),e.createElementBlock("div",xt,[e.createVNode(c,{color:"grey",size:"2em"})])):a.hasFetchError?(e.openBlock(),e.createElementBlock("div",kt,[e.createVNode(u,{color:"negative",name:"o_warning",size:"2em"})])):(e.openBlock(),e.createBlock(d,{key:2,class:"q-gutter-y-md q-pa-md",onSubmit:s[3]||(s[3]=e.withModifiers((e=>r.filter()),["prevent"]))},{default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.fields,((t,s)=>(e.openBlock(),e.createElementBlock("div",{key:s},[e.createVNode(m,{modelValue:a.filters[t.name],"onUpdate:modelValue":e=>a.filters[t.name]=e,dense:"",field:t},null,8,["modelValue","onUpdate:modelValue","field"])])))),128)),e.createElementVNode("div",Ct,[e.createVNode(i,{class:"q-mr-sm",flat:"",label:"Limpar","no-caps":!1,size:"12px",unelevated:"",onClick:r.clearFilters},null,8,["onClick"]),e.createVNode(i,{color:"primary",label:"Filtrar","no-caps":!1,size:"12px",type:"submit",unelevated:""})])])),_:1}))])),_:1})])),_:1},8,["color","label"])):e.createCommentVNode("v-if",!0)])):e.createCommentVNode("v-if",!0)])):e.createCommentVNode("v-if",!0),o.useChip&&r.hasActiveFilters?(e.openBlock(),e.createElementBlock("div",Vt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.activeFilters,((t,s)=>(e.openBlock(),e.createBlock(h,{key:s,color:"primary",dense:"",removable:"",size:"md","text-color":"white",onRemove:e=>r.removeFilter(t)},{default:e.withCtx((()=>[e.createTextVNode(e.toDisplayString(t.label)+' = "'+e.toDisplayString(r.getChipValue(t.value))+'"',1)])),_:2},1032,["onRemove"])))),128))])):e.createCommentVNode("v-if",!0),e.renderSlot(t.$slots,"default",{context:t.mx_context,filter:r.filter,filters:r.activeFilters,removeFilter:r.removeFilter})])},gt.__file="src/components/filters/QasFilters.vue";const Bt=["col","col-auto","fit"];var St={props:{columns:{default:()=>[],type:[Array,String,Object]},fields:{default:()=>({}),type:Object},gutter:{default:"md",type:[String,Boolean],validator:e=>"boolean"==typeof e||["xs","sm","md","lg","xl"].includes(e)}},computed:{mx_classes(){const e=["row"];return this.gutter&&e.push(`q-col-gutter-${this.gutter}`),e}},methods:{mx_getBreakpoint(e){const t=[],s={col:"col",xs:"col-xs",sm:"col-sm",md:"col-md",lg:"col-lg",xl:"col-xl"},{fieldProps:o,classes:l,...a}=e||{};for(const e in a){const o=a[e];t.push(Bt.includes(o)?o:`${s[e]}-${o}`)}return[...t,l]},mx_getFieldClass(e,t){return"string"==typeof this.columns?Bt.includes(this.columns)?this.columns:`col-${this.columns}`:Array.isArray(this.columns)?this.mx_handleColumnsByIndex(e,t):this.mx_handleColumnsByField(e,t)},mx_handleColumnsByField(e,t){return this.columns[e]?this.mx_getBreakpoint(this.columns[e]):this.mx_setDefaultColumnClass(t)},mx_handleColumnsByIndex(e,t){const s=t?this.fields:{};if(!t)for(const e in this.normalizedFields)Object.assign(s,this.normalizedFields[e].fields.visible);Array.isArray(s)||(e=Object.keys(s).findIndex((t=>t===e)));return this.columns.length?this.mx_getBreakpoint(this.columns[e]):this.mx_setDefaultColumnClass(t)},mx_setDefaultColumnClass:e=>e?"col-6 col-xs-12 col-sm-4":"col-6"}},wt={name:"QasFormGenerator",components:{QasField:ht},mixins:[St],props:{errors:{default:()=>({}),type:Object},fieldsProps:{default:()=>({}),type:Object},order:{default:()=>[],type:Array},modelValue:{default:()=>({}),required:!0,type:Object},fieldset:{default:()=>({}),type:Object},fieldsetGutter:{default:"lg",type:[String,Boolean],validator:e=>"boolean"==typeof e||["xs","sm","md","lg","xl"].includes(e)}},emits:["update:modelValue"],computed:{groupedFields(){const e={hidden:{},visible:{}};if(this.hasFieldset)return e;for(const t in this.fields){const s=this.fields[t];e["hidden"===s.type?"hidden":"visible"][t]=s}if(this.order.length){const t={};for(const s of this.order)e.visible[s]&&(t[s]=e.visible[s]);e.visible=t}return e},normalizedFields(){if(!this.hasFieldset)return{default:{fields:this.groupedFields}};const e={};for(const t in this.fieldset){const s=this.fieldset[t];e[t]={label:s.label,fields:{hidden:{},visible:{}}};for(const o of s.fields){const s=this.fields[o];s&&Object.assign(e[t].fields["hidden"===s.type?"hidden":"visible"],{[o]:s})}}return e},hasFieldset(){return!!Object.keys(this.fieldset).length},fieldsetClasses(){const e=["row"];return this.fieldsetGutter&&e.push(`q-col-gutter-y-${this.fieldsetGutter}`),e}},methods:{updateModelValue(e,t){const s={...this.modelValue};s[e]=t,this.$emit("update:modelValue",s)}}};wt.render=function(t,s,o,l,a,r){const i=e.resolveComponent("qas-label"),n=e.resolveComponent("qas-field");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(r.fieldsetClasses)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.normalizedFields,((s,l)=>(e.openBlock(),e.createElementBlock("div",{key:l,class:"full-width"},[s.label?e.renderSlot(t.$slots,`legend-${l}`,{key:0},(()=>[e.createVNode(i,{label:s.label},null,8,["label"])])):e.createCommentVNode("v-if",!0),e.createElementVNode("div",null,[e.createElementVNode("div",{class:e.normalizeClass(t.mx_classes)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.fields.visible,((s,l)=>(e.openBlock(),e.createElementBlock("div",{key:l,class:e.normalizeClass(t.mx_getFieldClass(l))},[e.renderSlot(t.$slots,`field-${s.name}`,{field:s},(()=>[e.createVNode(n,e.mergeProps(o.fieldsProps[s.name],{error:o.errors[l],field:s,"model-value":o.modelValue[s.name],"onUpdate:modelValue":e=>r.updateModelValue(s.name,e)}),null,16,["error","field","model-value","onUpdate:modelValue"])]))],2)))),128))],2),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.fields.hidden,((s,l)=>(e.openBlock(),e.createElementBlock("div",{key:l},[e.renderSlot(t.$slots,`field-${s.name}`,{field:s},(()=>[e.createVNode(n,e.mergeProps(o.fieldsProps[s.name],{field:s,"model-value":o.modelValue[s.name],"onUpdate:modelValue":e=>r.updateModelValue(s.name,e)}),null,16,["field","model-value","onUpdate:modelValue"])]))])))),128))])])))),128))],2)},wt.__file="src/components/form-generator/QasFormGenerator.vue";var _t={props:{entity:{default:"",type:String},lazyLoadingProps:{default:()=>({}),type:Object},name:{default:"",type:String},useLazyLoading:{type:Boolean},fetching:{type:Boolean}},emits:["update:modelValue","update:fetching","fetch-options-success","fetch-options-error"],data:()=>({mx_filteredOptions:[],mx_hasFetchError:!1,mx_isFetching:!1,mx_isScrolling:!1,mx_search:"",mx_fetchCount:0,mx_pagination:{page:1,lastPage:null,hasCount:!0,hasNextPage:!1}}),computed:{mx_defaultLazyLoadingProps(){const{url:e,params:t,decamelizeFieldName:s}=this.lazyLoadingProps;return{url:e||"",params:{limit:48,...t},decamelizeFieldName:void 0===s||s}},mx_hasFilteredOptions(){return!!this.mx_filteredOptions.length},mx_isFilterByFuse(){return!this.useLazyLoading}},watch:{lazyLoadingProps:{handler(e,t){c.isEqual(e,t)||(this.mx_filterOptionsByStore(""),this.$emit("update:modelValue",""))}}},methods:{async mx_filterOptionsByStore(e){this.mx_resetFilter(e),await this.mx_setFetchOptions()},mx_resetFilter(e){this.mx_filteredOptions=[],this.mx_search=e,this.mx_pagination={page:1,lastPage:null,hasCount:!0,hasNextPage:!1}},async mx_onVirtualScroll({index:e,ref:t}){const s=this.mx_filteredOptions.length-1;e===s&&this.mx_canFetchOptions()&&(await this.mx_loadMoreOptions(),this.$nextTick((()=>{t.reset(),t.refresh(s)})))},async mx_loadMoreOptions(){this.mx_isScrolling=!0;const e=await this.mx_fetchOptions();this.mx_filteredOptions.push(...e),this.$nextTick((()=>{this.mx_isScrolling=!1}))},async mx_fetchOptions(){this.mx_fetchCount++;try{this.entity||this.mx_setMissingPropsMessage("entity"),this.name||this.mx_setMissingPropsMessage("name"),this.mx_hasFetchError=!1,this.mx_isFetching=!0,this.$emit("update:fetching",!0);const{url:e,params:s,decamelizeFieldName:o}=this.mx_defaultLazyLoadingProps,{data:l}=await this.$store.dispatch(`${this.entity}/fetchFieldOptions`,{url:e,field:o?t.decamelize(this.name,{separator:"-"}):this.name,params:{...s,search:this.mx_search,offset:(this.mx_pagination.page-1)*s.limit}}),{results:a,count:r,hasNextPage:i}=l,n=void 0!==r;return this.mx_pagination={page:this.mx_pagination.page+1,lastPage:n?Math.ceil(r/s.limit):null,hasCount:n,hasNextPage:i},this.$emit("fetch-options-success",l),this.mx_handleOptions(a)}catch(e){return this.$qas.logger.group(`Mixin: searchFilterMixin - mx_fetchOptions -> exceção da action ${this.entity}/fetchFieldOptions`,[e],{error:!0}),this.mx_hasFetchError=!0,this.$emit("fetch-options-error",e),[]}finally{this.mx_isFetching=!1,this.$emit("update:fetching",!1)}},async mx_setFetchOptions(){this.mx_filteredOptions=await this.mx_fetchOptions()},mx_canFetchOptions(){const{lastPage:e,page:t,hasCount:s,hasNextPage:o}=this.mx_pagination;return(s?e&&t<=e:o)&&!this.mx_isFetching&&!this.mx_isScrolling&&this.useLazyLoading},mx_handleOptions(e){return this.labelKey&&this.valueKey?(({options:e=[],label:t,value:s})=>e.map((e=>{const{[t]:o,[s]:l,...a}=e;return{label:e[t],value:e[s],...a}})))({options:e,label:this.labelKey,value:this.valueKey}):e},mx_getMissingPropsMessage:e=>`A propriedade "${e}" é obrigatória quando a propriedade "useLazyLoading" está ativa.`,mx_setMissingPropsMessage(e){throw new Error(this.mx_getMissingPropsMessage(e))},mx_getNormalizedFuseResults:(e=[])=>e.map((({item:e})=>e))}},$t={props:{entity:{required:!0,type:String},url:{default:"",type:String},fields:{default:()=>({}),type:Object},errors:{default:()=>({}),type:Object},metadata:{default:()=>({}),type:Object},fetching:{type:Boolean},useBoundary:{default:!0,type:Boolean},beforeFetch:{default:null,type:Function}},emits:["update:fields","update:errors","update:metadata","update:fetching"],data:()=>({mx_errors:{},mx_fields:{},mx_metadata:{},mx_cancelBeforeFetch:!1,mx_isFetching:!1}),watch:{mx_isFetching(e){this.$emit("update:fetching",e)}},computed:{mx_componentTag(){return this.useBoundary?"q-page":"div"},mx_componentClass(){return this.useBoundary&&"container spaced"},mx_hasFooterSlot(){return!!this.$slots.footer},mx_hasHeaderSlot(){return!!this.$slots.header}},methods:{mx_fetchError(e){const{response:t}=e,s=t?.data?.exception||e.message;this.$qas.error("Ops! Erro ao obter os dados.",s);const o=t?.status,l=o>=500?"ServerError":{401:"Unauthorized",403:"Forbidden",404:"NotFound"}[o];l&&this.$router.replace({name:l})},mx_setErrors(t={}){this.mx_errors=e.markRaw(t)},mx_setFields(t={}){const s=q(t);this.mx_fields=e.markRaw(s)},mx_setMetadata(t={}){this.mx_metadata=e.markRaw(t)},mx_updateModels(e){for(const t in e)e[t]&&this.$emit(`update:${t}`,e[t])},mx_fetchHandler(e,t){if("function"==typeof this.beforeFetch&&!this.mx_cancelBeforeFetch)return this.beforeFetch({payload:e,resolve:e=>t(e),done:()=>{this.mx_cancelBeforeFetch=!0}});t()}}},Nt={name:"QasFormView",components:{QasBtn:B,QasDialog:$e},mixins:[$t],props:{cancelButtonLabel:{default:"Cancelar",type:String},cancelRoute:{default:"",type:[Boolean,Object,String,Function]},customId:{default:"",type:[Number,String]},disable:{type:Boolean},mode:{default:"create",type:String},route:{default:()=>({}),type:Object},useDialogOnUnsavedChanges:{default:!0,type:Boolean},ignoreKeysInUnsavedChanges:{default:()=>[],type:Array},submitButtonLabel:{default:"Salvar",type:String},modelValue:{default:()=>({}),type:Object},submitting:{type:Boolean},useActions:{default:!0,type:Boolean},useCancelButton:{default:!0,type:Boolean},useSubmitButton:{default:!0,type:Boolean},beforeSubmit:{default:null,type:Function}},emits:["submit-success","submit-error","fetch-success","fetch-error","update:modelValue","update:submitting","update:errors"],data:()=>({cachedResult:{},isSubmitting:!1,showDialog:!1,ignoreRouterGuard:!1,defaultDialogProps:{card:{title:"Atenção!",description:"Você está deixando a página e suas alterações serão perdidas. Tem certeza que deseja sair sem salvar?"},ok:{label:"Continuar editando"},cancel:{label:"Sair"}}}),computed:{cancelButtonClass(){return this.$qas.screen.isSmall&&"order-last"},fetchURL(){return this.url?`${this.url}/${this.isCreateMode?"new":"edit"}`:""},hasCancelButton(){return!("boolean"==typeof this.cancelRoute&&!this.cancelRoute)&&this.useCancelButton},id(){return this.customId||this.resolvedRoute.params.id},isCreateMode(){return"create"===this.mode},resolvedRoute(){return this.route&&Object.keys(this.route).length?this.route:this.$route},submitButtonClass(){return this.$qas.screen.isSmall&&"order-first"},isCancelButtonDisabled(){return this.disable||this.isSubmitting}},watch:{isSubmitting(e){this.$emit("update:submitting",e)}},created(){this.useDialogOnUnsavedChanges&&d.onBeforeRouteLeave(this.beforeRouteLeave),window.addEventListener("delete-success",this.setIgnoreRouterGuard),this.mx_fetchHandler({form:!0,id:this.id,url:this.fetchURL},this.fetchSingle)},onUnmounted(){window.removeEventListener("delete-success",this.setIgnoreRouterGuard)},methods:{beforeRouteLeave(e,t,s){const o=l.extend(!0,{},this.modelValue),r=l.extend(!0,{},this.cachedResult);if(!this.useDialogOnUnsavedChanges||this.ignoreRouterGuard||a.isEqualWith(o,r,this.handleIgnoreKeysInUnsavedChanges))return s();this.$qas.logger.group("QasFormView - beforeRouteLeave -> dialog chamado, modelValue diferente do cachedResult",[{modelValue:o,cachedResult:r}]),this.handleDialog((()=>{this.ignoreRouterGuard=!0,s()}))},cancel(){this.handleCancelRoute()},async fetchSingle(e={}){this.mx_isFetching=!0;try{const t={form:!0,id:this.id,url:this.fetchURL,...e};this.$qas.logger.group(`QasFormView - fetchSingle -> payload do parâmetro do ${this.entity}/fetchSingle`,[t]);const s=await this.$store.dispatch(`${this.entity}/fetchSingle`,t),{errors:o,fields:a,metadata:r,result:i}=s.data,n={...this.getModelsByFields(a),...this.modelValue};this.mx_setErrors(o),this.mx_setFields(a),this.mx_setMetadata(r),this.mx_updateModels({errors:o,fields:this.mx_fields,metadata:r}),i&&Object.assign(n,i),this.$qas.logger.group(`QasFormView - fetchSingle -> resposta da action ${this.entity}/fetchSingle`,[s]),this.useDialogOnUnsavedChanges&&(this.cachedResult=l.extend(!0,{},i||n),this.$qas.logger.group("QasFormView - fetchSingle -> cachedResult",[this.cachedResult])),this.$emit("update:modelValue",n),this.$emit("fetch-success",s,this.modelValue),this.$qas.logger.group("QasFormView - fetchSingle -> modelValue",[n])}catch(e){this.mx_fetchError(e),this.$emit("fetch-error",e),this.$qas.logger.group(`QasFormView - fetchSingle -> exceção da action ${this.entity}/fetchSingle`,[e],{error:!0})}finally{this.mx_isFetching=!1}},getModelsByFields(e){const t={};for(const s in e)t[s]=e[s].default;return t},handleCancelRoute(){if("function"==typeof this.cancelRoute)return this.cancelRoute();if(this.cancelRoute&&["string","object"].includes(typeof this.cancelRoute))return this.$router.push(this.cancelRoute);const[,e]=this.$route.path.split("/"),t=this.$router.resolve(`/${e}`);this.$router.push(t)},handleDialog(e){this.openDialog();const{addRoute:t}=Me();this.defaultDialogProps.ok.onClick=()=>t(this.$route),this.defaultDialogProps.cancel.onClick=e},openDialog(){this.showDialog=!0},handleIgnoreKeysInUnsavedChanges(e,t){this.ignoreKeysInUnsavedChanges.length&&this.ignoreKeysInUnsavedChanges.forEach((s=>{e&&(delete e[s],delete t[s])}))},submitHandler(e){e&&e.preventDefault();if("function"==typeof this.beforeSubmit)return this.beforeSubmit({payload:{id:this.id,payload:this.modelValue,url:this.url},resolve:e=>this.submit(e)});this.submit()},async submit(e={}){if(this.disable)return null;this.isSubmitting=!0;try{const t={id:this.id,payload:this.modelValue,url:this.url,...e};this.$qas.logger.group(`QasFormView - submit -> payload do ${this.entity}/${this.mode}`,[t]);const s=await this.$store.dispatch(`${this.entity}/${this.mode}`,t);this.useDialogOnUnsavedChanges&&(this.cachedResult=l.extend(!0,{},this.modelValue)),this.mx_setErrors(),Qe(s.data.status.text||"Item salvo com sucesso!"),this.$emit("submit-success",s,this.modelValue),this.$qas.logger.group(`QasFormView - submit -> resposta da action ${this.entity}/${this.mode}`,[s])}catch(e){const t=e?.response?.data?.errors,s=e?.response?.data?.status?.text,o=e?.response?.data?.exception,l=t?"Existem erros de validação no formulário.":o||e.message;this.mx_setErrors(t),this.$emit("update:errors",this.mx_errors),Oe(s||"Ops! Erro ao salvar item.",l),this.$emit("submit-error",e),this.$qas.logger.group(`QasFormView - submit -> exceção da action ${this.entity}/${this.mode}`,[e],{error:!0})}finally{this.isSubmitting=!1}},setIgnoreRouterGuard({detail:{id:e,entity:t}}){this.ignoreRouterGuard=this.id===e&&this.entity===t}}};const qt={key:0},Et={class:"justify-end q-col-gutter-md q-my-lg row"},Ft={key:1};Nt.render=function(t,s,o,l,a,r){const i=e.resolveComponent("qas-btn"),n=e.resolveComponent("q-form"),d=e.resolveComponent("qas-dialog"),c=e.resolveComponent("q-spinner"),u=e.resolveComponent("q-inner-loading"),m=e.resolveDirective("close-popup");return e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.mx_componentTag),{class:e.normalizeClass(t.mx_componentClass)},{default:e.withCtx((()=>[t.mx_hasHeaderSlot?(e.openBlock(),e.createElementBlock("header",qt,[e.renderSlot(t.$slots,"header")])):e.createCommentVNode("v-if",!0),e.createVNode(n,{ref:"form",onSubmit:r.submitHandler},{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default"),o.useActions?e.renderSlot(t.$slots,"actions",{key:0},(()=>[e.createElementVNode("div",Et,[r.hasCancelButton?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["col-12 col-sm-2",r.cancelButtonClass])},[e.withDirectives(e.createVNode(i,{class:"full-width","data-cy":`btnCancel-${t.entity}`,disable:r.isCancelButtonDisabled,label:o.cancelButtonLabel,outline:"",type:"button",onClick:r.cancel},null,8,["data-cy","disable","label","onClick"]),[[m]])],2)):e.createCommentVNode("v-if",!0),o.useSubmitButton?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["col-12 col-sm-2",r.submitButtonClass])},[e.createVNode(i,{class:"full-width","data-cy":`btnSave-${t.entity}`,disable:o.disable,label:o.submitButtonLabel,loading:a.isSubmitting,type:"submit"},null,8,["data-cy","disable","label","loading"])],2)):e.createCommentVNode("v-if",!0)])])):e.createCommentVNode("v-if",!0)])),_:3},8,["onSubmit"]),t.mx_hasFooterSlot?(e.openBlock(),e.createElementBlock("footer",Ft,[e.renderSlot(t.$slots,"footer")])):e.createCommentVNode("v-if",!0),e.createVNode(d,e.mergeProps({modelValue:a.showDialog,"onUpdate:modelValue":s[0]||(s[0]=e=>a.showDialog=e)},a.defaultDialogProps),null,16,["modelValue"]),e.createVNode(u,{showing:t.mx_isFetching},{default:e.withCtx((()=>[e.createVNode(c,{color:"grey",size:"3em"})])),_:1},8,["showing"])])),_:3},8,["class"])},Nt.__file="src/components/form-view/QasFormView.vue";var Lt={name:"QasGallery",props:{carouselNextIcon:{type:String,default:"o_chevron_right"},carouselPreviousIcon:{type:String,default:"o_chevron_left"},height:{type:String,default:""},initialSize:{type:Number,default:6},images:{type:Array,default:()=>[]},loadSize:{type:Number,default:6},showMoreLabel:{type:String,default:"Ver mais"},useLoadAll:{type:Boolean}},data(){return{carouselDialog:!1,clonedImages:[],imageIndex:[],displayedImages:this.initialSize}},computed:{imageHeight(){return this.isSingleImage?this.height||"auto":this.$qas.screen.isSmall?"90px":"120px"},galleryColumnsClasses(){return this.isSingleImage?"col-12":this.$qas.screen.isSmall?"col-6":"col-2"},hideShowMore(){return this.clonedImages.length<=this.displayedImages||this.useLoadAll},carouselImageHeight:()=>"calc((500/976) * 100vh)",showThumbnails(){return!this.isSingleImage},isSingleImage(){return 1===this.clonedImages.length}},watch:{images:{handler(e){this.clonedImages=[...e]},immediate:!0}},methods:{toggleCarouselDialog(e){this.imageIndex=e,this.carouselDialog=!this.carouselDialog},showMore(){this.displayedImages+=this.loadSize},onError(e){const t=this.clonedImages.findIndex((t=>t===e));~t&&(this.clonedImages.splice(t,1),this.$forceUpdate())},initialImages(){return this.useLoadAll?this.clonedImages:this.clonedImages.slice(0,this.displayedImages)}}};const Ot={class:"q-col-gutter-md row"},Qt={key:0,class:"full-width text-center"},Pt={class:"text-right"},Dt={key:0,class:"full-width justify-end row"};Lt.render=function(t,s,o,l,a,r){const i=e.resolveComponent("q-img"),n=e.resolveComponent("qas-btn"),d=e.resolveComponent("q-carousel-slide"),c=e.resolveComponent("q-carousel"),u=e.resolveComponent("qas-dialog"),m=e.resolveComponent("qas-box"),p=e.resolveDirective("close-popup");return e.openBlock(),e.createBlock(m,{class:"gallery"},{default:e.withCtx((()=>[e.createElementVNode("div",Ot,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.initialImages(),((t,s)=>(e.openBlock(),e.createElementBlock("div",{key:s,class:e.normalizeClass(r.galleryColumnsClasses)},[e.createVNode(i,{class:"cursor-pointer rounded-borders",height:r.imageHeight,src:t,onClick:e=>r.toggleCarouselDialog(s),onError:e=>r.onError(t)},null,8,["height","src","onClick","onError"])],2)))),128)),e.renderSlot(t.$slots,"default",{},(()=>[r.hideShowMore?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock("div",Qt,[e.createVNode(n,{class:"text-weight-bolder",color:"primary",flat:"",onClick:r.showMore},{default:e.withCtx((()=>[e.createTextVNode(e.toDisplayString(o.showMoreLabel),1)])),_:1},8,["onClick"])]))])),e.createVNode(u,{modelValue:a.carouselDialog,"onUpdate:modelValue":s[1]||(s[1]=e=>a.carouselDialog=e),cancel:!1,class:"q-pa-xl","min-width":"1100px",ok:!1,persistent:!1},{header:e.withCtx((()=>[e.createElementVNode("div",Pt,[e.withDirectives(e.createVNode(n,{dense:"",flat:"",icon:"o_close",rounded:"",onClick:r.toggleCarouselDialog},null,8,["onClick"]),[[p]])])])),description:e.withCtx((()=>[e.createVNode(c,{modelValue:a.imageIndex,"onUpdate:modelValue":s[0]||(s[0]=e=>a.imageIndex=e),animated:"",arrows:!t.$qas.screen.isSmall,"control-text-color":"primary",fullscreen:t.$qas.screen.isSmall,height:r.carouselImageHeight,"next-icon":o.carouselNextIcon,"prev-icon":o.carouselPreviousIcon,swipeable:"",thumbnails:r.showThumbnails},{default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.clonedImages,((s,o)=>(e.openBlock(),e.createBlock(d,{key:o,class:"bg-no-repeat bg-size-contain","img-src":s,name:o},{default:e.withCtx((()=>[t.$qas.screen.isSmall?(e.openBlock(),e.createElementBlock("div",Dt,[e.createVNode(n,{dense:"",flat:"",icon:"o_close",onClick:r.toggleCarouselDialog},null,8,["onClick"])])):e.createCommentVNode("v-if",!0)])),_:2},1032,["img-src","name"])))),128))])),_:1},8,["modelValue","arrows","fullscreen","height","next-icon","prev-icon","thumbnails"])])),_:1},8,["modelValue"])])])),_:3})},Lt.__file="src/components/gallery/QasGallery.vue";var Mt={name:"QasGridGenerator",mixins:[St],props:{contentClass:{default:"",type:[Array,Object,String]},headerClass:{default:"text-bold",type:[Array,Object,String]},emptyResultText:{default:"-",type:String},result:{default:()=>({}),type:Object},useEmptyResult:{default:!0,type:Boolean}},data:()=>({slotValue:{}}),computed:{formattedFields(){if(this.useEmptyResult)return this.$qas.logger.group('QasGridGenerator - formattedFields -> this.useEmptyResult tem valor "true"',[this.fields]),this.fields;const e={};for(const t in this.fields){const s=this.result[t];(Array.isArray(s)?s.length:a.isObject(s)?Object.keys(s).length:s)&&(e[t]=this.fields[t])}return this.$qas.logger.group("QasGridGenerator - formattedFields",[e]),e},resultsByFields(){return this.getResultsByFields()}},methods:{getResultsByFields(){const e={},t=l.extend(!0,{},this.result);for(const s in t)this.formattedFields[s]?.type&&(e[s]=M(this.formattedFields[s],t[s])||this.emptyResultText,this.slotValue[s]={...this.formattedFields[s],formattedResult:e[s]});return this.$qas.logger.group("QasGridGenerator - getResultsByFields",[e]),e}}};Mt.render=function(t,s,o,l,a,r){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.mx_classes)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.formattedFields,((s,l)=>(e.openBlock(),e.createElementBlock("div",{key:l,class:e.normalizeClass(t.mx_getFieldClass(l,!0))},[e.renderSlot(t.$slots,`field-${s.name}`,{field:a.slotValue[l]},(()=>[e.renderSlot(t.$slots,"header",{field:a.slotValue[l]},(()=>[e.createElementVNode("header",{class:e.normalizeClass(o.headerClass)},e.toDisplayString(s.label),3)])),e.renderSlot(t.$slots,"content",{field:a.slotValue[l]},(()=>[e.createElementVNode("div",{class:e.normalizeClass(o.contentClass)},e.toDisplayString(r.resultsByFields[l]),3)]))]))],2)))),128))],2)},Mt.__file="src/components/grid-generator/QasGridGenerator.vue";var It={name:"QasLabel",props:{count:{default:0,type:[Number,String]},label:{default:"",type:String},margin:{default:"sm",type:String}},computed:{labelClass(){return`q-mb-${this.margin}`},labelWithSuffix(){return e=this.label,(t=parseFloat(this.count))?`${e} (${t})`:e;var e,t}}};It.render=function(t,s,o,l,a,r){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["text-bold text-subtitle2",r.labelClass])},[e.renderSlot(t.$slots,"default",{labelWithSuffix:r.labelWithSuffix},(()=>[e.createTextVNode(e.toDisplayString(r.labelWithSuffix),1)]))],2)},It.__file="src/components/label/QasLabel.vue";var zt={name:"QasLayout",components:{QasAppBar:H,QasAppMenu:ne},props:{appBarProps:{default:()=>({}),type:Object},appMenuProps:{default:()=>({}),type:Object},modelValue:{default:!0,type:Boolean}},emits:["update:modelValue"],data:()=>({menuDrawer:!0}),computed:{defaultAppMenuProps(){return{...this.appMenuProps,title:this.appBarProps?.title}}},watch:{modelValue:{handler(e){this.menuDrawer=e},immediate:!0}},mounted(){this.menuDrawer=!this.$qas.screen.untilMedium},methods:{toggleMenuDrawer(){this.menuDrawer=!this.menuDrawer,this.$emit("update:modelValue",this.menuDrawer)}}};zt.render=function(t,s,o,l,a,r){const i=e.resolveComponent("qas-app-bar"),n=e.resolveComponent("qas-app-menu"),d=e.resolveComponent("router-view"),c=e.resolveComponent("q-page-container"),u=e.resolveComponent("q-layout");return e.openBlock(),e.createBlock(u,{view:"hHh Lpr lFf"},{default:e.withCtx((()=>[e.renderSlot(t.$slots,"app-bar",{},(()=>[e.createVNode(i,e.mergeProps(o.appBarProps,{onToggleMenu:r.toggleMenuDrawer}),null,16,["onToggleMenu"])])),e.renderSlot(t.$slots,"app-menu",{},(()=>[e.createVNode(n,e.mergeProps({modelValue:a.menuDrawer,"onUpdate:modelValue":s[0]||(s[0]=e=>a.menuDrawer=e)},r.defaultAppMenuProps),null,16,["modelValue"])])),e.renderSlot(t.$slots,"default",{},(()=>[e.createVNode(c,null,{default:e.withCtx((()=>[e.createVNode(d)])),_:1})]))])),_:3})},zt.__file="src/components/layout/QasLayout.vue";var Rt={name:"QasListItems",components:{QasBtn:B},props:{iconProps:{default:()=>({color:"primary",name:"o_chevron_right"}),type:Object},list:{default:()=>[],type:Array},useClickableItem:{type:Boolean},useSectionActions:{default:!0,type:Boolean}},emits:["click-item"],methods:{onClick({item:e,index:t},s){s&&!this.useClickableItem||!s&&this.useClickableItem||this.$emit("click-item",{item:e,index:t})}}};const At={class:"qas-list-items shadow-14"};Rt.render=function(t,s,o,l,a,r){const i=e.resolveComponent("q-item-section"),n=e.resolveComponent("q-icon"),d=e.resolveComponent("qas-btn"),c=e.resolveComponent("q-item"),u=e.resolveComponent("q-list"),m=e.resolveDirective("ripple");return e.openBlock(),e.createElementBlock("div",At,[e.createVNode(u,{bordered:"",class:"rounded-borders",separator:""},{default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.list,((s,l)=>e.withDirectives((e.openBlock(),e.createBlock(c,{key:l,clickable:o.useClickableItem,onClick:e=>r.onClick({item:s,index:l},!0)},{default:e.withCtx((()=>[e.renderSlot(t.$slots,"item",{index:l,item:s},(()=>[e.createVNode(i,null,{default:e.withCtx((()=>[e.renderSlot(t.$slots,"item-section",{index:l,item:s})])),_:2},1024),o.useSectionActions?(e.openBlock(),e.createBlock(i,{key:0,side:""},{default:e.withCtx((()=>[e.renderSlot(t.$slots,"item-section-side",{index:l,item:s},(()=>[e.createVNode(d,{flat:"",round:"",onClick:e=>r.onClick({item:s,index:l})},{default:e.withCtx((()=>[e.createVNode(n,e.normalizeProps(e.guardReactiveProps(o.iconProps)),null,16)])),_:2},1032,["onClick"])]))])),_:2},1024)):e.createCommentVNode("v-if",!0)]))])),_:2},1032,["clickable","onClick"])),[[m]]))),128))])),_:3})])},Rt.__file="src/components/list-items/QasListItems.vue";var jt={components:{QasFilters:gt},mixins:[ft,$t],props:{filtersProps:{default:()=>({}),type:Object},results:{default:()=>[],type:Array},useRefresh:{default:!0,type:Boolean},useFilter:{default:!0,type:Boolean},useResultsAreaOnly:{type:Boolean}},emits:["fetch-success","fetch-error","update:errors","update:results"],data:()=>({page:1}),computed:{hasHeaderSlot(){return!!this.$slots.header},hasPages(){return this.totalPages>1},hasResults(){return!!(this.resultsModel||[]).length},resultsModel(){return this.$store.getters[`${this.entity}/list`]},totalPages(){return this.$store.getters[`${this.entity}/totalPages`]},showResults(){return this.hasResults||this.useResultsAreaOnly}},watch:{$route(e,t){e.name===t.name&&(this.mx_fetchHandler({...this.mx_context,url:this.url},this.fetchList),this.setCurrentPage())},resultsModel:{handler(e){this.$emit("update:results",l.extend([],!0,e))},deep:!0,immediate:!0}},created(){this.mx_fetchHandler({...this.mx_context,url:this.url},this.fetchList),this.setCurrentPage()},methods:{changePage(){const e={...this.$route.query,page:this.page};this.$router.push({query:e})},async fetchList(e={}){this.mx_isFetching=!0;try{const t={...this.mx_context,url:this.url,...e};this.$qas.logger.group(`QasListView - fetchList -> Payload do parâmetro do ${this.entity}/fetchList`,[t]);const s=await this.$store.dispatch(`${this.entity}/fetchList`,t),{errors:o,fields:l,metadata:a}=s.data;this.mx_setErrors(o),this.mx_setFields(l),this.mx_setMetadata(a),this.mx_updateModels({errors:this.mx_errors,fields:this.mx_fields,metadata:this.mx_metadata}),this.$emit("fetch-success",s),this.$qas.logger.group(`QasListView - fetchList -> resposta da action ${this.entity}/fetchList`,[s])}catch(e){this.mx_fetchError(e),this.$emit("update:errors",e),this.$emit("fetch-error",e),this.$qas.logger.group(`QasListView - fetchSingle -> exceção da action ${this.entity}/fetchList`,[e],{error:!0})}finally{this.mx_isFetching=!1}},async refresh(e){await this.mx_fetchHandler({...this.mx_context,url:this.url},this.fetchList),"function"==typeof e&&e()},setCurrentPage(){this.page=parseInt(this.$route.query.page||1)}}};const Tt={key:0},Ut={class:"relative-position"},Gt={key:0},Ht={key:1},Wt={class:"q-my-xl text-center"},Kt=e.createElementVNode("div",{class:"text-grey-7"},"Nenhum item encontrado.",-1),Yt={key:2,class:"q-py-lg text-center"},Jt={key:3,class:"justify-center q-mt-lg"};jt.render=function(t,s,o,l,a,r){const i=e.resolveComponent("qas-filters"),n=e.resolveComponent("q-icon"),d=e.resolveComponent("q-spinner"),c=e.resolveComponent("q-pagination"),u=e.resolveComponent("q-inner-loading"),m=e.resolveComponent("q-pull-to-refresh");return e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.mx_componentTag),{class:e.normalizeClass(t.mx_componentClass)},{default:e.withCtx((()=>[e.createVNode(m,{disable:!o.useRefresh,onRefresh:r.refresh},{default:e.withCtx((()=>[r.hasHeaderSlot?(e.openBlock(),e.createElementBlock("header",Tt,[e.renderSlot(t.$slots,"header")])):e.createCommentVNode("v-if",!0),o.useFilter?e.renderSlot(t.$slots,"filter",{key:1},(()=>[e.createVNode(i,e.mergeProps(o.filtersProps,{entity:t.entity}),null,16,["entity"])])):e.createCommentVNode("v-if",!0),e.createElementVNode("main",Ut,[r.showResults?(e.openBlock(),e.createElementBlock("div",Gt,[e.renderSlot(t.$slots,"default")])):t.mx_isFetching?(e.openBlock(),e.createElementBlock("div",Yt,[e.createVNode(d,{color:"grey",size:"3em"})])):(e.openBlock(),e.createElementBlock("div",Ht,[e.renderSlot(t.$slots,"empty-results",{},(()=>[e.createElementVNode("div",Wt,[e.createVNode(n,{class:"q-mb-sm text-center",color:"grey-7",name:"o_search",size:"38px"}),Kt])]))])),r.hasPages?(e.openBlock(),e.createElementBlock("div",Jt,[e.createVNode(c,{modelValue:a.page,"onUpdate:modelValue":s[0]||(s[0]=e=>a.page=e),"boundary-links":"",class:"flex-center","direction-links":"",input:t.$q.screen.lt.sm,max:r.totalPages,"max-pages":6,onClick:r.changePage},null,8,["modelValue","input","max","onClick"])])):e.createCommentVNode("v-if",!0),e.createVNode(u,{showing:r.hasResults&&t.mx_isFetching},{default:e.withCtx((()=>[e.createVNode(d,{color:"grey",size:"3em"})])),_:1},8,["showing"])])])),_:3},8,["disable","onRefresh"]),e.renderSlot(t.$slots,"footer")])),_:3},8,["class"])},jt.__file="src/components/list-view/QasListView.vue";var Xt={name:"QasMap",props:{centerPosition:{type:Object,default:()=>({})},markers:{type:Array,default:()=>[]},zoom:{type:Number,default:17},usePopup:{type:Boolean}},emits:["update-position"],data:()=>({isPopupDisplayed:!1,currentPlace:null,indexMarker:null}),methods:{openPopup({title:e,description:t},s){this.indexMarker=s,this.isPopupDisplayed=!(!e&&!t)},canShowPopup(e){return this.isPopupDisplayed&&this.usePopup&&e===this.indexMarker},closePopup(){this.isPopupDisplayed=!1},updatePosition(e){this.$emit("update-position",e.latLng.toJSON())}}};const Zt={class:"qas-map"},es={class:"text-weight-bold"};Xt.render=function(t,s,o,l,a,r){const i=e.resolveComponent("g-map-info-window"),n=e.resolveComponent("g-map-marker"),d=e.resolveComponent("g-map-map");return e.openBlock(),e.createElementBlock("div",Zt,[e.createVNode(d,{center:o.centerPosition,class:"qas-map__draw",zoom:o.zoom},{default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.markers,((t,s)=>(e.openBlock(),e.createBlock(n,{key:s,draggable:t.draggable,icon:t.icon,position:t.position,onDragend:r.updatePosition,onMouseout:r.closePopup,onMouseover:e=>r.openPopup(t,s)},{default:e.withCtx((()=>[e.createVNode(i,{opened:r.canShowPopup(s)},{default:e.withCtx((()=>[e.createElementVNode("div",es,e.toDisplayString(t.title),1),e.createElementVNode("div",null,e.toDisplayString(t.description),1)])),_:2},1032,["opened"])])),_:2},1032,["draggable","icon","position","onDragend","onMouseout","onMouseover"])))),128))])),_:1},8,["center","zoom"])])},Xt.__file="src/components/map/QasMap.vue";var ts={name:"QasNestedFields",components:{QasBtn:B,QasFormGenerator:wt,QasInput:Re,QasLabel:It,TransitionGroup:e.TransitionGroup},props:{addInputLabel:{type:String,default:"Inserir novo campo"},buttonDestroyProps:{type:Object,default:()=>({label:"Remover",icon:"o_cancel",flat:!0,dense:!0})},buttonDuplicateProps:{type:Object,default:()=>({label:"Duplicar",icon:"o_content_copy",flat:!0,useLabelOnSmallScreen:!1,dense:!0})},destroyKey:{type:String,default:"destroyed"},errors:{type:[Array,Object],default:()=>({})},field:{type:Object,default:()=>({})},fieldsProps:{type:Object,default:()=>({})},formColumns:{type:Object,default:()=>({})},formGutter:{type:String,default:"md",validator:e=>["xs","sm","md","lg","xl"].includes(e)},identifierItemKey:{type:String,default:"uuid"},rowLabel:{type:String,default:""},rowObject:{type:Object,default:()=>({})},useAnimation:{type:Boolean,default:!0},useDestroyAlways:{type:Boolean},useDuplicate:{type:Boolean,default:!0},useIndexLabel:{type:Boolean},useInlineActions:{type:Boolean},useSingleLabel:{type:Boolean},useRemoveOnDestroy:{type:Boolean,default:!0},modelValue:{type:Array,default:()=>[]}},emits:["update:modelValue"],data:()=>({nested:[]}),computed:{fieldLabel(){return this.field?.label},fieldName(){return this.field?.name},children(){return this.field?.children},showDestroyBtn(){return this.nested.filter((e=>!e[this.destroyKey])).length>1||this.useDestroyAlways},formClasses(){return{col:!0,[`q-col-gutter-x-${this.formGutter}`]:this.useInlineActions}},transformedErrors(){return Array.isArray(this.errors)?this.errors:N(this.fieldName,this.errors)},componentTag(){return this.useAnimation?"transition-group":"div"},componentProps(){return this.useAnimation?{tag:"div",enterActiveClass:"animated slideInDown"}:{}}},watch:{modelValue:{handler(e){this.nested=l.extend(!0,[],e)},immediate:!0},rowObject:{handler(){if(!this.nested.length)return this.setDefaultNestedValue()},immediate:!0}},methods:{add(e={}){const t={...this.rowObject,...e};return t[this.identifierItemKey]&&delete t[this.identifierItemKey],this.nested.push(t),this.$nextTick((()=>{this.useAnimation&&this.setScroll(),this.setFocus()})),this.$qas.logger.group("QasNestedFields - add",[t]),this.updateModelValue()},setFocus(){const{formGenerator:e}=this.$refs,t=e.pop().querySelector("input, select, textarea");return t?.focus&&t.focus()},updateModelValue(e){return this.$emit("update:modelValue",e||this.nested)},destroy(e,t){return!t[this.identifierItemKey]&&this.useRemoveOnDestroy?this.nested.splice(e,1):this.nested.splice(e,1,{[this.destroyKey]:!0,...t}),this.$qas.logger.group("QasNestedFields - destroy",[{index:e,row:t}]),this.updateModelValue()},updateValuesFromInput(e,t){return this.nested.splice(t,1,e),this.updateModelValue(null,t)},setDefaultNestedValue(){this.nested.splice(0,0,{...this.rowObject})},setScroll(){const e=this.$refs.inputContent.children,t=e[e.length-1],{top:s}=t.getBoundingClientRect(),o=window.pageYOffset;window.scrollTo({behavior:"smooth",top:o+s})},getRowLabel(e){return this.rowLabel?this.useIndexLabel?`${this.rowLabel} ${e+1}`:this.rowLabel:this.fieldLabel}}};const ss=["id"],os={class:"text-left"},ls={ref:"inputContent"},as=["id"],rs={class:"flex items-center justify-between q-py-xs"},is={key:1,class:"q-gutter-x-sm"},ns={key:0,class:"flex items-center qas-nested-fields__actions"},ds={class:"col-auto"},cs={class:"col-auto"},us={class:"col-12"},ms={class:"q-mt-md"},ps={class:"col"},hs={class:"col-auto"},fs={key:1,class:"q-mt-lg"};ts.render=function(t,s,o,l,a,r){const i=e.resolveComponent("qas-label"),n=e.resolveComponent("qas-btn"),d=e.resolveComponent("qas-form-generator"),c=e.resolveComponent("qas-input");return e.openBlock(),e.createElementBlock("div",{id:r.fieldName,class:"qas-nested-fields"},[e.createElementVNode("div",os,[o.useSingleLabel?(e.openBlock(),e.createBlock(i,{key:0,label:r.fieldLabel},null,8,["label"])):e.createCommentVNode("v-if",!0)]),e.createElementVNode("div",ls,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.componentTag),e.normalizeProps(e.guardReactiveProps(r.componentProps)),{default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.nested,((s,l)=>(e.openBlock(),e.createElementBlock("div",{id:`row-${l}`,key:`row-${l}`,class:"full-width"},[s[o.destroyKey]?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock("div",{key:l,class:"col-12 q-mt-md"},[e.createElementVNode("div",null,[e.createElementVNode("div",rs,[o.useSingleLabel?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createBlock(i,{key:0,label:r.getRowLabel(l)},null,8,["label"])),o.useInlineActions?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock("div",is,[o.useDuplicate?(e.openBlock(),e.createBlock(n,e.mergeProps({key:0},o.buttonDuplicateProps,{onClick:e=>r.add(s)}),null,16,["onClick"])):e.createCommentVNode("v-if",!0),r.showDestroyBtn?(e.openBlock(),e.createBlock(n,e.mergeProps({key:1},o.buttonDestroyProps,{onClick:e=>r.destroy(l,s)}),null,16,["onClick"])):e.createCommentVNode("v-if",!0)]))]),e.createElementVNode("div",{ref_for:!0,ref:"formGenerator",class:"col-12 justify-between q-col-gutter-x-md row"},[e.renderSlot(t.$slots,"fields",{errors:r.transformedErrors,fields:r.children,index:l,updateValue:r.updateValuesFromInput},(()=>[e.createVNode(d,{modelValue:a.nested[l],"onUpdate:modelValue":[e=>a.nested[l]=e,e=>r.updateValuesFromInput(e,l)],class:e.normalizeClass(r.formClasses),columns:o.formColumns,errors:r.transformedErrors[l],fields:r.children,"fields-props":o.fieldsProps},e.createSlots({_:2},[e.renderList(t.$slots,((s,o)=>({name:o,fn:e.withCtx((s=>[e.renderSlot(t.$slots,o,e.mergeProps(s,{errors:r.transformedErrors,index:l}))]))})))]),1032,["modelValue","onUpdate:modelValue","class","columns","errors","fields","fields-props"])])),o.useInlineActions?(e.openBlock(),e.createElementBlock("div",ns,[e.createElementVNode("div",ds,[o.useDuplicate?(e.openBlock(),e.createBlock(n,{key:0,color:"primary",flat:"",icon:"o_content_copy",round:"",onClick:e=>r.add(s)},null,8,["onClick"])):e.createCommentVNode("v-if",!0)]),e.createElementVNode("div",cs,[r.showDestroyBtn?(e.openBlock(),e.createBlock(n,{key:0,color:"negative",flat:"",icon:"o_cancel",round:"",onClick:e=>r.destroy(l,s)},null,8,["onClick"])):e.createCommentVNode("v-if",!0)])])):e.createCommentVNode("v-if",!0)],512),e.createElementVNode("div",us,[e.renderSlot(t.$slots,"custom-fields",{fields:r.children,index:l,model:a.nested[l],updateValue:r.updateValuesFromInput})])])]))],8,as)))),128))])),_:3},16)),e.createElementVNode("div",ms,[e.renderSlot(t.$slots,"add-input",{add:r.add},(()=>[o.useInlineActions?(e.openBlock(),e.createElementBlock("div",{key:0,class:"cursor-pointer items-center q-col-gutter-x-md q-mt-md row",onClick:s[1]||(s[1]=e=>r.add())},[e.createElementVNode("div",ps,[e.createVNode(c,{class:"disabled no-pointer-events","hide-bottom-space":"",label:o.addInputLabel,outlined:"",onFocus:s[0]||(s[0]=e=>r.add())},null,8,["label"])]),e.createElementVNode("div",hs,[e.createVNode(n,{color:"green",flat:"",icon:"o_add_circle_outline",round:""})])])):(e.openBlock(),e.createElementBlock("div",fs,[e.createVNode(n,{class:"full-width q-py-md",icon:"o_add",outline:"",onClick:s[2]||(s[2]=e=>r.add())},{default:e.withCtx((()=>[e.createTextVNode(e.toDisplayString(o.addInputLabel),1)])),_:1})]))]))])],512)],8,ss)},ts.__file="src/components/nested-fields/QasNestedFields.vue";const{hasPreviousRoute:gs,history:ys,getPreviousRoute:vs}=Me();var bs={name:"QasPageHeader",mixins:[l.createMetaMixin((function(){return{title:this.title}}))],props:{breadcrumbs:{default:"",type:[Array,String]},root:{default:"",type:[Object,String]},title:{default:"",type:String},useBreadcrumbs:{default:!0,type:Boolean}},computed:{hasPreviousRoute:()=>gs.value,transformedBreadcrumbs(){const e=[...a.castArray(this.breadcrumbs||this.title)];return this.root&&e.unshift(this.root),e.map((e=>{if(e&&"string"==typeof e)return{label:e};!e.route&&e.routeName&&(e.route={name:e.routeName});const t=ys.list;if(t.length&&e?.route?.name){const s=t.find((t=>t.name===e.route.name));e.route.query=s?s.query:null}return e}))}},methods:{back(){this.$router.push(vs(this.$route))},getBreadcrumbsClass(e){return this.transformedBreadcrumbs.length-1===e?"text-grey-7":"text-primary"}}};const xs={class:"ellipsis"};bs.render=function(t,s,o,l,a,r){const i=e.resolveComponent("q-icon"),n=e.resolveComponent("q-toolbar-title"),d=e.resolveComponent("q-breadcrumbs-el"),c=e.resolveComponent("q-breadcrumbs"),u=e.resolveComponent("q-toolbar");return e.openBlock(),e.createBlock(u,{class:"justify-between q-mb-lg q-px-none"},{default:e.withCtx((()=>[e.createElementVNode("div",xs,[o.title?(e.openBlock(),e.createBlock(n,{key:0,class:"text-bold text-h5"},{default:e.withCtx((()=>[r.hasPreviousRoute?(e.openBlock(),e.createBlock(i,{key:0,class:"cursor-pointer vertical-baseline",name:"o_arrow_back",size:"18px",onClick:r.back},null,8,["onClick"])):e.createCommentVNode("v-if",!0),e.createTextVNode(" "+e.toDisplayString(o.title),1)])),_:1})):e.createCommentVNode("v-if",!0),o.useBreadcrumbs?(e.openBlock(),e.createBlock(c,{key:1,class:"text-caption","separator-color":"grey-7"},{default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.transformedBreadcrumbs,((t,s)=>(e.openBlock(),e.createBlock(d,{key:t.label,class:e.normalizeClass(r.getBreadcrumbsClass(s)),label:t.label,to:t.route},null,8,["class","label","to"])))),128))])),_:1})):e.createCommentVNode("v-if",!0)]),e.renderSlot(t.$slots,"default")])),_:3})},bs.__file="src/components/page-header/QasPageHeader.vue";var ks={name:"QasProfile",components:{QasAvatar:G,QasBox:he,QasGridGenerator:Mt},props:{columns:{type:Object,default:()=>({})},fields:{type:Object,default:()=>({})},list:{type:Array,default:()=>[]},result:{type:Object,default:()=>({})},subtitle:{type:String,default:""},tag:{type:String,default:"qas-box"},title:{type:String,default:"",required:!0}},computed:{directionClasses(){return this.$qas.screen.untilMedium?"col":"row items-center"},userAvatarImage(){return this.result.image},avatarSize(){return this.$qas.screen.isSmall?"145px":"188px"}},methods:{filterObject:function(e={},t){if(!t.length)return e;if(!Object.keys(e).length)return{};if(!Object.keys(e).length)return{};const s={};return t.forEach((t=>{e[t]&&(s[t]=e[t])})),s}}};const Cs={class:"q-col-gutter-md row"},Vs={class:"col-lg-5 col-xs-12"},Bs={class:"justify-center lg:q-mb-none md:q-mr-lg row xs:q-mb-md"},Ss={class:"text-bold text-h6"},ws={key:0};ks.render=function(t,s,o,l,a,r){const i=e.resolveComponent("qas-avatar"),n=e.resolveComponent("qas-grid-generator");return e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.tag),null,{default:e.withCtx((()=>[e.createElementVNode("div",Cs,[e.createElementVNode("div",Vs,[e.createElementVNode("div",{class:e.normalizeClass(["no-wrap q-col-gutter-md",r.directionClasses])},[e.createElementVNode("div",Bs,[e.createVNode(i,{image:r.userAvatarImage,size:r.avatarSize,title:o.title},null,8,["image","size","title"])]),e.renderSlot(t.$slots,"default",{},(()=>[e.createElementVNode("h6",Ss,e.toDisplayString(o.title),1),o.subtitle?(e.openBlock(),e.createElementBlock("div",ws,e.toDisplayString(o.subtitle),1)):e.createCommentVNode("v-if",!0)]))],2)]),e.renderSlot(t.$slots,"grid",{},(()=>[e.createVNode(n,{class:"col-lg-7 col-xs-12 items-center",columns:o.columns,fields:r.filterObject(o.fields,o.list),result:o.result,"use-empty-result":!1},e.createSlots({_:2},[e.renderList(t.$slots,((s,o)=>({name:o,fn:e.withCtx((s=>[e.renderSlot(t.$slots,o,e.normalizeProps(e.guardReactiveProps(s||{})))]))})))]),1032,["columns","fields","result"])]))])])),_:3})},ks.__file="src/components/profile/QasProfile.vue";var _s={name:"QasResizer",props:{size:{default:"",type:String},source:{required:!0,type:String},resize:{default:"cover",type:String,validator:e=>["cover","contain","fill","inside","outside"].includes(e)}},computed:{height(){return this.$attrs.height||this.imageSize.height},imageParameters(){const e={bucket:process.env.BUCKET,key:this.source,edits:{}};return(this.height||this.width)&&(e.edits.resize={fit:this.resize,height:this.height,width:this.width}),e},imageSize(){const[e,t]=this.size.split("x");return{height:t,width:e}},imageSource(){return"https://image-resize.nave.dev/"+btoa(JSON.stringify(this.imageParameters))},ratio(){if(!this.height||!this.width)return;if(this.height===this.width)return 1;const e=parseInt(this.height),t=parseInt(this.width),s=function(e,t){if("number"!=typeof e||"number"!=typeof t)throw new Error("Arguments need to be a number.");for(e=Math.abs(e),t=Math.abs(t);t;){const s=t;t=e%t,e=s}return e}(e,t);return t/s/(e/s)},width(){return this.$attrs.width||this.imageSize.width}}};const $s=e.createElementVNode("div",{class:"absolute-full bg-grey-2 flex flex-center text-grey"},"⚠︎",-1);_s.render=function(t,s,o,l,a,r){const i=e.resolveComponent("q-img");return e.openBlock(),e.createBlock(i,{ratio:r.ratio,"spinner-color":"grey-7",src:r.imageSource},{error:e.withCtx((()=>[$s])),_:1},8,["ratio","src"])},_s.__file="src/components/resizer/QasResizer.vue";var Ns={name:"QasSearchBox",components:{QasBox:he,QInfiniteScroll:l.QInfiniteScroll},mixins:[_t],props:{emptyListHeight:{default:"100px",type:String},emptyResultText:{default:"Não há resultados disponíveis.",type:String},fuseOptions:{default:()=>({}),type:Object},height:{default:"300px",type:String},list:{default:()=>[],type:Array},modelValue:{default:"",type:String},placeholder:{default:"Pesquisar",type:String},useEmptySlot:{default:!0,type:Boolean},results:{type:Array,default:()=>[]}},emits:["empty-result","update:modelValue","update:results"],data:()=>({fuse:null}),computed:{attributes(){return{clearable:!0,disable:this.isDisabled,debounce:this.useLazyLoading?500:0,outlined:!0,placeholder:this.placeholder,hideBottomSpace:!0,error:this.mx_hasFetchError,loading:this.mx_isFetching}},containerStyle(){return{height:this.containerHeight}},hasNoOptionsOnFirstFetch(){return 1===this.mx_fetchCount&&!this.mx_hasFilteredOptions},containerHeight(){return!this.list.length&&!this.useLazyLoading||this.hasNoOptionsOnFirstFetch?this.emptyListHeight:this.height},component(){const e={offset:100,scrollTarget:this.$refs.scrollContainer,ref:"infiniteScrollRef"};return{is:this.useLazyLoading?"q-infinite-scroll":"div",props:{...this.useLazyLoading&&e,...this.useLazyLoading&&{onLoad:this.onInfiniteScroll}}}},defaultFuseOptions(){return{threshold:.1,ignoreLocation:!0,...this.fuseOptions}},isDisabled(){return!this.useLazyLoading&&!this.list.length||this.mx_isFetching||this.hasNoOptionsOnFirstFetch},showEmptyResult(){return this.useEmptySlot&&!this.mx_hasFilteredOptions&&!this.mx_isFetching},showSpinnerDots(){return this.mx_hasFilteredOptions&&this.mx_isFetching},showInnerLoading(){return!this.mx_hasFilteredOptions&&this.mx_isFetching}},watch:{defaultFuseOptions(e){this.useLazyLoading||(this.fuse.options={...this.fuse.options,...e})},mx_hasFilteredOptions(e){!e&&this.$emit("empty-result")},mx_search:{async handler(e){if(this.$emit("update:modelValue",e),this.useLazyLoading)return await this.mx_filterOptionsByStore(e),this.$refs.infiniteScrollRef.resume(),void this.$refs.search.focus();this.filterOptionsByFuse(e)}},modelValue:{handler(e){this.mx_search=e},immediate:!0},mx_filteredOptions:{handler(e){this.$emit("update:results",e)},immediate:!0}},created(){this.useLazyLoading||(this.mx_filteredOptions=this.list,this.fuse=new v.default(this.list,this.defaultFuseOptions),this.setListWatcher())},methods:{filterOptionsByFuse(e){this.mx_filteredOptions=e?this.mx_getNormalizedFuseResults(this.fuse.search(e)):this.list},async onInfiniteScroll(e,t){return this.mx_hasFetchError&&!this.mx_hasFilteredOptions||this.hasNoOptionsOnFirstFetch?t():this.mx_hasFilteredOptions||this.mx_search?this.mx_canFetchOptions()?(await this.mx_loadMoreOptions(),t()):void t(!0):(await this.mx_setFetchOptions(),t())},setListWatcher(){this.$watch("list",(e=>{this.fuse=new v.default(e,this.defaultFuseOptions),this.filterOptionsByFuse(this.mx_search)}),{deep:!0})}}};const qs={class:"flex justify-center q-pb-sm"},Es={class:"absolute-center text-center"};Ns.render=function(t,s,o,l,a,r){const i=e.resolveComponent("q-icon"),n=e.resolveComponent("qas-input"),d=e.resolveComponent("q-spinner-dots"),c=e.resolveComponent("q-spinner"),u=e.resolveComponent("q-inner-loading"),m=e.resolveComponent("qas-box");return e.openBlock(),e.createBlock(m,null,{default:e.withCtx((()=>[e.createVNode(n,e.mergeProps(r.attributes,{ref:"search",modelValue:t.mx_search,"onUpdate:modelValue":s[0]||(s[0]=e=>t.mx_search=e)}),{append:e.withCtx((()=>[e.createVNode(i,{color:"primary",name:"o_search"})])),_:1},16,["modelValue"]),e.createElementVNode("div",{ref:"scrollContainer",class:"overflow-auto q-mt-xs relative-position",style:e.normalizeStyle(r.containerStyle)},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.component.is),e.normalizeProps(e.guardReactiveProps(r.component.props)),{default:e.withCtx((()=>[t.mx_hasFilteredOptions?e.renderSlot(t.$slots,"default",{key:0}):e.createCommentVNode("v-if",!0)])),_:3},16)),r.showSpinnerDots?e.renderSlot(t.$slots,"loading",{key:0},(()=>[e.createElementVNode("div",qs,[e.createVNode(d,{color:"primary",size:"20px"})])])):e.createCommentVNode("v-if",!0),r.showEmptyResult?e.renderSlot(t.$slots,"empty-result",{key:1},(()=>[e.createElementVNode("div",Es,[e.createVNode(i,{class:"q-mb-sm text-center",color:"primary",name:"o_search",size:"38px"}),e.createElementVNode("div",null,e.toDisplayString(o.emptyResultText),1)])])):e.createCommentVNode("v-if",!0),e.createVNode(u,{showing:r.showInnerLoading},{default:e.withCtx((()=>[e.createVNode(c,{color:"grey",size:"3em"})])),_:1},8,["showing"])],4)])),_:3})},Ns.__file="src/components/search-box/QasSearchBox.vue";var Fs={name:"QasSelect",mixins:[_t],props:{fuseOptions:{default:()=>({}),type:Object},labelKey:{default:"",type:String},modelValue:{default:()=>[],type:[Array,Object,String,Number,Boolean]},noOptionLabel:{default:"Nenhum resultado foi encontrado.",type:String},options:{default:()=>[],type:Array},valueKey:{default:"",type:String},useSearch:{type:Boolean}},emits:["update:modelValue"],data:()=>({fuse:null}),computed:{attributes(){return{clearable:this.isSearchable,emitValue:!0,mapOptions:!0,outlined:!0,...this.$attrs,options:this.mx_filteredOptions,useInput:this.isSearchable,error:this.hasError,loading:this.hasLoading,...this.useLazyLoading&&{onVirtualScroll:this.mx_onVirtualScroll},...this.isSearchable&&{onFilter:this.onFilter}}},defaultFuseOptions(){return{ignoreLocation:!0,keys:["label","value"],threshold:.1,...this.fuseOptions}},isSearchable(){return this.useSearch||this.useLazyLoading},defaultOptions(){return this.mx_handleOptions(this.options)},hasError(){return this.mx_hasFetchError||this.$attrs.error},hasLoading(){return this.mx_isFetching||this.$attrs.loading},model:{get(){return this.modelValue},set(e){this.$emit("update:modelValue",e)}}},watch:{defaultFuseOptions(){this.setFuse()},options:{handler(){this.useLazyLoading&&this.mx_hasFilteredOptions||(this.fuse&&this.setFuse(),this.mx_filteredOptions=this.defaultOptions)},immediate:!0}},created(){this.setFuse(),this.useLazyLoading&&this.mx_setFetchOptions("")},methods:{setFuse(){this.useSearch&&(this.fuse=new v.default(this.defaultOptions,this.defaultFuseOptions))},async onFilter(e,t){this.useLazyLoading&&e!==this.mx_search&&await this.mx_filterOptionsByStore(e),!this.useLazyLoading&&this.useSearch&&this.filterOptionsByFuse(e),t()},filterOptionsByFuse(e){if(""===e)return void(this.mx_filteredOptions=this.defaultOptions);const t=this.fuse.search(e);this.mx_filteredOptions=this.mx_getNormalizedFuseResults(t)}}};const Ls={class:"flex justify-center q-pb-sm"};Fs.render=function(t,s,o,l,a,r){const i=e.resolveComponent("q-icon"),n=e.resolveComponent("q-item-section"),d=e.resolveComponent("q-item"),c=e.resolveComponent("q-spinner-dots"),u=e.resolveComponent("q-select");return e.openBlock(),e.createBlock(u,e.mergeProps({modelValue:r.model,"onUpdate:modelValue":s[0]||(s[0]=e=>r.model=e)},r.attributes),e.createSlots({append:e.withCtx((()=>[e.renderSlot(t.$slots,"append",{},(()=>[r.isSearchable?(e.openBlock(),e.createBlock(i,{key:0,name:"o_search"})):e.createCommentVNode("v-if",!0)]))])),"no-option":e.withCtx((()=>[t.mx_isFetching?e.createCommentVNode("v-if",!0):e.renderSlot(t.$slots,"no-option",{key:0},(()=>[e.createVNode(d,null,{default:e.withCtx((()=>[e.createVNode(n,{class:"text-grey"},{default:e.withCtx((()=>[e.createTextVNode(e.toDisplayString(o.noOptionLabel),1)])),_:1})])),_:1})]))])),"after-options":e.withCtx((()=>[t.mx_isFetching?e.renderSlot(t.$slots,"after-options",{key:0},(()=>[e.createElementVNode("div",Ls,[e.createVNode(c,{color:"primary",size:"20px"})])])):e.createCommentVNode("v-if",!0)])),_:2},[e.renderList(t.$slots,((s,o)=>({name:o,fn:e.withCtx((s=>[e.renderSlot(t.$slots,o,e.normalizeProps(e.guardReactiveProps(s||{})))]))})))]),1040,["modelValue"])},Fs.__file="src/components/select/QasSelect.vue";var Os={name:"QasSelectList",components:{QasBtn:B,QasSearchBox:Ns},props:{deleteOnly:{type:Boolean},fuseOptions:{default:()=>({keys:["label"]}),type:Object},list:{default:()=>[],type:Array},modelValue:{type:Array,default:()=>[]},useClickableLabel:{type:Boolean}},emits:["added","click-label","removed","update:modelValue"],data:()=>({sortedList:[],values:[],results:[]}),computed:{labelClass(){return this.useClickableLabel&&"cursor-pointer"},slotData(){return{add:this.add,handleClick:this.handleClick,remove:this.remove,updateModel:this.updateModel}}},watch:{list:{handler(e){this.sortedList.length||(this.sortedList=e)},immediate:!0},modelValue:{handler(e){this.values=[...e]},deep:!0,immediate:!0}},created(){this.handleList()},methods:{add(e){this.values.push(e.value),this.updateModel(),this.$emit("added",e)},getButtonProps({value:e}){const t=this.values.includes(e);return{dense:this.$qas.screen.isSmall,useLabelOnSmallScreen:!1,icon:this.$qas.screen.isSmall?t?"o_close":"o_add":void 0,label:t?"Remover":"Adicionar",outline:t,size:"sm"}},handleClick(e){return this.values.includes(e.value)?this.remove(e):this.add(e)},handleList(){if(this.modelValue.length)return this.sortList();const e=this.$watch("modelValue",(()=>{this.sortedList.length||(this.sortList(),e())}))},onClickLabel({item:e,index:t}){this.useClickableLabel&&this.$emit("click-label",{item:e,index:t})},remove(e){const t=this.values.findIndex((t=>t===e.value));this.values.splice(t,1),this.updateModel(),this.$emit("removed",e,t)},sortList(){this.sortedList=this.deleteOnly?this.list.filter((e=>this.modelValue.includes(e.value))):a.sortBy(this.list,(e=>!this.modelValue.includes(e.value)))},updateModel(e){this.$emit("update:modelValue",e||this.values)}}};const Qs=["onClick"];Os.render=function(t,s,o,l,a,r){const i=e.resolveComponent("q-item-section"),n=e.resolveComponent("qas-btn"),d=e.resolveComponent("q-item"),c=e.resolveComponent("q-list"),u=e.resolveComponent("qas-search-box");return e.openBlock(),e.createBlock(u,{results:a.results,"onUpdate:results":s[0]||(s[0]=e=>a.results=e),class:"q-pa-md","fuse-options":o.fuseOptions,list:a.sortedList},{default:e.withCtx((()=>[e.createVNode(c,{separator:""},{default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.results,(s=>(e.openBlock(),e.createBlock(d,{key:s.value},{default:e.withCtx((()=>[e.renderSlot(t.$slots,"item",e.mergeProps(r.slotData,{item:s}),(()=>[e.renderSlot(t.$slots,"item-section",{result:s},(()=>[e.createVNode(i,{class:"items-start text-bold"},{default:e.withCtx((()=>[e.createElementVNode("div",{class:e.normalizeClass(r.labelClass),onClick:e=>r.onClickLabel({item:s,index:t.index})},e.toDisplayString(s.label),11,Qs)])),_:2},1024)])),e.createVNode(i,{avatar:""},{default:e.withCtx((()=>[e.renderSlot(t.$slots,"item-action",e.mergeProps({item:s},r.slotData),(()=>[e.createVNode(n,e.mergeProps(r.getButtonProps(s),{onClick:e=>r.handleClick(s)}),null,16,["onClick"])]))])),_:2},1024)]))])),_:2},1024)))),128))])),_:3})])),_:3},8,["results","fuse-options","list"])},Os.__file="src/components/select-list/QasSelectList.vue";var Ps={name:"QasSingleView",mixins:[$t],props:{customId:{default:"",type:[Number,String]},result:{default:()=>({}),type:Object}},emits:["update:result","fetch-success","fetch-error"],computed:{hasResult(){return!!this.resultModel},id(){return this.customId||this.$route.params.id},resultModel(){return this.$store.getters[`${this.entity}/byId`](this.id)||{}}},watch:{$route(e,t){e.name===t.name&&this.mx_fetchHandler({id:this.id,url:this.url},this.fetchSingle)},resultModel(t){this.$emit("update:result",e.markRaw({...t}))}},created(){this.mx_fetchHandler({id:this.id,url:this.url},this.fetchSingle)},methods:{async fetchSingle(e={}){this.mx_isFetching=!0;try{const t={id:this.id,url:this.url,...e};this.$qas.logger.group(`QasSingleView - fetchSingle -> payload do parâmetro do ${this.entity}/fetchSingle`,[t]);const s=await this.$store.dispatch(`${this.entity}/fetchSingle`,t),{errors:o,fields:l,metadata:a}=s.data;this.mx_setErrors(o),this.mx_setFields(l),this.mx_setMetadata(a),this.mx_updateModels({errors:this.mx_errors,fields:this.mx_fields,metadata:this.mx_metadata}),this.$qas.logger.group(`QasSingleView - fetchSingle -> resposta da action ${this.entity}/fetchSingle`,[s]),this.$emit("fetch-success",s)}catch(e){this.mx_fetchError(e),this.$emit("fetch-error",e),this.$qas.logger.group(`QasSingleView - fetchSingle -> exceção da action ${this.entity}/fetchSingle`,[e],{error:!0})}finally{this.mx_isFetching=!1}}}};const Ds={key:0},Ms={key:2,class:"q-my-xl text-center"},Is=e.createElementVNode("div",{class:"text-grey-7"},"Nenhum item encontrado.",-1),zs={key:3};Ps.render=function(t,s,o,l,a,r){const i=e.resolveComponent("q-icon"),n=e.resolveComponent("q-spinner"),d=e.resolveComponent("q-inner-loading");return e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.mx_componentTag),{class:e.normalizeClass(t.mx_componentClass)},{default:e.withCtx((()=>[t.mx_hasHeaderSlot?(e.openBlock(),e.createElementBlock("header",Ds,[e.renderSlot(t.$slots,"header")])):e.createCommentVNode("v-if",!0),r.hasResult?e.renderSlot(t.$slots,"default",{key:1}):t.mx_isFetching?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock("div",Ms,[e.createVNode(i,{class:"q-mb-sm text-center",color:"grey-7",name:"o_search",size:"38px"}),Is])),t.mx_hasFooterSlot?(e.openBlock(),e.createElementBlock("footer",zs,[e.renderSlot(t.$slots,"footer")])):e.createCommentVNode("v-if",!0),e.createVNode(d,{showing:t.mx_isFetching},{default:e.withCtx((()=>[e.createVNode(n,{color:"grey",size:"3em"})])),_:1},8,["showing"])])),_:3},8,["class"])},Ps.__file="src/components/single-view/QasSingleView.vue";var Rs={name:"QasSortable",props:{entity:{default:"",required:!0,type:String},sortableOptions:{default:()=>({animation:500}),type:Object},list:{default:()=>[],type:Array},tag:{default:"div",type:String},url:{default:"",type:String},sorted:{default:()=>[],type:Array}},emits:["update:sorted","sort","success","error"],data:()=>({sortable:null,sortedList:null}),computed:{identifiers(){return this.sortedList.map((({id:e})=>e))}},watch:{sortableOptions(e){this.sortable.options={...this.sortable.options,...e}},list(e){this.setSortedValue(e),this.sortable.sort(this.sortable.toArray())}},created(){this.setSortedValue()},async mounted(){this.sortable=new b.default(this.$refs.sortableItems,{...this.sortableOptions,onUpdate:e=>{this.updateOrder(e),this.$emit("sort",e)}})},unmounted(){this.sortable.destroy()},methods:{setError(e){const{response:t}=e,s=t?.data?.exception||e.message;Oe("Ops! Erro ao salvar ordenação.",s)},async replace(){l.Loading.show();try{const e=await this.$store.dispatch(`${this.entity}/replace`,{payload:{order:this.identifiers},url:this.url||`${this.entity}/sort`});this.$emit("success",e)}catch(e){this.setError(e),this.$emit("error",e)}finally{l.Loading.hide()}},updateOrder({newIndex:e,oldIndex:t}){const s=this.sortedList.splice(t,1);this.sortedList.splice(e,0,s[0]),this.replace()},setSortedValue(e){this.sortedList=l.extend(!0,[],e||this.list),this.updateSortedModel()},updateSortedModel(){return this.$emit("update:sorted",this.sortedList)}}};Rs.render=function(t,s,o,l,a,r){return e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.tag),{ref:"sortableItems"},{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default")])),_:3},512)},Rs.__file="src/components/sortable/QasSortable.vue";var As={name:"QasTableGenerator",props:{columns:{default:()=>[],type:Array},fields:{default:()=>({}),type:[Array,Object]},results:{default:()=>[],required:!0,type:Array},rowKey:{default:"name",type:String},emptyResultText:{default:"-",type:String},useScrollOnGrab:{type:Boolean,default:!0}},data:()=>({scrollableElement:null,scrollOnGrab:{},elementToObserve:null,resizeObserver:null}),computed:{attributes(){return{columns:this.columnsByFields,rows:this.resultsByFields,flat:!0,hideBottom:!0,pagination:{rowsPerPage:0},rowKey:this.rowKey}},columnsByFields(){if(!this.hasFields)return this.columns.filter((e=>e instanceof Object));const e=[];function t(t){const{align:s,label:o,name:l}=t;e.push({align:s||"left",field:l,label:o,name:l,headerClasses:"text-primary"})}if(!this.columns.length){for(const e in this.fields)t(this.fields[e]);return this.$qas.logger.group("QasTableGenerator - Automatic columns",[e]),e}return this.columns.forEach((e=>{e instanceof Object?t(e):this.fields[e]&&t(this.fields[e])})),this.$qas.logger.group("QasTableGenerator - columns",[e]),e},hasBodySlot(){return!!this.$slots.body},hasTbodySlot(){return!!this.$slots.tbody},hasFields(){return Object.keys(this.fields).length},resultsByFields(){if(!Object.keys(this.fields).length)return[];const e=l.extend(!0,[],this.results).map(((e,t)=>{for(const s in e)e.default=this.results[t],e[s]=M(this.fields[s],e[s])||this.emptyResultText;return e}));return this.$qas.logger.group("QasTableGenerator - resultsByFields",[e]),e},rowsPerPage(){return this.results.length},tableClass(){return this.$qas.screen.isSmall&&"qas-table-generator--mobile"},hasScrollOnGrab(){return!!Object.keys(this.scrollOnGrab).length}},mounted(){this.useScrollOnGrab&&(this.setObserver(),window.addEventListener("resize",this.handleScrollOnGrab))},onUnmounted(){this.hasScrollOnGrab&&(this.destroyObserver(),this.scrollOnGrab.destroyEvents(),window.removeEventListener("resize",this.handleScrollOnGrab))},methods:{initializeScrollOnGrab(){if(this.hasScrollOnGrab)return;const e=this.getTableElementComponent().querySelector(".q-table__middle.scroll");this.scrollOnGrab=function(e){n();let t,s,o=!1;function l(l){o=!0,e.classList.add("active"),t=l.pageX-e.offsetLeft,s=e.scrollLeft}function a(){o=!1,e.classList.remove("active"),n()}function r(){o=!1,e.classList.remove("active"),n()}function i(l){if(!o)return;l.preventDefault(),n("grabbing");const a=3*(l.pageX-e.offsetLeft-t);e.scrollLeft=s-a}function n(t="grab"){e.style.cursor=t}return e.addEventListener("mousedown",l),e.addEventListener("mouseleave",a),e.addEventListener("mouseup",r),e.addEventListener("mousemove",i),{element:e,destroyEvents:function(){e.removeEventListener("mousedown",l),e.removeEventListener("mouseleave",a),e.removeEventListener("mouseup",r),e.removeEventListener("mousemove",i)}}}(e)},getTableElementComponent(){return this.$refs?.table?.$el},getTableElement(){return this.getTableElementComponent()?.querySelector("table")},getFullTableWidth(){return this.getTableElement()?.getBoundingClientRect?.()?.width},getContainerTableWidth(){const e=this.getTableElementComponent()?.querySelector(".q-table__middle");return e?.getBoundingClientRect?.()?.width},handleScrollOnGrab(){const e=this.getFullTableWidth(),t=this.getContainerTableWidth(),s=!!Object.keys(this.scrollOnGrab).length;e>t?this.initializeScrollOnGrab():s&&(this.scrollOnGrab.destroyEvents(),this.scrollOnGrab.element.style.cursor="auto",this.scrollOnGrab={})},setObserver(){this.elementToObserve=this.getTableElement(),this.resizeObserver=new ResizeObserver((e=>{e.forEach((()=>this.handleScrollOnGrab()))})),this.resizeObserver.observe(this.elementToObserve)},destroyObserver(){this.resizeObserver.unobserve(this.elementToObserve)}}};As.render=function(t,s,o,l,a,r){const i=e.resolveComponent("q-td"),n=e.resolveComponent("q-table"),d=e.resolveComponent("qas-box");return e.openBlock(),e.createBlock(d,{class:"q-mb-xl q-px-lg q-py-md"},{default:e.withCtx((()=>[e.createVNode(n,e.mergeProps({ref:"table",class:["bg-transparent qas-table-generator",r.tableClass]},r.attributes),e.createSlots({_:2},[e.renderList(t.$slots,((s,o)=>({name:o,fn:e.withCtx((s=>[r.hasBodySlot?e.renderSlot(t.$slots,"body",{key:0,props:s}):(e.openBlock(),e.createBlock(i,{key:o},{default:e.withCtx((()=>[e.renderSlot(t.$slots,o,e.normalizeProps(e.guardReactiveProps(s||{})))])),_:2},1024))]))})))]),1040,["class"])])),_:3})},As.__file="src/components/table-generator/QasTableGenerator.vue";var js={name:"QasTabsGenerator",props:{activeColor:{default:"primary",type:String},counterProps:{default:()=>({}),type:Object},counters:{default:()=>({}),type:Object},indicatorColor:{default:"primary",type:String},modelValue:{default:"",type:String},tabClass:{default:"text-primary",type:String},tabs:{default:()=>({}),required:!0,type:[Object,Array]}},emits:["update:modelValue"],computed:{defaultCounterProps(){return{color:"negative",floating:!0,...this.counterProps}},formattedTabs(){const e=l.extend(!0,{},this.tabs);for(const t in e)"string"==typeof e[t]&&(e[t]={label:e[t],value:t});return e},model:{get(){return this.modelValue},set(e){this.$emit("update:modelValue",e)}}}};js.render=function(t,s,o,l,a,r){const i=e.resolveComponent("q-badge"),n=e.resolveComponent("q-tab"),d=e.resolveComponent("q-tabs");return e.openBlock(),e.createBlock(d,{modelValue:r.model,"onUpdate:modelValue":s[0]||(s[0]=e=>r.model=e),"active-color":o.activeColor,"indicator-color":o.indicatorColor,"outside-arrows":""},{default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.formattedTabs,((s,l)=>e.renderSlot(t.$slots,`tab-${s.value}`,{item:s},(()=>[(e.openBlock(),e.createBlock(n,e.mergeProps({key:l},s,{class:o.tabClass,label:s.label,name:s.value}),{default:e.withCtx((()=>[e.renderSlot(t.$slots,`tab-after-${s.value}`,{item:s},(()=>[o.counters[l]?(e.openBlock(),e.createBlock(i,e.mergeProps({key:0,label:o.counters[l]},r.defaultCounterProps),null,16,["label"])):e.createCommentVNode("v-if",!0)]))])),_:2},1040,["class","label","name"]))])))),256))])),_:3},8,["modelValue","active-color","indicator-color"])},js.__file="src/components/tabs-generator/QasTabsGenerator.vue";var Ts={name:"QasTextTruncate",components:{QasDialog:$e},props:{dialogProps:{type:Object,default:()=>({persistent:!1})},dialogTitle:{type:String,default:""},maxWidth:{type:Number,default:0},seeMoreLabel:{type:String,default:"Ver mais"},text:{type:String,default:""}},data:()=>({maxPossibleWidth:"",showDialog:!1,textWidth:""}),computed:{truncateTextClass(){return(this.isTruncated||this.$qas.screen.isSmall)&&"ellipsis q-pr-sm"},isTruncated(){return this.textWidth>this.maxPossibleWidth},headerClass(){return this.dialogTitle?"justify-between":"justify-end"},defaultDialogProps(){return{cancel:!1,ok:!1,useCloseButton:!0,...this.dialogProps,card:{title:this.dialogTitle,description:this.text}}}},watch:{maxWidth(){this.truncateText()}},mounted(){this.truncateText()},methods:{truncateText(){this.$refs.parent.style.maxWidth="100%",this.textWidth=this.$refs.truncate.clientWidth,this.maxPossibleWidth=this.maxWidth||.9*this.$refs.truncate.parentElement.clientWidth,this.$refs.parent.style.maxWidth=`${this.maxPossibleWidth}px`},toggleDialog(){this.showDialog=!this.showDialog}}};const Us={ref:"parent",class:"full-width"},Gs={class:"justify-between no-wrap row text-no-wrap"};Ts.render=function(t,s,o,l,a,r){const i=e.resolveComponent("qas-dialog");return e.openBlock(),e.createElementBlock("div",Us,[e.createElementVNode("div",Gs,[e.createElementVNode("div",{ref:"truncate",class:e.normalizeClass(r.truncateTextClass)},[e.renderSlot(t.$slots,"default",{},(()=>[e.createTextVNode(e.toDisplayString(o.text),1)]))],2),r.isTruncated?(e.openBlock(),e.createElementBlock("div",{key:0,class:"cursor-pointer text-primary",onClick:s[0]||(s[0]=(...e)=>r.toggleDialog&&r.toggleDialog(...e))},e.toDisplayString(o.seeMoreLabel),1)):e.createCommentVNode("v-if",!0)]),e.createVNode(i,e.mergeProps({modelValue:a.showDialog,"onUpdate:modelValue":s[1]||(s[1]=e=>a.showDialog=e)},r.defaultDialogProps),{description:e.withCtx((()=>[e.renderSlot(t.$slots,"default",{},(()=>[e.createElementVNode("div",null,e.toDisplayString(o.text),1)]))])),_:3},16,["modelValue"])],512)},Ts.__file="src/components/text-truncate/QasTextTruncate.vue";var Hs={name:"QasTransfer",components:{QasBtn:B,QasLabel:It,QasSearchBox:Ns},props:{emitValue:{type:Boolean},fuseOptions:{default:()=>({keys:["label"]}),type:Object},label:{default:"",required:!0,type:String},labelKey:{default:"label",type:String},modelValue:{default:()=>[],type:Array},options:{default:()=>[],type:Array},useEmptySlot:{default:!0,type:Boolean},valueKey:{default:"value",type:String}},emits:["update:modelValue"],data:()=>({firstQueue:[],optionsList:[],secondQueue:[],selectedList:[],firstResults:[],secondResults:[]}),computed:{actionsClass(){return!this.$qas.screen.isSmall&&"column"},gutterClass(){return"q-col-gutter-"+(this.$qas.screen.untilLarge?"md":"xl")},iconClass(){return!this.$qas.screen.isSmall&&"qas-transfer__icon"},searchBoxProps(){return{fuseOptions:this.fuseOptions,useEmptySlot:this.useEmptySlot}}},watch:{options:{handler(e){this.optionsList=l.extend(!0,[],e),this.setSelectedFromValue(!0)},immediate:!0},modelValue:{handler(){this.setSelectedFromValue(!0)},immediate:!0}},methods:{deleteItemsFromList(e){this[e?"firstQueue":"secondQueue"].forEach((t=>{const s=e?"optionsList":"selectedList",o=this[s].findIndex((e=>(e[this.valueKey]||e)===t[this.valueKey]));~o&&this[s].splice(o,1)}))},getItemClass(e,t){return this[t?"firstQueue":"secondQueue"].some((t=>t[this.valueKey]===e[this.valueKey]))&&"bg-secondary"},getItemLabel(e){return e?.[this.labelKey]},getModelValue(){const e=l.extend(!0,[],this.selectedList);return this.emitValue?e.map((e=>e[this.valueKey])):e},handleSelectedList(e){const t=e?"firstQueue":"secondQueue";this[e?"selectedList":"optionsList"].push(...this[t]),this.deleteItemsFromList(e),this[t]=[]},onSelectQueue(e,t){const s=t?"firstQueue":"secondQueue",o=this[s].findIndex((t=>t[this.valueKey]===e[this.valueKey]));~o?this[s].splice(o,1):this[s].push(e)},setSelectedFromClick(e){this.handleSelectedList(e),this.updateModelValue()},setSelectedFromValue(e){this.optionsList.length&&this.modelValue.forEach((e=>{const t=this.optionsList.find((t=>t[this.valueKey]===(this.emitValue?e:e[this.valueKey])));t&&this.firstQueue.push(l.extend(!0,{},t))})),this.handleSelectedList(e)},updateModelValue(){return this.$emit("update:modelValue",this.getModelValue())}}};const Ws=e.createElementVNode("div",{class:"col-12"},null,-1),Ks={class:"col-12 col-sm"},Ys=e.createTextVNode("Selecionar"),Js=e.createTextVNode("Remover"),Xs={class:"col-12 col-sm"};Hs.render=function(t,s,o,l,a,r){const i=e.resolveComponent("qas-label"),n=e.resolveComponent("q-item-section"),d=e.resolveComponent("q-item"),c=e.resolveComponent("q-list"),u=e.resolveComponent("qas-search-box"),m=e.resolveComponent("qas-btn"),p=e.resolveComponent("q-tooltip");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["qas-transfer row",r.gutterClass])},[Ws,e.createElementVNode("div",Ks,[e.createVNode(i,{label:o.label,quantity:a.optionsList.length},null,8,["label","quantity"]),e.createVNode(u,e.mergeProps({results:a.firstResults,"onUpdate:results":s[0]||(s[0]=e=>a.firstResults=e),list:a.optionsList,outlined:""},r.searchBoxProps),{default:e.withCtx((()=>[e.createVNode(c,{separator:""},{default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.firstResults,((s,o)=>(e.openBlock(),e.createBlock(d,{key:o,class:e.normalizeClass(r.getItemClass(s,!0)),clickable:"",onClick:e=>r.onSelectQueue(s,!0)},{default:e.withCtx((()=>[e.renderSlot(t.$slots,"item-first-column",{},(()=>[e.createVNode(n,null,{default:e.withCtx((()=>[e.createTextVNode(e.toDisplayString(r.getItemLabel(s)),1)])),_:2},1024)]))])),_:2},1032,["class","onClick"])))),128))])),_:3})])),_:3},16,["results","list"])]),e.createElementVNode("div",{class:e.normalizeClass(["col-12 col-sm-auto items-center justify-center q-col-gutter-md row",r.actionsClass])},[e.createElementVNode("div",null,[e.createVNode(m,{class:e.normalizeClass(r.iconClass),dense:"",disabled:!a.firstQueue.length,flat:"",icon:"o_arrow_circle_down",rounded:"",onClick:s[1]||(s[1]=e=>r.setSelectedFromClick(!0))},null,8,["class","disabled"]),e.createVNode(p,{anchor:"top middle",self:"center middle"},{default:e.withCtx((()=>[Ys])),_:1})]),e.createElementVNode("div",null,[e.createElementVNode("div",null,[e.createVNode(m,{class:e.normalizeClass(r.iconClass),dense:"",disabled:!a.secondQueue.length,flat:"",icon:"o_arrow_circle_up",rounded:"",onClick:s[2]||(s[2]=e=>r.setSelectedFromClick())},null,8,["class","disabled"]),e.createVNode(p,{anchor:"bottom middle",self:"center middle"},{default:e.withCtx((()=>[Js])),_:1})])])],2),e.createElementVNode("div",Xs,[e.createVNode(i,{label:"Selecionadas",quantity:a.selectedList.length},null,8,["quantity"]),e.createVNode(u,e.mergeProps({results:a.secondResults,"onUpdate:results":s[3]||(s[3]=e=>a.secondResults=e)},r.searchBoxProps,{"empty-list-height":"300px",label:"Selecionadas",list:a.selectedList,outlined:""}),{default:e.withCtx((()=>[e.createVNode(c,{separator:""},{default:e.withCtx((()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.secondResults,((s,o)=>(e.openBlock(),e.createBlock(d,{key:o,class:e.normalizeClass(r.getItemClass(s)),clickable:"",onClick:e=>r.onSelectQueue(s)},{default:e.withCtx((()=>[e.renderSlot(t.$slots,"item-second-column",{},(()=>[e.createVNode(n,null,{default:e.withCtx((()=>[e.createTextVNode(e.toDisplayString(r.getItemLabel(s)),1)])),_:2},1024)]))])),_:2},1032,["class","onClick"])))),128))])),_:3})])),_:3},16,["results","list"])])],2)},Hs.__file="src/components/transfer/QasTransfer.vue";var Zs={name:"test",bind(e,{arg:t,value:s}){e&&t&&(e.dataset.test=t),e&&s&&(e.dataset.testKey=s)}};const eo="3.0.0";return Object.freeze({__proto__:null,version:eo,QasActions:k,QasActionsMenu:S,QasAlert:j,QasAppBar:H,QasAppMenu:ne,QasAvatar:G,QasBox:he,QasBreakline:A,QasBtn:B,QasCard:fe,QasCheckboxGroup:xe,QasCopy:ke,QasDateTimeInput:Ve,QasDebugger:Be,QasDelete:Ie,QasDialog:$e,QasDialogRouter:ze,QasField:ht,QasFilters:gt,QasFormGenerator:wt,QasFormView:Nt,QasGallery:Lt,QasGridGenerator:Mt,QasInput:Re,QasLabel:It,QasLayout:zt,QasListItems:Rt,QasListView:jt,QasMap:Xt,QasNestedFields:ts,QasNumericInput:je,QasPageHeader:bs,QasPasswordInput:Ke,QasPasswordStrengthChecker:He,QasProfile:ks,QasResizer:_s,QasSearchBox:Ns,QasSelect:Fs,QasSelectList:Os,QasSignaturePad:rt,QasSignatureUploader:dt,QasSingleView:Ps,QasSortable:Rs,QasTableGenerator:As,QasTabsGenerator:js,QasTextTruncate:Ts,QasTransfer:Hs,QasUploader:Ye,Dialog:Fe,Logger:Le,NotifyError:Oe,NotifySuccess:Qe,Screen:Pe,install:function(e){e.component("QasActions",k),e.component("QasActionsMenu",S),e.component("QasAlert",j),e.component("QasAppBar",H),e.component("QasAppMenu",ne),e.component("QasAvatar",G),e.component("QasBox",he),e.component("QasBreakline",A),e.component("QasBtn",B),e.component("QasCard",fe),e.component("QasCheckboxGroup",xe),e.component("QasCopy",ke),e.component("QasDateTimeInput",Ve),e.component("QasDebugger",Be),e.component("QasDelete",Ie),e.component("QasDialog",$e),e.component("QasDialogRouter",ze),e.component("QasField",ht),e.component("QasFilters",gt),e.component("QasFormGenerator",wt),e.component("QasFormView",Nt),e.component("QasGallery",Lt),e.component("QasGridGenerator",Mt),e.component("QasInput",Re),e.component("QasLabel",It),e.component("QasLayout",zt),e.component("QasListItems",Rt),e.component("QasListView",jt),e.component("QasMap",Xt),e.component("QasNestedFields",ts),e.component("QasNumericInput",je),e.component("QasPageHeader",bs),e.component("QasPasswordInput",Ke),e.component("QasPasswordStrengthChecker",He),e.component("QasProfile",ks),e.component("QasResizer",_s),e.component("QasSearchBox",Ns),e.component("QasSelect",Fs),e.component("QasSelectList",Os),e.component("QasSignaturePad",rt),e.component("QasSignatureUploader",dt),e.component("QasSingleView",Ps),e.component("QasSortable",Rs),e.component("QasTableGenerator",As),e.component("QasTabsGenerator",js),e.component("QasTextTruncate",Ts),e.component("QasTransfer",Hs),e.component("QasUploader",Ye),e.use(l.Quasar,{plugins:{Notify:l.Notify,QuasarDialog:l.Dialog,Dialog:Fe}}),process.env.MAPS_API_KEY&&e.use(x.default,{load:{key:process.env.MAPS_API_KEY,libraries:"places"}}),e.config.globalProperties.$qas={dialog:Fe,error:Oe,logger:Le(),screen:Pe(),success:Qe},e.directive(Zs.name,Zs)}})}));
|