@davincihealthcare/elty-design-system-vue 1.89.0 → 1.89.2

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
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue");;/* empty css */require("./polyfills.cjs.js");require("vee-validate");require("../node_modules/codice-fiscale-js/dist/codice.fiscale.commonjs2.cjs.js");require("../node_modules/lodash/lodash.cjs.js");require("./tailwind.plugin.cjs.js");require("../node_modules/@davincihealthcare/elty-design-system-foundations/dist/index.cjs.js");const s=require("./ElIcon.vue.cjs2.js"),c=require("./ElBadge.vue.cjs2.js");require("./forms/ElInputSelect.vue.cjs2.js");require("./forms/ElInputText.vue.cjs2.js");require("./forms/ElInputCheckbox.vue.cjs2.js");require("./forms/ElInputDate.vue.cjs2.js");require("./forms/ElInputFile.vue.cjs2.js");require("./forms/ElInputMeasureUnit.vue.cjs2.js");require("./forms/ElInputNumber.vue.cjs2.js");require("./forms/ElInputPhone.vue.cjs2.js");require("./forms/ElInputTextarea.vue.cjs2.js");require("./ElToast.vue.cjs2.js");require("./forms/ElInputRadioButton.vue.cjs2.js");require("./composable/useModalStack.cjs.js");require("../node_modules/swiper/shared/swiper-core.cjs.js");require("./forms/ElInputSearch.vue.cjs2.js");const d=["data-cy"],p={key:2,class:"h-4 ml-1 relative flex justify-center items-start"},v=["base","l"],m=["primary","secondary"],f=["default","hover","pressed","active"],b=e.defineComponent({__name:"ElActionButton",props:{id:{default:void 0},label:{},size:{default:"base"},color:{default:"primary"},status:{default:"default"},leadingIcon:{default:void 0},trailingIcon:{default:void 0},badge:{default:void 0},onClick:{type:Function,default:void 0}},emits:["click"],setup(l,{emit:i}){const t=l,n=()=>{a.value=!0,u("click",t.onClick)},a=e.ref(t.status==="pressed"),u=i;return(r,o)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(["transition-colors w-fit border flex flex-1 justify-center items-center gap-1 font-semibold leading-6 rounded-lg px-3 hover:bg-neutral-hover hover:text-neutral-darker active:bg-neutral-pressed",{"text-sm h-8":t.size==="base","text-base h-10":t.size==="l","border-transparent text-neutral-darker":t.status==="default","border-transparent text-neutral-darker bg-neutral-hover":t.status==="hover","border-transparent bg-neutral-pressed ":(a.value||t.status==="pressed")&&t.status!=="active"&&t.status!=="default"&&t.status!=="hover","text-primary-active bg-primary-light-active border-primary-active":t.status==="active"&&t.color==="primary","text-secondary-active bg-secondary-light-active border-secondary-active":t.status==="active"&&t.color==="secondary"}]),"data-cy":t.label?t.label.trim().replace(/\s+/g,""):"default-action-button",onMouseDown:o[0]||(o[0]=g=>a.value=!0),onClick:n},[r.leadingIcon?(e.openBlock(),e.createBlock(e.unref(s.default),e.mergeProps({key:0},r.leadingIcon,{class:{"h-4 w-4":r.size==="base","h-5 w-5":r.size==="l"}}),null,16,["class"])):e.createCommentVNode("",!0),e.createElementVNode("span",null,e.toDisplayString(t.label),1),r.trailingIcon?(e.openBlock(),e.createBlock(e.unref(s.default),e.mergeProps({key:1},r.trailingIcon,{class:{"h-4 w-4":r.size==="base","h-5 w-5":r.size==="l"}}),null,16,["class"])):e.createCommentVNode("",!0),r.badge?(e.openBlock(),e.createElementBlock("div",p,[e.createVNode(e.unref(c.default),e.mergeProps(r.badge,{color:"red"}),null,16)])):e.createCommentVNode("",!0)],42,d))}});exports.default=b;exports.elActionButtonColors=m;exports.elActionButtonSizes=v;exports.elActionButtonStatus=f;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue");;/* empty css */require("./polyfills.cjs.js");require("vee-validate");require("../node_modules/codice-fiscale-js/dist/codice.fiscale.commonjs2.cjs.js");require("../node_modules/lodash/lodash.cjs.js");require("./tailwind.plugin.cjs.js");require("../node_modules/@davincihealthcare/elty-design-system-foundations/dist/index.cjs.js");const s=require("./ElIcon.vue.cjs2.js"),c=require("./ElBadge.vue.cjs2.js");require("./forms/ElInputSelect.vue.cjs2.js");require("./forms/ElInputText.vue.cjs2.js");require("./forms/ElInputCheckbox.vue.cjs2.js");require("./forms/ElInputDate.vue.cjs2.js");require("./forms/ElInputFile.vue.cjs2.js");require("./forms/ElInputMeasureUnit.vue.cjs2.js");require("./forms/ElInputNumber.vue.cjs2.js");require("./forms/ElInputPhone.vue.cjs2.js");require("./forms/ElInputTextarea.vue.cjs2.js");require("./ElToast.vue.cjs2.js");require("./forms/ElInputRadioButton.vue.cjs2.js");require("../node_modules/swiper/shared/swiper-core.cjs.js");require("./forms/ElInputSearch.vue.cjs2.js");const d=["data-cy"],p={key:2,class:"h-4 ml-1 relative flex justify-center items-start"},v=["base","l"],m=["primary","secondary"],f=["default","hover","pressed","active"],b=e.defineComponent({__name:"ElActionButton",props:{id:{default:void 0},label:{},size:{default:"base"},color:{default:"primary"},status:{default:"default"},leadingIcon:{default:void 0},trailingIcon:{default:void 0},badge:{default:void 0},onClick:{type:Function,default:void 0}},emits:["click"],setup(l,{emit:i}){const t=l,n=()=>{a.value=!0,u("click",t.onClick)},a=e.ref(t.status==="pressed"),u=i;return(r,o)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(["transition-colors w-fit border flex flex-1 justify-center items-center gap-1 font-semibold leading-6 rounded-lg px-3 hover:bg-neutral-hover hover:text-neutral-darker active:bg-neutral-pressed",{"text-sm h-8":t.size==="base","text-base h-10":t.size==="l","border-transparent text-neutral-darker":t.status==="default","border-transparent text-neutral-darker bg-neutral-hover":t.status==="hover","border-transparent bg-neutral-pressed ":(a.value||t.status==="pressed")&&t.status!=="active"&&t.status!=="default"&&t.status!=="hover","text-primary-active bg-primary-light-active border-primary-active":t.status==="active"&&t.color==="primary","text-secondary-active bg-secondary-light-active border-secondary-active":t.status==="active"&&t.color==="secondary"}]),"data-cy":t.label?t.label.trim().replace(/\s+/g,""):"default-action-button",onMouseDown:o[0]||(o[0]=g=>a.value=!0),onClick:n},[r.leadingIcon?(e.openBlock(),e.createBlock(e.unref(s.default),e.mergeProps({key:0},r.leadingIcon,{class:{"h-4 w-4":r.size==="base","h-5 w-5":r.size==="l"}}),null,16,["class"])):e.createCommentVNode("",!0),e.createElementVNode("span",null,e.toDisplayString(t.label),1),r.trailingIcon?(e.openBlock(),e.createBlock(e.unref(s.default),e.mergeProps({key:1},r.trailingIcon,{class:{"h-4 w-4":r.size==="base","h-5 w-5":r.size==="l"}}),null,16,["class"])):e.createCommentVNode("",!0),r.badge?(e.openBlock(),e.createElementBlock("div",p,[e.createVNode(e.unref(c.default),e.mergeProps(r.badge,{color:"red"}),null,16)])):e.createCommentVNode("",!0)],42,d))}});exports.default=b;exports.elActionButtonColors=m;exports.elActionButtonSizes=v;exports.elActionButtonStatus=f;
2
2
  //# sourceMappingURL=ElActionButton.vue.cjs2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ElActionButton.vue.cjs2.js","sources":["../../src/ElActionButton.vue"],"sourcesContent":["<script lang=\"ts\">\nexport const elActionButtonSizes = ['base', 'l'] as const;\nexport type ElActionButtonSizes = (typeof elActionButtonSizes)[number];\n\nexport const elActionButtonColors = ['primary', 'secondary'] as const;\nexport type ElActionButtonColors = (typeof elActionButtonColors)[number];\n\nexport const elActionButtonStatus = ['default', 'hover', 'pressed', 'active'] as const;\nexport type ElActionButtonStatus = (typeof elActionButtonStatus)[number];\n</script>\n\n<script setup lang=\"ts\">\nimport { ElBadge, ElIcon } from '.';\nimport { ref } from 'vue';\n\nexport interface ActionButtonProps {\n id?: string;\n label: string;\n size: ElActionButtonSizes;\n color: ElActionButtonColors;\n status: ElActionButtonStatus;\n leadingIcon?: InstanceType<typeof ElIcon>['$props'];\n trailingIcon?: InstanceType<typeof ElIcon>['$props'] & { name: 'ChevronDownIcon' };\n badge?: Omit<InstanceType<typeof ElBadge>['$props'], 'badge'>;\n onClick?: (() => unknown) | (() => Promise<unknown>);\n}\n\nconst props = withDefaults(defineProps<ActionButtonProps>(), {\n id: undefined,\n size: 'base',\n color: 'primary',\n status: 'default',\n leadingIcon: undefined,\n trailingIcon: undefined,\n badge: undefined,\n onClick: undefined,\n});\n\nconst onClick = () => {\n isPressed.value = true;\n $emits('click', props.onClick);\n};\n\nconst isPressed = ref<boolean>(props.status === 'pressed');\nconst $emits = defineEmits(['click']);\n</script>\n\n<template>\n <button\n class=\"transition-colors w-fit border flex flex-1 justify-center items-center gap-1 font-semibold leading-6 rounded-lg px-3 hover:bg-neutral-hover hover:text-neutral-darker active:bg-neutral-pressed\"\n :class=\"{\n 'text-sm h-8': props.size === 'base',\n 'text-base h-10': props.size === 'l',\n 'border-transparent text-neutral-darker': props.status === 'default',\n 'border-transparent text-neutral-darker bg-neutral-hover': props.status === 'hover',\n 'border-transparent bg-neutral-pressed ':\n (isPressed || props.status === 'pressed') && props.status !== 'active' && props.status !== 'default' && props.status !== 'hover',\n 'text-primary-active bg-primary-light-active border-primary-active': props.status === 'active' && props.color === 'primary',\n 'text-secondary-active bg-secondary-light-active border-secondary-active': props.status === 'active' && props.color === 'secondary',\n }\"\n :data-cy=\"props.label ? props.label.trim().replace(/\\s+/g, '') : 'default-action' + '-button'\"\n @mouse-down=\"isPressed = true\"\n @click=\"onClick\"\n >\n <ElIcon\n v-if=\"leadingIcon\"\n v-bind=\"leadingIcon\"\n :class=\"{\n 'h-4 w-4': size === 'base',\n 'h-5 w-5': size === 'l',\n }\"\n />\n <span> {{ props.label }}</span>\n <ElIcon\n v-if=\"trailingIcon\"\n v-bind=\"trailingIcon\"\n :class=\"{\n 'h-4 w-4': size === 'base',\n 'h-5 w-5': size === 'l',\n }\"\n />\n <div v-if=\"badge\" class=\"h-4 ml-1 relative flex justify-center items-start\">\n <ElBadge v-bind=\"badge\" color=\"red\" />\n </div>\n </button>\n</template>\n"],"names":["elActionButtonSizes","elActionButtonColors","elActionButtonStatus","props","__props","onClick","isPressed","$emits","ref","__emit"],"mappings":"+vCACaA,EAAsB,CAAC,OAAQ,GAAG,EAGlCC,EAAuB,CAAC,UAAW,WAAW,EAG9CC,EAAuB,CAAC,UAAW,QAAS,UAAW,QAAQ,0TAoB5E,MAAMC,EAAQC,EAWRC,EAAU,IAAM,CACpBC,EAAU,MAAQ,GACXC,EAAA,QAASJ,EAAM,OAAO,CAAA,EAGzBG,EAAYE,EAAA,IAAaL,EAAM,SAAW,SAAS,EACnDI,EAASE"}
1
+ {"version":3,"file":"ElActionButton.vue.cjs2.js","sources":["../../src/ElActionButton.vue"],"sourcesContent":["<script lang=\"ts\">\nexport const elActionButtonSizes = ['base', 'l'] as const;\nexport type ElActionButtonSizes = (typeof elActionButtonSizes)[number];\n\nexport const elActionButtonColors = ['primary', 'secondary'] as const;\nexport type ElActionButtonColors = (typeof elActionButtonColors)[number];\n\nexport const elActionButtonStatus = ['default', 'hover', 'pressed', 'active'] as const;\nexport type ElActionButtonStatus = (typeof elActionButtonStatus)[number];\n</script>\n\n<script setup lang=\"ts\">\nimport { ElBadge, ElIcon } from '.';\nimport { ref } from 'vue';\n\nexport interface ActionButtonProps {\n id?: string;\n label: string;\n size: ElActionButtonSizes;\n color: ElActionButtonColors;\n status: ElActionButtonStatus;\n leadingIcon?: InstanceType<typeof ElIcon>['$props'];\n trailingIcon?: InstanceType<typeof ElIcon>['$props'] & { name: 'ChevronDownIcon' };\n badge?: Omit<InstanceType<typeof ElBadge>['$props'], 'badge'>;\n onClick?: (() => unknown) | (() => Promise<unknown>);\n}\n\nconst props = withDefaults(defineProps<ActionButtonProps>(), {\n id: undefined,\n size: 'base',\n color: 'primary',\n status: 'default',\n leadingIcon: undefined,\n trailingIcon: undefined,\n badge: undefined,\n onClick: undefined,\n});\n\nconst onClick = () => {\n isPressed.value = true;\n $emits('click', props.onClick);\n};\n\nconst isPressed = ref<boolean>(props.status === 'pressed');\nconst $emits = defineEmits(['click']);\n</script>\n\n<template>\n <button\n class=\"transition-colors w-fit border flex flex-1 justify-center items-center gap-1 font-semibold leading-6 rounded-lg px-3 hover:bg-neutral-hover hover:text-neutral-darker active:bg-neutral-pressed\"\n :class=\"{\n 'text-sm h-8': props.size === 'base',\n 'text-base h-10': props.size === 'l',\n 'border-transparent text-neutral-darker': props.status === 'default',\n 'border-transparent text-neutral-darker bg-neutral-hover': props.status === 'hover',\n 'border-transparent bg-neutral-pressed ':\n (isPressed || props.status === 'pressed') && props.status !== 'active' && props.status !== 'default' && props.status !== 'hover',\n 'text-primary-active bg-primary-light-active border-primary-active': props.status === 'active' && props.color === 'primary',\n 'text-secondary-active bg-secondary-light-active border-secondary-active': props.status === 'active' && props.color === 'secondary',\n }\"\n :data-cy=\"props.label ? props.label.trim().replace(/\\s+/g, '') : 'default-action' + '-button'\"\n @mouse-down=\"isPressed = true\"\n @click=\"onClick\"\n >\n <ElIcon\n v-if=\"leadingIcon\"\n v-bind=\"leadingIcon\"\n :class=\"{\n 'h-4 w-4': size === 'base',\n 'h-5 w-5': size === 'l',\n }\"\n />\n <span> {{ props.label }}</span>\n <ElIcon\n v-if=\"trailingIcon\"\n v-bind=\"trailingIcon\"\n :class=\"{\n 'h-4 w-4': size === 'base',\n 'h-5 w-5': size === 'l',\n }\"\n />\n <div v-if=\"badge\" class=\"h-4 ml-1 relative flex justify-center items-start\">\n <ElBadge v-bind=\"badge\" color=\"red\" />\n </div>\n </button>\n</template>\n"],"names":["elActionButtonSizes","elActionButtonColors","elActionButtonStatus","props","__props","onClick","isPressed","$emits","ref","__emit"],"mappings":"ktCACaA,EAAsB,CAAC,OAAQ,GAAG,EAGlCC,EAAuB,CAAC,UAAW,WAAW,EAG9CC,EAAuB,CAAC,UAAW,QAAS,UAAW,QAAQ,0TAoB5E,MAAMC,EAAQC,EAWRC,EAAU,IAAM,CACpBC,EAAU,MAAQ,GACXC,EAAA,QAASJ,EAAM,OAAO,CAAA,EAGzBG,EAAYE,EAAA,IAAaL,EAAM,SAAW,SAAS,EACnDI,EAASE"}
@@ -1,2 +1,2 @@
1
- import{defineComponent as v,ref as b,openBlock as r,createElementBlock as n,normalizeClass as g,createBlock as c,unref as a,mergeProps as s,createCommentVNode as i,createElementVNode as y,toDisplayString as h,createVNode as k}from"vue";/* empty css */import"./polyfills.esm.js";import"vee-validate";import"../node_modules/codice-fiscale-js/dist/codice.fiscale.commonjs2.esm.js";import"../node_modules/lodash/lodash.esm.js";import"./tailwind.plugin.esm.js";import"../node_modules/@davincihealthcare/elty-design-system-foundations/dist/index.esm.js";import d from"./ElIcon.vue.esm2.js";import z from"./ElBadge.vue.esm2.js";import"./forms/ElInputSelect.vue.esm2.js";import"./forms/ElInputText.vue.esm2.js";import"./forms/ElInputCheckbox.vue.esm2.js";import"./forms/ElInputDate.vue.esm2.js";import"./forms/ElInputFile.vue.esm2.js";import"./forms/ElInputMeasureUnit.vue.esm2.js";import"./forms/ElInputNumber.vue.esm2.js";import"./forms/ElInputPhone.vue.esm2.js";import"./forms/ElInputTextarea.vue.esm2.js";import"./ElToast.vue.esm2.js";import"./forms/ElInputRadioButton.vue.esm2.js";import"./composable/useModalStack.esm.js";import"../node_modules/swiper/shared/swiper-core.esm.js";import"./forms/ElInputSearch.vue.esm2.js";const B=["data-cy"],C={key:2,class:"h-4 ml-1 relative flex justify-center items-start"},U=["base","l"],W=["primary","secondary"],X=["default","hover","pressed","active"],Y=v({__name:"ElActionButton",props:{id:{default:void 0},label:{},size:{default:"base"},color:{default:"primary"},status:{default:"default"},leadingIcon:{default:void 0},trailingIcon:{default:void 0},badge:{default:void 0},onClick:{type:Function,default:void 0}},emits:["click"],setup(u,{emit:m}){const e=u,p=()=>{o.value=!0,f("click",e.onClick)},o=b(e.status==="pressed"),f=m;return(t,l)=>(r(),n("button",{class:g(["transition-colors w-fit border flex flex-1 justify-center items-center gap-1 font-semibold leading-6 rounded-lg px-3 hover:bg-neutral-hover hover:text-neutral-darker active:bg-neutral-pressed",{"text-sm h-8":e.size==="base","text-base h-10":e.size==="l","border-transparent text-neutral-darker":e.status==="default","border-transparent text-neutral-darker bg-neutral-hover":e.status==="hover","border-transparent bg-neutral-pressed ":(o.value||e.status==="pressed")&&e.status!=="active"&&e.status!=="default"&&e.status!=="hover","text-primary-active bg-primary-light-active border-primary-active":e.status==="active"&&e.color==="primary","text-secondary-active bg-secondary-light-active border-secondary-active":e.status==="active"&&e.color==="secondary"}]),"data-cy":e.label?e.label.trim().replace(/\s+/g,""):"default-action-button",onMouseDown:l[0]||(l[0]=w=>o.value=!0),onClick:p},[t.leadingIcon?(r(),c(a(d),s({key:0},t.leadingIcon,{class:{"h-4 w-4":t.size==="base","h-5 w-5":t.size==="l"}}),null,16,["class"])):i("",!0),y("span",null,h(e.label),1),t.trailingIcon?(r(),c(a(d),s({key:1},t.trailingIcon,{class:{"h-4 w-4":t.size==="base","h-5 w-5":t.size==="l"}}),null,16,["class"])):i("",!0),t.badge?(r(),n("div",C,[k(a(z),s(t.badge,{color:"red"}),null,16)])):i("",!0)],42,B))}});export{Y as default,W as elActionButtonColors,U as elActionButtonSizes,X as elActionButtonStatus};
1
+ import{defineComponent as v,ref as b,openBlock as r,createElementBlock as n,normalizeClass as g,createBlock as c,unref as a,mergeProps as s,createCommentVNode as i,createElementVNode as y,toDisplayString as h,createVNode as k}from"vue";/* empty css */import"./polyfills.esm.js";import"vee-validate";import"../node_modules/codice-fiscale-js/dist/codice.fiscale.commonjs2.esm.js";import"../node_modules/lodash/lodash.esm.js";import"./tailwind.plugin.esm.js";import"../node_modules/@davincihealthcare/elty-design-system-foundations/dist/index.esm.js";import d from"./ElIcon.vue.esm2.js";import z from"./ElBadge.vue.esm2.js";import"./forms/ElInputSelect.vue.esm2.js";import"./forms/ElInputText.vue.esm2.js";import"./forms/ElInputCheckbox.vue.esm2.js";import"./forms/ElInputDate.vue.esm2.js";import"./forms/ElInputFile.vue.esm2.js";import"./forms/ElInputMeasureUnit.vue.esm2.js";import"./forms/ElInputNumber.vue.esm2.js";import"./forms/ElInputPhone.vue.esm2.js";import"./forms/ElInputTextarea.vue.esm2.js";import"./ElToast.vue.esm2.js";import"./forms/ElInputRadioButton.vue.esm2.js";import"../node_modules/swiper/shared/swiper-core.esm.js";import"./forms/ElInputSearch.vue.esm2.js";const B=["data-cy"],C={key:2,class:"h-4 ml-1 relative flex justify-center items-start"},T=["base","l"],U=["primary","secondary"],W=["default","hover","pressed","active"],X=v({__name:"ElActionButton",props:{id:{default:void 0},label:{},size:{default:"base"},color:{default:"primary"},status:{default:"default"},leadingIcon:{default:void 0},trailingIcon:{default:void 0},badge:{default:void 0},onClick:{type:Function,default:void 0}},emits:["click"],setup(u,{emit:m}){const e=u,p=()=>{o.value=!0,f("click",e.onClick)},o=b(e.status==="pressed"),f=m;return(t,l)=>(r(),n("button",{class:g(["transition-colors w-fit border flex flex-1 justify-center items-center gap-1 font-semibold leading-6 rounded-lg px-3 hover:bg-neutral-hover hover:text-neutral-darker active:bg-neutral-pressed",{"text-sm h-8":e.size==="base","text-base h-10":e.size==="l","border-transparent text-neutral-darker":e.status==="default","border-transparent text-neutral-darker bg-neutral-hover":e.status==="hover","border-transparent bg-neutral-pressed ":(o.value||e.status==="pressed")&&e.status!=="active"&&e.status!=="default"&&e.status!=="hover","text-primary-active bg-primary-light-active border-primary-active":e.status==="active"&&e.color==="primary","text-secondary-active bg-secondary-light-active border-secondary-active":e.status==="active"&&e.color==="secondary"}]),"data-cy":e.label?e.label.trim().replace(/\s+/g,""):"default-action-button",onMouseDown:l[0]||(l[0]=w=>o.value=!0),onClick:p},[t.leadingIcon?(r(),c(a(d),s({key:0},t.leadingIcon,{class:{"h-4 w-4":t.size==="base","h-5 w-5":t.size==="l"}}),null,16,["class"])):i("",!0),y("span",null,h(e.label),1),t.trailingIcon?(r(),c(a(d),s({key:1},t.trailingIcon,{class:{"h-4 w-4":t.size==="base","h-5 w-5":t.size==="l"}}),null,16,["class"])):i("",!0),t.badge?(r(),n("div",C,[k(a(z),s(t.badge,{color:"red"}),null,16)])):i("",!0)],42,B))}});export{X as default,U as elActionButtonColors,T as elActionButtonSizes,W as elActionButtonStatus};
2
2
  //# sourceMappingURL=ElActionButton.vue.esm2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ElActionButton.vue.esm2.js","sources":["../../src/ElActionButton.vue"],"sourcesContent":["<script lang=\"ts\">\nexport const elActionButtonSizes = ['base', 'l'] as const;\nexport type ElActionButtonSizes = (typeof elActionButtonSizes)[number];\n\nexport const elActionButtonColors = ['primary', 'secondary'] as const;\nexport type ElActionButtonColors = (typeof elActionButtonColors)[number];\n\nexport const elActionButtonStatus = ['default', 'hover', 'pressed', 'active'] as const;\nexport type ElActionButtonStatus = (typeof elActionButtonStatus)[number];\n</script>\n\n<script setup lang=\"ts\">\nimport { ElBadge, ElIcon } from '.';\nimport { ref } from 'vue';\n\nexport interface ActionButtonProps {\n id?: string;\n label: string;\n size: ElActionButtonSizes;\n color: ElActionButtonColors;\n status: ElActionButtonStatus;\n leadingIcon?: InstanceType<typeof ElIcon>['$props'];\n trailingIcon?: InstanceType<typeof ElIcon>['$props'] & { name: 'ChevronDownIcon' };\n badge?: Omit<InstanceType<typeof ElBadge>['$props'], 'badge'>;\n onClick?: (() => unknown) | (() => Promise<unknown>);\n}\n\nconst props = withDefaults(defineProps<ActionButtonProps>(), {\n id: undefined,\n size: 'base',\n color: 'primary',\n status: 'default',\n leadingIcon: undefined,\n trailingIcon: undefined,\n badge: undefined,\n onClick: undefined,\n});\n\nconst onClick = () => {\n isPressed.value = true;\n $emits('click', props.onClick);\n};\n\nconst isPressed = ref<boolean>(props.status === 'pressed');\nconst $emits = defineEmits(['click']);\n</script>\n\n<template>\n <button\n class=\"transition-colors w-fit border flex flex-1 justify-center items-center gap-1 font-semibold leading-6 rounded-lg px-3 hover:bg-neutral-hover hover:text-neutral-darker active:bg-neutral-pressed\"\n :class=\"{\n 'text-sm h-8': props.size === 'base',\n 'text-base h-10': props.size === 'l',\n 'border-transparent text-neutral-darker': props.status === 'default',\n 'border-transparent text-neutral-darker bg-neutral-hover': props.status === 'hover',\n 'border-transparent bg-neutral-pressed ':\n (isPressed || props.status === 'pressed') && props.status !== 'active' && props.status !== 'default' && props.status !== 'hover',\n 'text-primary-active bg-primary-light-active border-primary-active': props.status === 'active' && props.color === 'primary',\n 'text-secondary-active bg-secondary-light-active border-secondary-active': props.status === 'active' && props.color === 'secondary',\n }\"\n :data-cy=\"props.label ? props.label.trim().replace(/\\s+/g, '') : 'default-action' + '-button'\"\n @mouse-down=\"isPressed = true\"\n @click=\"onClick\"\n >\n <ElIcon\n v-if=\"leadingIcon\"\n v-bind=\"leadingIcon\"\n :class=\"{\n 'h-4 w-4': size === 'base',\n 'h-5 w-5': size === 'l',\n }\"\n />\n <span> {{ props.label }}</span>\n <ElIcon\n v-if=\"trailingIcon\"\n v-bind=\"trailingIcon\"\n :class=\"{\n 'h-4 w-4': size === 'base',\n 'h-5 w-5': size === 'l',\n }\"\n />\n <div v-if=\"badge\" class=\"h-4 ml-1 relative flex justify-center items-start\">\n <ElBadge v-bind=\"badge\" color=\"red\" />\n </div>\n </button>\n</template>\n"],"names":["elActionButtonSizes","elActionButtonColors","elActionButtonStatus","props","__props","onClick","isPressed","$emits","ref","__emit"],"mappings":"uyCACaA,EAAsB,CAAC,OAAQ,GAAG,EAGlCC,EAAuB,CAAC,UAAW,WAAW,EAG9CC,EAAuB,CAAC,UAAW,QAAS,UAAW,QAAQ,0SAoB5E,MAAMC,EAAQC,EAWRC,EAAU,IAAM,CACpBC,EAAU,MAAQ,GACXC,EAAA,QAASJ,EAAM,OAAO,CAAA,EAGzBG,EAAYE,EAAaL,EAAM,SAAW,SAAS,EACnDI,EAASE"}
