@semcore/date-picker 2.8.2 → 2.8.5

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 (37) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/lib/cjs/DatePicker.js +1 -1
  3. package/lib/cjs/components/ButtonTrigger.js +3 -9
  4. package/lib/cjs/components/ButtonTrigger.js.map +1 -1
  5. package/lib/cjs/components/Calendar.js +5 -5
  6. package/lib/cjs/components/PickerAbstract.js +1 -2
  7. package/lib/cjs/components/PickerAbstract.js.map +1 -1
  8. package/lib/cjs/components/RangePickerAbstract.js +2 -4
  9. package/lib/cjs/components/RangePickerAbstract.js.map +1 -1
  10. package/lib/cjs/components/index.js +13 -18
  11. package/lib/cjs/components/index.js.map +1 -1
  12. package/lib/cjs/index.d.ts +355 -0
  13. package/lib/cjs/index.js +5 -39
  14. package/lib/cjs/index.js.map +1 -1
  15. package/lib/cjs/utils/shortDateRangeFormat.js +1 -0
  16. package/lib/cjs/utils/shortDateRangeFormat.js.map +1 -1
  17. package/lib/es6/DatePicker.js +1 -1
  18. package/lib/es6/components/ButtonTrigger.js +3 -9
  19. package/lib/es6/components/ButtonTrigger.js.map +1 -1
  20. package/lib/es6/components/Calendar.js +5 -5
  21. package/lib/es6/components/PickerAbstract.js +1 -2
  22. package/lib/es6/components/PickerAbstract.js.map +1 -1
  23. package/lib/es6/components/RangePickerAbstract.js +2 -4
  24. package/lib/es6/components/RangePickerAbstract.js.map +1 -1
  25. package/lib/es6/components/index.js +13 -18
  26. package/lib/es6/components/index.js.map +1 -1
  27. package/lib/es6/index.d.ts +355 -0
  28. package/lib/es6/index.js +0 -3
  29. package/lib/es6/index.js.map +1 -1
  30. package/lib/es6/utils/shortDateRangeFormat.js +1 -0
  31. package/lib/es6/utils/shortDateRangeFormat.js.map +1 -1
  32. package/package.json +5 -2
  33. package/src/components/ButtonTrigger.jsx +2 -3
  34. package/src/components/PickerAbstract.jsx +0 -1
  35. package/src/components/RangePickerAbstract.jsx +10 -10
  36. package/src/index.js +0 -3
  37. package/src/utils/shortDateRangeFormat.js +1 -0
