@mekari/pixel3-date-picker 0.0.3-dev.0 → 0.1.0-dev.1

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 (79) hide show
  1. package/dist/calendar-panel.d.mts +12 -6
  2. package/dist/calendar-panel.d.ts +12 -6
  3. package/dist/calendar-panel.js +163 -85
  4. package/dist/calendar-panel.mjs +14 -13
  5. package/dist/{chunk-EYTJIMSM.mjs → chunk-26K3LMTE.mjs} +32 -11
  6. package/dist/{chunk-5PISTT2K.mjs → chunk-5MFHZK63.mjs} +4 -4
  7. package/dist/{chunk-XQLKPPRN.mjs → chunk-5VRVDIXN.mjs} +47 -0
  8. package/dist/{chunk-NU6HYEPT.mjs → chunk-64EO4HV7.mjs} +1 -1
  9. package/dist/{chunk-ZS4JQRK3.mjs → chunk-7CLF67SP.mjs} +1 -1
  10. package/dist/{chunk-NIUQXHGQ.mjs → chunk-E5BRVBZ2.mjs} +19 -1
  11. package/dist/{chunk-KTADGCWP.mjs → chunk-FPRON3EM.mjs} +14 -14
  12. package/dist/chunk-IRNTTSB7.mjs +144 -0
  13. package/dist/chunk-KTYQJMW4.mjs +35 -0
  14. package/dist/chunk-MO5D3TCF.mjs +113 -0
  15. package/dist/{chunk-HJ4V3PM6.mjs → chunk-O43S64IA.mjs} +4 -4
  16. package/dist/{chunk-NVULZQVI.mjs → chunk-OMV7LXBW.mjs} +1 -1
  17. package/dist/chunk-OYJNIILC.mjs +40 -0
  18. package/dist/{chunk-3RCUXNBN.mjs → chunk-P7JOEQIL.mjs} +9 -6
  19. package/dist/{chunk-26Y3AVJW.mjs → chunk-U7O52D6B.mjs} +13 -1
  20. package/dist/{chunk-JZ2KFYWF.mjs → chunk-WK62QUOT.mjs} +1 -1
  21. package/dist/components/calendar/index.js +83 -51
  22. package/dist/components/calendar/index.mjs +8 -7
  23. package/dist/components/calendar/table-date.js +51 -19
  24. package/dist/components/calendar/table-date.mjs +5 -4
  25. package/dist/components/calendar/table-month.js +48 -16
  26. package/dist/components/calendar/table-month.mjs +6 -5
  27. package/dist/components/calendar/table-year.js +48 -16
  28. package/dist/components/calendar/table-year.mjs +6 -5
  29. package/dist/components/parts/index.d.mts +1 -0
  30. package/dist/components/parts/index.d.ts +1 -0
  31. package/dist/components/parts/index.js +34 -0
  32. package/dist/components/parts/index.mjs +7 -3
  33. package/dist/components/parts/time.d.mts +32 -0
  34. package/dist/components/parts/time.d.ts +32 -0
  35. package/dist/components/parts/time.js +59 -0
  36. package/dist/components/parts/time.mjs +7 -0
  37. package/dist/composables/useCalendar.d.mts +8 -1
  38. package/dist/composables/useCalendar.d.ts +8 -1
  39. package/dist/composables/useCalendar.mjs +2 -2
  40. package/dist/composables/useCalendarRange.mjs +2 -2
  41. package/dist/composables/useTime.d.mts +96 -0
  42. package/dist/composables/useTime.d.ts +96 -0
  43. package/dist/composables/useTime.js +185 -0
  44. package/dist/composables/useTime.mjs +9 -0
  45. package/dist/date-picker.d.mts +91 -3
  46. package/dist/date-picker.d.ts +91 -3
  47. package/dist/date-picker.js +487 -118
  48. package/dist/date-picker.mjs +19 -15
  49. package/dist/index.d.mts +7 -0
  50. package/dist/index.d.ts +7 -0
  51. package/dist/index.js +487 -118
  52. package/dist/index.mjs +19 -15
  53. package/dist/metafile-cjs.json +1 -1
  54. package/dist/metafile-esm.json +1 -1
  55. package/dist/modules/date-picker.hooks.js +3 -0
  56. package/dist/modules/date-picker.hooks.mjs +4 -4
  57. package/dist/modules/date-picker.locales.mjs +2 -2
  58. package/dist/modules/date-picker.props.d.mts +83 -4
  59. package/dist/modules/date-picker.props.d.ts +83 -4
  60. package/dist/modules/date-picker.props.js +50 -2
  61. package/dist/modules/date-picker.props.mjs +5 -3
  62. package/dist/time-panel.d.mts +98 -0
  63. package/dist/time-panel.d.ts +98 -0
  64. package/dist/time-panel.js +665 -0
  65. package/dist/time-panel.mjs +18 -0
  66. package/dist/utils/base.d.mts +3 -1
  67. package/dist/utils/base.d.ts +3 -1
  68. package/dist/utils/base.js +20 -0
  69. package/dist/utils/base.mjs +5 -1
  70. package/dist/utils/date.d.mts +2 -1
  71. package/dist/utils/date.d.ts +2 -1
  72. package/dist/utils/date.js +13 -0
  73. package/dist/utils/date.mjs +3 -1
  74. package/dist/utils/dom.d.mts +18 -0
  75. package/dist/utils/dom.d.ts +18 -0
  76. package/dist/utils/dom.js +62 -0
  77. package/dist/utils/dom.mjs +9 -0
  78. package/package.json +6 -6
  79. /package/dist/{chunk-FTR7OMCT.mjs → chunk-MRP3X6QP.mjs} +0 -0
