ep-craft 0.1.25 → 0.1.26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (147) hide show
  1. package/dist/_virtual/_commonjsHelpers.js +8 -0
  2. package/dist/_virtual/advancedFormat.js +4 -0
  3. package/dist/_virtual/customParseFormat.js +4 -0
  4. package/dist/_virtual/dayOfYear.js +4 -0
  5. package/dist/_virtual/isSameOrAfter.js +4 -0
  6. package/dist/_virtual/isSameOrBefore.js +4 -0
  7. package/dist/_virtual/localeData.js +4 -0
  8. package/dist/_virtual/weekOfYear.js +4 -0
  9. package/dist/_virtual/weekYear.js +4 -0
  10. package/dist/components/button/index.js +2 -1
  11. package/dist/components/date-picker/index.d.ts +4 -2
  12. package/dist/components/date-picker/index.js +9 -4
  13. package/dist/components/date-picker/src/date-picker.d.ts +435 -0
  14. package/dist/components/date-picker/src/date-picker.js +68 -0
  15. package/dist/components/date-picker/src/instance.d.ts +8 -0
  16. package/dist/components/date-picker/src/props.d.ts +205 -0
  17. package/dist/components/date-picker/src/props.js +21 -0
  18. package/dist/components/date-picker-panel/index.d.ts +8 -0
  19. package/dist/components/date-picker-panel/index.js +11 -0
  20. package/dist/components/date-picker-panel/src/composables/use-basic-date-table.d.ts +187 -0
  21. package/dist/components/date-picker-panel/src/composables/use-basic-date-table.js +195 -0
  22. package/dist/components/date-picker-panel/src/composables/use-month-range-header.d.ts +16 -0
  23. package/dist/components/date-picker-panel/src/composables/use-month-range-header.js +41 -0
  24. package/dist/components/date-picker-panel/src/composables/use-panel-date-range.d.ts +29 -0
  25. package/dist/components/date-picker-panel/src/composables/use-panel-date-range.js +86 -0
  26. package/dist/components/date-picker-panel/src/composables/use-range-picker.d.ts +209 -0
  27. package/dist/components/date-picker-panel/src/composables/use-range-picker.js +102 -0
  28. package/dist/components/date-picker-panel/src/composables/use-shortcut.d.ts +9 -0
  29. package/dist/components/date-picker-panel/src/composables/use-shortcut.js +27 -0
  30. package/dist/components/date-picker-panel/src/composables/use-year-range-header.d.ts +16 -0
  31. package/dist/components/date-picker-panel/src/composables/use-year-range-header.js +35 -0
  32. package/dist/components/date-picker-panel/src/constants.d.ts +9 -0
  33. package/dist/components/date-picker-panel/src/constants.js +5 -0
  34. package/dist/components/date-picker-panel/src/date-picker-com/basic-cell-render.d.ts +18 -0
  35. package/dist/components/date-picker-panel/src/date-picker-com/basic-cell-render.js +39 -0
  36. package/dist/components/date-picker-panel/src/date-picker-com/basic-date-table.vue.d.ts +100 -0
  37. package/dist/components/date-picker-panel/src/date-picker-com/basic-date-table.vue.js +92 -0
  38. package/dist/components/date-picker-panel/src/date-picker-com/basic-date-table2.vue.js +4 -0
  39. package/dist/components/date-picker-panel/src/date-picker-com/basic-month-table.vue.d.ts +106 -0
  40. package/dist/components/date-picker-panel/src/date-picker-com/basic-month-table.vue.js +164 -0
  41. package/dist/components/date-picker-panel/src/date-picker-com/basic-month-table2.vue.js +4 -0
  42. package/dist/components/date-picker-panel/src/date-picker-com/basic-year-table.vue.d.ts +106 -0
  43. package/dist/components/date-picker-panel/src/date-picker-com/basic-year-table.vue.js +153 -0
  44. package/dist/components/date-picker-panel/src/date-picker-com/basic-year-table2.vue.js +4 -0
  45. package/dist/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue.d.ts +89 -0
  46. package/dist/components/date-picker-panel/src/date-picker-com/panel-date-pick.vue.js +550 -0
  47. package/dist/components/date-picker-panel/src/date-picker-com/panel-date-pick2.vue.js +4 -0
  48. package/dist/components/date-picker-panel/src/date-picker-com/panel-date-range.vue.d.ts +104 -0
  49. package/dist/components/date-picker-panel/src/date-picker-com/panel-date-range.vue.js +698 -0
  50. package/dist/components/date-picker-panel/src/date-picker-com/panel-date-range2.vue.js +4 -0
  51. package/dist/components/date-picker-panel/src/date-picker-com/panel-month-range.vue.d.ts +59 -0
  52. package/dist/components/date-picker-panel/src/date-picker-com/panel-month-range.vue.js +255 -0
  53. package/dist/components/date-picker-panel/src/date-picker-com/panel-month-range2.vue.js +4 -0
  54. package/dist/components/date-picker-panel/src/date-picker-com/panel-year-range.vue.d.ts +59 -0
  55. package/dist/components/date-picker-panel/src/date-picker-com/panel-year-range.vue.js +268 -0
  56. package/dist/components/date-picker-panel/src/date-picker-com/panel-year-range2.vue.js +4 -0
  57. package/dist/components/date-picker-panel/src/date-picker-panel.d.ts +143 -0
  58. package/dist/components/date-picker-panel/src/date-picker-panel.js +90 -0
  59. package/dist/components/date-picker-panel/src/instance.d.ts +2 -0
  60. package/dist/components/date-picker-panel/src/panel-utils.d.ts +414 -0
  61. package/dist/components/date-picker-panel/src/panel-utils.js +20 -0
  62. package/dist/components/date-picker-panel/src/props/basic-cell.d.ts +12 -0
  63. package/dist/components/date-picker-panel/src/props/basic-cell.js +14 -0
  64. package/dist/components/date-picker-panel/src/props/basic-date-table.d.ts +66 -0
  65. package/dist/components/date-picker-panel/src/props/basic-date-table.js +16 -0
  66. package/dist/components/date-picker-panel/src/props/basic-month-table.d.ts +47 -0
  67. package/dist/components/date-picker-panel/src/props/basic-month-table.js +14 -0
  68. package/dist/components/date-picker-panel/src/props/basic-year-table.d.ts +47 -0
  69. package/dist/components/date-picker-panel/src/props/basic-year-table.js +14 -0
  70. package/dist/components/date-picker-panel/src/props/date-picker-panel.d.ts +66 -0
  71. package/dist/components/date-picker-panel/src/props/date-picker-panel.js +129 -0
  72. package/dist/components/date-picker-panel/src/props/panel-date-pick.d.ts +29 -0
  73. package/dist/components/date-picker-panel/src/props/panel-date-pick.js +24 -0
  74. package/dist/components/date-picker-panel/src/props/panel-date-range.d.ts +29 -0
  75. package/dist/components/date-picker-panel/src/props/panel-date-range.js +14 -0
  76. package/dist/components/date-picker-panel/src/props/panel-month-range.d.ts +19 -0
  77. package/dist/components/date-picker-panel/src/props/panel-month-range.js +18 -0
  78. package/dist/components/date-picker-panel/src/props/panel-year-range.d.ts +19 -0
  79. package/dist/components/date-picker-panel/src/props/panel-year-range.js +18 -0
  80. package/dist/components/date-picker-panel/src/props/shared.d.ts +97 -0
  81. package/dist/components/date-picker-panel/src/props/shared.js +96 -0
  82. package/dist/components/date-picker-panel/src/types.d.ts +22 -0
  83. package/dist/components/date-picker-panel/src/utils.d.ts +38 -0
  84. package/dist/components/date-picker-panel/src/utils.js +84 -0
  85. package/dist/components/index.d.ts +1 -0
  86. package/dist/components/index.js +142 -140
  87. package/dist/components/input/EpInput.vue.d.ts +3 -1
  88. package/dist/components/input/EpInput.vue.js +79 -78
  89. package/dist/components/input/index.js +1 -0
  90. package/dist/components/tabs/tabs.d.ts +1 -1
  91. package/dist/components/time-picker/index.d.ts +15 -2
  92. package/dist/components/time-picker/index.js +32 -4
  93. package/dist/components/time-picker/src/common/picker-range-trigger.vue.d.ts +92 -0
  94. package/dist/components/time-picker/src/common/picker-range-trigger.vue.js +141 -0
  95. package/dist/components/time-picker/src/common/picker-range-trigger2.vue.js +4 -0
  96. package/dist/components/time-picker/src/common/picker.vue.d.ts +510 -0
  97. package/dist/components/time-picker/src/common/picker.vue.js +463 -0
  98. package/dist/components/time-picker/src/common/picker2.vue.js +4 -0
  99. package/dist/components/time-picker/src/common/props.d.ts +280 -0
  100. package/dist/components/time-picker/src/common/props.js +282 -0
  101. package/dist/components/time-picker/src/composables/use-common-picker.d.ts +42 -0
  102. package/dist/components/time-picker/src/composables/use-common-picker.js +62 -0
  103. package/dist/components/time-picker/src/composables/use-time-panel.d.ts +13 -0
  104. package/dist/components/time-picker/src/composables/use-time-panel.js +60 -0
  105. package/dist/components/time-picker/src/composables/use-time-picker.d.ts +300 -0
  106. package/dist/components/time-picker/src/composables/use-time-picker.js +45 -0
  107. package/dist/components/time-picker/src/constants.d.ts +23 -0
  108. package/dist/components/time-picker/src/constants.js +23 -0
  109. package/dist/components/time-picker/src/props/basic-time-spinner.d.ts +39 -0
  110. package/dist/components/time-picker/src/props/basic-time-spinner.js +31 -0
  111. package/dist/components/time-picker/src/props/panel-time-picker.d.ts +16 -0
  112. package/dist/components/time-picker/src/props/panel-time-picker.js +17 -0
  113. package/dist/components/time-picker/src/props/panel-time-range.d.ts +15 -0
  114. package/dist/components/time-picker/src/props/panel-time-range.js +16 -0
  115. package/dist/components/time-picker/src/props/shared.d.ts +31 -0
  116. package/dist/components/time-picker/src/props/shared.js +40 -0
  117. package/dist/components/time-picker/src/time-picker-com/basic-time-spinner.vue.d.ts +82 -0
  118. package/dist/components/time-picker/src/time-picker-com/basic-time-spinner.vue.js +253 -0
  119. package/dist/components/time-picker/src/time-picker-com/basic-time-spinner2.vue.js +4 -0
  120. package/dist/components/time-picker/src/time-picker-com/panel-time-pick.vue.d.ts +37 -0
  121. package/dist/components/time-picker/src/time-picker-com/panel-time-pick.vue.js +127 -0
  122. package/dist/components/time-picker/src/time-picker-com/panel-time-pick2.vue.js +4 -0
  123. package/dist/components/time-picker/src/time-picker-com/panel-time-range.vue.d.ts +35 -0
  124. package/dist/components/time-picker/src/time-picker-com/panel-time-range.vue.js +206 -0
  125. package/dist/components/time-picker/src/time-picker-com/panel-time-range2.vue.js +4 -0
  126. package/dist/components/time-picker/src/time-picker.d.ts +440 -0
  127. package/dist/components/time-picker/src/time-picker.js +68 -0
  128. package/dist/components/time-picker/src/utils.d.ts +14 -0
  129. package/dist/components/time-picker/src/utils.js +40 -0
  130. package/dist/constants/date.js +17 -0
  131. package/dist/directives/repeat-click/index.js +33 -0
  132. package/dist/ep-craft.js +150 -148
  133. package/dist/hooks/use-empty-values/index.js +14 -14
  134. package/dist/index.css +1 -1
  135. package/dist/node_modules/.pnpm/dayjs@1.11.21/node_modules/dayjs/plugin/advancedFormat.js +54 -0
  136. package/dist/node_modules/.pnpm/dayjs@1.11.21/node_modules/dayjs/plugin/customParseFormat.js +127 -0
  137. package/dist/node_modules/.pnpm/dayjs@1.11.21/node_modules/dayjs/plugin/dayOfYear.js +19 -0
  138. package/dist/node_modules/.pnpm/dayjs@1.11.21/node_modules/dayjs/plugin/isSameOrAfter.js +18 -0
  139. package/dist/node_modules/.pnpm/dayjs@1.11.21/node_modules/dayjs/plugin/isSameOrBefore.js +18 -0
  140. package/dist/node_modules/.pnpm/dayjs@1.11.21/node_modules/dayjs/plugin/localeData.js +82 -0
  141. package/dist/node_modules/.pnpm/dayjs@1.11.21/node_modules/dayjs/plugin/weekOfYear.js +29 -0
  142. package/dist/node_modules/.pnpm/dayjs@1.11.21/node_modules/dayjs/plugin/weekYear.js +19 -0
  143. package/dist/utils/arrays.js +5 -4
  144. package/dist/vendored-components.d.ts +1 -1
  145. package/dist/vendored-components.js +9 -5
  146. package/package.json +2 -1
  147. package/theme-chalk/src/float-label.scss +96 -2
