ablok-components 0.0.39 → 0.0.42

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.
Files changed (22) hide show
  1. package/dist/ablok-components.es.js +173 -168
  2. package/dist/ablok-components.umd.js +1 -1
  3. package/dist/components/{base-button.vue.d.ts → form/base-button/base-button.vue.d.ts} +0 -0
  4. package/dist/components/{base-form.vue.d.ts → form/base-form/base-form.vue.d.ts} +0 -0
  5. package/dist/components/{check-group.vue.d.ts → form/check-group/check-group.vue.d.ts} +0 -0
  6. package/dist/components/{file-input.vue.d.ts → form/file-input/file-input.vue.d.ts} +0 -0
  7. package/dist/components/{form-input.vue.d.ts → form/form-input/form-input.vue.d.ts} +0 -0
  8. package/dist/components/{input-dropdown.vue.d.ts → form/input-dropdown/input-dropdown.vue.d.ts} +0 -0
  9. package/dist/components/{input-textarea.vue.d.ts → form/input-textarea/input-textarea.vue.d.ts} +0 -0
  10. package/dist/components/{media-upload.vue.d.ts → form/media-upload/media-upload.vue.d.ts} +0 -0
  11. package/dist/components/{radio-group.vue.d.ts → form/radio-group/radio-group.vue.d.ts} +0 -0
  12. package/dist/components/{loading-spinner.vue.d.ts → icon/loading-spinner/loading-spinner.vue.d.ts} +0 -0
  13. package/dist/components/{svg-icon.vue.d.ts → icon/svg-icon/svg-icon.vue.d.ts} +0 -0
  14. package/dist/components/{base-headline.vue.d.ts → text/base-headline/base-headline.vue.d.ts} +0 -0
  15. package/dist/components/{base-paragraph.vue.d.ts → text/base-paragraph/base-paragraph.vue.d.ts} +0 -0
  16. package/dist/env.d.ts +8 -0
  17. package/dist/index.d.ts +12 -12
  18. package/dist/style.css +1 -1
  19. package/dist/symbol-defs.svg +769 -224
  20. package/dist/{components → utilities}/helpers.d.ts +0 -0
  21. package/package.json +2 -1
  22. package/dist/components/base-button.story.vue.d.ts +0 -48