1
+ {"version":3,"file":"ElActionButton.vue.esm2.js","sources":["../../src/ElActionButton.vue"],"sourcesContent":["<script lang=\"ts\">\nexport const elActionButtonSizes = ['base', 'l'] as const;\nexport type ElActionButtonSizes = (typeof elActionButtonSizes)[number];\n\nexport const elActionButtonColors = ['primary', 'secondary'] as const;\nexport type ElActionButtonColors = (typeof elActionButtonColors)[number];\n\nexport const elActionButtonStatus = ['default', 'hover', 'pressed', 'active'] as const;\nexport type ElActionButtonStatus = (typeof elActionButtonStatus)[number];\n</script>\n\n<script setup lang=\"ts\">\nimport { ElBadge, ElIcon } from '.';\nimport { ref } from 'vue';\n\nexport interface ActionButtonProps {\n id?: string;\n label: string;\n size: ElActionButtonSizes;\n color: ElActionButtonColors;\n status: ElActionButtonStatus;\n leadingIcon?: InstanceType<typeof ElIcon>['$props'];\n trailingIcon?: InstanceType<typeof ElIcon>['$props'] & { name: 'ChevronDownIcon' };\n badge?: Omit<InstanceType<typeof ElBadge>['$props'], 'badge'>;\n onClick?: (() => unknown) | (() => Promise<unknown>);\n}\n\nconst props = withDefaults(defineProps<ActionButtonProps>(), {\n id: undefined,\n size: 'base',\n color: 'primary',\n status: 'default',\n leadingIcon: undefined,\n trailingIcon: undefined,\n badge: undefined,\n onClick: undefined,\n});\n\nconst onClick = () => {\n isPressed.value = true;\n $emits('click', props.onClick);\n};\n\nconst isPressed = ref<boolean>(props.status === 'pressed');\nconst $emits = defineEmits(['click']);\n</script>\n\n<template>\n <button\n class=\"transition-colors w-fit border flex flex-1 justify-center items-center gap-1 font-semibold leading-6 rounded-lg px-3 hover:bg-neutral-hover hover:text-neutral-darker active:bg-neutral-pressed\"\n :class=\"{\n 'text-sm h-8': props.size === 'base',\n 'text-base h-10': props.size === 'l',\n 'border-transparent text-neutral-darker': props.status === 'default',\n 'border-transparent text-neutral-darker bg-neutral-hover': props.status === 'hover',\n 'border-transparent bg-neutral-pressed ':\n (isPressed || props.status === 'pressed') && props.status !== 'active' && props.status !== 'default' && props.status !== 'hover',\n 'text-primary-active bg-primary-light-active border-primary-active': props.status === 'active' && props.color === 'primary',\n 'text-secondary-active bg-secondary-light-active border-secondary-active': props.status === 'active' && props.color === 'secondary',\n }\"\n :data-cy=\"props.label ? props.label.trim().replace(/\\s+/g, '') : 'default-action' + '-button'\"\n @mouse-down=\"isPressed = true\"\n @click=\"onClick\"\n >\n <ElIcon\n v-if=\"leadingIcon\"\n v-bind=\"leadingIcon\"\n :class=\"{\n 'h-4 w-4': size === 'base',\n 'h-5 w-5': size === 'l',\n }\"\n />\n <span> {{ props.label }}</span>\n <ElIcon\n v-if=\"trailingIcon\"\n v-bind=\"trailingIcon\"\n :class=\"{\n 'h-4 w-4': size === 'base',\n 'h-5 w-5': size === 'l',\n }\"\n />\n <div v-if=\"badge\" class=\"h-4 ml-1 relative flex justify-center items-start\">\n <ElBadge v-bind=\"badge\" color=\"red\" />\n </div>\n </button>\n</template>\n"],"names":["elActionButtonSizes","elActionButtonColors","elActionButtonStatus","props","__props","onClick","isPressed","$emits","ref","__emit"],"mappings":"6vCACaA,EAAsB,CAAC,OAAQ,GAAG,EAGlCC,EAAuB,CAAC,UAAW,WAAW,EAG9CC,EAAuB,CAAC,UAAW,QAAS,UAAW,QAAQ,0SAoB5E,MAAMC,EAAQC,EAWRC,EAAU,IAAM,CACpBC,EAAU,MAAQ,GACXC,EAAA,QAASJ,EAAM,OAAO,CAAA,EAGzBG,EAAYE,EAAaL,EAAM,SAAW,SAAS,EACnDI,EAASE"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),m=require("../node_modules/swiper/modules/keyboard.cjs.js"),f=require("../node_modules/swiper/modules/navigation.cjs.js"),p=require("../node_modules/swiper/modules/pagination.cjs.js"),n=require("../node_modules/swiper/swiper-vue.cjs.js");;/* empty css */require("./polyfills.cjs.js");require("vee-validate");require("../node_modules/codice-fiscale-js/dist/codice.fiscale.commonjs2.cjs.js");require("../node_modules/lodash/lodash.cjs.js");require("./tailwind.plugin.cjs.js");require("../node_modules/@davincihealthcare/elty-design-system-foundations/dist/index.cjs.js");const g=require("./ElButton.vue.cjs2.js");require("./forms/ElInputSelect.vue.cjs2.js");require("./forms/ElInputText.vue.cjs2.js");const o=require("./utils.cjs.js"),u=require("./ElIconButton.vue.cjs2.js");require("./forms/ElInputCheckbox.vue.cjs2.js");require("./forms/ElInputDate.vue.cjs2.js");require("./forms/ElInputFile.vue.cjs2.js");require("./forms/ElInputMeasureUnit.vue.cjs2.js");require("./forms/ElInputNumber.vue.cjs2.js");require("./forms/ElInputPhone.vue.cjs2.js");require("./forms/ElInputTextarea.vue.cjs2.js");require("./ElToast.vue.cjs2.js");require("./forms/ElInputRadioButton.vue.cjs2.js");require("./composable/useModalStack.cjs.js");require("./forms/ElInputSearch.vue.cjs2.js");const v={key:0,class:"bg-black opacity-30 left-0 absolute w-full h-full top-0 rounded-2xl"},w={class:"font-semibold text-neutral-inverse text-xl md:text-2xl lg:text-4xl"},b={class:"py-2 md:py-3 lg:py-4"},q={key:0,class:"px-6 w-full mb-20 hidden md:absolute md:mt-0 lg:top-60 md:bottom-0 lg:flex justify-between"},x={class:"w-9 h-9 flex justify-center items-center bg-white rounded-full z-10 overflow-hidden"},y={class:"w-9 h-9 flex justify-center items-center bg-white rounded-full z-10 overflow-hidden"},z=["sm","md","lg"],h=e.defineComponent({__name:"ElCarousel",props:{size:{},slides:{},opacity:{type:Boolean}},setup(k){const a=o.useMatchDevice(),d=e.computed(()=>{switch(a.value){case o.Device.Desktop:return"xl";case o.Device.Tablet:return"l";default:return"sm"}}),i=e.ref(),c=e.ref([f.default,p.default,m.default]);return(t,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["w-full relative",{"max-w-2xl":t.size==="md","max-w-7xl":t.size==="lg"}])},[e.createVNode(e.unref(n.Swiper),{"space-between":30,"slides-per-view":1,keyboard:{enabled:!0},pagination:{clickable:!0},loop:!0,navigation:!0,modules:c.value,class:"",onSwiper:s[0]||(s[0]=l=>i.value=l)},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.slides,(l,r)=>(e.openBlock(),e.createBlock(e.unref(n.SwiperSlide),{key:r},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(["flex items-center isolate overflow-hidden w-full bg-left bg-cover bg-no-repeat bg-black rounded-2xl p-6 md:p-7 lg:p-24",{"justify-end items-end h-auto":t.size==="sm","h-96":t.size==="md","h-auto":t.size==="lg"}]),style:e.normalizeStyle({backgroundImage:"url("+l.picture+")"})},[t.opacity?(e.openBlock(),e.createElementBlock("div",v)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["z-10 flex flex-col justify-end md:justify-center gap-3 lg:gap-4 items-start flex-1 self-stretch md:my-8 text-white text-sm md:text-base lg:text-xl",{"w-full":t.size==="sm","max-w-80":t.size==="md","max-w-96":t.size==="lg"}])},[e.createElementVNode("h1",w,e.toDisplayString(l.title),1),e.createElementVNode("p",{class:e.normalizeClass(["text-neutral-inverse font-medium text-sm md:text-base md:max-w-80 lg:text-xl lg:max-w-96",{"w-full":t.size==="sm","w-80 max-w-80":t.size==="md","w-96 max-w-96":t.size==="lg"}])},e.toDisplayString(l.description),3),e.createElementVNode("div",b,[e.createVNode(e.unref(g.default),e.mergeProps({ref_for:!0},l.button,{size:d.value}),null,16,["size"])])],2)],6)]),_:2},1024))),128))]),_:1},8,["modules"]),t.slides.length>1?(e.openBlock(),e.createElementBlock("div",q,[e.createElementVNode("div",x,[e.createVNode(e.unref(u.default),{icon:{name:"ArrowSmallLeftIcon"},onClick:s[1]||(s[1]=l=>{var r;return(r=i.value)==null?void 0:r.slidePrev()})})]),e.createElementVNode("div",y,[e.createVNode(e.unref(u.default),{icon:{name:"ArrowSmallRightIcon"},onClick:s[2]||(s[2]=l=>{var r;return(r=i.value)==null?void 0:r.slideNext()})})])])):e.createCommentVNode("",!0)],2))}});exports.default=h;exports.elCarouselSizes=z;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),m=require("../node_modules/swiper/modules/keyboard.cjs.js"),f=require("../node_modules/swiper/modules/navigation.cjs.js"),p=require("../node_modules/swiper/modules/pagination.cjs.js"),n=require("../node_modules/swiper/swiper-vue.cjs.js");;/* empty css */require("./polyfills.cjs.js");require("vee-validate");require("../node_modules/codice-fiscale-js/dist/codice.fiscale.commonjs2.cjs.js");require("../node_modules/lodash/lodash.cjs.js");require("./tailwind.plugin.cjs.js");require("../node_modules/@davincihealthcare/elty-design-system-foundations/dist/index.cjs.js");const g=require("./ElButton.vue.cjs2.js");require("./forms/ElInputSelect.vue.cjs2.js");require("./forms/ElInputText.vue.cjs2.js");const o=require("./utils.cjs.js"),u=require("./ElIconButton.vue.cjs2.js");require("./forms/ElInputCheckbox.vue.cjs2.js");require("./forms/ElInputDate.vue.cjs2.js");require("./forms/ElInputFile.vue.cjs2.js");require("./forms/ElInputMeasureUnit.vue.cjs2.js");require("./forms/ElInputNumber.vue.cjs2.js");require("./forms/ElInputPhone.vue.cjs2.js");require("./forms/ElInputTextarea.vue.cjs2.js");require("./ElToast.vue.cjs2.js");require("./forms/ElInputRadioButton.vue.cjs2.js");require("./forms/ElInputSearch.vue.cjs2.js");const v={key:0,class:"bg-black opacity-30 left-0 absolute w-full h-full top-0 rounded-2xl"},w={class:"font-semibold text-neutral-inverse text-xl md:text-2xl lg:text-4xl"},b={class:"py-2 md:py-3 lg:py-4"},x={key:0,class:"px-6 w-full mb-20 hidden md:absolute md:mt-0 lg:top-60 md:bottom-0 lg:flex justify-between"},q={class:"w-9 h-9 flex justify-center items-center bg-white rounded-full z-10 overflow-hidden"},y={class:"w-9 h-9 flex justify-center items-center bg-white rounded-full z-10 overflow-hidden"},z=["sm","md","lg"],h=e.defineComponent({__name:"ElCarousel",props:{size:{},slides:{},opacity:{type:Boolean}},setup(k){const a=o.useMatchDevice(),d=e.computed(()=>{switch(a.value){case o.Device.Desktop:return"xl";case o.Device.Tablet:return"l";default:return"sm"}}),i=e.ref(),c=e.ref([f.default,p.default,m.default]);return(t,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["w-full relative",{"max-w-2xl":t.size==="md","max-w-7xl":t.size==="lg"}])},[e.createVNode(e.unref(n.Swiper),{"space-between":30,"slides-per-view":1,keyboard:{enabled:!0},pagination:{clickable:!0},loop:!0,navigation:!0,modules:c.value,class:"",onSwiper:s[0]||(s[0]=l=>i.value=l)},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.slides,(l,r)=>(e.openBlock(),e.createBlock(e.unref(n.SwiperSlide),{key:r},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(["flex items-center isolate overflow-hidden w-full bg-left bg-cover bg-no-repeat bg-black rounded-2xl p-6 md:p-7 lg:p-24",{"justify-end items-end h-auto":t.size==="sm","h-96":t.size==="md","h-auto":t.size==="lg"}]),style:e.normalizeStyle({backgroundImage:"url("+l.picture+")"})},[t.opacity?(e.openBlock(),e.createElementBlock("div",v)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["z-10 flex flex-col justify-end md:justify-center gap-3 lg:gap-4 items-start flex-1 self-stretch md:my-8 text-white text-sm md:text-base lg:text-xl",{"w-full":t.size==="sm","max-w-80":t.size==="md","max-w-96":t.size==="lg"}])},[e.createElementVNode("h1",w,e.toDisplayString(l.title),1),e.createElementVNode("p",{class:e.normalizeClass(["text-neutral-inverse font-medium text-sm md:text-base md:max-w-80 lg:text-xl lg:max-w-96",{"w-full":t.size==="sm","w-80 max-w-80":t.size==="md","w-96 max-w-96":t.size==="lg"}])},e.toDisplayString(l.description),3),e.createElementVNode("div",b,[e.createVNode(e.unref(g.default),e.mergeProps({ref_for:!0},l.button,{size:d.value}),null,16,["size"])])],2)],6)]),_:2},1024))),128))]),_:1},8,["modules"]),t.slides.length>1?(e.openBlock(),e.createElementBlock("div",x,[e.createElementVNode("div",q,[e.createVNode(e.unref(u.default),{icon:{name:"ArrowSmallLeftIcon"},onClick:s[1]||(s[1]=l=>{var r;return(r=i.value)==null?void 0:r.slidePrev()})})]),e.createElementVNode("div",y,[e.createVNode(e.unref(u.default),{icon:{name:"ArrowSmallRightIcon"},onClick:s[2]||(s[2]=l=>{var r;return(r=i.value)==null?void 0:r.slideNext()})})])])):e.createCommentVNode("",!0)],2))}});exports.default=h;exports.elCarouselSizes=z;
2
2
  //# sourceMappingURL=ElCarousel.vue.cjs2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ElCarousel.vue.cjs2.js","sources":["../../src/ElCarousel.vue"],"sourcesContent":["<script lang=\"ts\">\nexport const elCarouselSizes = ['sm', 'md', 'lg'] as const;\nexport type ElCarouselSizes = (typeof elCarouselSizes)[number];\n\nexport interface CarouselProps {\n size?: ElCarouselSizes;\n slides: CarouselSlide[];\n opacity?: boolean;\n}\n\nexport interface CarouselSlide {\n title: string;\n description: string;\n picture: string;\n button: InstanceType<typeof ElButton>['$props'];\n}\n</script>\n\n<script lang=\"ts\" setup>\nimport { Keyboard, Navigation, Pagination } from 'swiper/modules';\nimport { Swiper, SwiperSlide } from 'swiper/vue';\nimport { ElButton, ElIconButton } from '.';\nimport { computed, ref } from 'vue';\nimport { Device, useMatchDevice } from './utils';\n\ndefineProps<CarouselProps>();\n\nconst device = useMatchDevice();\n\nconst buttonSize = computed(() => {\n switch (device.value) {\n case Device.Desktop:\n return 'xl';\n case Device.Tablet:\n return 'l';\n default:\n return 'sm';\n }\n});\n\nconst swiperInstance = ref();\nconst modules = ref([Navigation, Pagination, Keyboard]);\n</script>\n\n<template>\n <div\n class=\"w-full relative\"\n :class=\"{\n 'max-w-2xl': size === 'md',\n 'max-w-7xl': size === 'lg',\n }\"\n >\n <swiper\n :space-between=\"30\"\n :slides-per-view=\"1\"\n :keyboard=\"{\n enabled: true,\n }\"\n :pagination=\"{\n clickable: true,\n }\"\n :loop=\"true\"\n :navigation=\"true\"\n :modules=\"modules\"\n class=\"\"\n @swiper=\"swiperInstance = $event\"\n >\n <swiper-slide v-for=\"(slide, index) in slides\" :key=\"index\">\n <div\n class=\"flex items-center isolate overflow-hidden w-full bg-left bg-cover bg-no-repeat bg-black rounded-2xl p-6 md:p-7 lg:p-24\"\n :style=\"{\n backgroundImage: 'url(' + slide.picture + ')',\n }\"\n :class=\"{\n 'justify-end items-end h-auto': size === 'sm',\n 'h-96': size === 'md',\n 'h-auto': size === 'lg',\n }\"\n >\n <div v-if=\"opacity\" class=\"bg-black opacity-30 left-0 absolute w-full h-full top-0 rounded-2xl\"></div>\n\n <div\n class=\"z-10 flex flex-col justify-end md:justify-center gap-3 lg:gap-4 items-start flex-1 self-stretch md:my-8 text-white text-sm md:text-base lg:text-xl\"\n :class=\"{\n 'w-full': size === 'sm',\n 'max-w-80': size === 'md',\n 'max-w-96': size === 'lg',\n }\"\n >\n <h1 class=\"font-semibold text-neutral-inverse text-xl md:text-2xl lg:text-4xl\">\n {{ slide.title }}\n </h1>\n <p\n class=\"text-neutral-inverse font-medium text-sm md:text-base md:max-w-80 lg:text-xl lg:max-w-96\"\n :class=\"{\n 'w-full': size === 'sm',\n 'w-80 max-w-80': size === 'md',\n 'w-96 max-w-96': size === 'lg',\n }\"\n >\n {{ slide.description }}\n </p>\n <div class=\"py-2 md:py-3 lg:py-4\">\n <ElButton v-bind=\"slide.button\" :size=\"buttonSize\" />\n </div>\n </div>\n </div>\n </swiper-slide>\n </swiper>\n <div v-if=\"slides.length > 1\" class=\"px-6 w-full mb-20 hidden md:absolute md:mt-0 lg:top-60 md:bottom-0 lg:flex justify-between\">\n <div class=\"w-9 h-9 flex justify-center items-center bg-white rounded-full z-10 overflow-hidden\">\n <ElIconButton :icon=\"{ name: 'ArrowSmallLeftIcon' }\" @click=\"swiperInstance?.slidePrev()\" />\n </div>\n <div class=\"w-9 h-9 flex justify-center items-center bg-white rounded-full z-10 overflow-hidden\">\n <ElIconButton :icon=\"{ name: 'ArrowSmallRightIcon' }\" @click=\"swiperInstance?.slideNext()\" />\n </div>\n </div>\n </div>\n</template>\n"],"names":["elCarouselSizes","device","useMatchDevice","buttonSize","computed","Device","swiperInstance","ref","modules","Navigation","Pagination","Keyboard"],"mappings":"23DACaA,EAAkB,CAAC,KAAM,KAAM,IAAI,qGA0BhD,MAAMC,EAASC,EAAAA,iBAETC,EAAaC,EAAAA,SAAS,IAAM,CAChC,OAAQH,EAAO,MAAO,CACpB,KAAKI,EAAO,OAAA,QACH,MAAA,KACT,KAAKA,EAAO,OAAA,OACH,MAAA,IACT,QACS,MAAA,IACX,CAAA,CACD,EAEKC,EAAiBC,EAAAA,MACjBC,EAAUD,EAAAA,IAAI,CAACE,EAAY,QAAAC,EAAA,QAAYC,EAAQ,OAAA,CAAC"}
