vuetify 3.4.7 → 3.4.9

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 (210) hide show
  1. package/dist/_component-variables-labs.sass +1 -0
  2. package/dist/json/attributes.json +300 -40
  3. package/dist/json/importMap-labs.json +24 -0
  4. package/dist/json/importMap.json +134 -134
  5. package/dist/json/tags.json +95 -0
  6. package/dist/json/web-types.json +910 -59
  7. package/dist/vuetify-labs.css +2402 -2052
  8. package/dist/vuetify-labs.d.ts +1660 -31
  9. package/dist/vuetify-labs.esm.js +733 -106
  10. package/dist/vuetify-labs.esm.js.map +1 -1
  11. package/dist/vuetify-labs.js +733 -106
  12. package/dist/vuetify-labs.min.css +2 -2
  13. package/dist/vuetify.css +810 -807
  14. package/dist/vuetify.d.ts +119 -74
  15. package/dist/vuetify.esm.js +242 -106
  16. package/dist/vuetify.esm.js.map +1 -1
  17. package/dist/vuetify.js +242 -106
  18. package/dist/vuetify.js.map +1 -1
  19. package/dist/vuetify.min.css +2 -2
  20. package/dist/vuetify.min.js +235 -215
  21. package/dist/vuetify.min.js.map +1 -1
  22. package/lib/blueprints/index.d.mts +9 -0
  23. package/lib/blueprints/md1.d.mts +9 -0
  24. package/lib/blueprints/md2.d.mts +9 -0
  25. package/lib/blueprints/md3.d.mts +9 -0
  26. package/lib/components/VDataTable/VDataTableFooter.mjs +1 -1
  27. package/lib/components/VDataTable/VDataTableFooter.mjs.map +1 -1
  28. package/lib/components/VDatePicker/VDatePicker.mjs +4 -1
  29. package/lib/components/VDatePicker/VDatePicker.mjs.map +1 -1
  30. package/lib/components/VDatePicker/VDatePickerMonth.mjs +12 -99
  31. package/lib/components/VDatePicker/VDatePickerMonth.mjs.map +1 -1
  32. package/lib/components/VDatePicker/index.d.mts +42 -30
  33. package/lib/components/VOtpInput/VOtpInput.css +3 -0
  34. package/lib/components/VOtpInput/VOtpInput.mjs +1 -0
  35. package/lib/components/VOtpInput/VOtpInput.mjs.map +1 -1
  36. package/lib/components/VOtpInput/VOtpInput.sass +3 -0
  37. package/lib/components/VOverlay/VOverlay.mjs +11 -6
  38. package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
  39. package/lib/components/index.d.mts +42 -30
  40. package/lib/composables/calendar.mjs +128 -0
  41. package/lib/composables/calendar.mjs.map +1 -0
  42. package/lib/composables/date/DateAdapter.mjs.map +1 -1
  43. package/lib/composables/date/adapters/vuetify.mjs +89 -2
  44. package/lib/composables/date/adapters/vuetify.mjs.map +1 -1
  45. package/lib/composables/date/date.mjs +4 -0
  46. package/lib/composables/date/date.mjs.map +1 -1
  47. package/lib/entry-bundler.mjs +1 -1
  48. package/lib/framework.mjs +1 -1
  49. package/lib/index.d.mts +77 -44
  50. package/lib/labs/VCalendar/VCalendar.css +220 -0
  51. package/lib/labs/VCalendar/VCalendar.mjs +128 -0
  52. package/lib/labs/VCalendar/VCalendar.mjs.map +1 -0
  53. package/lib/labs/VCalendar/VCalendar.sass +168 -0
  54. package/lib/labs/VCalendar/VCalendarDay.css +10 -0
  55. package/lib/labs/VCalendar/VCalendarDay.mjs +47 -0
  56. package/lib/labs/VCalendar/VCalendarDay.mjs.map +1 -0
  57. package/lib/labs/VCalendar/VCalendarDay.sass +9 -0
  58. package/lib/labs/VCalendar/VCalendarEvent.mjs +30 -0
  59. package/lib/labs/VCalendar/VCalendarEvent.mjs.map +1 -0
  60. package/lib/labs/VCalendar/VCalendarHeader.css +14 -0
  61. package/lib/labs/VCalendar/VCalendarHeader.mjs +76 -0
  62. package/lib/labs/VCalendar/VCalendarHeader.mjs.map +1 -0
  63. package/lib/labs/VCalendar/VCalendarHeader.sass +13 -0
  64. package/lib/labs/VCalendar/VCalendarInterval.css +42 -0
  65. package/lib/labs/VCalendar/VCalendarInterval.mjs +113 -0
  66. package/lib/labs/VCalendar/VCalendarInterval.mjs.map +1 -0
  67. package/lib/labs/VCalendar/VCalendarInterval.sass +39 -0
  68. package/lib/labs/VCalendar/VCalendarIntervalEvent.mjs +76 -0
  69. package/lib/labs/VCalendar/VCalendarIntervalEvent.mjs.map +1 -0
  70. package/lib/labs/VCalendar/VCalendarMonthDay.css +61 -0
  71. package/lib/labs/VCalendar/VCalendarMonthDay.mjs +64 -0
  72. package/lib/labs/VCalendar/VCalendarMonthDay.mjs.map +1 -0
  73. package/lib/labs/VCalendar/VCalendarMonthDay.sass +65 -0
  74. package/lib/{components → labs}/VCalendar/_variables.scss +14 -6
  75. package/lib/labs/VCalendar/index.d.mts +1592 -0
  76. package/lib/labs/VCalendar/index.mjs +7 -0
  77. package/lib/labs/VCalendar/index.mjs.map +1 -0
  78. package/lib/labs/components.d.mts +1586 -2
  79. package/lib/labs/components.mjs +1 -0
  80. package/lib/labs/components.mjs.map +1 -1
  81. package/lib/locale/af.mjs +2 -1
  82. package/lib/locale/af.mjs.map +1 -1
  83. package/lib/locale/ar.mjs +2 -1
  84. package/lib/locale/ar.mjs.map +1 -1
  85. package/lib/locale/az.mjs +2 -1
  86. package/lib/locale/az.mjs.map +1 -1
  87. package/lib/locale/bg.mjs +2 -1
  88. package/lib/locale/bg.mjs.map +1 -1
  89. package/lib/locale/ca.mjs +2 -1
  90. package/lib/locale/ca.mjs.map +1 -1
  91. package/lib/locale/ckb.mjs +2 -1
  92. package/lib/locale/ckb.mjs.map +1 -1
  93. package/lib/locale/cs.mjs +21 -20
  94. package/lib/locale/cs.mjs.map +1 -1
  95. package/lib/locale/da.mjs +2 -1
  96. package/lib/locale/da.mjs.map +1 -1
  97. package/lib/locale/de.mjs +2 -1
  98. package/lib/locale/de.mjs.map +1 -1
  99. package/lib/locale/el.mjs +2 -1
  100. package/lib/locale/el.mjs.map +1 -1
  101. package/lib/locale/en.mjs +2 -1
  102. package/lib/locale/en.mjs.map +1 -1
  103. package/lib/locale/es.mjs +2 -1
  104. package/lib/locale/es.mjs.map +1 -1
  105. package/lib/locale/et.mjs +2 -1
  106. package/lib/locale/et.mjs.map +1 -1
  107. package/lib/locale/fa.mjs +2 -1
  108. package/lib/locale/fa.mjs.map +1 -1
  109. package/lib/locale/fi.mjs +2 -1
  110. package/lib/locale/fi.mjs.map +1 -1
  111. package/lib/locale/fr.mjs +2 -1
  112. package/lib/locale/fr.mjs.map +1 -1
  113. package/lib/locale/he.mjs +2 -1
  114. package/lib/locale/he.mjs.map +1 -1
  115. package/lib/locale/hr.mjs +2 -1
  116. package/lib/locale/hr.mjs.map +1 -1
  117. package/lib/locale/hu.mjs +2 -1
  118. package/lib/locale/hu.mjs.map +1 -1
  119. package/lib/locale/id.mjs +2 -1
  120. package/lib/locale/id.mjs.map +1 -1
  121. package/lib/locale/index.d.mts +42 -0
  122. package/lib/locale/it.mjs +2 -1
  123. package/lib/locale/it.mjs.map +1 -1
  124. package/lib/locale/ja.mjs +2 -1
  125. package/lib/locale/ja.mjs.map +1 -1
  126. package/lib/locale/ko.mjs +2 -1
  127. package/lib/locale/ko.mjs.map +1 -1
  128. package/lib/locale/lt.mjs +2 -1
  129. package/lib/locale/lt.mjs.map +1 -1
  130. package/lib/locale/lv.mjs +2 -1
  131. package/lib/locale/lv.mjs.map +1 -1
  132. package/lib/locale/nl.mjs +2 -1
  133. package/lib/locale/nl.mjs.map +1 -1
  134. package/lib/locale/no.mjs +2 -1
  135. package/lib/locale/no.mjs.map +1 -1
  136. package/lib/locale/pl.mjs +2 -1
  137. package/lib/locale/pl.mjs.map +1 -1
  138. package/lib/locale/pt.mjs +2 -1
  139. package/lib/locale/pt.mjs.map +1 -1
  140. package/lib/locale/ro.mjs +2 -1
  141. package/lib/locale/ro.mjs.map +1 -1
  142. package/lib/locale/ru.mjs +2 -1
  143. package/lib/locale/ru.mjs.map +1 -1
  144. package/lib/locale/sk.mjs +2 -1
  145. package/lib/locale/sk.mjs.map +1 -1
  146. package/lib/locale/sl.mjs +2 -1
  147. package/lib/locale/sl.mjs.map +1 -1
  148. package/lib/locale/sr-Cyrl.mjs +2 -1
  149. package/lib/locale/sr-Cyrl.mjs.map +1 -1
  150. package/lib/locale/sr-Latn.mjs +2 -1
  151. package/lib/locale/sr-Latn.mjs.map +1 -1
  152. package/lib/locale/sv.mjs +2 -1
  153. package/lib/locale/sv.mjs.map +1 -1
  154. package/lib/locale/th.mjs +2 -1
  155. package/lib/locale/th.mjs.map +1 -1
  156. package/lib/locale/tr.mjs +2 -1
  157. package/lib/locale/tr.mjs.map +1 -1
  158. package/lib/locale/uk.mjs +2 -1
  159. package/lib/locale/uk.mjs.map +1 -1
  160. package/lib/locale/vi.mjs +2 -1
  161. package/lib/locale/vi.mjs.map +1 -1
  162. package/lib/locale/zh-Hans.mjs +2 -1
  163. package/lib/locale/zh-Hans.mjs.map +1 -1
  164. package/lib/locale/zh-Hant.mjs +2 -1
  165. package/lib/locale/zh-Hant.mjs.map +1 -1
  166. package/lib/util/helpers.mjs +6 -0
  167. package/lib/util/helpers.mjs.map +1 -1
  168. package/package.json +2 -2
  169. package/lib/components/VCalendar/VCalendar.mjs +0 -352
  170. package/lib/components/VCalendar/VCalendar.mjs.map +0 -1
  171. package/lib/components/VCalendar/VCalendarCategory.mjs +0 -124
  172. package/lib/components/VCalendar/VCalendarCategory.mjs.map +0 -1
  173. package/lib/components/VCalendar/VCalendarCategory.sass +0 -100
  174. package/lib/components/VCalendar/VCalendarDaily.mjs +0 -239
  175. package/lib/components/VCalendar/VCalendarDaily.mjs.map +0 -1
  176. package/lib/components/VCalendar/VCalendarDaily.sass +0 -140
  177. package/lib/components/VCalendar/VCalendarMonthly.mjs +0 -25
  178. package/lib/components/VCalendar/VCalendarMonthly.mjs.map +0 -1
  179. package/lib/components/VCalendar/VCalendarWeekly.mjs +0 -193
  180. package/lib/components/VCalendar/VCalendarWeekly.mjs.map +0 -1
  181. package/lib/components/VCalendar/VCalendarWeekly.sass +0 -118
  182. package/lib/components/VCalendar/index.mjs +0 -16
  183. package/lib/components/VCalendar/index.mjs.map +0 -1
  184. package/lib/components/VCalendar/mixins/calendar-base.mjs +0 -89
  185. package/lib/components/VCalendar/mixins/calendar-base.mjs.map +0 -1
  186. package/lib/components/VCalendar/mixins/calendar-with-events.mjs +0 -416
  187. package/lib/components/VCalendar/mixins/calendar-with-events.mjs.map +0 -1
  188. package/lib/components/VCalendar/mixins/calendar-with-events.sass +0 -67
  189. package/lib/components/VCalendar/mixins/calendar-with-intervals.mjs +0 -135
  190. package/lib/components/VCalendar/mixins/calendar-with-intervals.mjs.map +0 -1
  191. package/lib/components/VCalendar/mixins/mouse.mjs +0 -85
  192. package/lib/components/VCalendar/mixins/mouse.mjs.map +0 -1
  193. package/lib/components/VCalendar/mixins/times.mjs +0 -65
  194. package/lib/components/VCalendar/mixins/times.mjs.map +0 -1
  195. package/lib/components/VCalendar/modes/column.mjs +0 -18
  196. package/lib/components/VCalendar/modes/column.mjs.map +0 -1
  197. package/lib/components/VCalendar/modes/common.mjs +0 -112
  198. package/lib/components/VCalendar/modes/common.mjs.map +0 -1
  199. package/lib/components/VCalendar/modes/index.mjs +0 -9
  200. package/lib/components/VCalendar/modes/index.mjs.map +0 -1
  201. package/lib/components/VCalendar/modes/stack.mjs +0 -204
  202. package/lib/components/VCalendar/modes/stack.mjs.map +0 -1
  203. package/lib/components/VCalendar/util/events.mjs +0 -44
  204. package/lib/components/VCalendar/util/events.mjs.map +0 -1
  205. package/lib/components/VCalendar/util/parser.mjs +0 -21
  206. package/lib/components/VCalendar/util/parser.mjs.map +0 -1
  207. package/lib/components/VCalendar/util/props.mjs +0 -248
  208. package/lib/components/VCalendar/util/props.mjs.map +0 -1
  209. package/lib/components/VCalendar/util/timestamp.mjs +0 -407
  210. package/lib/components/VCalendar/util/timestamp.mjs.map +0 -1
