"use strict"; const common_vendor = require("../../../../common/vendor.js"); require("../../../adapter-vue.js"); const TUIKit_utils_env = require("../../../utils/env.js"); if (!Math) { DatePickerPanel(); } const DatePickerPanel = () => "./date-picker-panel.js"; const _sfc_main = /* @__PURE__ */ common_vendor.defineComponent({ __name: "index", props: { type: { type: String, default: "range" // "single" / "range" }, rangeTableType: { type: String, default: "one" // "one"/ "two" }, startPlaceholder: { type: String, default: () => common_vendor.Wt.t("开始时间") }, endPlaceholder: { type: String, default: () => common_vendor.Wt.t("开始时间") }, popupPosition: { type: String, default: "bottom" // "top" / "bottom" }, // Default single-select date defaultSingleDate: { type: common_vendor.dayjs_minExports.Dayjs, default: null, required: false } }, emits: ["pick", "change"], setup(__props, { emit: __emit }) { common_vendor.dayjs.extend(common_vendor.localeData); common_vendor.dayjs.extend(common_vendor.isSameOrAfter); common_vendor.dayjs.extend(common_vendor.isSameOrBefore); common_vendor.dayjs.locale("zh-cn"); const emit = __emit; const props = __props; const isDatePanelShow = common_vendor.ref(false); const dateValue = common_vendor.ref(props.type === "single" ? props == null ? void 0 : props.defaultSingleDate : null); const startValue = common_vendor.ref(props.type === "single" ? props == null ? void 0 : props.defaultSingleDate : null); const endValue = common_vendor.ref(props.type === "single" ? props == null ? void 0 : props.defaultSingleDate : null); const startFormatDate = common_vendor.computed(() => { var _a; return (_a = startValue == null ? void 0 : startValue.value) == null ? void 0 : _a.format("YYYY/MM/DD"); }); const endFormatDate = common_vendor.computed(() => { var _a; return (_a = endValue == null ? void 0 : endValue.value) == null ? void 0 : _a.format("YYYY/MM/DD"); }); const startPlaceholderVal = props.startPlaceholder; const endPlaceholderVal = props.endPlaceholder; const leftCurrentPanelValue = common_vendor.ref(); const rightCurrentPanelValue = common_vendor.ref(); const setDatePanelDisplay = (show) => { isDatePanelShow.value = show; }; const n = (classNameList) => { const resultClassList = []; classNameList.forEach((className) => { if (className) { resultClassList.push("tui-date-picker-" + className); !TUIKit_utils_env.isPC && resultClassList.push("tui-date-picker-h5-" + className); } else { resultClassList.push("tui-date-picker"); !TUIKit_utils_env.isPC && resultClassList.push("tui-date-picker-h5"); } }); return resultClassList; }; const handlePick = (cell) => { var _a, _b, _c; switch (props.type) { case "single": startValue.value = cell.date; endValue.value = cell.date; dateValue.value = cell.date; emit("change", cell); emit("pick", dateValue.value); setTimeout(() => { setDatePanelDisplay(false); }, 300); break; case "range": if (!(startValue == null ? void 0 : startValue.value)) { startValue.value = cell.date; } else if (!(endValue == null ? void 0 : endValue.value)) { if ((_a = startValue == null ? void 0 : startValue.value) == null ? void 0 : _a.isSameOrBefore(cell.date, "day")) { endValue.value = cell.date; } else { endValue.value = startValue.value; startValue.value = cell.date; } emit("pick", { startDate: (_b = startValue == null ? void 0 : startValue.value) == null ? void 0 : _b.startOf("date"), endDate: (_c = endValue == null ? void 0 : endValue.value) == null ? void 0 : _c.endOf("date") }); setTimeout(() => { setDatePanelDisplay(false); }, 200); } else { startValue.value = cell.date; endValue.value = null; } emit("change", { startDate: startValue.value, endDate: endValue.value, leftCurrentPanel: leftCurrentPanelValue.value, rightCurrentPanel: leftCurrentPanelValue.value }); break; } }; const handleLeftPanelChange = (value) => { leftCurrentPanelValue.value = value; emit("change", { startDate: startValue.value, endDate: endValue.value, leftCurrentPanel: leftCurrentPanelValue.value, rightCurrentPanel: leftCurrentPanelValue.value }); }; const handleRightPanelChange = (value) => { rightCurrentPanelValue.value = value; emit("change", { startDate: startValue.value, endDate: endValue.value, leftCurrentPanel: leftCurrentPanelValue.value, rightCurrentPanel: leftCurrentPanelValue.value }); }; return (_ctx, _cache) => { return common_vendor.e({ a: common_vendor.unref(startPlaceholderVal), b: common_vendor.n(n(["input-start"])), c: common_vendor.unref(TUIKit_utils_env.isUniFrameWork), d: common_vendor.unref(startFormatDate), e: common_vendor.o$1(($event) => common_vendor.isRef(startFormatDate) ? startFormatDate.value = $event.detail.value : null), f: __props.type !== "single" }, __props.type !== "single" ? {} : {}, { g: __props.type !== "single" }, __props.type !== "single" ? { h: common_vendor.unref(endPlaceholderVal), i: common_vendor.n(n(["input-end"])), j: common_vendor.unref(TUIKit_utils_env.isUniFrameWork), k: common_vendor.unref(endFormatDate), l: common_vendor.o$1(($event) => common_vendor.isRef(endFormatDate) ? endFormatDate.value = $event.detail.value : null) } : {}, { m: common_vendor.n(n(["input"])), n: common_vendor.n(common_vendor.unref(isDatePanelShow) && n(["input-active"])), o: common_vendor.o$1(($event) => setDatePanelDisplay(!common_vendor.unref(isDatePanelShow))), p: common_vendor.unref(isDatePanelShow) }, common_vendor.unref(isDatePanelShow) ? common_vendor.e({ q: common_vendor.o$1(handlePick), r: common_vendor.o$1(handleLeftPanelChange), s: common_vendor.p({ type: props.type, rangeType: "left", date: common_vendor.unref(dateValue), startDate: common_vendor.unref(startValue), endDate: common_vendor.unref(endValue), currentOtherPanelValue: common_vendor.unref(rightCurrentPanelValue) }), t: props.type === "range" && common_vendor.unref(TUIKit_utils_env.isPC) && __props.rangeTableType === "two" }, props.type === "range" && common_vendor.unref(TUIKit_utils_env.isPC) && __props.rangeTableType === "two" ? { v: common_vendor.o$1(handlePick), w: common_vendor.o$1(handleRightPanelChange), x: common_vendor.p({ type: props.type, rangeType: "right", date: common_vendor.unref(dateValue), startDate: common_vendor.unref(startValue), endDate: common_vendor.unref(endValue), currentOtherPanelValue: common_vendor.unref(leftCurrentPanelValue) }) } : {}, { y: common_vendor.n(n(["dialog-container", "dialog-container-" + __props.rangeTableType, "dialog-container-" + __props.popupPosition])), z: common_vendor.n(n(["dialog"])) }) : {}, { A: common_vendor.n(n([""])) }); }; } }); const Component = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-eb57fa2c"]]); wx.createComponent(Component); //# sourceMappingURL=../../../../../.sourcemap/mp-weixin/TUIKit/components/common/DatePicker/index.js.map