svelte-radio-checkbox-z
Version:
Svelte UI Check/Radio [RadioGroup, Checkbox(s)]. Custom (test-svelte)
2 lines (1 loc) • 17 kB
JavaScript
!function(o,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(o=o||self).RadioCheckboxZ=e()}(this,(function(){"use strict";function o(){}function e(o){return o()}function t(){return Object.create(null)}function i(o){o.forEach(e)}function c(o){return"function"==typeof o}function n(o,e){return o!=o?e==e:o!==e||o&&"object"==typeof o||"function"==typeof o}function l(o,e){o.appendChild(e)}function s(o,e,t){o.insertBefore(e,t||null)}function r(o){o.parentNode.removeChild(o)}function d(o){return document.createElement(o)}function a(o){return document.createTextNode(o)}function k(){return a(" ")}function h(o,e,t){null==t?o.removeAttribute(e):o.getAttribute(e)!==t&&o.setAttribute(e,t)}function p(o,e,t,i){o.style.setProperty(e,t,i?"important":"")}class v{constructor(o,e=null){this.e=d("div"),this.a=e,this.u(o)}m(o,e=null){for(let t=0;t<this.n.length;t+=1)s(o,this.n[t],e);this.t=o}u(o){this.e.innerHTML=o,this.n=Array.from(this.e.childNodes)}p(o){this.d(),this.u(o),this.m(this.t,this.a)}d(){this.n.forEach(r)}}let u;function f(o){u=o}function m(){if(!u)throw new Error("Function called outside component initialization");return u}function b(){const o=m();return(e,t)=>{const i=o.$$.callbacks[e];if(i){const c=function(o,e){const t=document.createEvent("CustomEvent");return t.initCustomEvent(o,!1,!1,e),t}(e,t);i.slice().forEach(e=>{e.call(o,c)})}}}const x=[],g=[],y=[],C=[],$=Promise.resolve();let w=!1;function E(o){y.push(o)}let N=!1;const _=new Set;function S(){if(!N){N=!0;do{for(let o=0;o<x.length;o+=1){const e=x[o];f(e),z(e.$$)}for(x.length=0;g.length;)g.pop()();for(let o=0;o<y.length;o+=1){const e=y[o];_.has(e)||(_.add(e),e())}y.length=0}while(x.length);for(;C.length;)C.pop()();w=!1,N=!1,_.clear()}}function z(o){if(null!==o.fragment){o.update(),i(o.before_update);const e=o.dirty;o.dirty=[-1],o.fragment&&o.fragment.p(o.ctx,e),o.after_update.forEach(E)}}const A=new Set;function B(o,e){-1===o.$$.dirty[0]&&(x.push(o),w||(w=!0,$.then(S)),o.$$.dirty.fill(0)),o.$$.dirty[e/31|0]|=1<<e%31}function I(n,l,s,d,a,k,h=[-1]){const p=u;f(n);const v=l.props||{},m=n.$$={fragment:null,ctx:null,props:k,update:o,not_equal:a,bound:t(),on_mount:[],on_destroy:[],before_update:[],after_update:[],context:new Map(p?p.$$.context:[]),callbacks:t(),dirty:h};let b=!1;if(m.ctx=s?s(n,v,(o,e,...t)=>{const i=t.length?t[0]:e;return m.ctx&&a(m.ctx[o],m.ctx[o]=i)&&(m.bound[o]&&m.bound[o](i),b&&B(n,o)),e}):[],m.update(),b=!0,i(m.before_update),m.fragment=!!d&&d(m.ctx),l.target){if(l.hydrate){const o=function(o){return Array.from(o.childNodes)}(l.target);m.fragment&&m.fragment.l(o),o.forEach(r)}else m.fragment&&m.fragment.c();l.intro&&((x=n.$$.fragment)&&x.i&&(A.delete(x),x.i(g))),function(o,t,n){const{fragment:l,on_mount:s,on_destroy:r,after_update:d}=o.$$;l&&l.m(t,n),E(()=>{const t=s.map(e).filter(c);r?r.push(...t):i(t),o.$$.on_mount=[]}),d.forEach(E)}(n,l.target,l.anchor),S()}var x,g;f(p)}const j={fill:"ldk-theme-fill",in:"ldk-theme-in",out:"ldk-theme-out",tick:"ldk-theme-tick-check","tick-fill":"ldk-theme-tick-check-fill","tick-fill-in":"ldk-theme-tick-check-fill-in",x:"ldk-theme-x-check","x-fill":"ldk-theme-x-check-fill","x-fill-in":"ldk-theme-x-check-fill-in"},F=o=>null==o,q=["string","number","boolean"];const D=o=>o||"#000000",M=o=>o||"#cbd1d8",L=o=>o||"#4169E1",T=o=>o||"#4169E1",O=o=>o||"#4169E1",P=o=>o||"#ffffff";function H(o,e,t){const i=o.slice();return i[37]=e[t],i}function R(o){let e,t,i,c,n;return{c(){e=d("input"),h(e,"type",t=o[6]?"checkbox":"radio"),h(e,"name",i=o[11]()),h(e,"class","sv-option-input"),e.disabled=c=o[0]||o[37].disabled,e.checked=n=o[37].checked},m(o,t){s(o,e,t)},p(o,l){64&l[0]&&t!==(t=o[6]?"checkbox":"radio")&&h(e,"type",t),2048&l[0]&&i!==(i=o[11]())&&h(e,"name",i),4097&l[0]&&c!==(c=o[0]||o[37].disabled)&&(e.disabled=c),4096&l[0]&&n!==(n=o[37].checked)&&(e.checked=n)},d(o){o&&r(e)}}}function U(o){let e,t,i,c,n,l,a,p;function v(o,e){return o[37].checkedIcon||o[7]?G:Z}let u=v(o),f=u(o);return{c(){e=d("input"),l=k(),a=d("i"),f.c(),h(e,"type",t=o[6]?"checkbox":"radio"),h(e,"name",i=o[11]()),h(e,"class","sv-option-input"),e.disabled=c=o[0]||o[37].disabled,e.checked=n=o[37].checked,h(a,"class","sv-option-tick"),h(a,"style",p=`width: ${o[8]}; height: ${o[8]}; font-size: ${o[9]}`)},m(o,t){s(o,e,t),s(o,l,t),s(o,a,t),f.m(a,null)},p(o,l){64&l[0]&&t!==(t=o[6]?"checkbox":"radio")&&h(e,"type",t),2048&l[0]&&i!==(i=o[11]())&&h(e,"name",i),4097&l[0]&&c!==(c=o[0]||o[37].disabled)&&(e.disabled=c),4096&l[0]&&n!==(n=o[37].checked)&&(e.checked=n),u===(u=v(o))&&f?f.p(o,l):(f.d(1),f=u(o),f&&(f.c(),f.m(a,null))),768&l[0]&&p!==(p=`width: ${o[8]}; height: ${o[8]}; font-size: ${o[9]}`)&&h(a,"style",p)},d(o){o&&r(e),o&&r(l),o&&r(a),f.d()}}}function Z(e){let t;return{c(){t=d("span"),h(t,"class","sv-option-icon")},m(o,e){s(o,t,e)},p:o,d(o){o&&r(t)}}}function G(o){let e,t;return{c(){e=d("span"),h(e,"class","sv-option-icon sv-option-icon-custom"),h(e,"style",t=o[16](o[37]))},m(o,t){s(o,e,t)},p(o,i){4096&i[0]&&t!==(t=o[16](o[37]))&&h(e,"style",t)},d(o){o&&r(e)}}}function J(o){let e,t,i,c=o[37].label+"";return{c(){e=d("label"),t=a(c),h(e,"class",i=o[17](o[37].labelClassName))},m(o,i){s(o,e,i),l(e,t)},p(o,n){4096&n[0]&&c!==(c=o[37].label+"")&&function(o,e){e=""+e,o.data!==e&&(o.data=e)}(t,c),4096&n[0]&&i!==(i=o[17](o[37].labelClassName))&&h(e,"class",i)},d(o){o&&r(e)}}}function K(o){let e,t=o[37].htmlData+"";return{c(){e=new v(t,null)},m(o,t){e.m(o,t)},p(o,i){4096&i[0]&&t!==(t=o[37].htmlData+"")&&e.p(t)},d(o){o&&e.d()}}}function Q(o){let e,t,i,c,n,a,p;function v(o,e){return(null==t||8192&e[0])&&(t=!!o[13]()),t?U:R}let u=v(o,[-1]),f=u(o);function m(o,e){return o[37].htmlData?K:J}let b=m(o),x=b(o);function g(...e){return o[36](o[37],...e)}return{c(){e=d("span"),f.c(),i=k(),x.c(),c=k(),h(e,"class",n=o[15](o[37],o[0])),h(e,"style",a="min-height: "+o[10])},m(o,t,n){var r,d,a,k;s(o,e,t),f.m(e,null),l(e,i),x.m(e,null),l(e,c),n&&p(),d="click",a=g,(r=e).addEventListener(d,a,k),p=()=>r.removeEventListener(d,a,k)},p(t,l){u===(u=v(o=t,l))&&f?f.p(o,l):(f.d(1),f=u(o),f&&(f.c(),f.m(e,i))),b===(b=m(o))&&x?x.p(o,l):(x.d(1),x=b(o),x&&(x.c(),x.m(e,c))),4097&l[0]&&n!==(n=o[15](o[37],o[0]))&&h(e,"class",n),1024&l[0]&&a!==(a="min-height: "+o[10])&&h(e,"style",a)},d(o){o&&r(e),f.d(),x.d(),p()}}}function V(e){let t,i,c=e[12](),n=[];for(let o=0;o<c.length;o+=1)n[o]=Q(H(e,c,o));return{c(){t=d("div");for(let o=0;o<n.length;o+=1)n[o].c();h(t,"class",i=e[14]()),p(t,"--sC",L(e[1])),p(t,"--usC",M(e[2])),p(t,"--tbC",O(e[3])),p(t,"--tfC",P(e[3])),p(t,"--hC",T(e[4]||e[1])),p(t,"--fbC",D(e[5]))},m(o,e){s(o,t,e);for(let o=0;o<n.length;o+=1)n[o].m(t,null)},p(o,e){if(507841&e[0]){let i;for(c=o[12](),i=0;i<c.length;i+=1){const l=H(o,c,i);n[i]?n[i].p(l,e):(n[i]=Q(l),n[i].c(),n[i].m(t,null))}for(;i<n.length;i+=1)n[i].d(1);n.length=c.length}2&e[0]&&p(t,"--sC",L(o[1])),4&e[0]&&p(t,"--usC",M(o[2])),8&e[0]&&p(t,"--tbC",O(o[3])),8&e[0]&&p(t,"--tfC",P(o[3])),18&e[0]&&p(t,"--hC",T(o[4]||o[1])),32&e[0]&&p(t,"--fbC",D(o[5]))},i:o,o:o,d(o){o&&r(t),function(o,e){for(let t=0;t<o.length;t+=1)o[t]&&o[t].d(e)}(n,o)}}}function W(o,e,t){let{value:i}=e,{options:c=[]}=e,{className:n=""}=e,{groupName:l}=e,{theme:s}=e,{disabled:r=!1}=e,{boxSize:d=16}=e,{height:a=24}=e,{selectColor:k}=e,{unSelectColor:h}=e,{tickColor:p}=e,{hoverColor:v}=e,{tabFocusColor:u}=e,{vertical:f=!1}=e,{displayBox:x=!1}=e,{checkBox:g=!1}=e,{checkedIcon:y}=e,C=("xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx-"+ +new Date).replace(/[xy]/g,(function(o){let e=16*Math.random()|0;return("x"===o?e:3&e|8).toString(16)})),$=[],w=!1,E=0,N=0,_=0;const S=b();var z;z=()=>{},m().$$.on_mount.push(z);const A=o=>Array.from(new Set(o)).join(" ").trim(),B=()=>{t(28,$=F(i)?[]:((o,e)=>Array.isArray(o)?e?o:o.slice(0,1):[o])(i,g))},I=o=>F(i)||Array.isArray(i)?o:o[0],D=(o,{target:e})=>{if(r||o.disabled)return;let i=e.closest("span.sv-option-item");if(i){let o=i.querySelector("input.sv-option-input");o&&o.focus()}let c=[o.value];g&&(c=o.checked?[...$].filter(e=>e!==o.value):[...$,o.value]),t(28,$=c),S("change",I(c)),t(29,w=!0)};let M,L,T,O;return o.$set=o=>{"value"in o&&t(19,i=o.value),"options"in o&&t(20,c=o.options),"className"in o&&t(21,n=o.className),"groupName"in o&&t(22,l=o.groupName),"theme"in o&&t(23,s=o.theme),"disabled"in o&&t(0,r=o.disabled),"boxSize"in o&&t(24,d=o.boxSize),"height"in o&&t(25,a=o.height),"selectColor"in o&&t(1,k=o.selectColor),"unSelectColor"in o&&t(2,h=o.unSelectColor),"tickColor"in o&&t(3,p=o.tickColor),"hoverColor"in o&&t(4,v=o.hoverColor),"tabFocusColor"in o&&t(5,u=o.tabFocusColor),"vertical"in o&&t(26,f=o.vertical),"displayBox"in o&&t(27,x=o.displayBox),"checkBox"in o&&t(6,g=o.checkBox),"checkedIcon"in o&&t(7,y=o.checkedIcon)},o.$$.update=()=>{if(1124073472&o.$$.dirty[0]){let o=parseInt(d);t(10,_=O(a)),t(8,E=o+"px"),t(9,N=Math.floor(.8*o)+"px")}537395200&o.$$.dirty[0]&&i&&(w?t(29,w=!1):B()),4194304&o.$$.dirty[0]&&t(11,M=()=>l||"group-name-"+C),269484032&o.$$.dirty[0]&&t(12,L=()=>c.map((o,e)=>function(o,e,t=[]){return q.includes(typeof o)?{label:o,value:o,checked:t.includes(o),index:e}:(o.checked=t.includes(o.value),{...o,index:e})}(o,e,$))),8388608&o.$$.dirty[0]&&t(13,T=()=>void 0!==j[s])},t(30,O=o=>/^\d*$/.test(o)?o+"px":o),[r,k,h,p,v,u,g,y,E,N,_,M,L,T,()=>A(["ldk-sv-radio-checkbox",f?"vertical":"ldk-none",j[s]||"ldk-theme",T()?"ldk-active":"ldk-none",n||"ldk-cn"]),({className:o,checked:e,disabled:t},i)=>A(["sv-option-item",o||"ldk-none",x?"ldk-cbx":"ldk-radio",e?"sv-option-checked":"ldk-none",i||t?"sv-option-disabled":"ldk-none"]),o=>o.checked?`\n background: url(${o.checkedIcon||y}) no-repeat center;\n width: ${N};\n height: ${N};\n `:"",o=>("sv-option-label "+(o||"")).trim(),D,i,c,n,l,s,d,a,f,x,$,w,O,C,S,A,B,I,(o,e)=>D(o,e)]}return class extends class{$destroy(){!function(o,e){const t=o.$$;null!==t.fragment&&(i(t.on_destroy),t.fragment&&t.fragment.d(e),t.on_destroy=t.fragment=null,t.ctx=[])}(this,1),this.$destroy=o}$on(o,e){const t=this.$$.callbacks[o]||(this.$$.callbacks[o]=[]);return t.push(e),()=>{const o=t.indexOf(e);-1!==o&&t.splice(o,1)}}$set(){}}{constructor(o){var e;super(),document.getElementById("svelte-n7qx72-style")||((e=d("style")).id="svelte-n7qx72-style",e.textContent='@charset "UTF-8";.ldk-sv-radio-checkbox{display:flex;flex-wrap:wrap;box-sizing:initial}.ldk-sv-radio-checkbox *{box-sizing:initial}.ldk-sv-radio-checkbox *::before{box-sizing:initial}.ldk-sv-radio-checkbox.vertical{flex-direction:column}.ldk-sv-radio-checkbox .sv-option-item{display:flex;min-height:24px;align-items:center;margin-right:1.5rem;cursor:pointer}.ldk-sv-radio-checkbox .sv-option-item input.sv-option-input{display:flex;justify-content:center;align-items:center;padding:0;margin:0;margin-right:0.5rem}.ldk-sv-radio-checkbox .sv-option-item label.sv-option-label{cursor:pointer;margin-bottom:0 !important}.ldk-sv-radio-checkbox .sv-option-item i.sv-option-tick{opacity:0;display:none;z-index:0}.ldk-sv-radio-checkbox .sv-option-item.sv-option-disabled{cursor:default !important;pointer-events:none}.ldk-sv-radio-checkbox .sv-option-item.sv-option-disabled label.sv-option-label{opacity:0.65;cursor:default !important}.ldk-sv-radio-checkbox .sv-option-item.sv-option-disabled i.sv-option-tick{opacity:0.5 !important}.ldk-sv-radio-checkbox.ldk-active input.sv-option-input{cursor:pointer;position:absolute;opacity:0;width:1px;height:1px;z-index:-1}.ldk-sv-radio-checkbox.ldk-active .sv-option-item label.sv-option-label{cursor:pointer;margin-top:1px;margin-bottom:1px}.ldk-sv-radio-checkbox.ldk-active .sv-option-item i.sv-option-tick{font-style:normal;position:relative;display:flex;justify-content:center;align-items:center;border:0.2rem solid;border-color:var(--usC);border-radius:10%;height:14px;width:14px;margin-right:0.5rem;opacity:1}.ldk-sv-radio-checkbox.ldk-active .sv-option-item i.sv-option-tick span.sv-option-icon{display:flex;justify-content:center;align-items:center;width:60%;height:60%;border-radius:10%;transition:background-color 0.25s linear;-webkit-transition:background-color 0.25s linear}.ldk-sv-radio-checkbox.ldk-active .sv-option-item input.sv-option-input:focus+i.sv-option-tick{box-shadow:0 0 4px 2px var(--fbC)}.ldk-sv-radio-checkbox.ldk-active .sv-option-item.ldk-radio i.sv-option-tick{border-radius:100%}.ldk-sv-radio-checkbox.ldk-active .sv-option-item.ldk-radio i.sv-option-tick span.sv-option-icon{border-radius:100%}.ldk-sv-radio-checkbox.ldk-active .sv-option-item:hover i.sv-option-tick{border-color:var(--hC)}.ldk-sv-radio-checkbox.ldk-active .sv-option-item:hover label.sv-option-label{color:var(--hC)}.ldk-sv-radio-checkbox.ldk-theme-x-check .sv-option-checked i.sv-option-tick span.sv-option-icon::before,.ldk-sv-radio-checkbox.ldk-theme-x-check-fill .sv-option-checked i.sv-option-tick span.sv-option-icon::before,.ldk-sv-radio-checkbox.ldk-theme-x-check-fill-in .sv-option-checked i.sv-option-tick span.sv-option-icon::before{content:"✘"}.ldk-sv-radio-checkbox.ldk-theme-x-check .sv-option-checked i.sv-option-tick span.sv-option-icon.sv-option-icon-custom::before,.ldk-sv-radio-checkbox.ldk-theme-x-check-fill .sv-option-checked i.sv-option-tick span.sv-option-icon.sv-option-icon-custom::before,.ldk-sv-radio-checkbox.ldk-theme-x-check-fill-in .sv-option-checked i.sv-option-tick span.sv-option-icon.sv-option-icon-custom::before{content:\'\' !important}.ldk-sv-radio-checkbox.ldk-theme-tick-check .sv-option-checked i.sv-option-tick span.sv-option-icon::before,.ldk-sv-radio-checkbox.ldk-theme-tick-check-fill .sv-option-checked i.sv-option-tick span.sv-option-icon::before,.ldk-sv-radio-checkbox.ldk-theme-tick-check-fill-in .sv-option-checked i.sv-option-tick span.sv-option-icon::before{content:"✔"}.ldk-sv-radio-checkbox.ldk-theme-tick-check .sv-option-checked i.sv-option-tick span.sv-option-icon.sv-option-icon-custom::before,.ldk-sv-radio-checkbox.ldk-theme-tick-check-fill .sv-option-checked i.sv-option-tick span.sv-option-icon.sv-option-icon-custom::before,.ldk-sv-radio-checkbox.ldk-theme-tick-check-fill-in .sv-option-checked i.sv-option-tick span.sv-option-icon.sv-option-icon-custom::before{content:\'\' !important}.ldk-sv-radio-checkbox.ldk-theme-x-check .sv-option-checked i.sv-option-tick,.ldk-sv-radio-checkbox.ldk-theme-tick-check .sv-option-checked i.sv-option-tick{color:var(--tbC);border-color:var(--sC)}.ldk-sv-radio-checkbox.ldk-theme-x-check .sv-option-checked label.sv-option-label,.ldk-sv-radio-checkbox.ldk-theme-tick-check .sv-option-checked label.sv-option-label{color:var(--sC)}.ldk-sv-radio-checkbox.ldk-theme-x-check-fill .sv-option-checked i.sv-option-tick,.ldk-sv-radio-checkbox.ldk-theme-tick-check-fill .sv-option-checked i.sv-option-tick,.ldk-sv-radio-checkbox.ldk-theme-fill .sv-option-checked i.sv-option-tick,.ldk-sv-radio-checkbox.ldk-theme-x-check-fill-in .sv-option-checked i.sv-option-tick,.ldk-sv-radio-checkbox.ldk-theme-tick-check-fill-in .sv-option-checked i.sv-option-tick{color:var(--tfC);border-color:var(--sC);background-color:var(--sC)}.ldk-sv-radio-checkbox.ldk-theme-x-check-fill .sv-option-checked label.sv-option-label,.ldk-sv-radio-checkbox.ldk-theme-tick-check-fill .sv-option-checked label.sv-option-label,.ldk-sv-radio-checkbox.ldk-theme-fill .sv-option-checked label.sv-option-label,.ldk-sv-radio-checkbox.ldk-theme-x-check-fill-in .sv-option-checked label.sv-option-label,.ldk-sv-radio-checkbox.ldk-theme-tick-check-fill-in .sv-option-checked label.sv-option-label{color:var(--sC)}.ldk-sv-radio-checkbox.ldk-theme-x-check-fill-in .sv-option-item i.sv-option-tick,.ldk-sv-radio-checkbox.ldk-theme-tick-check-fill-in .sv-option-item i.sv-option-tick{background-color:var(--usC)}.ldk-sv-radio-checkbox.ldk-theme-x-check-fill-in .sv-option-item:hover i.sv-option-tick,.ldk-sv-radio-checkbox.ldk-theme-tick-check-fill-in .sv-option-item:hover i.sv-option-tick{background-color:var(--hC)}.ldk-sv-radio-checkbox.ldk-theme-x-check-fill-in .sv-option-checked i.sv-option-tick,.ldk-sv-radio-checkbox.ldk-theme-tick-check-fill-in .sv-option-checked i.sv-option-tick{background-color:var(--sC)}.ldk-sv-radio-checkbox.ldk-theme-in .sv-option-checked i.sv-option-tick,.ldk-sv-radio-checkbox.ldk-theme-out .sv-option-checked i.sv-option-tick{color:var(--tfC)}.ldk-sv-radio-checkbox.ldk-theme-in .sv-option-checked i.sv-option-tick span.sv-option-icon,.ldk-sv-radio-checkbox.ldk-theme-out .sv-option-checked i.sv-option-tick span.sv-option-icon{background-color:var(--sC)}.ldk-sv-radio-checkbox.ldk-theme-in .sv-option-checked label.sv-option-label,.ldk-sv-radio-checkbox.ldk-theme-out .sv-option-checked label.sv-option-label{color:var(--sC)}.ldk-sv-radio-checkbox.ldk-theme-in .sv-option-checked i.sv-option-tick{border-color:var(--sC)}',l(document.head,e)),I(this,o,W,V,n,{value:19,options:20,className:21,groupName:22,theme:23,disabled:0,boxSize:24,height:25,selectColor:1,unSelectColor:2,tickColor:3,hoverColor:4,tabFocusColor:5,vertical:26,displayBox:27,checkBox:6,checkedIcon:7},[-1,-1])}}}));