@@ -1 +1 @@
1
- (function(c,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(c=typeof globalThis<"u"?globalThis:c||self,e(c.AblokComponents={},c.Vue))})(this,function(c,e){"use strict";const y={class:"icon",preserveAspectRatio:"xMaxYMin"},b=["xlink:href"],g=e.defineComponent({__name:"svg-icon",props:{basePath:{type:String,default:"/symbol-defs.svg"},prefix:{type:String,default:"icon-"},symbol:{type:String,default:""},size:{type:String,default:"default"}},setup(t){return(i,l)=>(e.openBlock(),e.createElementBlock("i",{class:e.normalizeClass(["svg-icon",{[`svg-icon--${t.size}`]:t.size}])},[(e.openBlock(),e.createElementBlock("svg",y,[e.createElementVNode("use",{"xlink:href":`${t.basePath}#${t.prefix}${t.symbol}`,"xmlns:xlink":"http://www.w3.org/1999/xlink",x:"0",y:"0"},null,8,b)]))],2))}}),fe="",h={class:"loading-spinner d-block"},$={class:"loading-spinner__animation"},B={class:"d-block",version:"1.1",id:"L9",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",x:"0px",y:"0px",viewBox:"0 0 100 100","enable-background":"new 0 0 0 0","xml:space":"preserve"},k=["fill"],S=[e.createElementVNode("animateTransform",{attributeName:"transform",attributeType:"XML",type:"rotate",dur:"1s",from:"0 50 50",to:"360 50 50",repeatCount:"indefinite"},null,-1)],V=e.defineComponent({__name:"loading-spinner",props:{color:{type:String,default:"#fff"}},setup(t){return(i,l)=>(e.openBlock(),e.createElementBlock("span",h,[e.createElementVNode("span",$,[(e.openBlock(),e.createElementBlock("svg",B,[e.createElementVNode("path",{fill:t.color,d:"M73,50c0-12.7-10.3-23-23-23S27,37.3,27,50 M30.9,50c0-10.5,8.5-19.1,19.1-19.1S69.1,39.5,69.1,50"},S,8,k)]))]),e.renderSlot(i.$slots,"default")]))}}),ye="",x=e.defineComponent({__name:"base-headline",props:{tag:null,size:null,variant:null,text:null,className:null},setup(t){const i=t,l=e.computed(()=>i.tag||"p");return(a,o)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(l)),{class:e.normalizeClass(["headline",`headline--${t.size}${t.className||""}`])},{default:e.withCtx(()=>[e.renderSlot(a.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.text),1)])]),_:3},8,["class"]))}}),E=e.defineComponent({__name:"base-paragraph",props:{size:null,variant:null,text:null,className:null},setup(t){return(i,l)=>(e.openBlock(),e.createElementBlock("p",{class:e.normalizeClass(["base-paragraph",`base-paragraph--${t.size}${t.className||""}`])},[e.renderSlot(i.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.text),1)])],2))}}),N=["type","disabled","href","to"],C=e.defineComponent({__name:"base-button",props:{type:null,caption:null,variant:null,size:null,icon:null,href:null,to:null,disabled:{type:Boolean},pending:{type:Boolean},outlined:{type:Boolean},rounded:{type:Boolean},fab:{type:Boolean}},setup(t){const i=t,l=e.computed(()=>i.caption&&!i.fab);return(a,o)=>{const d=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("button",{type:t.type,disabled:t.disabled,href:t.href,to:t.to,class:e.normalizeClass(["base-button btn btn-primary",{disabled:t.disabled,pending:t.pending,rounded:t.rounded,outlined:t.outlined,fab:t.fab,"x-large":t.size==="x-large",large:t.size==="large",small:t.size==="small","x-small":t.size==="x-small"}])},[e.renderSlot(a.$slots,"default",{},()=>[t.icon?(e.openBlock(),e.createBlock(d,{key:0,id:t.icon,class:"base-button__caption"},null,8,["id"])):e.createCommentVNode("",!0),e.unref(l)?(e.openBlock(),e.createElementBlock("span",{key:1,class:e.normalizeClass(["base-button__caption",{"icon-padding":t.icon}])},e.toDisplayString(t.caption),3)):e.createCommentVNode("",!0)])],10,N)}}}),be="";function u(){return(new Date().valueOf()+Math.random()).toString(36)}const w={class:"input-group form-input__input-group"},q=["type","id","name","placeholder","pattern","disabled","read-only","required","maxlength","checked","aria-label"],z={key:0,class:"form-input__color-swatch"},M=["name","id","disabled","read-only","required","aria-label"],O=["for","innerHTML"],T=e.defineComponent({__name:"form-input",props:{modelValue:{type:[String,Number,Boolean],default:""},type:{type:String,default:"text"},name:{type:String,default:()=>u()},id:{type:String,default:()=>u()},label:{type:String,default:""},placeholder:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},maxlength:{type:Number},pattern:{type:String,default:null},checked:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:i}){const l=t,a=e.computed({get(){return l.modelValue},set(o){i("update:modelValue",o)}});return(o,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["form-input",`form-input--${t.type}`])},[e.createElementVNode("div",w,[e.renderSlot(o.$slots,"input-prepend"),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":d[0]||(d[0]=n=>e.isRef(a)?a.value=n:null),type:t.type==="color"?"text":t.type,id:t.id,name:t.name,placeholder:t.placeholder,pattern:t.pattern,disabled:t.disabled,"read-only":t.readOnly,required:t.required,maxlength:t.maxlength,checked:t.checked,class:e.normalizeClass(["form-control",{"form-check-input":t.type==="checkbox"}]),"aria-label":t.label},null,10,q),[[e.vModelDynamic,e.unref(a)]]),e.renderSlot(o.$slots,"input-append",{},()=>[t.type==="color"?(e.openBlock(),e.createElementBlock("span",z,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":d[1]||(d[1]=n=>e.isRef(a)?a.value=n:null),type:"color",name:`${t.name}-color`,id:`${t.id}-color`,disabled:t.disabled,"read-only":t.readOnly,required:t.required,class:"form-control","aria-label":t.label},null,8,M),[[e.vModelText,e.unref(a)]])])):e.createCommentVNode("",!0)])]),e.renderSlot(o.$slots,"label",{},()=>[e.createElementVNode("label",{for:t.id,class:e.normalizeClass(["form-input__label",{"form-check-label":t.type==="checkbox"}]),innerHTML:`${t.label}${t.required?" *":""}`},null,10,O)])],2))}}),ge="",D={class:"form-input form-input--textarea"},L=["type","id","name","placeholder","pattern","disabled","read-only","required","maxlength","aria-label"],U={key:0,class:"form-input__color-swatch"},I=["name","id","disabled","read-only","required","aria-label"],R=["for","innerHTML"],A=e.defineComponent({__name:"input-textarea",props:{modelValue:{type:String,default:""},type:{type:String,default:"text"},name:{type:String,default:()=>u()},id:{type:String,default:()=>u()},label:{type:String,default:""},placeholder:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},maxlength:{type:Number},pattern:{type:String,default:null},checked:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:i}){const l=t,a=e.computed({get(){return l.modelValue},set(o){i("update:modelValue",o)}});return(o,d)=>(e.openBlock(),e.createElementBlock("div",D,[e.renderSlot(o.$slots,"input-prepend"),e.withDirectives(e.createElementVNode("textarea",{"onUpdate:modelValue":d[0]||(d[0]=n=>e.isRef(a)?a.value=n:null),type:t.type==="color"?"text":t.type,id:t.id,name:t.name,placeholder:t.placeholder,pattern:t.pattern,disabled:t.disabled,"read-only":t.readOnly,required:t.required,maxlength:t.maxlength,class:e.normalizeClass(["form-control",{}]),"aria-label":t.label},null,8,L),[[e.vModelText,e.unref(a)]]),e.renderSlot(o.$slots,"input-append",{},()=>[t.type==="color"?(e.openBlock(),e.createElementBlock("span",U,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":d[1]||(d[1]=n=>e.isRef(a)?a.value=n:null),type:"color",name:`${t.name}-color`,id:`${t.id}-color`,disabled:t.disabled,"read-only":t.readOnly,required:t.required,class:"form-control","aria-label":t.label},null,8,I),[[e.vModelText,e.unref(a)]])])):e.createCommentVNode("",!0)]),e.renderSlot(o.$slots,"label",{},()=>[e.createElementVNode("label",{for:t.id,class:e.normalizeClass(["form-input__label",{"form-check-label":t.type==="checkbox"}]),innerHTML:`${t.label}${t.required?" *":""}`},null,10,R)])]))}}),F={class:"radio-group"},P=["for"],H=e.defineComponent({__name:"check-group",props:{modelValue:{default:[]},options:{type:Array,default:[]},name:{type:String,default:()=>u()},id:{type:String,default:()=>u()},label:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1}},emits:["change","update:modelValue"],setup(t,{emit:i}){const l=t,a=e.ref([]);return e.watch(()=>l.modelValue,(o,d)=>{a.value=l.options.map(n=>n.value?l.modelValue.some(r=>r["value "]===n.value):l.modelValue.some(r=>r===n))},{immediate:!0}),e.watch(a,(o,d)=>{const n=o.reduce((r,s,m)=>{const f=s&&l.options[m]?[l.options[m]||l.options[m]]:[];return[...r,...f]},[]);i("update:modelValue",n)},{deep:!0}),e.onBeforeMount(()=>{}),(o,d)=>{const n=e.resolveComponent("form-input");return e.openBlock(),e.createElementBlock("div",F,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,(r,s)=>(e.openBlock(),e.createBlock(n,{key:s,modelValue:e.unref(a)[s],"onUpdate:modelValue":m=>e.unref(a)[s]=m,type:"checkbox",name:t.name,id:`${t.id}-${s}`,label:`${r.text||r}${t.required?" *":""}`,disabled:t.disabled,"read-only":t.readOnly,required:t.required},null,8,["modelValue","onUpdate:modelValue","name","id","label","disabled","read-only","required"]))),128)),e.createElementVNode("label",{for:t.id},[e.renderSlot(o.$slots,"label",{},()=>[e.createTextVNode(e.toDisplayString(t.label),1)])],8,P)])}}}),j={class:"radio-group"},G=["for"],J=e.defineComponent({__name:"radio-group",props:{modelValue:{default:!1},options:{type:Array,default:[]},name:{type:String,default:()=>u()},id:{type:String,default:()=>u()},label:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1}},emits:["change","update:modelValue"],setup(t,{emit:i}){const l=t;e.ref(l.options.map(o=>o.value===l.modelValue));function a(o){i("update:modelValue",o)}return e.onBeforeMount(()=>{}),(o,d)=>{const n=e.resolveComponent("form-input");return e.openBlock(),e.createElementBlock("div",j,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,(r,s)=>(e.openBlock(),e.createBlock(n,{key:s,type:"radio",name:t.name,id:`${t.id}-${s}`,value:r.value||r,label:`${r.text||r}${t.required?" *":""}`,checked:r.value?r.value===t.modelValue:r===t.modelValue,disabled:t.disabled,"read-only":t.readOnly,required:t.required,onChange:m=>a(r)},null,8,["name","id","value","label","checked","disabled","read-only","required","onChange"]))),128)),e.createElementVNode("label",{for:t.id},[e.renderSlot(o.$slots,"label",{},()=>[e.createTextVNode(e.toDisplayString(t.label),1)])],8,G)])}}}),X={class:"input input-dropdown"},Y={class:"dropdown"},K={class:"btn-group",role:"group"},Q=["id","disabled"],W=["aria-labelledby"],Z=["onClick"],_=["for"],v=e.defineComponent({__name:"input-dropdown",props:{modelValue:{type:[String,Number,Boolean,Object],default:""},name:{type:String,default:()=>u()},id:{type:String,default:()=>u()},label:{type:String,default:""},placeholder:{type:String,default:"Please select"},options:{type:Array,default:[]},variant:{type:String,default:""},color:{type:String,default:""},disabled:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},required:{type:Boolean,default:!1},outline:{type:Boolean,default:!0},resetOption:{type:Boolean,default:!0}},emits:["update:modelValue"],setup(t,{emit:i}){const l=t;e.computed({get(){return l.modelValue},set(n){i("update:modelValue",n)}});function a(n){i("update:modelValue",n)}const o=e.computed(()=>[{text:"Please select"},...l.options.map(n=>typeof n=="string"?{value:n,text:n}:n)]),d=e.computed(()=>[...l.options].find(n=>JSON.stringify(n.value)===JSON.stringify(l.modelValue)));return(n,r)=>(e.openBlock(),e.createElementBlock("div",X,[e.createElementVNode("div",Y,[e.createElementVNode("div",K,[e.createElementVNode("button",{class:e.normalizeClass(["btn dropdown-toggle",{[`btn-${t.variant}`]:t.variant,[`btn-${t.color}`]:t.color,[`btn-${t.disabled}`]:t.disabled,[`btn-outline-${t.color||"dark"}`]:t.outline}]),type:"button",id:t.id,"data-bs-toggle":"dropdown","aria-expanded":"false",disabled:t.disabled},e.toDisplayString(e.unref(d)?e.unref(d).text:t.placeholder),11,Q),e.createElementVNode("ul",{class:"dropdown-menu","aria-labelledby":t.id},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(o),(s,m)=>(e.openBlock(),e.createElementBlock("li",{key:m},[e.renderSlot(n.$slots,"option",{},()=>[e.createElementVNode("a",{class:"dropdown-item",onClick:e.withModifiers(f=>a(s.value),["prevent"])},e.toDisplayString(s.text),9,Z)])]))),128))],8,W)])]),e.createElementVNode("label",{for:t.id},[e.renderSlot(n.$slots,"label",{},()=>[e.createTextVNode(e.toDisplayString(t.label),1)])],8,_)]))}}),ee=["id","name","multiple","accept"],te={class:"form-input__input-group input-group"},le=["value","id","name"],ae=["for"],ne=["for","innerHTML"],oe=e.defineComponent({__name:"file-input",props:{modelValue:{type:Array,default:[]},name:{type:String,default:()=>u()},id:{type:String,default:()=>u()},label:{type:String,default:""},placeholder:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},pattern:{type:String,default:null},multiple:{type:Boolean,default:!1},accept:{type:String}},emits:["update:modelValue"],setup(t,{emit:i}){function l(d){const n=d.target&&d.target.files;n&&(a.splice(0,a.length),Array.from(n).forEach(r=>{a.push(r)}))}const a=e.reactive([]),o=e.computed(()=>a&&a.map(d=>d.name));return e.computed(()=>a.map(d=>URL.createObjectURL(d))),e.watch(()=>a,(d,n)=>{console.log("file input",d),i("update:modelValue",d)},{deep:!0}),(d,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["form-input file-input","file-input--primary"])},[e.createElementVNode("input",{type:"file",id:t.id,name:t.name,class:"d-none",onChange:l,multiple:t.multiple,accept:t.accept},null,40,ee),e.createElementVNode("div",te,[e.renderSlot(d.$slots,"input-prepend"),e.createElementVNode("input",{type:"text",value:e.unref(o),id:t.id,name:t.name,class:"form-control"},null,8,le),e.renderSlot(d.$slots,"input-append",{},()=>[e.createElementVNode("label",{for:t.id,class:"btn btn-outline-dark"}," Select Image ",8,ae)])]),e.renderSlot(d.$slots,"label",{},()=>[e.createElementVNode("label",{for:t.id,class:"form-input__label",innerHTML:`${t.label}${t.required?" *":""}`},null,8,ne)])]))}}),de={class:"media-upload"},ie=["src"],re=["onClick"],ce=["for"];async function se(t){return await new Promise(i=>{let l=new FileReader;l.onload=()=>i(l.result),l.readAsDataURL(t)})}const me=e.defineComponent({__name:"media-upload",props:{modelValue:{type:Array,default:[]},src:{type:String},name:{type:String,default:()=>u()},id:{type:String,default:()=>u()},label:{type:String,default:""},placeholder:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},pattern:{type:String,default:null},multiple:{type:Boolean,default:!1},accept:{type:String,default:"image/*"}},emits:["update:modelValue","update:src"],setup(t,{emit:i}){const l=t,a=e.ref([]),o=e.ref([]),d=e.computed(()=>l.modelValue.length?l.modelValue:l.src?[{type:"",src:l.src}]:o.value);e.watch(()=>a,async(r,s)=>{o.value=await Promise.all(r.value.map(async m=>({src:await se(m),type:m.type})))},{deep:!0}),e.watch(()=>o,async(r,s)=>{const m=l.multiple?o.value:[o.value[0]];i("update:modelValue",m),l.multiple||i("update:src",o.value[0]&&o.value[0].src)},{deep:!0});function n(r){a.value.splice(r,1)}return(r,s)=>{const m=e.resolveComponent("svg-icon"),f=e.resolveComponent("file-input");return e.openBlock(),e.createElementBlock("div",de,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(d),(p,ue)=>(e.openBlock(),e.createElementBlock("div",{key:p.src,class:"media-upload__thumbnail"},[e.createElementVNode("img",{src:p.src,class:"img-thumbnail rounded"},null,8,ie),e.createElementVNode("button",{onClick:e.withModifiers($e=>n(ue),["prevent"]),class:"btn btn--close"},[e.createVNode(m,{symbol:"x"})],8,re)]))),128)),e.createVNode(f,{modelValue:a.value,"onUpdate:modelValue":s[0]||(s[0]=p=>a.value=p),id:t.id,name:t.name,accept:t.accept,class:"d-none"},null,8,["modelValue","id","name","accept"]),e.createElementVNode("label",{for:t.id,class:"btn btn-outline-dark"}," Select Image ",8,ce)])}}}),he="";c.BaseButton=C,c.BaseHeadline=x,c.BaseParagraph=E,c.CheckGroup=H,c.FileInput=oe,c.FormInput=T,c.InputDropdown=v,c.InputTextarea=A,c.LoadingSpinner=V,c.MediaUpload=me,c.RadioGroup=J,c.SvgIcon=g,Object.defineProperties(c,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
1
+ (function(s,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(s=typeof globalThis<"u"?globalThis:s||self,e(s.AblokComponents={},s.Vue))})(this,function(s,e){"use strict";const y={class:"icon",preserveAspectRatio:"xMaxYMin"},b=["xlink:href"],g=e.defineComponent({__name:"svg-icon",props:{basePath:{type:String,default:"/symbol-defs.svg"},prefix:{type:String,default:"icon-"},symbol:{type:String,default:""},size:{type:String,default:"default"}},setup(t){return(i,l)=>(e.openBlock(),e.createElementBlock("i",{class:e.normalizeClass(["svg-icon",{[`svg-icon--${t.size}`]:t.size}])},[(e.openBlock(),e.createElementBlock("svg",y,[e.createElementVNode("use",{"xlink:href":`${t.basePath}#${t.prefix}${t.symbol}`,"xmlns:xlink":"http://www.w3.org/1999/xlink",x:"0",y:"0"},null,8,b)]))],2))}}),fe="",h={class:"loading-spinner d-block"},$={class:"loading-spinner__animation"},k={class:"d-block",version:"1.1",id:"L9",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",x:"0px",y:"0px",viewBox:"0 0 100 100","enable-background":"new 0 0 0 0","xml:space":"preserve"},B=["fill"],S=[e.createElementVNode("animateTransform",{attributeName:"transform",attributeType:"XML",type:"rotate",dur:"1s",from:"0 50 50",to:"360 50 50",repeatCount:"indefinite"},null,-1)],V=e.defineComponent({__name:"loading-spinner",props:{color:{type:String,default:"#fff"}},setup(t){return(i,l)=>(e.openBlock(),e.createElementBlock("span",h,[e.createElementVNode("span",$,[(e.openBlock(),e.createElementBlock("svg",k,[e.createElementVNode("path",{fill:t.color,d:"M73,50c0-12.7-10.3-23-23-23S27,37.3,27,50 M30.9,50c0-10.5,8.5-19.1,19.1-19.1S69.1,39.5,69.1,50"},S,8,B)]))]),e.renderSlot(i.$slots,"default")]))}}),ye="",x=e.defineComponent({__name:"base-headline",props:{tag:null,size:null,variant:null,text:null,className:null},setup(t){const i=t,l=e.computed(()=>i.tag||"p");return(d,n)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(l)),{class:e.normalizeClass(["headline",`headline--${t.size}${t.className||""}`])},{default:e.withCtx(()=>[e.renderSlot(d.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.text),1)])]),_:3},8,["class"]))}}),E=e.defineComponent({__name:"base-paragraph",props:{size:null,variant:null,text:null,className:null},setup(t){return(i,l)=>(e.openBlock(),e.createElementBlock("p",{class:e.normalizeClass(["base-paragraph",`base-paragraph--${t.size}${t.className||""}`])},[e.renderSlot(i.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.text),1)])],2))}}),N=["type","disabled","href","to"],C=e.defineComponent({__name:"base-button",props:{type:null,caption:null,variant:null,size:null,icon:null,href:null,to:null,disabled:{type:Boolean},pending:{type:Boolean},outlined:{type:Boolean},rounded:{type:Boolean},fab:{type:Boolean}},setup(t){const i=t,l=e.computed(()=>i.caption&&!i.fab);return(d,n)=>{const r=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("button",{type:t.type,disabled:t.disabled,href:t.href,to:t.to,class:e.normalizeClass(["base-button btn btn-primary",{disabled:t.disabled,pending:t.pending,rounded:t.rounded,outlined:t.outlined,fab:t.fab,"x-large":t.size==="x-large",large:t.size==="large",small:t.size==="small","x-small":t.size==="x-small"}])},[e.renderSlot(d.$slots,"default",{},()=>[t.icon?(e.openBlock(),e.createBlock(r,{key:0,id:t.icon,class:"base-button__caption"},null,8,["id"])):e.createCommentVNode("",!0),e.unref(l)?(e.openBlock(),e.createElementBlock("span",{key:1,class:e.normalizeClass(["base-button__caption",{"icon-padding":t.icon}])},e.toDisplayString(t.caption),3)):e.createCommentVNode("",!0)])],10,N)}}}),be="";function u(){return(new Date().valueOf()+Math.random()).toString(36)}const w={class:"input-group form-input__input-group"},q=["type","id","name","placeholder","pattern","disabled","read-only","required","maxlength","checked","aria-label"],z={key:0,class:"form-input__color-swatch"},M=["name","id","disabled","read-only","required","aria-label"],O=["for","innerHTML"],T=e.defineComponent({__name:"form-input",props:{modelValue:{type:[String,Number,Boolean],default:""},type:{type:String,default:"text"},name:{type:String,default:()=>u()},id:{type:String,default:()=>u()},label:{type:String,default:""},placeholder:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},maxlength:{type:Number},pattern:{type:String,default:null},checked:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:i}){const l=t,d=e.computed({get(){return l.modelValue},set(n){i("update:modelValue",n)}});return(n,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["form-input",`form-input--${t.type}`])},[e.createElementVNode("div",w,[e.renderSlot(n.$slots,"input-prepend"),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":r[0]||(r[0]=o=>e.isRef(d)?d.value=o:null),type:t.type==="color"?"text":t.type,id:t.id,name:t.name,placeholder:t.placeholder,pattern:t.pattern,disabled:t.disabled,"read-only":t.readOnly,required:t.required,maxlength:t.maxlength,checked:t.checked,class:e.normalizeClass(["form-control",{"form-check-input":t.type==="checkbox"}]),"aria-label":t.label},null,10,q),[[e.vModelDynamic,e.unref(d)]]),e.renderSlot(n.$slots,"input-append",{},()=>[t.type==="color"?(e.openBlock(),e.createElementBlock("span",z,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":r[1]||(r[1]=o=>e.isRef(d)?d.value=o:null),type:"color",name:`${t.name}-color`,id:`${t.id}-color`,disabled:t.disabled,"read-only":t.readOnly,required:t.required,class:"form-control","aria-label":t.label},null,8,M),[[e.vModelText,e.unref(d)]])])):e.createCommentVNode("",!0)])]),e.renderSlot(n.$slots,"label",{},()=>[e.createElementVNode("label",{for:t.id,class:e.normalizeClass(["form-input__label",{"form-check-label":t.type==="checkbox"}]),innerHTML:`${t.label}${t.required?" *":""}`},null,10,O)])],2))}}),ge="",D={class:"form-input form-input--textarea"},L=["type","id","name","placeholder","pattern","disabled","read-only","required","maxlength","aria-label"],U={key:0,class:"form-input__color-swatch"},I=["name","id","disabled","read-only","required","aria-label"],R=["for","innerHTML"],A=e.defineComponent({__name:"input-textarea",props:{modelValue:{type:String,default:""},type:{type:String,default:"text"},name:{type:String,default:()=>u()},id:{type:String,default:()=>u()},label:{type:String,default:""},placeholder:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},maxlength:{type:Number},pattern:{type:String,default:null},checked:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:i}){const l=t,d=e.computed({get(){return l.modelValue},set(n){i("update:modelValue",n)}});return(n,r)=>(e.openBlock(),e.createElementBlock("div",D,[e.renderSlot(n.$slots,"input-prepend"),e.withDirectives(e.createElementVNode("textarea",{"onUpdate:modelValue":r[0]||(r[0]=o=>e.isRef(d)?d.value=o:null),type:t.type==="color"?"text":t.type,id:t.id,name:t.name,placeholder:t.placeholder,pattern:t.pattern,disabled:t.disabled,"read-only":t.readOnly,required:t.required,maxlength:t.maxlength,class:e.normalizeClass(["form-control",{}]),"aria-label":t.label},null,8,L),[[e.vModelText,e.unref(d)]]),e.renderSlot(n.$slots,"input-append",{},()=>[t.type==="color"?(e.openBlock(),e.createElementBlock("span",U,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":r[1]||(r[1]=o=>e.isRef(d)?d.value=o:null),type:"color",name:`${t.name}-color`,id:`${t.id}-color`,disabled:t.disabled,"read-only":t.readOnly,required:t.required,class:"form-control","aria-label":t.label},null,8,I),[[e.vModelText,e.unref(d)]])])):e.createCommentVNode("",!0)]),e.renderSlot(n.$slots,"label",{},()=>[e.createElementVNode("label",{for:t.id,class:e.normalizeClass(["form-input__label",{"form-check-label":t.type==="checkbox"}]),innerHTML:`${t.label}${t.required?" *":""}`},null,10,R)])]))}}),F={class:"radio-group"},P=["for"],H=e.defineComponent({__name:"check-group",props:{modelValue:{default:[]},options:{type:Array,default:[]},name:{type:String,default:()=>u()},id:{type:String,default:()=>u()},label:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1}},emits:["change","update:modelValue"],setup(t,{emit:i}){const l=t,d=e.ref([]);return e.watch(()=>l.modelValue,(n,r)=>{d.value=l.options.map(o=>o.value?l.modelValue.some(a=>a["value "]===o.value):l.modelValue.some(a=>a===o))},{immediate:!0}),e.watch(d,(n,r)=>{const o=n.reduce((a,c,m)=>{const f=c&&l.options[m]?[l.options[m]||l.options[m]]:[];return[...a,...f]},[]);i("update:modelValue",o)},{deep:!0}),e.onBeforeMount(()=>{}),(n,r)=>{const o=e.resolveComponent("form-input");return e.openBlock(),e.createElementBlock("div",F,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,(a,c)=>(e.openBlock(),e.createBlock(o,{key:c,modelValue:e.unref(d)[c],"onUpdate:modelValue":m=>e.unref(d)[c]=m,type:"checkbox",name:t.name,id:`${t.id}-${c}`,label:`${a.text||a}${t.required?" *":""}`,disabled:t.disabled,"read-only":t.readOnly,required:t.required},null,8,["modelValue","onUpdate:modelValue","name","id","label","disabled","read-only","required"]))),128)),e.createElementVNode("label",{for:t.id},[e.renderSlot(n.$slots,"label",{},()=>[e.createTextVNode(e.toDisplayString(t.label),1)])],8,P)])}}}),j={class:"radio-group"},G=["for"],J=e.defineComponent({__name:"radio-group",props:{modelValue:{default:!1},options:{type:Array,default:[]},name:{type:String,default:()=>u()},id:{type:String,default:()=>u()},label:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1}},emits:["change","update:modelValue"],setup(t,{emit:i}){const l=t;e.ref(l.options.map(n=>n.value===l.modelValue));function d(n){i("update:modelValue",n)}return e.onBeforeMount(()=>{}),(n,r)=>{const o=e.resolveComponent("form-input");return e.openBlock(),e.createElementBlock("div",j,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,(a,c)=>(e.openBlock(),e.createBlock(o,{key:c,type:"radio",name:t.name,id:`${t.id}-${c}`,value:a.value||a,label:`${a.text||a}${t.required?" *":""}`,checked:a.value?a.value===t.modelValue:a===t.modelValue,disabled:t.disabled,"read-only":t.readOnly,required:t.required,onChange:m=>d(a)},null,8,["name","id","value","label","checked","disabled","read-only","required","onChange"]))),128)),e.createElementVNode("label",{for:t.id},[e.renderSlot(n.$slots,"label",{},()=>[e.createTextVNode(e.toDisplayString(t.label),1)])],8,G)])}}}),X={class:"input input-dropdown"},Y={class:"dropdown"},K={class:"btn-group",role:"group"},Q=["id","disabled"],W=["aria-labelledby"],Z=["onClick"],_=["for"],v=e.defineComponent({__name:"input-dropdown",props:{modelValue:{type:[String,Number,Boolean,Object],default:""},name:{type:String,default:()=>u()},id:{type:String,default:()=>u()},label:{type:String,default:""},placeholder:{type:String,default:"Please select"},options:{type:Array,default:[]},variant:{type:String,default:""},color:{type:String,default:""},disabled:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},required:{type:Boolean,default:!1},outline:{type:Boolean,default:!0},resetOption:{type:Boolean,default:!0}},emits:["update:modelValue"],setup(t,{emit:i}){const l=t;e.computed({get(){return l.modelValue},set(o){i("update:modelValue",o)}});function d(o){i("update:modelValue",o)}const n=e.computed(()=>[{text:"Please select"},...l.options.map(o=>typeof o=="string"?{value:o,text:o}:o)]),r=e.computed(()=>[...l.options].find(o=>JSON.stringify(o.value)===JSON.stringify(l.modelValue)));return(o,a)=>(e.openBlock(),e.createElementBlock("div",X,[e.createElementVNode("div",Y,[e.createElementVNode("div",K,[e.createElementVNode("button",{class:e.normalizeClass(["btn dropdown-toggle",{[`btn-${t.variant}`]:t.variant,[`btn-${t.color}`]:t.color,[`btn-${t.disabled}`]:t.disabled,[`btn-outline-${t.color||"dark"}`]:t.outline}]),type:"button",id:t.id,"data-bs-toggle":"dropdown","aria-expanded":"false",disabled:t.disabled},e.toDisplayString(e.unref(r)?e.unref(r).text:t.placeholder),11,Q),e.createElementVNode("ul",{class:"dropdown-menu","aria-labelledby":t.id},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(n),(c,m)=>(e.openBlock(),e.createElementBlock("li",{key:m},[e.renderSlot(o.$slots,"option",{},()=>[e.createElementVNode("a",{class:"dropdown-item",onClick:e.withModifiers(f=>d(c.value),["prevent"])},e.toDisplayString(c.text),9,Z)])]))),128))],8,W)])]),e.createElementVNode("label",{for:t.id},[e.renderSlot(o.$slots,"label",{},()=>[e.createTextVNode(e.toDisplayString(t.label),1)])],8,_)]))}}),ee=["id","name","multiple","accept"],te={class:"form-input__input-group input-group"},le=["value","id","name"],ae=["for"],ne=["for","innerHTML"],oe=e.defineComponent({__name:"file-input",props:{modelValue:{type:Array,default:[]},name:{type:String,default:()=>u()},id:{type:String,default:()=>u()},label:{type:String,default:""},placeholder:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},pattern:{type:String,default:null},multiple:{type:Boolean,default:!1},accept:{type:String}},emits:["update:modelValue"],setup(t,{emit:i}){const l=t;function d(a){const c=a.target&&a.target.files;c&&(r.splice(0,r.length),Array.from(c).forEach(m=>{r.push(m)}))}const n=e.ref(),r=e.reactive([]),o=e.computed(()=>r&&r.map(a=>a.name));return e.computed(()=>r.map(a=>URL.createObjectURL(a))),e.watch(()=>l.modelValue,(a,c)=>{a.length===0&&(n.value.value=null)},{deep:!0}),e.watch(()=>r,(a,c)=>{i("update:modelValue",a)},{deep:!0}),(a,c)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["form-input file-input","file-input--primary"])},[e.createElementVNode("input",{ref_key:"input",ref:n,type:"file",id:t.id,name:t.name,class:"d-none",onChange:d,multiple:t.multiple,accept:t.accept},null,40,ee),e.createElementVNode("div",te,[e.renderSlot(a.$slots,"input-prepend"),e.createElementVNode("input",{type:"text",value:e.unref(o),id:t.id,name:t.name,class:"form-control"},null,8,le),e.renderSlot(a.$slots,"input-append",{},()=>[e.createElementVNode("label",{for:t.id,class:"btn btn-outline-dark"}," Select Image ",8,ae)])]),e.renderSlot(a.$slots,"label",{},()=>[e.createElementVNode("label",{for:t.id,class:"form-input__label",innerHTML:`${t.label}${t.required?" *":""}`},null,8,ne)])]))}}),de={class:"media-upload"},re=["src"],ie=["onClick"],ce=["for"];async function se(t){return await new Promise(i=>{let l=new FileReader;l.onload=()=>i(l.result),l.readAsDataURL(t)})}const me=e.defineComponent({__name:"media-upload",props:{modelValue:{type:Array,default:[]},src:{type:String},name:{type:String,default:()=>u()},id:{type:String,default:()=>u()},label:{type:String,default:""},placeholder:{type:String,default:""},variant:{type:String,default:""},disabled:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},pattern:{type:String,default:null},multiple:{type:Boolean,default:!1},accept:{type:String,default:"image/*"}},emits:["update:modelValue","update:src"],setup(t,{emit:i}){const l=t,d=e.ref([]),n=e.ref([]),r=e.computed(()=>l.modelValue.length?l.modelValue:l.src?[{type:"",src:l.src}]:n.value);e.watch(()=>d,async(a,c)=>{n.value=await Promise.all(a.value.map(async m=>({src:await se(m),type:m.type})))},{deep:!0}),e.watch(()=>n,async(a,c)=>{const m=l.multiple?n.value:n.value[0];i("update:modelValue",m),l.multiple||i("update:src",n.value[0]&&n.value[0].src)},{deep:!0});function o(a){d.value.splice(a,1)}return(a,c)=>{const m=e.resolveComponent("svg-icon"),f=e.resolveComponent("file-input");return e.openBlock(),e.createElementBlock("div",de,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(r),(p,ue)=>(e.openBlock(),e.createElementBlock("div",{key:p.src,class:"media-upload__thumbnail"},[e.createElementVNode("img",{src:p.src,class:"img-thumbnail rounded"},null,8,re),e.createElementVNode("button",{onClick:e.withModifiers($e=>o(ue),["prevent"]),class:"btn btn--close"},[e.createVNode(m,{symbol:"x"})],8,ie)]))),128)),e.createVNode(f,{modelValue:d.value,"onUpdate:modelValue":c[0]||(c[0]=p=>d.value=p),id:t.id,name:t.name,accept:t.accept,class:"d-none"},null,8,["modelValue","id","name","accept"]),e.createElementVNode("label",{for:t.id,class:"btn btn-outline-dark"}," Select Image ",8,ce)])}}}),he="";s.BaseButton=C,s.BaseHeadline=x,s.BaseParagraph=E,s.CheckGroup=H,s.FileInput=oe,s.FormInput=T,s.InputDropdown=v,s.InputTextarea=A,s.LoadingSpinner=V,s.MediaUpload=me,s.RadioGroup=J,s.SvgIcon=g,Object.defineProperties(s,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
package/dist/env.d.ts ADDED
@@ -0,0 +1,8 @@
1
+ /// <reference types="vite/client" />
2
+
3
+ declare module '*.vue' {
4
+ import type { DefineComponent } from 'vue'
5
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/ban-types
6
+ const component: DefineComponent<{}, {}, any>
7
+ export default component
8
+ }
package/dist/index.d.ts CHANGED
@@ -1,12 +1,12 @@
1
- export { default as SvgIcon } from "./components/svg-icon.vue";
2
- export { default as LoadingSpinner } from "./components/loading-spinner.vue";
3
- export { default as BaseHeadline } from "./components/base-headline.vue";
4
- export { default as BaseParagraph } from "./components/base-paragraph.vue";
5
- export { default as BaseButton } from "./components/base-button.vue";
6
- export { default as FormInput } from "./components/form-input.vue";
7
- export { default as InputTextarea } from "./components/input-textarea.vue";
8
- export { default as CheckGroup } from "./components/check-group.vue";
9
- export { default as RadioGroup } from "./components/radio-group.vue";
10
- export { default as InputDropdown } from "./components/input-dropdown.vue";
11
- export { default as FileInput } from "./components/file-input.vue";
12
- export { default as MediaUpload } from "./components/media-upload.vue";
1
+ export { default as SvgIcon } from "./components/icon/svg-icon/svg-icon.vue";
2
+ export { default as LoadingSpinner } from "./components/icon/loading-spinner/loading-spinner.vue";
3
+ export { default as BaseHeadline } from "./components/text/base-headline/base-headline.vue";
4
+ export { default as BaseParagraph } from "./components/text/base-paragraph/base-paragraph.vue";
5
+ export { default as BaseButton } from "./components/form/base-button/base-button.vue";
6
+ export { default as FormInput } from "./components/form/form-input/form-input.vue";
7
+ export { default as InputTextarea } from "./components/form/input-textarea/input-textarea.vue";
8
+ export { default as CheckGroup } from "./components/form/check-group/check-group.vue";
9
+ export { default as RadioGroup } from "./components/form/radio-group/radio-group.vue";
10
+ export { default as InputDropdown } from "./components/form/input-dropdown/input-dropdown.vue";
11
+ export { default as FileInput } from "./components/form/file-input/file-input.vue";
12
+ export { default as MediaUpload } from "./components/form/media-upload/media-upload.vue";
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- .svg-icon{display:inline-block}.svg-icon svg{display:block;stroke-width:0;stroke:currentColor;fill:currentColor;width:1.5em;height:1.5em}.svg-icon--xxl svg{width:12rem;height:12rem}.svg-icon--xl svg{width:8rem;height:8rem}.svg-icon--large svg{width:4rem;height:4rem}.loading-spinner{min-width:2rem}.base-button{display:flex;justify-content:center;align-items:center;box-sizing:border-box;transition:all .2s ease;text-decoration:none;width:100%;margin:0;padding:1.036em 1.625em;appearance:none;outline:none;border:none;border-radius:.4375em;font-size:.875em;line-height:1.125em;text-transform:uppercase;font-weight:700}@media screen and (min-width: 600px){.base-button{width:auto}}.base-button .icon{width:16px;height:16px;margin-top:-1px}.base-button.s-collapsed>.caption{display:none}.base-button.s-pending{background-repeat:no-repeat;background-position:center center}.base-button.s-pending .caption{margin-left:25px;visibility:hidden}@media screen and (min-width: 600px){.base-button.s-pending{background-position:1.625em center}.base-button.s-pending .caption{visibility:visible}}.base-button[readonly],.base-button[disabled]{cursor:not-allowed}.form-input{display:flex;flex-direction:column}.form-input>*{order:2}.form-input__label{order:0}.form-input__input-group,.form-input>input,.form-input>select,.form-input>textarea{flex-wrap:nowrap;order:1}.form-input__color-swatch{flex:0 0 3rem;display:block;border-top-right-radius:var(--border-radius);border-bottom-right-radius:var(--border-radius);overflow:hidden;border:thin solid var(--border-color);border-left:none}.form-input input[type=checkbox],.form-input input[type=radio]{flex:none}.form-input input[type=color]{display:block;height:100%;padding:0;border-width:0}.form-input input[type=color]::-webkit-color-swatch-wrapper{padding:0}.form-input input[type=color]::-webkit-color-swatch{border:none}.form-switch{flex-direction:row;padding-left:0;gap:1rem}.form-switch .form-check-input{width:2.5rem;height:1.3125rem;margin-left:0}:root,*:before,*:after{--border-color: #ced4da;--border-radius: .25rem}.media-upload__thumbnail{position:relative}.media-upload__thumbnail .btn{position:absolute;right:0;top:0}
1
+ .svg-icon{display:inline-block}.svg-icon svg{display:block;stroke-width:0;stroke:currentColor;fill:currentColor;width:1.5em;height:1.5em}.svg-icon--xxl svg{width:12rem;height:12rem}.svg-icon--xl svg{width:8rem;height:8rem}.svg-icon--large svg{width:4rem;height:4rem}.loading-spinner{min-width:2rem}:root,*:before,*:after{--button-color: #fff}.base-button{display:inline-flex;justify-content:center;align-items:center;box-sizing:border-box;transition:all .2s ease;text-decoration:none;width:100%;margin:0;padding:1.036em 1.625em;appearance:none;outline:none;border:none;border-radius:.4375em;color:var(--button-color);font-size:.875em;line-height:1.125em;text-transform:uppercase;font-weight:700}@media screen and (min-width: 600px){.base-button{width:auto}}.base-button .icon{width:16px;height:16px;margin-top:-1px}.base-button.s-collapsed>.caption{display:none}.base-button.s-pending{background-repeat:no-repeat;background-position:center center}.base-button.s-pending .caption{margin-left:25px;visibility:hidden}@media screen and (min-width: 600px){.base-button.s-pending{background-position:1.625em center}.base-button.s-pending .caption{visibility:visible}}.base-button[readonly],.base-button[disabled]{cursor:not-allowed}.form-input{display:flex;flex-direction:column}.form-input>*{order:2}.form-input__label{order:0}.form-input__input-group,.form-input>input,.form-input>select,.form-input>textarea{flex-wrap:nowrap;order:1}.form-input__color-swatch{flex:0 0 3rem;display:block;border-top-right-radius:var(--border-radius);border-bottom-right-radius:var(--border-radius);overflow:hidden;border:thin solid var(--border-color);border-left:none}.form-input input[type=checkbox],.form-input input[type=radio]{flex:none}.form-input input[type=color]{display:block;height:100%;padding:0;border-width:0}.form-input input[type=color]::-webkit-color-swatch-wrapper{padding:0}.form-input input[type=color]::-webkit-color-swatch{border:none}.form-switch{flex-direction:row;padding-left:0;gap:1rem}.form-switch .form-check-input{width:2.5rem;height:1.3125rem;margin-left:0}:root,*:before,*:after{--border-color: #ced4da;--border-radius: .25rem}.media-upload{display:inline-block}.media-upload__thumbnail{position:relative}.media-upload__thumbnail .btn{position:absolute;right:0;top:0}