@@ -0,0 +1,355 @@
1
+ import React, { ComponentProps } from 'react';
2
+ import dayjs from 'dayjs';
3
+ import { Box, IBoxProps } from '@semcore/flex-box';
4
+ import Button from '@semcore/button';
5
+ import { CProps, Merge, PropGetterFn, ReturnEl } from '@semcore/core';
6
+ import Dropdown, { IDropdownProps } from '@semcore/dropdown';
7
+ import { IWithI18nEnhanceProps } from '@semcore/utils/lib/enhances/i18nEnhance';
8
+ import BaseTrigger from '@semcore/base-trigger';
9
+
10
+ export type DateConstructorParams = string | number | Date;
11
+
12
+ export interface ICalendarProps extends IBoxProps {
13
+ /**
14
+ * Locale for displaying the days of a week and months, to be transferred to `Intl`
15
+ * @default en
16
+ * */
17
+ locale?: NavigatorLanguage['language'];
18
+ /**
19
+ * Array of dates blocked for selection
20
+ * Accepts the date, the range of dates or `falsICalendarPropse` for specifying infinity ([Date | false, Date | false]), crontab( 6,7)
21
+ * */
22
+ disabled?: (Date | (Date | false)[] | string)[];
23
+ /**
24
+ * @ignore
25
+ * */
26
+ highlighted?: DateConstructorParams[];
27
+ /**
28
+ * @ignore
29
+ * */
30
+ onHighlightedChange?: (date: Date[]) => void;
31
+ /**
32
+ * The selected date, accepts everything which is accepted by `new Date()`
33
+ * */
34
+ value?: DateConstructorParams[];
35
+ /**
36
+ * To be activated upon selecting the date
37
+ * */
38
+ onChange?: (date: Date[]) => void;
39
+ /**
40
+ * Date for showing the necessary month
41
+ * @default new Date()
42
+ * */
43
+ displayedPeriod?: Date;
44
+ }
45
+
46
+ export interface ICalendarDaysContext {
47
+ days: ICalendarUnitProps[];
48
+ }
49
+
50
+ export interface ICalendarMonthsContext {
51
+ months: ICalendarUnitProps[];
52
+ }
53
+
54
+ export interface ICalendarUnitProps extends IBoxProps {
55
+ selected?: boolean;
56
+ outdated?: boolean;
57
+ disabled?: boolean;
58
+ today?: boolean;
59
+ startSelected?: boolean;
60
+ endSelected?: boolean;
61
+ highlighted?: boolean;
62
+ startHighlighted?: boolean;
63
+ endHighlighted?: boolean;
64
+ children?: React.ReactNode;
65
+ }
66
+
67
+ export interface ICalendarContext {
68
+ getUnitProps: PropGetterFn;
69
+ }
70
+
71
+ declare const Calendar: (<T>(
72
+ props: CProps<ICalendarProps & T, ICalendarContext, IAbstractDatePickerHandlers>,
73
+ ) => ReturnEl) & {
74
+ Unit: <T>(props: ICalendarUnitProps & T) => ReturnEl;
75
+ };
76
+
77
+ export interface IDatePickerProps extends IDropdownProps, IWithI18nEnhanceProps {
78
+ /**
79
+ * The selected date, accepts everything which is accepted by `new Date()`
80
+ * */
81
+ value?: DateConstructorParams;
82
+ /**
83
+ * To be activated upon selecting the date
84
+ * */
85
+ onChange?: (date: Date) => void;
86
+ /**
87
+ * Array of dates blocked for selection
88
+ * */
89
+ disabled?: (Date | (Date | false)[] | string)[];
90
+ /**
91
+ * Date for showing the necessary month
92
+ * @default new Date()
93
+ * */
94
+ displayedPeriod?: DateConstructorParams;
95
+ /**
96
+ * To be activated upon changing the current shown month
97
+ * */
98
+ onDisplayedPeriodChange?: (date: Date) => void;
99
+ /**
100
+ * Component size
101
+ * @default m
102
+ */
103
+ size?: 'm' | 'l' | 'xl';
104
+ /**
105
+ * The selected date, accepts everything which is accepted by `new Date()`
106
+ * */
107
+ highlighted?: DateConstructorParams[];
108
+ /**
109
+ * Default value selected date, accepts everything which is accepted by `new Date()`
110
+ * */
111
+ defaultValue?: DateConstructorParams;
112
+ /**
113
+ * Default value date for showing the necessary month
114
+ * */
115
+ defaultDisplayedPeriod?: DateConstructorParams;
116
+ /**
117
+ * Default value selected date, accepts everything which is accepted by `new Date()`
118
+ * */
119
+ defaultHighlighted?: DateConstructorParams[];
120
+ }
121
+
122
+ export interface IDateRangePickerProps extends IDropdownProps, IWithI18nEnhanceProps {
123
+ /**
124
+ * The selected date, accepts everything which is accepted by `new Date()`
125
+ * */
126
+ value?: DateConstructorParams[];
127
+ /**
128
+ * Default value selected date, accepts everything which is accepted by `new Date()`
129
+ * */
130
+ defaultValue?: DateConstructorParams[];
131
+ /**
132
+ * Default value date for showing the necessary month
133
+ * */
134
+ defaultDisplayedPeriod?: DateConstructorParams;
135
+ /**
136
+ * Default value selected date, accepts everything which is accepted by `new Date()`
137
+ * */
138
+ defaultHighlighted?: DateConstructorParams[];
139
+ /**
140
+ * To be activated upon selecting the date
141
+ * */
142
+ onChange?: (date: Date[]) => void;
143
+ /**
144
+ * Array of dates blocked for selection
145
+ * */
146
+ disabled?: (Date | (Date | false)[] | string)[];
147
+ /**
148
+ * Date for showing the necessary month
149
+ * @default new Date()
150
+ * */
151
+ displayedPeriod?: DateConstructorParams;
152
+ /**
153
+ * To be activated upon changing the current shown month
154
+ * */
155
+ onDisplayedPeriodChange?: (date: Date) => void;
156
+ /**
157
+ * Component size
158
+ * @default m
159
+ */
160
+ size?: 'm' | 'l' | 'xl';
161
+ /**
162
+ * The selected date, accepts everything which is accepted by `new Date()`
163
+ * */
164
+ highlighted?: DateConstructorParams[];
165
+ /**
166
+ * Remove the 'Reset' button
167
+ * */
168
+ unclearable?: boolean;
169
+ /**
170
+ * To be activated upon selecting the date
171
+ * */
172
+ onHighlightedChange?: (date: Date[]) => void;
173
+ /**
174
+ * Array of periods
175
+ * [{value: [new Date(), new Date()], children: "Today"}]
176
+ * @default Past 2 days / Past week / Past 2 week / Past month / Past 2 month
177
+ * */
178
+ periods?: (ComponentProps<typeof Button> & { value: Date[] })[];
179
+ }
180
+
181
+ export interface IDateRangePickerPeriodProps extends IBoxProps {
182
+ /**
183
+ * Current selected period
184
+ * */
185
+ value?: DateConstructorParams[];
186
+ /**
187
+ * To be activated by clicking the button for switching the selected period.
188
+ * */
189
+ onChange?: (date: Date[]) => void;
190
+ /**
191
+ * To be activated by hovering a cursor over the button for changing the current displayed month.
192
+ * */
193
+ onDisplayedPeriodChange?: (date: Date) => void;
194
+ /**
195
+ * To be activated by hovering a cursor over the button for selecting the dates.
196
+ * */
197
+ onHighlightedChange?: (date: Date[]) => void;
198
+ /**
199
+ * Array of periods
200
+ * [{value: [new Date(), new Date()], children: "Today"}]
201
+ * @default Past 2 days / Past week / Past 2 week / Past month / Past 2 month
202
+ * */
203
+ periods?: (ComponentProps<typeof Button> & { value: Date[] })[];
204
+ }
205
+
206
+ export interface IDatePickerContext {
207
+ getTriggerProps: PropGetterFn;
208
+ getPopperProps: PropGetterFn;
209
+ getHeaderProps: PropGetterFn;
210
+ getTitleProps: PropGetterFn;
211
+ getNextProps: PropGetterFn;
212
+ getPrevProps: PropGetterFn;
213
+ getCalendarProps: PropGetterFn;
214
+ getTodayProps: PropGetterFn;
215
+ }
216
+
217
+ export interface IAbstractDatePickerHandlers {
218
+ displayedPeriod: (value: DateConstructorParams) => void;
219
+ visible: (index: boolean) => void;
220
+ highlighted: (list: DateConstructorParams[]) => void;
221
+ value: (index: DateConstructorParams) => void;
222
+ }
223
+
224
+ export interface IDatePickerHandlers {
225
+ visible: (index: boolean) => void;
226
+ }
227
+
228
+ declare const DatePicker: ((
229
+ props: CProps<IDatePickerProps, IDatePickerContext & ICalendarDaysContext, IDatePickerHandlers>,
230
+ ) => ReturnEl) & {
231
+ Trigger: (<T>(
232
+ props: Merge<ComponentProps<typeof Dropdown.Trigger>, ComponentProps<typeof BaseTrigger>> & T,
233
+ ) => ReturnEl) & {
234
+ Addon: typeof BaseTrigger.Addon;
235
+ Text: typeof BaseTrigger.Text;
236
+ };
237
+ Popper: typeof Dropdown.Popper;
238
+ Header: typeof Box;
239
+ Title: <T>(props: CProps<IDatePickerProps & IBoxProps & T, IDatePickerContext>) => ReturnEl;
240
+ Prev: typeof Button;
241
+ Next: typeof Button;
242
+ Calendar: typeof Calendar;
243
+ Today: typeof Box;
244
+ add: (date: number | Date, amount: number, unit: dayjs.OpUnitType) => Date;
245
+ subtract: (date: number | Date, amount: number, unit: dayjs.OpUnitType) => Date;
246
+ };
247
+
248
+ export interface IDateRangePickerContext {
249
+ getTriggerProps: PropGetterFn;
250
+ getPopperProps: PropGetterFn;
251
+ getHeaderProps: PropGetterFn;
252
+ getTitleProps: PropGetterFn;
253
+ getNextProps: PropGetterFn;
254
+ getPrevProps: PropGetterFn;
255
+ getCalendarProps: PropGetterFn;
256
+ getPeriodProps: PropGetterFn;
257
+ }
258
+
259
+ declare const DateRangePicker: ((
260
+ props: CProps<
261
+ IDateRangePickerProps,
262
+ IDateRangePickerContext & ICalendarDaysContext,
263
+ IDatePickerHandlers
264
+ >,
265
+ ) => ReturnEl) & {
266
+ Trigger: (<T>(
267
+ props: Merge<ComponentProps<typeof Dropdown.Trigger>, ComponentProps<typeof BaseTrigger>> & T,
268
+ ) => ReturnEl) & {
269
+ Addon: typeof BaseTrigger.Addon;
270
+ Text: typeof BaseTrigger.Text;
271
+ };
272
+ Popper: <T>(props: ComponentProps<typeof Dropdown.Popper> & T) => ReturnEl;
273
+ Header: typeof Box;
274
+ Title: <T>(
275
+ props: CProps<IDateRangePickerProps & IBoxProps & T, IDateRangePickerContext>,
276
+ ) => ReturnEl;
277
+ Prev: typeof Button;
278
+ Next: typeof Button;
279
+ Calendar: typeof Calendar;
280
+ Period: <T>(props: IDateRangePickerPeriodProps & T) => ReturnEl;
281
+ add: (date: number | Date, amount: number, unit: dayjs.OpUnitType) => Date;
282
+ subtract: (date: number | Date, amount: number, unit: dayjs.OpUnitType) => Date;
283
+ };
284
+
285
+ export interface IMonthPickerContext {
286
+ getTriggerProps: PropGetterFn;
287
+ getPopperProps: PropGetterFn;
288
+ getHeaderProps: PropGetterFn;
289
+ getTitleProps: PropGetterFn;
290
+ getNextProps: PropGetterFn;
291
+ getPrevProps: PropGetterFn;
292
+ getCalendarProps: PropGetterFn;
293
+ }
294
+
295
+ declare const MonthPicker: ((
296
+ props: CProps<
297
+ IDatePickerProps,
298
+ IMonthPickerContext & ICalendarMonthsContext,
299
+ IDatePickerHandlers
300
+ >,
301
+ ) => ReturnEl) & {
302
+ Trigger: (<T>(
303
+ props: Merge<ComponentProps<typeof Dropdown.Trigger>, ComponentProps<typeof BaseTrigger>> & T,
304
+ ) => ReturnEl) & {
305
+ Addon: typeof BaseTrigger.Addon;
306
+ Text: typeof BaseTrigger.Text;
307
+ };
308
+ Popper: typeof Dropdown.Popper;
309
+ Header: typeof Box;
310
+ Title: <T>(props: CProps<IDatePickerProps & IBoxProps & T, IMonthPickerContext>) => ReturnEl;
311
+ Prev: typeof Button;
312
+ Next: typeof Button;
313
+ Calendar: typeof Calendar;
314
+ add: (date: number | Date, amount: number, unit: dayjs.OpUnitType) => Date;
315
+ subtract: (date: number | Date, amount: number, unit: dayjs.OpUnitType) => Date;
316
+ };
317
+
318
+ export interface IMonthRangePickerContext {
319
+ getTriggerProps: PropGetterFn;
320
+ getPopperProps: PropGetterFn;
321
+ getHeaderProps: PropGetterFn;
322
+ getTitleProps: PropGetterFn;
323
+ getNextProps: PropGetterFn;
324
+ getPrevProps: PropGetterFn;
325
+ getCalendarProps: PropGetterFn;
326
+ getPeriodProps: PropGetterFn;
327
+ }
328
+
329
+ declare const MonthRangePicker: ((
330
+ props: CProps<
331
+ IDateRangePickerProps,
332
+ IMonthRangePickerContext & ICalendarMonthsContext,
333
+ IDatePickerHandlers
334
+ >,
335
+ ) => ReturnEl) & {
336
+ Trigger: (<T>(
337
+ props: Merge<ComponentProps<typeof Dropdown.Trigger>, ComponentProps<typeof BaseTrigger>> & T,
338
+ ) => ReturnEl) & {
339
+ Addon: typeof BaseTrigger.Addon;
340
+ Text: typeof BaseTrigger.Text;
341
+ };
342
+ Popper: typeof Dropdown.Popper;
343
+ Header: typeof Box;
344
+ Title: <T>(
345
+ props: CProps<IDateRangePickerProps & IBoxProps & T, IMonthRangePickerContext>,
346
+ ) => ReturnEl;
347
+ Prev: typeof Button;
348
+ Next: typeof Button;
349
+ Calendar: typeof Calendar;
350
+ Period: <T>(props: IDateRangePickerPeriodProps & T) => ReturnEl;
351
+ add: (date: number | Date, amount: number, unit: dayjs.OpUnitType) => Date;
352
+ subtract: (date: number | Date, amount: number, unit: dayjs.OpUnitType) => Date;
353
+ };
354
+
355
+ export { DatePicker, DateRangePicker, MonthPicker, MonthRangePicker };
package/lib/cjs/index.js CHANGED
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
3
5
  var _typeof = require("@babel/runtime/helpers/typeof");
