@salutejs/plasma-new-hope 0.322.0-canary.1939.14642328722.0 → 0.322.0-canary.1939.14664752830.0
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.
- package/cjs/components/Calendar/utils/calendarRangeHelper.js.map +1 -1
- package/cjs/components/DatePicker/RangeDate/RangeDate.js +15 -17
- package/cjs/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
- package/cjs/components/DatePicker/SingleDate/SingleDate.js +5 -9
- package/cjs/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
- package/cjs/components/DatePicker/hooks/useDatePicker.js +73 -46
- package/cjs/components/DatePicker/hooks/useDatePicker.js.map +1 -1
- package/cjs/components/DatePicker/utils/getOriginalDates.js +4 -1
- package/cjs/components/DatePicker/utils/getOriginalDates.js.map +1 -1
- package/emotion/cjs/components/Accordion/Accordion.template-doc.mdx +99 -71
- package/emotion/cjs/components/Autocomplete/Autocomplete.template-doc.mdx +523 -454
- package/emotion/cjs/components/Checkbox/Checkbox.template-doc.mdx +3 -3
- package/emotion/cjs/components/Combobox/Combobox.template-doc.mdx +58 -27
- package/emotion/cjs/components/DatePicker/DatePicker.template-doc.mdx +5 -0
- package/emotion/cjs/components/DatePicker/RangeDate/RangeDate.js +15 -17
- package/emotion/cjs/components/DatePicker/SingleDate/SingleDate.js +5 -9
- package/emotion/cjs/components/DatePicker/hooks/useDatePicker.js +73 -46
- package/emotion/cjs/components/DatePicker/utils/getOriginalDates.js +9 -1
- package/emotion/cjs/components/Dropdown/Dropdown.template-doc.mdx +10 -10
- package/emotion/cjs/components/Flow/Flow.template-doc.mdx +2 -2
- package/emotion/cjs/components/Notification/Notification.template-doc.mdx +10 -1
- package/emotion/cjs/components/NumberFormat/NumberFormat.template-doc.mdx +4 -4
- package/emotion/cjs/components/Radiobox/Radiobox.template-doc.mdx +10 -11
- package/emotion/cjs/components/Range/Range.template-doc.mdx +5 -1
- package/emotion/cjs/components/Segment/Segment.template-doc.mdx +3 -3
- package/emotion/cjs/components/Select/Select.template-doc.mdx +27 -27
- package/emotion/cjs/components/Slider/Slider.template-doc.mdx +2 -2
- package/emotion/cjs/components/Switch/Switch.template-doc.mdx +3 -3
- package/emotion/cjs/components/Table/Table.template-doc.mdx +2 -2
- package/emotion/cjs/components/Tabs/Tabs.template-doc.mdx +11 -7
- package/emotion/cjs/components/TextArea/TextArea.template-doc.mdx +9 -2
- package/emotion/cjs/components/TextField/TextField.template-doc.mdx +117 -32
- package/emotion/cjs/components/Toast/Toast.template-doc.mdx +48 -2
- package/emotion/cjs/components/Tooltip/Tooltip.template-doc.mdx +19 -4
- package/emotion/cjs/components/Tree/Tree.template-doc.mdx +0 -1
- package/emotion/es/components/Accordion/Accordion.template-doc.mdx +99 -71
- package/emotion/es/components/Autocomplete/Autocomplete.template-doc.mdx +523 -454
- package/emotion/es/components/Checkbox/Checkbox.template-doc.mdx +3 -3
- package/emotion/es/components/Combobox/Combobox.template-doc.mdx +58 -27
- package/emotion/es/components/DatePicker/DatePicker.template-doc.mdx +5 -0
- package/emotion/es/components/DatePicker/RangeDate/RangeDate.js +15 -17
- package/emotion/es/components/DatePicker/SingleDate/SingleDate.js +6 -10
- package/emotion/es/components/DatePicker/hooks/useDatePicker.js +73 -46
- package/emotion/es/components/DatePicker/utils/getOriginalDates.js +9 -1
- package/emotion/es/components/Dropdown/Dropdown.template-doc.mdx +10 -10
- package/emotion/es/components/Flow/Flow.template-doc.mdx +2 -2
- package/emotion/es/components/Notification/Notification.template-doc.mdx +10 -1
- package/emotion/es/components/NumberFormat/NumberFormat.template-doc.mdx +4 -4
- package/emotion/es/components/Radiobox/Radiobox.template-doc.mdx +10 -11
- package/emotion/es/components/Range/Range.template-doc.mdx +5 -1
- package/emotion/es/components/Segment/Segment.template-doc.mdx +3 -3
- package/emotion/es/components/Select/Select.template-doc.mdx +27 -27
- package/emotion/es/components/Slider/Slider.template-doc.mdx +2 -2
- package/emotion/es/components/Switch/Switch.template-doc.mdx +3 -3
- package/emotion/es/components/Table/Table.template-doc.mdx +2 -2
- package/emotion/es/components/Tabs/Tabs.template-doc.mdx +11 -7
- package/emotion/es/components/TextArea/TextArea.template-doc.mdx +9 -2
- package/emotion/es/components/TextField/TextField.template-doc.mdx +117 -32
- package/emotion/es/components/Toast/Toast.template-doc.mdx +48 -2
- package/emotion/es/components/Tooltip/Tooltip.template-doc.mdx +19 -4
- package/emotion/es/components/Tree/Tree.template-doc.mdx +0 -1
- package/es/components/Calendar/utils/calendarRangeHelper.js.map +1 -1
- package/es/components/DatePicker/RangeDate/RangeDate.js +17 -19
- package/es/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
- package/es/components/DatePicker/SingleDate/SingleDate.js +7 -11
- package/es/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
- package/es/components/DatePicker/hooks/useDatePicker.js +73 -46
- package/es/components/DatePicker/hooks/useDatePicker.js.map +1 -1
- package/es/components/DatePicker/utils/getOriginalDates.js +4 -1
- package/es/components/DatePicker/utils/getOriginalDates.js.map +1 -1
- package/package.json +4 -4
- package/styled-components/cjs/components/Accordion/Accordion.template-doc.mdx +99 -71
- package/styled-components/cjs/components/Autocomplete/Autocomplete.template-doc.mdx +523 -454
- package/styled-components/cjs/components/Checkbox/Checkbox.template-doc.mdx +3 -3
- package/styled-components/cjs/components/Combobox/Combobox.template-doc.mdx +58 -27
- package/styled-components/cjs/components/DatePicker/DatePicker.template-doc.mdx +5 -0
- package/styled-components/cjs/components/DatePicker/RangeDate/RangeDate.js +15 -17
- package/styled-components/cjs/components/DatePicker/SingleDate/SingleDate.js +5 -9
- package/styled-components/cjs/components/DatePicker/hooks/useDatePicker.js +73 -46
- package/styled-components/cjs/components/DatePicker/utils/getOriginalDates.js +9 -1
- package/styled-components/cjs/components/Dropdown/Dropdown.template-doc.mdx +10 -10
- package/styled-components/cjs/components/Flow/Flow.template-doc.mdx +2 -2
- package/styled-components/cjs/components/Notification/Notification.template-doc.mdx +10 -1
- package/styled-components/cjs/components/NumberFormat/NumberFormat.template-doc.mdx +4 -4
- package/styled-components/cjs/components/Radiobox/Radiobox.template-doc.mdx +10 -11
- package/styled-components/cjs/components/Range/Range.template-doc.mdx +5 -1
- package/styled-components/cjs/components/Segment/Segment.template-doc.mdx +3 -3
- package/styled-components/cjs/components/Select/Select.template-doc.mdx +27 -27
- package/styled-components/cjs/components/Slider/Slider.template-doc.mdx +2 -2
- package/styled-components/cjs/components/Switch/Switch.template-doc.mdx +3 -3
- package/styled-components/cjs/components/Table/Table.template-doc.mdx +2 -2
- package/styled-components/cjs/components/Tabs/Tabs.template-doc.mdx +11 -7
- package/styled-components/cjs/components/TextArea/TextArea.template-doc.mdx +9 -2
- package/styled-components/cjs/components/TextField/TextField.template-doc.mdx +117 -32
- package/styled-components/cjs/components/Toast/Toast.template-doc.mdx +48 -2
- package/styled-components/cjs/components/Tooltip/Tooltip.template-doc.mdx +19 -4
- package/styled-components/cjs/components/Tree/Tree.template-doc.mdx +0 -1
- package/styled-components/es/components/Accordion/Accordion.template-doc.mdx +99 -71
- package/styled-components/es/components/Autocomplete/Autocomplete.template-doc.mdx +523 -454
- package/styled-components/es/components/Checkbox/Checkbox.template-doc.mdx +3 -3
- package/styled-components/es/components/Combobox/Combobox.template-doc.mdx +58 -27
- package/styled-components/es/components/DatePicker/DatePicker.template-doc.mdx +5 -0
- package/styled-components/es/components/DatePicker/RangeDate/RangeDate.js +15 -17
- package/styled-components/es/components/DatePicker/SingleDate/SingleDate.js +6 -10
- package/styled-components/es/components/DatePicker/hooks/useDatePicker.js +73 -46
- package/styled-components/es/components/DatePicker/utils/getOriginalDates.js +9 -1
- package/styled-components/es/components/Dropdown/Dropdown.template-doc.mdx +10 -10
- package/styled-components/es/components/Flow/Flow.template-doc.mdx +2 -2
- package/styled-components/es/components/Notification/Notification.template-doc.mdx +10 -1
- package/styled-components/es/components/NumberFormat/NumberFormat.template-doc.mdx +4 -4
- package/styled-components/es/components/Radiobox/Radiobox.template-doc.mdx +10 -11
- package/styled-components/es/components/Range/Range.template-doc.mdx +5 -1
- package/styled-components/es/components/Segment/Segment.template-doc.mdx +3 -3
- package/styled-components/es/components/Select/Select.template-doc.mdx +27 -27
- package/styled-components/es/components/Slider/Slider.template-doc.mdx +2 -2
- package/styled-components/es/components/Switch/Switch.template-doc.mdx +3 -3
- package/styled-components/es/components/Table/Table.template-doc.mdx +2 -2
- package/styled-components/es/components/Tabs/Tabs.template-doc.mdx +11 -7
- package/styled-components/es/components/TextArea/TextArea.template-doc.mdx +9 -2
- package/styled-components/es/components/TextField/TextField.template-doc.mdx +117 -32
- package/styled-components/es/components/Toast/Toast.template-doc.mdx +48 -2
- package/styled-components/es/components/Tooltip/Tooltip.template-doc.mdx +19 -4
- package/styled-components/es/components/Tree/Tree.template-doc.mdx +0 -1
- package/types/components/Calendar/utils/calendarRangeHelper.d.ts +1 -1
- package/types/components/Calendar/utils/calendarRangeHelper.d.ts.map +1 -1
- package/types/components/DatePicker/DatePickerBase.types.d.ts +1 -1
- package/types/components/DatePicker/DatePickerBase.types.d.ts.map +1 -1
- package/types/components/DatePicker/SingleDate/SingleDate.d.ts.map +1 -1
- package/types/components/DatePicker/hooks/useDatePicker.d.ts +1 -1
- package/types/components/DatePicker/hooks/useDatePicker.d.ts.map +1 -1
- /package/emotion/cjs/components/Combobox/ComboboxOld/{Combobox.template-doc.mdx → Combobox.doc.mdx} +0 -0
- /package/emotion/es/components/Combobox/ComboboxOld/{Combobox.template-doc.mdx → Combobox.doc.mdx} +0 -0
- /package/styled-components/cjs/components/Combobox/ComboboxOld/{Combobox.template-doc.mdx → Combobox.doc.mdx} +0 -0
- /package/styled-components/es/components/Combobox/ComboboxOld/{Combobox.template-doc.mdx → Combobox.doc.mdx} +0 -0
@@ -7,12 +7,12 @@ import { PropsTable, Description } from '@site/src/components';
|
|
7
7
|
|
8
8
|
# Checkbox
|
9
9
|
<Description name="Checkbox" />
|
10
|
-
<PropsTable name="Checkbox" exclude={['css', 'focused']} />
|
10
|
+
<PropsTable name="Checkbox" exclude={['css', 'focused']} include={['defaultChecked']} />
|
11
11
|
|
12
12
|
:::caution Устаревшие значения для свойства view
|
13
|
-
Актуальным значением для свойства `view` - является `accent`.
|
13
|
+
Актуальным значением для свойства `view` - является `accent`.
|
14
14
|
|
15
|
-
Все остальные значения `deprecated` и будут удалены в ближайшее время!
|
15
|
+
Все остальные значения `deprecated` и будут удалены в ближайшее время!
|
16
16
|
:::
|
17
17
|
|
18
18
|
## Использование
|
@@ -26,7 +26,7 @@ type Items = Array<{
|
|
26
26
|
*/
|
27
27
|
label: string;
|
28
28
|
/**
|
29
|
-
* Сторона открытия вложенного
|
29
|
+
* Сторона открытия вложенного dropdown относительно текущего элемента
|
30
30
|
* @default right
|
31
31
|
*/
|
32
32
|
placement?: Placement;
|
@@ -49,7 +49,7 @@ type Items = Array<{
|
|
49
49
|
}>;
|
50
50
|
```
|
51
51
|
|
52
|
-
Тип выбора
|
52
|
+
Тип выбора Combobox - одиночный или множественный зависит от типа `value` и `onChange`. В одиночном value - `string`, в множественном - `Array<string>`.\
|
53
53
|
|
54
54
|
|
55
55
|
## Примеры
|
@@ -85,8 +85,8 @@ type Items = Array<{
|
|
85
85
|
];
|
86
86
|
|
87
87
|
return (
|
88
|
-
<div style
|
89
|
-
<div style
|
88
|
+
<div style=\{{ display: "flex", gap: "30px", height: "300px" }}>
|
89
|
+
<div style=\{{ width: "300px" }}>
|
90
90
|
<Combobox
|
91
91
|
items={items}
|
92
92
|
value={value}
|
@@ -131,8 +131,8 @@ type Items = Array<{
|
|
131
131
|
];
|
132
132
|
|
133
133
|
return (
|
134
|
-
<div style
|
135
|
-
<div style
|
134
|
+
<div style=\{{ display: "flex", gap: "30px", height: "300px" }}>
|
135
|
+
<div style=\{{ width: "300px" }}>
|
136
136
|
<Combobox
|
137
137
|
multiple
|
138
138
|
items={items}
|
@@ -180,8 +180,8 @@ type Items = Array<{
|
|
180
180
|
];
|
181
181
|
|
182
182
|
return (
|
183
|
-
<div style
|
184
|
-
<div style
|
183
|
+
<div style=\{{ display: "flex", gap: "30px", height: "300px" }}>
|
184
|
+
<div style=\{{ width: "300px" }}>
|
185
185
|
<Combobox
|
186
186
|
multiple
|
187
187
|
items={items}
|
@@ -200,9 +200,9 @@ type Items = Array<{
|
|
200
200
|
```
|
201
201
|
</TabItem>
|
202
202
|
<TabItem value="portal" label="Portal">
|
203
|
-
Иногда возникает необходимость вынесения выпадающего списка на уровни выше в DOM. К примеру, когда у родительского блока имеется
|
203
|
+
Иногда возникает необходимость вынесения выпадающего списка на уровни выше в DOM. К примеру, когда у родительского блока имеется scroll, и список будет обрезаться, чего хотелось бы избежать.\
|
204
204
|
Для такой реализации имеется пропс `portal`, который принимает либо `ref` либо `id` html-тега.\
|
205
|
-
Также нужно прокинуть
|
205
|
+
Также нужно прокинуть свойство `listWidth`, чтобы явно задать ширину списку. Если этого не сделать, то будет взята ширина 100% от блока, на который ведет ссылка портала.
|
206
206
|
|
207
207
|
```tsx live
|
208
208
|
import React, { useRef } from 'react';
|
@@ -232,11 +232,11 @@ type Items = Array<{
|
|
232
232
|
},
|
233
233
|
];
|
234
234
|
|
235
|
-
const ref = useRef(null)
|
235
|
+
const ref = useRef(null);
|
236
236
|
|
237
237
|
return (
|
238
|
-
<div style
|
239
|
-
<div style
|
238
|
+
<div style=\{{ height: "300px" }} ref={ref}>
|
239
|
+
<div style=\{{ width: "300px" }}>
|
240
240
|
<Combobox
|
241
241
|
items={items}
|
242
242
|
value={value}
|
@@ -283,8 +283,8 @@ type Items = Array<{
|
|
283
283
|
];
|
284
284
|
|
285
285
|
return (
|
286
|
-
<div style
|
287
|
-
<div style
|
286
|
+
<div style=\{{ height: "300px" }}>
|
287
|
+
<div style=\{{ width: "300px" }}>
|
288
288
|
<Combobox
|
289
289
|
items={items}
|
290
290
|
placeholder="Placeholder"
|
@@ -329,9 +329,9 @@ type Items = Array<{
|
|
329
329
|
];
|
330
330
|
|
331
331
|
return (
|
332
|
-
<div style
|
333
|
-
<div style
|
334
|
-
<Button text={ alwaysOpened ? 'По умолчанию' : 'Всегда открыт' } onClick={() => setAlwaysOpened(!alwaysOpened)} style
|
332
|
+
<div style=\{{ height: "300px" }}>
|
333
|
+
<div style=\{{width: "300px" }}>
|
334
|
+
<Button text={ alwaysOpened ? 'По умолчанию' : 'Всегда открыт' } onClick={() => setAlwaysOpened(!alwaysOpened)} style=\{{ marginBottom: '1rem' }} />
|
335
335
|
<Combobox
|
336
336
|
items={items}
|
337
337
|
placeholder="Placeholder"
|
@@ -345,6 +345,37 @@ type Items = Array<{
|
|
345
345
|
}
|
346
346
|
```
|
347
347
|
</TabItem>
|
348
|
+
<TabItem value="virtual" label="Virtual">
|
349
|
+
:::caution
|
350
|
+
Работает только в одно-уровневых списках.
|
351
|
+
:::
|
352
|
+
|
353
|
+
Свойство `virtual` позволяет виртуализировать выпадающий список. Для настройки высоты списка можно использовать свойство `listMaxHeight`.
|
354
|
+
|
355
|
+
```tsx live
|
356
|
+
import React from 'react';
|
357
|
+
import { Combobox } from '@salutejs/{{ package }}';
|
358
|
+
|
359
|
+
export function App() {
|
360
|
+
const items = Array(5000).fill(1).map((_, i) => ({ value: i.toString(), label: i.toString() }));
|
361
|
+
|
362
|
+
return (
|
363
|
+
<div style=\{{ height: "300px" }}>
|
364
|
+
<div style=\{{width: "300px" }}>
|
365
|
+
<Combobox
|
366
|
+
items={items}
|
367
|
+
virtual
|
368
|
+
listMaxHeight="200px"
|
369
|
+
placeholder="Placeholder"
|
370
|
+
label="Label"
|
371
|
+
helperText="Helper text"
|
372
|
+
/>
|
373
|
+
</div>
|
374
|
+
</div>
|
375
|
+
);
|
376
|
+
}
|
377
|
+
```
|
378
|
+
</TabItem>
|
348
379
|
<TabItem value="infinite" label="Infinite Loading">
|
349
380
|
Пример с бесконечной загрузкой элементов в списке.
|
350
381
|
|
@@ -388,8 +419,8 @@ type Items = Array<{
|
|
388
419
|
};
|
389
420
|
|
390
421
|
return (
|
391
|
-
<div style
|
392
|
-
<div style
|
422
|
+
<div style=\{{ height: "300px" }}>
|
423
|
+
<div style=\{{ width: "300px" }}>
|
393
424
|
<Combobox
|
394
425
|
items={items}
|
395
426
|
listMaxHeight="200px"
|
@@ -411,7 +442,7 @@ type Items = Array<{
|
|
411
442
|
## Использование с React Hook Form и нативной формой
|
412
443
|
|
413
444
|
:::caution Использование атрибута `name`
|
414
|
-
Используйте
|
445
|
+
Используйте свойство `name` только когда это необходимо. Оно влияет на выходной тип в `onChange`.
|
415
446
|
:::
|
416
447
|
|
417
448
|
<Tabs>
|
@@ -462,8 +493,8 @@ type Items = Array<{
|
|
462
493
|
];
|
463
494
|
|
464
495
|
return (
|
465
|
-
<div style
|
466
|
-
<form onSubmit={handleSubmit(onSubmit)} style
|
496
|
+
<div style=\{{ display: "flex", gap: "30px", height: "300px" }}>
|
497
|
+
<form onSubmit={handleSubmit(onSubmit)} style=\{{ display: 'flex', flexDirection: 'column', gap: '10px' }}>
|
467
498
|
<Combobox
|
468
499
|
items={items}
|
469
500
|
{...register('combobox')}
|
@@ -525,8 +556,8 @@ type Items = Array<{
|
|
525
556
|
];
|
526
557
|
|
527
558
|
return (
|
528
|
-
<div style
|
529
|
-
<form onSubmit={handleSubmit(onSubmit)} style
|
559
|
+
<div style=\{{ display: "flex", gap: "30px", height: "300px" }}>
|
560
|
+
<form onSubmit={handleSubmit(onSubmit)} style=\{{ display: 'flex', flexDirection: 'column', gap: '10px' }}>
|
530
561
|
<Controller
|
531
562
|
control={control}
|
532
563
|
name="combobox"
|
@@ -598,8 +629,8 @@ type Items = Array<{
|
|
598
629
|
];
|
599
630
|
|
600
631
|
return (
|
601
|
-
<div style
|
602
|
-
<form onSubmit={onSubmit} style
|
632
|
+
<div style=\{{ display: "flex", gap: "30px", height: "300px" }}>
|
633
|
+
<form onSubmit={onSubmit} style=\{{ display: 'flex', flexDirection: 'column', gap: '20px' }}>
|
603
634
|
<Combobox label="Combobox" name="combobox" defaultValue={"brazil"} items={items} />
|
604
635
|
<Combobox label="Combobox" name="comboboxMulti" defaultValue={["brazil"]} items={items} multiple />
|
605
636
|
<Button type="submit">Отправить</Button>
|
@@ -194,6 +194,11 @@ export function App() {
|
|
194
194
|
```
|
195
195
|
|
196
196
|
### Обязательность поля
|
197
|
+
|
198
|
+
:::tip
|
199
|
+
Наличие индикатора регулируется свойством `hasRequiredIndicator`.
|
200
|
+
:::
|
201
|
+
|
197
202
|
Обязательность поля задаётся с помощью свойства `required`.
|
198
203
|
Если поле является обязательным, то у компонента появляется специальный индикатор.
|
199
204
|
Изменить расположение индикатора можно с помощью свойства `requiredPlacement`, которое принимает значения `left` и `right`.
|
@@ -115,7 +115,7 @@ export var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
115
115
|
_onBlurSecondTextfield = _ref.onBlurSecondTextfield,
|
116
116
|
rest = _objectWithoutProperties(_ref, _excluded);
|
117
117
|
if (externalValue !== null && externalValue !== void 0 && externalValue.length && (defaultFirstDate || defaultSecondDate)) {
|
118
|
-
|
118
|
+
throw new Error("Controlled DatePicker can't have `default{First|Second}Date`, use `value` instead");
|
119
119
|
}
|
120
120
|
var rangeRef = ref && 'current' in ref ? ref : /*#__PURE__*/createRef();
|
121
121
|
var rootRef = useRef(null);
|
@@ -133,16 +133,14 @@ export var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
133
133
|
_useState6 = _slicedToArray(_useState5, 2),
|
134
134
|
isInnerOpen = _useState6[0],
|
135
135
|
setIsInnerOpen = _useState6[1];
|
136
|
-
var dateFormatDelimiter =
|
137
|
-
return getDateFormatDelimiter(format);
|
138
|
-
}, [format]);
|
136
|
+
var dateFormatDelimiter = getDateFormatDelimiter(format);
|
139
137
|
var _ref2 = externalValue || [],
|
140
138
|
_ref3 = _slicedToArray(_ref2, 2),
|
141
139
|
startExternalValue = _ref3[0],
|
142
140
|
endExternalValue = _ref3[1];
|
143
141
|
var startInitialValues = getFormattedDates({
|
144
142
|
value: startExternalValue || defaultFirstDate,
|
145
|
-
delimiter: dateFormatDelimiter
|
143
|
+
delimiter: dateFormatDelimiter,
|
146
144
|
lang: lang,
|
147
145
|
format: format,
|
148
146
|
includeEdgeDates: includeEdgeDates,
|
@@ -151,7 +149,7 @@ export var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
151
149
|
});
|
152
150
|
var endInitialValues = getFormattedDates({
|
153
151
|
value: endExternalValue || defaultSecondDate,
|
154
|
-
delimiter: dateFormatDelimiter
|
152
|
+
delimiter: dateFormatDelimiter,
|
155
153
|
lang: lang,
|
156
154
|
format: format,
|
157
155
|
includeEdgeDates: includeEdgeDates,
|
@@ -234,12 +232,12 @@ export var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
234
232
|
min: min,
|
235
233
|
max: max,
|
236
234
|
includeEdgeDates: includeEdgeDates,
|
235
|
+
dateFormatDelimiter: dateFormatDelimiter,
|
237
236
|
setCorrectDates: setCorrectStartDates,
|
238
237
|
setInputValue: setFirstInputValue,
|
239
238
|
setCalendarValue: setCalendarFirstValue,
|
240
239
|
onChangeValue: onChangeFirstValue,
|
241
|
-
onCommitDate: onCommitFirstDate
|
242
|
-
dateFormatDelimiter: dateFormatDelimiter
|
240
|
+
onCommitDate: onCommitFirstDate
|
243
241
|
}),
|
244
242
|
handleChangeFirstValue = _useDatePicker.handleChangeValue,
|
245
243
|
handleFirstCalendarPick = _useDatePicker.handleCalendarPick,
|
@@ -259,12 +257,12 @@ export var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
259
257
|
min: min,
|
260
258
|
max: max,
|
261
259
|
includeEdgeDates: includeEdgeDates,
|
260
|
+
dateFormatDelimiter: dateFormatDelimiter,
|
262
261
|
setCorrectDates: setCorrectEndDates,
|
263
262
|
setInputValue: setSecondInputValue,
|
264
263
|
setCalendarValue: setCalendarSecondValue,
|
265
264
|
onChangeValue: onChangeSecondValue,
|
266
|
-
onCommitDate: onCommitSecondDate
|
267
|
-
dateFormatDelimiter: dateFormatDelimiter
|
265
|
+
onCommitDate: onCommitSecondDate
|
268
266
|
}),
|
269
267
|
handleChangeSecondValue = _useDatePicker2.handleChangeValue,
|
270
268
|
handleSecondCalendarPick = _useDatePicker2.handleCalendarPick,
|
@@ -309,7 +307,7 @@ export var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
309
307
|
}
|
310
308
|
var _getFormattedDates = getFormattedDates({
|
311
309
|
value: inputFirstValue,
|
312
|
-
delimiter: dateFormatDelimiter
|
310
|
+
delimiter: dateFormatDelimiter,
|
313
311
|
lang: lang,
|
314
312
|
format: format,
|
315
313
|
includeEdgeDates: includeEdgeDates,
|
@@ -319,7 +317,7 @@ export var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
319
317
|
startOriginalDate = _getFormattedDates.originalDate;
|
320
318
|
var _getFormattedDates2 = getFormattedDates({
|
321
319
|
value: inputSecondValue,
|
322
|
-
delimiter: dateFormatDelimiter
|
320
|
+
delimiter: dateFormatDelimiter,
|
323
321
|
lang: lang,
|
324
322
|
format: format,
|
325
323
|
includeEdgeDates: includeEdgeDates,
|
@@ -339,7 +337,7 @@ export var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
339
337
|
endValue = _getSortedValues2[1];
|
340
338
|
var _getFormattedDates3 = getFormattedDates({
|
341
339
|
value: startValue || null,
|
342
|
-
delimiter: dateFormatDelimiter
|
340
|
+
delimiter: dateFormatDelimiter,
|
343
341
|
lang: lang,
|
344
342
|
format: format,
|
345
343
|
includeEdgeDates: includeEdgeDates,
|
@@ -349,7 +347,7 @@ export var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
349
347
|
startFormattedDate = _getFormattedDates3.formattedDate;
|
350
348
|
var _getFormattedDates4 = getFormattedDates({
|
351
349
|
value: endValue || null,
|
352
|
-
delimiter: dateFormatDelimiter
|
350
|
+
delimiter: dateFormatDelimiter,
|
353
351
|
lang: lang,
|
354
352
|
format: format,
|
355
353
|
includeEdgeDates: includeEdgeDates,
|
@@ -367,7 +365,7 @@ export var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
367
365
|
isCalendarOpen: isInnerOpen,
|
368
366
|
format: format,
|
369
367
|
maskWithFormat: maskWithFormat,
|
370
|
-
delimiter: dateFormatDelimiter
|
368
|
+
delimiter: dateFormatDelimiter,
|
371
369
|
closeOnEsc: closeOnEsc,
|
372
370
|
onToggle: handleToggle
|
373
371
|
}),
|
@@ -481,10 +479,10 @@ export var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
481
479
|
updateExternalSecondDate(endExternalValue || undefined);
|
482
480
|
}, [endExternalValue, format, lang]);
|
483
481
|
useLayoutEffect(function () {
|
484
|
-
|
482
|
+
updateExternalFirstDate(defaultFirstDate);
|
485
483
|
}, [defaultFirstDate, format, lang]);
|
486
484
|
useLayoutEffect(function () {
|
487
|
-
|
485
|
+
updateExternalSecondDate(defaultSecondDate);
|
488
486
|
}, [defaultSecondDate, format, lang]);
|
489
487
|
var RootWrapper = useCallback(function (_ref6) {
|
490
488
|
var children = _ref6.children;
|
@@ -8,7 +8,7 @@ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" !=
|
|
8
8
|
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
9
9
|
function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
|
10
10
|
function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
|
11
|
-
import React, { forwardRef,
|
11
|
+
import React, { forwardRef, useEffect, useLayoutEffect, useRef, useState } from 'react';
|
12
12
|
import { cx, getPlacements, noop } from "../../../utils";
|
13
13
|
import { getDateFormatDelimiter } from "../utils/dateHelper";
|
14
14
|
import { useDatePicker } from "../hooks/useDatePicker";
|
@@ -94,7 +94,7 @@ export var datePickerRoot = function datePickerRoot(Root) {
|
|
94
94
|
autoComplete = _ref.autoComplete,
|
95
95
|
rest = _objectWithoutProperties(_ref, _excluded);
|
96
96
|
if (value && defaultDate) {
|
97
|
-
|
97
|
+
throw new Error("Controlled DatePicker can't have `defaultDate`, use `value` instead");
|
98
98
|
}
|
99
99
|
var inputRef = useRef(null);
|
100
100
|
var innerRef = useRef(null);
|
@@ -102,12 +102,10 @@ export var datePickerRoot = function datePickerRoot(Root) {
|
|
102
102
|
_useState2 = _slicedToArray(_useState, 2),
|
103
103
|
isInnerOpen = _useState2[0],
|
104
104
|
setIsInnerOpen = _useState2[1];
|
105
|
-
var dateFormatDelimiter =
|
106
|
-
return getDateFormatDelimiter(format);
|
107
|
-
}, [format]);
|
105
|
+
var dateFormatDelimiter = getDateFormatDelimiter(format);
|
108
106
|
var initialValues = getFormattedDates({
|
109
107
|
value: value || defaultDate,
|
110
|
-
delimiter: dateFormatDelimiter
|
108
|
+
delimiter: dateFormatDelimiter,
|
111
109
|
lang: lang,
|
112
110
|
format: format,
|
113
111
|
includeEdgeDates: includeEdgeDates,
|
@@ -177,7 +175,7 @@ export var datePickerRoot = function datePickerRoot(Root) {
|
|
177
175
|
isCalendarOpen: isInnerOpen,
|
178
176
|
format: format,
|
179
177
|
maskWithFormat: maskWithFormat,
|
180
|
-
delimiter: dateFormatDelimiter
|
178
|
+
delimiter: dateFormatDelimiter,
|
181
179
|
closeOnEsc: closeOnEsc,
|
182
180
|
onToggle: handleToggle
|
183
181
|
}),
|
@@ -225,9 +223,7 @@ export var datePickerRoot = function datePickerRoot(Root) {
|
|
225
223
|
updateExternalDate(value);
|
226
224
|
}, [value, format, lang]);
|
227
225
|
useLayoutEffect(function () {
|
228
|
-
|
229
|
-
updateExternalDate(defaultDate);
|
230
|
-
}
|
226
|
+
updateExternalDate(defaultDate);
|
231
227
|
}, [defaultDate, format, lang]);
|
232
228
|
return /*#__PURE__*/React.createElement(Root, _extends({
|
233
229
|
view: view,
|
@@ -17,10 +17,10 @@ export var useDatePicker = function useDatePicker(_ref) {
|
|
17
17
|
max = _ref.max,
|
18
18
|
includeEdgeDates = _ref.includeEdgeDates,
|
19
19
|
maskWithFormat = _ref.maskWithFormat,
|
20
|
+
dateFormatDelimiter = _ref.dateFormatDelimiter,
|
20
21
|
setCorrectDates = _ref.setCorrectDates,
|
21
22
|
setInputValue = _ref.setInputValue,
|
22
23
|
setCalendarValue = _ref.setCalendarValue,
|
23
|
-
dateFormatDelimiter = _ref.dateFormatDelimiter,
|
24
24
|
onChangeValue = _ref.onChangeValue,
|
25
25
|
onCommitDate = _ref.onCommitDate,
|
26
26
|
onChange = _ref.onChange;
|
@@ -45,11 +45,11 @@ export var useDatePicker = function useDatePicker(_ref) {
|
|
45
45
|
return;
|
46
46
|
}
|
47
47
|
var value = event.target.value;
|
48
|
-
var newValue = maskWithFormat ? getMaskedDateOnInput(value, format, dateFormatDelimiter
|
48
|
+
var newValue = maskWithFormat ? getMaskedDateOnInput(value, format, dateFormatDelimiter, currentValue) : value;
|
49
49
|
var _getFormattedDates = getFormattedDates({
|
50
50
|
value: newValue,
|
51
51
|
lang: lang,
|
52
|
-
delimiter: dateFormatDelimiter
|
52
|
+
delimiter: dateFormatDelimiter,
|
53
53
|
format: format,
|
54
54
|
includeEdgeDates: includeEdgeDates,
|
55
55
|
min: min,
|
@@ -64,18 +64,24 @@ export var useDatePicker = function useDatePicker(_ref) {
|
|
64
64
|
input: formattedDate
|
65
65
|
});
|
66
66
|
var dateInfo = getQuarterInfo(originalDate);
|
67
|
-
|
67
|
+
if (onCommitDate) {
|
68
|
+
onCommitDate(formattedDate, false, true, dateInfo, originalDate, isoDate);
|
69
|
+
}
|
68
70
|
setCalendarValue(originalDate);
|
69
71
|
setInputValue(formattedDate);
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
72
|
+
if (onChangeValue) {
|
73
|
+
onChangeValue(event, formattedDate, originalDate, isoDate);
|
74
|
+
}
|
75
|
+
if (onChange) {
|
76
|
+
onChange({
|
77
|
+
target: {
|
78
|
+
value: formattedDate,
|
79
|
+
originalDate: originalDate,
|
80
|
+
isoDate: isoDate,
|
81
|
+
name: name
|
82
|
+
}
|
83
|
+
});
|
84
|
+
}
|
79
85
|
return;
|
80
86
|
}
|
81
87
|
if (formattedDate === '') {
|
@@ -86,15 +92,19 @@ export var useDatePicker = function useDatePicker(_ref) {
|
|
86
92
|
}
|
87
93
|
setCalendarValue(originalDate);
|
88
94
|
setInputValue(formattedDate);
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
95
|
+
if (onChangeValue) {
|
96
|
+
onChangeValue(event, formattedDate, originalDate, isoDate);
|
97
|
+
}
|
98
|
+
if (onChange) {
|
99
|
+
onChange({
|
100
|
+
target: {
|
101
|
+
value: formattedDate,
|
102
|
+
originalDate: originalDate,
|
103
|
+
isoDate: isoDate,
|
104
|
+
name: name
|
105
|
+
}
|
106
|
+
});
|
107
|
+
}
|
98
108
|
};
|
99
109
|
var handleSearch = function handleSearch(date) {
|
100
110
|
if (disabled || readOnly) {
|
@@ -103,12 +113,15 @@ export var useDatePicker = function useDatePicker(_ref) {
|
|
103
113
|
if (!date) {
|
104
114
|
setCalendarValue(undefined);
|
105
115
|
setInputValue('');
|
106
|
-
|
116
|
+
if (onCommitDate) {
|
117
|
+
onCommitDate('', false, true, undefined, undefined, '');
|
118
|
+
}
|
119
|
+
return;
|
107
120
|
}
|
108
121
|
var _getFormattedDates2 = getFormattedDates({
|
109
122
|
value: date,
|
110
123
|
lang: lang,
|
111
|
-
delimiter: dateFormatDelimiter
|
124
|
+
delimiter: dateFormatDelimiter,
|
112
125
|
format: format,
|
113
126
|
includeEdgeDates: includeEdgeDates,
|
114
127
|
min: min,
|
@@ -119,7 +132,9 @@ export var useDatePicker = function useDatePicker(_ref) {
|
|
119
132
|
originalDate = _getFormattedDates2.originalDate;
|
120
133
|
if (originalDate) {
|
121
134
|
var dateInfo = getQuarterInfo(originalDate);
|
122
|
-
|
135
|
+
if (onCommitDate) {
|
136
|
+
onCommitDate(formattedDate, false, true, dateInfo, originalDate, isoDate);
|
137
|
+
}
|
123
138
|
}
|
124
139
|
};
|
125
140
|
var handleCalendarPick = function handleCalendarPick(date, dateInfo) {
|
@@ -133,16 +148,22 @@ export var useDatePicker = function useDatePicker(_ref) {
|
|
133
148
|
calendar: date || undefined,
|
134
149
|
input: ''
|
135
150
|
});
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
151
|
+
if (onChangeValue) {
|
152
|
+
onChangeValue(null, '', date, '');
|
153
|
+
}
|
154
|
+
if (onChange) {
|
155
|
+
onChange({
|
156
|
+
target: {
|
157
|
+
value: '',
|
158
|
+
originalDate: date,
|
159
|
+
isoDate: '',
|
160
|
+
name: name
|
161
|
+
}
|
162
|
+
});
|
163
|
+
}
|
164
|
+
if (onCommitDate) {
|
165
|
+
onCommitDate('', false, true, dateInfo, date || undefined, '');
|
166
|
+
}
|
146
167
|
return;
|
147
168
|
}
|
148
169
|
customDayjs.locale(lang);
|
@@ -154,22 +175,28 @@ export var useDatePicker = function useDatePicker(_ref) {
|
|
154
175
|
calendar: date,
|
155
176
|
input: formattedDate
|
156
177
|
});
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
178
|
+
if (onChangeValue) {
|
179
|
+
onChangeValue(null, formattedDate, date, isoDate);
|
180
|
+
}
|
181
|
+
if (onChange) {
|
182
|
+
onChange({
|
183
|
+
target: {
|
184
|
+
value: formattedDate,
|
185
|
+
originalDate: date,
|
186
|
+
isoDate: isoDate,
|
187
|
+
name: name
|
188
|
+
}
|
189
|
+
});
|
190
|
+
}
|
191
|
+
if (onCommitDate) {
|
192
|
+
onCommitDate(formattedDate, false, true, dateInfo, date, isoDate);
|
193
|
+
}
|
167
194
|
};
|
168
195
|
var updateExternalDate = function updateExternalDate(externalDate) {
|
169
196
|
var _getFormattedDates3 = getFormattedDates({
|
170
197
|
value: externalDate || null,
|
171
198
|
lang: lang,
|
172
|
-
delimiter: dateFormatDelimiter
|
199
|
+
delimiter: dateFormatDelimiter,
|
173
200
|
format: format,
|
174
201
|
includeEdgeDates: includeEdgeDates,
|
175
202
|
min: min,
|
@@ -1,3 +1,9 @@
|
|
1
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
2
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
3
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
4
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
5
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
6
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
1
7
|
import { customDayjs } from "../../../utils/datejs";
|
2
8
|
var initialValueStructure = {
|
3
9
|
isoDate: '',
|
@@ -26,5 +32,7 @@ export var getOriginalDates = function getOriginalDates(value, lang, format) {
|
|
26
32
|
originalDate: originalDate
|
27
33
|
};
|
28
34
|
}
|
29
|
-
return initialValueStructure
|
35
|
+
return _objectSpread(_objectSpread({}, initialValueStructure), {}, {
|
36
|
+
formattedDate: value
|
37
|
+
});
|
30
38
|
};
|