1
+ {"version":3,"file":"ElCarousel.vue.cjs2.js","sources":["../../src/ElCarousel.vue"],"sourcesContent":["<script lang=\"ts\">\nexport const elCarouselSizes = ['sm', 'md', 'lg'] as const;\nexport type ElCarouselSizes = (typeof elCarouselSizes)[number];\n\nexport interface CarouselProps {\n size?: ElCarouselSizes;\n slides: CarouselSlide[];\n opacity?: boolean;\n}\n\nexport interface CarouselSlide {\n title: string;\n description: string;\n picture: string;\n button: InstanceType<typeof ElButton>['$props'];\n}\n</script>\n\n<script lang=\"ts\" setup>\nimport { Keyboard, Navigation, Pagination } from 'swiper/modules';\nimport { Swiper, SwiperSlide } from 'swiper/vue';\nimport { ElButton, ElIconButton } from '.';\nimport { computed, ref } from 'vue';\nimport { Device, useMatchDevice } from './utils';\n\ndefineProps<CarouselProps>();\n\nconst device = useMatchDevice();\n\nconst buttonSize = computed(() => {\n switch (device.value) {\n case Device.Desktop:\n return 'xl';\n case Device.Tablet:\n return 'l';\n default:\n return 'sm';\n }\n});\n\nconst swiperInstance = ref();\nconst modules = ref([Navigation, Pagination, Keyboard]);\n</script>\n\n<template>\n <div\n class=\"w-full relative\"\n :class=\"{\n 'max-w-2xl': size === 'md',\n 'max-w-7xl': size === 'lg',\n }\"\n >\n <swiper\n :space-between=\"30\"\n :slides-per-view=\"1\"\n :keyboard=\"{\n enabled: true,\n }\"\n :pagination=\"{\n clickable: true,\n }\"\n :loop=\"true\"\n :navigation=\"true\"\n :modules=\"modules\"\n class=\"\"\n @swiper=\"swiperInstance = $event\"\n >\n <swiper-slide v-for=\"(slide, index) in slides\" :key=\"index\">\n <div\n class=\"flex items-center isolate overflow-hidden w-full bg-left bg-cover bg-no-repeat bg-black rounded-2xl p-6 md:p-7 lg:p-24\"\n :style=\"{\n backgroundImage: 'url(' + slide.picture + ')',\n }\"\n :class=\"{\n 'justify-end items-end h-auto': size === 'sm',\n 'h-96': size === 'md',\n 'h-auto': size === 'lg',\n }\"\n >\n <div v-if=\"opacity\" class=\"bg-black opacity-30 left-0 absolute w-full h-full top-0 rounded-2xl\"></div>\n\n <div\n class=\"z-10 flex flex-col justify-end md:justify-center gap-3 lg:gap-4 items-start flex-1 self-stretch md:my-8 text-white text-sm md:text-base lg:text-xl\"\n :class=\"{\n 'w-full': size === 'sm',\n 'max-w-80': size === 'md',\n 'max-w-96': size === 'lg',\n }\"\n >\n <h1 class=\"font-semibold text-neutral-inverse text-xl md:text-2xl lg:text-4xl\">\n {{ slide.title }}\n </h1>\n <p\n class=\"text-neutral-inverse font-medium text-sm md:text-base md:max-w-80 lg:text-xl lg:max-w-96\"\n :class=\"{\n 'w-full': size === 'sm',\n 'w-80 max-w-80': size === 'md',\n 'w-96 max-w-96': size === 'lg',\n }\"\n >\n {{ slide.description }}\n </p>\n <div class=\"py-2 md:py-3 lg:py-4\">\n <ElButton v-bind=\"slide.button\" :size=\"buttonSize\" />\n </div>\n </div>\n </div>\n </swiper-slide>\n </swiper>\n <div v-if=\"slides.length > 1\" class=\"px-6 w-full mb-20 hidden md:absolute md:mt-0 lg:top-60 md:bottom-0 lg:flex justify-between\">\n <div class=\"w-9 h-9 flex justify-center items-center bg-white rounded-full z-10 overflow-hidden\">\n <ElIconButton :icon=\"{ name: 'ArrowSmallLeftIcon' }\" @click=\"swiperInstance?.slidePrev()\" />\n </div>\n <div class=\"w-9 h-9 flex justify-center items-center bg-white rounded-full z-10 overflow-hidden\">\n <ElIconButton :icon=\"{ name: 'ArrowSmallRightIcon' }\" @click=\"swiperInstance?.slideNext()\" />\n </div>\n </div>\n </div>\n</template>\n"],"names":["elCarouselSizes","device","useMatchDevice","buttonSize","computed","Device","swiperInstance","ref","modules","Navigation","Pagination","Keyboard"],"mappings":"80DACaA,EAAkB,CAAC,KAAM,KAAM,IAAI,qGA0BhD,MAAMC,EAASC,EAAAA,iBAETC,EAAaC,EAAAA,SAAS,IAAM,CAChC,OAAQH,EAAO,MAAO,CACpB,KAAKI,EAAO,OAAA,QACH,MAAA,KACT,KAAKA,EAAO,OAAA,OACH,MAAA,IACT,QACS,MAAA,IACX,CAAA,CACD,EAEKC,EAAiBC,EAAAA,MACjBC,EAAUD,EAAAA,IAAI,CAACE,EAAY,QAAAC,EAAA,QAAYC,EAAQ,OAAA,CAAC"}
@@ -1,2 +1,2 @@
1
- import{defineComponent as y,computed as h,ref as p,openBlock as s,createElementBlock as m,normalizeClass as n,createVNode as a,unref as r,withCtx as u,Fragment as z,renderList as k,createBlock as S,createElementVNode as l,normalizeStyle as C,createCommentVNode as f,toDisplayString as c,mergeProps as _}from"vue";import j from"../node_modules/swiper/modules/keyboard.esm.js";import N from"../node_modules/swiper/modules/navigation.esm.js";import B from"../node_modules/swiper/modules/pagination.esm.js";import{Swiper as D,SwiperSlide as I}from"../node_modules/swiper/swiper-vue.esm.js";/* empty css */import"./polyfills.esm.js";import"vee-validate";import"../node_modules/codice-fiscale-js/dist/codice.fiscale.commonjs2.esm.js";import"../node_modules/lodash/lodash.esm.js";import"./tailwind.plugin.esm.js";import"../node_modules/@davincihealthcare/elty-design-system-foundations/dist/index.esm.js";import $ from"./ElButton.vue.esm2.js";import"./forms/ElInputSelect.vue.esm2.js";import"./forms/ElInputText.vue.esm2.js";import{useMatchDevice as E,Device as w}from"./utils.esm.js";import g from"./ElIconButton.vue.esm2.js";import"./forms/ElInputCheckbox.vue.esm2.js";import"./forms/ElInputDate.vue.esm2.js";import"./forms/ElInputFile.vue.esm2.js";import"./forms/ElInputMeasureUnit.vue.esm2.js";import"./forms/ElInputNumber.vue.esm2.js";import"./forms/ElInputPhone.vue.esm2.js";import"./forms/ElInputTextarea.vue.esm2.js";import"./ElToast.vue.esm2.js";import"./forms/ElInputRadioButton.vue.esm2.js";import"./composable/useModalStack.esm.js";import"./forms/ElInputSearch.vue.esm2.js";const P={key:0,class:"bg-black opacity-30 left-0 absolute w-full h-full top-0 rounded-2xl"},V={class:"font-semibold text-neutral-inverse text-xl md:text-2xl lg:text-4xl"},A={class:"py-2 md:py-3 lg:py-4"},L={key:0,class:"px-6 w-full mb-20 hidden md:absolute md:mt-0 lg:top-60 md:bottom-0 lg:flex justify-between"},F={class:"w-9 h-9 flex justify-center items-center bg-white rounded-full z-10 overflow-hidden"},K={class:"w-9 h-9 flex justify-center items-center bg-white rounded-full z-10 overflow-hidden"},we=["sm","md","lg"],ge=y({__name:"ElCarousel",props:{size:{},slides:{},opacity:{type:Boolean}},setup(M){const v=E(),x=h(()=>{switch(v.value){case w.Desktop:return"xl";case w.Tablet:return"l";default:return"sm"}}),d=p(),b=p([N,B,j]);return(e,i)=>(s(),m("div",{class:n(["w-full relative",{"max-w-2xl":e.size==="md","max-w-7xl":e.size==="lg"}])},[a(r(D),{"space-between":30,"slides-per-view":1,keyboard:{enabled:!0},pagination:{clickable:!0},loop:!0,navigation:!0,modules:b.value,class:"",onSwiper:i[0]||(i[0]=t=>d.value=t)},{default:u(()=>[(s(!0),m(z,null,k(e.slides,(t,o)=>(s(),S(r(I),{key:o},{default:u(()=>[l("div",{class:n(["flex items-center isolate overflow-hidden w-full bg-left bg-cover bg-no-repeat bg-black rounded-2xl p-6 md:p-7 lg:p-24",{"justify-end items-end h-auto":e.size==="sm","h-96":e.size==="md","h-auto":e.size==="lg"}]),style:C({backgroundImage:"url("+t.picture+")"})},[e.opacity?(s(),m("div",P)):f("",!0),l("div",{class:n(["z-10 flex flex-col justify-end md:justify-center gap-3 lg:gap-4 items-start flex-1 self-stretch md:my-8 text-white text-sm md:text-base lg:text-xl",{"w-full":e.size==="sm","max-w-80":e.size==="md","max-w-96":e.size==="lg"}])},[l("h1",V,c(t.title),1),l("p",{class:n(["text-neutral-inverse font-medium text-sm md:text-base md:max-w-80 lg:text-xl lg:max-w-96",{"w-full":e.size==="sm","w-80 max-w-80":e.size==="md","w-96 max-w-96":e.size==="lg"}])},c(t.description),3),l("div",A,[a(r($),_({ref_for:!0},t.button,{size:x.value}),null,16,["size"])])],2)],6)]),_:2},1024))),128))]),_:1},8,["modules"]),e.slides.length>1?(s(),m("div",L,[l("div",F,[a(r(g),{icon:{name:"ArrowSmallLeftIcon"},onClick:i[1]||(i[1]=t=>{var o;return(o=d.value)==null?void 0:o.slidePrev()})})]),l("div",K,[a(r(g),{icon:{name:"ArrowSmallRightIcon"},onClick:i[2]||(i[2]=t=>{var o;return(o=d.value)==null?void 0:o.slideNext()})})])])):f("",!0)],2))}});export{ge as default,we as elCarouselSizes};
1
+ import{defineComponent as y,computed as h,ref as p,openBlock as s,createElementBlock as m,normalizeClass as n,createVNode as a,unref as r,withCtx as u,Fragment as z,renderList as k,createBlock as S,createElementVNode as l,normalizeStyle as C,createCommentVNode as f,toDisplayString as c,mergeProps as _}from"vue";import j from"../node_modules/swiper/modules/keyboard.esm.js";import N from"../node_modules/swiper/modules/navigation.esm.js";import B from"../node_modules/swiper/modules/pagination.esm.js";import{Swiper as D,SwiperSlide as I}from"../node_modules/swiper/swiper-vue.esm.js";/* empty css */import"./polyfills.esm.js";import"vee-validate";import"../node_modules/codice-fiscale-js/dist/codice.fiscale.commonjs2.esm.js";import"../node_modules/lodash/lodash.esm.js";import"./tailwind.plugin.esm.js";import"../node_modules/@davincihealthcare/elty-design-system-foundations/dist/index.esm.js";import $ from"./ElButton.vue.esm2.js";import"./forms/ElInputSelect.vue.esm2.js";import"./forms/ElInputText.vue.esm2.js";import{useMatchDevice as E,Device as w}from"./utils.esm.js";import g from"./ElIconButton.vue.esm2.js";import"./forms/ElInputCheckbox.vue.esm2.js";import"./forms/ElInputDate.vue.esm2.js";import"./forms/ElInputFile.vue.esm2.js";import"./forms/ElInputMeasureUnit.vue.esm2.js";import"./forms/ElInputNumber.vue.esm2.js";import"./forms/ElInputPhone.vue.esm2.js";import"./forms/ElInputTextarea.vue.esm2.js";import"./ElToast.vue.esm2.js";import"./forms/ElInputRadioButton.vue.esm2.js";import"./forms/ElInputSearch.vue.esm2.js";const P={key:0,class:"bg-black opacity-30 left-0 absolute w-full h-full top-0 rounded-2xl"},V={class:"font-semibold text-neutral-inverse text-xl md:text-2xl lg:text-4xl"},A={class:"py-2 md:py-3 lg:py-4"},L={key:0,class:"px-6 w-full mb-20 hidden md:absolute md:mt-0 lg:top-60 md:bottom-0 lg:flex justify-between"},F={class:"w-9 h-9 flex justify-center items-center bg-white rounded-full z-10 overflow-hidden"},K={class:"w-9 h-9 flex justify-center items-center bg-white rounded-full z-10 overflow-hidden"},ce=["sm","md","lg"],we=y({__name:"ElCarousel",props:{size:{},slides:{},opacity:{type:Boolean}},setup(M){const v=E(),x=h(()=>{switch(v.value){case w.Desktop:return"xl";case w.Tablet:return"l";default:return"sm"}}),d=p(),b=p([N,B,j]);return(e,i)=>(s(),m("div",{class:n(["w-full relative",{"max-w-2xl":e.size==="md","max-w-7xl":e.size==="lg"}])},[a(r(D),{"space-between":30,"slides-per-view":1,keyboard:{enabled:!0},pagination:{clickable:!0},loop:!0,navigation:!0,modules:b.value,class:"",onSwiper:i[0]||(i[0]=t=>d.value=t)},{default:u(()=>[(s(!0),m(z,null,k(e.slides,(t,o)=>(s(),S(r(I),{key:o},{default:u(()=>[l("div",{class:n(["flex items-center isolate overflow-hidden w-full bg-left bg-cover bg-no-repeat bg-black rounded-2xl p-6 md:p-7 lg:p-24",{"justify-end items-end h-auto":e.size==="sm","h-96":e.size==="md","h-auto":e.size==="lg"}]),style:C({backgroundImage:"url("+t.picture+")"})},[e.opacity?(s(),m("div",P)):f("",!0),l("div",{class:n(["z-10 flex flex-col justify-end md:justify-center gap-3 lg:gap-4 items-start flex-1 self-stretch md:my-8 text-white text-sm md:text-base lg:text-xl",{"w-full":e.size==="sm","max-w-80":e.size==="md","max-w-96":e.size==="lg"}])},[l("h1",V,c(t.title),1),l("p",{class:n(["text-neutral-inverse font-medium text-sm md:text-base md:max-w-80 lg:text-xl lg:max-w-96",{"w-full":e.size==="sm","w-80 max-w-80":e.size==="md","w-96 max-w-96":e.size==="lg"}])},c(t.description),3),l("div",A,[a(r($),_({ref_for:!0},t.button,{size:x.value}),null,16,["size"])])],2)],6)]),_:2},1024))),128))]),_:1},8,["modules"]),e.slides.length>1?(s(),m("div",L,[l("div",F,[a(r(g),{icon:{name:"ArrowSmallLeftIcon"},onClick:i[1]||(i[1]=t=>{var o;return(o=d.value)==null?void 0:o.slidePrev()})})]),l("div",K,[a(r(g),{icon:{name:"ArrowSmallRightIcon"},onClick:i[2]||(i[2]=t=>{var o;return(o=d.value)==null?void 0:o.slideNext()})})])])):f("",!0)],2))}});export{we as default,ce as elCarouselSizes};
2
2
  //# sourceMappingURL=ElCarousel.vue.esm2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ElCarousel.vue.esm2.js","sources":["../../src/ElCarousel.vue"],"sourcesContent":["<script lang=\"ts\">\nexport const elCarouselSizes = ['sm', 'md', 'lg'] as const;\nexport type ElCarouselSizes = (typeof elCarouselSizes)[number];\n\nexport interface CarouselProps {\n size?: ElCarouselSizes;\n slides: CarouselSlide[];\n opacity?: boolean;\n}\n\nexport interface CarouselSlide {\n title: string;\n description: string;\n picture: string;\n button: InstanceType<typeof ElButton>['$props'];\n}\n</script>\n\n<script lang=\"ts\" setup>\nimport { Keyboard, Navigation, Pagination } from 'swiper/modules';\nimport { Swiper, SwiperSlide } from 'swiper/vue';\nimport { ElButton, ElIconButton } from '.';\nimport { computed, ref } from 'vue';\nimport { Device, useMatchDevice } from './utils';\n\ndefineProps<CarouselProps>();\n\nconst device = useMatchDevice();\n\nconst buttonSize = computed(() => {\n switch (device.value) {\n case Device.Desktop:\n return 'xl';\n case Device.Tablet:\n return 'l';\n default:\n return 'sm';\n }\n});\n\nconst swiperInstance = ref();\nconst modules = ref([Navigation, Pagination, Keyboard]);\n</script>\n\n<template>\n <div\n class=\"w-full relative\"\n :class=\"{\n 'max-w-2xl': size === 'md',\n 'max-w-7xl': size === 'lg',\n }\"\n >\n <swiper\n :space-between=\"30\"\n :slides-per-view=\"1\"\n :keyboard=\"{\n enabled: true,\n }\"\n :pagination=\"{\n clickable: true,\n }\"\n :loop=\"true\"\n :navigation=\"true\"\n :modules=\"modules\"\n class=\"\"\n @swiper=\"swiperInstance = $event\"\n >\n <swiper-slide v-for=\"(slide, index) in slides\" :key=\"index\">\n <div\n class=\"flex items-center isolate overflow-hidden w-full bg-left bg-cover bg-no-repeat bg-black rounded-2xl p-6 md:p-7 lg:p-24\"\n :style=\"{\n backgroundImage: 'url(' + slide.picture + ')',\n }\"\n :class=\"{\n 'justify-end items-end h-auto': size === 'sm',\n 'h-96': size === 'md',\n 'h-auto': size === 'lg',\n }\"\n >\n <div v-if=\"opacity\" class=\"bg-black opacity-30 left-0 absolute w-full h-full top-0 rounded-2xl\"></div>\n\n <div\n class=\"z-10 flex flex-col justify-end md:justify-center gap-3 lg:gap-4 items-start flex-1 self-stretch md:my-8 text-white text-sm md:text-base lg:text-xl\"\n :class=\"{\n 'w-full': size === 'sm',\n 'max-w-80': size === 'md',\n 'max-w-96': size === 'lg',\n }\"\n >\n <h1 class=\"font-semibold text-neutral-inverse text-xl md:text-2xl lg:text-4xl\">\n {{ slide.title }}\n </h1>\n <p\n class=\"text-neutral-inverse font-medium text-sm md:text-base md:max-w-80 lg:text-xl lg:max-w-96\"\n :class=\"{\n 'w-full': size === 'sm',\n 'w-80 max-w-80': size === 'md',\n 'w-96 max-w-96': size === 'lg',\n }\"\n >\n {{ slide.description }}\n </p>\n <div class=\"py-2 md:py-3 lg:py-4\">\n <ElButton v-bind=\"slide.button\" :size=\"buttonSize\" />\n </div>\n </div>\n </div>\n </swiper-slide>\n </swiper>\n <div v-if=\"slides.length > 1\" class=\"px-6 w-full mb-20 hidden md:absolute md:mt-0 lg:top-60 md:bottom-0 lg:flex justify-between\">\n <div class=\"w-9 h-9 flex justify-center items-center bg-white rounded-full z-10 overflow-hidden\">\n <ElIconButton :icon=\"{ name: 'ArrowSmallLeftIcon' }\" @click=\"swiperInstance?.slidePrev()\" />\n </div>\n <div class=\"w-9 h-9 flex justify-center items-center bg-white rounded-full z-10 overflow-hidden\">\n <ElIconButton :icon=\"{ name: 'ArrowSmallRightIcon' }\" @click=\"swiperInstance?.slideNext()\" />\n </div>\n </div>\n </div>\n</template>\n"],"names":["elCarouselSizes","device","useMatchDevice","buttonSize","computed","Device","swiperInstance","ref","modules","Navigation","Pagination","Keyboard"],"mappings":"gjEACaA,GAAkB,CAAC,KAAM,KAAM,IAAI,sFA0BhD,MAAMC,EAASC,IAETC,EAAaC,EAAS,IAAM,CAChC,OAAQH,EAAO,MAAO,CACpB,KAAKI,EAAO,QACH,MAAA,KACT,KAAKA,EAAO,OACH,MAAA,IACT,QACS,MAAA,IACX,CAAA,CACD,EAEKC,EAAiBC,IACjBC,EAAUD,EAAI,CAACE,EAAYC,EAAYC,CAAQ,CAAC"}
