birdpaper-ui
Version:
一个通用的 vue3 UI组件库。A common vue3 UI component library.
59 lines (58 loc) • 2.6 kB
JavaScript
import _sfc_main from "./month-table.vue2.js";
import { resolveComponent, openBlock, createElementBlock, normalizeClass, createElementVNode, withModifiers, toDisplayString, createVNode, Fragment, renderList } from "vue";
import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.js";
const _hoisted_1 = ["onClick"];
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
const _component_IconArrowLeftDoubleFill = resolveComponent("IconArrowLeftDoubleFill");
const _component_IconArrowRightDoubleFill = resolveComponent("IconArrowRightDoubleFill");
return openBlock(), createElementBlock("div", {
class: normalizeClass(_ctx.name)
}, [
createElementVNode("div", {
class: normalizeClass(`${_ctx.name}-header`)
}, [
createElementVNode("div", {
class: normalizeClass(`${_ctx.name}-header-inner`)
}, [
createElementVNode("span", {
class: normalizeClass(`${_ctx.name}-header-inner-year`),
onClick: _cache[0] || (_cache[0] = withModifiers(($event) => _ctx.handleChangePicker(_ctx.PanelType.Year, _ctx.currentYear), ["stop"]))
}, toDisplayString(_ctx.currentYear), 3)
], 2),
createElementVNode("div", {
class: normalizeClass(`${_ctx.name}-header-option`)
}, [
createVNode(_component_IconArrowLeftDoubleFill, {
onClick: _cache[1] || (_cache[1] = ($event) => _ctx.handleChange("prev")),
size: "20px"
}),
createVNode(_component_IconArrowRightDoubleFill, {
onClick: _cache[2] || (_cache[2] = ($event) => _ctx.handleChange("next")),
size: "20px"
})
], 2)
], 2),
createElementVNode("div", {
class: normalizeClass(`${_ctx.name}-body`)
}, [
(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.monthCell, (col, colIndex) => {
return openBlock(), createElementBlock("div", {
class: normalizeClass([
`${_ctx.name}-month-cell`,
{ active: _ctx.currentVal === col.value },
{ "to-month": _ctx.currentVal !== col.value && colIndex === _ctx.dayjs(_ctx.toDay).month() }
]),
onClick: withModifiers(($event) => _ctx.handleSelect(col), ["stop"])
}, [
createElementVNode("span", {
class: normalizeClass([`${_ctx.name}-month-cell-inner`])
}, toDisplayString(col.label), 3)
], 10, _hoisted_1);
}), 256))
], 2)
], 2);
}
const monthTable = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
export {
monthTable as default
};