UNPKG

ll-package

Version:

2 lines (1 loc) 2.41 kB
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),S=require("../../../hooks/useDesign.js"),k=require("../../../../node_modules/ant-design-vue/es/time-picker/dayjs.js"),w=e.defineComponent({name:"LlTimeRange"}),C=e.defineComponent({...w,props:{value:{},format:{default:"HH:mm:ss"},startTime:{default:null},endTime:{default:null},placeholder:{default:()=>["开始时间","结束时间"]}},emits:["update:value","change"],setup(g,{emit:h}){const v=k.default.TimeRangePicker,p=h,b=e.useAttrs(),s=g,m=e.ref(void 0),{prefixCls:H}=S.useDesign("time-range"),l=e.computed(()=>s.startTime?s.startTime.split(":"):[]),c=e.computed(()=>s.endTime?s.endTime.split(":"):[]),N=e.computed(()=>({...e.unref(b),placeholder:s.placeholder,format:s.format,valueFormat:s.format,showNow:!s.startTime&&!s.endTime,disabledTime:()=>({disabledHours:()=>{const{startTime:n,endTime:f}=s;if(!n&&!f)return[];const o=[];if(n){const i=Number(e.unref(l)[0]);for(let t=0;t<i;t++)o.push(t)}if(f){const i=Number(e.unref(c)[0]);for(let t=0;t<24;t++)t>i&&o.push(t)}return o},disabledMinutes:n=>{const{startTime:f,endTime:o}=s;if(!f&&!o)return[];const i=[];if(f){const t=Number(e.unref(l)[0]),a=Number(e.unref(l)[1]);if(n<t){for(let r=0;r<60;r++)i.push(r);return i}if(n===t)for(let r=0;r<a;r++)i.push(r)}if(o){const t=Number(e.unref(c)[0]),a=Number(e.unref(c)[1]);if(n===t){for(let r=0;r<60;r++)r>a&&i.push(r);return i}if(n>t){for(let r=0;r<60;r++)i.push(r);return i}}return i},disabledSeconds:(n,f)=>{const{startTime:o,endTime:i}=s;if(!o&&!i||s.format==="HH:mm")return[];const t=[],a=T(n)+T(f);if(o){const r=e.unref(l)[0]+e.unref(l)[1],d=e.unref(l)[2]?Number(e.unref(l)[2]):0;if(a<r){for(let u=0;u<60;u++)t.push(u);return t}if(a===r)for(let u=0;u<d;u++)t.push(u)}if(i){const r=e.unref(c)[0]+e.unref(c)[1],d=e.unref(c)[2]?Number(e.unref(c)[2]):0;if(a===r){for(let u=0;u<60;u++)u>d&&t.push(u);return t}if(a>r){for(let u=0;u<60;u++)t.push(u);return t}}return t}})}));e.watch(()=>s.value,n=>{M(n)},{immediate:!0});function M(n){m.value=n}function _(n){p("update:value",n),p("change",n)}function T(n){return new RegExp(/^\d$/g).test(n)?`0${n}`:n.toString()}return(n,f)=>(e.openBlock(),e.createBlock(e.unref(v),e.mergeProps({class:e.unref(H)},N.value,{value:m.value,"onUpdate:value":f[0]||(f[0]=o=>m.value=o),onChange:_}),null,16,["class","value"]))}});exports.default=C;