1
+ {"version":3,"file":"ElCarousel.vue.esm2.js","sources":["../../src/ElCarousel.vue"],"sourcesContent":["<script lang=\"ts\">\nexport const elCarouselSizes = ['sm', 'md', 'lg'] as const;\nexport type ElCarouselSizes = (typeof elCarouselSizes)[number];\n\nexport interface CarouselProps {\n size?: ElCarouselSizes;\n slides: CarouselSlide[];\n opacity?: boolean;\n}\n\nexport interface CarouselSlide {\n title: string;\n description: string;\n picture: string;\n button: InstanceType<typeof ElButton>['$props'];\n}\n</script>\n\n<script lang=\"ts\" setup>\nimport { Keyboard, Navigation, Pagination } from 'swiper/modules';\nimport { Swiper, SwiperSlide } from 'swiper/vue';\nimport { ElButton, ElIconButton } from '.';\nimport { computed, ref } from 'vue';\nimport { Device, useMatchDevice } from './utils';\n\ndefineProps<CarouselProps>();\n\nconst device = useMatchDevice();\n\nconst buttonSize = computed(() => {\n switch (device.value) {\n case Device.Desktop:\n return 'xl';\n case Device.Tablet:\n return 'l';\n default:\n return 'sm';\n }\n});\n\nconst swiperInstance = ref();\nconst modules = ref([Navigation, Pagination, Keyboard]);\n</script>\n\n<template>\n <div\n class=\"w-full relative\"\n :class=\"{\n 'max-w-2xl': size === 'md',\n 'max-w-7xl': size === 'lg',\n }\"\n >\n <swiper\n :space-between=\"30\"\n :slides-per-view=\"1\"\n :keyboard=\"{\n enabled: true,\n }\"\n :pagination=\"{\n clickable: true,\n }\"\n :loop=\"true\"\n :navigation=\"true\"\n :modules=\"modules\"\n class=\"\"\n @swiper=\"swiperInstance = $event\"\n >\n <swiper-slide v-for=\"(slide, index) in slides\" :key=\"index\">\n <div\n class=\"flex items-center isolate overflow-hidden w-full bg-left bg-cover bg-no-repeat bg-black rounded-2xl p-6 md:p-7 lg:p-24\"\n :style=\"{\n backgroundImage: 'url(' + slide.picture + ')',\n }\"\n :class=\"{\n 'justify-end items-end h-auto': size === 'sm',\n 'h-96': size === 'md',\n 'h-auto': size === 'lg',\n }\"\n >\n <div v-if=\"opacity\" class=\"bg-black opacity-30 left-0 absolute w-full h-full top-0 rounded-2xl\"></div>\n\n <div\n class=\"z-10 flex flex-col justify-end md:justify-center gap-3 lg:gap-4 items-start flex-1 self-stretch md:my-8 text-white text-sm md:text-base lg:text-xl\"\n :class=\"{\n 'w-full': size === 'sm',\n 'max-w-80': size === 'md',\n 'max-w-96': size === 'lg',\n }\"\n >\n <h1 class=\"font-semibold text-neutral-inverse text-xl md:text-2xl lg:text-4xl\">\n {{ slide.title }}\n </h1>\n <p\n class=\"text-neutral-inverse font-medium text-sm md:text-base md:max-w-80 lg:text-xl lg:max-w-96\"\n :class=\"{\n 'w-full': size === 'sm',\n 'w-80 max-w-80': size === 'md',\n 'w-96 max-w-96': size === 'lg',\n }\"\n >\n {{ slide.description }}\n </p>\n <div class=\"py-2 md:py-3 lg:py-4\">\n <ElButton v-bind=\"slide.button\" :size=\"buttonSize\" />\n </div>\n </div>\n </div>\n </swiper-slide>\n </swiper>\n <div v-if=\"slides.length > 1\" class=\"px-6 w-full mb-20 hidden md:absolute md:mt-0 lg:top-60 md:bottom-0 lg:flex justify-between\">\n <div class=\"w-9 h-9 flex justify-center items-center bg-white rounded-full z-10 overflow-hidden\">\n <ElIconButton :icon=\"{ name: 'ArrowSmallLeftIcon' }\" @click=\"swiperInstance?.slidePrev()\" />\n </div>\n <div class=\"w-9 h-9 flex justify-center items-center bg-white rounded-full z-10 overflow-hidden\">\n <ElIconButton :icon=\"{ name: 'ArrowSmallRightIcon' }\" @click=\"swiperInstance?.slideNext()\" />\n </div>\n </div>\n </div>\n</template>\n"],"names":["elCarouselSizes","device","useMatchDevice","buttonSize","computed","Device","swiperInstance","ref","modules","Navigation","Pagination","Keyboard"],"mappings":"sgEACaA,GAAkB,CAAC,KAAM,KAAM,IAAI,sFA0BhD,MAAMC,EAASC,IAETC,EAAaC,EAAS,IAAM,CAChC,OAAQH,EAAO,MAAO,CACpB,KAAKI,EAAO,QACH,MAAA,KACT,KAAKA,EAAO,OACH,MAAA,IACT,QACS,MAAA,IACX,CAAA,CACD,EAEKC,EAAiBC,IACjBC,EAAUD,EAAI,CAACE,EAAYC,EAAYC,CAAQ,CAAC"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue");;/* empty css */require("./polyfills.cjs.js");require("vee-validate");require("../node_modules/codice-fiscale-js/dist/codice.fiscale.commonjs2.cjs.js");require("../node_modules/lodash/lodash.cjs.js");require("./tailwind.plugin.cjs.js");require("../node_modules/@davincihealthcare/elty-design-system-foundations/dist/index.cjs.js");const u=require("./ElDrawer.vue.cjs2.js");require("./forms/ElInputCheckbox.vue.cjs2.js");require("./forms/ElInputDate.vue.cjs2.js");require("./forms/ElInputFile.vue.cjs2.js");require("./forms/ElInputMeasureUnit.vue.cjs2.js");require("./forms/ElInputNumber.vue.cjs2.js");require("./forms/ElInputPhone.vue.cjs2.js");require("./forms/ElInputSelect.vue.cjs2.js");require("./forms/ElInputText.vue.cjs2.js");require("./forms/ElInputTextarea.vue.cjs2.js");const c=require("./ElTabGroup.vue.cjs2.js");require("./ElToast.vue.cjs2.js");require("./forms/ElInputRadioButton.vue.cjs2.js");require("./composable/useModalStack.cjs.js");require("../node_modules/swiper/shared/swiper-core.cjs.js");require("./forms/ElInputSearch.vue.cjs2.js");const m={class:"rounded-3xl border shadow-md border-neutral-surface bg-neutral-surface overflow-hidden"},p={class:"px-4 py-8 flex justify-between items-center text-neutral-darker"},_={class:"flex flex-col gap-5"},q={class:"text-3xl font-semibold"},v={key:0,class:"text-sm"},b={class:"flex items-center gap-2"},f={class:"min-w-44"},V={class:"px-4 pb-6"},h={key:1,class:"flex"},E={class:"min-w-72"},N={class:"flex-1 w-full"},g=["table","drawer"],k=e.defineComponent({__name:"ElContainerTemplate",props:{title:{},description:{},tabs:{},selectedTab:{},variant:{}},emits:["onTabChange"],setup(s,{emit:a}){const i=s,d=a,l=e.ref(i.selectedTab||"");return(t,r)=>{var n;return e.openBlock(),e.createElementBlock("div",m,[e.createElementVNode("div",p,[e.createElementVNode("div",_,[e.createElementVNode("h1",q,e.toDisplayString(t.title),1),(n=t.description)!=null&&n.length?(e.openBlock(),e.createElementBlock("p",v,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",b,[e.createElementVNode("div",f,[e.renderSlot(t.$slots,"input-select")]),e.renderSlot(t.$slots,"secondary-button"),e.renderSlot(t.$slots,"primary-button"),e.renderSlot(t.$slots,"icon-button")])]),e.createElementVNode("div",V,[t.tabs?(e.openBlock(),e.createBlock(c.default,e.mergeProps({key:0},t.tabs,{modelValue:l.value,"onUpdate:modelValue":[r[0]||(r[0]=o=>l.value=o),r[1]||(r[1]=o=>d("onTabChange",o))]}),null,16,["modelValue"])):e.createCommentVNode("",!0)]),e.createElementVNode("div",null,[t.variant.name==="table"?e.renderSlot(t.$slots,"table",{key:0}):e.createCommentVNode("",!0),t.variant.name==="drawer"?(e.openBlock(),e.createElementBlock("div",h,[e.createElementVNode("div",E,[e.createVNode(e.unref(u.default),{headline:t.variant.drawerTitle},{default:e.withCtx(()=>[e.renderSlot(t.$slots,"drawer-content")]),_:3},8,["headline"])]),e.createElementVNode("div",N,[e.renderSlot(t.$slots,"content-slot")])])):e.createCommentVNode("",!0)])])}}});exports.default=k;exports.elContainerTemplateVariants=g;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue");;/* empty css */require("./polyfills.cjs.js");require("vee-validate");require("../node_modules/codice-fiscale-js/dist/codice.fiscale.commonjs2.cjs.js");require("../node_modules/lodash/lodash.cjs.js");require("./tailwind.plugin.cjs.js");require("../node_modules/@davincihealthcare/elty-design-system-foundations/dist/index.cjs.js");const u=require("./ElDrawer.vue.cjs2.js");require("./forms/ElInputCheckbox.vue.cjs2.js");require("./forms/ElInputDate.vue.cjs2.js");require("./forms/ElInputFile.vue.cjs2.js");require("./forms/ElInputMeasureUnit.vue.cjs2.js");require("./forms/ElInputNumber.vue.cjs2.js");require("./forms/ElInputPhone.vue.cjs2.js");require("./forms/ElInputSelect.vue.cjs2.js");require("./forms/ElInputText.vue.cjs2.js");require("./forms/ElInputTextarea.vue.cjs2.js");const c=require("./ElTabGroup.vue.cjs2.js");require("./ElToast.vue.cjs2.js");require("./forms/ElInputRadioButton.vue.cjs2.js");require("../node_modules/swiper/shared/swiper-core.cjs.js");require("./forms/ElInputSearch.vue.cjs2.js");const m={class:"rounded-3xl border shadow-md border-neutral-surface bg-neutral-surface overflow-hidden"},p={class:"px-4 py-8 flex justify-between items-center text-neutral-darker"},_={class:"flex flex-col gap-5"},v={class:"text-3xl font-semibold"},b={key:0,class:"text-sm"},q={class:"flex items-center gap-2"},f={class:"min-w-44"},V={class:"px-4 pb-6"},h={key:1,class:"flex"},E={class:"min-w-72"},N={class:"flex-1 w-full"},g=["table","drawer"],k=e.defineComponent({__name:"ElContainerTemplate",props:{title:{},description:{},tabs:{},selectedTab:{},variant:{}},emits:["onTabChange"],setup(s,{emit:a}){const i=s,d=a,l=e.ref(i.selectedTab||"");return(t,r)=>{var n;return e.openBlock(),e.createElementBlock("div",m,[e.createElementVNode("div",p,[e.createElementVNode("div",_,[e.createElementVNode("h1",v,e.toDisplayString(t.title),1),(n=t.description)!=null&&n.length?(e.openBlock(),e.createElementBlock("p",b,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",q,[e.createElementVNode("div",f,[e.renderSlot(t.$slots,"input-select")]),e.renderSlot(t.$slots,"secondary-button"),e.renderSlot(t.$slots,"primary-button"),e.renderSlot(t.$slots,"icon-button")])]),e.createElementVNode("div",V,[t.tabs?(e.openBlock(),e.createBlock(c.default,e.mergeProps({key:0},t.tabs,{modelValue:l.value,"onUpdate:modelValue":[r[0]||(r[0]=o=>l.value=o),r[1]||(r[1]=o=>d("onTabChange",o))]}),null,16,["modelValue"])):e.createCommentVNode("",!0)]),e.createElementVNode("div",null,[t.variant.name==="table"?e.renderSlot(t.$slots,"table",{key:0}):e.createCommentVNode("",!0),t.variant.name==="drawer"?(e.openBlock(),e.createElementBlock("div",h,[e.createElementVNode("div",E,[e.createVNode(e.unref(u.default),{headline:t.variant.drawerTitle},{default:e.withCtx(()=>[e.renderSlot(t.$slots,"drawer-content")]),_:3},8,["headline"])]),e.createElementVNode("div",N,[e.renderSlot(t.$slots,"content-slot")])])):e.createCommentVNode("",!0)])])}}});exports.default=k;exports.elContainerTemplateVariants=g;
2
2
  //# sourceMappingURL=ElContainerTemplate.vue.cjs2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ElContainerTemplate.vue.cjs2.js","sources":["../../src/ElContainerTemplate.vue"],"sourcesContent":["<script lang=\"ts\">\nexport const elContainerTemplateVariants = ['table', 'drawer'] as const;\nexport type ElContainerTemplateVariant = (typeof elContainerTemplateVariants)[number];\n</script>\n\n<script setup lang=\"ts\">\nimport { ref } from 'vue';\nimport { ElDrawer } from '.';\nimport ElTabGroup from './ElTabGroup.vue';\n\nconst props = defineProps<{\n title: string;\n description?: string;\n tabs?: InstanceType<typeof ElTabGroup>['$props'];\n selectedTab?: string;\n variant: { name: 'table' } | { name: 'drawer'; drawerTitle: string };\n}>();\n\nconst emit = defineEmits<{\n (event: 'onTabChange', tab: string): void;\n}>();\n\nconst selectedTab = ref<string>(props.selectedTab || '');\n</script>\n\n<template>\n <div class=\"rounded-3xl border shadow-md border-neutral-surface bg-neutral-surface overflow-hidden\">\n <div class=\"px-4 py-8 flex justify-between items-center text-neutral-darker\">\n <div class=\"flex flex-col gap-5\">\n <h1 class=\"text-3xl font-semibold\">{{ title }}</h1>\n <p v-if=\"description?.length\" class=\"text-sm\">{{ description }}</p>\n </div>\n <div class=\"flex items-center gap-2\">\n <div class=\"min-w-44\">\n <slot name=\"input-select\"> </slot>\n </div>\n <slot name=\"secondary-button\"></slot>\n <slot name=\"primary-button\"></slot>\n\n <slot name=\"icon-button\"></slot>\n </div>\n </div>\n <div class=\"px-4 pb-6\">\n <ElTabGroup v-if=\"tabs\" v-bind=\"tabs\" v-model=\"selectedTab\" @update:model-value=\"tab => emit('onTabChange', tab)\" />\n </div>\n <div>\n <slot v-if=\"variant.name === 'table'\" name=\"table\"> </slot>\n <div v-if=\"variant.name === 'drawer'\" class=\"flex\">\n <div class=\"min-w-72\">\n <ElDrawer :headline=\"variant.drawerTitle\">\n <slot name=\"drawer-content\"> </slot>\n </ElDrawer>\n </div>\n <div class=\"flex-1 w-full\">\n <slot name=\"content-slot\"> </slot>\n </div>\n </div>\n </div>\n </div>\n</template>\n"],"names":["elContainerTemplateVariants","props","__props","emit","__emit","selectedTab","ref"],"mappings":"ylDACaA,EAA8B,CAAC,QAAS,QAAQ,8JAS7D,MAAMC,EAAQC,EAQRC,EAAOC,EAIPC,EAAcC,EAAA,IAAYL,EAAM,aAAe,EAAE"}
1
+ {"version":3,"file":"ElContainerTemplate.vue.cjs2.js","sources":["../../src/ElContainerTemplate.vue"],"sourcesContent":["<script lang=\"ts\">\nexport const elContainerTemplateVariants = ['table', 'drawer'] as const;\nexport type ElContainerTemplateVariant = (typeof elContainerTemplateVariants)[number];\n</script>\n\n<script setup lang=\"ts\">\nimport { ref } from 'vue';\nimport { ElDrawer } from '.';\nimport ElTabGroup from './ElTabGroup.vue';\n\nconst props = defineProps<{\n title: string;\n description?: string;\n tabs?: InstanceType<typeof ElTabGroup>['$props'];\n selectedTab?: string;\n variant: { name: 'table' } | { name: 'drawer'; drawerTitle: string };\n}>();\n\nconst emit = defineEmits<{\n (event: 'onTabChange', tab: string): void;\n}>();\n\nconst selectedTab = ref<string>(props.selectedTab || '');\n</script>\n\n<template>\n <div class=\"rounded-3xl border shadow-md border-neutral-surface bg-neutral-surface overflow-hidden\">\n <div class=\"px-4 py-8 flex justify-between items-center text-neutral-darker\">\n <div class=\"flex flex-col gap-5\">\n <h1 class=\"text-3xl font-semibold\">{{ title }}</h1>\n <p v-if=\"description?.length\" class=\"text-sm\">{{ description }}</p>\n </div>\n <div class=\"flex items-center gap-2\">\n <div class=\"min-w-44\">\n <slot name=\"input-select\"> </slot>\n </div>\n <slot name=\"secondary-button\"></slot>\n <slot name=\"primary-button\"></slot>\n\n <slot name=\"icon-button\"></slot>\n </div>\n </div>\n <div class=\"px-4 pb-6\">\n <ElTabGroup v-if=\"tabs\" v-bind=\"tabs\" v-model=\"selectedTab\" @update:model-value=\"tab => emit('onTabChange', tab)\" />\n </div>\n <div>\n <slot v-if=\"variant.name === 'table'\" name=\"table\"> </slot>\n <div v-if=\"variant.name === 'drawer'\" class=\"flex\">\n <div class=\"min-w-72\">\n <ElDrawer :headline=\"variant.drawerTitle\">\n <slot name=\"drawer-content\"> </slot>\n </ElDrawer>\n </div>\n <div class=\"flex-1 w-full\">\n <slot name=\"content-slot\"> </slot>\n </div>\n </div>\n </div>\n </div>\n</template>\n"],"names":["elContainerTemplateVariants","props","__props","emit","__emit","selectedTab","ref"],"mappings":"4iDACaA,EAA8B,CAAC,QAAS,QAAQ,8JAS7D,MAAMC,EAAQC,EAQRC,EAAOC,EAIPC,EAAcC,EAAA,IAAYL,EAAM,aAAe,EAAE"}
@@ -1,2 +1,2 @@
1
- import{defineComponent as b,ref as h,openBlock as r,createElementBlock as a,createElementVNode as t,toDisplayString as m,createCommentVNode as i,renderSlot as o,createBlock as v,mergeProps as _,createVNode as w,unref as y,withCtx as $}from"vue";/* empty css */import"./polyfills.esm.js";import"vee-validate";import"../node_modules/codice-fiscale-js/dist/codice.fiscale.commonjs2.esm.js";import"../node_modules/lodash/lodash.esm.js";import"./tailwind.plugin.esm.js";import"../node_modules/@davincihealthcare/elty-design-system-foundations/dist/index.esm.js";import g from"./ElDrawer.vue.esm2.js";import"./forms/ElInputCheckbox.vue.esm2.js";import"./forms/ElInputDate.vue.esm2.js";import"./forms/ElInputFile.vue.esm2.js";import"./forms/ElInputMeasureUnit.vue.esm2.js";import"./forms/ElInputNumber.vue.esm2.js";import"./forms/ElInputPhone.vue.esm2.js";import"./forms/ElInputSelect.vue.esm2.js";import"./forms/ElInputText.vue.esm2.js";import"./forms/ElInputTextarea.vue.esm2.js";import k from"./ElTabGroup.vue.esm2.js";import"./ElToast.vue.esm2.js";import"./forms/ElInputRadioButton.vue.esm2.js";import"./composable/useModalStack.esm.js";import"../node_modules/swiper/shared/swiper-core.esm.js";import"./forms/ElInputSearch.vue.esm2.js";const T={class:"rounded-3xl border shadow-md border-neutral-surface bg-neutral-surface overflow-hidden"},C={class:"px-4 py-8 flex justify-between items-center text-neutral-darker"},V={class:"flex flex-col gap-5"},B={class:"text-3xl font-semibold"},E={key:0,class:"text-sm"},N={class:"flex items-center gap-2"},S={class:"min-w-44"},j={class:"px-4 pb-6"},x={key:1,class:"flex"},D={class:"min-w-72"},P={class:"flex-1 w-full"},ie=["table","drawer"],ne=b({__name:"ElContainerTemplate",props:{title:{},description:{},tabs:{},selectedTab:{},variant:{}},emits:["onTabChange"],setup(p,{emit:c}){const u=p,f=c,l=h(u.selectedTab||"");return(e,s)=>{var d;return r(),a("div",T,[t("div",C,[t("div",V,[t("h1",B,m(e.title),1),(d=e.description)!=null&&d.length?(r(),a("p",E,m(e.description),1)):i("",!0)]),t("div",N,[t("div",S,[o(e.$slots,"input-select")]),o(e.$slots,"secondary-button"),o(e.$slots,"primary-button"),o(e.$slots,"icon-button")])]),t("div",j,[e.tabs?(r(),v(k,_({key:0},e.tabs,{modelValue:l.value,"onUpdate:modelValue":[s[0]||(s[0]=n=>l.value=n),s[1]||(s[1]=n=>f("onTabChange",n))]}),null,16,["modelValue"])):i("",!0)]),t("div",null,[e.variant.name==="table"?o(e.$slots,"table",{key:0}):i("",!0),e.variant.name==="drawer"?(r(),a("div",x,[t("div",D,[w(y(g),{headline:e.variant.drawerTitle},{default:$(()=>[o(e.$slots,"drawer-content")]),_:3},8,["headline"])]),t("div",P,[o(e.$slots,"content-slot")])])):i("",!0)])])}}});export{ne as default,ie as elContainerTemplateVariants};
1
+ import{defineComponent as b,ref as h,openBlock as r,createElementBlock as a,createElementVNode as t,toDisplayString as m,createCommentVNode as i,renderSlot as o,createBlock as v,mergeProps as _,createVNode as w,unref as y,withCtx as $}from"vue";/* empty css */import"./polyfills.esm.js";import"vee-validate";import"../node_modules/codice-fiscale-js/dist/codice.fiscale.commonjs2.esm.js";import"../node_modules/lodash/lodash.esm.js";import"./tailwind.plugin.esm.js";import"../node_modules/@davincihealthcare/elty-design-system-foundations/dist/index.esm.js";import g from"./ElDrawer.vue.esm2.js";import"./forms/ElInputCheckbox.vue.esm2.js";import"./forms/ElInputDate.vue.esm2.js";import"./forms/ElInputFile.vue.esm2.js";import"./forms/ElInputMeasureUnit.vue.esm2.js";import"./forms/ElInputNumber.vue.esm2.js";import"./forms/ElInputPhone.vue.esm2.js";import"./forms/ElInputSelect.vue.esm2.js";import"./forms/ElInputText.vue.esm2.js";import"./forms/ElInputTextarea.vue.esm2.js";import k from"./ElTabGroup.vue.esm2.js";import"./ElToast.vue.esm2.js";import"./forms/ElInputRadioButton.vue.esm2.js";import"../node_modules/swiper/shared/swiper-core.esm.js";import"./forms/ElInputSearch.vue.esm2.js";const T={class:"rounded-3xl border shadow-md border-neutral-surface bg-neutral-surface overflow-hidden"},C={class:"px-4 py-8 flex justify-between items-center text-neutral-darker"},V={class:"flex flex-col gap-5"},B={class:"text-3xl font-semibold"},E={key:0,class:"text-sm"},N={class:"flex items-center gap-2"},S={class:"min-w-44"},j={class:"px-4 pb-6"},x={key:1,class:"flex"},D={class:"min-w-72"},P={class:"flex-1 w-full"},re=["table","drawer"],ie=b({__name:"ElContainerTemplate",props:{title:{},description:{},tabs:{},selectedTab:{},variant:{}},emits:["onTabChange"],setup(p,{emit:c}){const u=p,f=c,l=h(u.selectedTab||"");return(e,s)=>{var d;return r(),a("div",T,[t("div",C,[t("div",V,[t("h1",B,m(e.title),1),(d=e.description)!=null&&d.length?(r(),a("p",E,m(e.description),1)):i("",!0)]),t("div",N,[t("div",S,[o(e.$slots,"input-select")]),o(e.$slots,"secondary-button"),o(e.$slots,"primary-button"),o(e.$slots,"icon-button")])]),t("div",j,[e.tabs?(r(),v(k,_({key:0},e.tabs,{modelValue:l.value,"onUpdate:modelValue":[s[0]||(s[0]=n=>l.value=n),s[1]||(s[1]=n=>f("onTabChange",n))]}),null,16,["modelValue"])):i("",!0)]),t("div",null,[e.variant.name==="table"?o(e.$slots,"table",{key:0}):i("",!0),e.variant.name==="drawer"?(r(),a("div",x,[t("div",D,[w(y(g),{headline:e.variant.drawerTitle},{default:$(()=>[o(e.$slots,"drawer-content")]),_:3},8,["headline"])]),t("div",P,[o(e.$slots,"content-slot")])])):i("",!0)])])}}});export{ie as default,re as elContainerTemplateVariants};
2
2
  //# sourceMappingURL=ElContainerTemplate.vue.esm2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ElContainerTemplate.vue.esm2.js","sources":["../../src/ElContainerTemplate.vue"],"sourcesContent":["<script lang=\"ts\">\nexport const elContainerTemplateVariants = ['table', 'drawer'] as const;\nexport type ElContainerTemplateVariant = (typeof elContainerTemplateVariants)[number];\n</script>\n\n<script setup lang=\"ts\">\nimport { ref } from 'vue';\nimport { ElDrawer } from '.';\nimport ElTabGroup from './ElTabGroup.vue';\n\nconst props = defineProps<{\n title: string;\n description?: string;\n tabs?: InstanceType<typeof ElTabGroup>['$props'];\n selectedTab?: string;\n variant: { name: 'table' } | { name: 'drawer'; drawerTitle: string };\n}>();\n\nconst emit = defineEmits<{\n (event: 'onTabChange', tab: string): void;\n}>();\n\nconst selectedTab = ref<string>(props.selectedTab || '');\n</script>\n\n<template>\n <div class=\"rounded-3xl border shadow-md border-neutral-surface bg-neutral-surface overflow-hidden\">\n <div class=\"px-4 py-8 flex justify-between items-center text-neutral-darker\">\n <div class=\"flex flex-col gap-5\">\n <h1 class=\"text-3xl font-semibold\">{{ title }}</h1>\n <p v-if=\"description?.length\" class=\"text-sm\">{{ description }}</p>\n </div>\n <div class=\"flex items-center gap-2\">\n <div class=\"min-w-44\">\n <slot name=\"input-select\"> </slot>\n </div>\n <slot name=\"secondary-button\"></slot>\n <slot name=\"primary-button\"></slot>\n\n <slot name=\"icon-button\"></slot>\n </div>\n </div>\n <div class=\"px-4 pb-6\">\n <ElTabGroup v-if=\"tabs\" v-bind=\"tabs\" v-model=\"selectedTab\" @update:model-value=\"tab => emit('onTabChange', tab)\" />\n </div>\n <div>\n <slot v-if=\"variant.name === 'table'\" name=\"table\"> </slot>\n <div v-if=\"variant.name === 'drawer'\" class=\"flex\">\n <div class=\"min-w-72\">\n <ElDrawer :headline=\"variant.drawerTitle\">\n <slot name=\"drawer-content\"> </slot>\n </ElDrawer>\n </div>\n <div class=\"flex-1 w-full\">\n <slot name=\"content-slot\"> </slot>\n </div>\n </div>\n </div>\n </div>\n</template>\n"],"names":["elContainerTemplateVariants","props","__props","emit","__emit","selectedTab","ref"],"mappings":"ooDACaA,GAA8B,CAAC,QAAS,QAAQ,+IAS7D,MAAMC,EAAQC,EAQRC,EAAOC,EAIPC,EAAcC,EAAYL,EAAM,aAAe,EAAE"}
