@stonecrop/aform 0.2.30 → 0.2.32

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.
@@ -1,2 +1,2 @@
1
- (function(g,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(g=typeof globalThis<"u"?globalThis:g||self,e(g["@stonecrop/aform"]={},g.Vue))})(this,function(g,e){"use strict";const ne={class:"aform__form-element"},oe=["for"],le={class:"aform__checkbox-container aform__input-field"},ae=["id","readonly","required"],re=["innerHTML"],F=e.defineComponent({__name:"ACheckbox",props:e.mergeModels({label:{},required:{type:Boolean},readOnly:{type:Boolean},uuid:{},validation:{default:()=>({errorMessage:"&nbsp;"})}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const n=e.useModel(t,"modelValue");return(o,l)=>(e.openBlock(),e.createElementBlock("div",ne,[e.createElementVNode("label",{class:"aform__field-label",for:o.uuid},e.toDisplayString(o.label),9,oe),e.createElementVNode("span",le,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":l[0]||(l[0]=a=>n.value=a),type:"checkbox",id:o.uuid,class:"aform__checkbox",readonly:o.readOnly,required:o.required},null,8,ae),[[e.vModelCheckbox,n.value]])]),e.withDirectives(e.createElementVNode("p",{class:"error",innerHTML:o.validation.errorMessage},null,8,re),[[e.vShow,o.validation.errorMessage]])]))}}),se=e.createElementVNode("div",null,[e.createElementVNode("input",{type:"text"}),e.createElementVNode("input",{type:"text"}),e.createElementVNode("input",{type:"text"})],-1),P=e.defineComponent({__name:"AComboBox",props:["event","cellData","tableID"],setup(t){return(n,o)=>{const l=e.resolveComponent("ATableModal");return e.openBlock(),e.createBlock(l,{event:t.event,cellData:t.cellData,class:"amodal"},{default:e.withCtx(()=>[se]),_:1},8,["event","cellData"])}}}),ie=["id","disabled","required","value"],ce=["for"],de=["innerHTML"],me=e.defineComponent({__name:"ADate",props:e.mergeModels({label:{default:"Date"},required:{type:Boolean},readonly:{type:Boolean},uuid:{},validation:{default:()=>({errorMessage:"&nbsp;"})}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const n=e.useModel(t,"modelValue"),o=e.ref(null),l=()=>{o.value&&"showPicker"in HTMLInputElement.prototype&&o.value.showPicker()};return(a,r)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("input",{ref_key:"dateRef",ref:o,type:"date",id:a.uuid,disabled:a.readonly,required:a.required,value:n.value,onClick:l},null,8,ie),e.createElementVNode("label",{for:a.uuid},e.toDisplayString(a.label),9,ce),e.withDirectives(e.createElementVNode("p",{innerHTML:a.validation.errorMessage},null,8,de),[[e.vShow,a.validation.errorMessage]])]))}}),A=(t,n)=>{const o=t.__vccOpts||t;for(const[l,a]of n)o[l]=a;return o},x=A(me,[["__scopeId","data-v-69d0f23d"]]),ue={class:"input-wrapper"},fe={id:"autocomplete-results",class:"autocomplete-results"},pe={key:0,class:"loading autocomplete-result"},he=["onClick"],q=e.defineComponent({__name:"ADropdown",props:e.mergeModels({label:{},items:{},isAsync:{type:Boolean}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["filterChanged"],["update:modelValue"]),setup(t,{emit:n}){const o=t,l=n,a=e.ref(o.items),r=e.useModel(t,"modelValue"),i=e.ref(!1),s=e.ref(0),d=e.ref(!1),c=e.ref(null);e.onMounted(()=>{document.addEventListener("click",h),u()}),e.onUnmounted(()=>{document.removeEventListener("click",h)});const m=f=>{r.value=f,y()},u=()=>{r.value?a.value=o.items.filter(f=>f.toLowerCase().indexOf(r.value.toLowerCase())>-1):a.value=o.items},p=()=>{d.value=!0,o.isAsync?(i.value=!0,l("filterChanged",r.value)):u()},h=()=>{y(),s.value=0},y=()=>{d.value=!1,o.items.includes(r.value)||(r.value="")},V=()=>{s.value<a.value.length&&(s.value=s.value+1)},k=()=>{s.value>0&&(s.value=s.value-1)},M=()=>{r.value=a.value[s.value],y(),s.value=0};return(f,_)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["autocomplete",{isOpen:d.value}])},[e.createElementVNode("div",ue,[e.withDirectives(e.createElementVNode("input",{ref_key:"mopInput",ref:c,type:"text",onInput:p,onFocus:p,"onUpdate:modelValue":_[0]||(_[0]=E=>r.value=E),onKeydown:[e.withKeys(V,["down"]),e.withKeys(k,["up"]),e.withKeys(M,["enter"])]},null,544),[[e.vModelText,r.value]]),e.withDirectives(e.createElementVNode("ul",fe,[i.value?(e.openBlock(),e.createElementBlock("li",pe,"Loading results...")):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(a.value,(E,b)=>(e.openBlock(),e.createElementBlock("li",{key:b,onClick:te=>m(E),class:e.normalizeClass(["autocomplete-result",{"is-active":b===s.value}])},e.toDisplayString(E),11,he))),128))],512),[[e.vShow,d.value]]),e.createElementVNode("label",null,e.toDisplayString(f.label),1)])],2))}});function R(t){return e.getCurrentScope()?(e.onScopeDispose(t),!0):!1}function T(t){return typeof t=="function"?t():e.unref(t)}const ge=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const _e=t=>t!=null,ye=Object.prototype.toString,Ee=t=>ye.call(t)==="[object Object]",ke=()=>{};function C(t){var n;const o=T(t);return(n=o==null?void 0:o.$el)!=null?n:o}const S=ge?window:void 0;function N(...t){let n,o,l,a;if(typeof t[0]=="string"||Array.isArray(t[0])?([o,l,a]=t,n=S):[n,o,l,a]=t,!n)return ke;Array.isArray(o)||(o=[o]),Array.isArray(l)||(l=[l]);const r=[],i=()=>{r.forEach(m=>m()),r.length=0},s=(m,u,p,h)=>(m.addEventListener(u,p,h),()=>m.removeEventListener(u,p,h)),d=e.watch(()=>[C(n),T(a)],([m,u])=>{if(i(),!m)return;const p=Ee(u)?{...u}:u;r.push(...o.flatMap(h=>l.map(y=>s(m,h,y,p))))},{immediate:!0,flush:"post"}),c=()=>{d(),i()};return R(c),c}function be(){const t=e.ref(!1),n=e.getCurrentInstance();return n&&e.onMounted(()=>{t.value=!0},n),t}function we(t){const n=be();return e.computed(()=>(n.value,!!t()))}function De(t,n,o={}){const{window:l=S,...a}=o;let r;const i=we(()=>l&&"MutationObserver"in l),s=()=>{r&&(r.disconnect(),r=void 0)},d=e.computed(()=>{const p=T(t),h=(Array.isArray(p)?p:[p]).map(C).filter(_e);return new Set(h)}),c=e.watch(()=>d.value,p=>{s(),i.value&&p.size&&(r=new MutationObserver(n),p.forEach(h=>r.observe(h,a)))},{immediate:!0,flush:"post"}),m=()=>r==null?void 0:r.takeRecords(),u=()=>{s(),c()};return R(u),{isSupported:i,stop:u,takeRecords:m}}function Ve(t={}){var n;const{window:o=S,deep:l=!0,triggerOnRemoval:a=!1}=t,r=(n=t.document)!=null?n:o==null?void 0:o.document,i=()=>{var c;let m=r==null?void 0:r.activeElement;if(l)for(;m!=null&&m.shadowRoot;)m=(c=m==null?void 0:m.shadowRoot)==null?void 0:c.activeElement;return m},s=e.ref(),d=()=>{s.value=i()};return o&&(N(o,"blur",c=>{c.relatedTarget===null&&d()},!0),N(o,"focus",d,!0)),a&&De(r,c=>{c.filter(m=>m.removedNodes.length).map(m=>Array.from(m.removedNodes)).flat().forEach(m=>{m===s.value&&d()})},{childList:!0,subtree:!0}),d(),s}function Me(t,n={}){const o=Ve(n),l=e.computed(()=>C(t));return{focused:e.computed(()=>l.value&&o.value?l.value.contains(o.value):!1)}}function Ce(t,{window:n=S,scrollTarget:o}={}){const l=e.ref(!1),a=()=>{if(!n)return;const r=n.document,i=C(t);if(!i)l.value=!1;else{const s=i.getBoundingClientRect();l.value=s.top<=(n.innerHeight||r.documentElement.clientHeight)&&s.left<=(n.innerWidth||r.documentElement.clientWidth)&&s.bottom>=0&&s.right>=0}};return e.watch(()=>C(t),()=>a(),{immediate:!0,flush:"post"}),n&&N(o||n,"scroll",a,{capture:!1,passive:!0}),l}const w=t=>{let n=Ce(t).value;return n=n&&t.offsetHeight>0,n},D=t=>t.tabIndex>=0,O=t=>{const n=t.target;return L(n)},L=t=>{var n;let o;if(t instanceof HTMLTableCellElement){const l=(n=t.parentElement)==null?void 0:n.previousElementSibling;if(l){const a=Array.from(l.children)[t.cellIndex];a&&(o=a)}}else if(t instanceof HTMLTableRowElement){const l=t.previousElementSibling;l&&(o=l)}return o&&(!D(o)||!w(o))?L(o):o},Ae=t=>{var n;const o=t.target;let l;if(o instanceof HTMLTableCellElement){const a=(n=o.parentElement)==null?void 0:n.parentElement;if(a){const r=a.firstElementChild.children[o.cellIndex];r&&(l=r)}}else if(o instanceof HTMLTableRowElement){const a=o.parentElement;if(a){const r=a.firstElementChild;r&&(l=r)}}return l&&(!D(l)||!w(l))?$(l):l},U=t=>{const n=t.target;return $(n)},$=t=>{var n;let o;if(t instanceof HTMLTableCellElement){const l=(n=t.parentElement)==null?void 0:n.nextElementSibling;if(l){const a=Array.from(l.children)[t.cellIndex];a&&(o=a)}}else if(t instanceof HTMLTableRowElement){const l=t.nextElementSibling;l&&(o=l)}return o&&(!D(o)||!w(o))?$(o):o},Se=t=>{var n;const o=t.target;let l;if(o instanceof HTMLTableCellElement){const a=(n=o.parentElement)==null?void 0:n.parentElement;if(a){const r=a.lastElementChild.children[o.cellIndex];r&&(l=r)}}else if(o instanceof HTMLTableRowElement){const a=o.parentElement;if(a){const r=a.lastElementChild;r&&(l=r)}}return l&&(!D(l)||!w(l))?L(l):l},K=t=>{const n=t.target;return v(n)},v=t=>{var n;let o;if(t.previousElementSibling)o=t.previousElementSibling;else{const l=(n=t.parentElement)==null?void 0:n.previousElementSibling;o=l==null?void 0:l.lastElementChild}return o&&(!D(o)||!w(o))?v(o):o},z=t=>{const n=t.target;return H(n)},H=t=>{var n;let o;if(t.nextElementSibling)o=t.nextElementSibling;else{const l=(n=t.parentElement)==null?void 0:n.nextElementSibling;o=l==null?void 0:l.firstElementChild}return o&&(!D(o)||!w(o))?H(o):o},W=t=>{const n=t.target.parentElement.firstElementChild;return n&&(!D(n)||!w(n))?H(n):n},Y=t=>{const n=t.target.parentElement.lastElementChild;return n&&(!D(n)||!w(n))?v(n):n},B=["alt","control","shift","meta"],Be={ArrowUp:"up",ArrowDown:"down",ArrowLeft:"left",ArrowRight:"right"},j={"keydown.up":t=>{const n=O(t);n&&(t.preventDefault(),t.stopPropagation(),n.focus())},"keydown.down":t=>{const n=U(t);n&&(t.preventDefault(),t.stopPropagation(),n.focus())},"keydown.left":t=>{const n=K(t);t.preventDefault(),t.stopPropagation(),n&&n.focus()},"keydown.right":t=>{const n=z(t);t.preventDefault(),t.stopPropagation(),n&&n.focus()},"keydown.control.up":t=>{const n=Ae(t);n&&(t.preventDefault(),t.stopPropagation(),n.focus())},"keydown.control.down":t=>{const n=Se(t);n&&(t.preventDefault(),t.stopPropagation(),n.focus())},"keydown.control.left":t=>{const n=W(t);n&&(t.preventDefault(),t.stopPropagation(),n.focus())},"keydown.control.right":t=>{const n=Y(t);n&&(t.preventDefault(),t.stopPropagation(),n.focus())},"keydown.end":t=>{const n=Y(t);n&&(t.preventDefault(),t.stopPropagation(),n.focus())},"keydown.enter":t=>{if(t.target instanceof HTMLTableCellElement){t.preventDefault(),t.stopPropagation();const n=U(t);n&&n.focus()}},"keydown.shift.enter":t=>{if(t.target instanceof HTMLTableCellElement){t.preventDefault(),t.stopPropagation();const n=O(t);n&&n.focus()}},"keydown.home":t=>{const n=W(t);n&&(t.preventDefault(),t.stopPropagation(),n.focus())},"keydown.tab":t=>{const n=z(t);n&&(t.preventDefault(),t.stopPropagation(),n.focus())},"keydown.shift.tab":t=>{const n=K(t);n&&(t.preventDefault(),t.stopPropagation(),n.focus())}};function Te(t){const n=i=>{let s=null;return i.parent&&(typeof i.parent=="string"?s=document.querySelector(i.parent):i.parent instanceof HTMLElement?s=i.parent:s=i.parent.value),s},o=i=>{const s=n(i);let d=[];if(typeof i.selectors=="string")d=s?Array.from(s.querySelectorAll(i.selectors)):Array.from(document.querySelectorAll(i.selectors));else if(Array.isArray(i.selectors))for(const c of i.selectors)c instanceof HTMLElement?d.push(c):d.push(c.$el);else if(i.selectors instanceof HTMLElement)d.push(i.selectors);else if(Array.isArray(i.selectors.value))for(const c of i.selectors.value)c instanceof HTMLElement?d.push(c):d.push(c.$el);else d.push(i.selectors.value);return d},l=i=>{const s=n(i);let d=[];return i.selectors?d=o(i):s&&(d=Array.from(s.children).filter(c=>D(c)&&w(c))),d},a=i=>s=>{const d=Be[s.key]||s.key.toLowerCase();if(B.includes(d))return;const c=i.handlers||j;for(const m of Object.keys(c)){const[u,...p]=m.split(".");if(u==="keydown"&&p.includes(d)){const h=c[m],y=p.filter(k=>B.includes(k)),V=B.some(k=>{const M=k.charAt(0).toUpperCase()+k.slice(1);return s.getModifierState(M)});if(y.length>0){if(V){for(const k of B)if(p.includes(k)){const M=k.charAt(0).toUpperCase()+k.slice(1);s.getModifierState(M)&&h(s)}}}else V||h(s)}}},r=[];e.onMounted(()=>{for(const i of t){const s=n(i),d=l(i),c=a(i),m=s?[s]:d;for(const u of m){const{focused:p}=Me(e.ref(u)),h=e.watch(p,y=>{y?u.addEventListener("keydown",c):u.removeEventListener("keydown",c)});r.push(h)}}}),e.onBeforeUnmount(()=>{for(const i of r)i()})}const Ne={colspan:"5",tabindex:-1},Le=e.createElementVNode("tr",{class:"days-header"},[e.createElementVNode("td",null,"M"),e.createElementVNode("td",null,"T"),e.createElementVNode("td",null,"W"),e.createElementVNode("td",null,"T"),e.createElementVNode("td",null,"F"),e.createElementVNode("td",null,"S"),e.createElementVNode("td",null,"S")],-1),$e=["onClick","onKeydown"],ve=6,G=7,J=e.defineComponent({__name:"ADatePicker",props:{modelValue:{default:new Date},modelModifiers:{}},emits:["update:modelValue"],setup(t){const n=e.useModel(t,"modelValue"),o=e.ref(new Date(n.value)),l=e.ref(o.value.getMonth()),a=e.ref(o.value.getFullYear()),r=e.ref([]),i=e.ref(null);e.onMounted(async()=>{s(),await e.nextTick();const f=document.getElementsByClassName("selectedDate");if(f.length>0)f[0].focus();else{const _=document.getElementsByClassName("todaysDate");_.length>0&&_[0].focus()}});const s=()=>{r.value=[];const f=new Date(a.value,l.value,1),_=f.getDay(),E=f.setDate(f.getDate()-_);for(const b of Array(43).keys())r.value.push(E+b*864e5)};e.watch([l,a],s);const d=()=>a.value-=1,c=()=>a.value+=1,m=()=>{l.value==0?(l.value=11,d()):l.value-=1},u=()=>{l.value==11?(l.value=0,c()):l.value+=1},p=f=>{const _=new Date;if(l.value===_.getMonth())return _.toDateString()===new Date(f).toDateString()},h=f=>new Date(f).toDateString()===new Date(o.value).toDateString(),y=(f,_)=>(f-1)*G+_,V=(f,_)=>r.value[y(f,_)],k=f=>{n.value=o.value=new Date(r.value[f])},M=e.computed(()=>new Date(a.value,l.value,1).toLocaleDateString(void 0,{year:"numeric",month:"long"}));return Te([{parent:i,selectors:"td",handlers:{...j,"keydown.pageup":m,"keydown.shift.pageup":d,"keydown.pagedown":u,"keydown.shift.pagedown":c,"keydown.enter":()=>{}}}]),(f,_)=>(e.openBlock(),e.createElementBlock("div",{class:"adatepicker",tabindex:"0",ref_key:"adatepicker",ref:i},[e.createElementVNode("table",null,[e.createElementVNode("tr",null,[e.createElementVNode("td",{id:"previous-month-btn",onClick:m,tabindex:-1},"<"),e.createElementVNode("th",Ne,e.toDisplayString(M.value),1),e.createElementVNode("td",{id:"next-month-btn",onClick:u,tabindex:-1},">")]),Le,(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(ve,E=>e.createElementVNode("tr",{key:E},[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(G,b=>e.createElementVNode("td",{ref_for:!0,ref:"celldate",key:y(E,b),contenteditable:!1,spellcheck:!1,tabindex:0,onClick:e.withModifiers(te=>k(y(E,b)),["prevent","stop"]),onKeydown:e.withKeys(te=>k(y(E,b)),["enter"]),class:e.normalizeClass({todaysDate:p(V(E,b)),selectedDate:h(V(E,b))})},e.toDisplayString(new Date(V(E,b)).getDate()),43,$e)),64))])),64))])],512))}}),He=A(e.defineComponent({__name:"CollapseButton",props:{collapsed:{type:Boolean}},setup(t){return(n,o)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(["collapse-button",n.collapsed?"rotated":"unrotated"])},"×",2))}}),[["__scopeId","data-v-6f1c1b45"]]),Ie={class:"aform"},I=A(e.defineComponent({__name:"AForm",props:{modelValue:{},data:{},readonly:{type:Boolean}},emits:["update:modelValue"],setup(t,{emit:n}){const o=t,l=n,a=e.ref(o.data||{}),r=s=>{let d={};for(const[c,m]of Object.entries(s))["component","fieldtype"].includes(c)||(d[c]=m),c==="rows"&&m&&m.length===0&&(d.rows=a.value[s.fieldname]);return d},i=e.computed({get:()=>o.modelValue.map((s,d)=>e.computed({get(){return s.value},set:c=>{o.modelValue[d].value=c,l("update:modelValue",o.modelValue)}})),set:()=>{}});return(s,d)=>(e.openBlock(),e.createElementBlock("form",Ie,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.modelValue,(c,m)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(c.component),e.mergeProps({key:m,schema:c,modelValue:i.value[m].value,"onUpdate:modelValue":u=>i.value[m].value=u,data:a.value[c.fieldname],readonly:s.readonly,ref_for:!0},r(c)),null,16,["schema","modelValue","onUpdate:modelValue","data","readonly"]))),128))]))}}),[["__scopeId","data-v-dc1a868d"]]),Q=A(e.defineComponent({__name:"AFieldset",props:{schema:{},label:{},collapsible:{type:Boolean},data:{}},setup(t){const n=t,o=e.ref(n.data||[]),l=e.ref(!1),a=e.ref(n.collapsible),r=e.ref(n.schema);function i(s){s.preventDefault(),a.value&&(l.value=!l.value)}return(s,d)=>(e.openBlock(),e.createElementBlock("fieldset",null,[e.createElementVNode("legend",{onClick:i,onSubmit:i},[e.createTextVNode(e.toDisplayString(s.label)+" ",1),a.value?(e.openBlock(),e.createBlock(He,{key:0,collapsed:l.value},null,8,["collapsed"])):e.createCommentVNode("",!0)],32),e.renderSlot(s.$slots,"default",{collapsed:l.value},()=>[e.withDirectives(e.createVNode(I,{modelValue:r.value,"onUpdate:modelValue":d[0]||(d[0]=c=>r.value=c),data:o.value},null,8,["modelValue","data"]),[[e.vShow,!l.value]])],!0)]))}}),[["__scopeId","data-v-b89db0c0"]]),Fe={class:"aform__form-element"},Pe=["for"],xe=["id","disabled","required"],qe=["innerHTML"],X=e.defineComponent({__name:"ANumericInput",props:e.mergeModels({label:{},required:{type:Boolean},readonly:{type:Boolean},uuid:{},validation:{default:()=>({errorMessage:"&nbsp;"})}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const n=e.useModel(t,"modelValue");return(o,l)=>(e.openBlock(),e.createElementBlock("div",Fe,[e.createElementVNode("label",{class:"aform__field-label",for:o.uuid},e.toDisplayString(o.label),9,Pe),e.withDirectives(e.createElementVNode("input",{class:"aform__input-field","onUpdate:modelValue":l[0]||(l[0]=a=>n.value=a),type:"number",id:o.uuid,disabled:o.readonly,required:o.required},null,8,xe),[[e.vModelText,n.value]]),e.withDirectives(e.createElementVNode("p",{class:"error",innerHTML:o.validation.errorMessage},null,8,qe),[[e.vShow,o.validation.errorMessage]])]))}}),Z={date:"##/##/####",datetime:"####/##/## ##:##",time:"##:##",fulltime:"##:##:##",phone:"(###) ### - ####",card:"#### #### #### ####"};function Re(t){try{return Function(`"use strict";return (${t})`)()}catch{}}function Oe(t){var o;let n=t.value;if(n){const l=Re(n);if(l){const a=t.instance.locale;n=l(a)}}else{const l=t.instance.schema,a=(o=l==null?void 0:l.fieldtype)==null?void 0:o.toLowerCase();a&&Z[a]&&(n=Z[a])}return n}function Ue(t,n){n||(n="#");let o=t;const l=[n,"/","-","(",")"," "];for(const a of l)o=o.replaceAll(a,"");return o}function Ke(t,n,o){o||(o="#");let l=n;for(const a of t){const r=l.indexOf(o);if(r!==-1){const i=l.substring(0,r),s=l.substring(r+1);l=i+a+s}}return l.slice(0,n.length)}function ze(t,n){const o=Oe(n);if(!o)return;const l="#",a=t.value,r=Ue(a,l);if(r){const i=Ke(r,o,l);n.instance.maskFilled&&(n.instance.maskFilled=!i.includes(l)),t.value=i}else t.value=o}const We={class:"aform__form-element"},Ye=["for"],je=["id","disabled","maxlength","required"],Ge=["innerHTML"],ee=e.defineComponent({__name:"ATextInput",props:e.mergeModels({schema:{},label:{},mask:{},required:{type:Boolean},readonly:{type:Boolean},uuid:{},validation:{default:()=>({errorMessage:"&nbsp;"})}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const n=e.ref(!0),o=e.useModel(t,"modelValue");return(l,a)=>(e.openBlock(),e.createElementBlock("div",We,[e.createElementVNode("label",{class:"aform__field-label",for:l.uuid},e.toDisplayString(l.label),9,Ye),e.withDirectives(e.createElementVNode("input",{class:"aform__input-field","onUpdate:modelValue":a[0]||(a[0]=r=>o.value=r),id:l.uuid,disabled:l.readonly,maxlength:l.mask?n.value&&l.mask.length:void 0,required:l.required},null,8,je),[[e.vModelText,o.value],[e.unref(ze),l.mask]]),e.withDirectives(e.createElementVNode("p",{class:"error",innerHTML:l.validation.errorMessage},null,8,Ge),[[e.vShow,l.validation.errorMessage]])]))}}),Je={class:"login-container"},Qe={class:"account-container"},Xe={class:"account-header"},Ze={id:"account-title"},et={id:"account-subtitle"},tt={class:"login-form-container"},nt={class:"login-form-email login-form-element"},ot=e.createElementVNode("label",{id:"login-email",for:"email",class:"aform__field-label"},"Email",-1),lt=["disabled"],at={class:"login-form-password login-form-element"},rt=e.createElementVNode("label",{id:"login-password",for:"password",class:"login-label"},"Password",-1),st=["disabled"],it=["disabled"],ct={key:0,class:"material-symbols-outlined loading-icon"},dt=e.createElementVNode("span",{id:"login-form-button"},"Login",-1),mt=e.createElementVNode("button",{class:"btn"},[e.createElementVNode("span",{id:"forgot-password-button"},"Forgot password?")],-1),ut=e.defineComponent({__name:"Login",props:{headerTitle:{default:"Login"},headerSubtitle:{default:"Enter your email and password to login"}},emits:["loginFailed","loginSuccess"],setup(t,{emit:n}){const o=n,l=e.ref(""),a=e.ref(""),r=e.ref(!1),i=e.ref(!1);function s(d){if(d.preventDefault(),r.value=!0,i.value){r.value=!1,o("loginFailed");return}r.value=!1,o("loginSuccess")}return(d,c)=>(e.openBlock(),e.createElementBlock("div",Je,[e.createElementVNode("div",null,[e.createElementVNode("div",Qe,[e.createElementVNode("div",Xe,[e.createElementVNode("h1",Ze,e.toDisplayString(d.headerTitle),1),e.createElementVNode("p",et,e.toDisplayString(d.headerSubtitle),1)]),e.createElementVNode("form",{onSubmit:s},[e.createElementVNode("div",tt,[e.createElementVNode("div",nt,[ot,e.withDirectives(e.createElementVNode("input",{id:"email",class:"aform__input-field",name:"email",placeholder:"name@example.com",type:"email","onUpdate:modelValue":c[0]||(c[0]=m=>l.value=m),"auto-capitalize":"none","auto-complete":"email","auto-correct":"off",disabled:r.value},null,8,lt),[[e.vModelText,l.value]])]),e.createElementVNode("div",at,[rt,e.withDirectives(e.createElementVNode("input",{id:"password",class:"login-field",name:"password",type:"password","onUpdate:modelValue":c[1]||(c[1]=m=>a.value=m),disabled:r.value},null,8,st),[[e.vModelText,a.value]])]),e.createElementVNode("button",{class:"btn",onClick:s,disabled:r.value||!l.value||!a.value},[r.value?(e.openBlock(),e.createElementBlock("span",ct,"progress_activity")):e.createCommentVNode("",!0),dt],8,it)])],32),mt])])]))}});function ft(t){t.component("ACheckbox",F),t.component("ACombobox",P),t.component("ADate",x),t.component("ADropdown",q),t.component("ADatePicker",J),t.component("AFieldset",Q),t.component("AForm",I),t.component("ANumericInput",X),t.component("ATextInput",ee)}g.ACheckbox=F,g.AComboBox=P,g.ADate=x,g.ADatePicker=J,g.ADropdown=q,g.AFieldset=Q,g.AForm=I,g.ANumericInput=X,g.ATextInput=ee,g.Login=ut,g.install=ft,Object.defineProperty(g,Symbol.toStringTag,{value:"Module"})});
1
+ (function(h,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(h=typeof globalThis<"u"?globalThis:h||self,e(h["@stonecrop/aform"]={},h.Vue))})(this,function(h,e){"use strict";const oe={class:"aform__form-element"},le=["for"],ae={class:"aform__checkbox-container aform__input-field"},re=["id","readonly","required"],se=["innerHTML"],I=e.defineComponent({__name:"ACheckbox",props:e.mergeModels({label:{},required:{type:Boolean},readOnly:{type:Boolean},uuid:{},validation:{default:()=>({errorMessage:"&nbsp;"})}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const n=e.useModel(t,"modelValue");return(o,l)=>(e.openBlock(),e.createElementBlock("div",oe,[e.createElementVNode("label",{class:"aform__field-label",for:o.uuid},e.toDisplayString(o.label),9,le),e.createElementVNode("span",ae,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":l[0]||(l[0]=a=>n.value=a),type:"checkbox",id:o.uuid,class:"aform__checkbox",readonly:o.readOnly,required:o.required},null,8,re),[[e.vModelCheckbox,n.value]])]),e.withDirectives(e.createElementVNode("p",{class:"error",innerHTML:o.validation.errorMessage},null,8,se),[[e.vShow,o.validation.errorMessage]])]))}}),ie=e.createElementVNode("div",null,[e.createElementVNode("input",{type:"text"}),e.createElementVNode("input",{type:"text"}),e.createElementVNode("input",{type:"text"})],-1),x=e.defineComponent({__name:"AComboBox",props:["event","cellData","tableID"],setup(t){return(n,o)=>{const l=e.resolveComponent("ATableModal");return e.openBlock(),e.createBlock(l,{event:t.event,cellData:t.cellData,class:"amodal"},{default:e.withCtx(()=>[ie]),_:1},8,["event","cellData"])}}}),ce=["id","disabled","required","value"],de=["for"],me=["innerHTML"],fe=e.defineComponent({__name:"ADate",props:e.mergeModels({label:{default:"Date"},required:{type:Boolean},readonly:{type:Boolean},uuid:{},validation:{default:()=>({errorMessage:"&nbsp;"})}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const n=e.useModel(t,"modelValue"),o=e.ref(null),l=()=>{o.value&&"showPicker"in HTMLInputElement.prototype&&o.value.showPicker()};return(a,r)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("input",{ref_key:"dateRef",ref:o,type:"date",id:a.uuid,disabled:a.readonly,required:a.required,value:n.value,onClick:l},null,8,ce),e.createElementVNode("label",{for:a.uuid},e.toDisplayString(a.label),9,de),e.withDirectives(e.createElementVNode("p",{innerHTML:a.validation.errorMessage},null,8,me),[[e.vShow,a.validation.errorMessage]])]))}}),A=(t,n)=>{const o=t.__vccOpts||t;for(const[l,a]of n)o[l]=a;return o},O=A(fe,[["__scopeId","data-v-69d0f23d"]]),ue={class:"input-wrapper"},pe={id:"autocomplete-results",class:"autocomplete-results"},he={key:0,class:"loading autocomplete-result"},ge=["onClick"],q=e.defineComponent({__name:"ADropdown",props:e.mergeModels({label:{},items:{},isAsync:{type:Boolean}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["filterChanged"],["update:modelValue"]),setup(t,{emit:n}){const o=t,l=n,a=e.ref(o.items),r=e.useModel(t,"modelValue"),i=e.ref(!1),s=e.ref(0),d=e.ref(!1),c=e.ref(null);e.onMounted(()=>{document.addEventListener("click",g),f()}),e.onUnmounted(()=>{document.removeEventListener("click",g)});const m=u=>{r.value=u,y()},f=()=>{r.value?a.value=o.items.filter(u=>u.toLowerCase().indexOf(r.value.toLowerCase())>-1):a.value=o.items},p=()=>{d.value=!0,o.isAsync?(i.value=!0,l("filterChanged",r.value)):f()},g=()=>{y(),s.value=0},y=()=>{d.value=!1,o.items.includes(r.value)||(r.value="")},V=()=>{s.value<a.value.length&&(s.value=s.value+1)},k=()=>{s.value>0&&(s.value=s.value-1)},M=()=>{r.value=a.value[s.value],y(),s.value=0};return(u,_)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["autocomplete",{isOpen:d.value}])},[e.createElementVNode("div",ue,[e.withDirectives(e.createElementVNode("input",{ref_key:"mopInput",ref:c,type:"text",onInput:p,onFocus:p,"onUpdate:modelValue":_[0]||(_[0]=E=>r.value=E),onKeydown:[e.withKeys(V,["down"]),e.withKeys(k,["up"]),e.withKeys(M,["enter"])]},null,544),[[e.vModelText,r.value]]),e.withDirectives(e.createElementVNode("ul",pe,[i.value?(e.openBlock(),e.createElementBlock("li",he,"Loading results...")):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(a.value,(E,b)=>(e.openBlock(),e.createElementBlock("li",{key:b,onClick:ne=>m(E),class:e.normalizeClass(["autocomplete-result",{"is-active":b===s.value}])},e.toDisplayString(E),11,ge))),128))],512),[[e.vShow,d.value]]),e.createElementVNode("label",null,e.toDisplayString(u.label),1)])],2))}});function R(t){return e.getCurrentScope()?(e.onScopeDispose(t),!0):!1}function N(t){return typeof t=="function"?t():e.unref(t)}const _e=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const ye=t=>t!=null,Ee=Object.prototype.toString,ke=t=>Ee.call(t)==="[object Object]",be=()=>{};function C(t){var n;const o=N(t);return(n=o==null?void 0:o.$el)!=null?n:o}const S=_e?window:void 0;function T(...t){let n,o,l,a;if(typeof t[0]=="string"||Array.isArray(t[0])?([o,l,a]=t,n=S):[n,o,l,a]=t,!n)return be;Array.isArray(o)||(o=[o]),Array.isArray(l)||(l=[l]);const r=[],i=()=>{r.forEach(m=>m()),r.length=0},s=(m,f,p,g)=>(m.addEventListener(f,p,g),()=>m.removeEventListener(f,p,g)),d=e.watch(()=>[C(n),N(a)],([m,f])=>{if(i(),!m)return;const p=ke(f)?{...f}:f;r.push(...o.flatMap(g=>l.map(y=>s(m,g,y,p))))},{immediate:!0,flush:"post"}),c=()=>{d(),i()};return R(c),c}function we(){const t=e.ref(!1),n=e.getCurrentInstance();return n&&e.onMounted(()=>{t.value=!0},n),t}function De(t){const n=we();return e.computed(()=>(n.value,!!t()))}function Ve(t,n,o={}){const{window:l=S,...a}=o;let r;const i=De(()=>l&&"MutationObserver"in l),s=()=>{r&&(r.disconnect(),r=void 0)},d=e.computed(()=>{const p=N(t),g=(Array.isArray(p)?p:[p]).map(C).filter(ye);return new Set(g)}),c=e.watch(()=>d.value,p=>{s(),i.value&&p.size&&(r=new MutationObserver(n),p.forEach(g=>r.observe(g,a)))},{immediate:!0,flush:"post"}),m=()=>r==null?void 0:r.takeRecords(),f=()=>{s(),c()};return R(f),{isSupported:i,stop:f,takeRecords:m}}function Me(t={}){var n;const{window:o=S,deep:l=!0,triggerOnRemoval:a=!1}=t,r=(n=t.document)!=null?n:o==null?void 0:o.document,i=()=>{var c;let m=r==null?void 0:r.activeElement;if(l)for(;m!=null&&m.shadowRoot;)m=(c=m==null?void 0:m.shadowRoot)==null?void 0:c.activeElement;return m},s=e.ref(),d=()=>{s.value=i()};return o&&(T(o,"blur",c=>{c.relatedTarget===null&&d()},!0),T(o,"focus",d,!0)),a&&Ve(r,c=>{c.filter(m=>m.removedNodes.length).map(m=>Array.from(m.removedNodes)).flat().forEach(m=>{m===s.value&&d()})},{childList:!0,subtree:!0}),d(),s}function Ce(t,n={}){const o=Me(n),l=e.computed(()=>C(t));return{focused:e.computed(()=>l.value&&o.value?l.value.contains(o.value):!1)}}function Ae(t,{window:n=S,scrollTarget:o}={}){const l=e.ref(!1),a=()=>{if(!n)return;const r=n.document,i=C(t);if(!i)l.value=!1;else{const s=i.getBoundingClientRect();l.value=s.top<=(n.innerHeight||r.documentElement.clientHeight)&&s.left<=(n.innerWidth||r.documentElement.clientWidth)&&s.bottom>=0&&s.right>=0}};return e.watch(()=>C(t),()=>a(),{immediate:!0,flush:"post"}),n&&T(o||n,"scroll",a,{capture:!1,passive:!0}),l}const w=t=>{let n=Ae(t).value;return n=n&&t.offsetHeight>0,n},D=t=>t.tabIndex>=0,v=t=>{const n=t.target;return $(n)},$=t=>{var n;let o;if(t instanceof HTMLTableCellElement){const l=(n=t.parentElement)==null?void 0:n.previousElementSibling;if(l){const a=Array.from(l.children)[t.cellIndex];a&&(o=a)}}else if(t instanceof HTMLTableRowElement){const l=t.previousElementSibling;l&&(o=l)}return o&&(!D(o)||!w(o))?$(o):o},Se=t=>{var n;const o=t.target;let l;if(o instanceof HTMLTableCellElement){const a=(n=o.parentElement)==null?void 0:n.parentElement;if(a){const r=a.firstElementChild.children[o.cellIndex];r&&(l=r)}}else if(o instanceof HTMLTableRowElement){const a=o.parentElement;if(a){const r=a.firstElementChild;r&&(l=r)}}return l&&(!D(l)||!w(l))?L(l):l},U=t=>{const n=t.target;return L(n)},L=t=>{var n;let o;if(t instanceof HTMLTableCellElement){const l=(n=t.parentElement)==null?void 0:n.nextElementSibling;if(l){const a=Array.from(l.children)[t.cellIndex];a&&(o=a)}}else if(t instanceof HTMLTableRowElement){const l=t.nextElementSibling;l&&(o=l)}return o&&(!D(o)||!w(o))?L(o):o},Be=t=>{var n;const o=t.target;let l;if(o instanceof HTMLTableCellElement){const a=(n=o.parentElement)==null?void 0:n.parentElement;if(a){const r=a.lastElementChild.children[o.cellIndex];r&&(l=r)}}else if(o instanceof HTMLTableRowElement){const a=o.parentElement;if(a){const r=a.lastElementChild;r&&(l=r)}}return l&&(!D(l)||!w(l))?$(l):l},W=t=>{const n=t.target;return F(n)},F=t=>{var n;let o;if(t.previousElementSibling)o=t.previousElementSibling;else{const l=(n=t.parentElement)==null?void 0:n.previousElementSibling;o=l==null?void 0:l.lastElementChild}return o&&(!D(o)||!w(o))?F(o):o},K=t=>{const n=t.target;return P(n)},P=t=>{var n;let o;if(t.nextElementSibling)o=t.nextElementSibling;else{const l=(n=t.parentElement)==null?void 0:n.nextElementSibling;o=l==null?void 0:l.firstElementChild}return o&&(!D(o)||!w(o))?P(o):o},z=t=>{const n=t.target.parentElement.firstElementChild;return n&&(!D(n)||!w(n))?P(n):n},Y=t=>{const n=t.target.parentElement.lastElementChild;return n&&(!D(n)||!w(n))?F(n):n},B=["alt","control","shift","meta"],Ne={ArrowUp:"up",ArrowDown:"down",ArrowLeft:"left",ArrowRight:"right"},G={"keydown.up":t=>{const n=v(t);n&&(t.preventDefault(),t.stopPropagation(),n.focus())},"keydown.down":t=>{const n=U(t);n&&(t.preventDefault(),t.stopPropagation(),n.focus())},"keydown.left":t=>{const n=W(t);t.preventDefault(),t.stopPropagation(),n&&n.focus()},"keydown.right":t=>{const n=K(t);t.preventDefault(),t.stopPropagation(),n&&n.focus()},"keydown.control.up":t=>{const n=Se(t);n&&(t.preventDefault(),t.stopPropagation(),n.focus())},"keydown.control.down":t=>{const n=Be(t);n&&(t.preventDefault(),t.stopPropagation(),n.focus())},"keydown.control.left":t=>{const n=z(t);n&&(t.preventDefault(),t.stopPropagation(),n.focus())},"keydown.control.right":t=>{const n=Y(t);n&&(t.preventDefault(),t.stopPropagation(),n.focus())},"keydown.end":t=>{const n=Y(t);n&&(t.preventDefault(),t.stopPropagation(),n.focus())},"keydown.enter":t=>{if(t.target instanceof HTMLTableCellElement){t.preventDefault(),t.stopPropagation();const n=U(t);n&&n.focus()}},"keydown.shift.enter":t=>{if(t.target instanceof HTMLTableCellElement){t.preventDefault(),t.stopPropagation();const n=v(t);n&&n.focus()}},"keydown.home":t=>{const n=z(t);n&&(t.preventDefault(),t.stopPropagation(),n.focus())},"keydown.tab":t=>{const n=K(t);n&&(t.preventDefault(),t.stopPropagation(),n.focus())},"keydown.shift.tab":t=>{const n=W(t);n&&(t.preventDefault(),t.stopPropagation(),n.focus())}};function Te(t){const n=i=>{let s=null;return i.parent&&(typeof i.parent=="string"?s=document.querySelector(i.parent):i.parent instanceof HTMLElement?s=i.parent:s=i.parent.value),s},o=i=>{const s=n(i);let d=[];if(typeof i.selectors=="string")d=s?Array.from(s.querySelectorAll(i.selectors)):Array.from(document.querySelectorAll(i.selectors));else if(Array.isArray(i.selectors))for(const c of i.selectors)c instanceof HTMLElement?d.push(c):d.push(c.$el);else if(i.selectors instanceof HTMLElement)d.push(i.selectors);else if(Array.isArray(i.selectors.value))for(const c of i.selectors.value)c instanceof HTMLElement?d.push(c):d.push(c.$el);else d.push(i.selectors.value);return d},l=i=>{const s=n(i);let d=[];return i.selectors?d=o(i):s&&(d=Array.from(s.children).filter(c=>D(c)&&w(c))),d},a=i=>s=>{const d=Ne[s.key]||s.key.toLowerCase();if(B.includes(d))return;const c=i.handlers||G;for(const m of Object.keys(c)){const[f,...p]=m.split(".");if(f==="keydown"&&p.includes(d)){const g=c[m],y=p.filter(k=>B.includes(k)),V=B.some(k=>{const M=k.charAt(0).toUpperCase()+k.slice(1);return s.getModifierState(M)});if(y.length>0){if(V){for(const k of B)if(p.includes(k)){const M=k.charAt(0).toUpperCase()+k.slice(1);s.getModifierState(M)&&g(s)}}}else V||g(s)}}},r=[];e.onMounted(()=>{for(const i of t){const s=n(i),d=l(i),c=a(i),m=s?[s]:d;for(const f of m){const{focused:p}=Ce(e.ref(f)),g=e.watch(p,y=>{y?f.addEventListener("keydown",c):f.removeEventListener("keydown",c)});r.push(g)}}}),e.onBeforeUnmount(()=>{for(const i of r)i()})}const $e={colspan:"5",tabindex:-1},Le=e.createElementVNode("tr",{class:"days-header"},[e.createElementVNode("td",null,"M"),e.createElementVNode("td",null,"T"),e.createElementVNode("td",null,"W"),e.createElementVNode("td",null,"T"),e.createElementVNode("td",null,"F"),e.createElementVNode("td",null,"S"),e.createElementVNode("td",null,"S")],-1),Fe=["onClick","onKeydown"],Pe=6,j=7,J=e.defineComponent({__name:"ADatePicker",props:{modelValue:{default:new Date},modelModifiers:{}},emits:["update:modelValue"],setup(t){const n=e.useModel(t,"modelValue"),o=e.ref(new Date(n.value)),l=e.ref(o.value.getMonth()),a=e.ref(o.value.getFullYear()),r=e.ref([]),i=e.ref(null);e.onMounted(async()=>{s(),await e.nextTick();const u=document.getElementsByClassName("selectedDate");if(u.length>0)u[0].focus();else{const _=document.getElementsByClassName("todaysDate");_.length>0&&_[0].focus()}});const s=()=>{r.value=[];const u=new Date(a.value,l.value,1),_=u.getDay(),E=u.setDate(u.getDate()-_);for(const b of Array(43).keys())r.value.push(E+b*864e5)};e.watch([l,a],s);const d=()=>a.value-=1,c=()=>a.value+=1,m=()=>{l.value==0?(l.value=11,d()):l.value-=1},f=()=>{l.value==11?(l.value=0,c()):l.value+=1},p=u=>{const _=new Date;if(l.value===_.getMonth())return _.toDateString()===new Date(u).toDateString()},g=u=>new Date(u).toDateString()===new Date(o.value).toDateString(),y=(u,_)=>(u-1)*j+_,V=(u,_)=>r.value[y(u,_)],k=u=>{n.value=o.value=new Date(r.value[u])},M=e.computed(()=>new Date(a.value,l.value,1).toLocaleDateString(void 0,{year:"numeric",month:"long"}));return Te([{parent:i,selectors:"td",handlers:{...G,"keydown.pageup":m,"keydown.shift.pageup":d,"keydown.pagedown":f,"keydown.shift.pagedown":c,"keydown.enter":()=>{}}}]),(u,_)=>(e.openBlock(),e.createElementBlock("div",{class:"adatepicker",tabindex:"0",ref_key:"adatepicker",ref:i},[e.createElementVNode("table",null,[e.createElementVNode("tr",null,[e.createElementVNode("td",{id:"previous-month-btn",onClick:m,tabindex:-1},"<"),e.createElementVNode("th",$e,e.toDisplayString(M.value),1),e.createElementVNode("td",{id:"next-month-btn",onClick:f,tabindex:-1},">")]),Le,(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(Pe,E=>e.createElementVNode("tr",{key:E},[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(j,b=>e.createElementVNode("td",{ref_for:!0,ref:"celldate",key:y(E,b),contenteditable:!1,spellcheck:!1,tabindex:0,onClick:e.withModifiers(ne=>k(y(E,b)),["prevent","stop"]),onKeydown:e.withKeys(ne=>k(y(E,b)),["enter"]),class:e.normalizeClass({todaysDate:p(V(E,b)),selectedDate:g(V(E,b))})},e.toDisplayString(new Date(V(E,b)).getDate()),43,Fe)),64))])),64))])],512))}}),He=A(e.defineComponent({__name:"CollapseButton",props:{collapsed:{type:Boolean}},setup(t){return(n,o)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(["collapse-button",n.collapsed?"rotated":"unrotated"])},"×",2))}}),[["__scopeId","data-v-6f1c1b45"]]),Ie={class:"aform"},H=A(e.defineComponent({__name:"AForm",props:{modelValue:{},data:{},readonly:{type:Boolean}},emits:["update:modelValue"],setup(t,{emit:n}){const o=t,l=n,a=e.ref(o.data||{}),r=s=>{let d={};for(const[c,m]of Object.entries(s))["component","fieldtype"].includes(c)||(d[c]=m),c==="rows"&&m&&m.length===0&&(d.rows=a.value[s.fieldname]);return d},i=e.computed({get:()=>o.modelValue.map((s,d)=>e.computed({get(){return s.value},set:c=>{o.modelValue[d].value=c,l("update:modelValue",o.modelValue)}})),set:()=>{}});return(s,d)=>(e.openBlock(),e.createElementBlock("form",Ie,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.modelValue,(c,m)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(c.component),e.mergeProps({key:m,schema:c,modelValue:i.value[m].value,"onUpdate:modelValue":f=>i.value[m].value=f,data:a.value[c.fieldname],readonly:s.readonly,ref_for:!0},r(c)),null,16,["schema","modelValue","onUpdate:modelValue","data","readonly"]))),128))]))}}),[["__scopeId","data-v-dc1a868d"]]),Q=A(e.defineComponent({__name:"AFieldset",props:{schema:{},label:{},collapsible:{type:Boolean},data:{}},setup(t){const n=t,o=e.ref(n.data||[]),l=e.ref(!1),a=e.ref(n.collapsible),r=e.ref(n.schema);function i(s){s.preventDefault(),a.value&&(l.value=!l.value)}return(s,d)=>(e.openBlock(),e.createElementBlock("fieldset",null,[e.createElementVNode("legend",{onClick:i,onSubmit:i},[e.createTextVNode(e.toDisplayString(s.label)+" ",1),a.value?(e.openBlock(),e.createBlock(He,{key:0,collapsed:l.value},null,8,["collapsed"])):e.createCommentVNode("",!0)],32),e.renderSlot(s.$slots,"default",{collapsed:l.value},()=>[e.withDirectives(e.createVNode(H,{modelValue:r.value,"onUpdate:modelValue":d[0]||(d[0]=c=>r.value=c),data:o.value},null,8,["modelValue","data"]),[[e.vShow,!l.value]])],!0)]))}}),[["__scopeId","data-v-b89db0c0"]]);function xe(t){return e.getCurrentScope()?(e.onScopeDispose(t),!0):!1}function Oe(){const t=new Set,n=a=>{t.delete(a)};return{on:a=>{t.add(a);const r=()=>n(a);return xe(r),{off:r}},off:n,trigger:(...a)=>Promise.all(Array.from(t).map(r=>r(...a)))}}const qe=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Re=(t,n)=>Object.prototype.hasOwnProperty.call(t,n),ve=qe?window.document:void 0,Ue={multiple:!0,accept:"*",reset:!1,directory:!1};function We(t={}){const{document:n=ve}=t,o=e.ref(null),{on:l,trigger:a}=Oe();let r;n&&(r=n.createElement("input"),r.type="file",r.onchange=d=>{const c=d.target;o.value=c.files,a(o.value)});const i=()=>{o.value=null,r&&r.value&&(r.value="",a(null))},s=d=>{if(!r)return;const c={...Ue,...t,...d};r.multiple=c.multiple,r.accept=c.accept,r.webkitdirectory=c.directory,Re(c,"capture")&&(r.capture=c.capture),c.reset&&i(),r.click()};return{files:e.readonly(o),open:s,reset:i,onChange:l}}const Ke={class:"aform__form-element aform__file-attach aform__grid--full"},ze={key:0,class:"aform__file-attach-feedback"},Ye=["disabled"],X=e.defineComponent({__name:"AFileAttach",props:{schema:{},label:{},collapsible:{type:Boolean},data:{}},setup(t){const n=t,{files:o,open:l,reset:a,onChange:r}=We();return r(i=>i),(i,s)=>(e.openBlock(),e.createElementBlock("div",Ke,[e.unref(o)?(e.openBlock(),e.createElementBlock("div",ze,[e.createElementVNode("p",null,[e.createTextVNode(" You have selected: "),e.createElementVNode("b",null,e.toDisplayString(`${e.unref(o).length} ${e.unref(o).length===1?"file":"files"}`),1)]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(o),d=>(e.openBlock(),e.createElementBlock("li",{key:d.name},e.toDisplayString(d.name),1))),128))])):e.createCommentVNode("",!0),e.createElementVNode("button",{type:"button",onClick:s[0]||(s[0]=d=>e.unref(l)()),class:"aform__form-btn"},e.toDisplayString(n.label),1),e.createElementVNode("button",{type:"button",disabled:!e.unref(o),onClick:s[1]||(s[1]=d=>e.unref(a)()),class:"aform__form-btn"},"Reset",8,Ye)]))}}),Ge={class:"aform__form-element"},je=["for"],Je=["id","disabled","required"],Qe=["innerHTML"],Z=e.defineComponent({__name:"ANumericInput",props:e.mergeModels({label:{},required:{type:Boolean},readonly:{type:Boolean},uuid:{},validation:{default:()=>({errorMessage:"&nbsp;"})}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const n=e.useModel(t,"modelValue");return(o,l)=>(e.openBlock(),e.createElementBlock("div",Ge,[e.createElementVNode("label",{class:"aform__field-label",for:o.uuid},e.toDisplayString(o.label),9,je),e.withDirectives(e.createElementVNode("input",{class:"aform__input-field","onUpdate:modelValue":l[0]||(l[0]=a=>n.value=a),type:"number",id:o.uuid,disabled:o.readonly,required:o.required},null,8,Je),[[e.vModelText,n.value]]),e.withDirectives(e.createElementVNode("p",{class:"error",innerHTML:o.validation.errorMessage},null,8,Qe),[[e.vShow,o.validation.errorMessage]])]))}}),ee={date:"##/##/####",datetime:"####/##/## ##:##",time:"##:##",fulltime:"##:##:##",phone:"(###) ### - ####",card:"#### #### #### ####"};function Xe(t){try{return Function(`"use strict";return (${t})`)()}catch{}}function Ze(t){var o;let n=t.value;if(n){const l=Xe(n);if(l){const a=t.instance.locale;n=l(a)}}else{const l=t.instance.schema,a=(o=l==null?void 0:l.fieldtype)==null?void 0:o.toLowerCase();a&&ee[a]&&(n=ee[a])}return n}function et(t,n){n||(n="#");let o=t;const l=[n,"/","-","(",")"," "];for(const a of l)o=o.replaceAll(a,"");return o}function tt(t,n,o){o||(o="#");let l=n;for(const a of t){const r=l.indexOf(o);if(r!==-1){const i=l.substring(0,r),s=l.substring(r+1);l=i+a+s}}return l.slice(0,n.length)}function nt(t,n){const o=Ze(n);if(!o)return;const l="#",a=t.value,r=et(a,l);if(r){const i=tt(r,o,l);n.instance.maskFilled&&(n.instance.maskFilled=!i.includes(l)),t.value=i}else t.value=o}const ot={class:"aform__form-element"},lt=["for"],at=["id","disabled","maxlength","required"],rt=["innerHTML"],te=e.defineComponent({__name:"ATextInput",props:e.mergeModels({schema:{},label:{},mask:{},required:{type:Boolean},readonly:{type:Boolean},uuid:{},validation:{default:()=>({errorMessage:"&nbsp;"})}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const n=e.ref(!0),o=e.useModel(t,"modelValue");return(l,a)=>(e.openBlock(),e.createElementBlock("div",ot,[e.createElementVNode("label",{class:"aform__field-label",for:l.uuid},e.toDisplayString(l.label),9,lt),e.withDirectives(e.createElementVNode("input",{class:"aform__input-field","onUpdate:modelValue":a[0]||(a[0]=r=>o.value=r),id:l.uuid,disabled:l.readonly,maxlength:l.mask?n.value&&l.mask.length:void 0,required:l.required},null,8,at),[[e.vModelText,o.value],[e.unref(nt),l.mask]]),e.withDirectives(e.createElementVNode("p",{class:"error",innerHTML:l.validation.errorMessage},null,8,rt),[[e.vShow,l.validation.errorMessage]])]))}}),st={class:"login-container"},it={class:"account-container"},ct={class:"account-header"},dt={id:"account-title"},mt={id:"account-subtitle"},ft={class:"login-form-container"},ut={class:"login-form-email login-form-element"},pt=e.createElementVNode("label",{id:"login-email",for:"email",class:"aform__field-label"},"Email",-1),ht=["disabled"],gt={class:"login-form-password login-form-element"},_t=e.createElementVNode("label",{id:"login-password",for:"password",class:"aform__field-label"},"Password",-1),yt=["disabled"],Et=["disabled"],kt={key:0,class:"material-symbols-outlined loading-icon"},bt=e.createElementVNode("span",{id:"login-form-button"},"Login",-1),wt=e.createElementVNode("button",{class:"btn"},[e.createElementVNode("span",{id:"forgot-password-button"},"Forgot password?")],-1),Dt=e.defineComponent({__name:"Login",props:{headerTitle:{default:"Login"},headerSubtitle:{default:"Enter your email and password to login"}},emits:["loginFailed","loginSuccess"],setup(t,{emit:n}){const o=n,l=e.ref(""),a=e.ref(""),r=e.ref(!1),i=e.ref(!1);function s(d){if(d.preventDefault(),r.value=!0,i.value){r.value=!1,o("loginFailed");return}r.value=!1,o("loginSuccess")}return(d,c)=>(e.openBlock(),e.createElementBlock("div",st,[e.createElementVNode("div",null,[e.createElementVNode("div",it,[e.createElementVNode("div",ct,[e.createElementVNode("h1",dt,e.toDisplayString(d.headerTitle),1),e.createElementVNode("p",mt,e.toDisplayString(d.headerSubtitle),1)]),e.createElementVNode("form",{onSubmit:s},[e.createElementVNode("div",ft,[e.createElementVNode("div",ut,[pt,e.withDirectives(e.createElementVNode("input",{id:"email",class:"aform__input-field",name:"email",placeholder:"name@example.com",type:"email","onUpdate:modelValue":c[0]||(c[0]=m=>l.value=m),"auto-capitalize":"none","auto-complete":"email","auto-correct":"off",disabled:r.value},null,8,ht),[[e.vModelText,l.value]])]),e.createElementVNode("div",gt,[_t,e.withDirectives(e.createElementVNode("input",{id:"password",class:"aform__input-field",name:"password",type:"password","onUpdate:modelValue":c[1]||(c[1]=m=>a.value=m),disabled:r.value},null,8,yt),[[e.vModelText,a.value]])]),e.createElementVNode("button",{class:"btn",onClick:s,disabled:r.value||!l.value||!a.value},[r.value?(e.openBlock(),e.createElementBlock("span",kt,"progress_activity")):e.createCommentVNode("",!0),bt],8,Et)])],32),wt])])]))}});function Vt(t){t.component("ACheckbox",I),t.component("ACombobox",x),t.component("ADate",O),t.component("ADropdown",q),t.component("ADatePicker",J),t.component("AFieldset",Q),t.component("AFileAttach",X),t.component("AForm",H),t.component("ANumericInput",Z),t.component("ATextInput",te)}h.ACheckbox=I,h.AComboBox=x,h.ADate=O,h.ADatePicker=J,h.ADropdown=q,h.AFieldset=Q,h.AFileAttach=X,h.AForm=H,h.ANumericInput=Z,h.ATextInput=te,h.Login=Dt,h.install=Vt,Object.defineProperty(h,Symbol.toStringTag,{value:"Module"})});
2
2
  //# sourceMappingURL=aform.umd.cjs.map