dendelion-ui 0.0.12 → 0.0.13

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 (48) hide show
  1. package/dist/dendelion-ui.cjs.js +2 -2
  2. package/dist/dendelion-ui.es.js +319 -316
  3. package/dist/dendelion-ui.umd.js +2 -2
  4. package/dist/types/components/button/Button.vue.d.ts +2 -12
  5. package/dist/types/components/card/Card.vue.d.ts +2 -11
  6. package/dist/types/components/card/CardBody.vue.d.ts +2 -4
  7. package/dist/types/components/container/Container.vue.d.ts +2 -10
  8. package/dist/types/components/modal/Modal.vue.d.ts +2 -23
  9. package/dist/types/components/stepper/Step.vue.d.ts +2 -8
  10. package/dist/types/components/stepper/StepList.vue.d.ts +2 -4
  11. package/dist/types/components/stepper/StepPanel.vue.d.ts +2 -9
  12. package/dist/types/components/stepper/StepPanels.vue.d.ts +2 -10
  13. package/dist/types/components/stepper/Stepper.vue.d.ts +2 -11
  14. package/dist/types/components/table/interface.d.ts +10 -2
  15. package/package.json +79 -75
  16. package/src/components/button/Button.vue +32 -29
  17. package/src/components/button/SimpleButton.vue +5 -8
  18. package/src/components/button/index.ts +3 -3
  19. package/src/components/button/interface.ts +13 -13
  20. package/src/components/card/Card.vue +32 -25
  21. package/src/components/card/CardBody.vue +7 -9
  22. package/src/components/card/CardTitle.vue +20 -18
  23. package/src/components/card/index.ts +4 -4
  24. package/src/components/card/interface.ts +9 -9
  25. package/src/components/container/Container.vue +20 -21
  26. package/src/components/container/index.ts +2 -2
  27. package/src/components/container/interface.ts +4 -5
  28. package/src/components/modal/Modal.vue +70 -52
  29. package/src/components/modal/index.ts +2 -2
  30. package/src/components/modal/interface.ts +12 -12
  31. package/src/components/search/SearchBar.vue +62 -53
  32. package/src/components/search/index.ts +1 -1
  33. package/src/components/stepper/Step.vue +37 -35
  34. package/src/components/stepper/StepList.vue +7 -8
  35. package/src/components/stepper/StepPanel.vue +29 -30
  36. package/src/components/stepper/StepPanels.vue +16 -17
  37. package/src/components/stepper/Stepper.vue +35 -33
  38. package/src/components/stepper/index.ts +6 -6
  39. package/src/components/stepper/interface.ts +3 -4
  40. package/src/components/table/Table.vue +135 -104
  41. package/src/components/table/index.ts +2 -2
  42. package/src/components/table/interface.ts +39 -31
  43. package/src/components.ts +7 -7
  44. package/src/index.ts +91 -91
  45. package/src/shims-vue.d.ts +7 -11
  46. package/src/types/color.ts +169 -170
  47. package/src/types/index.ts +2 -2
  48. package/src/types/size.ts +78 -78
