lotus-ui-plus
Version:
Lotus UI Plus - Vue3 Component Library
3 lines (2 loc) • 4.86 kB
JavaScript
require("./style.css");
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("vue"),_=t.defineComponent({name:"LotusButton",props:{type:{type:String,default:"default"},size:{type:String,default:"default"},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1}},emits:["click"],setup(e,{emit:o,slots:a}){const u=n=>{e.disabled||e.loading||o("click",n)};return()=>{var n;return t.createVNode("button",{class:["lotus-button",`lotus-button--${e.type}`,`lotus-button--${e.size}`,{"is-disabled":e.disabled,"is-loading":e.loading}],disabled:e.disabled||e.loading,onClick:u},[e.loading&&t.createVNode("span",{class:"lotus-button__loading"},[t.createTextVNode("⏳")]),(n=a.default)==null?void 0:n.call(a)])}}}),h=Object.freeze(Object.defineProperty({__proto__:null,default:_},Symbol.toStringTag,{value:"Module"})),x=["type","value","placeholder","disabled","readonly","maxlength"],V=t.defineComponent({name:"LotusInput",__name:"index",props:{modelValue:{},type:{default:"text"},placeholder:{},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},maxlength:{},autoScrollIntoView:{type:Boolean,default:!0},scrollIntoViewDuration:{default:200}},emits:["update:modelValue","change","focus","blur"],setup(e,{emit:o}){const a=e,u=o,n=t.ref(),d=t.computed(()=>["lotus-input-wrapper",{"lotus-input-disabled":a.disabled}]),c=l=>{const s=l.target;u("update:modelValue",s.value)},r=l=>{const s=l.target;u("change",s.value)},i=l=>{a.autoScrollIntoView&&setTimeout(()=>{n.value&&n.value.scrollIntoView({behavior:"smooth",block:"center"})},200),u("focus",l)},f=l=>{u("blur",l)};return(l,s)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"containerRef",ref:n,class:"lotus-input-container"},[t.createElementVNode("div",{class:t.normalizeClass(d.value)},[t.createElementVNode("input",t.mergeProps({class:"lotus-input",type:e.type,value:e.modelValue,placeholder:e.placeholder,disabled:e.disabled,readonly:e.readonly,maxlength:e.maxlength,onInput:c,onChange:r,onFocus:i,onBlur:f},l.$attrs),null,16,x)],2)],512))}}),S=(e,o)=>{const a=e.__vccOpts||e;for(const[u,n]of o)a[u]=n;return a},m=S(V,[["__scopeId","data-v-61904576"]]),k=Object.freeze(Object.defineProperty({__proto__:null,default:m},Symbol.toStringTag,{value:"Module"})),B=Object.freeze(Object.defineProperty({__proto__:null,default:m},Symbol.toStringTag,{value:"Module"})),g=t.defineComponent({name:"LotusLock",props:{onTap:{type:Function,default:()=>Promise.resolve()},delay:{type:Number,default:1e3}},setup(e,o){const a=t.ref(!1);return()=>{var u,n;return t.createVNode("div",{class:["inline-block",o.attrs.class],onClick:async()=>{var d;if(!a.value){a.value=!0;try{await((d=e.onTap)==null?void 0:d.call(e,{...e},{...o.attrs}))}finally{setTimeout(()=>{a.value=!1},e.delay)}}}},[(n=(u=o.slots).default)==null?void 0:n.call(u)])}}}),L=Object.freeze(Object.defineProperty({__proto__:null,default:g},Symbol.toStringTag,{value:"Module"})),I=["value","placeholder","disabled","readonly","maxlength"],p=t.defineComponent({name:"LotusTextArea",__name:"index",props:{modelValue:{},placeholder:{},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},maxlength:{},autoScrollIntoView:{type:Boolean,default:!0},scrollIntoViewDuration:{default:200}},emits:["update:modelValue","change","focus","blur"],setup(e,{emit:o}){const a=e,u=o,n=t.ref(),d=t.computed(()=>["lotus-input-wrapper",{"lotus-input-disabled":a.disabled}]),c=l=>{const s=l.target;u("update:modelValue",s.value)},r=l=>{const s=l.target;u("change",s.value)},i=l=>{a.autoScrollIntoView&&setTimeout(()=>{n.value&&n.value.scrollIntoView({behavior:"smooth",block:"center"})},200),u("focus",l)},f=l=>{u("blur",l)};return(l,s)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"containerRef",ref:n,class:"lotus-input-container"},[t.createElementVNode("div",{class:t.normalizeClass(d.value)},[t.createElementVNode("textarea",t.mergeProps({class:"lotus-input",value:e.modelValue,placeholder:e.placeholder,disabled:e.disabled,readonly:e.readonly,maxlength:e.maxlength,onInput:c,onChange:r,onFocus:i,onBlur:f},l.$attrs),null,16,I)],2)],512))}}),T=Object.freeze(Object.defineProperty({__proto__:null,default:p},Symbol.toStringTag,{value:"Module"})),C=Object.freeze(Object.defineProperty({__proto__:null,default:p},Symbol.toStringTag,{value:"Module"})),b=Object.assign({"./components/LotusButton/index.tsx":h,"./components/LotusInput/index.ts":B,"./components/LotusInput/index.vue":k,"./components/LotusLock/index.tsx":L,"./components/LotusTextArea/index.ts":C,"./components/LotusTextArea/index.vue":T}),y=[];for(const e in b){const o=b[e].default;o&&o.name&&y.push(o)}const v=e=>{y.forEach(o=>{o.name&&e.component(o.name,o)})},O={install:v};exports.LotusButton=_;exports.LotusInput=m;exports.LotusLock=g;exports.LotusTextArea=p;exports.default=O;exports.install=v;