1
+ {"version":3,"file":"ElContainerTemplate.vue.esm2.js","sources":["../../src/ElContainerTemplate.vue"],"sourcesContent":["<script lang=\"ts\">\nexport const elContainerTemplateVariants = ['table', 'drawer'] as const;\nexport type ElContainerTemplateVariant = (typeof elContainerTemplateVariants)[number];\n</script>\n\n<script setup lang=\"ts\">\nimport { ref } from 'vue';\nimport { ElDrawer } from '.';\nimport ElTabGroup from './ElTabGroup.vue';\n\nconst props = defineProps<{\n title: string;\n description?: string;\n tabs?: InstanceType<typeof ElTabGroup>['$props'];\n selectedTab?: string;\n variant: { name: 'table' } | { name: 'drawer'; drawerTitle: string };\n}>();\n\nconst emit = defineEmits<{\n (event: 'onTabChange', tab: string): void;\n}>();\n\nconst selectedTab = ref<string>(props.selectedTab || '');\n</script>\n\n<template>\n <div class=\"rounded-3xl border shadow-md border-neutral-surface bg-neutral-surface overflow-hidden\">\n <div class=\"px-4 py-8 flex justify-between items-center text-neutral-darker\">\n <div class=\"flex flex-col gap-5\">\n <h1 class=\"text-3xl font-semibold\">{{ title }}</h1>\n <p v-if=\"description?.length\" class=\"text-sm\">{{ description }}</p>\n </div>\n <div class=\"flex items-center gap-2\">\n <div class=\"min-w-44\">\n <slot name=\"input-select\"> </slot>\n </div>\n <slot name=\"secondary-button\"></slot>\n <slot name=\"primary-button\"></slot>\n\n <slot name=\"icon-button\"></slot>\n </div>\n </div>\n <div class=\"px-4 pb-6\">\n <ElTabGroup v-if=\"tabs\" v-bind=\"tabs\" v-model=\"selectedTab\" @update:model-value=\"tab => emit('onTabChange', tab)\" />\n </div>\n <div>\n <slot v-if=\"variant.name === 'table'\" name=\"table\"> </slot>\n <div v-if=\"variant.name === 'drawer'\" class=\"flex\">\n <div class=\"min-w-72\">\n <ElDrawer :headline=\"variant.drawerTitle\">\n <slot name=\"drawer-content\"> </slot>\n </ElDrawer>\n </div>\n <div class=\"flex-1 w-full\">\n <slot name=\"content-slot\"> </slot>\n </div>\n </div>\n </div>\n </div>\n</template>\n"],"names":["elContainerTemplateVariants","props","__props","emit","__emit","selectedTab","ref"],"mappings":"0lDACaA,GAA8B,CAAC,QAAS,QAAQ,+IAS7D,MAAMC,EAAQC,EAQRC,EAAOC,EAIPC,EAAcC,EAAYL,EAAM,aAAe,EAAE"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("../../node_modules/@vueuse/core/index.cjs.js");let e=0;const o=t.useScrollLock(document.body);function r(){return{registerModal:()=>{e++,o.value=!0},unregisterModal:()=>{e=Math.max(0,e-1),o.value=e>0}}}exports.useModalStack=r;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("../../node_modules/@vueuse/core/index.cjs.js");let t=0,e=null;function l(){return!e&&typeof document<"u"&&(e=o.useScrollLock(document.body)),{registerModal:()=>{t++,e&&(e.value=!0)},unregisterModal:()=>{t=Math.max(0,t-1),e&&(e.value=t>0)}}}exports.useModalStack=l;
2
2
  //# sourceMappingURL=useModalStack.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useModalStack.cjs.js","sources":["../../../src/composable/useModalStack.ts"],"sourcesContent":["import { useScrollLock } from '@vueuse/core';\n\nlet modalStackCount = 0;\nconst isBodyScrollLocked = useScrollLock(document.body);\n\nexport function useModalStack() {\n const registerModal = () => {\n modalStackCount++;\n isBodyScrollLocked.value = true;\n };\n\n const unregisterModal = () => {\n modalStackCount = Math.max(0, modalStackCount - 1);\n isBodyScrollLocked.value = modalStackCount > 0;\n };\n\n return {\n registerModal,\n unregisterModal,\n };\n}\n"],"names":["modalStackCount","isBodyScrollLocked","useScrollLock","useModalStack"],"mappings":"gJAEA,IAAIA,EAAkB,EACtB,MAAMC,EAAqBC,EAAc,cAAA,SAAS,IAAI,EAE/C,SAASC,GAAgB,CAWvB,MAAA,CACL,cAXoB,IAAM,CAC1BH,IACAC,EAAmB,MAAQ,EAAA,EAU3B,gBAPsB,IAAM,CAC5BD,EAAkB,KAAK,IAAI,EAAGA,EAAkB,CAAC,EACjDC,EAAmB,MAAQD,EAAkB,CAAA,CAK7C,CAEJ"}
1
+ {"version":3,"file":"useModalStack.cjs.js","sources":["../../../src/composable/useModalStack.ts"],"sourcesContent":["import { useScrollLock } from '@vueuse/core';\n\nlet modalStackCount = 0;\nlet isBodyScrollLocked: ReturnType<typeof useScrollLock> | null = null;\n\nexport function useModalStack() {\n if (!isBodyScrollLocked && typeof document !== 'undefined') {\n isBodyScrollLocked = useScrollLock(document.body);\n }\n\n const registerModal = () => {\n modalStackCount++;\n if (isBodyScrollLocked) {\n isBodyScrollLocked.value = true;\n }\n };\n\n const unregisterModal = () => {\n modalStackCount = Math.max(0, modalStackCount - 1);\n if (isBodyScrollLocked) {\n isBodyScrollLocked.value = modalStackCount > 0;\n }\n };\n\n return {\n registerModal,\n unregisterModal,\n };\n}\n"],"names":["modalStackCount","isBodyScrollLocked","useModalStack","useScrollLock"],"mappings":"gJAEA,IAAIA,EAAkB,EAClBC,EAA8D,KAE3D,SAASC,GAAgB,CAC9B,MAAI,CAACD,GAAsB,OAAO,SAAa,MACxBA,EAAAE,EAAA,cAAc,SAAS,IAAI,GAiB3C,CACL,cAfoB,IAAM,CAC1BH,IACIC,IACFA,EAAmB,MAAQ,GAC7B,EAYA,gBATsB,IAAM,CAC5BD,EAAkB,KAAK,IAAI,EAAGA,EAAkB,CAAC,EAC7CC,IACFA,EAAmB,MAAQD,EAAkB,EAC/C,CAKA,CAEJ"}
@@ -1,2 +1,2 @@
1
- import{useScrollLock as t}from"../../node_modules/@vueuse/core/index.esm.js";let o=0;const e=t(document.body);function c(){return{registerModal:()=>{o++,e.value=!0},unregisterModal:()=>{o=Math.max(0,o-1),e.value=o>0}}}export{c as useModalStack};
1
+ import{useScrollLock as t}from"../../node_modules/@vueuse/core/index.esm.js";let o=0,e=null;function d(){return!e&&typeof document<"u"&&(e=t(document.body)),{registerModal:()=>{o++,e&&(e.value=!0)},unregisterModal:()=>{o=Math.max(0,o-1),e&&(e.value=o>0)}}}export{d as useModalStack};
2
2
  //# sourceMappingURL=useModalStack.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useModalStack.esm.js","sources":["../../../src/composable/useModalStack.ts"],"sourcesContent":["import { useScrollLock } from '@vueuse/core';\n\nlet modalStackCount = 0;\nconst isBodyScrollLocked = useScrollLock(document.body);\n\nexport function useModalStack() {\n const registerModal = () => {\n modalStackCount++;\n isBodyScrollLocked.value = true;\n };\n\n const unregisterModal = () => {\n modalStackCount = Math.max(0, modalStackCount - 1);\n isBodyScrollLocked.value = modalStackCount > 0;\n };\n\n return {\n registerModal,\n unregisterModal,\n };\n}\n"],"names":["modalStackCount","isBodyScrollLocked","useScrollLock","useModalStack"],"mappings":"6EAEA,IAAIA,EAAkB,EACtB,MAAMC,EAAqBC,EAAc,SAAS,IAAI,EAE/C,SAASC,GAAgB,CAWvB,MAAA,CACL,cAXoB,IAAM,CAC1BH,IACAC,EAAmB,MAAQ,EAAA,EAU3B,gBAPsB,IAAM,CAC5BD,EAAkB,KAAK,IAAI,EAAGA,EAAkB,CAAC,EACjDC,EAAmB,MAAQD,EAAkB,CAAA,CAK7C,CAEJ"}
1
+ {"version":3,"file":"useModalStack.esm.js","sources":["../../../src/composable/useModalStack.ts"],"sourcesContent":["import { useScrollLock } from '@vueuse/core';\n\nlet modalStackCount = 0;\nlet isBodyScrollLocked: ReturnType<typeof useScrollLock> | null = null;\n\nexport function useModalStack() {\n if (!isBodyScrollLocked && typeof document !== 'undefined') {\n isBodyScrollLocked = useScrollLock(document.body);\n }\n\n const registerModal = () => {\n modalStackCount++;\n if (isBodyScrollLocked) {\n isBodyScrollLocked.value = true;\n }\n };\n\n const unregisterModal = () => {\n modalStackCount = Math.max(0, modalStackCount - 1);\n if (isBodyScrollLocked) {\n isBodyScrollLocked.value = modalStackCount > 0;\n }\n };\n\n return {\n registerModal,\n unregisterModal,\n };\n}\n"],"names":["modalStackCount","isBodyScrollLocked","useModalStack","useScrollLock"],"mappings":"6EAEA,IAAIA,EAAkB,EAClBC,EAA8D,KAE3D,SAASC,GAAgB,CAC9B,MAAI,CAACD,GAAsB,OAAO,SAAa,MACxBA,EAAAE,EAAc,SAAS,IAAI,GAiB3C,CACL,cAfoB,IAAM,CAC1BH,IACIC,IACFA,EAAmB,MAAQ,GAC7B,EAYA,gBATsB,IAAM,CAC5BD,EAAkB,KAAK,IAAI,EAAGA,EAAkB,CAAC,EAC7CC,IACFA,EAAmB,MAAQD,EAAkB,EAC/C,CAKA,CAEJ"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),f=require("./ElInputContainer.vue.cjs2.js"),o=require("./input.cjs.js"),g=["id","name","checked","indeterminate","disabled","data-cy"],y={class:"flex gap-2 items-start"},k=["for"],h=["xs","xxs"],C=["primary","secondary","brand-blue","brand-green","green","purple","indigo","yellow","orange","cyan","red","pink","rose","gray"],v=[!0,!1,"indeterminate"],z=e.defineComponent({__name:"ElInputCheckbox",props:{...o.withNumberElInputProps(),modelValue:{type:[Boolean,String],default:!1,required:!0},size:{type:String,default:"xs",required:!1},color:{type:String,default:"primary",required:!1},inputClass:{type:String,default:"text-neutral-darker"}},emits:["update:modelValue"],setup(r,{emit:i}){const n=r,t=i,s=e.computed(()=>n.modelValue||!1),u=e.computed(()=>[n.validation]),b=e.useSlots(),{value:a,errorMessage:m,uuid:d}=o.useInput(s,u,n.name,l=>{t("update:modelValue",l)}),c=()=>{n.disabled||(n.modelValue==="indeterminate"?a.value=!0:a.value=!a.value)};return(l,V)=>(e.openBlock(),e.createBlock(f.default,e.mergeProps(l.$attrs,{"error-message":n.errorMessage===!1?!1:n.errorMessage||e.unref(m),"hidden-error-message":l.hiddenErrorMessage,"no-icon":!0,name:e.unref(d)}),{default:e.withCtx(()=>[e.createElementVNode("input",{id:e.unref(d),name:n.name,checked:typeof r.modelValue=="boolean"&&r.modelValue,indeterminate:r.modelValue==="indeterminate",type:"checkbox",class:"sr-only",disabled:l.disabled,"data-cy":l.label?`${l.label.trim().replaceAll(" ","")}-checkbox`:"checkbox",hidden:""},null,8,g),e.createElementVNode("div",y,[e.createElementVNode("label",{role:"checkbox",class:e.normalizeClass(["flex items-start justify-center gap-2",{"cursor-not-allowed":l.disabled,"cursor-pointer":!l.disabled}]),onClick:c},[e.createElementVNode("div",{class:e.normalizeClass(["flex justify-center items-center",{"h-6 w-6":r.size==="xs","h-5 w-5":r.size==="xxs"}])},[e.createElementVNode("div",{class:e.normalizeClass(["rounded focus:ring-0 flex items-center justify-center shrink-0",{"h-5 w-5":r.size==="xs","h-4 w-4":r.size==="xxs","border-2":!e.unref(a),"border-neutral-inactive":!e.unref(a)&&l.disabled,"border-neutral-500":(r.color==="primary"||r.color==="secondary")&&!e.unref(a)&&!l.disabled,"border-brandBlue-500":r.color==="brand-blue"&&!e.unref(a)&&!l.disabled,"border-brandGreen-500":r.color==="brand-green"&&!e.unref(a)&&!l.disabled,"border-green-500":r.color==="green"&&!e.unref(a)&&!l.disabled,"border-purple-500":r.color==="purple"&&!e.unref(a)&&!l.disabled,"border-indigo-500":r.color==="indigo"&&!e.unref(a)&&!l.disabled,"border-yellow-500":r.color==="yellow"&&!e.unref(a)&&!l.disabled,"border-orange-500":r.color==="orange"&&!e.unref(a)&&!l.disabled,"border-cyan-500":r.color==="cyan"&&!e.unref(a)&&!l.disabled,"border-red-500":r.color==="red"&&!e.unref(a)&&!l.disabled,"border-pink-500":r.color==="pink"&&!e.unref(a)&&!l.disabled,"border-rose-500":r.color==="rose"&&!e.unref(a)&&!l.disabled,"border-gray-500":r.color==="gray"&&!e.unref(a)&&!l.disabled,"bg-neutral-inactive":e.unref(a)&&l.disabled,"bg-primary-active":r.color==="primary"&&e.unref(a)&&!l.disabled,"bg-secondary-active":r.color==="secondary"&&e.unref(a)&&!l.disabled,"bg-brandBlue-500":r.color==="brand-blue"&&e.unref(a)&&!l.disabled,"bg-brandGreen-500":r.color==="brand-green"&&e.unref(a)&&!l.disabled,"bg-green-500":r.color==="green"&&e.unref(a)&&!l.disabled,"bg-purple-500":r.color==="purple"&&e.unref(a)&&!l.disabled,"bg-indigo-500":r.color==="indigo"&&e.unref(a)&&!l.disabled,"bg-yellow-500":r.color==="yellow"&&e.unref(a)&&!l.disabled,"bg-orange-500":r.color==="orange"&&e.unref(a)&&!l.disabled,"bg-cyan-500":r.color==="cyan"&&e.unref(a)&&!l.disabled,"bg-red-500":r.color==="red"&&e.unref(a)&&!l.disabled,"bg-pink-500":r.color==="pink"&&e.unref(a)&&!l.disabled,"bg-rose-500":r.color==="rose"&&e.unref(a)&&!l.disabled,"bg-gray-500":r.color==="gray"&&e.unref(a)&&!l.disabled,inputClass:r.inputClass}])},[r.modelValue==="indeterminate"?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["bg-white",{"h-[0.2rem] w-3":r.size==="xs","h-[0.15rem] w-[0.6rem]":r.size==="xxs"}])},null,2)):e.unref(a)?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["border border-neutral-inverse rotate-45 border-t-0 border-l-0",{"w-[0.5rem] h-[0.8rem] border-b-[0.2rem] border-r-[0.2rem] -mt-[0.15rem]":r.size==="xs","w-[0.35rem] h-[0.7rem] border-b-[0.15rem] border-r-[0.15rem] -mt-[0.15rem]":r.size==="xxs"}])},null,2)):e.createCommentVNode("",!0)],2)],2),l.label?(e.openBlock(),e.createElementBlock("div",{key:0,for:e.unref(d),class:e.normalizeClass(["font-normal text-left",{"text-base mt-[0.1rem]":r.size==="xs","text-sm mt-[0.05rem]":r.size==="xxs","text-neutral-darker cursor-pointer":!l.disabled,"text-neutral-inactive cursor-not-allowed":l.disabled}])},e.toDisplayString(l.label),11,k)):e.createCommentVNode("",!0)],2),e.unref(b).default?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["font-normal text-left",{"text-base mt-[0.1rem]":r.size==="xs","text-sm mt-[0.05rem]":r.size==="xxs","text-neutral-darker":e.unref(a)&&!l.disabled,"text-neutral-inactive":l.disabled}])},[e.renderSlot(l.$slots,"default")],2)):e.createCommentVNode("",!0)])]),_:3},16,["error-message","hidden-error-message","name"]))}});exports.default=z;exports.elInputCheckboxColors=C;exports.elInputCheckboxModelValues=v;exports.elInputCheckboxSizes=h;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),f=require("./ElInputContainer.vue.cjs2.js"),t=require("./input.cjs.js"),g=["id","name","checked","indeterminate","disabled","data-cy"],y={class:"flex gap-2 items-start"},k=["for"],h={key:0,class:"text-error mt-1 text-sm ml-8"},C=["xs","xxs"],v=["primary","secondary","brand-blue","brand-green","green","purple","indigo","yellow","orange","cyan","red","pink","rose","gray"],z=[!0,!1,"indeterminate"],V=e.defineComponent({__name:"ElInputCheckbox",props:{...t.withNumberElInputProps(),modelValue:{type:[Boolean,String],default:!1,required:!0},size:{type:String,default:"xs",required:!1},color:{type:String,default:"primary",required:!1},inputClass:{type:String,default:"text-neutral-darker"}},emits:["update:modelValue"],setup(r,{emit:i}){const n=r,s=i,u=e.computed(()=>n.modelValue||!1),b=e.computed(()=>[n.validation]),c=e.useSlots(),{value:a,errorMessage:o,uuid:d}=t.useInput(u,b,n.name,l=>{s("update:modelValue",l)}),m=()=>{n.disabled||(n.modelValue==="indeterminate"?a.value=!0:a.value=!a.value)};return(l,w)=>(e.openBlock(),e.createBlock(f.default,e.mergeProps(l.$attrs,{"hidden-error-message":!0,"no-icon":!0,name:e.unref(d)}),{after:e.withCtx(()=>[n.errorMessage!==!1&&(n.errorMessage||e.unref(o))&&!l.hiddenErrorMessage?(e.openBlock(),e.createElementBlock("p",h,e.toDisplayString(n.errorMessage||e.unref(o)),1)):e.createCommentVNode("",!0)]),default:e.withCtx(()=>[e.createElementVNode("input",{id:e.unref(d),name:n.name,checked:typeof r.modelValue=="boolean"&&r.modelValue,indeterminate:r.modelValue==="indeterminate",type:"checkbox",class:"sr-only",disabled:l.disabled,"data-cy":l.label?`${l.label.trim().replaceAll(" ","")}-checkbox`:"checkbox",hidden:""},null,8,g),e.createElementVNode("div",y,[e.createElementVNode("label",{role:"checkbox",class:e.normalizeClass(["flex items-start justify-center gap-2",{"cursor-not-allowed":l.disabled,"cursor-pointer":!l.disabled}]),onClick:m},[e.createElementVNode("div",{class:e.normalizeClass(["flex justify-center items-center",{"h-6 w-6":r.size==="xs","h-5 w-5":r.size==="xxs"}])},[e.createElementVNode("div",{class:e.normalizeClass(["rounded focus:ring-0 flex items-center justify-center shrink-0",{"h-5 w-5":r.size==="xs","h-4 w-4":r.size==="xxs","border-2":!e.unref(a),"border-neutral-inactive":!e.unref(a)&&l.disabled,"border-neutral-500":(r.color==="primary"||r.color==="secondary")&&!e.unref(a)&&!l.disabled,"border-brandBlue-500":r.color==="brand-blue"&&!e.unref(a)&&!l.disabled,"border-brandGreen-500":r.color==="brand-green"&&!e.unref(a)&&!l.disabled,"border-green-500":r.color==="green"&&!e.unref(a)&&!l.disabled,"border-purple-500":r.color==="purple"&&!e.unref(a)&&!l.disabled,"border-indigo-500":r.color==="indigo"&&!e.unref(a)&&!l.disabled,"border-yellow-500":r.color==="yellow"&&!e.unref(a)&&!l.disabled,"border-orange-500":r.color==="orange"&&!e.unref(a)&&!l.disabled,"border-cyan-500":r.color==="cyan"&&!e.unref(a)&&!l.disabled,"border-pink-500":r.color==="pink"&&!e.unref(a)&&!l.disabled,"border-rose-500":r.color==="rose"&&!e.unref(a)&&!l.disabled,"border-gray-500":r.color==="gray"&&!e.unref(a)&&!l.disabled,"border-red-500":r.color==="red"&&!e.unref(a)&&!l.disabled||(n.errorMessage===!1?!1:n.errorMessage||e.unref(o))&&!l.hiddenErrorMessage,"bg-neutral-inactive":e.unref(a)&&l.disabled,"bg-primary-active":r.color==="primary"&&e.unref(a)&&!l.disabled,"bg-secondary-active":r.color==="secondary"&&e.unref(a)&&!l.disabled,"bg-brandBlue-500":r.color==="brand-blue"&&e.unref(a)&&!l.disabled,"bg-brandGreen-500":r.color==="brand-green"&&e.unref(a)&&!l.disabled,"bg-green-500":r.color==="green"&&e.unref(a)&&!l.disabled,"bg-purple-500":r.color==="purple"&&e.unref(a)&&!l.disabled,"bg-indigo-500":r.color==="indigo"&&e.unref(a)&&!l.disabled,"bg-yellow-500":r.color==="yellow"&&e.unref(a)&&!l.disabled,"bg-orange-500":r.color==="orange"&&e.unref(a)&&!l.disabled,"bg-cyan-500":r.color==="cyan"&&e.unref(a)&&!l.disabled,"bg-red-500":r.color==="red"&&e.unref(a)&&!l.disabled,"bg-pink-500":r.color==="pink"&&e.unref(a)&&!l.disabled,"bg-rose-500":r.color==="rose"&&e.unref(a)&&!l.disabled,"bg-gray-500":r.color==="gray"&&e.unref(a)&&!l.disabled,inputClass:r.inputClass}])},[r.modelValue==="indeterminate"?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["bg-white",{"h-[0.2rem] w-3":r.size==="xs","h-[0.15rem] w-[0.6rem]":r.size==="xxs"}])},null,2)):e.unref(a)?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["border border-neutral-inverse rotate-45 border-t-0 border-l-0",{"w-[0.5rem] h-[0.8rem] border-b-[0.2rem] border-r-[0.2rem] -mt-[0.15rem]":r.size==="xs","w-[0.35rem] h-[0.7rem] border-b-[0.15rem] border-r-[0.15rem] -mt-[0.15rem]":r.size==="xxs"}])},null,2)):e.createCommentVNode("",!0)],2)],2),l.label?(e.openBlock(),e.createElementBlock("div",{key:0,for:e.unref(d),class:e.normalizeClass(["font-normal text-left",{"text-base mt-[0.1rem]":r.size==="xs","text-sm mt-[0.05rem]":r.size==="xxs","text-neutral-darker cursor-pointer":!l.disabled,"text-neutral-inactive cursor-not-allowed":l.disabled}])},e.toDisplayString(l.label),11,k)):e.createCommentVNode("",!0)],2),e.unref(c).default?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["font-normal text-left",{"text-base mt-[0.1rem]":r.size==="xs","text-sm mt-[0.05rem]":r.size==="xxs","text-neutral-darker":e.unref(a)&&!l.disabled,"text-neutral-inactive":l.disabled}])},[e.renderSlot(l.$slots,"default")],2)):e.createCommentVNode("",!0)])]),_:3},16,["name"]))}});exports.default=V;exports.elInputCheckboxColors=v;exports.elInputCheckboxModelValues=z;exports.elInputCheckboxSizes=C;
2
2
  //# sourceMappingURL=ElInputCheckbox.vue.cjs2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ElInputCheckbox.vue.cjs2.js","sources":["../../../src/forms/ElInputCheckbox.vue"],"sourcesContent":["<script lang=\"ts\">\nexport const elInputCheckboxSizes = ['xs', 'xxs'] as const;\nexport type ElInputCheckboxSizes = (typeof elInputCheckboxSizes)[number];\n\nexport const elInputCheckboxColors = [\n 'primary',\n 'secondary',\n 'brand-blue',\n 'brand-green',\n 'green',\n 'purple',\n 'indigo',\n 'yellow',\n 'orange',\n 'cyan',\n 'red',\n 'pink',\n 'rose',\n 'gray',\n] as const;\nexport type ElInputCheckboxColors = (typeof elInputCheckboxColors)[number];\n\nexport const elInputCheckboxModelValues = [true, false, 'indeterminate'] as const;\nexport type ElInputCheckboxModelValues = (typeof elInputCheckboxModelValues)[number];\n</script>\n\n<script lang=\"ts\" setup>\nimport { computed, PropType, useSlots } from 'vue';\nimport ElInputContainer from '@/forms/ElInputContainer.vue';\nimport { useInput, withNumberElInputProps } from '@/forms/input';\n\nconst props = defineProps({\n ...withNumberElInputProps(),\n modelValue: {\n type: [Boolean, String] as PropType<ElInputCheckboxModelValues>,\n default: false,\n required: true,\n },\n size: {\n type: String as PropType<ElInputCheckboxSizes>,\n default: 'xs',\n required: false,\n },\n color: {\n type: String as PropType<ElInputCheckboxColors>,\n default: 'primary',\n required: false,\n },\n inputClass: {\n type: String,\n default: 'text-neutral-darker',\n },\n});\n\nconst emit = defineEmits<{\n (event: 'update:modelValue', val: ElInputCheckboxModelValues): void;\n}>();\n\nconst computedModelValue = computed(() => props.modelValue || false);\nconst computedValidation = computed(() => [props.validation]);\n\nconst slots = useSlots();\n\nconst { value, errorMessage, uuid } = useInput(\n computedModelValue,\n computedValidation,\n props.name,\n (newValue: ElInputCheckboxModelValues) => {\n emit('update:modelValue', newValue);\n },\n);\n\nconst toggleCheckbox = () => {\n if (props.disabled) return;\n if (props.modelValue === 'indeterminate') {\n value.value = true;\n } else {\n value.value = !value.value;\n }\n};\n</script>\n\n<template>\n <ElInputContainer\n v-bind=\"$attrs\"\n :error-message=\"props.errorMessage === false ? false : props.errorMessage || errorMessage\"\n :hidden-error-message=\"hiddenErrorMessage\"\n :no-icon=\"true\"\n :name=\"uuid\"\n >\n <input\n :id=\"uuid\"\n :name=\"props.name\"\n :checked=\"typeof modelValue === 'boolean' && modelValue\"\n :indeterminate=\"modelValue === 'indeterminate'\"\n type=\"checkbox\"\n class=\"sr-only\"\n :disabled=\"disabled\"\n :data-cy=\"label ? `${label.trim().replaceAll(' ', '')}-checkbox` : 'checkbox'\"\n hidden\n />\n\n <div class=\"flex gap-2 items-start\">\n <label\n role=\"checkbox\"\n class=\"flex items-start justify-center gap-2\"\n :class=\"{ 'cursor-not-allowed': disabled, 'cursor-pointer': !disabled }\"\n @click=\"toggleCheckbox\"\n >\n <!-- Checkbox container -->\n <div\n class=\"flex justify-center items-center\"\n :class=\"{\n 'h-6 w-6': size === 'xs',\n 'h-5 w-5': size === 'xxs',\n }\"\n >\n <!-- Checkbox border/background -->\n <div\n class=\"rounded focus:ring-0 flex items-center justify-center shrink-0\"\n :class=\"{\n 'h-5 w-5': size === 'xs',\n 'h-4 w-4': size === 'xxs',\n 'border-2': !value,\n 'border-neutral-inactive': !value && disabled,\n 'border-neutral-500': (color === 'primary' || color === 'secondary') && !value && !disabled,\n 'border-brandBlue-500': color === 'brand-blue' && !value && !disabled,\n 'border-brandGreen-500': color === 'brand-green' && !value && !disabled,\n 'border-green-500': color === 'green' && !value && !disabled,\n 'border-purple-500': color === 'purple' && !value && !disabled,\n 'border-indigo-500': color === 'indigo' && !value && !disabled,\n 'border-yellow-500': color === 'yellow' && !value && !disabled,\n 'border-orange-500': color === 'orange' && !value && !disabled,\n 'border-cyan-500': color === 'cyan' && !value && !disabled,\n 'border-red-500': color === 'red' && !value && !disabled,\n 'border-pink-500': color === 'pink' && !value && !disabled,\n 'border-rose-500': color === 'rose' && !value && !disabled,\n 'border-gray-500': color === 'gray' && !value && !disabled,\n 'bg-neutral-inactive': value && disabled,\n 'bg-primary-active': color === 'primary' && value && !disabled,\n 'bg-secondary-active': color === 'secondary' && value && !disabled,\n 'bg-brandBlue-500': color === 'brand-blue' && value && !disabled,\n 'bg-brandGreen-500': color === 'brand-green' && value && !disabled,\n 'bg-green-500': color === 'green' && value && !disabled,\n 'bg-purple-500': color === 'purple' && value && !disabled,\n 'bg-indigo-500': color === 'indigo' && value && !disabled,\n 'bg-yellow-500': color === 'yellow' && value && !disabled,\n 'bg-orange-500': color === 'orange' && value && !disabled,\n 'bg-cyan-500': color === 'cyan' && value && !disabled,\n 'bg-red-500': color === 'red' && value && !disabled,\n 'bg-pink-500': color === 'pink' && value && !disabled,\n 'bg-rose-500': color === 'rose' && value && !disabled,\n 'bg-gray-500': color === 'gray' && value && !disabled,\n inputClass,\n }\"\n >\n <!-- Minus icon -->\n <div\n v-if=\"modelValue === 'indeterminate'\"\n class=\"bg-white\"\n :class=\"{\n 'h-[0.2rem] w-3': size === 'xs',\n 'h-[0.15rem] w-[0.6rem]': size === 'xxs',\n }\"\n ></div>\n\n <!-- Check icon -->\n <div\n v-else-if=\"value\"\n class=\"border border-neutral-inverse rotate-45 border-t-0 border-l-0\"\n :class=\"{\n 'w-[0.5rem] h-[0.8rem] border-b-[0.2rem] border-r-[0.2rem] -mt-[0.15rem]': size === 'xs',\n 'w-[0.35rem] h-[0.7rem] border-b-[0.15rem] border-r-[0.15rem] -mt-[0.15rem]': size === 'xxs',\n }\"\n ></div>\n </div>\n </div>\n\n <div\n v-if=\"label\"\n :for=\"uuid\"\n class=\"font-normal text-left\"\n :class=\"{\n 'text-base mt-[0.1rem]': size === 'xs',\n 'text-sm mt-[0.05rem]': size === 'xxs',\n 'text-neutral-darker cursor-pointer': !disabled,\n 'text-neutral-inactive cursor-not-allowed': disabled,\n }\"\n >\n {{ label }}\n </div>\n </label>\n\n <div\n v-if=\"slots.default\"\n class=\"font-normal text-left\"\n :class=\"{\n 'text-base mt-[0.1rem]': size === 'xs',\n 'text-sm mt-[0.05rem]': size === 'xxs',\n 'text-neutral-darker': value && !disabled,\n 'text-neutral-inactive': disabled,\n }\"\n >\n <slot />\n </div>\n </div>\n </ElInputContainer>\n</template>\n"],"names":["elInputCheckboxSizes","elInputCheckboxColors","elInputCheckboxModelValues","props","__props","emit","__emit","computedModelValue","computed","computedValidation","slots","useSlots","value","errorMessage","uuid","useInput","newValue","toggleCheckbox"],"mappings":"uTACaA,EAAuB,CAAC,KAAM,KAAK,EAGnCC,EAAwB,CACnC,UACA,YACA,aACA,cACA,QACA,SACA,SACA,SACA,SACA,OACA,MACA,OACA,OACA,MACF,EAGaC,EAA6B,CAAC,GAAM,GAAO,eAAe,mVASvE,MAAMC,EAAQC,EAuBRC,EAAOC,EAIPC,EAAqBC,EAAAA,SAAS,IAAML,EAAM,YAAc,EAAK,EAC7DM,EAAqBD,EAAAA,SAAS,IAAM,CAACL,EAAM,UAAU,CAAC,EAEtDO,EAAQC,EAAAA,WAER,CAAE,MAAAC,EAAO,aAAAC,EAAc,KAAAC,CAAS,EAAAC,EAAA,SACpCR,EACAE,EACAN,EAAM,KACLa,GAAyC,CACxCX,EAAK,oBAAqBW,CAAQ,CACpC,CAAA,EAGIC,EAAiB,IAAM,CACvBd,EAAM,WACNA,EAAM,aAAe,gBACvBS,EAAM,MAAQ,GAERA,EAAA,MAAQ,CAACA,EAAM,MACvB"}
