UNPKG

tdesign-vue-next

Version:
722 lines (708 loc) 28.2 kB
/** * tdesign v1.20.2 * (c) 2026 tdesign * @license MIT */ 'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var Vue = require('vue'); var _defineProperty = require('@babel/runtime/helpers/defineProperty'); var dayjs = require('dayjs'); var calendar_props = require('./props.js'); var calendar_utils_index = require('./utils/index.js'); require('@babel/runtime/helpers/toConsumableArray'); require('@babel/runtime/helpers/typeof'); require('../_chunks/dep-449273df.js'); var index = require('../_chunks/dep-c0cb4d13.js'); var configProvider_hooks_useConfig = require('../config-provider/hooks/useConfig.js'); var _slicedToArray = require('@babel/runtime/helpers/slicedToArray'); require('../_chunks/dep-497fc9a5.js'); var calendar_hooks_useState = require('./hooks/useState.js'); var calendar_hooks_useCalendarClass = require('./hooks/useCalendarClass.js'); var calendar_hooks_useController = require('./hooks/useController.js'); var calendar_hooks_useColHeaders = require('./hooks/useColHeaders.js'); var calendar_constants_index = require('./constants/index.js'); var select_index = require('../select/index.js'); var radio_index = require('../radio/index.js'); var button_index = require('../button/index.js'); var tag_index = require('../tag/index.js'); var calendar_calendarCell = require('./calendar-cell.js'); var isFunction = require('../_chunks/dep-80827572.js'); var isArray = require('../_chunks/dep-959f4847.js'); var _baseIteratee = require('../_chunks/dep-470f211b.js'); var omit = require('../_chunks/dep-3a800699.js'); var _assignValue = require('../_chunks/dep-f4c1cb5b.js'); require('../_chunks/dep-f9b59444.js'); require('../_chunks/dep-51846987.js'); require('../_chunks/dep-be760bc2.js'); require('../_chunks/dep-2610df9f.js'); require('../_chunks/dep-6e64ef0e.js'); require('../_chunks/dep-9dfd682d.js'); require('../_chunks/dep-2c7a67b8.js'); require('../_chunks/dep-2db31625.js'); require('../_chunks/dep-0a17438d.js'); require('../_chunks/dep-5090b515.js'); require('../_chunks/dep-39313d05.js'); require('../_chunks/dep-f9bc7c82.js'); require('../_chunks/dep-1c6213b5.js'); require('../_chunks/dep-cfdee5e7.js'); require('../_chunks/dep-31abb282.js'); require('../_chunks/dep-c71a9cd7.js'); require('../_chunks/dep-39529ef1.js'); require('../_chunks/dep-4d7a3a91.js'); require('../_chunks/dep-ae380218.js'); require('../_chunks/dep-db6459dd.js'); require('../_chunks/dep-4896d30f.js'); require('../_chunks/dep-fdac7521.js'); require('../_chunks/dep-df5442c5.js'); require('../_chunks/dep-141cbae1.js'); require('../_chunks/dep-c277c7cb.js'); require('../_chunks/dep-7653f80f.js'); require('../_chunks/dep-6e7a2100.js'); require('@babel/runtime/helpers/createClass'); require('@babel/runtime/helpers/classCallCheck'); require('../_chunks/dep-95cb1381.js'); require('../_chunks/dep-6512c9d2.js'); require('../select/select.js'); require('@babel/runtime/helpers/objectWithoutProperties'); require('@babel/runtime/helpers/asyncToGenerator'); require('@babel/runtime/regenerator'); require('../common-components/fake-arrow.js'); require('../_chunks/dep-cce7af6a.js'); require('../_chunks/dep-6130f266.js'); require('../_chunks/dep-3ffe18b0.js'); require('../_chunks/dep-e41b3434.js'); require('../select-input/index.js'); require('../select-input/select-input.js'); require('../popup/index.js'); require('../popup/popup.js'); require('@popperjs/core'); require('../_chunks/dep-9ada3ec1.js'); require('../_chunks/dep-e3eb5659.js'); require('../_chunks/dep-d0227fbe.js'); require('../popup/container.js'); require('../popup/props.js'); require('../_chunks/dep-ba2511b0.js'); require('../_chunks/dep-4e2a4791.js'); require('../_chunks/dep-f3377589.js'); require('../_chunks/dep-71d9daf0.js'); require('../_chunks/dep-abc005aa.js'); require('../select-input/props.js'); require('../select-input/hooks/useMultiple.js'); require('../tag-input/index.js'); require('../tag-input/tag-input.js'); require('tdesign-icons-vue-next'); require('../input/index.js'); require('../input/input.js'); require('../input/props.js'); require('../_chunks/dep-a2e46896.js'); require('../_chunks/dep-88ae5d8a.js'); require('../_chunks/dep-f02d9258.js'); require('../input/hooks/useInput.js'); require('../form/constants/index.js'); require('../input/hooks/useLengthLimit.js'); require('../_chunks/dep-b4528c21.js'); require('../_chunks/dep-d20c4e5e.js'); require('../input/hooks/useInputEventHandler.js'); require('../input/hooks/useInputWidth.js'); require('../input/input-group.js'); require('../input/input-group-props.js'); require('../tag-input/props.js'); require('../_chunks/dep-4b52068a.js'); require('../_chunks/dep-5ea73cce.js'); require('../tag-input/hooks/useDragSorter.js'); require('../tag-input/hooks/useHover.js'); require('../tag-input/hooks/useTagScroll.js'); require('../tag-input/hooks/useTagList.js'); require('../tag/tag.js'); require('tinycolor2'); require('../tag/props.js'); require('../tag/check-tag.js'); require('../tag/check-tag-props.js'); require('../_chunks/dep-2e8277b1.js'); require('../tag/check-tag-group.js'); require('../tag/check-tag-group-props.js'); require('../loading/index.js'); require('../_chunks/dep-203a5570.js'); require('../loading/plugin.js'); require('../_chunks/dep-3231adce.js'); require('../loading/icon/gradient.js'); require('../loading/props.js'); require('../_chunks/dep-e46285c0.js'); require('../_chunks/dep-54801354.js'); require('../_chunks/dep-bd59ca66.js'); require('../_chunks/dep-f7508ffa.js'); require('../_chunks/dep-9b549c85.js'); require('../_chunks/dep-e25ae470.js'); require('../_chunks/dep-bed84553.js'); require('../_chunks/dep-a4b963ab.js'); require('../select-input/hooks/useOverlayInnerStyle.js'); require('../select-input/hooks/useSingle.js'); require('../_chunks/dep-008d4a55.js'); require('../_chunks/dep-0e1751ee.js'); require('../_chunks/dep-4e2907e0.js'); require('../select/components/select-panel.js'); require('../select/option.js'); require('../select/option-props.js'); require('../checkbox/index.js'); require('../checkbox/checkbox.js'); require('../checkbox/props.js'); require('../_chunks/dep-3cd26986.js'); require('../checkbox/constants/index.js'); require('../checkbox/hooks/useCheckboxLazyLoad.js'); require('../_chunks/dep-12e6ec24.js'); require('../checkbox/hooks/useKeyboardEvent.js'); require('../checkbox/group.js'); require('../checkbox/checkbox-group-props.js'); require('../_chunks/dep-cec24bbf.js'); require('../_chunks/dep-f786e1df.js'); require('../_chunks/dep-618d56e7.js'); require('../_chunks/dep-2cf25d25.js'); require('../select/utils/index.js'); require('../select/constants/index.js'); require('../select/option-group.js'); require('../select/option-group-props.js'); require('../select/props.js'); require('../select/hooks/usePanelVirtualScroll.js'); require('../select/hooks/useKeyboardControl.js'); require('../select/hooks/useSelectOptions.js'); require('../_chunks/dep-8f2069e9.js'); require('../_chunks/dep-648bfb84.js'); require('../radio/radio.js'); require('../radio/props.js'); require('../radio/constants/index.js'); require('../radio/group.js'); require('../radio/radio-group-props.js'); require('../radio/radio-button.js'); require('../radio/hooks/useKeyboard.js'); require('../watermark/hooks/index.js'); require('../_chunks/dep-801a06fe.js'); require('../_chunks/dep-59ce9497.js'); require('../button/button.js'); require('../button/props.js'); function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty); var dayjs__default = /*#__PURE__*/_interopDefaultLegacy(dayjs); var _slicedToArray__default = /*#__PURE__*/_interopDefaultLegacy(_slicedToArray); /** Used for built-in method references. */ var arrayProto = Array.prototype; /** Built-in value references. */ var splice = arrayProto.splice; /** * The base implementation of `_.pullAt` without support for individual * indexes or capturing the removed elements. * * @private * @param {Array} array The array to modify. * @param {number[]} indexes The indexes of elements to remove. * @returns {Array} Returns `array`. */ function basePullAt(array, indexes) { var length = array ? indexes.length : 0, lastIndex = length - 1; while (length--) { var index = indexes[length]; if (length == lastIndex || index !== previous) { var previous = index; if (_assignValue.isIndex(index)) { splice.call(array, index, 1); } else { omit.baseUnset(array, index); } } } return array; } /** * Removes all elements from `array` that `predicate` returns truthy for * and returns an array of the removed elements. The predicate is invoked * with three arguments: (value, index, array). * * **Note:** Unlike `_.filter`, this method mutates `array`. Use `_.pull` * to pull elements from an array by value. * * @static * @memberOf _ * @since 2.0.0 * @category Array * @param {Array} array The array to modify. * @param {Function} [predicate=_.identity] The function invoked per iteration. * @returns {Array} Returns the new array of removed elements. * @example * * var array = [1, 2, 3, 4]; * var evens = _.remove(array, function(n) { * return n % 2 == 0; * }); * * console.log(array); * // => [1, 3] * * console.log(evens); * // => [2, 4] */ function remove(array, predicate) { var result = []; if (!(array && array.length)) { return result; } var index = -1, indexes = [], length = array.length; predicate = _baseIteratee.baseIteratee(predicate); while (++index < length) { var value = array[index]; if (predicate(value, index, array)) { result.push(value); indexes.push(index); } } basePullAt(array, indexes); return result; } var MIN_YEAR = 1970; var createDefaultCurDate = function createDefaultCurDate() { return dayjs__default["default"](dayjs__default["default"]().format("YYYY-MM-DD")); }; var handleRange = function handleRange(range) { var parseRangeBoundary = function parseRangeBoundary(value) { if (value === void 0 || value === null) { return null; } var parsed = dayjs__default["default"](value); if (!parsed.isValid()) { return null; } return { parsed: parsed, original: value }; }; if (!range || range.length < 2) { return null; } var _range = _slicedToArray__default["default"](range, 2), v1 = _range[0], v2 = _range[1]; var start = parseRangeBoundary(v1); var end = parseRangeBoundary(v2); if (!start && !end) { return null; } var fallback = function fallback(edge) { var fallbackParsed = dayjs__default["default"](MIN_YEAR); if (edge === "to") { fallbackParsed = createDefaultCurDate(); } return { parsed: fallbackParsed, original: fallbackParsed.format("YYYY-MM-DD") }; }; var fromBoundary = start !== null && start !== void 0 ? start : fallback("from"); var toBoundary = end !== null && end !== void 0 ? end : fallback("to"); if (fromBoundary.parsed.isAfter(toBoundary.parsed)) { var _ref = [toBoundary, fromBoundary]; fromBoundary = _ref[0]; toBoundary = _ref[1]; } return { from: fromBoundary.original, to: toBoundary.original }; }; function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty__default["default"](e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } function _isSlot(s) { return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !Vue.isVNode(s); } var _Calendar = Vue.defineComponent({ name: "TCalendar", props: calendar_props["default"], setup: function setup(props2, _ref) { var slots = _ref.slots; var renderContent = index.useContent(); var _useConfig = configProvider_hooks_useConfig.useConfig(calendar_constants_index.COMPONENT_NAME), t = _useConfig.t, globalConfig = _useConfig.globalConfig; var _useState = calendar_hooks_useState.useState(props2), state = _useState.state, toToday = _useState.toToday, checkDayVisible = _useState.checkDayVisible; var cls = calendar_hooks_useCalendarClass.useCalendarClass(props2, state); var _useColHeaders = calendar_hooks_useColHeaders.useColHeaders(props2, state), cellColHeaders = _useColHeaders.cellColHeaders; var controller = calendar_hooks_useController.userController(props2, state); var rangeFromTo = Vue.computed(function () { return handleRange(props2.range); }); function checkMonthAndYearSelectedDisabled(year, month) { var disabled = false; if (rangeFromTo.value && rangeFromTo.value.from && rangeFromTo.value.to) { var beginYear = dayjs__default["default"](rangeFromTo.value.from).year(); var endYear = dayjs__default["default"](rangeFromTo.value.to).year(); var beginMon = parseInt(dayjs__default["default"](rangeFromTo.value.from).format("M"), 10); var endMon = parseInt(dayjs__default["default"](rangeFromTo.value.to).format("M"), 10); if (beginYear === endYear) { disabled = month < beginMon || month > endMon; } else if (year === beginYear) { disabled = month < beginMon; } else if (year === endYear) { disabled = month > endMon; } } return disabled; } function adjustMonth() { var _rangeFromTo$value, _rangeFromTo$value2; if ((_rangeFromTo$value = rangeFromTo.value) !== null && _rangeFromTo$value !== void 0 && _rangeFromTo$value.from && (_rangeFromTo$value2 = rangeFromTo.value) !== null && _rangeFromTo$value2 !== void 0 && _rangeFromTo$value2.to) { var beginYear = dayjs__default["default"](rangeFromTo.value.from).year(); var endYear = dayjs__default["default"](rangeFromTo.value.to).year(); var beginMon = parseInt(dayjs__default["default"](rangeFromTo.value.from).format("M"), 10); if (checkMonthAndYearSelectedDisabled(state.curSelectedYear, state.curSelectedMonth)) { state.curSelectedMonth = state.curSelectedYear === beginYear ? beginMon : state.curSelectedYear === endYear ? 1 : state.curSelectedMonth; } } } Vue.watch(function () { return { year: "".concat(state.curSelectedYear), month: "".concat(state.curSelectedMonth) }; }, function (v) { isFunction.isFunction(props2.onMonthChange) && props2.onMonthChange(_objectSpread({}, v)); controller.emitControllerChange(); }); var dateSelect = { yearSelectOptionList: Vue.computed(function () { var re = []; var begin = state.curSelectedYear - 10; var end = state.curSelectedYear + 10; if (rangeFromTo.value && rangeFromTo.value.from && rangeFromTo.value.to) { begin = dayjs__default["default"](rangeFromTo.value.from).year(); end = dayjs__default["default"](rangeFromTo.value.to).year(); } if (begin < calendar_constants_index.MIN_YEAR) { begin = calendar_constants_index.MIN_YEAR; } if (end < calendar_constants_index.MIN_YEAR) { end = calendar_constants_index.MIN_YEAR; } for (var i = begin; i <= end; i++) { re.push({ value: i, label: t(globalConfig.value.yearSelection, { year: i }), disabled: false }); } return re; }), isYearSelectVisible: Vue.computed(function () { return controller.checkControllerVisible("year"); }), isYearSelectDisabled: Vue.computed(function () { return controller.checkControllerDisabled("year", "selectProps"); }), monthSelectOptionList: Vue.computed(function () { adjustMonth(); var re = []; for (var i = calendar_constants_index.FIRST_MONTH_OF_YEAR; i <= calendar_constants_index.LAST_MONTH_OF_YEAR; i++) { var disabled = checkMonthAndYearSelectedDisabled(state.curSelectedYear, i); re.push({ value: i, label: t(globalConfig.value.monthSelection, { month: i }), disabled: disabled }); } return re; }), isMonthSelectVisible: Vue.computed(function () { return state.curSelectedMode === "month" && controller.checkControllerVisible("month"); }), isMonthSelectDisabled: Vue.computed(function () { return controller.checkControllerDisabled("month", "selectProps"); }) }; var modeSelect = { optionList: Vue.computed(function () { return [{ value: "month", label: t(globalConfig.value.monthRadio) }, { value: "year", label: t(globalConfig.value.yearRadio) }]; }), isVisible: Vue.computed(function () { return controller.checkControllerVisible("mode"); }), isDisabled: Vue.computed(function () { return controller.checkControllerDisabled("mode", "radioGroupProps"); }) }; var weekendBtn = { text: Vue.computed(function () { return state.isShowWeekend ? t(globalConfig.value.hideWeekend) : t(globalConfig.value.showWeekend); }), vBind: Vue.computed(function () { var c = controller.configData.value.weekend; return state.isShowWeekend ? c.hideWeekendButtonProps : c.showWeekendButtonProps; }), isVisible: Vue.computed(function () { return props2.theme === "full" && controller.checkControllerVisible("current") && controller.checkControllerVisible("weekend"); }), isDisabled: Vue.computed(function () { var p = state.isShowWeekend ? "hideWeekendButtonProps" : "showWeekendButtonProps"; return controller.checkControllerDisabled("weekend", p); }) }; var currentBtn = { text: Vue.computed(function () { return state.curSelectedMode === "month" ? t(globalConfig.value.today) : t(globalConfig.value.thisMonth); }), vBind: Vue.computed(function () { var c = controller.configData.value.current; return state.curSelectedMode === "month" ? c.currentDayButtonProps : c.currentMonthButtonProps; }), isVisible: Vue.computed(function () { return props2.theme === "full" && controller.checkControllerVisible("current"); }), isDisabled: Vue.computed(function () { var p = state.curSelectedMode === "month" ? "currentDayButtonProps" : "currentMonthButtonProps"; return controller.checkControllerDisabled("current", p); }) }; var renderControl = function renderControl() { var _slot; return Vue.createVNode("div", { "class": cls.control.value }, [Vue.createVNode("div", { "class": cls.title.value }, [renderContent("head", void 0, { params: _objectSpread({}, controller.options.value) })]), Vue.createVNode("div", { "class": cls.controlSection.value }, [dateSelect.isYearSelectVisible.value && Vue.createVNode("div", { "class": cls.controlSectionCell.value }, [Vue.createVNode(select_index.Select, Vue.mergeProps({ "modelValue": state.curSelectedYear, "onUpdate:modelValue": function onUpdateModelValue($event) { return state.curSelectedYear = $event; }, "size": state.controlSize, "autoWidth": true }, controller.configData.value.year.selectProps, { "disabled": dateSelect.isYearSelectDisabled.value, "options": dateSelect.yearSelectOptionList.value }), null)]), dateSelect.isMonthSelectVisible.value && Vue.createVNode("div", { "class": cls.controlSectionCell.value }, [Vue.createVNode(select_index.Select, Vue.mergeProps({ "autoWidth": true, "modelValue": state.curSelectedMonth, "onUpdate:modelValue": function onUpdateModelValue($event) { return state.curSelectedMonth = $event; }, "size": state.controlSize }, controller.configData.value.month.selectProps, { "disabled": dateSelect.isMonthSelectDisabled.value, "options": dateSelect.monthSelectOptionList.value }), null)]), modeSelect.isVisible.value && Vue.createVNode("div", { "class": cls.controlSectionCell.value, "style": "height: auto" }, [Vue.createVNode(radio_index.RadioGroup, Vue.mergeProps({ "modelValue": state.curSelectedMode, "onUpdate:modelValue": function onUpdateModelValue($event) { return state.curSelectedMode = $event; }, "variant": "default-filled", "size": state.controlSize }, controller.configData.value.mode.radioGroupProps, { "disabled": modeSelect.isDisabled.value, "onChange": controller.emitControllerChange }), _isSlot(_slot = modeSelect.optionList.value.map(function (item) { return Vue.createVNode(radio_index.RadioButton, { "key": item.value, "value": item.value }, { "default": function _default() { return [item.label]; } }); })) ? _slot : { "default": function _default() { return [_slot]; } })]), weekendBtn.isVisible.value && Vue.createVNode("div", { "class": cls.controlSectionCell.value }, [Vue.createVNode(tag_index.CheckTag, Vue.mergeProps({ "class": cls.controlTag.value, "size": "large" }, weekendBtn.vBind.value, { "disabled": weekendBtn.isDisabled.value, "onClick": function onClick() { state.isShowWeekend = !state.isShowWeekend; controller.emitControllerChange(); } }), { "default": function _default() { return [weekendBtn.text.value]; } })]), currentBtn.isVisible.value && Vue.createVNode("div", { "class": cls.controlSectionCell.value }, [Vue.createVNode(button_index.Button, Vue.mergeProps({ "size": state.controlSize }, currentBtn.vBind.value, { "disabled": currentBtn.isDisabled.value, "onClick": function onClick() { toToday(); } }), { "default": function _default() { return [currentBtn.text.value]; } })])])]); }; var cellClickEmit = function cellClickEmit(eventPropsName, e, cellData) { if (isFunction.isFunction(props2[eventPropsName])) { var options = { cell: _objectSpread(_objectSpread({}, cellData), controller.options.value), e: e }; props2[eventPropsName](options); } }; var clickCell = function clickCell(e, cellData) { var d = dayjs__default["default"](cellData.date); if (props2.multiple) { if (state.curDateList.find(function (item) { return item.isSame(d); })) { state.curDateList = remove(state.curDateList, function (item) { return !item.isSame(d); }); } else { state.curDateList.push(d); } } else { state.curDate = d; } cellClickEmit("onCellClick", e, cellData); }; var doubleClickCell = function doubleClickCell(e, cellData) { cellClickEmit("onCellDoubleClick", e, cellData); }; var rightClickCell = function rightClickCell(e, cellData) { if (props2.preventCellContextmenu) { e.preventDefault(); } cellClickEmit("onCellRightClick", e, cellData); }; var monthCellsData = Vue.computed(function () { var daysArr = calendar_utils_index.createMonthCellsData(props2, state); return daysArr; }); var renderMonthBody = function renderMonthBody() { return Vue.createVNode("table", { "class": cls.table.value }, [Vue.createVNode("thead", { "class": cls.tableHead.value }, [Vue.createVNode("tr", { "class": cls.tableHeadRow.value }, [cellColHeaders.value.map(function (item, index) { return checkDayVisible(item.num) && Vue.createVNode("th", { "class": cls.tableHeadCell.value }, [isArray.isArray(props2.week) ? props2.week[index] : renderContent("week", void 0, { defaultNode: Vue.createVNode("span", null, [item.display]), params: { day: item.num } })]); })])]), Vue.createVNode("tbody", { "class": cls.tableBody.value }, [monthCellsData.value.map(function (week, weekIndex) { return Vue.createVNode("tr", { "class": cls.tableBodyRow.value }, [week.map(function (item, itemIndex) { return (state.isShowWeekend || item.day < 6) && Vue.createVNode(calendar_calendarCell["default"], { "key": "d-".concat(weekIndex, "-").concat(itemIndex), "item": item, "theme": props2.theme, "t": t, "global": globalConfig.value, "cell": props2.cell, "cellAppend": props2.cellAppend, "fillWithZero": props2.fillWithZero, "onClick": function onClick(e) { return clickCell(e, item); }, "onDblclick": function onDblclick(e) { return doubleClickCell(e, item); }, "onRightclick": function onRightclick(e) { return rightClickCell(e, item); } }, _objectSpread({}, slots)); })]); })])]); }; var yearCellsData = Vue.computed(function () { var re = []; var monthsArr = calendar_utils_index.createYearCellsData(props2, state); var rowCount = Math.ceil(monthsArr.length / calendar_constants_index.DEFAULT_YEAR_CELL_NUMINROW); var index = 0; for (var i = 1; i <= rowCount; i++) { var row = []; for (var j = 1; j <= calendar_constants_index.DEFAULT_YEAR_CELL_NUMINROW; j++) { row.push(monthsArr[index]); index += 1; } re.push(row); } return re; }); var renderYearBody = function renderYearBody() { return Vue.createVNode("table", { "class": cls.table.value }, [Vue.createVNode("tbody", { "class": cls.tableBody.value }, [yearCellsData.value.map(function (cell, cellIndex) { return Vue.createVNode("tr", { "class": cls.tableBodyRow.value }, [cell.map(function (item, itemIndex) { return Vue.createVNode(calendar_calendarCell["default"], { "key": "m-".concat(cellIndex, "-").concat(itemIndex), "item": item, "theme": props2.theme, "t": t, "global": globalConfig.value, "cell": props2.cell, "cellAppend": props2.cellAppend, "fillWithZero": props2.fillWithZero, "onClick": function onClick(e) { return clickCell(e, item); }, "onDblclick": function onDblclick(e) { return doubleClickCell(e, item); }, "onRightclick": function onRightclick(e) { return rightClickCell(e, item); } }, _objectSpread({}, slots)); })]); })])]); }; return function () { return Vue.createVNode("div", { "class": cls.body.value }, [controller.visible.value && renderControl(), Vue.createVNode("div", { "class": cls.panel.value }, [state.curSelectedMode === "month" ? renderMonthBody() : renderYearBody()])]); }; } }); exports["default"] = _Calendar; //# sourceMappingURL=calendar.js.map