4
6
 
5
7
  Object.defineProperty(exports, "__esModule", {
@@ -50,47 +52,11 @@ Object.keys(_DatePicker).forEach(function (key) {
50
52
  });
51
53
  });
52
54
 
53
- var _DateRangePicker = _interopRequireWildcard(require("./DateRangePicker"));
54
-
55
- Object.keys(_DateRangePicker).forEach(function (key) {
56
- if (key === "default" || key === "__esModule") return;
57
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
58
- if (key in exports && exports[key] === _DateRangePicker[key]) return;
59
- Object.defineProperty(exports, key, {
60
- enumerable: true,
61
- get: function get() {
62
- return _DateRangePicker[key];
63
- }
64
- });
65
- });
66
-
67
- var _MonthPicker = _interopRequireWildcard(require("./MonthPicker"));
68
-
69
- Object.keys(_MonthPicker).forEach(function (key) {
70
- if (key === "default" || key === "__esModule") return;
71
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
72
- if (key in exports && exports[key] === _MonthPicker[key]) return;
73
- Object.defineProperty(exports, key, {
74
- enumerable: true,
75
- get: function get() {
76
- return _MonthPicker[key];
77
- }
78
- });
79
- });
55
+ var _DateRangePicker = _interopRequireDefault(require("./DateRangePicker"));
80
56
 
81
- var _MonthRangePicker = _interopRequireWildcard(require("./MonthRangePicker"));
57
+ var _MonthPicker = _interopRequireDefault(require("./MonthPicker"));
82
58
 
