dm-vue3-ui
Version:
This Components Library will help get you started developing in Vue 3.
2 lines (1 loc) • 2.99 kB
JavaScript
;Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("dayjs"),t=require("./config"),n=require("../../i18n/index");function i(e,n,i){let r="";r=i.length>0?i.findIndex((t=>t.startTime==e&&t.endTime==n)):t.presetValues.findIndex((t=>t.startTime==e&&t.endTime==n));return{isMatch:-1!=r,activeIndex:r}}function r(e,n){const i=e.match(/^rt-(\d+)(s|m|h|d|w|mon|q|y)$/),r=n.match(/^rtnow$/),a=!(!i||!r);let s=-1;return a&&(s=t.realTimeValues.findIndex((e=>e.value==i[1]&&e.unit==i[2]))),{isMatch:a,activeIndex:s}}function a(e,t){const n=e.match(/^-(\d+)(s|m|h|d|w|mon|q|y)$/),i=t.match(/^-(\d+)(s|m|h|d|w|mon|q|y)$/);return{isMatch:!!(n&&i||n&&"now"==t),activeIndex:-1}}function s(e,t){const n=e.match(/^\d{10}$/),i=t.match(/^\d{10}$/);let r=!1;return r=!(!n||"now"!=t)||(!(!i||""!=e)||!(!n||!i)),{isMatch:r,activeIndex:-1}}function c(e){const n=t.timeUnits.find((t=>t.value==e));return n?n.label:""}function o(e){const n=t.timeUnits.find((t=>t.value==e));return n?n.momentUnit:""}exports.compareDate=function(t,i,r,a){const s=o(i),c=e().subtract(t,s);let m=e();if("now"!==r){const t=o(a);m=e().subtract(Number(r),t)}return m.isBefore(c)?{isValid:!1,msg:n.$t("datePicker.validateMsg")[3]}:c.isSame(m)?{isValid:!1,msg:n.$t("datePicker.validateMsg")[1]}:{isValid:!0,msg:n.$t("datePicker.validateMsg")[4]}},exports.getLabelText=function(i,r,a,s,o="YYYY-MM-DD HH:mm:ss"){let m="";switch(i){case"preset":m=function(e,n,i){let r={};r=i.length>0?i.find((t=>t.startTime==e&&t.endTime==n)):t.presetValues.find((t=>t.startTime==e&&t.endTime==n));return r?r.label:""}(r,a,s);break;case"real":m=function(e,t){let i="";const r=e.match(/^rt-(\d+)(s|m|h|d|w|mon|q|y)$/);if(r&&"rtnow"==t){i=`${r[1]}${c(r[2])} ${n.$t("datePicker.relative.to")} ${n.$t("datePicker.immediately")}`}return i}(r,a);break;case"relative":m=function(e,t){let i="";const r=e.match(/^-(\d+)(s|m|h|d|w|mon|q|y)$/),a=t.match(/^-(\d+)(s|m|h|d|w|mon|q|y)$/);if(r&&a){const e=r[1],t=c(r[2]),s=a[1],o=c(a[2]);i=`${e}${t} ${n.$t("datePicker.relative.to")} ${s}${o}`}else if(r&&"now"==t){i=`${r[1]}${c(r[2])} ${n.$t("datePicker.relative.to")} ${n.$t("datePicker.now")}`}return i}(r,a);break;case"absolute":m=function(t,i,r="YYYY-MM-DD HH:mm:ss"){const a="YYYY-MM-DD HH:mm:ss";let s="";s="unix"===r?""==i?`${e.unix(t).format(a)} ${n.$t("datePicker.after")}`:""==t?`${e.unix(i).format(a)} ${n.$t("datePicker.before")}`:`${e.unix(t).format(a)} - ${e.unix(i).format(a)}`:""==i?`${t} ${n.$t("datePicker.after")}`:""==t?`${i} ${n.$t("datePicker.before")}`:`${t} - ${i}`;return s}(r,a,o)}return m},exports.getTimeType=function(e,t,n){const c=["preset","real","relative","absolute"];let o={isMatch:!1,activeIndex:-1,type:""};for(let m=0;m<c.length;m++){const d=c[m];switch(d){case"preset":o=i(e,t,n);break;case"real":o=r(e,t);break;case"relative":o=a(e,t);break;case"absolute":o=s(e,t)}if(o.type=d,o.isMatch)break}return o},exports.isTimeNumber=function(e){const t=Number(e);return!!(Number.isInteger(t)&&t>0)};