1
+ {"version":3,"file":"ElInputCheckbox.vue.cjs2.js","sources":["../../../src/forms/ElInputCheckbox.vue"],"sourcesContent":["<script lang=\"ts\">\nexport const elInputCheckboxSizes = ['xs', 'xxs'] as const;\nexport type ElInputCheckboxSizes = (typeof elInputCheckboxSizes)[number];\n\nexport const elInputCheckboxColors = [\n 'primary',\n 'secondary',\n 'brand-blue',\n 'brand-green',\n 'green',\n 'purple',\n 'indigo',\n 'yellow',\n 'orange',\n 'cyan',\n 'red',\n 'pink',\n 'rose',\n 'gray',\n] as const;\nexport type ElInputCheckboxColors = (typeof elInputCheckboxColors)[number];\n\nexport const elInputCheckboxModelValues = [true, false, 'indeterminate'] as const;\nexport type ElInputCheckboxModelValues = (typeof elInputCheckboxModelValues)[number];\n</script>\n\n<script lang=\"ts\" setup>\nimport { computed, PropType, useSlots } from 'vue';\nimport ElInputContainer from '@/forms/ElInputContainer.vue';\nimport { useInput, withNumberElInputProps } from '@/forms/input';\n\nconst props = defineProps({\n ...withNumberElInputProps(),\n modelValue: {\n type: [Boolean, String] as PropType<ElInputCheckboxModelValues>,\n default: false,\n required: true,\n },\n size: {\n type: String as PropType<ElInputCheckboxSizes>,\n default: 'xs',\n required: false,\n },\n color: {\n type: String as PropType<ElInputCheckboxColors>,\n default: 'primary',\n required: false,\n },\n inputClass: {\n type: String,\n default: 'text-neutral-darker',\n },\n});\n\nconst emit = defineEmits<{\n (event: 'update:modelValue', val: ElInputCheckboxModelValues): void;\n}>();\n\nconst computedModelValue = computed(() => props.modelValue || false);\nconst computedValidation = computed(() => [props.validation]);\n\nconst slots = useSlots();\n\nconst { value, errorMessage, uuid } = useInput(\n computedModelValue,\n computedValidation,\n props.name,\n (newValue: ElInputCheckboxModelValues) => {\n emit('update:modelValue', newValue);\n },\n);\n\nconst toggleCheckbox = () => {\n if (props.disabled) return;\n if (props.modelValue === 'indeterminate') {\n value.value = true;\n } else {\n value.value = !value.value;\n }\n};\n</script>\n\n<template>\n <ElInputContainer v-bind=\"$attrs\" :hidden-error-message=\"true\" :no-icon=\"true\" :name=\"uuid\">\n <input\n :id=\"uuid\"\n :name=\"props.name\"\n :checked=\"typeof modelValue === 'boolean' && modelValue\"\n :indeterminate=\"modelValue === 'indeterminate'\"\n type=\"checkbox\"\n class=\"sr-only\"\n :disabled=\"disabled\"\n :data-cy=\"label ? `${label.trim().replaceAll(' ', '')}-checkbox` : 'checkbox'\"\n hidden\n />\n\n <div class=\"flex gap-2 items-start\">\n <label\n role=\"checkbox\"\n class=\"flex items-start justify-center gap-2\"\n :class=\"{ 'cursor-not-allowed': disabled, 'cursor-pointer': !disabled }\"\n @click=\"toggleCheckbox\"\n >\n <!-- Checkbox container -->\n <div\n class=\"flex justify-center items-center\"\n :class=\"{\n 'h-6 w-6': size === 'xs',\n 'h-5 w-5': size === 'xxs',\n }\"\n >\n <!-- Checkbox border/background -->\n <div\n class=\"rounded focus:ring-0 flex items-center justify-center shrink-0\"\n :class=\"{\n 'h-5 w-5': size === 'xs',\n 'h-4 w-4': size === 'xxs',\n 'border-2': !value,\n 'border-neutral-inactive': !value && disabled,\n 'border-neutral-500': (color === 'primary' || color === 'secondary') && !value && !disabled,\n 'border-brandBlue-500': color === 'brand-blue' && !value && !disabled,\n 'border-brandGreen-500': color === 'brand-green' && !value && !disabled,\n 'border-green-500': color === 'green' && !value && !disabled,\n 'border-purple-500': color === 'purple' && !value && !disabled,\n 'border-indigo-500': color === 'indigo' && !value && !disabled,\n 'border-yellow-500': color === 'yellow' && !value && !disabled,\n 'border-orange-500': color === 'orange' && !value && !disabled,\n 'border-cyan-500': color === 'cyan' && !value && !disabled,\n 'border-pink-500': color === 'pink' && !value && !disabled,\n 'border-rose-500': color === 'rose' && !value && !disabled,\n 'border-gray-500': color === 'gray' && !value && !disabled,\n 'border-red-500':\n (color === 'red' && !value && !disabled) ||\n ((props.errorMessage === false ? false : props.errorMessage || errorMessage) && !hiddenErrorMessage),\n 'bg-neutral-inactive': value && disabled,\n 'bg-primary-active': color === 'primary' && value && !disabled,\n 'bg-secondary-active': color === 'secondary' && value && !disabled,\n 'bg-brandBlue-500': color === 'brand-blue' && value && !disabled,\n 'bg-brandGreen-500': color === 'brand-green' && value && !disabled,\n 'bg-green-500': color === 'green' && value && !disabled,\n 'bg-purple-500': color === 'purple' && value && !disabled,\n 'bg-indigo-500': color === 'indigo' && value && !disabled,\n 'bg-yellow-500': color === 'yellow' && value && !disabled,\n 'bg-orange-500': color === 'orange' && value && !disabled,\n 'bg-cyan-500': color === 'cyan' && value && !disabled,\n 'bg-red-500': color === 'red' && value && !disabled,\n 'bg-pink-500': color === 'pink' && value && !disabled,\n 'bg-rose-500': color === 'rose' && value && !disabled,\n 'bg-gray-500': color === 'gray' && value && !disabled,\n inputClass,\n }\"\n >\n <!-- Minus icon -->\n <div\n v-if=\"modelValue === 'indeterminate'\"\n class=\"bg-white\"\n :class=\"{\n 'h-[0.2rem] w-3': size === 'xs',\n 'h-[0.15rem] w-[0.6rem]': size === 'xxs',\n }\"\n ></div>\n\n <!-- Check icon -->\n <div\n v-else-if=\"value\"\n class=\"border border-neutral-inverse rotate-45 border-t-0 border-l-0\"\n :class=\"{\n 'w-[0.5rem] h-[0.8rem] border-b-[0.2rem] border-r-[0.2rem] -mt-[0.15rem]': size === 'xs',\n 'w-[0.35rem] h-[0.7rem] border-b-[0.15rem] border-r-[0.15rem] -mt-[0.15rem]': size === 'xxs',\n }\"\n ></div>\n </div>\n </div>\n\n <div\n v-if=\"label\"\n :for=\"uuid\"\n class=\"font-normal text-left\"\n :class=\"{\n 'text-base mt-[0.1rem]': size === 'xs',\n 'text-sm mt-[0.05rem]': size === 'xxs',\n 'text-neutral-darker cursor-pointer': !disabled,\n 'text-neutral-inactive cursor-not-allowed': disabled,\n }\"\n >\n {{ label }}\n </div>\n </label>\n\n <div\n v-if=\"slots.default\"\n class=\"font-normal text-left\"\n :class=\"{\n 'text-base mt-[0.1rem]': size === 'xs',\n 'text-sm mt-[0.05rem]': size === 'xxs',\n 'text-neutral-darker': value && !disabled,\n 'text-neutral-inactive': disabled,\n }\"\n >\n <slot />\n </div>\n </div>\n <template #after>\n <p\n v-if=\"!!(props.errorMessage === false ? false : props.errorMessage || errorMessage) && !hiddenErrorMessage\"\n class=\"text-error mt-1 text-sm ml-8\"\n >\n {{ props.errorMessage || errorMessage }}\n </p>\n </template>\n </ElInputContainer>\n</template>\n"],"names":["elInputCheckboxSizes","elInputCheckboxColors","elInputCheckboxModelValues","props","__props","emit","__emit","computedModelValue","computed","computedValidation","slots","useSlots","value","errorMessage","uuid","useInput","newValue","toggleCheckbox"],"mappings":"sWACaA,EAAuB,CAAC,KAAM,KAAK,EAGnCC,EAAwB,CACnC,UACA,YACA,aACA,cACA,QACA,SACA,SACA,SACA,SACA,OACA,MACA,OACA,OACA,MACF,EAGaC,EAA6B,CAAC,GAAM,GAAO,eAAe,mVASvE,MAAMC,EAAQC,EAuBRC,EAAOC,EAIPC,EAAqBC,EAAAA,SAAS,IAAML,EAAM,YAAc,EAAK,EAC7DM,EAAqBD,EAAAA,SAAS,IAAM,CAACL,EAAM,UAAU,CAAC,EAEtDO,EAAQC,EAAAA,WAER,CAAE,MAAAC,EAAO,aAAAC,EAAc,KAAAC,CAAS,EAAAC,EAAA,SACpCR,EACAE,EACAN,EAAM,KACLa,GAAyC,CACxCX,EAAK,oBAAqBW,CAAQ,CACpC,CAAA,EAGIC,EAAiB,IAAM,CACvBd,EAAM,WACNA,EAAM,aAAe,gBACvBS,EAAM,MAAQ,GAERA,EAAA,MAAQ,CAACA,EAAM,MACvB"}
@@ -1,2 +1,2 @@
1
- import{defineComponent as v,computed as u,useSlots as w,openBlock as i,createBlock as z,mergeProps as C,unref as l,withCtx as V,createElementVNode as n,normalizeClass as o,createElementBlock as s,createCommentVNode as b,toDisplayString as S,renderSlot as x}from"vue";import B from"./ElInputContainer.vue.esm2.js";import{withNumberElInputProps as I,useInput as M}from"./input.esm.js";const E=["id","name","checked","indeterminate","disabled","data-cy"],$={class:"flex gap-2 items-start"},j=["for"],A=["xs","xxs"],D=["primary","secondary","brand-blue","brand-green","green","purple","indigo","yellow","orange","cyan","red","pink","rose","gray"],F=[!0,!1,"indeterminate"],H=v({__name:"ElInputCheckbox",props:{...I(),modelValue:{type:[Boolean,String],default:!1,required:!0},size:{type:String,default:"xs",required:!1},color:{type:String,default:"primary",required:!1},inputClass:{type:String,default:"text-neutral-darker"}},emits:["update:modelValue"],setup(e,{emit:m}){const a=e,c=m,g=u(()=>a.modelValue||!1),y=u(()=>[a.validation]),f=w(),{value:d,errorMessage:h,uuid:t}=M(g,y,a.name,r=>{c("update:modelValue",r)}),k=()=>{a.disabled||(a.modelValue==="indeterminate"?d.value=!0:d.value=!d.value)};return(r,q)=>(i(),z(B,C(r.$attrs,{"error-message":a.errorMessage===!1?!1:a.errorMessage||l(h),"hidden-error-message":r.hiddenErrorMessage,"no-icon":!0,name:l(t)}),{default:V(()=>[n("input",{id:l(t),name:a.name,checked:typeof e.modelValue=="boolean"&&e.modelValue,indeterminate:e.modelValue==="indeterminate",type:"checkbox",class:"sr-only",disabled:r.disabled,"data-cy":r.label?`${r.label.trim().replaceAll(" ","")}-checkbox`:"checkbox",hidden:""},null,8,E),n("div",$,[n("label",{role:"checkbox",class:o(["flex items-start justify-center gap-2",{"cursor-not-allowed":r.disabled,"cursor-pointer":!r.disabled}]),onClick:k},[n("div",{class:o(["flex justify-center items-center",{"h-6 w-6":e.size==="xs","h-5 w-5":e.size==="xxs"}])},[n("div",{class:o(["rounded focus:ring-0 flex items-center justify-center shrink-0",{"h-5 w-5":e.size==="xs","h-4 w-4":e.size==="xxs","border-2":!l(d),"border-neutral-inactive":!l(d)&&r.disabled,"border-neutral-500":(e.color==="primary"||e.color==="secondary")&&!l(d)&&!r.disabled,"border-brandBlue-500":e.color==="brand-blue"&&!l(d)&&!r.disabled,"border-brandGreen-500":e.color==="brand-green"&&!l(d)&&!r.disabled,"border-green-500":e.color==="green"&&!l(d)&&!r.disabled,"border-purple-500":e.color==="purple"&&!l(d)&&!r.disabled,"border-indigo-500":e.color==="indigo"&&!l(d)&&!r.disabled,"border-yellow-500":e.color==="yellow"&&!l(d)&&!r.disabled,"border-orange-500":e.color==="orange"&&!l(d)&&!r.disabled,"border-cyan-500":e.color==="cyan"&&!l(d)&&!r.disabled,"border-red-500":e.color==="red"&&!l(d)&&!r.disabled,"border-pink-500":e.color==="pink"&&!l(d)&&!r.disabled,"border-rose-500":e.color==="rose"&&!l(d)&&!r.disabled,"border-gray-500":e.color==="gray"&&!l(d)&&!r.disabled,"bg-neutral-inactive":l(d)&&r.disabled,"bg-primary-active":e.color==="primary"&&l(d)&&!r.disabled,"bg-secondary-active":e.color==="secondary"&&l(d)&&!r.disabled,"bg-brandBlue-500":e.color==="brand-blue"&&l(d)&&!r.disabled,"bg-brandGreen-500":e.color==="brand-green"&&l(d)&&!r.disabled,"bg-green-500":e.color==="green"&&l(d)&&!r.disabled,"bg-purple-500":e.color==="purple"&&l(d)&&!r.disabled,"bg-indigo-500":e.color==="indigo"&&l(d)&&!r.disabled,"bg-yellow-500":e.color==="yellow"&&l(d)&&!r.disabled,"bg-orange-500":e.color==="orange"&&l(d)&&!r.disabled,"bg-cyan-500":e.color==="cyan"&&l(d)&&!r.disabled,"bg-red-500":e.color==="red"&&l(d)&&!r.disabled,"bg-pink-500":e.color==="pink"&&l(d)&&!r.disabled,"bg-rose-500":e.color==="rose"&&l(d)&&!r.disabled,"bg-gray-500":e.color==="gray"&&l(d)&&!r.disabled,inputClass:e.inputClass}])},[e.modelValue==="indeterminate"?(i(),s("div",{key:0,class:o(["bg-white",{"h-[0.2rem] w-3":e.size==="xs","h-[0.15rem] w-[0.6rem]":e.size==="xxs"}])},null,2)):l(d)?(i(),s("div",{key:1,class:o(["border border-neutral-inverse rotate-45 border-t-0 border-l-0",{"w-[0.5rem] h-[0.8rem] border-b-[0.2rem] border-r-[0.2rem] -mt-[0.15rem]":e.size==="xs","w-[0.35rem] h-[0.7rem] border-b-[0.15rem] border-r-[0.15rem] -mt-[0.15rem]":e.size==="xxs"}])},null,2)):b("",!0)],2)],2),r.label?(i(),s("div",{key:0,for:l(t),class:o(["font-normal text-left",{"text-base mt-[0.1rem]":e.size==="xs","text-sm mt-[0.05rem]":e.size==="xxs","text-neutral-darker cursor-pointer":!r.disabled,"text-neutral-inactive cursor-not-allowed":r.disabled}])},S(r.label),11,j)):b("",!0)],2),l(f).default?(i(),s("div",{key:0,class:o(["font-normal text-left",{"text-base mt-[0.1rem]":e.size==="xs","text-sm mt-[0.05rem]":e.size==="xxs","text-neutral-darker":l(d)&&!r.disabled,"text-neutral-inactive":r.disabled}])},[x(r.$slots,"default")],2)):b("",!0)])]),_:3},16,["error-message","hidden-error-message","name"]))}});export{H as default,D as elInputCheckboxColors,F as elInputCheckboxModelValues,A as elInputCheckboxSizes};
1
+ import{defineComponent as z,computed as m,useSlots as C,openBlock as i,createBlock as V,mergeProps as M,unref as l,withCtx as c,createElementBlock as n,toDisplayString as g,createCommentVNode as t,createElementVNode as s,normalizeClass as o,renderSlot as S}from"vue";import x from"./ElInputContainer.vue.esm2.js";import{withNumberElInputProps as B,useInput as E}from"./input.esm.js";const I=["id","name","checked","indeterminate","disabled","data-cy"],$={class:"flex gap-2 items-start"},j=["for"],q={key:0,class:"text-error mt-1 text-sm ml-8"},D=["xs","xxs"],F=["primary","secondary","brand-blue","brand-green","green","purple","indigo","yellow","orange","cyan","red","pink","rose","gray"],H=[!0,!1,"indeterminate"],J=z({__name:"ElInputCheckbox",props:{...B(),modelValue:{type:[Boolean,String],default:!1,required:!0},size:{type:String,default:"xs",required:!1},color:{type:String,default:"primary",required:!1},inputClass:{type:String,default:"text-neutral-darker"}},emits:["update:modelValue"],setup(e,{emit:f}){const d=e,y=f,h=m(()=>d.modelValue||!1),k=m(()=>[d.validation]),v=C(),{value:a,errorMessage:b,uuid:u}=E(h,k,d.name,r=>{y("update:modelValue",r)}),w=()=>{d.disabled||(d.modelValue==="indeterminate"?a.value=!0:a.value=!a.value)};return(r,N)=>(i(),V(x,M(r.$attrs,{"hidden-error-message":!0,"no-icon":!0,name:l(u)}),{after:c(()=>[d.errorMessage!==!1&&(d.errorMessage||l(b))&&!r.hiddenErrorMessage?(i(),n("p",q,g(d.errorMessage||l(b)),1)):t("",!0)]),default:c(()=>[s("input",{id:l(u),name:d.name,checked:typeof e.modelValue=="boolean"&&e.modelValue,indeterminate:e.modelValue==="indeterminate",type:"checkbox",class:"sr-only",disabled:r.disabled,"data-cy":r.label?`${r.label.trim().replaceAll(" ","")}-checkbox`:"checkbox",hidden:""},null,8,I),s("div",$,[s("label",{role:"checkbox",class:o(["flex items-start justify-center gap-2",{"cursor-not-allowed":r.disabled,"cursor-pointer":!r.disabled}]),onClick:w},[s("div",{class:o(["flex justify-center items-center",{"h-6 w-6":e.size==="xs","h-5 w-5":e.size==="xxs"}])},[s("div",{class:o(["rounded focus:ring-0 flex items-center justify-center shrink-0",{"h-5 w-5":e.size==="xs","h-4 w-4":e.size==="xxs","border-2":!l(a),"border-neutral-inactive":!l(a)&&r.disabled,"border-neutral-500":(e.color==="primary"||e.color==="secondary")&&!l(a)&&!r.disabled,"border-brandBlue-500":e.color==="brand-blue"&&!l(a)&&!r.disabled,"border-brandGreen-500":e.color==="brand-green"&&!l(a)&&!r.disabled,"border-green-500":e.color==="green"&&!l(a)&&!r.disabled,"border-purple-500":e.color==="purple"&&!l(a)&&!r.disabled,"border-indigo-500":e.color==="indigo"&&!l(a)&&!r.disabled,"border-yellow-500":e.color==="yellow"&&!l(a)&&!r.disabled,"border-orange-500":e.color==="orange"&&!l(a)&&!r.disabled,"border-cyan-500":e.color==="cyan"&&!l(a)&&!r.disabled,"border-pink-500":e.color==="pink"&&!l(a)&&!r.disabled,"border-rose-500":e.color==="rose"&&!l(a)&&!r.disabled,"border-gray-500":e.color==="gray"&&!l(a)&&!r.disabled,"border-red-500":e.color==="red"&&!l(a)&&!r.disabled||(d.errorMessage===!1?!1:d.errorMessage||l(b))&&!r.hiddenErrorMessage,"bg-neutral-inactive":l(a)&&r.disabled,"bg-primary-active":e.color==="primary"&&l(a)&&!r.disabled,"bg-secondary-active":e.color==="secondary"&&l(a)&&!r.disabled,"bg-brandBlue-500":e.color==="brand-blue"&&l(a)&&!r.disabled,"bg-brandGreen-500":e.color==="brand-green"&&l(a)&&!r.disabled,"bg-green-500":e.color==="green"&&l(a)&&!r.disabled,"bg-purple-500":e.color==="purple"&&l(a)&&!r.disabled,"bg-indigo-500":e.color==="indigo"&&l(a)&&!r.disabled,"bg-yellow-500":e.color==="yellow"&&l(a)&&!r.disabled,"bg-orange-500":e.color==="orange"&&l(a)&&!r.disabled,"bg-cyan-500":e.color==="cyan"&&l(a)&&!r.disabled,"bg-red-500":e.color==="red"&&l(a)&&!r.disabled,"bg-pink-500":e.color==="pink"&&l(a)&&!r.disabled,"bg-rose-500":e.color==="rose"&&l(a)&&!r.disabled,"bg-gray-500":e.color==="gray"&&l(a)&&!r.disabled,inputClass:e.inputClass}])},[e.modelValue==="indeterminate"?(i(),n("div",{key:0,class:o(["bg-white",{"h-[0.2rem] w-3":e.size==="xs","h-[0.15rem] w-[0.6rem]":e.size==="xxs"}])},null,2)):l(a)?(i(),n("div",{key:1,class:o(["border border-neutral-inverse rotate-45 border-t-0 border-l-0",{"w-[0.5rem] h-[0.8rem] border-b-[0.2rem] border-r-[0.2rem] -mt-[0.15rem]":e.size==="xs","w-[0.35rem] h-[0.7rem] border-b-[0.15rem] border-r-[0.15rem] -mt-[0.15rem]":e.size==="xxs"}])},null,2)):t("",!0)],2)],2),r.label?(i(),n("div",{key:0,for:l(u),class:o(["font-normal text-left",{"text-base mt-[0.1rem]":e.size==="xs","text-sm mt-[0.05rem]":e.size==="xxs","text-neutral-darker cursor-pointer":!r.disabled,"text-neutral-inactive cursor-not-allowed":r.disabled}])},g(r.label),11,j)):t("",!0)],2),l(v).default?(i(),n("div",{key:0,class:o(["font-normal text-left",{"text-base mt-[0.1rem]":e.size==="xs","text-sm mt-[0.05rem]":e.size==="xxs","text-neutral-darker":l(a)&&!r.disabled,"text-neutral-inactive":r.disabled}])},[S(r.$slots,"default")],2)):t("",!0)])]),_:3},16,["name"]))}});export{J as default,F as elInputCheckboxColors,H as elInputCheckboxModelValues,D as elInputCheckboxSizes};
2
2
  //# sourceMappingURL=ElInputCheckbox.vue.esm2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ElInputCheckbox.vue.esm2.js","sources":["../../../src/forms/ElInputCheckbox.vue"],"sourcesContent":["<script lang=\"ts\">\nexport const elInputCheckboxSizes = ['xs', 'xxs'] as const;\nexport type ElInputCheckboxSizes = (typeof elInputCheckboxSizes)[number];\n\nexport const elInputCheckboxColors = [\n 'primary',\n 'secondary',\n 'brand-blue',\n 'brand-green',\n 'green',\n 'purple',\n 'indigo',\n 'yellow',\n 'orange',\n 'cyan',\n 'red',\n 'pink',\n 'rose',\n 'gray',\n] as const;\nexport type ElInputCheckboxColors = (typeof elInputCheckboxColors)[number];\n\nexport const elInputCheckboxModelValues = [true, false, 'indeterminate'] as const;\nexport type ElInputCheckboxModelValues = (typeof elInputCheckboxModelValues)[number];\n</script>\n\n<script lang=\"ts\" setup>\nimport { computed, PropType, useSlots } from 'vue';\nimport ElInputContainer from '@/forms/ElInputContainer.vue';\nimport { useInput, withNumberElInputProps } from '@/forms/input';\n\nconst props = defineProps({\n ...withNumberElInputProps(),\n modelValue: {\n type: [Boolean, String] as PropType<ElInputCheckboxModelValues>,\n default: false,\n required: true,\n },\n size: {\n type: String as PropType<ElInputCheckboxSizes>,\n default: 'xs',\n required: false,\n },\n color: {\n type: String as PropType<ElInputCheckboxColors>,\n default: 'primary',\n required: false,\n },\n inputClass: {\n type: String,\n default: 'text-neutral-darker',\n },\n});\n\nconst emit = defineEmits<{\n (event: 'update:modelValue', val: ElInputCheckboxModelValues): void;\n}>();\n\nconst computedModelValue = computed(() => props.modelValue || false);\nconst computedValidation = computed(() => [props.validation]);\n\nconst slots = useSlots();\n\nconst { value, errorMessage, uuid } = useInput(\n computedModelValue,\n computedValidation,\n props.name,\n (newValue: ElInputCheckboxModelValues) => {\n emit('update:modelValue', newValue);\n },\n);\n\nconst toggleCheckbox = () => {\n if (props.disabled) return;\n if (props.modelValue === 'indeterminate') {\n value.value = true;\n } else {\n value.value = !value.value;\n }\n};\n</script>\n\n<template>\n <ElInputContainer\n v-bind=\"$attrs\"\n :error-message=\"props.errorMessage === false ? false : props.errorMessage || errorMessage\"\n :hidden-error-message=\"hiddenErrorMessage\"\n :no-icon=\"true\"\n :name=\"uuid\"\n >\n <input\n :id=\"uuid\"\n :name=\"props.name\"\n :checked=\"typeof modelValue === 'boolean' && modelValue\"\n :indeterminate=\"modelValue === 'indeterminate'\"\n type=\"checkbox\"\n class=\"sr-only\"\n :disabled=\"disabled\"\n :data-cy=\"label ? `${label.trim().replaceAll(' ', '')}-checkbox` : 'checkbox'\"\n hidden\n />\n\n <div class=\"flex gap-2 items-start\">\n <label\n role=\"checkbox\"\n class=\"flex items-start justify-center gap-2\"\n :class=\"{ 'cursor-not-allowed': disabled, 'cursor-pointer': !disabled }\"\n @click=\"toggleCheckbox\"\n >\n <!-- Checkbox container -->\n <div\n class=\"flex justify-center items-center\"\n :class=\"{\n 'h-6 w-6': size === 'xs',\n 'h-5 w-5': size === 'xxs',\n }\"\n >\n <!-- Checkbox border/background -->\n <div\n class=\"rounded focus:ring-0 flex items-center justify-center shrink-0\"\n :class=\"{\n 'h-5 w-5': size === 'xs',\n 'h-4 w-4': size === 'xxs',\n 'border-2': !value,\n 'border-neutral-inactive': !value && disabled,\n 'border-neutral-500': (color === 'primary' || color === 'secondary') && !value && !disabled,\n 'border-brandBlue-500': color === 'brand-blue' && !value && !disabled,\n 'border-brandGreen-500': color === 'brand-green' && !value && !disabled,\n 'border-green-500': color === 'green' && !value && !disabled,\n 'border-purple-500': color === 'purple' && !value && !disabled,\n 'border-indigo-500': color === 'indigo' && !value && !disabled,\n 'border-yellow-500': color === 'yellow' && !value && !disabled,\n 'border-orange-500': color === 'orange' && !value && !disabled,\n 'border-cyan-500': color === 'cyan' && !value && !disabled,\n 'border-red-500': color === 'red' && !value && !disabled,\n 'border-pink-500': color === 'pink' && !value && !disabled,\n 'border-rose-500': color === 'rose' && !value && !disabled,\n 'border-gray-500': color === 'gray' && !value && !disabled,\n 'bg-neutral-inactive': value && disabled,\n 'bg-primary-active': color === 'primary' && value && !disabled,\n 'bg-secondary-active': color === 'secondary' && value && !disabled,\n 'bg-brandBlue-500': color === 'brand-blue' && value && !disabled,\n 'bg-brandGreen-500': color === 'brand-green' && value && !disabled,\n 'bg-green-500': color === 'green' && value && !disabled,\n 'bg-purple-500': color === 'purple' && value && !disabled,\n 'bg-indigo-500': color === 'indigo' && value && !disabled,\n 'bg-yellow-500': color === 'yellow' && value && !disabled,\n 'bg-orange-500': color === 'orange' && value && !disabled,\n 'bg-cyan-500': color === 'cyan' && value && !disabled,\n 'bg-red-500': color === 'red' && value && !disabled,\n 'bg-pink-500': color === 'pink' && value && !disabled,\n 'bg-rose-500': color === 'rose' && value && !disabled,\n 'bg-gray-500': color === 'gray' && value && !disabled,\n inputClass,\n }\"\n >\n <!-- Minus icon -->\n <div\n v-if=\"modelValue === 'indeterminate'\"\n class=\"bg-white\"\n :class=\"{\n 'h-[0.2rem] w-3': size === 'xs',\n 'h-[0.15rem] w-[0.6rem]': size === 'xxs',\n }\"\n ></div>\n\n <!-- Check icon -->\n <div\n v-else-if=\"value\"\n class=\"border border-neutral-inverse rotate-45 border-t-0 border-l-0\"\n :class=\"{\n 'w-[0.5rem] h-[0.8rem] border-b-[0.2rem] border-r-[0.2rem] -mt-[0.15rem]': size === 'xs',\n 'w-[0.35rem] h-[0.7rem] border-b-[0.15rem] border-r-[0.15rem] -mt-[0.15rem]': size === 'xxs',\n }\"\n ></div>\n </div>\n </div>\n\n <div\n v-if=\"label\"\n :for=\"uuid\"\n class=\"font-normal text-left\"\n :class=\"{\n 'text-base mt-[0.1rem]': size === 'xs',\n 'text-sm mt-[0.05rem]': size === 'xxs',\n 'text-neutral-darker cursor-pointer': !disabled,\n 'text-neutral-inactive cursor-not-allowed': disabled,\n }\"\n >\n {{ label }}\n </div>\n </label>\n\n <div\n v-if=\"slots.default\"\n class=\"font-normal text-left\"\n :class=\"{\n 'text-base mt-[0.1rem]': size === 'xs',\n 'text-sm mt-[0.05rem]': size === 'xxs',\n 'text-neutral-darker': value && !disabled,\n 'text-neutral-inactive': disabled,\n }\"\n >\n <slot />\n </div>\n </div>\n </ElInputContainer>\n</template>\n"],"names":["elInputCheckboxSizes","elInputCheckboxColors","elInputCheckboxModelValues","props","__props","emit","__emit","computedModelValue","computed","computedValidation","slots","useSlots","value","errorMessage","uuid","useInput","newValue","toggleCheckbox"],"mappings":"ifACaA,EAAuB,CAAC,KAAM,KAAK,EAGnCC,EAAwB,CACnC,UACA,YACA,aACA,cACA,QACA,SACA,SACA,SACA,SACA,OACA,MACA,OACA,OACA,MACF,EAGaC,EAA6B,CAAC,GAAM,GAAO,eAAe,4SASvE,MAAMC,EAAQC,EAuBRC,EAAOC,EAIPC,EAAqBC,EAAS,IAAML,EAAM,YAAc,EAAK,EAC7DM,EAAqBD,EAAS,IAAM,CAACL,EAAM,UAAU,CAAC,EAEtDO,EAAQC,IAER,CAAE,MAAAC,EAAO,aAAAC,EAAc,KAAAC,CAAS,EAAAC,EACpCR,EACAE,EACAN,EAAM,KACLa,GAAyC,CACxCX,EAAK,oBAAqBW,CAAQ,CACpC,CAAA,EAGIC,EAAiB,IAAM,CACvBd,EAAM,WACNA,EAAM,aAAe,gBACvBS,EAAM,MAAQ,GAERA,EAAA,MAAQ,CAACA,EAAM,MACvB"}