83
- Object.keys(_MonthRangePicker).forEach(function (key) {
84
- if (key === "default" || key === "__esModule") return;
85
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
86
- if (key in exports && exports[key] === _MonthRangePicker[key]) return;
87
- Object.defineProperty(exports, key, {
88
- enumerable: true,
89
- get: function get() {
90
- return _MonthRangePicker[key];
91
- }
92
- });
93
- });
59
+ var _MonthRangePicker = _interopRequireDefault(require("./MonthRangePicker"));
94
60
 
95
61
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
96
62
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAEA;;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAEA;;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAEA;;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export { default as DatePicker } from './DatePicker';\nexport * from './DatePicker';\n\nexport { default as DateRangePicker } from './DateRangePicker';\nexport * from './DateRangePicker';\n\nexport { default as MonthPicker } from './MonthPicker';\nexport * from './MonthPicker';\n\nexport { default as MonthRangePicker } from './MonthRangePicker';\nexport * from './MonthRangePicker';\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../src/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAEA;;AAEA;;AAEA","sourcesContent":["export { default as DatePicker } from './DatePicker';\nexport * from './DatePicker';\n\nexport { default as DateRangePicker } from './DateRangePicker';\n\nexport { default as MonthPicker } from './MonthPicker';\n\nexport { default as MonthRangePicker } from './MonthRangePicker';\n"],"file":"index.js"}
@@ -71,6 +71,7 @@ function shortDateRangeFormat(dates, _ref) {
71
71
  }
72
72
 
