UNPKG

ll-package

Version:

2 lines (1 loc) 1.38 kB
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const l=require("vue"),r=require("../../utils/uiUtil.js"),C=require("../../PanelContext.js"),v=require("../../../_util/classNames.js"),T=l.defineComponent({name:"TimeUnitColumn",props:["prefixCls","units","onSelect","value","active","hideDisabledOptions"],setup(o){const{open:u}=C.useInjectPanel(),n=l.shallowRef(null),c=l.ref(new Map),t=l.ref();return l.watch(()=>o.value,()=>{const e=c.value.get(o.value);e&&u.value!==!1&&r.scrollTo(n.value,e.offsetTop,120)}),l.onBeforeUnmount(()=>{var e;(e=t.value)===null||e===void 0||e.call(t)}),l.watch(u,()=>{var e;(e=t.value)===null||e===void 0||e.call(t),l.nextTick(()=>{if(u.value){const s=c.value.get(o.value);s&&(t.value=r.waitElementReady(s,()=>{r.scrollTo(n.value,s.offsetTop,0)}))}})},{immediate:!0,flush:"post"}),()=>{const{prefixCls:e,units:s,onSelect:d,value:f,active:m,hideDisabledOptions:p}=o,i=`${e}-cell`;return l.createVNode("ul",{class:v.default(`${e}-column`,{[`${e}-column-active`]:m}),ref:n,style:{position:"relative"}},[s.map(a=>p&&a.disabled?null:l.createVNode("li",{key:a.value,ref:b=>{c.value.set(a.value,b)},class:v.default(i,{[`${i}-disabled`]:a.disabled,[`${i}-selected`]:f===a.value}),onClick:()=>{a.disabled||d(a.value)}},[l.createVNode("div",{class:`${i}-inner`},[a.label])]))])}}});exports.default=T;