@@ -1,5 +1,5 @@
1
- (function(d,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(d=typeof globalThis<"u"?globalThis:d||self,e(d.DendelionUI={},d.Vue))})(this,function(d,e){"use strict";var L=(t=>(t[t.Primary=0]="Primary",t[t.PrimaryContent=1]="PrimaryContent",t[t.Secondary=2]="Secondary",t[t.SecondaryContent=3]="SecondaryContent",t[t.Accent=4]="Accent",t[t.AccentContent=5]="AccentContent",t[t.Neutral=6]="Neutral",t[t.NeutralContent=7]="NeutralContent",t[t.Base100=8]="Base100",t[t.Base200=9]="Base200",t[t.Base300=10]="Base300",t[t.BaseContent=11]="BaseContent",t[t.Info=12]="Info",t[t.InfoContent=13]="InfoContent",t[t.Success=14]="Success",t[t.SuccessContent=15]="SuccessContent",t[t.Warning=16]="Warning",t[t.WarningContent=17]="WarningContent",t[t.Error=18]="Error",t[t.ErrorContent=19]="ErrorContent",t))(L||{});class q{static toClassName(n){switch(n){case 0:return"bg-primary";case 1:return"bg-primary-content";case 2:return"bg-secondary";case 3:return"bg-secondary-content";case 4:return"bg-accent";case 5:return"bg-accent-content";case 6:return"bg-neutral";case 7:return"bg-neutral-content";case 8:return"base-100";case 9:return"bg-base-200";case 10:return"bg-base-300";case 11:return"bg-base-content";case 12:return"bg-info";case 13:return"bg-info-content";case 14:return"bg-success";case 15:return"bg-success-content";case 16:return"bg-warning";case 17:return"bg-warning-content";case 18:return"bg-error";case 19:return"bg-error-content";default:return"bg-base-content"}}}class P{static toClassName(n){switch(n){case 0:return"btn-primary";case 1:return"btn-primary-content";case 2:return"btn-secondary";case 3:return"btn-secondary-content";case 4:return"btn-accent";case 5:return"btn-accent-content";case 6:return"btn-neutral";case 7:return"btn-neutral-content";case 8:return"base-100";case 9:return"btn-base-200";case 10:return"btn-base-300";case 11:return"btn-base-content";case 12:return"btn-info";case 13:return"btn-info-content";case 14:return"btn-success";case 15:return"btn-success-content";case 16:return"btn-warning";case 17:return"btn-warning-content";case 18:return"btn-error";case 19:return"btn-error-content";default:return"btn-base-content"}}}class Q{static toClassName(n){switch(n){case 0:return"text-primary";case 1:return"text-primary-content";case 2:return"text-secondary";case 3:return"text-secondary-content";case 4:return"text-accent";case 5:return"text-accent-content";case 6:return"text-neutral";case 7:return"text-neutral-content";case 8:return"base-100";case 9:return"text-base-200";case 10:return"text-base-300";case 11:return"text-base-content";case 12:return"text-info";case 13:return"text-info-content";case 14:return"text-success";case 15:return"text-success-content";case 16:return"text-warning";case 17:return"text-warning-content";case 18:return"text-error";case 19:return"text-error-content";default:return"text-base-content"}}}var F=(t=>(t[t.XS=0]="XS",t[t.SM=1]="SM",t[t.MD=2]="MD",t[t.LG=3]="LG",t[t.XL=4]="XL",t[t.TWOXL=5]="TWOXL",t[t.THREEXL=6]="THREEXL",t))(F||{});class A{static toClassName(n){switch(n){case 0:return"btn-xs";case 1:return"btn-sm";case 2:return"btn-md";case 3:return"btn-lg";case 4:return"btn-xl";case 5:return"btn-2xl";case 6:return"btn-3xl";default:return"btn-md"}}}class I{static toClassName(n){switch(n){case 0:return"rounded-xs";case 1:return"rounded-sm";case 2:return"rounded-md";case 3:return"rounded-lg";case 4:return"rounded-xl";case 5:return"rounded-2xl";case 6:return"rounded-3xl";default:return"rounded-md"}}}class X{static toClassName(n){switch(n){case 0:return"table-xs";case 1:return"table-sm";case 2:return"table-md";case 3:return"table-lg";case 4:return"table-xl";case 5:return"table-2xl";case 6:return"table-3xl";default:return"table-md"}}}function K(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var v={exports:{}};/*!
1
+ (function(d,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(d=typeof globalThis<"u"?globalThis:d||self,e(d.DendelionUI={},d.Vue))})(this,function(d,e){"use strict";var L=(t=>(t[t.Primary=0]="Primary",t[t.PrimaryContent=1]="PrimaryContent",t[t.Secondary=2]="Secondary",t[t.SecondaryContent=3]="SecondaryContent",t[t.Accent=4]="Accent",t[t.AccentContent=5]="AccentContent",t[t.Neutral=6]="Neutral",t[t.NeutralContent=7]="NeutralContent",t[t.Base100=8]="Base100",t[t.Base200=9]="Base200",t[t.Base300=10]="Base300",t[t.BaseContent=11]="BaseContent",t[t.Info=12]="Info",t[t.InfoContent=13]="InfoContent",t[t.Success=14]="Success",t[t.SuccessContent=15]="SuccessContent",t[t.Warning=16]="Warning",t[t.WarningContent=17]="WarningContent",t[t.Error=18]="Error",t[t.ErrorContent=19]="ErrorContent",t))(L||{});class U{static toClassName(n){switch(n){case 0:return"bg-primary";case 1:return"bg-primary-content";case 2:return"bg-secondary";case 3:return"bg-secondary-content";case 4:return"bg-accent";case 5:return"bg-accent-content";case 6:return"bg-neutral";case 7:return"bg-neutral-content";case 8:return"base-100";case 9:return"bg-base-200";case 10:return"bg-base-300";case 11:return"bg-base-content";case 12:return"bg-info";case 13:return"bg-info-content";case 14:return"bg-success";case 15:return"bg-success-content";case 16:return"bg-warning";case 17:return"bg-warning-content";case 18:return"bg-error";case 19:return"bg-error-content";default:return"bg-base-content"}}}class q{static toClassName(n){switch(n){case 0:return"btn-primary";case 1:return"btn-primary-content";case 2:return"btn-secondary";case 3:return"btn-secondary-content";case 4:return"btn-accent";case 5:return"btn-accent-content";case 6:return"btn-neutral";case 7:return"btn-neutral-content";case 8:return"base-100";case 9:return"btn-base-200";case 10:return"btn-base-300";case 11:return"btn-base-content";case 12:return"btn-info";case 13:return"btn-info-content";case 14:return"btn-success";case 15:return"btn-success-content";case 16:return"btn-warning";case 17:return"btn-warning-content";case 18:return"btn-error";case 19:return"btn-error-content";default:return"btn-base-content"}}}class Q{static toClassName(n){switch(n){case 0:return"text-primary";case 1:return"text-primary-content";case 2:return"text-secondary";case 3:return"text-secondary-content";case 4:return"text-accent";case 5:return"text-accent-content";case 6:return"text-neutral";case 7:return"text-neutral-content";case 8:return"base-100";case 9:return"text-base-200";case 10:return"text-base-300";case 11:return"text-base-content";case 12:return"text-info";case 13:return"text-info-content";case 14:return"text-success";case 15:return"text-success-content";case 16:return"text-warning";case 17:return"text-warning-content";case 18:return"text-error";case 19:return"text-error-content";default:return"text-base-content"}}}var F=(t=>(t[t.XS=0]="XS",t[t.SM=1]="SM",t[t.MD=2]="MD",t[t.LG=3]="LG",t[t.XL=4]="XL",t[t.TWOXL=5]="TWOXL",t[t.THREEXL=6]="THREEXL",t))(F||{});class A{static toClassName(n){switch(n){case 0:return"btn-xs";case 1:return"btn-sm";case 2:return"btn-md";case 3:return"btn-lg";case 4:return"btn-xl";case 5:return"btn-2xl";case 6:return"btn-3xl";default:return"btn-md"}}}class I{static toClassName(n){switch(n){case 0:return"rounded-xs";case 1:return"rounded-sm";case 2:return"rounded-md";case 3:return"rounded-lg";case 4:return"rounded-xl";case 5:return"rounded-2xl";case 6:return"rounded-3xl";default:return"rounded-md"}}}class X{static toClassName(n){switch(n){case 0:return"table-xs";case 1:return"table-sm";case 2:return"table-md";case 3:return"table-lg";case 4:return"table-xl";case 5:return"table-2xl";case 6:return"table-3xl";default:return"table-md"}}}function K(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var v={exports:{}};/*!
2
2
  Copyright (c) 2018 Jed Watson.
3
3
  Licensed under the MIT License (MIT), see
4
4
  http://jedwatson.github.io/classnames
5
- */var H;function ee(){return H||(H=1,function(t){(function(){var n={}.hasOwnProperty;function s(){for(var r="",c=0;c<arguments.length;c++){var p=arguments[c];p&&(r=a(r,o(p)))}return r}function o(r){if(typeof r=="string"||typeof r=="number")return r;if(typeof r!="object")return"";if(Array.isArray(r))return s.apply(null,r);if(r.toString!==Object.prototype.toString&&!r.toString.toString().includes("[native code]"))return r.toString();var c="";for(var p in r)n.call(r,p)&&r[p]&&(c=a(c,p));return c}function a(r,c){return c?r?r+" "+c:r+c:r}t.exports?(s.default=s,t.exports=s):window.classNames=s})()}(v)),v.exports}var te=ee();const $=K(te),ne=["type","disabled"],re={class:"group-[.is-loading]:text-transparent"},ae=e.defineComponent({__name:"Button",props:{type:{default:"button"},loading:{type:Boolean},color:{default:L.Neutral},soft:{type:Boolean,default:!1},outline:{type:Boolean,default:!1},disabled:{type:Boolean},click:{}},setup(t){const n=t,s=e.computed(()=>$("btn","group",P.toClassName(n.color),n.soft?"btn-soft":"",n.outline?"btn-outline":"",n.loading?"is-loading":"",n.disabled?"disabled":""));return(o,a)=>(e.openBlock(),e.createElementBlock("button",{onClick:a[0]||(a[0]=r=>o.click?o.click:void 0),class:e.normalizeClass(s.value),type:o.type,disabled:o.disabled||o.loading},[a[1]||(a[1]=e.createElementVNode("span",{class:"loading loading-spinner loading-md absolute hidden group-[.is-loading]:block"},null,-1)),e.createElementVNode("span",re,[e.renderSlot(o.$slots,"default")])],10,ne))}}),D=(t,n)=>{const s=t.__vccOpts||t;for(const[o,a]of n)s[o]=a;return s},se={};function oe(t,n){return e.openBlock(),e.createElementBlock("button")}const ce=D(se,[["render",oe]]),le=e.defineComponent({__name:"Card",props:{backgroundColor:{default:L.Primary},shadow:{type:Boolean,default:!1},fullWidth:{type:Boolean,default:!1},rounded:{type:Boolean},roundedSize:{}},setup(t){const n=t,s=e.ref($("card",q.toClassName(n.backgroundColor),n.shadow?"shadow-lg":"",n.fullWidth?"w-full":"",n.rounded&&!n.roundedSize?"rounded":n.roundedSize?I.toClassName(n.roundedSize):""));return(o,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(s.value)},[e.renderSlot(o.$slots,"default")],2))}}),ue={},ie={class:"card-body"};function de(t,n){return e.openBlock(),e.createElementBlock("div",ie,[e.renderSlot(t.$slots,"default")])}const fe=D(ue,[["render",de]]),pe=e.defineComponent({__name:"CardTitle",props:{is:{default:"h1"},text:{default:""}},setup(t){return(n,s)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.is),{class:"card-title"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(n.text),1)]),_:1}))}}),me=e.defineComponent({__name:"Container",props:{container:{type:Boolean,default:!0},padding:{type:Boolean,default:!0}},setup(t){const n=t,s=e.ref([n.container?"container":"",n.padding?"p-6":""]);return(o,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(s.value)},[e.renderSlot(o.$slots,"default")],2))}});var R={},W={},j;function G(){return j||(j=1,function(t){t.__esModule=!0,t.default=a;var n=/[\u0300-\u036f]/g,s=/ł/g,o=/ñ/g;function a(r){return r.toLowerCase().normalize("NFD").replace(n,"").replace(s,"l").replace(o,"n").trim()}}(W)),W}var V={},Z;function J(){if(Z)return V;Z=1,V.__esModule=!0,V.aggressiveFuzzyMatch=y,V.createFuzzySearchImpl=w,V.experimentalSmartFuzzyMatch=N,V.fuzzyMatchImpl=m;var t=n(G());function n(u){return u&&u.__esModule?u:{default:u}}var s=Number.MAX_SAFE_INTEGER,o=function(l,b){return l.score-b.score},a=function(l,b){return l[0]-b[0]},r=new Set(`  []()-–—'"“”`.split(""));function c(u){return r.has(u)}function p(u,l,b,k,i,B,g){if(u===k)return[0,[[0,u.length-1]]];var f=k.length,h=l.length,x=i.length;if(l===i)return[.1,[[0,h-1]]];if(l.startsWith(i))return[.5,[[0,x-1]]];var E=u.indexOf(k);if(E>-1&&c(u[E-1]))return[.9,[[E,E+f-1]]];var S=l.indexOf(i);if(S>-1&&c(l[S-1]))return[1,[[S,S+f-1]]];var C=B.length;if(C>1&&B.every(function(M){return b.has(M)})){var z=1.5+C*.2;return[z,B.map(function(M){var T=l.indexOf(M);return[T,T+M.length-1]}).sort(a)]}return S>-1?[2,[[S,S+f-1]]]:g==="aggressive"?y(l,i):g==="smart"?N(l,i):null}function y(u,l){for(var b=u.length,k=l.length,i=0,B=l[i],g=[],f=-1,h=-2,x=0;x<b;x+=1)if(u[x]===B){if(x!==h+1&&(f>=0&&g.push([f,h]),f=x),h=x,i+=1,i===k)return g.push([f,h]),_(g,u);B=l[i]}return null}function N(u,l){for(var b=u.length,k=[],i=0,B=l[i],g=-1,f=-2;;){var h=u.indexOf(B,f+1);if(h===-1)break;if(h===0||c(u[h-1]))g=h;else{var x=l.length-i,E=u.length-h,S=Math.min(3,x,E),C=l.slice(i,i+S);if(u.slice(h,h+S)===C)g=h;else{f+=1;continue}}for(f=g;f<b&&u[f]===B;f+=1)i+=1,B=l[i];if(f-=1,k.push([g,f]),i===l.length)return _(k,u)}return null}function _(u,l){var b=2;return u.forEach(function(k){var i=k[0],B=k[1],g=B-i+1,f=i===0||l[i]===" "||l[i-1]===" ",h=B===l.length-1||l[B]===" "||l[B+1]===" ",x=f&&h;x?b+=.2:f?b+=.4:g>=3?b+=.8:b+=1.6}),[b,u]}function m(u,l){var b=(0,t.default)(l),k=b.split(" "),i=(0,t.default)(u),B=new Set(i.split(" ")),g=p(u,i,B,l,b,k,"smart");return g?{item:u,score:g[0],matches:[g[1]]}:null}function w(u,l){var b=l.strategy,k=b===void 0?"aggressive":b,i=l.getText,B=u.map(function(g){var f;if(i)f=i(g);else{var h=l.key?g[l.key]:g;f=[h]}var x=f.map(function(E){var S=E||"",C=(0,t.default)(S),z=new Set(C.split(" "));return[S,C,z]});return[g,x]});return function(g){var f=[],h=(0,t.default)(g),x=h.split(" ");return h.length?(B.forEach(function(E){for(var S=E[0],C=E[1],z=s,M=[],T=0,Ue=C.length;T<Ue;T+=1){var O=C[T],qe=O[0],Pe=O[1],Ae=O[2],U=p(qe,Pe,Ae,g,h,x,k);U?(z=Math.min(z,U[0]),M.push(U[1])):M.push(null)}z<s&&f.push({item:S,score:z,matches:M})}),f.sort(o),f):[]}}return V}var Y;function be(){return Y||(Y=1,function(t){t.__esModule=!0,t.default=o,t.fuzzyMatch=a;var n=s(G());t.normalizeText=n.default;function s(r){return r&&r.__esModule?r:{default:r}}function o(r,c){return c===void 0&&(c={}),J().createFuzzySearchImpl(r,c)}function a(r,c){return J().fuzzyMatchImpl(r,c)}}(R)),R}var ge=be();const he=K(ge),ye={key:0},_e=["colspan"],Be=["innerHTML"],ke=e.defineComponent({__name:"Table",props:{zebra:{type:Boolean,default:!1},pinRows:{type:Boolean,default:!1},pinCols:{type:Boolean,default:!1},size:{default:F.MD},columns:{},dataSource:{},ajax:{},searchValue:{},searchFunction:{}},setup(t){const n=e.ref([]),s=e.ref([]),o=e.ref(null),a=t,r=e.ref($("table",X.toClassName(a.size),{"table-zebra":a.zebra,"table-pin-rows":a.pinRows,"table-pin-cols ":a.pinCols})),c=(y,N)=>String(!y||typeof y!="object"?y:N.split(".").reduce((_,m)=>_&&(typeof _=="object"?_[m]:_),y));e.onMounted(()=>{n.value=a.dataSource,s.value=a.dataSource}),e.watch(()=>a.dataSource,y=>{n.value=y,s.value=y},{immediate:!0}),e.watch(()=>a.searchValue,y=>{if(a.searchFunction){s.value=a.searchFunction(y??"");return}s.value=y?p(y):n.value},{immediate:!0});const p=y=>{const N=[];return n.value.length>0?(Object.keys(n.value[0]).forEach(m=>{const w=n.value.map(b=>c(b,m)),l=he(w)(y);for(const b of l){const k=n.value.filter(i=>c(i,m)===b.item);N.push(...k)}}),N):[]};return(y,N)=>(e.openBlock(),e.createElementBlock("table",{ref_key:"table",ref:o,class:e.normalizeClass(r.value)},[e.createElementVNode("thead",null,[e.createElementVNode("tr",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.columns,_=>(e.openBlock(),e.createElementBlock("th",{key:_.title},e.toDisplayString(_.title),1))),128))])]),e.createElementVNode("tbody",null,[s.value.length===0?(e.openBlock(),e.createElementBlock("tr",ye,[e.createElementVNode("td",{colspan:a.columns.length}," No data found ",8,_e)])):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(s.value,_=>(e.openBlock(),e.createElementBlock("tr",{key:String(_)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.columns,m=>(e.openBlock(),e.createElementBlock("td",{key:m.title},[m.render?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(e.toDisplayString(c(_,m.data)),1)],64)),typeof m.render=="function"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[typeof m.render(c(_,m.data),_)=="string"?(e.openBlock(),e.createElementBlock("div",{key:0,innerHTML:m.render(c(_,m.data),_)},null,8,Be)):(e.openBlock(),e.createBlock(e.resolveDynamicComponent(m.render(c(_,m.data),_)),{key:1}))],64)):e.createCommentVNode("",!0)]))),128))]))),128))])],2))}}),xe=e.defineComponent({__name:"Stepper",props:{value:{}},emits:["update:value"],setup(t,{expose:n,emit:s}){const o=t,a=e.ref(o.value),r=s,c=p=>{a.value=p,r("update:value",p)};return e.provide("stepper",{value:a,updateValue:c}),e.watch(()=>o.value,p=>{a.value=p}),n({updateValue:c}),(p,y)=>e.renderSlot(p.$slots,"default",{updateValue:c})}}),Se=e.defineComponent({__name:"Step",props:{value:{}},setup(t){const n=t,s=e.inject("stepper"),o=e.ref("");return e.watch(()=>s==null?void 0:s.value.value,a=>{a&&n.value&&(o.value=Number(a)>=Number(n.value)?"step-primary":"")}),e.onMounted(()=>{s&&(o.value=s.value.value===n.value?"step-primary":"",Number(s.value.value)>=Number(n.value)&&(o.value="step-primary"))}),(a,r)=>(e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(["step",o.value])},[e.renderSlot(a.$slots,"default")],2))}}),Ee={},Ce={class:"steps"};function Ne(t,n){return e.openBlock(),e.createElementBlock("ul",Ce,[e.renderSlot(t.$slots,"default")])}const we=D(Ee,[["render",Ne]]),ze={key:0},Me=e.defineComponent({__name:"StepPanels",setup(t){const n=e.inject("stepper");return(s,o)=>(e.openBlock(),e.createBlock(e.Transition,{name:"fade",mode:"out-in"},{default:e.withCtx(()=>{var a,r;return[(a=e.unref(n))!=null&&a.value?(e.openBlock(),e.createElementBlock("div",ze,[e.renderSlot(s.$slots,"default",{currentStep:(r=e.unref(n))==null?void 0:r.value})])):e.createCommentVNode("",!0)]}),_:3}))}}),Ve={key:0},$e=e.defineComponent({__name:"StepPanel",props:{value:{}},setup(t,{expose:n}){const s=e.computed(()=>o==null?void 0:o.value.value),o=e.inject("stepper"),a=r=>{o&&o.updateValue(r.toString())};return n({activateCallback:a}),(r,c)=>r.value===s.value?(e.openBlock(),e.createElementBlock("div",Ve,[e.renderSlot(r.$slots,"default",{activateCallback:a})])):e.createCommentVNode("",!0)}}),Te={key:0,method:"dialog"},Le=e.defineComponent({__name:"Modal",props:{closeButton:{type:Boolean,default:!0},overflow:{type:Boolean,default:!1},closeButtonSize:{default:F.SM},extraBoxClasses:{}},emits:["close"],setup(t,{expose:n,emit:s}){const o=e.ref(null),a=s,r=t,c=e.ref($("modal-box",r.extraBoxClasses)),p=e.ref($("modal",{"overflow-visible":r.overflow})),y=e.ref($("btn",A.toClassName(r.closeButtonSize),"btn-circle","btn-ghost","absolute","right-2","top-2"));return n({showModal:()=>{var m;(m=o.value)==null||m.showModal()},closeModal:()=>{var m;(m=o.value)==null||m.close()}}),(m,w)=>(e.openBlock(),e.createElementBlock("dialog",{ref_key:"modal",ref:o,class:e.normalizeClass([p.value,m.$attrs.class]),"aria-modal":"true","aria-hidden":"true",role:"dialog",onClose:w[0]||(w[0]=u=>a("close",u))},[e.createElementVNode("div",{class:e.normalizeClass(c.value)},[m.closeButton?(e.openBlock(),e.createElementBlock("form",Te,[e.createElementVNode("button",{class:e.normalizeClass(y.value)},"✕",2)])):e.createCommentVNode("",!0),e.renderSlot(m.$slots,"default")],2),w[1]||(w[1]=e.createElementVNode("form",{method:"dialog",class:"modal-backdrop"},[e.createElementVNode("button",null,"close")],-1))],34))}}),Fe={class:"hidden w-full max-w-sm lg:flex"},ve={class:"relative mx-3 w-full"},De={class:"w-full max-w-full relative"},Re=["value"],We=e.defineComponent({__name:"SearchBar",props:["modelValue"],emits:["update:modelValue"],setup(t,{emit:n}){const s=t,o=e.ref(null),a=n,r=c=>{(c.ctrlKey||c.metaKey)&&c.key.toLowerCase()==="k"&&(c.preventDefault(),o.value&&o.value.focus())};return e.onMounted(()=>{document.addEventListener("keydown",r)}),e.onUnmounted(()=>{document.removeEventListener("keydown",r)}),(c,p)=>(e.openBlock(),e.createElementBlock("div",Fe,[e.createElementVNode("label",ve,[p[1]||(p[1]=e.createElementVNode("svg",{class:"pointer-events-none absolute z-10 my-3.5 ms-4 opacity-60 text-base-content","aria-hidden":"true",width:"16",height:"16",viewBox:"0.48 0.48 23.04 23.04",fill:"currentColor"},[e.createElementVNode("path",{fill:"none",d:"M0 0h24v24H0z"}),e.createElementVNode("path",{d:"M15.5 14h-.79l-.28-.27A6.471 6.471 0 0016 9.5 6.5 6.5 0 109.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"})],-1)),e.createElementVNode("div",De,[e.createElementVNode("form",null,[e.createElementVNode("input",{ref_key:"searchInput",ref:o,type:"search",placeholder:"Zoeken...",value:s.modelValue,onInput:p[0]||(p[0]=y=>a("update:modelValue",y.target.value)),class:"bg-transparent color-[inherit] border-[2px] border-solid border-transparent focus:border-[2px] focus:border-base-200 focus:outline-none rounded-xl w-full px-3 py-2 ps-10"},null,40,Re)])]),p[2]||(p[2]=e.createElementVNode("div",{class:"pointer-events-none absolute end-10 top-2.5 gap-1 opacity-50 rtl:flex-row-reverse hidden lg:flex"},[e.createElementVNode("kbd",{class:"kbd kbd-sm"},"ctrl"),e.createElementVNode("kbd",{class:"kbd kbd-sm"},"K")],-1))])]))}}),Oe=["bg-primary","bg-primary-content","bg-secondary","bg-secondary-content","bg-accent","bg-accent-content","bg-neutral","bg-neutral-content","bg-base-100","bg-base-200","bg-base-300","bg-base-content","bg-info","bg-info-content","bg-success","bg-success-content","bg-warning","bg-warning-content","bg-error","bg-error-content","btn-primary","btn-primary-content","btn-secondary","btn-secondary-content","btn-accent","btn-accent-content","btn-neutral","btn-neutral-content","btn-base-100","btn-base-200","btn-base-300","btn-base-content","btn-info","btn-info-content","btn-success","btn-success-content","btn-warning","btn-warning-content","btn-error","btn-error-content","text-primary","text-primary-content","text-secondary","text-secondary-content","text-accent","text-accent-content","text-neutral","text-neutral-content","text-base-100","text-base-200","text-base-300","text-base-content","text-info","text-info-content","text-success","text-success-content","text-warning","text-warning-content","text-error","text-error-content","text-transparent","step","steps","modal","modal-box","btn","btn-sm","btn-circle","btn-ghost","absolute","right-2","top-2","shadow-lg","w-full","rounded-xs","rounded-sm","rounded-md","rounded-lg","rounded-xl","rounded-2xl","rounded-3xl","hidden","block"];d.BackgroundColorUtils=q,d.Button=ae,d.ButtonColorUtils=P,d.ButtonSizeUtils=A,d.Card=le,d.CardBody=fe,d.CardTitle=pe,d.Color=L,d.Container=me,d.Modal=Le,d.RoundedSizeUtils=I,d.SearchBar=We,d.SimpleButton=ce,d.Size=F,d.Step=Se,d.StepList=we,d.StepPanel=$e,d.StepPanels=Me,d.Stepper=xe,d.Table=ke,d.TableSizeUtils=X,d.TextColorUtils=Q,d.dendelionSafeList=Oe,Object.defineProperty(d,Symbol.toStringTag,{value:"Module"})});
5
+ */var j;function ee(){return j||(j=1,function(t){(function(){var n={}.hasOwnProperty;function o(){for(var r="",l=0;l<arguments.length;l++){var m=arguments[l];m&&(r=s(r,c(m)))}return r}function c(r){if(typeof r=="string"||typeof r=="number")return r;if(typeof r!="object")return"";if(Array.isArray(r))return o.apply(null,r);if(r.toString!==Object.prototype.toString&&!r.toString.toString().includes("[native code]"))return r.toString();var l="";for(var m in r)n.call(r,m)&&r[m]&&(l=s(l,m));return l}function s(r,l){return l?r?r+" "+l:r+l:r}t.exports?(o.default=o,t.exports=o):window.classNames=o})()}(v)),v.exports}var te=ee();const V=K(te),ne=["type","disabled"],re={class:"group-[.is-loading]:text-transparent"},ae=e.defineComponent({__name:"Button",props:{type:{default:"button"},loading:{type:Boolean},color:{default:L.Neutral},soft:{type:Boolean,default:!1},outline:{type:Boolean,default:!1},disabled:{type:Boolean},click:{}},setup(t){const n=t,o=e.computed(()=>V("btn","group",q.toClassName(n.color),n.soft?"btn-soft":"",n.outline?"btn-outline":"",n.loading?"is-loading":"",n.disabled?"disabled":""));return(c,s)=>(e.openBlock(),e.createElementBlock("button",{onClick:s[0]||(s[0]=r=>c.click?c.click:void 0),class:e.normalizeClass(o.value),type:c.type,disabled:c.disabled||c.loading},[s[1]||(s[1]=e.createElementVNode("span",{class:"loading loading-spinner loading-md absolute hidden group-[.is-loading]:block"},null,-1)),e.createElementVNode("span",re,[e.renderSlot(c.$slots,"default")])],10,ne))}}),D=(t,n)=>{const o=t.__vccOpts||t;for(const[c,s]of n)o[c]=s;return o},se={};function oe(t,n){return e.openBlock(),e.createElementBlock("button")}const ce=D(se,[["render",oe]]),le=e.defineComponent({__name:"Card",props:{backgroundColor:{default:L.Primary},shadow:{type:Boolean,default:!1},fullWidth:{type:Boolean,default:!1},rounded:{type:Boolean},roundedSize:{}},setup(t){const n=t,o=e.ref(V("card",U.toClassName(n.backgroundColor),n.shadow?"shadow-lg":"",n.fullWidth?"w-full":"",n.rounded&&!n.roundedSize?"rounded":n.roundedSize?I.toClassName(n.roundedSize):""));return(c,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(c.$slots,"default")],2))}}),ie={},ue={class:"card-body"};function de(t,n){return e.openBlock(),e.createElementBlock("div",ue,[e.renderSlot(t.$slots,"default")])}const fe=D(ie,[["render",de]]),pe=e.defineComponent({__name:"CardTitle",props:{is:{default:"h1"},text:{default:""}},setup(t){return(n,o)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.is),{class:"card-title"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(n.text),1)]),_:1}))}}),me=e.defineComponent({__name:"Container",props:{container:{type:Boolean,default:!0},padding:{type:Boolean,default:!0}},setup(t){const n=t,o=e.ref([n.container?"container":"",n.padding?"p-6":""]);return(c,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(c.$slots,"default")],2))}});var R={},W={},H;function G(){return H||(H=1,function(t){t.__esModule=!0,t.default=s;var n=/[\u0300-\u036f]/g,o=/ł/g,c=/ñ/g;function s(r){return r.toLowerCase().normalize("NFD").replace(n,"").replace(o,"l").replace(c,"n").trim()}}(W)),W}var M={},Z;function J(){if(Z)return M;Z=1,M.__esModule=!0,M.aggressiveFuzzyMatch=N,M.createFuzzySearchImpl=g,M.experimentalSmartFuzzyMatch=T,M.fuzzyMatchImpl=_;var t=n(G());function n(a){return a&&a.__esModule?a:{default:a}}var o=Number.MAX_SAFE_INTEGER,c=function(i,y){return i.score-y.score},s=function(i,y){return i[0]-y[0]},r=new Set(`  []()-–—'"“”`.split(""));function l(a){return r.has(a)}function m(a,i,y,k,u,B,b){if(a===k)return[0,[[0,a.length-1]]];var p=k.length,h=i.length,x=u.length;if(i===u)return[.1,[[0,h-1]]];if(i.startsWith(u))return[.5,[[0,x-1]]];var E=a.indexOf(k);if(E>-1&&l(a[E-1]))return[.9,[[E,E+p-1]]];var S=i.indexOf(u);if(S>-1&&l(i[S-1]))return[1,[[S,S+p-1]]];var C=B.length;if(C>1&&B.every(function(z){return y.has(z)})){var w=1.5+C*.2;return[w,B.map(function(z){var $=i.indexOf(z);return[$,$+z.length-1]}).sort(s)]}return S>-1?[2,[[S,S+p-1]]]:b==="aggressive"?N(i,u):b==="smart"?T(i,u):null}function N(a,i){for(var y=a.length,k=i.length,u=0,B=i[u],b=[],p=-1,h=-2,x=0;x<y;x+=1)if(a[x]===B){if(x!==h+1&&(p>=0&&b.push([p,h]),p=x),h=x,u+=1,u===k)return b.push([p,h]),f(b,a);B=i[u]}return null}function T(a,i){for(var y=a.length,k=[],u=0,B=i[u],b=-1,p=-2;;){var h=a.indexOf(B,p+1);if(h===-1)break;if(h===0||l(a[h-1]))b=h;else{var x=i.length-u,E=a.length-h,S=Math.min(3,x,E),C=i.slice(u,u+S);if(a.slice(h,h+S)===C)b=h;else{p+=1;continue}}for(p=b;p<y&&a[p]===B;p+=1)u+=1,B=i[u];if(p-=1,k.push([b,p]),u===i.length)return f(k,a)}return null}function f(a,i){var y=2;return a.forEach(function(k){var u=k[0],B=k[1],b=B-u+1,p=u===0||i[u]===" "||i[u-1]===" ",h=B===i.length-1||i[B]===" "||i[B+1]===" ",x=p&&h;x?y+=.2:p?y+=.4:b>=3?y+=.8:y+=1.6}),[y,a]}function _(a,i){var y=(0,t.default)(i),k=y.split(" "),u=(0,t.default)(a),B=new Set(u.split(" ")),b=m(a,u,B,i,y,k,"smart");return b?{item:a,score:b[0],matches:[b[1]]}:null}function g(a,i){var y=i.strategy,k=y===void 0?"aggressive":y,u=i.getText,B=a.map(function(b){var p;if(u)p=u(b);else{var h=i.key?b[i.key]:b;p=[h]}var x=p.map(function(E){var S=E||"",C=(0,t.default)(S),w=new Set(C.split(" "));return[S,C,w]});return[b,x]});return function(b){var p=[],h=(0,t.default)(b),x=h.split(" ");return h.length?(B.forEach(function(E){for(var S=E[0],C=E[1],w=o,z=[],$=0,Pe=C.length;$<Pe;$+=1){var O=C[$],Ue=O[0],qe=O[1],Ae=O[2],P=m(Ue,qe,Ae,b,h,x,k);P?(w=Math.min(w,P[0]),z.push(P[1])):z.push(null)}w<o&&p.push({item:S,score:w,matches:z})}),p.sort(c),p):[]}}return M}var Y;function be(){return Y||(Y=1,function(t){t.__esModule=!0,t.default=c,t.fuzzyMatch=s;var n=o(G());t.normalizeText=n.default;function o(r){return r&&r.__esModule?r:{default:r}}function c(r,l){return l===void 0&&(l={}),J().createFuzzySearchImpl(r,l)}function s(r,l){return J().fuzzyMatchImpl(r,l)}}(R)),R}var ge=be();const he=K(ge),ye={key:0},_e=["colspan"],Be=["innerHTML"],ke=e.defineComponent({__name:"Table",props:{zebra:{type:Boolean,default:!1},pinRows:{type:Boolean,default:!1},pinCols:{type:Boolean,default:!1},size:{default:F.MD},columns:{},dataSource:{},ajax:{},searchValue:{},searchFunction:{}},setup(t){const n=e.ref([]),o=e.ref([]),c=e.ref(null),s=t,r=e.ref(V("table",X.toClassName(s.size),{"table-zebra":s.zebra,"table-pin-rows":s.pinRows,"table-pin-cols ":s.pinCols})),l=(f,_)=>String(!f||typeof f!="object"?f:_.split(".").reduce((g,a)=>g&&(typeof g=="object"?g[a]:g),f)),m=(f,_)=>_.render===void 0?{}:_.render(l(f,_.data),f).props,N=f=>f&&typeof f=="object"&&"then"in f?e.defineAsyncComponent(()=>f):typeof f=="function"?e.defineAsyncComponent(f):f;e.onMounted(()=>{n.value=s.dataSource,o.value=s.dataSource}),e.watch(()=>s.dataSource,f=>{n.value=f,o.value=f},{immediate:!0}),e.watch(()=>s.searchValue,f=>{if(s.searchFunction){o.value=s.searchFunction(f??"");return}o.value=f?T(f):n.value},{immediate:!0});const T=f=>{const _=[];return n.value.length>0?(Object.keys(n.value[0]).forEach(a=>{const i=n.value.map(u=>l(u,a)),k=he(i)(f);for(const u of k){const B=n.value.filter(b=>l(b,a)===u.item);_.push(...B)}}),_):[]};return(f,_)=>(e.openBlock(),e.createElementBlock("table",{ref_key:"table",ref:c,class:e.normalizeClass(r.value)},[e.createElementVNode("thead",null,[e.createElementVNode("tr",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.columns,g=>(e.openBlock(),e.createElementBlock("th",{key:g.title},e.toDisplayString(g.title),1))),128))])]),e.createElementVNode("tbody",null,[o.value.length===0?(e.openBlock(),e.createElementBlock("tr",ye,[e.createElementVNode("td",{colspan:s.columns.length}," No data found ",8,_e)])):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(o.value,g=>(e.openBlock(),e.createElementBlock("tr",{key:String(g)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.columns,a=>(e.openBlock(),e.createElementBlock("td",{key:a.title},[a.render?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(e.toDisplayString(l(g,a.data)),1)],64)),typeof a.render=="function"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[typeof a.render(l(g,a.data),g)=="string"?(e.openBlock(),e.createElementBlock("div",{key:0,innerHTML:a.render(l(g,a.data),g)},null,8,Be)):(e.openBlock(),e.createBlock(e.resolveDynamicComponent(N(a.render(l(g,a.data),g).component)),e.mergeProps({key:1,ref_for:!0},m(g,a)),null,16))],64)):e.createCommentVNode("",!0)]))),128))]))),128))])],2))}}),xe=e.defineComponent({__name:"Stepper",props:{value:{}},emits:["update:value"],setup(t,{expose:n,emit:o}){const c=t,s=e.ref(c.value),r=o,l=m=>{s.value=m,r("update:value",m)};return e.provide("stepper",{value:s,updateValue:l}),e.watch(()=>c.value,m=>{s.value=m}),n({updateValue:l}),(m,N)=>e.renderSlot(m.$slots,"default",{updateValue:l})}}),Se=e.defineComponent({__name:"Step",props:{value:{}},setup(t){const n=t,o=e.inject("stepper"),c=e.ref("");return e.watch(()=>o==null?void 0:o.value.value,s=>{s&&n.value&&(c.value=Number(s)>=Number(n.value)?"step-primary":"")}),e.onMounted(()=>{o&&(c.value=o.value.value===n.value?"step-primary":"",Number(o.value.value)>=Number(n.value)&&(c.value="step-primary"))}),(s,r)=>(e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(["step",c.value])},[e.renderSlot(s.$slots,"default")],2))}}),Ee={},Ce={class:"steps"};function Ne(t,n){return e.openBlock(),e.createElementBlock("ul",Ce,[e.renderSlot(t.$slots,"default")])}const we=D(Ee,[["render",Ne]]),ze={key:0},Me=e.defineComponent({__name:"StepPanels",setup(t){const n=e.inject("stepper");return(o,c)=>(e.openBlock(),e.createBlock(e.Transition,{name:"fade",mode:"out-in"},{default:e.withCtx(()=>{var s,r;return[(s=e.unref(n))!=null&&s.value?(e.openBlock(),e.createElementBlock("div",ze,[e.renderSlot(o.$slots,"default",{currentStep:(r=e.unref(n))==null?void 0:r.value})])):e.createCommentVNode("",!0)]}),_:3}))}}),Ve={key:0},$e=e.defineComponent({__name:"StepPanel",props:{value:{}},setup(t,{expose:n}){const o=e.computed(()=>c==null?void 0:c.value.value),c=e.inject("stepper"),s=r=>{c&&c.updateValue(r.toString())};return n({activateCallback:s}),(r,l)=>r.value===o.value?(e.openBlock(),e.createElementBlock("div",Ve,[e.renderSlot(r.$slots,"default",{activateCallback:s})])):e.createCommentVNode("",!0)}}),Te={key:0,method:"dialog"},Le=e.defineComponent({__name:"Modal",props:{closeButton:{type:Boolean,default:!0},overflow:{type:Boolean,default:!1},closeButtonSize:{default:F.SM},extraBoxClasses:{}},emits:["close"],setup(t,{expose:n,emit:o}){const c=e.ref(null),s=o,r=t,l=e.ref(V("modal-box",r.extraBoxClasses)),m=e.ref(V("modal",{"overflow-visible":r.overflow})),N=e.ref(V("btn",A.toClassName(r.closeButtonSize),"btn-circle","btn-ghost","absolute","right-2","top-2"));return n({showModal:()=>{var _;(_=c.value)==null||_.showModal()},closeModal:()=>{var _;(_=c.value)==null||_.close()}}),(_,g)=>(e.openBlock(),e.createElementBlock("dialog",{ref_key:"modal",ref:c,class:e.normalizeClass([m.value,_.$attrs.class]),"aria-modal":"true","aria-hidden":"true",role:"dialog",onClose:g[0]||(g[0]=a=>s("close",a))},[e.createElementVNode("div",{class:e.normalizeClass(l.value)},[_.closeButton?(e.openBlock(),e.createElementBlock("form",Te,[e.createElementVNode("button",{class:e.normalizeClass(N.value)},"✕",2)])):e.createCommentVNode("",!0),e.renderSlot(_.$slots,"default")],2),g[1]||(g[1]=e.createElementVNode("form",{method:"dialog",class:"modal-backdrop"},[e.createElementVNode("button",null,"close")],-1))],34))}}),Fe={class:"hidden w-full max-w-sm lg:flex"},ve={class:"relative mx-3 w-full"},De={class:"w-full max-w-full relative"},Re=["value"],We=e.defineComponent({__name:"SearchBar",props:["modelValue"],emits:["update:modelValue"],setup(t,{emit:n}){const o=t,c=e.ref(null),s=n,r=l=>{(l.ctrlKey||l.metaKey)&&l.key.toLowerCase()==="k"&&(l.preventDefault(),c.value&&c.value.focus())};return e.onMounted(()=>{document.addEventListener("keydown",r)}),e.onUnmounted(()=>{document.removeEventListener("keydown",r)}),(l,m)=>(e.openBlock(),e.createElementBlock("div",Fe,[e.createElementVNode("label",ve,[m[1]||(m[1]=e.createElementVNode("svg",{class:"pointer-events-none absolute z-10 my-3.5 ms-4 opacity-60 text-base-content","aria-hidden":"true",width:"16",height:"16",viewBox:"0.48 0.48 23.04 23.04",fill:"currentColor"},[e.createElementVNode("path",{fill:"none",d:"M0 0h24v24H0z"}),e.createElementVNode("path",{d:"M15.5 14h-.79l-.28-.27A6.471 6.471 0 0016 9.5 6.5 6.5 0 109.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"})],-1)),e.createElementVNode("div",De,[e.createElementVNode("form",null,[e.createElementVNode("input",{ref_key:"searchInput",ref:c,type:"search",placeholder:"Zoeken...",value:o.modelValue,onInput:m[0]||(m[0]=N=>s("update:modelValue",N.target.value)),class:"bg-transparent color-[inherit] border-[2px] border-solid border-transparent focus:border-[2px] focus:border-base-200 focus:outline-none rounded-xl w-full px-3 py-2 ps-10"},null,40,Re)])]),m[2]||(m[2]=e.createElementVNode("div",{class:"pointer-events-none absolute end-10 top-2.5 gap-1 opacity-50 rtl:flex-row-reverse hidden lg:flex"},[e.createElementVNode("kbd",{class:"kbd kbd-sm"},"ctrl"),e.createElementVNode("kbd",{class:"kbd kbd-sm"},"K")],-1))])]))}}),Oe=["bg-primary","bg-primary-content","bg-secondary","bg-secondary-content","bg-accent","bg-accent-content","bg-neutral","bg-neutral-content","bg-base-100","bg-base-200","bg-base-300","bg-base-content","bg-info","bg-info-content","bg-success","bg-success-content","bg-warning","bg-warning-content","bg-error","bg-error-content","btn-primary","btn-primary-content","btn-secondary","btn-secondary-content","btn-accent","btn-accent-content","btn-neutral","btn-neutral-content","btn-base-100","btn-base-200","btn-base-300","btn-base-content","btn-info","btn-info-content","btn-success","btn-success-content","btn-warning","btn-warning-content","btn-error","btn-error-content","text-primary","text-primary-content","text-secondary","text-secondary-content","text-accent","text-accent-content","text-neutral","text-neutral-content","text-base-100","text-base-200","text-base-300","text-base-content","text-info","text-info-content","text-success","text-success-content","text-warning","text-warning-content","text-error","text-error-content","text-transparent","step","steps","modal","modal-box","btn","btn-sm","btn-circle","btn-ghost","absolute","right-2","top-2","shadow-lg","w-full","rounded-xs","rounded-sm","rounded-md","rounded-lg","rounded-xl","rounded-2xl","rounded-3xl","hidden","block"];d.BackgroundColorUtils=U,d.Button=ae,d.ButtonColorUtils=q,d.ButtonSizeUtils=A,d.Card=le,d.CardBody=fe,d.CardTitle=pe,d.Color=L,d.Container=me,d.Modal=Le,d.RoundedSizeUtils=I,d.SearchBar=We,d.SimpleButton=ce,d.Size=F,d.Step=Se,d.StepList=we,d.StepPanel=$e,d.StepPanels=Me,d.Stepper=xe,d.Table=ke,d.TableSizeUtils=X,d.TextColorUtils=Q,d.dendelionSafeList=Oe,Object.defineProperty(d,Symbol.toStringTag,{value:"Module"})});
@@ -1,19 +1,9 @@
1
1
  import { Color } from '@/types';