@@ -0,0 +1,185 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
+
21
+ // src/composables/useTime.ts
22
+ var useTime_exports = {};
23
+ __export(useTime_exports, {
24
+ useTime: () => useTime
25
+ });
26
+ module.exports = __toCommonJS(useTime_exports);
27
+ var import_vue = require("vue");
28
+
29
+ // src/utils/base.ts
30
+ function padNumber(value) {
31
+ value = parseInt(value, 10);
32
+ return value < 10 ? `0${value}` : `${value}`;
33
+ }
34
+ __name(padNumber, "padNumber");
35
+ function generateOptions(length, step) {
36
+ if (step <= 0) {
37
+ step = 1;
38
+ }
39
+ const arr = [];
40
+ for (let i = 0; i < length; i += step) {
41
+ arr.push(i);
42
+ }
43
+ return arr;
44
+ }
45
+ __name(generateOptions, "generateOptions");
46
+
47
+ // src/utils/date.ts
48
+ var import_date_fns = require("date-fns");
49
+ function isValidDate(date) {
50
+ return date instanceof Date && !isNaN(date);
51
+ }
52
+ __name(isValidDate, "isValidDate");
53
+
54
+ // src/composables/useTime.ts
55
+ function useTime(props) {
56
+ const innerValue = (0, import_vue.ref)(props.modelValue);
57
+ const innerDateValue = (0, import_vue.computed)(() => isValidDate(props.modelValue) ? props.modelValue : props.defaultDate);
58
+ const columns = (0, import_vue.computed)(() => {
59
+ const cols = [];
60
+ if (props.isShowHour)
61
+ cols.push({
62
+ type: "hour",
63
+ list: getHoursList()
64
+ });
65
+ if (props.isShowMinute)
66
+ cols.push({
67
+ type: "minute",
68
+ list: getMinutesList()
69
+ });
70
+ if (props.isShowSecond)
71
+ cols.push({
72
+ type: "second",
73
+ list: getSecondsList()
74
+ });
75
+ if (props.isUse12h)
76
+ cols.push({
77
+ type: "ampm",
78
+ list: getAMPMList()
79
+ });
80
+ return cols.filter((v) => v.list.length > 0);
81
+ });
82
+ function getHoursList() {
83
+ return generateOptions(props.isUse12h ? 12 : 24, props.hourStep).map((num) => {
84
+ const innerDate = new Date(innerDateValue.value);
85
+ let text = padNumber(num);
86
+ if (props.isUse12h) {
87
+ if (num === 0) {
88
+ text = "12";
89
+ }
90
+ if (innerDate.getHours() >= 12) {
91
+ num += 12;
92
+ }
93
+ }
94
+ const value = innerDate.setHours(num);
95
+ return {
96
+ value,
97
+ text
98
+ };
99
+ });
100
+ }
101
+ __name(getHoursList, "getHoursList");
102
+ function getMinutesList() {
103
+ return generateOptions(60, props.minuteStep).map((num) => {
104
+ const value = new Date(innerDateValue.value).setMinutes(num);
105
+ return {
106
+ value,
107
+ text: padNumber(num)
108
+ };
109
+ });
110
+ }
111
+ __name(getMinutesList, "getMinutesList");
112
+ function getSecondsList() {
113
+ return generateOptions(60, props.secondStep).map((num) => {
114
+ const value = new Date(innerDateValue.value).setSeconds(num);
115
+ return {
116
+ value,
117
+ text: padNumber(num)
118
+ };
119
+ });
120
+ }
121
+ __name(getSecondsList, "getSecondsList");
122
+ function getAMPMList() {
123
+ return ["AM", "PM"].map((text, i) => {
124
+ const innerDate = new Date(innerDateValue.value);
125
+ const value = innerDate.setHours(innerDate.getHours() % 12 + i * 12);
126
+ return {
127
+ text,
128
+ value
129
+ };
130
+ });
131
+ }
132
+ __name(getAMPMList, "getAMPMList");
133
+ function isDisabledTime(value) {
134
+ return props.disabledTime(new Date(value));
135
+ }
136
+ __name(isDisabledTime, "isDisabledTime");
137
+ function isDisabledHour(date) {
138
+ const value = new Date(date);
139
+ return isDisabledTime(value) && isDisabledTime(value.setMinutes(0, 0, 0)) && isDisabledTime(value.setMinutes(59, 59, 999));
140
+ }
141
+ __name(isDisabledHour, "isDisabledHour");
142
+ function isDisabledMinute(date) {
143
+ const value = new Date(date);
144
+ return isDisabledTime(value) && isDisabledTime(value.setSeconds(0, 0)) && isDisabledTime(value.setSeconds(59, 999));
145
+ }
146
+ __name(isDisabledMinute, "isDisabledMinute");
147
+ function isDisabledAMPM(date) {
148
+ const value = new Date(date);
149
+ const minHour = value.getHours() < 12 ? 0 : 12;
150
+ const maxHour = minHour + 11;
151
+ return isDisabledTime(value) && isDisabledTime(value.setHours(minHour, 0, 0, 0)) && isDisabledTime(value.setHours(maxHour, 59, 59, 999));
152
+ }
153
+ __name(isDisabledAMPM, "isDisabledAMPM");
154
+ function isDisabled(date, type) {
155
+ if (type === "hour") {
156
+ return isDisabledHour(date);
157
+ }
158
+ if (type === "minute") {
159
+ return isDisabledMinute(date);
160
+ }
161
+ if (type === "ampm") {
162
+ return isDisabledAMPM(date);
163
+ }
164
+ return isDisabledTime(date);
165
+ }
166
+ __name(isDisabled, "isDisabled");
167
+ return {
168
+ innerValue,
169
+ columns,
170
+ getHoursList,
171
+ getMinutesList,
172
+ getSecondsList,
173
+ getAMPMList,
174
+ isDisabledTime,
175
+ isDisabledHour,
176
+ isDisabledMinute,
177
+ isDisabledAMPM,
178
+ isDisabled
179
+ };
180
+ }
181
+ __name(useTime, "useTime");
182
+ // Annotate the CommonJS export names for ESM import in node:
183
+ 0 && (module.exports = {
184
+ useTime
185
+ });
@@ -0,0 +1,9 @@
1
+ import {
2
+ useTime
3
+ } from "../chunk-IRNTTSB7.mjs";
4
+ import "../chunk-E5BRVBZ2.mjs";
5
+ import "../chunk-U7O52D6B.mjs";
6
+ import "../chunk-QZ7VFGWC.mjs";
7
+ export {
8
+ useTime
9
+ };
@@ -1,5 +1,12 @@
1
1
  import * as vue_jsx_runtime from 'vue/jsx-runtime';