@@ -0,0 +1,4 @@
1
+ import f from "./panel-date-range.vue.js";
2
+ export {
3
+ f as default
4
+ };
@@ -0,0 +1,59 @@
1
+ import dayjs from 'dayjs';
2
+ declare var __VLS_1: {
3
+ class: string;
4
+ }, __VLS_3: {}, __VLS_13: {}, __VLS_32: {}, __VLS_42: {};
5
+ type __VLS_Slots = {} & {
6
+ sidebar?: (props: typeof __VLS_1) => any;
7
+ } & {
8
+ 'prev-year'?: (props: typeof __VLS_3) => any;
9
+ } & {
10
+ 'next-year'?: (props: typeof __VLS_13) => any;
11
+ } & {
12
+ 'prev-year'?: (props: typeof __VLS_32) => any;
13
+ } & {
14
+ 'next-year'?: (props: typeof __VLS_42) => any;
15
+ };
16
+ declare const __VLS_component: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
17
+ readonly unlinkPanels: BooleanConstructor;
18
+ readonly visible: import("../../../../utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
19
+ readonly showConfirm: BooleanConstructor;
20
+ readonly showFooter: import("../../../../utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
21
+ readonly border: BooleanConstructor;
22
+ readonly disabled: BooleanConstructor;
23
+ readonly parsedValue: {
24
+ readonly type: import("vue").PropType<import("../../../../utils").EpPropMergeType<(new (...args: any[]) => dayjs.Dayjs | [dayjs.Dayjs, dayjs.Dayjs]) | (() => import("@element-plus/components/time-picker").DayOrDays) | (((new (...args: any[]) => dayjs.Dayjs | [dayjs.Dayjs, dayjs.Dayjs]) | (() => import("@element-plus/components/time-picker").DayOrDays)) | null)[], unknown, unknown>>;
25
+ readonly required: false;
26
+ readonly validator: ((val: unknown) => boolean) | undefined;
27
+ __epPropKey: true;
28
+ };
29
+ readonly singlePanel: BooleanConstructor;
30
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
31
+ readonly unlinkPanels: BooleanConstructor;
32
+ readonly visible: import("../../../../utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
33
+ readonly showConfirm: BooleanConstructor;
34
+ readonly showFooter: import("../../../../utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
35
+ readonly border: BooleanConstructor;
36
+ readonly disabled: BooleanConstructor;
37
+ readonly parsedValue: {
38
+ readonly type: import("vue").PropType<import("../../../../utils").EpPropMergeType<(new (...args: any[]) => dayjs.Dayjs | [dayjs.Dayjs, dayjs.Dayjs]) | (() => import("@element-plus/components/time-picker").DayOrDays) | (((new (...args: any[]) => dayjs.Dayjs | [dayjs.Dayjs, dayjs.Dayjs]) | (() => import("@element-plus/components/time-picker").DayOrDays)) | null)[], unknown, unknown>>;
39
+ readonly required: false;
40
+ readonly validator: ((val: unknown) => boolean) | undefined;
41
+ __epPropKey: true;
42
+ };
43
+ readonly singlePanel: BooleanConstructor;
44
+ }>> & Readonly<{}>, {
45
+ readonly visible: import("../../../../utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
46
+ readonly border: boolean;
47
+ readonly disabled: boolean;
48
+ readonly showConfirm: boolean;
49
+ readonly showFooter: import("../../../../utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
50
+ readonly unlinkPanels: boolean;
51
+ readonly singlePanel: boolean;
52
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
53
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
54
+ export default _default;
55
+ type __VLS_WithSlots<T, S> = T & {
56
+ new (): {
57
+ $slots: S;
58
+ };
59
+ };
@@ -0,0 +1,255 @@
1
+ import { defineComponent as de, inject as B, toRef as _, ref as j, computed as J, watch as ue, openBlock as m, createElementBlock as p, normalizeClass as s, unref as e, createElementVNode as i, renderSlot as h, Fragment as ce, renderList as me, toDisplayString as I, createCommentVNode as D, createVNode as r, withCtx as R } from "vue";
2
+ import z from "dayjs";
3
+ import { EpIcon as V } from "../../../icon/index.js";
4
+ import "@vue/shared";
5
+ import "lodash-unified";
6
+ import "@vueuse/core";
7
+ import { DArrowLeft as H, DArrowRight as q } from "@element-plus/icons-vue";
8
+ import { useLocale as pe } from "../../../../hooks/use-locale/index.js";
9
+ import "../../../../hooks/use-size/index.js";
10
+ import "@popperjs/core";
11
+ import "../../../../hooks/use-z-index/index.js";
12
+ import "../../../../hooks/use-delayed-toggle/index.js";
13
+ import "../../../../hooks/use-aria/index.js";
14
+ import "../../../../hooks/use-model-toggle/index.js";
15
+ import "../../../../hooks/use-empty-values/index.js";
16
+ import "../../../time-picker/index.js";
17
+ import { isValidRange as be, getDefaultValue as ge, correctlyParseUserInput as fe } from "../utils.js";
18
+ import { panelMonthRangeEmits as ve, panelMonthRangeProps as he } from "../props/panel-month-range.js";
19
+ import { useMonthRangeHeader as ke } from "../composables/use-month-range-header.js";
20
+ import { useRangePicker as Ce } from "../composables/use-range-picker.js";
21
+ import { ROOT_PICKER_IS_DEFAULT_FORMAT_INJECTION_KEY as ye } from "../constants.js";
22
+ import x from "./basic-month-table.vue.js";
23
+ import "../../../form/index.js";
24
+ import { PICKER_BASE_INJECTION_KEY as Pe } from "../../../time-picker/src/constants.js";
25
+ import { useFormDisabled as De } from "../../../form/src/hooks/use-form-common-props.js";
26
+ const Re = ["disabled", "onClick"], Ve = ["disabled"], Ee = ["disabled"], Ne = ["disabled"], Se = ["disabled"], E = "year", aa = /* @__PURE__ */ de({
27
+ name: "DatePickerMonthRange",
28
+ __name: "panel-month-range",
29
+ props: he,
30
+ emits: ve,
31
+ setup(G, { emit: Q }) {
32
+ const d = G, v = Q, { lang: k } = pe(), c = B(Pe), W = B(
33
+ ye,
34
+ void 0
35
+ ), { shortcuts: Y, disabledDate: w, cellClassName: $ } = c.props, X = _(c.props, "format"), O = _(c.props, "defaultValue"), b = j(z().locale(k.value)), g = j(z().locale(k.value).add(1, E)), {
36
+ minDate: C,
37
+ maxDate: y,
38
+ rangeState: N,
39
+ ppNs: t,
40
+ drpNs: f,
41
+ handleChangeRange: A,
42
+ handleRangeConfirm: Z,
43
+ handleShortcutClick: ee,
44
+ onSelect: S,
45
+ parseValue: ae
46
+ } = Ce(d, {
47
+ defaultValue: O,
48
+ leftDate: b,
49
+ rightDate: g,
50
+ unit: E,
51
+ sortDates: ie
52
+ }), L = J(() => !!Y.length), {
53
+ leftPrevYear: F,
54
+ rightNextYear: M,
55
+ leftNextYear: T,
56
+ rightPrevYear: K,
57
+ leftLabel: te,
58
+ rightLabel: ne,
59
+ leftYear: le,
60
+ rightYear: se
61
+ } = ke({
62
+ unlinkPanels: _(d, "unlinkPanels"),
63
+ leftDate: b,
64
+ rightDate: g
65
+ }), P = J(() => d.singlePanel || d.unlinkPanels && se.value > le.value + 1), U = (a, l = !0) => {
66
+ const n = a.minDate, u = a.maxDate;
67
+ y.value === u && C.value === n || (v("calendar-change", [n.toDate(), u && u.toDate()]), y.value = u, C.value = n, l && Z());
68
+ }, oe = () => {
69
+ let a = null;
70
+ c != null && c.emptyValues && (a = c.emptyValues.valueOnClear.value), b.value = ge(e(O), {
71
+ lang: e(k),
72
+ unit: "year",
73
+ unlinkPanels: d.unlinkPanels
74
+ })[0], g.value = b.value.add(1, "year"), v("pick", a);
75
+ }, re = (a) => fe(
76
+ a,
77
+ X.value,
78
+ k.value,
79
+ W
80
+ );
81
+ function ie(a, l) {
82
+ if (d.unlinkPanels && l) {
83
+ const n = (a == null ? void 0 : a.year()) || 0, u = l.year();
84
+ g.value = n === u ? l.add(1, E) : l;
85
+ } else
86
+ g.value = b.value.add(1, E);
87
+ }
88
+ const o = De();
89
+ return ue(
90
+ () => d.visible,
91
+ (a) => {
92
+ !a && N.value.selecting && (ae(d.parsedValue), S(!1));
93
+ }
94
+ ), v("set-picker-option", ["isValidValue", be]), v("set-picker-option", ["parseUserInput", re]), v("set-picker-option", ["handleClear", oe]), (a, l) => (m(), p("div", {
95
+ class: s([
96
+ e(t).b(),
97
+ e(f).b(),
98
+ e(t).is("border", a.border),
99
+ e(t).is("disabled", e(o)),
100
+ {
101
+ "has-sidebar": !!a.$slots.sidebar || L.value,
102
+ "single-panel": a.singlePanel
103
+ }
104
+ ])
105
+ }, [
106
+ i("div", {
107
+ class: s(e(t).e("body-wrapper"))
108
+ }, [
109
+ h(a.$slots, "sidebar", {
110
+ class: s(e(t).e("sidebar"))
111
+ }),
112
+ L.value ? (m(), p("div", {
113
+ key: 0,
114
+ class: s(e(t).e("sidebar"))
115
+ }, [
116
+ (m(!0), p(ce, null, me(e(Y), (n, u) => (m(), p("button", {
117
+ key: u,
118
+ type: "button",
119
+ class: s(e(t).e("shortcut")),
120
+ disabled: e(o),
121
+ onClick: (_e) => e(ee)(n)
122
+ }, I(n.text), 11, Re))), 128))
123
+ ], 2)) : D("", !0),
124
+ i("div", {
125
+ class: s(e(t).e("body"))
126
+ }, [
127
+ i("div", {
128
+ class: s([
129
+ e(t).e("content"),
130
+ e(f).e("content"),
131
+ e(f).is("left", !a.singlePanel)
132
+ ])
133
+ }, [
134
+ i("div", {
135
+ class: s(e(f).e("header"))
136
+ }, [
137
+ i("button", {
138
+ type: "button",
139
+ class: s([e(t).e("icon-btn"), "d-arrow-left"]),
140
+ disabled: e(o),
141
+ onClick: l[0] || (l[0] = //@ts-ignore
142
+ (...n) => e(F) && e(F)(...n))
143
+ }, [
144
+ h(a.$slots, "prev-year", {}, () => [
145
+ r(e(V), null, {
146
+ default: R(() => [
147
+ r(e(H))
148
+ ]),
149
+ _: 1
150
+ })
151
+ ])
152
+ ], 10, Ve),
153
+ a.unlinkPanels || a.singlePanel ? (m(), p("button", {
154
+ key: 0,
155
+ type: "button",
156
+ disabled: !P.value || e(o),
157
+ class: s([[
158
+ e(t).e("icon-btn"),
159
+ e(t).is("disabled", !P.value || e(o))
160
+ ], "d-arrow-right"]),
161
+ onClick: l[1] || (l[1] = //@ts-ignore
162
+ (...n) => e(T) && e(T)(...n))
163
+ }, [
164
+ h(a.$slots, "next-year", {}, () => [
165
+ r(e(V), null, {
166
+ default: R(() => [
167
+ r(e(q))
168
+ ]),
169
+ _: 1
170
+ })
171
+ ])
172
+ ], 10, Ee)) : D("", !0),
173
+ i("div", null, I(e(te)), 1)
174
+ ], 2),
175
+ r(x, {
176
+ "selection-mode": "range",
177
+ date: b.value,
178
+ "min-date": e(C),
179
+ "max-date": e(y),
180
+ "range-state": e(N),
181
+ "disabled-date": e(w),
182
+ disabled: e(o),
183
+ "cell-class-name": e($),
184
+ onChangerange: e(A),
185
+ onPick: U,
186
+ onSelect: e(S)
187
+ }, null, 8, ["date", "min-date", "max-date", "range-state", "disabled-date", "disabled", "cell-class-name", "onChangerange", "onSelect"])
188
+ ], 2),
189
+ a.singlePanel ? D("", !0) : (m(), p("div", {
190
+ key: 0,
191
+ class: s([[e(t).e("content"), e(f).e("content")], "is-right"])
192
+ }, [
193
+ i("div", {
194
+ class: s(e(f).e("header"))
195
+ }, [
196
+ a.unlinkPanels ? (m(), p("button", {
197
+ key: 0,
198
+ type: "button",
199
+ disabled: !P.value || e(o),
200
+ class: s([[
201
+ e(t).e("icon-btn"),
202
+ e(t).is("disabled", !P.value || e(o))
203
+ ], "d-arrow-left"]),
204
+ onClick: l[2] || (l[2] = //@ts-ignore
205
+ (...n) => e(K) && e(K)(...n))
206
+ }, [
207
+ h(a.$slots, "prev-year", {}, () => [
208
+ r(e(V), null, {
209
+ default: R(() => [
210
+ r(e(H))
211
+ ]),
212
+ _: 1
213
+ })
214
+ ])
215
+ ], 10, Ne)) : D("", !0),
216
+ i("button", {
217
+ type: "button",
218
+ class: s([e(t).e("icon-btn"), "d-arrow-right"]),
219
+ disabled: e(o),
220
+ onClick: l[3] || (l[3] = //@ts-ignore
221
+ (...n) => e(M) && e(M)(...n))
222
+ }, [
223
+ h(a.$slots, "next-year", {}, () => [
224
+ r(e(V), null, {
225
+ default: R(() => [
226
+ r(e(q))
227
+ ]),
228
+ _: 1
229
+ })
230
+ ])
231
+ ], 10, Se),
232
+ i("div", null, I(e(ne)), 1)
233
+ ], 2),
234
+ r(x, {
235
+ "selection-mode": "range",
236
+ date: g.value,
237
+ "min-date": e(C),
238
+ "max-date": e(y),
239
+ "range-state": e(N),
240
+ "disabled-date": e(w),
241
+ disabled: e(o),
242
+ "cell-class-name": e($),
243
+ onChangerange: e(A),
244
+ onPick: U,
245
+ onSelect: e(S)
246
+ }, null, 8, ["date", "min-date", "max-date", "range-state", "disabled-date", "disabled", "cell-class-name", "onChangerange", "onSelect"])
247
+ ], 2))
248
+ ], 2)
249
+ ], 2)
250
+ ], 2));
251
+ }
252
+ });
253
+ export {
254
+ aa as default
255
+ };
@@ -0,0 +1,4 @@
1
+ import f from "./panel-month-range.vue.js";
2
+ export {
3
+ f as default
4
+ };
@@ -0,0 +1,59 @@
1
+ import dayjs from 'dayjs';
2
+ declare var __VLS_1: {
3
+ class: string;
4
+ }, __VLS_3: {}, __VLS_13: {}, __VLS_32: {}, __VLS_42: {};
5
+ type __VLS_Slots = {} & {
6
+ sidebar?: (props: typeof __VLS_1) => any;
7
+ } & {
8
+ 'prev-year'?: (props: typeof __VLS_3) => any;
9
+ } & {
10
+ 'next-year'?: (props: typeof __VLS_13) => any;
11
+ } & {
12
+ 'prev-year'?: (props: typeof __VLS_32) => any;
13
+ } & {
14
+ 'next-year'?: (props: typeof __VLS_42) => any;
15
+ };
16
+ declare const __VLS_component: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
17
+ readonly unlinkPanels: BooleanConstructor;
18
+ readonly visible: import("../../../../utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
19
+ readonly showConfirm: BooleanConstructor;
20
+ readonly showFooter: import("../../../../utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
21
+ readonly border: BooleanConstructor;
22
+ readonly disabled: BooleanConstructor;
23
+ readonly parsedValue: {
24
+ readonly type: import("vue").PropType<import("../../../../utils").EpPropMergeType<(new (...args: any[]) => dayjs.Dayjs | [dayjs.Dayjs, dayjs.Dayjs]) | (() => import("@element-plus/components/time-picker").DayOrDays) | (((new (...args: any[]) => dayjs.Dayjs | [dayjs.Dayjs, dayjs.Dayjs]) | (() => import("@element-plus/components/time-picker").DayOrDays)) | null)[], unknown, unknown>>;
25
+ readonly required: false;
26
+ readonly validator: ((val: unknown) => boolean) | undefined;
27
+ __epPropKey: true;
28
+ };
29
+ readonly singlePanel: BooleanConstructor;
30
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
31
+ readonly unlinkPanels: BooleanConstructor;
32
+ readonly visible: import("../../../../utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
33
+ readonly showConfirm: BooleanConstructor;
34
+ readonly showFooter: import("../../../../utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
35
+ readonly border: BooleanConstructor;
36
+ readonly disabled: BooleanConstructor;
37
+ readonly parsedValue: {
38
+ readonly type: import("vue").PropType<import("../../../../utils").EpPropMergeType<(new (...args: any[]) => dayjs.Dayjs | [dayjs.Dayjs, dayjs.Dayjs]) | (() => import("@element-plus/components/time-picker").DayOrDays) | (((new (...args: any[]) => dayjs.Dayjs | [dayjs.Dayjs, dayjs.Dayjs]) | (() => import("@element-plus/components/time-picker").DayOrDays)) | null)[], unknown, unknown>>;
39
+ readonly required: false;
40
+ readonly validator: ((val: unknown) => boolean) | undefined;
41
+ __epPropKey: true;
42
+ };
43
+ readonly singlePanel: BooleanConstructor;
44
+ }>> & Readonly<{}>, {
45
+ readonly visible: import("../../../../utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
46
+ readonly border: boolean;
47
+ readonly disabled: boolean;
48
+ readonly showConfirm: boolean;
49
+ readonly showFooter: import("../../../../utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
50
+ readonly unlinkPanels: boolean;
51
+ readonly singlePanel: boolean;
52
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
53
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
54
+ export default _default;
55
+ type __VLS_WithSlots<T, S> = T & {
56
+ new (): {
57
+ $slots: S;
58
+ };
59
+ };
@@ -0,0 +1,268 @@
1
+ import { defineComponent as ge, ref as H, inject as M, toRef as L, computed as C, useSlots as be, watch as fe, openBlock as m, createElementBlock as p, normalizeClass as r, createElementVNode as d, unref as e, renderSlot as P, Fragment as ve, renderList as he, toDisplayString as A, createCommentVNode as V, createVNode as i, withCtx as Y } from "vue";
2
+ import q from "dayjs";
3
+ import { DArrowLeft as G, DArrowRight as Q } from "@element-plus/icons-vue";
4
+ import { EpIcon as S } from "../../../icon/index.js";
5
+ import "@vue/shared";
6
+ import "lodash-unified";
7
+ import "@vueuse/core";
8
+ import { useLocale as ke } from "../../../../hooks/use-locale/index.js";
9
+ import "../../../../hooks/use-size/index.js";
10
+ import "@popperjs/core";
11
+ import "../../../../hooks/use-z-index/index.js";
12
+ import "../../../../hooks/use-delayed-toggle/index.js";
13
+ import "../../../../hooks/use-aria/index.js";
14
+ import "../../../../hooks/use-model-toggle/index.js";
15
+ import "../../../../hooks/use-empty-values/index.js";
16
+ import "../../../time-picker/index.js";
17
+ import { panelYearRangeEmits as Ce, panelYearRangeProps as Pe } from "../props/panel-year-range.js";
18
+ import { useYearRangeHeader as ye } from "../composables/use-year-range-header.js";
19
+ import { useRangePicker as Re } from "../composables/use-range-picker.js";
20
+ import { correctlyParseUserInput as we, isValidRange as De, getDefaultValue as _e } from "../utils.js";
21
+ import { ROOT_PICKER_IS_DEFAULT_FORMAT_INJECTION_KEY as Ve } from "../constants.js";
22
+ import W from "./basic-year-table.vue.js";
23
+ import "../../../form/index.js";
24
+ import { PICKER_BASE_INJECTION_KEY as Ye } from "../../../time-picker/src/constants.js";
25
+ import { useFormDisabled as Se } from "../../../form/src/hooks/use-form-common-props.js";
26
+ const Ee = ["disabled", "onClick"], Ne = ["disabled"], Be = ["disabled"], Ie = ["disabled"], Le = ["disabled"], f = 10, y = "year", ot = /* @__PURE__ */ ge({
27
+ name: "DatePickerYearRange",
28
+ __name: "panel-year-range",
29
+ props: Pe,
30
+ emits: Ce,
31
+ setup(X, { emit: Z }) {
32
+ const s = X, v = Z, { lang: R } = ke(), h = H(q().locale(R.value)), g = H(q().locale(R.value).add(f, y)), ee = M(
33
+ Ve,
34
+ void 0
35
+ ), c = M(Ye), { shortcuts: K, disabledDate: k, cellClassName: O } = c.props, te = L(c.props, "format"), $ = L(c.props, "defaultValue"), {
36
+ minDate: w,
37
+ maxDate: D,
38
+ rangeState: E,
39
+ ppNs: n,
40
+ drpNs: b,
41
+ handleChangeRange: F,
42
+ handleRangeConfirm: ae,
43
+ handleShortcutClick: ne,
44
+ onSelect: N,
45
+ parseValue: le
46
+ } = Re(s, {
47
+ defaultValue: $,
48
+ leftDate: h,
49
+ rightDate: g,
50
+ step: f,
51
+ unit: y,
52
+ sortDates: pe
53
+ }), {
54
+ leftPrevYear: T,
55
+ rightNextYear: x,
56
+ leftNextYear: U,
57
+ rightPrevYear: j,
58
+ leftLabel: re,
59
+ rightLabel: se,
60
+ leftYear: oe,
61
+ rightYear: ie
62
+ } = ye({
63
+ unlinkPanels: L(s, "unlinkPanels"),
64
+ leftDate: h,
65
+ rightDate: g
66
+ }), o = Se(), J = C(() => !!K.length), de = C(() => [
67
+ n.b(),
68
+ b.b(),
69
+ n.is("border", s.border),
70
+ n.is("disabled", o.value),
71
+ {
72
+ "has-sidebar": !!be().sidebar || J.value,
73
+ "single-panel": s.singlePanel
74
+ }
75
+ ]), B = C(() => ({
76
+ content: [
77
+ n.e("content"),
78
+ b.e("content"),
79
+ b.is("left", !s.singlePanel)
80
+ ],
81
+ arrowLeftBtn: [n.e("icon-btn"), "d-arrow-left"],
82
+ arrowRightBtn: [
83
+ n.e("icon-btn"),
84
+ n.is("disabled", !_.value || o.value),
85
+ "d-arrow-right"
86
+ ]
87
+ })), I = C(() => ({
88
+ content: [n.e("content"), b.e("content"), "is-right"],
89
+ arrowLeftBtn: [
90
+ n.e("icon-btn"),
91
+ n.is("disabled", !_.value || o.value),
92
+ "d-arrow-left"
93
+ ],
94
+ arrowRightBtn: [n.e("icon-btn"), "d-arrow-right"]
95
+ })), _ = C(() => s.singlePanel || s.unlinkPanels && ie.value > oe.value + 1), z = (t, a = !0) => {
96
+ const l = t.minDate, u = t.maxDate;
97
+ D.value === u && w.value === l || (v("calendar-change", [l.toDate(), u && u.toDate()]), D.value = u, w.value = l, a && ae());
98
+ }, ue = (t) => we(
99
+ t,
100
+ te.value,
101
+ R.value,
102
+ ee
103
+ ), ce = (t) => De(t) && (k ? !k(t[0].toDate()) && !k(t[1].toDate()) : !0), me = () => {
104
+ let t = null;
105
+ c != null && c.emptyValues && (t = c.emptyValues.valueOnClear.value);
106
+ const a = _e(e($), {
107
+ lang: e(R),
108
+ step: f,
109
+ unit: y,
110
+ unlinkPanels: s.unlinkPanels
111
+ });
112
+ h.value = a[0], g.value = a[1], v("pick", t);
113
+ };
114
+ function pe(t, a) {
115
+ if (s.unlinkPanels && a) {
116
+ const l = (t == null ? void 0 : t.year()) || 0, u = a.year();
117
+ g.value = l + f > u ? a.add(f, y) : a;
118
+ } else
119
+ g.value = h.value.add(f, y);
120
+ }
121
+ return fe(
122
+ () => s.visible,
123
+ (t) => {
124
+ !t && E.value.selecting && (le(s.parsedValue), N(!1));
125
+ }
126
+ ), v("set-picker-option", ["isValidValue", ce]), v("set-picker-option", ["parseUserInput", ue]), v("set-picker-option", ["handleClear", me]), (t, a) => (m(), p("div", {
127
+ class: r(de.value)
128
+ }, [
129
+ d("div", {
130
+ class: r(e(n).e("body-wrapper"))
131
+ }, [
132
+ P(t.$slots, "sidebar", {
133
+ class: r(e(n).e("sidebar"))
134
+ }),
135
+ J.value ? (m(), p("div", {
136
+ key: 0,
137
+ class: r(e(n).e("sidebar"))
138
+ }, [
139
+ (m(!0), p(ve, null, he(e(K), (l, u) => (m(), p("button", {
140
+ key: u,
141
+ type: "button",
142
+ class: r(e(n).e("shortcut")),
143
+ disabled: e(o),
144
+ onClick: (Ae) => e(ne)(l)
145
+ }, A(l.text), 11, Ee))), 128))
146
+ ], 2)) : V("", !0),
147
+ d("div", {
148
+ class: r(e(n).e("body"))
149
+ }, [
150
+ d("div", {
151
+ class: r(B.value.content)
152
+ }, [
153
+ d("div", {
154
+ class: r(e(b).e("header"))
155
+ }, [
156
+ d("button", {
157
+ type: "button",
158
+ class: r(B.value.arrowLeftBtn),
159
+ disabled: e(o),
160
+ onClick: a[0] || (a[0] = //@ts-ignore
161
+ (...l) => e(T) && e(T)(...l))
162
+ }, [
163
+ P(t.$slots, "prev-year", {}, () => [
164
+ i(e(S), null, {
165
+ default: Y(() => [
166
+ i(e(G))
167
+ ]),
168
+ _: 1
169
+ })
170
+ ])
171
+ ], 10, Ne),
172
+ t.unlinkPanels || t.singlePanel ? (m(), p("button", {
173
+ key: 0,
174
+ type: "button",
175
+ disabled: !_.value || e(o),
176
+ class: r(B.value.arrowRightBtn),
177
+ onClick: a[1] || (a[1] = //@ts-ignore
178
+ (...l) => e(U) && e(U)(...l))
179
+ }, [
180
+ P(t.$slots, "next-year", {}, () => [
181
+ i(e(S), null, {
182
+ default: Y(() => [
183
+ i(e(Q))
184
+ ]),
185
+ _: 1
186
+ })
187
+ ])
188
+ ], 10, Be)) : V("", !0),
189
+ d("div", null, A(e(re)), 1)
190
+ ], 2),
191
+ i(W, {
192
+ "selection-mode": "range",
193
+ date: h.value,
194
+ "min-date": e(w),
195
+ "max-date": e(D),
196
+ "range-state": e(E),
197
+ "disabled-date": e(k),
198
+ disabled: e(o),
199
+ "cell-class-name": e(O),
200
+ onChangerange: e(F),
201
+ onPick: z,
202
+ onSelect: e(N)
203
+ }, null, 8, ["date", "min-date", "max-date", "range-state", "disabled-date", "disabled", "cell-class-name", "onChangerange", "onSelect"])
204
+ ], 2),
205
+ t.singlePanel ? V("", !0) : (m(), p("div", {
206
+ key: 0,
207
+ class: r(I.value.content)
208
+ }, [
209
+ d("div", {
210
+ class: r(e(b).e("header"))
211
+ }, [
212
+ t.unlinkPanels ? (m(), p("button", {
213
+ key: 0,
214
+ type: "button",
215
+ disabled: !_.value || e(o),
216
+ class: r(I.value.arrowLeftBtn),
217
+ onClick: a[2] || (a[2] = //@ts-ignore
218
+ (...l) => e(j) && e(j)(...l))
219
+ }, [
220
+ P(t.$slots, "prev-year", {}, () => [
221
+ i(e(S), null, {
222
+ default: Y(() => [
223
+ i(e(G))
224
+ ]),
225
+ _: 1
226
+ })
227
+ ])
228
+ ], 10, Ie)) : V("", !0),
229
+ d("button", {
230
+ type: "button",
231
+ class: r(I.value.arrowRightBtn),
232
+ disabled: e(o),
233
+ onClick: a[3] || (a[3] = //@ts-ignore
234
+ (...l) => e(x) && e(x)(...l))
235
+ }, [
236
+ P(t.$slots, "next-year", {}, () => [
237
+ i(e(S), null, {
238
+ default: Y(() => [
239
+ i(e(Q))
240
+ ]),
241
+ _: 1
242
+ })
243
+ ])
244
+ ], 10, Le),
245
+ d("div", null, A(e(se)), 1)
246
+ ], 2),
247
+ i(W, {
248
+ "selection-mode": "range",
249
+ date: g.value,
250
+ "min-date": e(w),
251
+ "max-date": e(D),
252
+ "range-state": e(E),
253
+ "disabled-date": e(k),
254
+ disabled: e(o),
255
+ "cell-class-name": e(O),
256
+ onChangerange: e(F),
257
+ onPick: z,
258
+ onSelect: e(N)
259
+ }, null, 8, ["date", "min-date", "max-date", "range-state", "disabled-date", "disabled", "cell-class-name", "onChangerange", "onSelect"])
260
+ ], 2))
261
+ ], 2)
262
+ ], 2)
263
+ ], 2));
264
+ }
265
+ });
266
+ export {
267
+ ot as default
268
+ };
@@ -0,0 +1,4 @@
1
+ import f from "./panel-year-range.vue.js";
2
+ export {
3
+ f as default
4
+ };