73
73
  if (isSimilarYear) {
74
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
74
75
  var year = options.year,
75
76
  newOptions = (0, _objectWithoutProperties2["default"])(options, _excluded2);
76
77
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/shortDateRangeFormat.js"],"names":["getDayJSLocale","locale","includes","shortDateRangeFormat","dates","options","Intl","DateTimeFormat","format","normalizeDates","map","date","toDate","monthsYears","month","year","length","isSimilarDay","isSimilarMonth","isSimilarYear","day","getDate","getFullYear","newOptions"],"mappings":"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","sourcesContent":["import dayjs from 'dayjs';\n\nfunction getDayJSLocale(locale) {\n if (locale.includes('en') || locale.includes('ja')) {\n return 'en';\n }\n return 'ru';\n}\n\nexport default function shortDateRangeFormat(dates, { locale = 'en-US', ...options }) {\n const { format } = new Intl.DateTimeFormat(locale, options);\n const normalizeDates = dates.map((date) => dayjs(date).toDate());\n const monthsYears = dates.map((date) => [\n dayjs(date).date(),\n dayjs(date).month(),\n dayjs(date).year(),\n ]);\n\n if (monthsYears.length > 1) {\n const isSimilarDay = monthsYears[0][0] === monthsYears[1][0];\n const isSimilarMonth = monthsYears[0][1] === monthsYears[1][1];\n const isSimilarYear = monthsYears[0][2] === monthsYears[1][2];\n\n if (isSimilarMonth && isSimilarYear && !options.day) {\n return format(normalizeDates[0]);\n }\n if (isSimilarMonth && isSimilarYear) {\n if (getDayJSLocale(locale) === 'en') {\n if (isSimilarDay) {\n return `${new Intl.DateTimeFormat(locale, { month: options.month }).format(\n normalizeDates[0],\n )} ${normalizeDates[0].getDate()}, ${normalizeDates[0].getFullYear()}`;\n }\n return `${new Intl.DateTimeFormat(locale, { month: options.month }).format(\n normalizeDates[0],\n )} ${normalizeDates[0].getDate()} - ${normalizeDates[1].getDate()}, ${normalizeDates[0].getFullYear()}`;\n }\n if (isSimilarDay) {\n return `${normalizeDates[0].getDate()} ${new Intl.DateTimeFormat(locale, {\n month: options.month,\n }).format(normalizeDates[0])} ${normalizeDates[0].getFullYear()}`;\n }\n return `${normalizeDates[0].getDate()} - ${normalizeDates[1].getDate()} ${new Intl.DateTimeFormat(\n locale,\n { month: options.month },\n ).format(normalizeDates[0])} ${normalizeDates[0].getFullYear()}`;\n }\n\n if (isSimilarYear) {\n const { year, ...newOptions } = options;\n if (getDayJSLocale(locale) === 'en') {\n return `${new Intl.DateTimeFormat(locale, newOptions).format(\n normalizeDates[0],\n )} - ${new Intl.DateTimeFormat(locale, newOptions).format(\n normalizeDates[1],\n )}, ${normalizeDates[0].getFullYear()}`;\n }\n return `${new Intl.DateTimeFormat(locale, newOptions).format(\n normalizeDates[0],\n )} - ${new Intl.DateTimeFormat(locale, newOptions).format(\n normalizeDates[1],\n )} ${normalizeDates[0].getFullYear()}`;\n }\n\n return `${format(normalizeDates[0])} - ${format(normalizeDates[1])}`;\n }\n\n return format(normalizeDates[0]);\n}\n"],"file":"shortDateRangeFormat.js"}
1
+ {"version":3,"sources":["../../../src/utils/shortDateRangeFormat.js"],"names":["getDayJSLocale","locale","includes","shortDateRangeFormat","dates","options","Intl","DateTimeFormat","format","normalizeDates","map","date","toDate","monthsYears","month","year","length","isSimilarDay","isSimilarMonth","isSimilarYear","day","getDate","getFullYear","newOptions"],"mappings":"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","sourcesContent":["import dayjs from 'dayjs';\n\nfunction getDayJSLocale(locale) {\n if (locale.includes('en') || locale.includes('ja')) {\n return 'en';\n }\n return 'ru';\n}\n\nexport default function shortDateRangeFormat(dates, { locale = 'en-US', ...options }) {\n const { format } = new Intl.DateTimeFormat(locale, options);\n const normalizeDates = dates.map((date) => dayjs(date).toDate());\n const monthsYears = dates.map((date) => [\n dayjs(date).date(),\n dayjs(date).month(),\n dayjs(date).year(),\n ]);\n\n if (monthsYears.length > 1) {\n const isSimilarDay = monthsYears[0][0] === monthsYears[1][0];\n const isSimilarMonth = monthsYears[0][1] === monthsYears[1][1];\n const isSimilarYear = monthsYears[0][2] === monthsYears[1][2];\n\n if (isSimilarMonth && isSimilarYear && !options.day) {\n return format(normalizeDates[0]);\n }\n if (isSimilarMonth && isSimilarYear) {\n if (getDayJSLocale(locale) === 'en') {\n if (isSimilarDay) {\n return `${new Intl.DateTimeFormat(locale, { month: options.month }).format(\n normalizeDates[0],\n )} ${normalizeDates[0].getDate()}, ${normalizeDates[0].getFullYear()}`;\n }\n return `${new Intl.DateTimeFormat(locale, { month: options.month }).format(\n normalizeDates[0],\n )} ${normalizeDates[0].getDate()} - ${normalizeDates[1].getDate()}, ${normalizeDates[0].getFullYear()}`;\n }\n if (isSimilarDay) {\n return `${normalizeDates[0].getDate()} ${new Intl.DateTimeFormat(locale, {\n month: options.month,\n }).format(normalizeDates[0])} ${normalizeDates[0].getFullYear()}`;\n }\n return `${normalizeDates[0].getDate()} - ${normalizeDates[1].getDate()} ${new Intl.DateTimeFormat(\n locale,\n { month: options.month },\n ).format(normalizeDates[0])} ${normalizeDates[0].getFullYear()}`;\n }\n\n if (isSimilarYear) {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const { year, ...newOptions } = options;\n if (getDayJSLocale(locale) === 'en') {\n return `${new Intl.DateTimeFormat(locale, newOptions).format(\n normalizeDates[0],\n )} - ${new Intl.DateTimeFormat(locale, newOptions).format(\n normalizeDates[1],\n )}, ${normalizeDates[0].getFullYear()}`;\n }\n return `${new Intl.DateTimeFormat(locale, newOptions).format(\n normalizeDates[0],\n )} - ${new Intl.DateTimeFormat(locale, newOptions).format(\n normalizeDates[1],\n )} ${normalizeDates[0].getFullYear()}`;\n }\n\n return `${format(normalizeDates[0])} - ${format(normalizeDates[1])}`;\n }\n\n return format(normalizeDates[0]);\n}\n"],"file":"shortDateRangeFormat.js"}
@@ -134,7 +134,7 @@ var Today = /*#__PURE__*/function (_Component) {
134
134
  _createClass(Today, [{
135
135
  key: "render",
136
136
  value: function render() {
137
- var _ref = this ? this.asProps : arguments[0],
137
+ var _ref = this.asProps,
138
138
  _ref2;
139
139
 
140
140
  var SToday = Box;
@@ -1,19 +1,13 @@
1
1
  import { assignProps as _assignProps } from "@semcore/core";
2
-
3
- var _this = this;
4
-
5
- import React, { ComponentProps } from 'react';
2
+ import React from 'react';
6
3
  import BaseTrigger from '@semcore/base-trigger';
7
- import { Box } from '@semcore/flex-box';
8
4
  import addonTextChildren from '@semcore/utils/lib/addonTextChildren';
9
5
  import Calendar from '@semcore/icon/Calendar/m';
10
6
  import createComponent, { Root } from '@semcore/core';
11
7
 
12
8
  var ButtonTriggerRoot = function ButtonTriggerRoot(_ref2) {
13
- var _ref = _this ? _this.asProps : arguments[0];
14
-
15
- var Children = _ref2.Children,
16
- size = _ref2.size;
9
+ var _ref = arguments[0];
10
+ var Children = _ref2.Children;
17
11
  return /*#__PURE__*/React.createElement(BaseTrigger, _assignProps({}, _ref), /*#__PURE__*/React.createElement(ButtonTrigger.Addon, {
18
12
  tag: Calendar
19
13
  }), addonTextChildren(Children, ButtonTrigger.Text, ButtonTrigger.Addon));
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/ButtonTrigger.jsx"],"names":["React","ComponentProps","BaseTrigger","Box","addonTextChildren","Calendar","createComponent","Root","ButtonTriggerRoot","Children","size","ButtonTrigger","Text","Addon","displayName"],"mappings":";;;;AAAA,OAAOA,KAAP,IAAgBC,cAAhB,QAAsC,OAAtC;AACA,OAAOC,WAAP,MAAwB,uBAAxB;AACA,SAASC,GAAT,QAAoB,mBAApB;AACA,OAAOC,iBAAP,MAA8B,sCAA9B;AACA,OAAOC,QAAP,MAAqB,0BAArB;AACA,OAAOC,eAAP,IAA0BC,IAA1B,QAAsC,eAAtC;;AAEA,IAAMC,iBAAiB,GAAG,SAApBA,iBAAoB,QAAwB;AAAA;;AAAA,MAArBC,QAAqB,SAArBA,QAAqB;AAAA,MAAXC,IAAW,SAAXA,IAAW;AAChD,sBACE,oBAAcR,WAAd,uCACE,oBAAC,aAAD,CAAe,KAAf;AAAqB,IAAA,GAAG,EAAEG;AAA1B,IADF,EAEGD,iBAAiB,CAACK,QAAD,EAAWE,aAAa,CAACC,IAAzB,EAA+BD,aAAa,CAACE,KAA7C,CAFpB,CADF;AAMD,CAPD;;AASAL,iBAAiB,CAACM,WAAlB,GAAgC,eAAhC;AAEA,IAAMH,aAAa,GAAGL,eAAe,CAACE,iBAAD,EAAoB;AACvDI,EAAAA,IAAI,EAAEV,WAAW,CAACU,IADqC;AAEvDC,EAAAA,KAAK,EAAEX,WAAW,CAACW;AAFoC,CAApB,CAArC;AAKA,eAAeF,aAAf","sourcesContent":["import React, { ComponentProps } from 'react';\nimport BaseTrigger from '@semcore/base-trigger';\nimport { Box } from '@semcore/flex-box';\nimport addonTextChildren from '@semcore/utils/lib/addonTextChildren';\nimport Calendar from '@semcore/icon/Calendar/m';\nimport createComponent, { Root } from '@semcore/core';\n\nconst ButtonTriggerRoot = ({ Children, size }) => {\n return (\n <Root render={BaseTrigger}>\n <ButtonTrigger.Addon tag={Calendar} />\n {addonTextChildren(Children, ButtonTrigger.Text, ButtonTrigger.Addon)}\n </Root>\n );\n};\n\nButtonTriggerRoot.displayName = 'ButtonTrigger';\n\nconst ButtonTrigger = createComponent(ButtonTriggerRoot, {\n Text: BaseTrigger.Text,\n Addon: BaseTrigger.Addon,\n});\n\nexport default ButtonTrigger;\n"],"file":"ButtonTrigger.js"}
1
+ {"version":3,"sources":["../../../src/components/ButtonTrigger.jsx"],"names":["React","BaseTrigger","addonTextChildren","Calendar","createComponent","Root","ButtonTriggerRoot","Children","ButtonTrigger","Text","Addon","displayName"],"mappings":";AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,WAAP,MAAwB,uBAAxB;AACA,OAAOC,iBAAP,MAA8B,sCAA9B;AACA,OAAOC,QAAP,MAAqB,0BAArB;AACA,OAAOC,eAAP,IAA0BC,IAA1B,QAAsC,eAAtC;;AAEA,IAAMC,iBAAiB,GAAG,SAApBA,iBAAoB,QAAkB;AAAA;AAAA,MAAfC,QAAe,SAAfA,QAAe;AAC1C,sBACE,oBAAcN,WAAd,uCACE,oBAAC,aAAD,CAAe,KAAf;AAAqB,IAAA,GAAG,EAAEE;AAA1B,IADF,EAEGD,iBAAiB,CAACK,QAAD,EAAWC,aAAa,CAACC,IAAzB,EAA+BD,aAAa,CAACE,KAA7C,CAFpB,CADF;AAMD,CAPD;;AASAJ,iBAAiB,CAACK,WAAlB,GAAgC,eAAhC;AAEA,IAAMH,aAAa,GAAGJ,eAAe,CAACE,iBAAD,EAAoB;AACvDG,EAAAA,IAAI,EAAER,WAAW,CAACQ,IADqC;AAEvDC,EAAAA,KAAK,EAAET,WAAW,CAACS;AAFoC,CAApB,CAArC;AAKA,eAAeF,aAAf","sourcesContent":["import React from 'react';\nimport BaseTrigger from '@semcore/base-trigger';\nimport addonTextChildren from '@semcore/utils/lib/addonTextChildren';\nimport Calendar from '@semcore/icon/Calendar/m';\nimport createComponent, { Root } from '@semcore/core';\n\nconst ButtonTriggerRoot = ({ Children }) => {\n return (\n <Root render={BaseTrigger}>\n <ButtonTrigger.Addon tag={Calendar} />\n {addonTextChildren(Children, ButtonTrigger.Text, ButtonTrigger.Addon)}\n </Root>\n );\n};\n\nButtonTriggerRoot.displayName = 'ButtonTrigger';\n\nconst ButtonTrigger = createComponent(ButtonTriggerRoot, {\n Text: BaseTrigger.Text,\n Addon: BaseTrigger.Addon,\n});\n\nexport default ButtonTrigger;\n"],"file":"ButtonTrigger.js"}
@@ -117,7 +117,7 @@ var CalendarWeekDaysRoot = /*#__PURE__*/function (_Component) {
117
117
  }, {
118
118
  key: "render",
119
119
  value: function render() {
120
- var _ref = this ? this.asProps : arguments[0],
120
+ var _ref = this.asProps,
121
121
  _ref6;
122
122
 
123
123
  var SWeekDays = Box;
@@ -148,7 +148,7 @@ _defineProperty(CalendarWeekDaysRoot, "defaultProps", {
148
148
  });
149
149
 
150
150
  function CalendarWeekUnit(props) {
151
- var _ref2 = this ? this.asProps : arguments[0],
151
+ var _ref2 = arguments[0],
152
152
  _ref7;
153
153
 
154
154
  var SWeekDay = Box;
@@ -274,7 +274,7 @@ var CalendarAbstract = /*#__PURE__*/function (_Component2) {
274
274
  _defineProperty(CalendarAbstract, "style", style);
275
275
 
276
276
  function CalendarUnit(_ref14) {
277
- var _ref3 = this ? this.asProps : arguments[0],
277
+ var _ref3 = arguments[0],
278
278
  _ref8;
279
279
 
280
280
  var styles = _ref14.styles,
@@ -366,7 +366,7 @@ var CalendarDaysRoot = /*#__PURE__*/function (_CalendarAbstract) {
366
366
  }, {
367
367
  key: "render",
368
368
  value: function render() {
369
- var _ref4 = this ? this.asProps : arguments[0],
369
+ var _ref4 = this.asProps,
370
370
  _ref9;
371
371
 
372
372
  var SCalendar = Box;
@@ -445,7 +445,7 @@ var CalendarMonthsRoot = /*#__PURE__*/function (_CalendarAbstract2) {
445
445
  }, {
446
446
  key: "render",
447
447
  value: function render() {
448
- var _ref5 = this ? this.asProps : arguments[0],
448
+ var _ref5 = this.asProps,
449
449
  _ref10;
450
450
 
451
451
  var SCalendar = Box;
@@ -177,7 +177,6 @@ var PickerAbstract = /*#__PURE__*/function (_Component) {
177
177
  }, {
178
178
  key: "getPopperProps",
179
179
  value: function getPopperProps() {
180
- var interaction = this.asProps.interaction;
181
180
  var Picker = this[CORE_INSTANCE];
182
181
  return {
183
182
  tabIndex: 0,
@@ -235,7 +234,7 @@ var PickerAbstract = /*#__PURE__*/function (_Component) {
235
234
  }, {
236
235
  key: "render",
237
236
  value: function render() {
238
- var _ref = this ? this.asProps : arguments[0],
237
+ var _ref = this.asProps,
239
238
  _ref2;
240
239
 
241
240
  var _this$asProps4 = this.asProps,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/PickerAbstract.jsx"],"names":["React","dayjs","Component","Root","CORE_INSTANCE","sstyled","Dropdown","i18nEnhance","de","en","es","fr","it","ja","pt","ru","zh","ko","vi","includesDate","i18n","INTERACTION_TAGS","defaultDisplayedPeriod","Date","setHours","PickerAbstract","direction","displayedPeriod","asProps","action","date","navigateStep","toDate","handlers","navigateView","e","target","currentTarget","value","highlighted","_disabled","disabled","day","keyDiff","keyCode","getCurrentHighlightedDay","current_day","isDisabledDay","some","length","preventDefault","includes","tagName","current_highlighted","add","keyStep","visible","props","size","empty","onKeyDown","handlerKeyDown","interaction","Picker","tabIndex","children","onClick","bindHandlerNavigateClick","locale","onChange","renderOutdated","styles","Children","defaultValue","defaultVisible","defaultHighlighted","style","amount","unit","subtract"],"mappings":"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","sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport { Component, Root, CORE_INSTANCE, sstyled } from '@semcore/core';\nimport Dropdown from '@semcore/dropdown';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport de from '../translations/de.json';\nimport en from '../translations/en.json';\nimport es from '../translations/es.json';\nimport fr from '../translations/fr.json';\nimport it from '../translations/it.json';\nimport ja from '../translations/ja.json';\nimport pt from '../translations/pt.json';\nimport ru from '../translations/ru.json';\nimport zh from '../translations/zh.json';\nimport ko from '../translations/ko.json';\nimport vi from '../translations/vi.json';\n\nimport style from '../style/date-picker.shadow.css';\nimport includesDate from '../utils/includesDate';\n\nconst i18n = { de, en, es, fr, it, ja, ru, zh, pt, ko, vi };\n\nconst INTERACTION_TAGS = ['INPUT'];\n\nconst defaultDisplayedPeriod = new Date(new Date().setHours(0, 0, 0, 0));\n\nclass PickerAbstract extends Component {\n static displayName = 'DatePicker';\n static style = style;\n static defaultProps({ value, defaultValue }) {\n return {\n i18n,\n locale: 'en',\n defaultDisplayedPeriod: value || defaultValue || defaultDisplayedPeriod,\n defaultValue: null,\n defaultVisible: false,\n defaultHighlighted: [],\n disabled: [],\n size: 'm',\n };\n }\n static enhance = [i18nEnhance()];\n\n static add = (date, amount, unit) => {\n return dayjs(date).add(amount, unit).toDate();\n };\n\n static subtract = (date, amount, unit) => {\n return dayjs(date).subtract(amount, unit).toDate();\n };\n\n navigateStep;\n keyDiff;\n keyStep;\n\n uncontrolledProps() {\n return {\n displayedPeriod: null,\n visible: [\n null,\n (visible) => {\n if (!visible) {\n this.handlers.highlighted([]);\n this.handlers.displayedPeriod(this.asProps.value || this.props.defaultDisplayedPeriod);\n }\n },\n ],\n highlighted: null,\n value: [\n null,\n (value) => {\n // TODO: работает только из-за new Date() !== new Date()\n this.handlers.visible(false);\n this.handlers.displayedPeriod(value);\n },\n ],\n };\n }\n\n navigateView = (direction) => {\n const { displayedPeriod } = this.asProps;\n const action = direction >= 1 ? 'add' : 'subtract';\n const date = dayjs(displayedPeriod)[action](1, this.navigateStep).toDate();\n this.handlers.displayedPeriod(date);\n };\n\n bindHandlerNavigateClick = (direction) => () => {\n this.navigateView(direction);\n };\n\n handlerKeyDown = (e) => {\n if (e.target !== e.currentTarget) return;\n const { value, displayedPeriod, highlighted, disabled: _disabled } = this.asProps;\n const day = this.keyDiff[e.keyCode];\n\n const getCurrentHighlightedDay = (day) => {\n const current_day = day.toDate();\n const isDisabledDay = _disabled.some(includesDate(dayjs(current_day), 'date'));\n return isDisabledDay ? null : current_day;\n };\n\n if (e.keyCode === 32 || (e.keyCode === 13 && highlighted.length)) {\n this.handlers.value(highlighted[0]);\n e.preventDefault();\n }\n if (day) {\n if (INTERACTION_TAGS.includes(e.target.tagName)) return;\n const current_highlighted =\n !highlighted[0] && !value\n ? dayjs(highlighted[0] || displayedPeriod)\n : dayjs(displayedPeriod).add(day, this.keyStep);\n const current_day =\n getCurrentHighlightedDay(current_highlighted) ||\n getCurrentHighlightedDay(dayjs(highlighted[0] || displayedPeriod));\n\n if (current_day) {\n this.handlers.highlighted([current_day]);\n this.handlers.displayedPeriod(current_day);\n e.preventDefault();\n }\n }\n };\n\n getTriggerProps() {\n const { value, size } = this.asProps;\n return {\n size,\n empty: !value,\n onKeyDown: this.handlerKeyDown,\n };\n }\n\n getPopperProps() {\n const { interaction } = this.asProps;\n const Picker = this[CORE_INSTANCE];\n return {\n tabIndex: 0,\n onKeyDown: this.handlerKeyDown,\n children: (\n <>\n <Picker.Header />\n <Picker.Calendar />\n </>\n ),\n };\n }\n\n getHeaderProps() {\n const Picker = this[CORE_INSTANCE];\n return {\n children: (\n <>\n <Picker.Prev />\n <Picker.Title />\n <Picker.Next />\n </>\n ),\n };\n }\n\n getTitleProps() {\n return {};\n }\n\n getNextProps() {\n return {\n onClick: this.bindHandlerNavigateClick(1),\n };\n }\n\n getPrevProps() {\n return {\n onClick: this.bindHandlerNavigateClick(-1),\n };\n }\n\n getCalendarProps() {\n const { locale, displayedPeriod, disabled, value, onChange, highlighted } = this.asProps;\n return {\n locale,\n displayedPeriod,\n disabled,\n onChange,\n highlighted,\n value: [value, value],\n renderOutdated: true,\n };\n }\n\n render() {\n const { styles, Children } = this.asProps;\n return sstyled(styles)(\n <Root render={Dropdown}>\n <Children />\n </Root>,\n );\n }\n}\n\nexport default PickerAbstract;\n"],"file":"PickerAbstract.js"}
1
+ {"version":3,"sources":["../../../src/components/PickerAbstract.jsx"],"names":["React","dayjs","Component","Root","CORE_INSTANCE","sstyled","Dropdown","i18nEnhance","de","en","es","fr","it","ja","pt","ru","zh","ko","vi","includesDate","i18n","INTERACTION_TAGS","defaultDisplayedPeriod","Date","setHours","PickerAbstract","direction","displayedPeriod","asProps","action","date","navigateStep","toDate","handlers","navigateView","e","target","currentTarget","value","highlighted","_disabled","disabled","day","keyDiff","keyCode","getCurrentHighlightedDay","current_day","isDisabledDay","some","length","preventDefault","includes","tagName","current_highlighted","add","keyStep","visible","props","size","empty","onKeyDown","handlerKeyDown","Picker","tabIndex","children","onClick","bindHandlerNavigateClick","locale","onChange","renderOutdated","styles","Children","defaultValue","defaultVisible","defaultHighlighted","style","amount","unit","subtract"],"mappings":"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","sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport { Component, Root, CORE_INSTANCE, sstyled } from '@semcore/core';\nimport Dropdown from '@semcore/dropdown';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport de from '../translations/de.json';\nimport en from '../translations/en.json';\nimport es from '../translations/es.json';\nimport fr from '../translations/fr.json';\nimport it from '../translations/it.json';\nimport ja from '../translations/ja.json';\nimport pt from '../translations/pt.json';\nimport ru from '../translations/ru.json';\nimport zh from '../translations/zh.json';\nimport ko from '../translations/ko.json';\nimport vi from '../translations/vi.json';\n\nimport style from '../style/date-picker.shadow.css';\nimport includesDate from '../utils/includesDate';\n\nconst i18n = { de, en, es, fr, it, ja, ru, zh, pt, ko, vi };\n\nconst INTERACTION_TAGS = ['INPUT'];\n\nconst defaultDisplayedPeriod = new Date(new Date().setHours(0, 0, 0, 0));\n\nclass PickerAbstract extends Component {\n static displayName = 'DatePicker';\n static style = style;\n static defaultProps({ value, defaultValue }) {\n return {\n i18n,\n locale: 'en',\n defaultDisplayedPeriod: value || defaultValue || defaultDisplayedPeriod,\n defaultValue: null,\n defaultVisible: false,\n defaultHighlighted: [],\n disabled: [],\n size: 'm',\n };\n }\n static enhance = [i18nEnhance()];\n\n static add = (date, amount, unit) => {\n return dayjs(date).add(amount, unit).toDate();\n };\n\n static subtract = (date, amount, unit) => {\n return dayjs(date).subtract(amount, unit).toDate();\n };\n\n navigateStep;\n keyDiff;\n keyStep;\n\n uncontrolledProps() {\n return {\n displayedPeriod: null,\n visible: [\n null,\n (visible) => {\n if (!visible) {\n this.handlers.highlighted([]);\n this.handlers.displayedPeriod(this.asProps.value || this.props.defaultDisplayedPeriod);\n }\n },\n ],\n highlighted: null,\n value: [\n null,\n (value) => {\n // TODO: работает только из-за new Date() !== new Date()\n this.handlers.visible(false);\n this.handlers.displayedPeriod(value);\n },\n ],\n };\n }\n\n navigateView = (direction) => {\n const { displayedPeriod } = this.asProps;\n const action = direction >= 1 ? 'add' : 'subtract';\n const date = dayjs(displayedPeriod)[action](1, this.navigateStep).toDate();\n this.handlers.displayedPeriod(date);\n };\n\n bindHandlerNavigateClick = (direction) => () => {\n this.navigateView(direction);\n };\n\n handlerKeyDown = (e) => {\n if (e.target !== e.currentTarget) return;\n const { value, displayedPeriod, highlighted, disabled: _disabled } = this.asProps;\n const day = this.keyDiff[e.keyCode];\n\n const getCurrentHighlightedDay = (day) => {\n const current_day = day.toDate();\n const isDisabledDay = _disabled.some(includesDate(dayjs(current_day), 'date'));\n return isDisabledDay ? null : current_day;\n };\n\n if (e.keyCode === 32 || (e.keyCode === 13 && highlighted.length)) {\n this.handlers.value(highlighted[0]);\n e.preventDefault();\n }\n if (day) {\n if (INTERACTION_TAGS.includes(e.target.tagName)) return;\n const current_highlighted =\n !highlighted[0] && !value\n ? dayjs(highlighted[0] || displayedPeriod)\n : dayjs(displayedPeriod).add(day, this.keyStep);\n const current_day =\n getCurrentHighlightedDay(current_highlighted) ||\n getCurrentHighlightedDay(dayjs(highlighted[0] || displayedPeriod));\n\n if (current_day) {\n this.handlers.highlighted([current_day]);\n this.handlers.displayedPeriod(current_day);\n e.preventDefault();\n }\n }\n };\n\n getTriggerProps() {\n const { value, size } = this.asProps;\n return {\n size,\n empty: !value,\n onKeyDown: this.handlerKeyDown,\n };\n }\n\n getPopperProps() {\n const Picker = this[CORE_INSTANCE];\n return {\n tabIndex: 0,\n onKeyDown: this.handlerKeyDown,\n children: (\n <>\n <Picker.Header />\n <Picker.Calendar />\n </>\n ),\n };\n }\n\n getHeaderProps() {\n const Picker = this[CORE_INSTANCE];\n return {\n children: (\n <>\n <Picker.Prev />\n <Picker.Title />\n <Picker.Next />\n </>\n ),\n };\n }\n\n getTitleProps() {\n return {};\n }\n\n getNextProps() {\n return {\n onClick: this.bindHandlerNavigateClick(1),\n };\n }\n\n getPrevProps() {\n return {\n onClick: this.bindHandlerNavigateClick(-1),\n };\n }\n\n getCalendarProps() {\n const { locale, displayedPeriod, disabled, value, onChange, highlighted } = this.asProps;\n return {\n locale,\n displayedPeriod,\n disabled,\n onChange,\n highlighted,\n value: [value, value],\n renderOutdated: true,\n };\n }\n\n render() {\n const { styles, Children } = this.asProps;\n return sstyled(styles)(\n <Root render={Dropdown}>\n <Children />\n </Root>,\n );\n }\n}\n\nexport default PickerAbstract;\n"],"file":"PickerAbstract.js"}
@@ -126,7 +126,6 @@ var RangePickerAbstract = /*#__PURE__*/function (_Component) {
126
126
 
127
127
  var setNextDisplayedPeriod = function setNextDisplayedPeriod(next_highlighted) {
128
128
  var _next_highlighted = _slicedToArray(next_highlighted, 2),
129
- _ = _next_highlighted[0],
130
129
  right_period = _next_highlighted[1];
131
130
 
132
131
  if (right_period) {
@@ -266,8 +265,7 @@ var RangePickerAbstract = /*#__PURE__*/function (_Component) {
266
265
  _this$asProps3$period = _this$asProps3.periods,
267
266
  periods = _this$asProps3$period === void 0 ? this.getDefaultPeriods() : _this$asProps3$period,
268
267
  unclearable = _this$asProps3.unclearable,
269
- getI18nText = _this$asProps3.getI18nText,
270
- interaction = _this$asProps3.interaction;
268
+ getI18nText = _this$asProps3.getI18nText;
271
269
  var dirtyValue = this.state.dirtyValue;
272
270
  var buttons = /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Button, {
273
271
  use: "primary",
@@ -381,7 +379,7 @@ var RangePickerAbstract = /*#__PURE__*/function (_Component) {
381
379
  }, {
382
380
  key: "render",
383
381
  value: function render() {
384
- var _ref = this ? this.asProps : arguments[0],
382
+ var _ref = this.asProps,
385
383
  _ref2;
386
384
 
387
385
  var _this$asProps7 = this.asProps,