2
+ import { CalendarPanel } from './modules/date-picker.props.mjs';
2
3
  import * as vue from 'vue';
4
+ import './components/parts/date.mjs';
5
+ import '@mekari/pixel3-styled-system/types';
6
+ import '@mekari/pixel3-styled-system/css';
7
+ import '@mekari/pixel3-styled-system/recipes';
8
+ import './components/parts/month.mjs';
9
+ import './components/parts/year.mjs';
3
10
 
4
11
  declare const MpDatePicker: vue.DefineComponent<{
5
12
  id: {
@@ -9,7 +16,7 @@ declare const MpDatePicker: vue.DefineComponent<{
9
16
  type: vue.PropType<string | number | Date | Date[] | string[] | number[]>;
10
17
  };
11
18
  type: {
12
- type: vue.PropType<"date" | "month" | "year" | "week" | "biweek">;
19
+ type: vue.PropType<CalendarPanel>;
13
20
  default: string;
14
21
  };
15
22
  valueType: {
@@ -103,6 +110,42 @@ declare const MpDatePicker: vue.DefineComponent<{
103
110
  type: vue.PropType<(year: number) => boolean>;
104
111
  default: () => void;
105
112
  };
113
+ defaultDate: {
114
+ type: DateConstructor;
115
+ default(): Date;
116
+ };
117
+ isShowHour: {
118
+ type: vue.PropType<boolean>;
119
+ default: boolean;
120
+ };
121
+ isShowMinute: {
122
+ type: vue.PropType<boolean>;
123
+ default: boolean;
124
+ };
125
+ isShowSecond: {
126
+ type: vue.PropType<boolean>;
127
+ default: boolean;
128
+ };
129
+ hourStep: {
130
+ type: vue.PropType<number>;
131
+ default: number;
132
+ };
133
+ minuteStep: {
134
+ type: vue.PropType<number>;
135
+ default: number;
136
+ };
137
+ secondStep: {
138
+ type: vue.PropType<number>;
139
+ default: number;
140
+ };
141
+ isUse12h: {
142
+ type: vue.PropType<boolean>;
143
+ default: boolean;
144
+ };
145
+ disabledTime: {
146
+ type: FunctionConstructor;
147
+ default: () => boolean;
148
+ };
106
149
  }, () => vue_jsx_runtime.JSX.Element, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, ("update:modelValue" | "error")[], "update:modelValue" | "error", vue.PublicProps, Readonly<vue.ExtractPropTypes<{
107
150
  id: {
108
151
  type: vue.PropType<string>;
@@ -111,7 +154,7 @@ declare const MpDatePicker: vue.DefineComponent<{
111
154
  type: vue.PropType<string | number | Date | Date[] | string[] | number[]>;
112
155
  };
113
156
  type: {
114
- type: vue.PropType<"date" | "month" | "year" | "week" | "biweek">;
157
+ type: vue.PropType<CalendarPanel>;
115
158
  default: string;
116
159
  };
117
160
  valueType: {
@@ -205,11 +248,47 @@ declare const MpDatePicker: vue.DefineComponent<{
205
248
  type: vue.PropType<(year: number) => boolean>;
206
249
  default: () => void;
207
250
  };
251
+ defaultDate: {
252
+ type: DateConstructor;
253
+ default(): Date;
254
+ };
255
+ isShowHour: {
256
+ type: vue.PropType<boolean>;
257
+ default: boolean;
258
+ };
259
+ isShowMinute: {
260
+ type: vue.PropType<boolean>;
261
+ default: boolean;
262
+ };
263
+ isShowSecond: {
264
+ type: vue.PropType<boolean>;
265
+ default: boolean;
266
+ };
267
+ hourStep: {
268
+ type: vue.PropType<number>;
269
+ default: number;
270
+ };
271
+ minuteStep: {
272
+ type: vue.PropType<number>;
273
+ default: number;
274
+ };
275
+ secondStep: {
276
+ type: vue.PropType<number>;
277
+ default: number;
278
+ };
279
+ isUse12h: {
280
+ type: vue.PropType<boolean>;
281
+ default: boolean;
282
+ };
283
+ disabledTime: {
284
+ type: FunctionConstructor;
285
+ default: () => boolean;
286
+ };
208
287
  }>> & {
209
288
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
210
289
  onError?: ((...args: any[]) => any) | undefined;
211
290
  }, {
212
- type: "date" | "month" | "year" | "week" | "biweek";
291
+ type: CalendarPanel;
213
292
  valueType: "string" | "date" | "timestamp";
214
293
  rangeSeparator: string;
215
294
  placeholder: string;
@@ -232,6 +311,15 @@ declare const MpDatePicker: vue.DefineComponent<{
232
311
  disabledDate: (date: Date) => boolean;
233
312
  disabledMonth: (month: number, year: number) => boolean;
234
313
  disabledYear: (year: number) => boolean;
314
+ defaultDate: Date;
315
+ isShowHour: boolean;
316
+ isShowMinute: boolean;
317
+ isShowSecond: boolean;
318
+ hourStep: number;
319
+ minuteStep: number;
320
+ secondStep: number;
321
+ isUse12h: boolean;
322
+ disabledTime: Function;
235
323
  }, {}>;
236
324
 
237
325
  export { MpDatePicker };
@@ -1,5 +1,12 @@
1
1
  import * as vue_jsx_runtime from 'vue/jsx-runtime';
2
+ import { CalendarPanel } from './modules/date-picker.props.js';
2
3
  import * as vue from 'vue';
4
+ import './components/parts/date.js';
5
+ import '@mekari/pixel3-styled-system/types';
6
+ import '@mekari/pixel3-styled-system/css';
7
+ import '@mekari/pixel3-styled-system/recipes';
8
+ import './components/parts/month.js';
9
+ import './components/parts/year.js';
3
10
 
4
11
  declare const MpDatePicker: vue.DefineComponent<{
5
12
  id: {
@@ -9,7 +16,7 @@ declare const MpDatePicker: vue.DefineComponent<{
9
16
  type: vue.PropType<string | number | Date | Date[] | string[] | number[]>;
10
17
  };
11
18
  type: {
12
- type: vue.PropType<"date" | "month" | "year" | "week" | "biweek">;
19
+ type: vue.PropType<CalendarPanel>;
13
20
  default: string;
14
21
  };
15
22
  valueType: {
@@ -103,6 +110,42 @@ declare const MpDatePicker: vue.DefineComponent<{
103
110
  type: vue.PropType<(year: number) => boolean>;
104
111
  default: () => void;
105
112
  };
113
+ defaultDate: {
114
+ type: DateConstructor;
115
+ default(): Date;
116
+ };
117
+ isShowHour: {
118
+ type: vue.PropType<boolean>;
119
+ default: boolean;
120
+ };
121
+ isShowMinute: {
122
+ type: vue.PropType<boolean>;
123
+ default: boolean;
124
+ };
125
+ isShowSecond: {
126
+ type: vue.PropType<boolean>;
127
+ default: boolean;
128
+ };
129
+ hourStep: {
130
+ type: vue.PropType<number>;
131
+ default: number;
132
+ };
133
+ minuteStep: {
134
+ type: vue.PropType<number>;
135
+ default: number;
136
+ };
137
+ secondStep: {
138
+ type: vue.PropType<number>;
139
+ default: number;
140
+ };
141
+ isUse12h: {
142
+ type: vue.PropType<boolean>;
143
+ default: boolean;
144
+ };
145
+ disabledTime: {
146
+ type: FunctionConstructor;
147
+ default: () => boolean;
148
+ };
106
149
  }, () => vue_jsx_runtime.JSX.Element, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, ("update:modelValue" | "error")[], "update:modelValue" | "error", vue.PublicProps, Readonly<vue.ExtractPropTypes<{
107
150
  id: {
108
151
  type: vue.PropType<string>;
@@ -111,7 +154,7 @@ declare const MpDatePicker: vue.DefineComponent<{
111
154
  type: vue.PropType<string | number | Date | Date[] | string[] | number[]>;
112
155
  };
113
156
  type: {
114
- type: vue.PropType<"date" | "month" | "year" | "week" | "biweek">;
157
+ type: vue.PropType<CalendarPanel>;
115
158
  default: string;
116
159
  };
117
160
  valueType: {
@@ -205,11 +248,47 @@ declare const MpDatePicker: vue.DefineComponent<{
205
248
  type: vue.PropType<(year: number) => boolean>;
206
249
  default: () => void;
207
250
  };
251
+ defaultDate: {
252
+ type: DateConstructor;
253
+ default(): Date;
254
+ };
255
+ isShowHour: {
256
+ type: vue.PropType<boolean>;
257
+ default: boolean;
258
+ };
259
+ isShowMinute: {
260
+ type: vue.PropType<boolean>;
261
+ default: boolean;
262
+ };
263
+ isShowSecond: {
264
+ type: vue.PropType<boolean>;
265
+ default: boolean;
266
+ };
267
+ hourStep: {
268
+ type: vue.PropType<number>;
269
+ default: number;
270
+ };
271
+ minuteStep: {
272
+ type: vue.PropType<number>;
273
+ default: number;
274
+ };
275
+ secondStep: {
276
+ type: vue.PropType<number>;
277
+ default: number;
278
+ };
279
+ isUse12h: {
280
+ type: vue.PropType<boolean>;
281
+ default: boolean;
282
+ };
283
+ disabledTime: {
284
+ type: FunctionConstructor;
285
+ default: () => boolean;
286
+ };
208
287
  }>> & {
209
288
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
210
289
  onError?: ((...args: any[]) => any) | undefined;
211
290
  }, {
212
- type: "date" | "month" | "year" | "week" | "biweek";
291
+ type: CalendarPanel;
213
292
  valueType: "string" | "date" | "timestamp";
214
293
  rangeSeparator: string;
215
294
  placeholder: string;
@@ -232,6 +311,15 @@ declare const MpDatePicker: vue.DefineComponent<{
232
311
  disabledDate: (date: Date) => boolean;
233
312
  disabledMonth: (month: number, year: number) => boolean;
234
313
  disabledYear: (year: number) => boolean;
314
+ defaultDate: Date;
315
+ isShowHour: boolean;
316
+ isShowMinute: boolean;
317
+ isShowSecond: boolean;
318
+ hourStep: number;
319
+ minuteStep: number;
320
+ secondStep: number;
321
+ isUse12h: boolean;
322
+ disabledTime: Function;
235
323
  }, {}>;
236
324
 
237
325
  export { MpDatePicker };