1
+ {"version":3,"file":"ElInputCheckbox.vue.esm2.js","sources":["../../../src/forms/ElInputCheckbox.vue"],"sourcesContent":["<script lang=\"ts\">\nexport const elInputCheckboxSizes = ['xs', 'xxs'] as const;\nexport type ElInputCheckboxSizes = (typeof elInputCheckboxSizes)[number];\n\nexport const elInputCheckboxColors = [\n 'primary',\n 'secondary',\n 'brand-blue',\n 'brand-green',\n 'green',\n 'purple',\n 'indigo',\n 'yellow',\n 'orange',\n 'cyan',\n 'red',\n 'pink',\n 'rose',\n 'gray',\n] as const;\nexport type ElInputCheckboxColors = (typeof elInputCheckboxColors)[number];\n\nexport const elInputCheckboxModelValues = [true, false, 'indeterminate'] as const;\nexport type ElInputCheckboxModelValues = (typeof elInputCheckboxModelValues)[number];\n</script>\n\n<script lang=\"ts\" setup>\nimport { computed, PropType, useSlots } from 'vue';\nimport ElInputContainer from '@/forms/ElInputContainer.vue';\nimport { useInput, withNumberElInputProps } from '@/forms/input';\n\nconst props = defineProps({\n ...withNumberElInputProps(),\n modelValue: {\n type: [Boolean, String] as PropType<ElInputCheckboxModelValues>,\n default: false,\n required: true,\n },\n size: {\n type: String as PropType<ElInputCheckboxSizes>,\n default: 'xs',\n required: false,\n },\n color: {\n type: String as PropType<ElInputCheckboxColors>,\n default: 'primary',\n required: false,\n },\n inputClass: {\n type: String,\n default: 'text-neutral-darker',\n },\n});\n\nconst emit = defineEmits<{\n (event: 'update:modelValue', val: ElInputCheckboxModelValues): void;\n}>();\n\nconst computedModelValue = computed(() => props.modelValue || false);\nconst computedValidation = computed(() => [props.validation]);\n\nconst slots = useSlots();\n\nconst { value, errorMessage, uuid } = useInput(\n computedModelValue,\n computedValidation,\n props.name,\n (newValue: ElInputCheckboxModelValues) => {\n emit('update:modelValue', newValue);\n },\n);\n\nconst toggleCheckbox = () => {\n if (props.disabled) return;\n if (props.modelValue === 'indeterminate') {\n value.value = true;\n } else {\n value.value = !value.value;\n }\n};\n</script>\n\n<template>\n <ElInputContainer v-bind=\"$attrs\" :hidden-error-message=\"true\" :no-icon=\"true\" :name=\"uuid\">\n <input\n :id=\"uuid\"\n :name=\"props.name\"\n :checked=\"typeof modelValue === 'boolean' && modelValue\"\n :indeterminate=\"modelValue === 'indeterminate'\"\n type=\"checkbox\"\n class=\"sr-only\"\n :disabled=\"disabled\"\n :data-cy=\"label ? `${label.trim().replaceAll(' ', '')}-checkbox` : 'checkbox'\"\n hidden\n />\n\n <div class=\"flex gap-2 items-start\">\n <label\n role=\"checkbox\"\n class=\"flex items-start justify-center gap-2\"\n :class=\"{ 'cursor-not-allowed': disabled, 'cursor-pointer': !disabled }\"\n @click=\"toggleCheckbox\"\n >\n <!-- Checkbox container -->\n <div\n class=\"flex justify-center items-center\"\n :class=\"{\n 'h-6 w-6': size === 'xs',\n 'h-5 w-5': size === 'xxs',\n }\"\n >\n <!-- Checkbox border/background -->\n <div\n class=\"rounded focus:ring-0 flex items-center justify-center shrink-0\"\n :class=\"{\n 'h-5 w-5': size === 'xs',\n 'h-4 w-4': size === 'xxs',\n 'border-2': !value,\n 'border-neutral-inactive': !value && disabled,\n 'border-neutral-500': (color === 'primary' || color === 'secondary') && !value && !disabled,\n 'border-brandBlue-500': color === 'brand-blue' && !value && !disabled,\n 'border-brandGreen-500': color === 'brand-green' && !value && !disabled,\n 'border-green-500': color === 'green' && !value && !disabled,\n 'border-purple-500': color === 'purple' && !value && !disabled,\n 'border-indigo-500': color === 'indigo' && !value && !disabled,\n 'border-yellow-500': color === 'yellow' && !value && !disabled,\n 'border-orange-500': color === 'orange' && !value && !disabled,\n 'border-cyan-500': color === 'cyan' && !value && !disabled,\n 'border-pink-500': color === 'pink' && !value && !disabled,\n 'border-rose-500': color === 'rose' && !value && !disabled,\n 'border-gray-500': color === 'gray' && !value && !disabled,\n 'border-red-500':\n (color === 'red' && !value && !disabled) ||\n ((props.errorMessage === false ? false : props.errorMessage || errorMessage) && !hiddenErrorMessage),\n 'bg-neutral-inactive': value && disabled,\n 'bg-primary-active': color === 'primary' && value && !disabled,\n 'bg-secondary-active': color === 'secondary' && value && !disabled,\n 'bg-brandBlue-500': color === 'brand-blue' && value && !disabled,\n 'bg-brandGreen-500': color === 'brand-green' && value && !disabled,\n 'bg-green-500': color === 'green' && value && !disabled,\n 'bg-purple-500': color === 'purple' && value && !disabled,\n 'bg-indigo-500': color === 'indigo' && value && !disabled,\n 'bg-yellow-500': color === 'yellow' && value && !disabled,\n 'bg-orange-500': color === 'orange' && value && !disabled,\n 'bg-cyan-500': color === 'cyan' && value && !disabled,\n 'bg-red-500': color === 'red' && value && !disabled,\n 'bg-pink-500': color === 'pink' && value && !disabled,\n 'bg-rose-500': color === 'rose' && value && !disabled,\n 'bg-gray-500': color === 'gray' && value && !disabled,\n inputClass,\n }\"\n >\n <!-- Minus icon -->\n <div\n v-if=\"modelValue === 'indeterminate'\"\n class=\"bg-white\"\n :class=\"{\n 'h-[0.2rem] w-3': size === 'xs',\n 'h-[0.15rem] w-[0.6rem]': size === 'xxs',\n }\"\n ></div>\n\n <!-- Check icon -->\n <div\n v-else-if=\"value\"\n class=\"border border-neutral-inverse rotate-45 border-t-0 border-l-0\"\n :class=\"{\n 'w-[0.5rem] h-[0.8rem] border-b-[0.2rem] border-r-[0.2rem] -mt-[0.15rem]': size === 'xs',\n 'w-[0.35rem] h-[0.7rem] border-b-[0.15rem] border-r-[0.15rem] -mt-[0.15rem]': size === 'xxs',\n }\"\n ></div>\n </div>\n </div>\n\n <div\n v-if=\"label\"\n :for=\"uuid\"\n class=\"font-normal text-left\"\n :class=\"{\n 'text-base mt-[0.1rem]': size === 'xs',\n 'text-sm mt-[0.05rem]': size === 'xxs',\n 'text-neutral-darker cursor-pointer': !disabled,\n 'text-neutral-inactive cursor-not-allowed': disabled,\n }\"\n >\n {{ label }}\n </div>\n </label>\n\n <div\n v-if=\"slots.default\"\n class=\"font-normal text-left\"\n :class=\"{\n 'text-base mt-[0.1rem]': size === 'xs',\n 'text-sm mt-[0.05rem]': size === 'xxs',\n 'text-neutral-darker': value && !disabled,\n 'text-neutral-inactive': disabled,\n }\"\n >\n <slot />\n </div>\n </div>\n <template #after>\n <p\n v-if=\"!!(props.errorMessage === false ? false : props.errorMessage || errorMessage) && !hiddenErrorMessage\"\n class=\"text-error mt-1 text-sm ml-8\"\n >\n {{ props.errorMessage || errorMessage }}\n </p>\n </template>\n </ElInputContainer>\n</template>\n"],"names":["elInputCheckboxSizes","elInputCheckboxColors","elInputCheckboxModelValues","props","__props","emit","__emit","computedModelValue","computed","computedValidation","slots","useSlots","value","errorMessage","uuid","useInput","newValue","toggleCheckbox"],"mappings":"giBACaA,EAAuB,CAAC,KAAM,KAAK,EAGnCC,EAAwB,CACnC,UACA,YACA,aACA,cACA,QACA,SACA,SACA,SACA,SACA,OACA,MACA,OACA,OACA,MACF,EAGaC,EAA6B,CAAC,GAAM,GAAO,eAAe,4SASvE,MAAMC,EAAQC,EAuBRC,EAAOC,EAIPC,EAAqBC,EAAS,IAAML,EAAM,YAAc,EAAK,EAC7DM,EAAqBD,EAAS,IAAM,CAACL,EAAM,UAAU,CAAC,EAEtDO,EAAQC,IAER,CAAE,MAAAC,EAAO,aAAAC,EAAc,KAAAC,CAAS,EAAAC,EACpCR,EACAE,EACAN,EAAM,KACLa,GAAyC,CACxCX,EAAK,oBAAqBW,CAAQ,CACpC,CAAA,EAGIC,EAAiB,IAAM,CACvBd,EAAM,WACNA,EAAM,aAAe,gBACvBS,EAAM,MAAQ,GAERA,EAAA,MAAQ,CAACA,EAAM,MACvB"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),g=require("../ElDivider.vue.cjs2.js"),_=require("../ElIcon.vue.cjs2.js"),F=require("../ElVerticalTab.vue.cjs2.js");;/* empty css */require("../polyfills.cjs.js");require("vee-validate");require("../../node_modules/codice-fiscale-js/dist/codice.fiscale.commonjs2.cjs.js");require("../../node_modules/lodash/lodash.cjs.js");require("../tailwind.plugin.cjs.js");require("../../node_modules/@davincihealthcare/elty-design-system-foundations/dist/index.cjs.js");const T=require("../ElButton.vue.cjs2.js"),A=require("../_CustomTransition.vue.cjs2.js"),b=require("../../node_modules/@vueuse/core/index.cjs.js");require("./ElInputSelect.vue.cjs2.js");require("./ElInputText.vue.cjs2.js");require("./ElInputCheckbox.vue.cjs2.js");require("./ElInputDate.vue.cjs2.js");require("./ElInputFile.vue.cjs2.js");require("./ElInputMeasureUnit.vue.cjs2.js");require("./ElInputNumber.vue.cjs2.js");require("./ElInputPhone.vue.cjs2.js");require("./ElInputTextarea.vue.cjs2.js");require("../ElToast.vue.cjs2.js");require("./ElInputRadioButton.vue.cjs2.js");const P=require("../../node_modules/@vueuse/components/index.cjs.js");require("../composable/useModalStack.cjs.js");const q=require("./input.cjs.js");require("../../node_modules/swiper/shared/swiper-core.cjs.js");const j=require("../../node_modules/@vueuse/integrations/useFocusTrap.cjs.js"),z={class:"flex flex-row items-center gap-3 bg-neutral-surface rounded-2xl"},H=["name","placeholder"],$={class:"flex flex-col gap-y-6 overflow-y-hidden"},L={key:1,class:"flex flex-col items-center justify-center flex-1 gap-4 py-8 text-neutral-lighter"},U={class:"text-sm font-semibold text-neutral-darker"},G={class:"text-sm font-normal"},K={key:2,class:"flex py-2 overflow-y-hidden"},J={key:0,class:"text-sm font-medium text-neutral-darker"},Q={class:"flex flex-col gap-1 w-full"},W={key:0},X={key:1,class:"flex-1 pl-6 overflow-y-auto"},Y={key:3,class:"flex items-center gap-1 self-stretch"},Z={class:"text-sm font-normal text-neutral-darker"},ee={class:"fixed inset-0 transition-opacity"},te={ref:"backdrop",class:"absolute inset-0 bg-gray-500 opacity-75"},oe=["primary","secondary"],le=["default","filled","blank"],re=e.defineComponent({__name:"ElInputSearch",props:e.mergeModels({...q.withTextualElInputProps(),status:{type:String,default:"default"},text:{type:String,default:void 0},results:{type:Array,default:void 0},footer:{type:Object,default:void 0},blankResults:{type:Object,default:void 0},shouldHoverFirstResultOnOpen:{type:Boolean,default:!1},color:{type:String,default:"primary"}},{isOpen:{default:!0,required:!0,type:Boolean},isOpenModifiers:{}}),emits:e.mergeModels(["update:modelValue","onResultClick","onResultHover"],["update:isOpen"]),setup(o,{emit:B}){const r=o,d=B,f=e.useSlots(),E=b.useScrollLock(document.body),m=e.ref(null),V=e.computed(()=>r.modelValue),w=e.computed(()=>[r.validation]),v=e.computed(()=>({default:!r.results,filled:r.results&&r.results.length>0,blank:r.results&&r.results.length===0})),S=e.ref(!1),k=e.ref(!1),y=e.ref([]),s=e.ref(),{value:u,uuid:C,setValue:N}=q.useInput(V,w,r.name,t=>{d("update:modelValue",t==null?void 0:t.trim())}),p=e.ref(),{hasFocus:R,activate:O,deactivate:I}=j.useFocusTrap(p),c=e.useModel(o,"isOpen"),h=()=>{c.value=!1,s.value=void 0,u.value=""},M=t=>{var l,a,n;(n=(a=(l=y.value)==null?void 0:l.at(t))==null?void 0:a.$el)==null||n.scrollIntoView({block:"nearest"})},x=t=>{d("onResultClick",t),N(""),s.value=void 0},i=t=>{s.value=t,M(t),d("onResultHover",t)},D=()=>h();return b.onKeyStroke(["ArrowUp","ArrowDown","Enter","Escape"],t=>{var l;if(t.preventDefault(),t.stopPropagation(),R&&((l=r.results)!=null&&l.length))switch(t.key){case"ArrowUp":const a=Math.max((s.value??0)-1,0);i(a);break;case"ArrowDown":const n=s.value!==void 0?Math.min(s.value+1,r.results.length-1):0;i(n);break;case"Enter":s.value!==void 0&&x(s.value);break}t.key==="Escape"&&h()},{target:p}),e.watch([c,m],async()=>{var t,l;E.value=c.value,c.value?((t=m.value)==null||t.focus(),r.shouldHoverFirstResultOnOpen&&((l=r.results)!=null&&l.length)&&i(0),await e.nextTick(),O()):(I(),u.value="")}),(t,l)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createVNode(A.default,{name:"fade"},{default:e.withCtx(()=>[c.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"searchBarRef",ref:p,class:"fixed inset-x-0 top-0 z-40 flex justify-center max-h-full overflow-y-auto px-4 pt-20 pb-6 max-sm:p-0"},[e.withDirectives((e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["m-10 z-50 md:max-w-3xl w-full flex flex-col p-6 border rounded-2xl border-neutral-surface bg-neutral-surface shadow-md",{"gap-6":r.results}])},[e.createElementVNode("div",z,[e.createVNode(_.default,{name:"MagnifyingGlassIcon",class:"text-neutral-lighter w-6 h-6"}),e.withDirectives(e.createElementVNode("input",{ref_key:"searchInput",ref:m,"onUpdate:modelValue":l[0]||(l[0]=a=>e.isRef(u)?u.value=a:null),name:t.id||`${e.unref(C)}`,type:"text",class:"p-0 text-lg font-normal flex-1 outline-none border-none bg-neutral-surface focus:ring-none focus:border-none focus:outline-none border-transparent focus:border-transparent focus:ring-0",placeholder:t.placeholder,onFocusin:l[1]||(l[1]=()=>{k.value=!0,S.value=!1}),onFocusout:l[2]||(l[2]=()=>{k.value=!1})},null,40,H),[[e.vModelText,e.unref(u)]])]),e.createElementVNode("span",$,[o.results?(e.openBlock(),e.createBlock(g.default,{key:0,direction:"horizontal"})):e.createCommentVNode("",!0),o.blankResults&&v.value.blank?(e.openBlock(),e.createElementBlock("div",L,[e.createVNode(_.default,e.mergeProps(o.blankResults.icon,{class:"w-7 h-7"}),null,16),e.createElementVNode("p",U,e.toDisplayString(o.blankResults.primaryRow),1),e.createElementVNode("p",G,e.toDisplayString(o.blankResults.secondaryRow),1)])):e.createCommentVNode("",!0),o.results&&v.value.filled?(e.openBlock(),e.createElementBlock("div",K,[e.createElementVNode("div",{class:e.normalizeClass(["flex flex-col items-start flex-1 gap-6 overflow-y-auto max-h-50-screen",{"pr-6":e.unref(f).info&&o.results.length>0}])},[o.text?(e.openBlock(),e.createElementBlock("span",J,e.toDisplayString(o.text),1)):e.createCommentVNode("",!0),e.createElementVNode("div",Q,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.results,(a,n)=>(e.openBlock(),e.createBlock(F.default,e.mergeProps({key:n,ref_for:!0,ref_key:"itemRefs",ref:y,color:o.color},a,{status:s.value===n?"hover":"default",tabindex:"-1",onClick:()=>x(n),onMouseover:()=>i(n)}),null,16,["color","status","onClick","onMouseover"]))),128))])],2),e.unref(f).info?(e.openBlock(),e.createElementBlock("div",W,[e.createVNode(g.default,{direction:"vertical"})])):e.createCommentVNode("",!0),e.unref(f).info?(e.openBlock(),e.createElementBlock("div",X,[e.renderSlot(t.$slots,"info")])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),o.results&&o.footer?(e.openBlock(),e.createElementBlock("div",Y,[e.createElementVNode("span",Z,e.toDisplayString(o.footer.text),1),e.createVNode(e.unref(T.default),e.mergeProps(o.footer.button,{variant:"tertiary"}),null,16)])):e.createCommentVNode("",!0)])],2)),[[e.unref(P.VOnClickOutside),D]]),e.createElementVNode("div",ee,[e.createElementVNode("div",te,null,512)])],512)):e.createCommentVNode("",!0)]),_:3})]))}});exports.default=re;exports.elInputSearchColors=oe;exports.elInputSearchStatus=le;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),g=require("../ElDivider.vue.cjs2.js"),_=require("../ElIcon.vue.cjs2.js"),F=require("../ElVerticalTab.vue.cjs2.js");;/* empty css */require("../polyfills.cjs.js");require("vee-validate");require("../../node_modules/codice-fiscale-js/dist/codice.fiscale.commonjs2.cjs.js");require("../../node_modules/lodash/lodash.cjs.js");require("../tailwind.plugin.cjs.js");require("../../node_modules/@davincihealthcare/elty-design-system-foundations/dist/index.cjs.js");const T=require("../ElButton.vue.cjs2.js"),A=require("../_CustomTransition.vue.cjs2.js"),b=require("../../node_modules/@vueuse/core/index.cjs.js");require("./ElInputSelect.vue.cjs2.js");require("./ElInputText.vue.cjs2.js");require("./ElInputCheckbox.vue.cjs2.js");require("./ElInputDate.vue.cjs2.js");require("./ElInputFile.vue.cjs2.js");require("./ElInputMeasureUnit.vue.cjs2.js");require("./ElInputNumber.vue.cjs2.js");require("./ElInputPhone.vue.cjs2.js");require("./ElInputTextarea.vue.cjs2.js");require("../ElToast.vue.cjs2.js");require("./ElInputRadioButton.vue.cjs2.js");const P=require("../../node_modules/@vueuse/components/index.cjs.js"),B=require("./input.cjs.js");require("../../node_modules/swiper/shared/swiper-core.cjs.js");const j=require("../../node_modules/@vueuse/integrations/useFocusTrap.cjs.js"),z={class:"flex flex-row items-center gap-3 bg-neutral-surface rounded-2xl"},H=["name","placeholder"],$={class:"flex flex-col gap-y-6 overflow-y-hidden"},L={key:1,class:"flex flex-col items-center justify-center flex-1 gap-4 py-8 text-neutral-lighter"},U={class:"text-sm font-semibold text-neutral-darker"},G={class:"text-sm font-normal"},K={key:2,class:"flex py-2 overflow-y-hidden"},J={key:0,class:"text-sm font-medium text-neutral-darker"},Q={class:"flex flex-col gap-1 w-full"},W={key:0},X={key:1,class:"flex-1 pl-6 overflow-y-auto"},Y={key:3,class:"flex items-center gap-1 self-stretch"},Z={class:"text-sm font-normal text-neutral-darker"},ee={class:"fixed inset-0 transition-opacity"},te={ref:"backdrop",class:"absolute inset-0 bg-gray-500 opacity-75"},oe=["primary","secondary"],le=["default","filled","blank"],re=e.defineComponent({__name:"ElInputSearch",props:e.mergeModels({...B.withTextualElInputProps(),status:{type:String,default:"default"},text:{type:String,default:void 0},results:{type:Array,default:void 0},footer:{type:Object,default:void 0},blankResults:{type:Object,default:void 0},shouldHoverFirstResultOnOpen:{type:Boolean,default:!1},color:{type:String,default:"primary"}},{isOpen:{default:!0,required:!0,type:Boolean},isOpenModifiers:{}}),emits:e.mergeModels(["update:modelValue","onResultClick","onResultHover"],["update:isOpen"]),setup(o,{emit:q}){const r=o,d=q,f=e.useSlots(),E=b.useScrollLock(document.body),m=e.ref(null),V=e.computed(()=>r.modelValue),w=e.computed(()=>[r.validation]),v=e.computed(()=>({default:!r.results,filled:r.results&&r.results.length>0,blank:r.results&&r.results.length===0})),S=e.ref(!1),k=e.ref(!1),y=e.ref([]),s=e.ref(),{value:u,uuid:C,setValue:N}=B.useInput(V,w,r.name,t=>{d("update:modelValue",t==null?void 0:t.trim())}),p=e.ref(),{hasFocus:R,activate:O,deactivate:I}=j.useFocusTrap(p),c=e.useModel(o,"isOpen"),h=()=>{c.value=!1,s.value=void 0,u.value=""},M=t=>{var l,a,n;(n=(a=(l=y.value)==null?void 0:l.at(t))==null?void 0:a.$el)==null||n.scrollIntoView({block:"nearest"})},x=t=>{d("onResultClick",t),N(""),s.value=void 0},i=t=>{s.value=t,M(t),d("onResultHover",t)},D=()=>h();return b.onKeyStroke(["ArrowUp","ArrowDown","Enter","Escape"],t=>{var l;if(t.preventDefault(),t.stopPropagation(),R&&((l=r.results)!=null&&l.length))switch(t.key){case"ArrowUp":const a=Math.max((s.value??0)-1,0);i(a);break;case"ArrowDown":const n=s.value!==void 0?Math.min(s.value+1,r.results.length-1):0;i(n);break;case"Enter":s.value!==void 0&&x(s.value);break}t.key==="Escape"&&h()},{target:p}),e.watch([c,m],async()=>{var t,l;E.value=c.value,c.value?((t=m.value)==null||t.focus(),r.shouldHoverFirstResultOnOpen&&((l=r.results)!=null&&l.length)&&i(0),await e.nextTick(),O()):(I(),u.value="")}),(t,l)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createVNode(A.default,{name:"fade"},{default:e.withCtx(()=>[c.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"searchBarRef",ref:p,class:"fixed inset-x-0 top-0 z-40 flex justify-center max-h-full overflow-y-auto px-4 pt-20 pb-6 max-sm:p-0"},[e.withDirectives((e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["m-10 z-50 md:max-w-3xl w-full flex flex-col p-6 border rounded-2xl border-neutral-surface bg-neutral-surface shadow-md",{"gap-6":r.results}])},[e.createElementVNode("div",z,[e.createVNode(_.default,{name:"MagnifyingGlassIcon",class:"text-neutral-lighter w-6 h-6"}),e.withDirectives(e.createElementVNode("input",{ref_key:"searchInput",ref:m,"onUpdate:modelValue":l[0]||(l[0]=a=>e.isRef(u)?u.value=a:null),name:t.id||`${e.unref(C)}`,type:"text",class:"p-0 text-lg font-normal flex-1 outline-none border-none bg-neutral-surface focus:ring-none focus:border-none focus:outline-none border-transparent focus:border-transparent focus:ring-0",placeholder:t.placeholder,onFocusin:l[1]||(l[1]=()=>{k.value=!0,S.value=!1}),onFocusout:l[2]||(l[2]=()=>{k.value=!1})},null,40,H),[[e.vModelText,e.unref(u)]])]),e.createElementVNode("span",$,[o.results?(e.openBlock(),e.createBlock(g.default,{key:0,direction:"horizontal"})):e.createCommentVNode("",!0),o.blankResults&&v.value.blank?(e.openBlock(),e.createElementBlock("div",L,[e.createVNode(_.default,e.mergeProps(o.blankResults.icon,{class:"w-7 h-7"}),null,16),e.createElementVNode("p",U,e.toDisplayString(o.blankResults.primaryRow),1),e.createElementVNode("p",G,e.toDisplayString(o.blankResults.secondaryRow),1)])):e.createCommentVNode("",!0),o.results&&v.value.filled?(e.openBlock(),e.createElementBlock("div",K,[e.createElementVNode("div",{class:e.normalizeClass(["flex flex-col items-start flex-1 gap-6 overflow-y-auto max-h-50-screen",{"pr-6":e.unref(f).info&&o.results.length>0}])},[o.text?(e.openBlock(),e.createElementBlock("span",J,e.toDisplayString(o.text),1)):e.createCommentVNode("",!0),e.createElementVNode("div",Q,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.results,(a,n)=>(e.openBlock(),e.createBlock(F.default,e.mergeProps({key:n,ref_for:!0,ref_key:"itemRefs",ref:y,color:o.color},a,{status:s.value===n?"hover":"default",tabindex:"-1",onClick:()=>x(n),onMouseover:()=>i(n)}),null,16,["color","status","onClick","onMouseover"]))),128))])],2),e.unref(f).info?(e.openBlock(),e.createElementBlock("div",W,[e.createVNode(g.default,{direction:"vertical"})])):e.createCommentVNode("",!0),e.unref(f).info?(e.openBlock(),e.createElementBlock("div",X,[e.renderSlot(t.$slots,"info")])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),o.results&&o.footer?(e.openBlock(),e.createElementBlock("div",Y,[e.createElementVNode("span",Z,e.toDisplayString(o.footer.text),1),e.createVNode(e.unref(T.default),e.mergeProps(o.footer.button,{variant:"tertiary"}),null,16)])):e.createCommentVNode("",!0)])],2)),[[e.unref(P.VOnClickOutside),D]]),e.createElementVNode("div",ee,[e.createElementVNode("div",te,null,512)])],512)):e.createCommentVNode("",!0)]),_:3})]))}});exports.default=re;exports.elInputSearchColors=oe;exports.elInputSearchStatus=le;
2
2
  //# sourceMappingURL=ElInputSearch.vue.cjs2.js.map