@@ -1,407 +0,0 @@
1
- // @ts-nocheck
2
- /* eslint-disable */
3
- import { isLeapYear } from "../../../util/dateTimeUtils.mjs";
4
- export const PARSE_REGEX = /^(\d{4})-(\d{1,2})(-(\d{1,2}))?([^\d]+(\d{1,2}))?(:(\d{1,2}))?(:(\d{1,2}))?$/;
5
- export const PARSE_TIME = /(\d\d?)(:(\d\d?)|)(:(\d\d?)|)/;
6
- export const DAYS_IN_MONTH = [0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
7
- export const DAYS_IN_MONTH_LEAP = [0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
8
- export const DAYS_IN_MONTH_MIN = 28;
9
- export const DAYS_IN_MONTH_MAX = 31;
10
- export const MONTH_MAX = 12;
11
- export const MONTH_MIN = 1;
12
- export const DAY_MIN = 1;
13
- export const DAYS_IN_WEEK = 7;
14
- export const MINUTES_IN_HOUR = 60;
15
- export const MINUTE_MAX = 59;
16
- export const MINUTES_IN_DAY = 24 * 60;
17
- export const HOURS_IN_DAY = 24;
18
- export const HOUR_MAX = 23;
19
- export const FIRST_HOUR = 0;
20
- export const OFFSET_YEAR = 10000;
21
- export const OFFSET_MONTH = 100;
22
- export const OFFSET_HOUR = 100;
23
- export const OFFSET_TIME = 10000;
24
- export function getStartOfWeek(timestamp, weekdays, today) {
25
- const start = copyTimestamp(timestamp);
26
- findWeekday(start, weekdays[0], prevDay);
27
- updateFormatted(start);
28
- if (today) {
29
- updateRelative(start, today, start.hasTime);
30
- }
31
- return start;
32
- }
33
- export function getEndOfWeek(timestamp, weekdays, today) {
34
- const end = copyTimestamp(timestamp);
35
- findWeekday(end, weekdays[weekdays.length - 1]);
36
- updateFormatted(end);
37
- if (today) {
38
- updateRelative(end, today, end.hasTime);
39
- }
40
- return end;
41
- }
42
- export function getStartOfMonth(timestamp) {
43
- const start = copyTimestamp(timestamp);
44
- start.day = DAY_MIN;
45
- updateWeekday(start);
46
- updateFormatted(start);
47
- return start;
48
- }
49
- export function getEndOfMonth(timestamp) {
50
- const end = copyTimestamp(timestamp);
51
- end.day = daysInMonth(end.year, end.month);
52
- updateWeekday(end);
53
- updateFormatted(end);
54
- return end;
55
- }
56
- export function validateTime(input) {
57
- return typeof input === 'number' && isFinite(input) || !!PARSE_TIME.exec(input) || typeof input === 'object' && isFinite(input.hour) && isFinite(input.minute);
58
- }
59
- export function parseTime(input) {
60
- if (typeof input === 'number') {
61
- // when a number is given, it's minutes since 12:00am
62
- return input;
63
- } else if (typeof input === 'string') {
64
- // when a string is given, it's a hh:mm:ss format where seconds are optional
65
- const parts = PARSE_TIME.exec(input);
66
- if (!parts) {
67
- return false;
68
- }
69
- return parseInt(parts[1]) * 60 + parseInt(parts[3] || 0);
70
- } else if (typeof input === 'object') {
71
- // when an object is given, it must have hour and minute
72
- if (typeof input.hour !== 'number' || typeof input.minute !== 'number') {
73
- return false;
74
- }
75
- return input.hour * 60 + input.minute;
76
- } else {
77
- // unsupported type
78
- return false;
79
- }
80
- }
81
- export function validateTimestamp(input) {
82
- return typeof input === 'number' && isFinite(input) || typeof input === 'string' && !!PARSE_REGEX.exec(input) || input instanceof Date;
83
- }
84
- export function parseTimestamp(input) {
85
- let required = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
86
- let now = arguments.length > 2 ? arguments[2] : undefined;
87
- if (typeof input === 'number' && isFinite(input)) {
88
- input = new Date(input);
89
- }
90
- if (input instanceof Date) {
91
- const date = parseDate(input);
92
- if (now) {
93
- updateRelative(date, now, date.hasTime);
94
- }
95
- return date;
96
- }
97
- if (typeof input !== 'string') {
98
- if (required) {
99
- throw new Error(`${input} is not a valid timestamp. It must be a Date, number of milliseconds since Epoch, or a string in the format of YYYY-MM-DD or YYYY-MM-DD hh:mm. Zero-padding is optional and seconds are ignored.`);
100
- }
101
- return null;
102
- }
103
-
104
- // YYYY-MM-DD hh:mm:ss
105
- const parts = PARSE_REGEX.exec(input);
106
- if (!parts) {
107
- if (required) {
108
- throw new Error(`${input} is not a valid timestamp. It must be a Date, number of milliseconds since Epoch, or a string in the format of YYYY-MM-DD or YYYY-MM-DD hh:mm. Zero-padding is optional and seconds are ignored.`);
109
- }
110
- return null;
111
- }
112
- const timestamp = {
113
- date: input,
114
- time: '',
115
- year: parseInt(parts[1]),
116
- month: parseInt(parts[2]),
117
- day: parseInt(parts[4]) || 1,
118
- hour: parseInt(parts[6]) || 0,
119
- minute: parseInt(parts[8]) || 0,
120
- weekday: 0,
121
- hasDay: !!parts[4],
122
- hasTime: !!(parts[6] && parts[8]),
123
- past: false,
124
- present: false,
125
- future: false
126
- };
127
- updateWeekday(timestamp);
128
- updateFormatted(timestamp);
129
- if (now) {
130
- updateRelative(timestamp, now, timestamp.hasTime);
131
- }
132
- return timestamp;
133
- }
134
- export function parseDate(date) {
135
- return updateFormatted({
136
- date: '',
137
- time: '',
138
- year: date.getFullYear(),
139
- month: date.getMonth() + 1,
140
- day: date.getDate(),
141
- weekday: date.getDay(),
142
- hour: date.getHours(),
143
- minute: date.getMinutes(),
144
- hasDay: true,
145
- hasTime: true,
146
- past: false,
147
- present: true,
148
- future: false
149
- });
150
- }
151
- export function getDayIdentifier(timestamp) {
152
- return timestamp.year * OFFSET_YEAR + timestamp.month * OFFSET_MONTH + timestamp.day;
153
- }
154
- export function getTimeIdentifier(timestamp) {
155
- return timestamp.hour * OFFSET_HOUR + timestamp.minute;
156
- }
157
- export function getTimestampIdentifier(timestamp) {
158
- return getDayIdentifier(timestamp) * OFFSET_TIME + getTimeIdentifier(timestamp);
159
- }
160
- export function updateRelative(timestamp, now) {
161
- let time = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
162
- let a = getDayIdentifier(now);
163
- let b = getDayIdentifier(timestamp);
164
- let present = a === b;
165
- if (timestamp.hasTime && time && present) {
166
- a = getTimeIdentifier(now);
167
- b = getTimeIdentifier(timestamp);
168
- present = a === b;
169
- }
170
- timestamp.past = b < a;
171
- timestamp.present = present;
172
- timestamp.future = b > a;
173
- return timestamp;
174
- }
175
- export function isTimedless(input) {
176
- return input instanceof Date || typeof input === 'number' && isFinite(input);
177
- }
178
- export function updateHasTime(timestamp, hasTime, now) {
179
- if (timestamp.hasTime !== hasTime) {
180
- timestamp.hasTime = hasTime;
181
- if (!hasTime) {
182
- timestamp.hour = HOUR_MAX;
183
- timestamp.minute = MINUTE_MAX;
184
- timestamp.time = getTime(timestamp);
185
- }
186
- if (now) {
187
- updateRelative(timestamp, now, timestamp.hasTime);
188
- }
189
- }
190
- return timestamp;
191
- }
192
- export function updateMinutes(timestamp, minutes, now) {
193
- timestamp.hasTime = true;
194
- timestamp.hour = Math.floor(minutes / MINUTES_IN_HOUR);
195
- timestamp.minute = minutes % MINUTES_IN_HOUR;
196
- timestamp.time = getTime(timestamp);
197
- if (now) {
198
- updateRelative(timestamp, now, true);
199
- }
200
- return timestamp;
201
- }
202
- export function updateWeekday(timestamp) {
203
- timestamp.weekday = getWeekday(timestamp);
204
- return timestamp;
205
- }
206
- export function updateFormatted(timestamp) {
207
- timestamp.time = getTime(timestamp);
208
- timestamp.date = getDate(timestamp);
209
- return timestamp;
210
- }
211
- export function getWeekday(timestamp) {
212
- if (timestamp.hasDay) {
213
- const _ = Math.floor;
214
- const k = timestamp.day;
215
- const m = (timestamp.month + 9) % MONTH_MAX + 1;
216
- const C = _(timestamp.year / 100);
217
- const Y = timestamp.year % 100 - (timestamp.month <= 2 ? 1 : 0);
218
- return ((k + _(2.6 * m - 0.2) - 2 * C + Y + _(Y / 4) + _(C / 4)) % 7 + 7) % 7;
219
- }
220
- return timestamp.weekday;
221
- }
222
- export function daysInMonth(year, month) {
223
- return isLeapYear(year) ? DAYS_IN_MONTH_LEAP[month] : DAYS_IN_MONTH[month];
224
- }
225
- export function copyTimestamp(timestamp) {
226
- const {
227
- date,
228
- time,
229
- year,
230
- month,
231
- day,
232
- weekday,
233
- hour,
234
- minute,
235
- hasDay,
236
- hasTime,
237
- past,
238
- present,
239
- future
240
- } = timestamp;
241
- return {
242
- date,
243
- time,
244
- year,
245
- month,
246
- day,
247
- weekday,
248
- hour,
249
- minute,
250
- hasDay,
251
- hasTime,
252
- past,
253
- present,
254
- future
255
- };
256
- }
257
- export function padNumber(x, length) {
258
- let padded = String(x);
259
- while (padded.length < length) {
260
- padded = '0' + padded;
261
- }
262
- return padded;
263
- }
264
- export function getDate(timestamp) {
265
- let str = `${padNumber(timestamp.year, 4)}-${padNumber(timestamp.month, 2)}`;
266
- if (timestamp.hasDay) str += `-${padNumber(timestamp.day, 2)}`;
267
- return str;
268
- }
269
- export function getTime(timestamp) {
270
- if (!timestamp.hasTime) {
271
- return '';
272
- }
273
- return `${padNumber(timestamp.hour, 2)}:${padNumber(timestamp.minute, 2)}`;
274
- }
275
- export function nextMinutes(timestamp, minutes) {
276
- timestamp.minute += minutes;
277
- while (timestamp.minute > MINUTES_IN_HOUR) {
278
- timestamp.minute -= MINUTES_IN_HOUR;
279
- timestamp.hour++;
280
- if (timestamp.hour >= HOURS_IN_DAY) {
281
- nextDay(timestamp);
282
- timestamp.hour = FIRST_HOUR;
283
- }
284
- }
285
- return timestamp;
286
- }
287
- export function nextDay(timestamp) {
288
- timestamp.day++;
289
- timestamp.weekday = (timestamp.weekday + 1) % DAYS_IN_WEEK;
290
- if (timestamp.day > DAYS_IN_MONTH_MIN && timestamp.day > daysInMonth(timestamp.year, timestamp.month)) {
291
- timestamp.day = DAY_MIN;
292
- timestamp.month++;
293
- if (timestamp.month > MONTH_MAX) {
294
- timestamp.month = MONTH_MIN;
295
- timestamp.year++;
296
- }
297
- }
298
- return timestamp;
299
- }
300
- export function prevDay(timestamp) {
301
- timestamp.day--;
302
- timestamp.weekday = (timestamp.weekday + 6) % DAYS_IN_WEEK;
303
- if (timestamp.day < DAY_MIN) {
304
- timestamp.month--;
305
- if (timestamp.month < MONTH_MIN) {
306
- timestamp.year--;
307
- timestamp.month = MONTH_MAX;
308
- }
309
- timestamp.day = daysInMonth(timestamp.year, timestamp.month);
310
- }
311
- return timestamp;
312
- }
313
- export function relativeDays(timestamp) {
314
- let mover = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : nextDay;
315
- let days = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;
316
- while (--days >= 0) mover(timestamp);
317
- return timestamp;
318
- }
319
- export function diffMinutes(min, max) {
320
- const Y = (max.year - min.year) * 525600;
321
- const M = (max.month - min.month) * 43800;
322
- const D = (max.day - min.day) * 1440;
323
- const h = (max.hour - min.hour) * 60;
324
- const m = max.minute - min.minute;
325
- return Y + M + D + h + m;
326
- }
327
- export function findWeekday(timestamp, weekday) {
328
- let mover = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : nextDay;
329
- let maxDays = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 6;
330
- while (timestamp.weekday !== weekday && --maxDays >= 0) mover(timestamp);
331
- return timestamp;
332
- }
333
- export function getWeekdaySkips(weekdays) {
334
- const skips = [1, 1, 1, 1, 1, 1, 1];
335
- const filled = [0, 0, 0, 0, 0, 0, 0];
336
- for (let i = 0; i < weekdays.length; i++) {
337
- filled[weekdays[i]] = 1;
338
- }
339
- for (let k = 0; k < DAYS_IN_WEEK; k++) {
340
- let skip = 1;
341
- for (let j = 1; j < DAYS_IN_WEEK; j++) {
342
- const next = (k + j) % DAYS_IN_WEEK;
343
- if (filled[next]) {
344
- break;
345
- }
346
- skip++;
347
- }
348
- skips[k] = filled[k] * skip;
349
- }
350
- return skips;
351
- }
352
- export function timestampToDate(timestamp) {
353
- const time = `${padNumber(timestamp.hour, 2)}:${padNumber(timestamp.minute, 2)}`;
354
- const date = timestamp.date;
355
- return new Date(`${date}T${time}:00+00:00`);
356
- }
357
- export function createDayList(start, end, now, weekdaySkips) {
358
- let max = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 42;
359
- let min = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0;
360
- const stop = getDayIdentifier(end);
361
- const days = [];
362
- let current = copyTimestamp(start);
363
- let currentIdentifier = 0;
364
- let stopped = currentIdentifier === stop;
365
- if (stop < getDayIdentifier(start)) {
366
- throw new Error('End date is earlier than start date.');
367
- }
368
- while ((!stopped || days.length < min) && days.length < max) {
369
- currentIdentifier = getDayIdentifier(current);
370
- stopped = stopped || currentIdentifier === stop;
371
- if (weekdaySkips[current.weekday] === 0) {
372
- current = nextDay(current);
373
- continue;
374
- }
375
- const day = copyTimestamp(current);
376
- updateFormatted(day);
377
- updateRelative(day, now);
378
- days.push(day);
379
- current = relativeDays(current, nextDay, weekdaySkips[current.weekday]);
380
- }
381
- if (!days.length) throw new Error('No dates found using specified start date, end date, and weekdays.');
382
- return days;
383
- }
384
- export function createIntervalList(timestamp, first, minutes, count, now) {
385
- const intervals = [];
386
- for (let i = 0; i < count; i++) {
387
- const mins = first + i * minutes;
388
- const int = copyTimestamp(timestamp);
389
- intervals.push(updateMinutes(int, mins, now));
390
- }
391
- return intervals;
392
- }
393
- export function createNativeLocaleFormatter(locale, getOptions) {
394
- const emptyFormatter = (_t, _s) => '';
395
- if (typeof Intl === 'undefined' || typeof Intl.DateTimeFormat === 'undefined') {
396
- return emptyFormatter;
397
- }
398
- return (timestamp, short) => {
399
- try {
400
- const intlFormatter = new Intl.DateTimeFormat(locale || undefined, getOptions(timestamp, short));
401
- return intlFormatter.format(timestampToDate(timestamp));
402
- } catch (e) {
403
- return '';
404
- }
405
- };
406
- }
407
- //# sourceMappingURL=timestamp.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"timestamp.mjs","names":["isLeapYear","PARSE_REGEX","PARSE_TIME","DAYS_IN_MONTH","DAYS_IN_MONTH_LEAP","DAYS_IN_MONTH_MIN","DAYS_IN_MONTH_MAX","MONTH_MAX","MONTH_MIN","DAY_MIN","DAYS_IN_WEEK","MINUTES_IN_HOUR","MINUTE_MAX","MINUTES_IN_DAY","HOURS_IN_DAY","HOUR_MAX","FIRST_HOUR","OFFSET_YEAR","OFFSET_MONTH","OFFSET_HOUR","OFFSET_TIME","getStartOfWeek","timestamp","weekdays","today","start","copyTimestamp","findWeekday","prevDay","updateFormatted","updateRelative","hasTime","getEndOfWeek","end","length","getStartOfMonth","day","updateWeekday","getEndOfMonth","daysInMonth","year","month","validateTime","input","isFinite","exec","hour","minute","parseTime","parts","parseInt","validateTimestamp","Date","parseTimestamp","required","arguments","undefined","now","date","parseDate","Error","time","weekday","hasDay","past","present","future","getFullYear","getMonth","getDate","getDay","getHours","getMinutes","getDayIdentifier","getTimeIdentifier","getTimestampIdentifier","a","b","isTimedless","updateHasTime","getTime","updateMinutes","minutes","Math","floor","getWeekday","_","k","m","C","Y","padNumber","x","padded","String","str","nextMinutes","nextDay","relativeDays","mover","days","diffMinutes","min","max","M","D","h","maxDays","getWeekdaySkips","skips","filled","i","skip","j","next","timestampToDate","createDayList","weekdaySkips","stop","current","currentIdentifier","stopped","push","createIntervalList","first","count","intervals","mins","int","createNativeLocaleFormatter","locale","getOptions","emptyFormatter","_t","_s","Intl","DateTimeFormat","short","intlFormatter","format","e"],"sources":["../../../../src/components/VCalendar/util/timestamp.ts"],"sourcesContent":["// @ts-nocheck\n/* eslint-disable */\n\nimport { CalendarTimestamp, CalendarFormatter } from 'vuetify/types'\nimport { isLeapYear } from '../../../util/dateTimeUtils'\n\nexport const PARSE_REGEX = /^(\\d{4})-(\\d{1,2})(-(\\d{1,2}))?([^\\d]+(\\d{1,2}))?(:(\\d{1,2}))?(:(\\d{1,2}))?$/\nexport const PARSE_TIME = /(\\d\\d?)(:(\\d\\d?)|)(:(\\d\\d?)|)/\n\nexport const DAYS_IN_MONTH: number[] = [0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]\nexport const DAYS_IN_MONTH_LEAP: number[] = [0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]\nexport const DAYS_IN_MONTH_MIN = 28\nexport const DAYS_IN_MONTH_MAX = 31\nexport const MONTH_MAX = 12\nexport const MONTH_MIN = 1\nexport const DAY_MIN = 1\nexport const DAYS_IN_WEEK = 7\nexport const MINUTES_IN_HOUR = 60\nexport const MINUTE_MAX = 59\nexport const MINUTES_IN_DAY = 24 * 60\nexport const HOURS_IN_DAY = 24\nexport const HOUR_MAX = 23\nexport const FIRST_HOUR = 0\nexport const OFFSET_YEAR = 10000\nexport const OFFSET_MONTH = 100\nexport const OFFSET_HOUR = 100\nexport const OFFSET_TIME = 10000\n\ntype CalendarTimestampFormatOptions = (timestamp: CalendarTimestamp, short: boolean) => object\ntype CalendarTimestampOperation = (timestamp: CalendarTimestamp) => CalendarTimestamp\nexport type VTime = number | string | {\n hour: number\n minute: number\n}\n\nexport type VTimestampInput = number | string | Date;\n\nexport function getStartOfWeek (timestamp: CalendarTimestamp, weekdays: number[], today?: CalendarTimestamp): CalendarTimestamp {\n const start = copyTimestamp(timestamp)\n findWeekday(start, weekdays[0], prevDay)\n updateFormatted(start)\n if (today) {\n updateRelative(start, today, start.hasTime)\n }\n\n return start\n}\n\nexport function getEndOfWeek (timestamp: CalendarTimestamp, weekdays: number[], today?: CalendarTimestamp): CalendarTimestamp {\n const end = copyTimestamp(timestamp)\n findWeekday(end, weekdays[weekdays.length - 1])\n updateFormatted(end)\n if (today) {\n updateRelative(end, today, end.hasTime)\n }\n\n return end\n}\n\nexport function getStartOfMonth (timestamp: CalendarTimestamp): CalendarTimestamp {\n const start = copyTimestamp(timestamp)\n start.day = DAY_MIN\n updateWeekday(start)\n updateFormatted(start)\n\n return start\n}\n\nexport function getEndOfMonth (timestamp: CalendarTimestamp): CalendarTimestamp {\n const end = copyTimestamp(timestamp)\n end.day = daysInMonth(end.year, end.month)\n updateWeekday(end)\n updateFormatted(end)\n\n return end\n}\n\nexport function validateTime (input: any): input is VTime {\n return (typeof input === 'number' && isFinite(input)) ||\n (!!PARSE_TIME.exec(input)) ||\n (typeof input === 'object' && isFinite(input.hour) && isFinite(input.minute))\n}\n\nexport function parseTime (input: any): number | false {\n if (typeof input === 'number') {\n // when a number is given, it's minutes since 12:00am\n return input\n } else if (typeof input === 'string') {\n // when a string is given, it's a hh:mm:ss format where seconds are optional\n const parts = PARSE_TIME.exec(input)\n if (!parts) {\n return false\n }\n\n return parseInt(parts[1]) * 60 + parseInt(parts[3] || 0)\n } else if (typeof input === 'object') {\n // when an object is given, it must have hour and minute\n if (typeof input.hour !== 'number' || typeof input.minute !== 'number') {\n return false\n }\n\n return input.hour * 60 + input.minute\n } else {\n // unsupported type\n return false\n }\n}\n\nexport function validateTimestamp (input: any): input is VTimestampInput {\n return (typeof input === 'number' && isFinite(input)) ||\n (typeof input === 'string' && !!PARSE_REGEX.exec(input)) ||\n (input instanceof Date)\n}\n\nexport function parseTimestamp (input: VTimestampInput, required?: false, now?: CalendarTimestamp): CalendarTimestamp | null\nexport function parseTimestamp (input: VTimestampInput, required: true, now?: CalendarTimestamp): CalendarTimestamp\nexport function parseTimestamp (input: VTimestampInput, required = false, now?: CalendarTimestamp): CalendarTimestamp | null {\n if (typeof input === 'number' && isFinite(input)) {\n input = new Date(input)\n }\n\n if (input instanceof Date) {\n const date: CalendarTimestamp = parseDate(input)\n\n if (now) {\n updateRelative(date, now, date.hasTime)\n }\n\n return date\n }\n\n if (typeof input !== 'string') {\n if (required) {\n throw new Error(`${input} is not a valid timestamp. It must be a Date, number of milliseconds since Epoch, or a string in the format of YYYY-MM-DD or YYYY-MM-DD hh:mm. Zero-padding is optional and seconds are ignored.`)\n }\n return null\n }\n\n // YYYY-MM-DD hh:mm:ss\n const parts = PARSE_REGEX.exec(input)\n\n if (!parts) {\n if (required) {\n throw new Error(`${input} is not a valid timestamp. It must be a Date, number of milliseconds since Epoch, or a string in the format of YYYY-MM-DD or YYYY-MM-DD hh:mm. Zero-padding is optional and seconds are ignored.`)\n }\n\n return null\n }\n\n const timestamp: CalendarTimestamp = {\n date: input,\n time: '',\n year: parseInt(parts[1]),\n month: parseInt(parts[2]),\n day: parseInt(parts[4]) || 1,\n hour: parseInt(parts[6]) || 0,\n minute: parseInt(parts[8]) || 0,\n weekday: 0,\n hasDay: !!parts[4],\n hasTime: !!(parts[6] && parts[8]),\n past: false,\n present: false,\n future: false,\n }\n\n updateWeekday(timestamp)\n updateFormatted(timestamp)\n\n if (now) {\n updateRelative(timestamp, now, timestamp.hasTime)\n }\n\n return timestamp\n}\n\nexport function parseDate (date: Date): CalendarTimestamp {\n return updateFormatted({\n date: '',\n time: '',\n year: date.getFullYear(),\n month: date.getMonth() + 1,\n day: date.getDate(),\n weekday: date.getDay(),\n hour: date.getHours(),\n minute: date.getMinutes(),\n hasDay: true,\n hasTime: true,\n past: false,\n present: true,\n future: false,\n })\n}\n\nexport function getDayIdentifier (timestamp: { year: number, month: number, day: number }): number {\n return timestamp.year * OFFSET_YEAR + timestamp.month * OFFSET_MONTH + timestamp.day\n}\n\nexport function getTimeIdentifier (timestamp: { hour: number, minute: number }): number {\n return timestamp.hour * OFFSET_HOUR + timestamp.minute\n}\n\nexport function getTimestampIdentifier (timestamp: CalendarTimestamp): number {\n return getDayIdentifier(timestamp) * OFFSET_TIME + getTimeIdentifier(timestamp)\n}\n\nexport function updateRelative (timestamp: CalendarTimestamp, now: CalendarTimestamp, time = false): CalendarTimestamp {\n let a = getDayIdentifier(now)\n let b = getDayIdentifier(timestamp)\n let present = a === b\n\n if (timestamp.hasTime && time && present) {\n a = getTimeIdentifier(now)\n b = getTimeIdentifier(timestamp)\n present = a === b\n }\n\n timestamp.past = b < a\n timestamp.present = present\n timestamp.future = b > a\n\n return timestamp\n}\n\nexport function isTimedless (input: VTimestampInput): input is (Date | number) {\n return (input instanceof Date) || (typeof input === 'number' && isFinite(input))\n}\n\nexport function updateHasTime (timestamp: CalendarTimestamp, hasTime: boolean, now?: CalendarTimestamp): CalendarTimestamp {\n if (timestamp.hasTime !== hasTime) {\n timestamp.hasTime = hasTime\n if (!hasTime) {\n timestamp.hour = HOUR_MAX\n timestamp.minute = MINUTE_MAX\n timestamp.time = getTime(timestamp)\n }\n if (now) {\n updateRelative(timestamp, now, timestamp.hasTime)\n }\n }\n\n return timestamp\n}\n\nexport function updateMinutes (timestamp: CalendarTimestamp, minutes: number, now?: CalendarTimestamp): CalendarTimestamp {\n timestamp.hasTime = true\n timestamp.hour = Math.floor(minutes / MINUTES_IN_HOUR)\n timestamp.minute = minutes % MINUTES_IN_HOUR\n timestamp.time = getTime(timestamp)\n if (now) {\n updateRelative(timestamp, now, true)\n }\n\n return timestamp\n}\n\nexport function updateWeekday (timestamp: CalendarTimestamp): CalendarTimestamp {\n timestamp.weekday = getWeekday(timestamp)\n\n return timestamp\n}\n\nexport function updateFormatted (timestamp: CalendarTimestamp): CalendarTimestamp {\n timestamp.time = getTime(timestamp)\n timestamp.date = getDate(timestamp)\n\n return timestamp\n}\n\nexport function getWeekday (timestamp: CalendarTimestamp): number {\n if (timestamp.hasDay) {\n const _ = Math.floor\n const k = timestamp.day\n const m = ((timestamp.month + 9) % MONTH_MAX) + 1\n const C = _(timestamp.year / 100)\n const Y = (timestamp.year % 100) - (timestamp.month <= 2 ? 1 : 0)\n\n return (((k + _(2.6 * m - 0.2) - 2 * C + Y + _(Y / 4) + _(C / 4)) % 7) + 7) % 7\n }\n\n return timestamp.weekday\n}\n\nexport function daysInMonth (year: number, month: number) {\n return isLeapYear(year) ? DAYS_IN_MONTH_LEAP[month] : DAYS_IN_MONTH[month]\n}\n\nexport function copyTimestamp (timestamp: CalendarTimestamp): CalendarTimestamp {\n const { date, time, year, month, day, weekday, hour, minute, hasDay, hasTime, past, present, future } = timestamp\n\n return { date, time, year, month, day, weekday, hour, minute, hasDay, hasTime, past, present, future }\n}\n\nexport function padNumber (x: number, length: number): string {\n let padded = String(x)\n while (padded.length < length) {\n padded = '0' + padded\n }\n\n return padded\n}\n\nexport function getDate (timestamp: CalendarTimestamp): string {\n let str = `${padNumber(timestamp.year, 4)}-${padNumber(timestamp.month, 2)}`\n\n if (timestamp.hasDay) str += `-${padNumber(timestamp.day, 2)}`\n\n return str\n}\n\nexport function getTime (timestamp: CalendarTimestamp): string {\n if (!timestamp.hasTime) {\n return ''\n }\n\n return `${padNumber(timestamp.hour, 2)}:${padNumber(timestamp.minute, 2)}`\n}\n\nexport function nextMinutes (timestamp: CalendarTimestamp, minutes: number): CalendarTimestamp {\n timestamp.minute += minutes\n while (timestamp.minute > MINUTES_IN_HOUR) {\n timestamp.minute -= MINUTES_IN_HOUR\n timestamp.hour++\n if (timestamp.hour >= HOURS_IN_DAY) {\n nextDay(timestamp)\n timestamp.hour = FIRST_HOUR\n }\n }\n\n return timestamp\n}\n\nexport function nextDay (timestamp: CalendarTimestamp): CalendarTimestamp {\n timestamp.day++\n timestamp.weekday = (timestamp.weekday + 1) % DAYS_IN_WEEK\n if (timestamp.day > DAYS_IN_MONTH_MIN && timestamp.day > daysInMonth(timestamp.year, timestamp.month)) {\n timestamp.day = DAY_MIN\n timestamp.month++\n if (timestamp.month > MONTH_MAX) {\n timestamp.month = MONTH_MIN\n timestamp.year++\n }\n }\n\n return timestamp\n}\n\nexport function prevDay (timestamp: CalendarTimestamp): CalendarTimestamp {\n timestamp.day--\n timestamp.weekday = (timestamp.weekday + 6) % DAYS_IN_WEEK\n if (timestamp.day < DAY_MIN) {\n timestamp.month--\n if (timestamp.month < MONTH_MIN) {\n timestamp.year--\n timestamp.month = MONTH_MAX\n }\n timestamp.day = daysInMonth(timestamp.year, timestamp.month)\n }\n\n return timestamp\n}\n\nexport function relativeDays (\n timestamp: CalendarTimestamp,\n mover: CalendarTimestampOperation = nextDay,\n days = 1\n): CalendarTimestamp {\n while (--days >= 0) mover(timestamp)\n\n return timestamp\n}\n\nexport function diffMinutes (min: CalendarTimestamp, max: CalendarTimestamp) {\n const Y = (max.year - min.year) * 525600\n const M = (max.month - min.month) * 43800\n const D = (max.day - min.day) * 1440\n const h = (max.hour - min.hour) * 60\n const m = (max.minute - min.minute)\n\n return Y + M + D + h + m\n}\n\nexport function findWeekday (timestamp: CalendarTimestamp, weekday: number,\n mover: CalendarTimestampOperation = nextDay, maxDays = 6): CalendarTimestamp {\n while (timestamp.weekday !== weekday && --maxDays >= 0) mover(timestamp)\n\n return timestamp\n}\n\nexport function getWeekdaySkips (weekdays: number[]): number[] {\n const skips: number[] = [1, 1, 1, 1, 1, 1, 1]\n const filled: number[] = [0, 0, 0, 0, 0, 0, 0]\n for (let i = 0; i < weekdays.length; i++) {\n filled[weekdays[i]] = 1\n }\n for (let k = 0; k < DAYS_IN_WEEK; k++) {\n let skip = 1\n for (let j = 1; j < DAYS_IN_WEEK; j++) {\n const next = (k + j) % DAYS_IN_WEEK\n if (filled[next]) {\n break\n }\n skip++\n }\n skips[k] = filled[k] * skip\n }\n\n return skips\n}\n\nexport function timestampToDate (timestamp: CalendarTimestamp): Date {\n const time = `${padNumber(timestamp.hour, 2)}:${padNumber(timestamp.minute, 2)}`\n const date = timestamp.date\n\n return new Date(`${date}T${time}:00+00:00`)\n}\n\nexport function createDayList (\n start: CalendarTimestamp,\n end: CalendarTimestamp,\n now: CalendarTimestamp,\n weekdaySkips: number[],\n max = 42,\n min = 0\n): CalendarTimestamp[] {\n const stop = getDayIdentifier(end)\n const days: CalendarTimestamp[] = []\n let current = copyTimestamp(start)\n let currentIdentifier = 0\n let stopped = currentIdentifier === stop\n\n if (stop < getDayIdentifier(start)) {\n throw new Error('End date is earlier than start date.')\n }\n\n while ((!stopped || days.length < min) && days.length < max) {\n currentIdentifier = getDayIdentifier(current)\n stopped = stopped || currentIdentifier === stop\n if (weekdaySkips[current.weekday] === 0) {\n current = nextDay(current)\n continue\n }\n const day = copyTimestamp(current)\n updateFormatted(day)\n updateRelative(day, now)\n days.push(day)\n current = relativeDays(current, nextDay, weekdaySkips[current.weekday])\n }\n\n if (!days.length) throw new Error('No dates found using specified start date, end date, and weekdays.')\n\n return days\n}\n\nexport function createIntervalList (timestamp: CalendarTimestamp, first: number,\n minutes: number, count: number, now?: CalendarTimestamp): CalendarTimestamp[] {\n const intervals: CalendarTimestamp[] = []\n\n for (let i = 0; i < count; i++) {\n const mins = first + (i * minutes)\n const int = copyTimestamp(timestamp)\n intervals.push(updateMinutes(int, mins, now))\n }\n\n return intervals\n}\n\nexport function createNativeLocaleFormatter (locale: string, getOptions: CalendarTimestampFormatOptions): CalendarFormatter {\n const emptyFormatter: CalendarFormatter = (_t, _s) => ''\n\n if (typeof Intl === 'undefined' || typeof Intl.DateTimeFormat === 'undefined') {\n return emptyFormatter\n }\n\n return (timestamp, short) => {\n try {\n const intlFormatter = new Intl.DateTimeFormat(locale || undefined, getOptions(timestamp, short))\n\n return intlFormatter.format(timestampToDate(timestamp))\n } catch (e) {\n return ''\n }\n }\n}\n"],"mappings":"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"}