2
2
  import { ButtonProps } from './interface';
3
- declare const classes: import("vue").ComputedRef<string>;
4
- declare const __VLS_ctx: InstanceType<__VLS_PickNotAny<typeof __VLS_self, new () => {}>>;
5
3
  declare var __VLS_1: {};
6
- type __VLS_Slots = __VLS_PrettifyGlobal<__VLS_OmitStringIndex<typeof __VLS_ctx.$slots> & {
4
+ type __VLS_Slots = {} & {
7
5
  default?: (props: typeof __VLS_1) => any;
8
- }>;
9
- declare const __VLS_self: import("vue").DefineComponent<ButtonProps, {
10
- classes: typeof classes;
11
- }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ButtonProps> & Readonly<{}>, {
12
- type: import("./interface").Type;
13
- color: Color;
14
- soft: boolean;
15
- outline: boolean;
16
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
6
+ };
17
7
  declare const __VLS_component: import("vue").DefineComponent<ButtonProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ButtonProps> & Readonly<{}>, {
18
8
  type: import("./interface").Type;
19
9
  color: Color;
@@ -1,18 +1,9 @@
1
1
  import { CardProps } from './interface';
2
2
  import { Color } from '@/types';
3
- declare const classes: import("vue").Ref<string, string>;
4
- declare const __VLS_ctx: InstanceType<__VLS_PickNotAny<typeof __VLS_self, new () => {}>>;
5
3
  declare var __VLS_1: {};
6
- type __VLS_Slots = __VLS_PrettifyGlobal<__VLS_OmitStringIndex<typeof __VLS_ctx.$slots> & {
4
+ type __VLS_Slots = {} & {
7
5
  default?: (props: typeof __VLS_1) => any;
8
- }>;
9
- declare const __VLS_self: import("vue").DefineComponent<CardProps, {
10
- classes: typeof classes;
11
- }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<CardProps> & Readonly<{}>, {
12
- backgroundColor: Color;
13
- shadow: boolean;
14
- fullWidth: boolean;
15
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
6
+ };
16
7
  declare const __VLS_component: import("vue").DefineComponent<CardProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<CardProps> & Readonly<{}>, {
17
8
  backgroundColor: Color;
18
9
  shadow: boolean;
@@ -1,9 +1,7 @@
1
- declare const __VLS_ctx: InstanceType<__VLS_PickNotAny<typeof __VLS_self, new () => {}>>;
2
1
  declare var __VLS_1: {};
3
- type __VLS_Slots = __VLS_PrettifyGlobal<__VLS_OmitStringIndex<typeof __VLS_ctx.$slots> & {
2
+ type __VLS_Slots = {} & {
4
3
  default?: (props: typeof __VLS_1) => any;
5
- }>;
6
- declare const __VLS_self: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
4
+ };
7
5
  declare const __VLS_component: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
8
6
  declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
9
7
  export default _default;
@@ -1,16 +1,8 @@
1
1
  import { ContainerProps } from './interface';
2
- declare const classes: import("vue").Ref<string[], string[]>;
3
- declare const __VLS_ctx: InstanceType<__VLS_PickNotAny<typeof __VLS_self, new () => {}>>;
4
2
  declare var __VLS_1: {};
5
- type __VLS_Slots = __VLS_PrettifyGlobal<__VLS_OmitStringIndex<typeof __VLS_ctx.$slots> & {
3
+ type __VLS_Slots = {} & {
6
4
  default?: (props: typeof __VLS_1) => any;
7
- }>;
8
- declare const __VLS_self: import("vue").DefineComponent<ContainerProps, {
9
- classes: typeof classes;
10
- }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ContainerProps> & Readonly<{}>, {
11
- container: boolean;
12
- padding: boolean;
13
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
5
+ };
14
6
  declare const __VLS_component: import("vue").DefineComponent<ContainerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ContainerProps> & Readonly<{}>, {
15
7
  container: boolean;
16
8
  padding: boolean;
@@ -1,30 +1,9 @@
1
1
  import { ModalProps } from './interface';
2
2
  import { Size } from '@/types';
3
- declare const modal: import("vue").Ref<HTMLDialogElement | null, HTMLDialogElement | null>;
4
- declare const emit: (event: "close", ...args: any[]) => void;
5
- declare const boxClasses: import("vue").Ref<string, string>;
6
- declare const classes: import("vue").Ref<string, string>;
7
- declare const closeButtonClasses: import("vue").Ref<string, string>;
8
- declare const __VLS_ctx: InstanceType<__VLS_PickNotAny<typeof __VLS_self, new () => {}>>;
9
3
  declare var __VLS_1: {};
10
- type __VLS_Slots = __VLS_PrettifyGlobal<__VLS_OmitStringIndex<typeof __VLS_ctx.$slots> & {
4
+ type __VLS_Slots = {} & {
11
5
  default?: (props: typeof __VLS_1) => any;
12
- }>;
13
- declare const __VLS_self: import("vue").DefineComponent<ModalProps, {
14
- modal: typeof modal;
15
- emit: typeof emit;
16
- boxClasses: typeof boxClasses;
17
- classes: typeof classes;
18
- closeButtonClasses: typeof closeButtonClasses;
19
- }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
20
- close: (...args: any[]) => void;
21
- }, string, import("vue").PublicProps, Readonly<ModalProps> & Readonly<{
22
- onClose?: ((...args: any[]) => any) | undefined;
23
- }>, {
24
- closeButton: boolean;
25
- overflow: boolean;
26
- closeButtonSize: Size;
27
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
6
+ };
28
7
  declare const __VLS_component: import("vue").DefineComponent<ModalProps, {
29
8
  showModal: () => void;
30
9
  closeModal: () => void;
@@ -1,14 +1,8 @@
1
- import { type Ref } from 'vue';
2
1
  import { StepperProps } from './interface';
3
- declare const activeClass: Ref<string, string>;
4
- declare const __VLS_ctx: InstanceType<__VLS_PickNotAny<typeof __VLS_self, new () => {}>>;
5
2
  declare var __VLS_1: {};
6
- type __VLS_Slots = __VLS_PrettifyGlobal<__VLS_OmitStringIndex<typeof __VLS_ctx.$slots> & {
3
+ type __VLS_Slots = {} & {
7
4
  default?: (props: typeof __VLS_1) => any;
8
- }>;
9
- declare const __VLS_self: import("vue").DefineComponent<StepperProps, {
10
- activeClass: typeof activeClass;
11
- }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<StepperProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
5
+ };
12
6
  declare const __VLS_component: import("vue").DefineComponent<StepperProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<StepperProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
13
7
  declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
14
8
  export default _default;
@@ -1,9 +1,7 @@
1
- declare const __VLS_ctx: InstanceType<__VLS_PickNotAny<typeof __VLS_self, new () => {}>>;
2
1
  declare var __VLS_1: {};
3
- type __VLS_Slots = __VLS_PrettifyGlobal<__VLS_OmitStringIndex<typeof __VLS_ctx.$slots> & {
2
+ type __VLS_Slots = {} & {
4
3
  default?: (props: typeof __VLS_1) => any;
5
- }>;
6
- declare const __VLS_self: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
4
+ };
7
5
  declare const __VLS_component: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
8
6
  declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
9
7
  export default _default;
@@ -1,17 +1,10 @@
1
1
  import { StepperProps } from './interface';
2
- declare const stepperValue: import("vue").ComputedRef<string | undefined>;
3
- declare const activateCallback: (index: number) => void;
4
- declare const __VLS_ctx: InstanceType<__VLS_PickNotAny<typeof __VLS_self, new () => {}>>;
5
2
  declare var __VLS_1: {
6
3
  activateCallback: (index: number) => void;
7
4
  };
8
- type __VLS_Slots = __VLS_PrettifyGlobal<__VLS_OmitStringIndex<typeof __VLS_ctx.$slots> & {
5
+ type __VLS_Slots = {} & {
9
6
  default?: (props: typeof __VLS_1) => any;
10
- }>;
11
- declare const __VLS_self: import("vue").DefineComponent<StepperProps, {
12
- stepperValue: typeof stepperValue;
13
- activateCallback: typeof activateCallback;
14
- }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<StepperProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
7
+ };
15
8
  declare const __VLS_component: import("vue").DefineComponent<StepperProps, {
16
9
  activateCallback: (index: number) => void;
17
10
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<StepperProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
@@ -1,18 +1,10 @@
1
1
  import { type Ref } from 'vue';
2
- declare const stepper: {
3
- value: Ref<string>;
4
- updateValue: (value: string) => void;
5
- } | undefined;
6
- declare const __VLS_ctx: InstanceType<__VLS_PickNotAny<typeof __VLS_self, new () => {}>>;
7
2
  declare var __VLS_5: {
8
3
  currentStep: Ref<string, string>;
9
4
  };
10
- type __VLS_Slots = __VLS_PrettifyGlobal<__VLS_OmitStringIndex<typeof __VLS_ctx.$slots> & {
5
+ type __VLS_Slots = {} & {
11
6
  default?: (props: typeof __VLS_5) => any;
12
- }>;
13
- declare const __VLS_self: import("vue").DefineComponent<{}, {
14
- stepper: typeof stepper;
15
- }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
7
+ };
16
8
  declare const __VLS_component: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
17
9
  declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
18
10
  export default _default;
@@ -1,19 +1,10 @@
1
1
  import { StepperProps } from './interface';
2
- declare const updateValue: (value: string) => void;
3
- declare const __VLS_ctx: InstanceType<__VLS_PickNotAny<typeof __VLS_self, new () => {}>>;
4
2
  declare var __VLS_1: {
5
3
  updateValue: (value: string) => void;
6
4
  };
7
- type __VLS_Slots = __VLS_PrettifyGlobal<__VLS_OmitStringIndex<typeof __VLS_ctx.$slots> & {
5
+ type __VLS_Slots = {} & {
8
6
  default?: (props: typeof __VLS_1) => any;
9
- }>;
10
- declare const __VLS_self: import("vue").DefineComponent<StepperProps, {
11
- updateValue: typeof updateValue;
12
- }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
13
- "update:value": (...args: any[]) => void;
14
- }, string, import("vue").PublicProps, Readonly<StepperProps> & Readonly<{
15
- "onUpdate:value"?: ((...args: any[]) => any) | undefined;
16
- }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
7
+ };
17
8
  declare const __VLS_component: import("vue").DefineComponent<StepperProps, {
18
9
  updateValue: (value: string) => void;
19
10
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
@@ -1,5 +1,5 @@
1
1
  import { Size } from "@/types";
2
- import { Component, VNode } from "vue";
2
+ import { Component } from "vue";
3
3
  export type TableProps<T> = {
4
4
  zebra?: boolean;
5
5
  pinRows?: boolean;
@@ -14,7 +14,7 @@ export type TableProps<T> = {
14
14
  export type Column<T> = {
15
15
  title: string;
16
16
  data: string;
17
- render?: (text: string, row: T) => string | Component | VNode;
17
+ render?: (text: string, row: T) => string | ColumnComponent;
18
18
  extraClasses?: ExtraClasses;
19
19
  };
20
20
  export type ExtraClasses = {
@@ -25,3 +25,11 @@ export type CellClasses = {
25
25
  index: number;
26
26
  classes: string[];
27
27
  };
28
+ export type ComponentImport = Promise<{
29
+ default: Component;
30
+ }>;
31
+ export type ComponentOrImport = Component | ComponentImport | (() => ComponentImport);
32
+ export type ColumnComponent = {
33
+ component: ComponentOrImport;
34
+ props: any;
35
+ };
package/package.json CHANGED
@@ -1,75 +1,79 @@
1
- {
2
- "name": "dendelion-ui",
3
- "private": false,
4
- "description": "Simpel component library using Tailwind css and DaisyUI",
5
- "version": "0.0.12",
6
- "author": "ThatzOkay",
7
- "license": "MIT",
8
- "homepage": "https://github.com/ThatzOkay/DendelionUI#readme",
9
- "repository": {
10
- "url": "git+https://github.com/ThatzOkay/DendelionUI.git",
11
- "type": "git"
12
- },
13
- "bugs": {
14
- "url": "https://github.com/ThatzOkay/DendelionUI/issues"
15
- },
16
- "keywords": [
17
- "Tailwind",
18
- "DaisyUI",
19
- "Vue",
20
- "Component",
21
- "Library"
22
- ],
23
- "type": "module",
24
- "files": [
25
- "dist",
26
- "src"
27
- ],
28
- "main": "./dist/dendelion-ui.umd.js",
29
- "module": "./dist/dendelion-ui.es.js",
30
- "typings": "./dist/types/index.d.ts",
31
- "types": "./dist/types/index.d.ts",
32
- "exports": {
33
- ".": {
34
- "types": "./dist/types/index.d.ts",
35
- "import": "./dist/dendelion-ui.es.js",
36
- "require": "./dist/dendelion-ui.umd.js"
37
- }
38
- },
39
- "scripts": {
40
- "dev": "cross-env MODE=demo npm run vite",
41
- "vite": "vite",
42
- "clean": "rimraf dist",
43
- "build": "npm run clean && npm run build:lib && npm run build:tsc",
44
- "build:lib": "cross-env MODE=lib vite build",
45
- "build:tsc": "vue-tsc --emitDeclarationOnly",
46
- "build:demo": "cross-env MODE=demo vite build",
47
- "docs:dev": "vitepress dev docs",
48
- "docs:build": "vitepress build docs",
49
- "docs:preview": "vitepress preview docs",
50
- "lint": "eslint ",
51
- "lint:fix": "eslint --fix ",
52
- "preview": "vite preview"
53
- },
54
- "dependencies": {
55
- "@nozbe/microfuzz": "^1.0.0",
56
- "classnames": "^2.5.1",
57
- "fuzzysearch": "^1.0.3",
58
- "vue": "^3.5.13"
59
- },
60
- "devDependencies": {
61
- "@vitejs/plugin-vue": "^5.2.1",
62
- "@vue/tsconfig": "^0.7.0",
63
- "autoprefixer": "^10.4.20",
64
- "cross-env": "^7.0.3",
65
- "daisyui": "^4.12.23",
66
- "eslint": "^9.21.0",
67
- "eslint-plugin-vue": "^9.32.0",
68
- "fluid-tailwind": "^1.0.4",
69
- "rimraf": "^6.0.1",
70
- "typescript": "^5.8.2",
71
- "typescript-eslint": "^8.26.0",
72
- "vite": "^6.2.0",
73
- "vue-tsc": "^2.2.8"
74
- }
75
- }
1
+ {
2
+ "name": "dendelion-ui",
3
+ "private": false,
4
+ "description": "Simpel component library using Tailwind css and DaisyUI",
5
+ "version": "0.0.13",
6
+ "author": "ThatzOkay",
7
+ "license": "MIT",
8
+ "homepage": "https://github.com/ThatzOkay/DendelionUI#readme",
9
+ "repository": {
10
+ "url": "git+https://github.com/ThatzOkay/DendelionUI.git",
11
+ "type": "git"
12
+ },
13
+ "bugs": {
14
+ "url": "https://github.com/ThatzOkay/DendelionUI/issues"
15
+ },
16
+ "keywords": [
17
+ "Tailwind",
18
+ "DaisyUI",
19
+ "Vue",
20
+ "Component",
21
+ "Library"
22
+ ],
23
+ "type": "module",
24
+ "files": [
25
+ "dist",
26
+ "src"
27
+ ],
28
+ "main": "./dist/dendelion-ui.umd.js",
29
+ "module": "./dist/dendelion-ui.es.js",
30
+ "typings": "./dist/types/index.d.ts",
31
+ "types": "./dist/types/index.d.ts",
32
+ "exports": {
33
+ ".": {
34
+ "types": "./dist/types/index.d.ts",
35
+ "import": "./dist/dendelion-ui.es.js",
36
+ "require": "./dist/dendelion-ui.umd.js"
37
+ }
38
+ },
39
+ "scripts": {
40
+ "dev": "cross-env MODE=demo npm run vite",
41
+ "vite": "vite",
42
+ "clean": "rimraf dist",
43
+ "build": "npm run clean && npm run build:lib && npm run build:tsc",
44
+ "build:lib": "cross-env MODE=lib vite build",
45
+ "build:tsc": "vue-tsc --emitDeclarationOnly",
46
+ "build:demo": "cross-env MODE=demo vite build",
47
+ "docs:dev": "vitepress dev docs",
48
+ "docs:build": "vitepress build docs",
49
+ "docs:preview": "vitepress preview docs",
50
+ "lint": "eslint ",
51
+ "lint:fix": "eslint --fix ",
52
+ "format": "prettier ./src --write",
53
+ "preview": "vite preview"
54
+ },
55
+ "dependencies": {
56
+ "@nozbe/microfuzz": "^1.0.0",
57
+ "classnames": "^2.5.1",
58
+ "fuzzysearch": "^1.0.3",
59
+ "vue": "^3.5.13"
60
+ },
61
+ "devDependencies": {
62
+ "@vitejs/plugin-vue": "^5.2.4",
63
+ "@vue/tsconfig": "^0.7.0",
64
+ "autoprefixer": "^10.4.21",
65
+ "cross-env": "^7.0.3",
66
+ "daisyui": "^4.12.24",
67
+ "eslint": "^9.26.0",
68
+ "eslint-plugin-vue": "^9.33.0",
69
+ "fluid-tailwind": "^1.0.4",
70
+ "prettier": "^3.5.3",
71
+ "prettier-eslint": "^16.4.2",
72
+ "prettier-plugin-tailwindcss": "^0.6.11",
73
+ "rimraf": "^6.0.1",
74
+ "typescript": "^5.8.3",
75
+ "typescript-eslint": "^8.32.0",
76
+ "vite": "^6.3.5",
77
+ "vue-tsc": "^2.2.10"
78
+ }
79
+ }
@@ -1,29 +1,32 @@
1
- <template>
2
- <button v-on:click="click ? click : undefined" :class="classes" :type="type" :disabled="disabled || loading">
3
- <span class="loading loading-spinner loading-md absolute hidden group-[.is-loading]:block"></span>
4
- <span class="group-[.is-loading]:text-transparent"><slot /></span>
5
- </button>
6
- </template>
7
-
8
- <script setup lang="ts">
9
- import { Color, ButtonColorUtils } from '@/types';
10
- import { ButtonProps } from './interface';
11
- import classNames from 'classnames';
12
- import { computed } from 'vue';
13
-
14
- const props = withDefaults(defineProps<ButtonProps>(), {
15
- type: 'button',
16
- color: Color.Neutral,
17
- soft: false,
18
- outline: false,
19
- })
20
-
21
- const classes = computed(() => classNames('btn',
22
- 'group',
23
- ButtonColorUtils.toClassName(props.color),
24
- props.soft ? 'btn-soft' : '',
25
- props.outline ? 'btn-outline' : '',
26
- props.loading ? 'is-loading' : '',
27
- props.disabled ? 'disabled' : ''
28
- ))
29
- </script>
1
+ <template>
2
+ <button v-on:click="click ? click : undefined" :class="classes" :type="type" :disabled="disabled || loading">
3
+ <span class="loading loading-spinner loading-md absolute hidden group-[.is-loading]:block"></span>
4
+ <span class="group-[.is-loading]:text-transparent"><slot /></span>
5
+ </button>
6
+ </template>
7
+
8
+ <script setup lang="ts">
9
+ import { Color, ButtonColorUtils } from '@/types';
10
+ import { ButtonProps } from './interface';
11
+ import classNames from 'classnames';
12
+ import { computed } from 'vue';
13
+
14
+ const props = withDefaults(defineProps<ButtonProps>(), {
15
+ type: 'button',
16
+ color: Color.Neutral,
17
+ soft: false,
18
+ outline: false,
19
+ });
20
+
21
+ const classes = computed(() =>
22
+ classNames(
23
+ 'btn',
24
+ 'group',
25
+ ButtonColorUtils.toClassName(props.color),
26
+ props.soft ? 'btn-soft' : '',
27
+ props.outline ? 'btn-outline' : '',
28
+ props.loading ? 'is-loading' : '',
29
+ props.disabled ? 'disabled' : '',
30
+ ),
31
+ );
32
+ </script>
@@ -1,8 +1,5 @@
1
- <template>
2
- <button>
3
-
4
- </button>
5
- </template>
6
-
7
- <script setup lang="ts">
8
- </script>
1
+ <template>
2
+ <button></button>
3
+ </template>
4
+
5
+ <script setup lang="ts"></script>
@@ -1,3 +1,3 @@
1
- export { default as Button } from "./Button.vue";
2
- export { default as SimpleButton } from "./SimpleButton.vue";
3
- export type { ButtonProps, Type } from "./interface";
1
+ export { default as Button } from './Button.vue';
2
+ export { default as SimpleButton } from './SimpleButton.vue';
3
+ export type { ButtonProps, Type } from './interface';
@@ -1,13 +1,13 @@
1
- import { Color } from "@/types";
2
-
3
- export type Type = 'button' | 'submit' | 'reset';
4
-
5
- export type ButtonProps = {
6
- type?: Type,
7
- loading?: boolean,
8
- color?: Color,
9
- soft?: boolean,
10
- outline?: boolean,
11
- disabled?: boolean,
12
- click?: () => void,
13
- };
1
+ import { Color } from '@/types';
2
+
3
+ export type Type = 'button' | 'submit' | 'reset';
4
+
5
+ export type ButtonProps = {
6
+ type?: Type;
7
+ loading?: boolean;
8
+ color?: Color;
9
+ soft?: boolean;
10
+ outline?: boolean;
11
+ disabled?: boolean;
12
+ click?: () => void;
13
+ };