UNPKG

ll-package

Version:

2 lines (1 loc) 4.66 kB
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const O=require("../../../@babel/runtime/helpers/esm/objectSpread2.js"),R=require("../../../@babel/runtime/helpers/esm/extends.js"),n=require("vue"),_=require("../_util/hooks/useMergedState.js"),Q=require("../vc-picker/PickerPanel.js"),W=require("../date-picker/locale/en_US.js"),X=require("./Header.js"),Z=require("../config-provider/hooks/useConfigInject.js"),$=require("../_util/classNames.js"),ee=require("./style/index.js"),te=require("../locale/LocaleReceiver.js");function le(l){function b(d,o){return d&&o&&l.getYear(d)===l.getYear(o)}function y(d,o){return b(d,o)&&l.getMonth(d)===l.getMonth(o)}function N(d,o){return y(d,o)&&l.getDate(d)===l.getDate(o)}const m=n.defineComponent({name:"ACalendar",inheritAttrs:!1,props:{prefixCls:String,locale:{type:Object,default:void 0},validRange:{type:Array,default:void 0},disabledDate:{type:Function,default:void 0},dateFullCellRender:{type:Function,default:void 0},dateCellRender:{type:Function,default:void 0},monthFullCellRender:{type:Function,default:void 0},monthCellRender:{type:Function,default:void 0},headerRender:{type:Function,default:void 0},value:{type:[Object,String],default:void 0},defaultValue:{type:[Object,String],default:void 0},mode:{type:String,default:void 0},fullscreen:{type:Boolean,default:void 0},onChange:{type:Function,default:void 0},"onUpdate:value":{type:Function,default:void 0},onPanelChange:{type:Function,default:void 0},onSelect:{type:Function,default:void 0},valueFormat:{type:String,default:void 0}},slots:Object,setup(d,o){let{emit:p,slots:u,attrs:q}=o;const t=d,{prefixCls:v,direction:L}=Z.default("picker",t),[k,T]=ee.default(v),r=n.computed(()=>`${v.value}-calendar`),F=e=>t.valueFormat?l.toString(e,t.valueFormat):e,D=n.computed(()=>t.value?t.valueFormat?l.toDate(t.value,t.valueFormat):t.value:t.value===""?void 0:t.value),Y=n.computed(()=>t.defaultValue?t.valueFormat?l.toDate(t.defaultValue,t.valueFormat):t.defaultValue:t.defaultValue===""?void 0:t.defaultValue),[i,w]=_.default(()=>D.value||l.getNow(),{defaultValue:Y.value,value:D}),[h,H]=_.default("month",{value:n.toRef(t,"mode")}),f=n.computed(()=>h.value==="year"?"month":"date"),U=n.computed(()=>e=>{var a;return(t.validRange?l.isAfter(t.validRange[0],e)||l.isAfter(e,t.validRange[1]):!1)||!!(!((a=t.disabledDate)===null||a===void 0)&&a.call(t,e))}),j=(e,a)=>{p("panelChange",F(e),a)},z=e=>{if(w(e),!N(e,i.value)){(f.value==="date"&&!y(e,i.value)||f.value==="month"&&!b(e,i.value))&&j(e,h.value);const a=F(e);p("update:value",a),p("change",a)}},x=e=>{H(e),j(i.value,e)},S=(e,a)=>{z(e),p("select",F(e),{source:a})},B=n.computed(()=>{const{locale:e}=t,a=R.default(R.default({},W.default),e);return a.lang=R.default(R.default({},a.lang),(e||{}).lang),a}),[C]=te.useLocaleReceiver("Calendar",B);return()=>{const e=l.getNow(),{dateFullCellRender:a=u==null?void 0:u.dateFullCellRender,dateCellRender:V=u==null?void 0:u.dateCellRender,monthFullCellRender:P=u==null?void 0:u.monthFullCellRender,monthCellRender:A=u==null?void 0:u.monthCellRender,headerRender:I=u==null?void 0:u.headerRender,fullscreen:M=!0,validRange:E}=t,G=c=>{let{current:s}=c;return a?a({current:s}):n.createVNode("div",{class:$.default(`${v.value}-cell-inner`,`${r.value}-date`,{[`${r.value}-date-today`]:N(e,s)})},[n.createVNode("div",{class:`${r.value}-date-value`},[String(l.getDate(s)).padStart(2,"0")]),n.createVNode("div",{class:`${r.value}-date-content`},[V&&V({current:s})])])},J=(c,s)=>{let{current:g}=c;if(P)return P({current:g});const K=s.shortMonths||l.locale.getShortMonths(s.locale);return n.createVNode("div",{class:$.default(`${v.value}-cell-inner`,`${r.value}-date`,{[`${r.value}-date-today`]:y(e,g)})},[n.createVNode("div",{class:`${r.value}-date-value`},[K[l.getMonth(g)]]),n.createVNode("div",{class:`${r.value}-date-content`},[A&&A({current:g})])])};return k(n.createVNode("div",O.default(O.default({},q),{},{class:$.default(r.value,{[`${r.value}-full`]:M,[`${r.value}-mini`]:!M,[`${r.value}-rtl`]:L.value==="rtl"},q.class,T.value)}),[I?I({value:i.value,type:h.value,onChange:c=>{S(c,"customize")},onTypeChange:x}):n.createVNode(X.default,{prefixCls:r.value,value:i.value,generateConfig:l,mode:h.value,fullscreen:M,locale:C.value.lang,validRange:E,onChange:S,onModeChange:x},null),n.createVNode(Q.default,{value:i.value,prefixCls:v.value,locale:C.value.lang,generateConfig:l,dateRender:G,monthCellRender:c=>J(c,C.value.lang),onSelect:c=>{S(c,f.value)},mode:f.value,picker:f.value,disabledDate:U.value,hideHeader:!0},null)]))}}});return m.install=function(d){return d.component(m.name,m),d},m}exports.default=le;