@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.
Files changed (134) hide show
  1. package/cjs/components/Calendar/utils/calendarRangeHelper.js.map +1 -1
  2. package/cjs/components/DatePicker/RangeDate/RangeDate.js +15 -17
  3. package/cjs/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
  4. package/cjs/components/DatePicker/SingleDate/SingleDate.js +5 -9
  5. package/cjs/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
  6. package/cjs/components/DatePicker/hooks/useDatePicker.js +73 -46
  7. package/cjs/components/DatePicker/hooks/useDatePicker.js.map +1 -1
  8. package/cjs/components/DatePicker/utils/getOriginalDates.js +4 -1
  9. package/cjs/components/DatePicker/utils/getOriginalDates.js.map +1 -1
  10. package/emotion/cjs/components/Accordion/Accordion.template-doc.mdx +99 -71
  11. package/emotion/cjs/components/Autocomplete/Autocomplete.template-doc.mdx +523 -454
  12. package/emotion/cjs/components/Checkbox/Checkbox.template-doc.mdx +3 -3
  13. package/emotion/cjs/components/Combobox/Combobox.template-doc.mdx +58 -27
  14. package/emotion/cjs/components/DatePicker/DatePicker.template-doc.mdx +5 -0
  15. package/emotion/cjs/components/DatePicker/RangeDate/RangeDate.js +15 -17
  16. package/emotion/cjs/components/DatePicker/SingleDate/SingleDate.js +5 -9
  17. package/emotion/cjs/components/DatePicker/hooks/useDatePicker.js +73 -46
  18. package/emotion/cjs/components/DatePicker/utils/getOriginalDates.js +9 -1
  19. package/emotion/cjs/components/Dropdown/Dropdown.template-doc.mdx +10 -10
  20. package/emotion/cjs/components/Flow/Flow.template-doc.mdx +2 -2
  21. package/emotion/cjs/components/Notification/Notification.template-doc.mdx +10 -1
  22. package/emotion/cjs/components/NumberFormat/NumberFormat.template-doc.mdx +4 -4
  23. package/emotion/cjs/components/Radiobox/Radiobox.template-doc.mdx +10 -11
  24. package/emotion/cjs/components/Range/Range.template-doc.mdx +5 -1
  25. package/emotion/cjs/components/Segment/Segment.template-doc.mdx +3 -3
  26. package/emotion/cjs/components/Select/Select.template-doc.mdx +27 -27
  27. package/emotion/cjs/components/Slider/Slider.template-doc.mdx +2 -2
  28. package/emotion/cjs/components/Switch/Switch.template-doc.mdx +3 -3
  29. package/emotion/cjs/components/Table/Table.template-doc.mdx +2 -2
  30. package/emotion/cjs/components/Tabs/Tabs.template-doc.mdx +11 -7
  31. package/emotion/cjs/components/TextArea/TextArea.template-doc.mdx +9 -2
  32. package/emotion/cjs/components/TextField/TextField.template-doc.mdx +117 -32
  33. package/emotion/cjs/components/Toast/Toast.template-doc.mdx +48 -2
  34. package/emotion/cjs/components/Tooltip/Tooltip.template-doc.mdx +19 -4
  35. package/emotion/cjs/components/Tree/Tree.template-doc.mdx +0 -1
  36. package/emotion/es/components/Accordion/Accordion.template-doc.mdx +99 -71
  37. package/emotion/es/components/Autocomplete/Autocomplete.template-doc.mdx +523 -454
  38. package/emotion/es/components/Checkbox/Checkbox.template-doc.mdx +3 -3
  39. package/emotion/es/components/Combobox/Combobox.template-doc.mdx +58 -27
  40. package/emotion/es/components/DatePicker/DatePicker.template-doc.mdx +5 -0
  41. package/emotion/es/components/DatePicker/RangeDate/RangeDate.js +15 -17
  42. package/emotion/es/components/DatePicker/SingleDate/SingleDate.js +6 -10
  43. package/emotion/es/components/DatePicker/hooks/useDatePicker.js +73 -46
  44. package/emotion/es/components/DatePicker/utils/getOriginalDates.js +9 -1
  45. package/emotion/es/components/Dropdown/Dropdown.template-doc.mdx +10 -10
  46. package/emotion/es/components/Flow/Flow.template-doc.mdx +2 -2
  47. package/emotion/es/components/Notification/Notification.template-doc.mdx +10 -1
  48. package/emotion/es/components/NumberFormat/NumberFormat.template-doc.mdx +4 -4
  49. package/emotion/es/components/Radiobox/Radiobox.template-doc.mdx +10 -11
  50. package/emotion/es/components/Range/Range.template-doc.mdx +5 -1
  51. package/emotion/es/components/Segment/Segment.template-doc.mdx +3 -3
  52. package/emotion/es/components/Select/Select.template-doc.mdx +27 -27
  53. package/emotion/es/components/Slider/Slider.template-doc.mdx +2 -2
  54. package/emotion/es/components/Switch/Switch.template-doc.mdx +3 -3
  55. package/emotion/es/components/Table/Table.template-doc.mdx +2 -2
  56. package/emotion/es/components/Tabs/Tabs.template-doc.mdx +11 -7
  57. package/emotion/es/components/TextArea/TextArea.template-doc.mdx +9 -2
  58. package/emotion/es/components/TextField/TextField.template-doc.mdx +117 -32
  59. package/emotion/es/components/Toast/Toast.template-doc.mdx +48 -2
  60. package/emotion/es/components/Tooltip/Tooltip.template-doc.mdx +19 -4
  61. package/emotion/es/components/Tree/Tree.template-doc.mdx +0 -1
  62. package/es/components/Calendar/utils/calendarRangeHelper.js.map +1 -1
  63. package/es/components/DatePicker/RangeDate/RangeDate.js +17 -19
  64. package/es/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
  65. package/es/components/DatePicker/SingleDate/SingleDate.js +7 -11
  66. package/es/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
  67. package/es/components/DatePicker/hooks/useDatePicker.js +73 -46
  68. package/es/components/DatePicker/hooks/useDatePicker.js.map +1 -1
  69. package/es/components/DatePicker/utils/getOriginalDates.js +4 -1
  70. package/es/components/DatePicker/utils/getOriginalDates.js.map +1 -1
  71. package/package.json +4 -4
  72. package/styled-components/cjs/components/Accordion/Accordion.template-doc.mdx +99 -71
  73. package/styled-components/cjs/components/Autocomplete/Autocomplete.template-doc.mdx +523 -454
  74. package/styled-components/cjs/components/Checkbox/Checkbox.template-doc.mdx +3 -3
  75. package/styled-components/cjs/components/Combobox/Combobox.template-doc.mdx +58 -27
  76. package/styled-components/cjs/components/DatePicker/DatePicker.template-doc.mdx +5 -0
  77. package/styled-components/cjs/components/DatePicker/RangeDate/RangeDate.js +15 -17
  78. package/styled-components/cjs/components/DatePicker/SingleDate/SingleDate.js +5 -9
  79. package/styled-components/cjs/components/DatePicker/hooks/useDatePicker.js +73 -46
  80. package/styled-components/cjs/components/DatePicker/utils/getOriginalDates.js +9 -1
  81. package/styled-components/cjs/components/Dropdown/Dropdown.template-doc.mdx +10 -10
  82. package/styled-components/cjs/components/Flow/Flow.template-doc.mdx +2 -2
  83. package/styled-components/cjs/components/Notification/Notification.template-doc.mdx +10 -1
  84. package/styled-components/cjs/components/NumberFormat/NumberFormat.template-doc.mdx +4 -4
  85. package/styled-components/cjs/components/Radiobox/Radiobox.template-doc.mdx +10 -11
  86. package/styled-components/cjs/components/Range/Range.template-doc.mdx +5 -1
  87. package/styled-components/cjs/components/Segment/Segment.template-doc.mdx +3 -3
  88. package/styled-components/cjs/components/Select/Select.template-doc.mdx +27 -27
  89. package/styled-components/cjs/components/Slider/Slider.template-doc.mdx +2 -2
  90. package/styled-components/cjs/components/Switch/Switch.template-doc.mdx +3 -3
  91. package/styled-components/cjs/components/Table/Table.template-doc.mdx +2 -2
  92. package/styled-components/cjs/components/Tabs/Tabs.template-doc.mdx +11 -7
  93. package/styled-components/cjs/components/TextArea/TextArea.template-doc.mdx +9 -2
  94. package/styled-components/cjs/components/TextField/TextField.template-doc.mdx +117 -32
  95. package/styled-components/cjs/components/Toast/Toast.template-doc.mdx +48 -2
  96. package/styled-components/cjs/components/Tooltip/Tooltip.template-doc.mdx +19 -4
  97. package/styled-components/cjs/components/Tree/Tree.template-doc.mdx +0 -1
  98. package/styled-components/es/components/Accordion/Accordion.template-doc.mdx +99 -71
  99. package/styled-components/es/components/Autocomplete/Autocomplete.template-doc.mdx +523 -454
  100. package/styled-components/es/components/Checkbox/Checkbox.template-doc.mdx +3 -3
  101. package/styled-components/es/components/Combobox/Combobox.template-doc.mdx +58 -27
  102. package/styled-components/es/components/DatePicker/DatePicker.template-doc.mdx +5 -0
  103. package/styled-components/es/components/DatePicker/RangeDate/RangeDate.js +15 -17
  104. package/styled-components/es/components/DatePicker/SingleDate/SingleDate.js +6 -10
  105. package/styled-components/es/components/DatePicker/hooks/useDatePicker.js +73 -46
  106. package/styled-components/es/components/DatePicker/utils/getOriginalDates.js +9 -1
  107. package/styled-components/es/components/Dropdown/Dropdown.template-doc.mdx +10 -10
  108. package/styled-components/es/components/Flow/Flow.template-doc.mdx +2 -2
  109. package/styled-components/es/components/Notification/Notification.template-doc.mdx +10 -1
  110. package/styled-components/es/components/NumberFormat/NumberFormat.template-doc.mdx +4 -4
  111. package/styled-components/es/components/Radiobox/Radiobox.template-doc.mdx +10 -11
  112. package/styled-components/es/components/Range/Range.template-doc.mdx +5 -1
  113. package/styled-components/es/components/Segment/Segment.template-doc.mdx +3 -3
  114. package/styled-components/es/components/Select/Select.template-doc.mdx +27 -27
  115. package/styled-components/es/components/Slider/Slider.template-doc.mdx +2 -2
  116. package/styled-components/es/components/Switch/Switch.template-doc.mdx +3 -3
  117. package/styled-components/es/components/Table/Table.template-doc.mdx +2 -2
  118. package/styled-components/es/components/Tabs/Tabs.template-doc.mdx +11 -7
  119. package/styled-components/es/components/TextArea/TextArea.template-doc.mdx +9 -2
  120. package/styled-components/es/components/TextField/TextField.template-doc.mdx +117 -32
  121. package/styled-components/es/components/Toast/Toast.template-doc.mdx +48 -2
  122. package/styled-components/es/components/Tooltip/Tooltip.template-doc.mdx +19 -4
  123. package/styled-components/es/components/Tree/Tree.template-doc.mdx +0 -1
  124. package/types/components/Calendar/utils/calendarRangeHelper.d.ts +1 -1
  125. package/types/components/Calendar/utils/calendarRangeHelper.d.ts.map +1 -1
  126. package/types/components/DatePicker/DatePickerBase.types.d.ts +1 -1
  127. package/types/components/DatePicker/DatePickerBase.types.d.ts.map +1 -1
  128. package/types/components/DatePicker/SingleDate/SingleDate.d.ts.map +1 -1
  129. package/types/components/DatePicker/hooks/useDatePicker.d.ts +1 -1
  130. package/types/components/DatePicker/hooks/useDatePicker.d.ts.map +1 -1
  131. /package/emotion/cjs/components/Combobox/ComboboxOld/{Combobox.template-doc.mdx → Combobox.doc.mdx} +0 -0
  132. /package/emotion/es/components/Combobox/ComboboxOld/{Combobox.template-doc.mdx → Combobox.doc.mdx} +0 -0
  133. /package/styled-components/cjs/components/Combobox/ComboboxOld/{Combobox.template-doc.mdx → Combobox.doc.mdx} +0 -0
  134. /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
- Тип выбора комбобокса - одиночный или множественный зависит от типа `value` и `onChange`. В одиночном value - `string`, в множественном - `Array<string>`.\
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={{ display: "flex", gap: "30px", height: "300px" }}>
89
- <div style={{ width: "300px" }}>
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={{ display: "flex", gap: "30px", height: "300px" }}>
135
- <div style={{ width: "300px" }}>
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={{ display: "flex", gap: "30px", height: "300px" }}>
184
- <div style={{ width: "300px" }}>
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
- Также нужно прокинуть проп `listWidth`, чтобы явно задать ширину списку. Если этого не сделать, то будет взята ширина 100% от блока, на который ведет ссылка портала.
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={{ height: "300px" }} ref={ref}>
239
- <div style={{ width: "300px" }}>
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={{ height: "300px" }}>
287
- <div style={{ width: "300px" }}>
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={{ height: "300px" }}>
333
- <div style={{width: "300px" }}>
334
- <Button text={ alwaysOpened ? 'По умолчанию' : 'Всегда открыт' } onClick={() => setAlwaysOpened(!alwaysOpened)} style={{ marginBottom: '1rem' }} />
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={{ height: "300px" }}>
392
- <div style={{ width: "300px" }}>
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
- Используйте свойство `name` только когда это необходимо. Оно влияет на выходной тип в `onChange`.
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={{ display: "flex", gap: "30px", height: "300px" }}>
466
- <form onSubmit={handleSubmit(onSubmit)} style={{ display: 'flex', flexDirection: 'column', gap: '10px' }}>
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={{ display: "flex", gap: "30px", height: "300px" }}>
529
- <form onSubmit={handleSubmit(onSubmit)} style={{ display: 'flex', flexDirection: 'column', gap: '10px' }}>
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={{ display: "flex", gap: "30px", height: "300px" }}>
602
- <form onSubmit={onSubmit} style={{ display: 'flex', flexDirection: 'column', gap: '20px' }}>
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`.
@@ -124,7 +124,7 @@ var datePickerRangeRoot = exports.datePickerRangeRoot = function datePickerRange
124
124
  _onBlurSecondTextfield = _ref.onBlurSecondTextfield,
125
125
  rest = _objectWithoutProperties(_ref, _excluded);
126
126
  if (externalValue !== null && externalValue !== void 0 && externalValue.length && (defaultFirstDate || defaultSecondDate)) {
127
- console.error("Controlled DatePicker can't have `default{First|Second}Date`, use `value` instead");
127
+ throw new Error("Controlled DatePicker can't have `default{First|Second}Date`, use `value` instead");
128
128
  }
129
129
  var rangeRef = ref && 'current' in ref ? ref : /*#__PURE__*/(0, _react.createRef)();
130
130
  var rootRef = (0, _react.useRef)(null);
@@ -142,16 +142,14 @@ var datePickerRangeRoot = exports.datePickerRangeRoot = function datePickerRange
142
142
  _useState6 = _slicedToArray(_useState5, 2),
143
143
  isInnerOpen = _useState6[0],
144
144
  setIsInnerOpen = _useState6[1];
145
- var dateFormatDelimiter = (0, _react.useCallback)(function () {
146
- return (0, _dateHelper.getDateFormatDelimiter)(format);
147
- }, [format]);
145
+ var dateFormatDelimiter = (0, _dateHelper.getDateFormatDelimiter)(format);
148
146
  var _ref2 = externalValue || [],
149
147
  _ref3 = _slicedToArray(_ref2, 2),
150
148
  startExternalValue = _ref3[0],
151
149
  endExternalValue = _ref3[1];
152
150
  var startInitialValues = (0, _utils3.getFormattedDates)({
153
151
  value: startExternalValue || defaultFirstDate,
154
- delimiter: dateFormatDelimiter(),
152
+ delimiter: dateFormatDelimiter,
155
153
  lang: lang,
156
154
  format: format,
157
155
  includeEdgeDates: includeEdgeDates,
@@ -160,7 +158,7 @@ var datePickerRangeRoot = exports.datePickerRangeRoot = function datePickerRange
160
158
  });
161
159
  var endInitialValues = (0, _utils3.getFormattedDates)({
162
160
  value: endExternalValue || defaultSecondDate,
163
- delimiter: dateFormatDelimiter(),
161
+ delimiter: dateFormatDelimiter,
164
162
  lang: lang,
165
163
  format: format,
166
164
  includeEdgeDates: includeEdgeDates,
@@ -243,12 +241,12 @@ var datePickerRangeRoot = exports.datePickerRangeRoot = function datePickerRange
243
241
  min: min,
244
242
  max: max,
245
243
  includeEdgeDates: includeEdgeDates,
244
+ dateFormatDelimiter: dateFormatDelimiter,
246
245
  setCorrectDates: setCorrectStartDates,
247
246
  setInputValue: setFirstInputValue,
248
247
  setCalendarValue: setCalendarFirstValue,
249
248
  onChangeValue: onChangeFirstValue,
250
- onCommitDate: onCommitFirstDate,
251
- dateFormatDelimiter: dateFormatDelimiter
249
+ onCommitDate: onCommitFirstDate
252
250
  }),
253
251
  handleChangeFirstValue = _useDatePicker.handleChangeValue,
254
252
  handleFirstCalendarPick = _useDatePicker.handleCalendarPick,
@@ -268,12 +266,12 @@ var datePickerRangeRoot = exports.datePickerRangeRoot = function datePickerRange
268
266
  min: min,
269
267
  max: max,
270
268
  includeEdgeDates: includeEdgeDates,
269
+ dateFormatDelimiter: dateFormatDelimiter,
271
270
  setCorrectDates: setCorrectEndDates,
272
271
  setInputValue: setSecondInputValue,
273
272
  setCalendarValue: setCalendarSecondValue,
274
273
  onChangeValue: onChangeSecondValue,
275
- onCommitDate: onCommitSecondDate,
276
- dateFormatDelimiter: dateFormatDelimiter
274
+ onCommitDate: onCommitSecondDate
277
275
  }),
278
276
  handleChangeSecondValue = _useDatePicker2.handleChangeValue,
279
277
  handleSecondCalendarPick = _useDatePicker2.handleCalendarPick,
@@ -318,7 +316,7 @@ var datePickerRangeRoot = exports.datePickerRangeRoot = function datePickerRange
318
316
  }
319
317
  var _getFormattedDates = (0, _utils3.getFormattedDates)({
320
318
  value: inputFirstValue,
321
- delimiter: dateFormatDelimiter(),
319
+ delimiter: dateFormatDelimiter,
322
320
  lang: lang,
323
321
  format: format,
324
322
  includeEdgeDates: includeEdgeDates,
@@ -328,7 +326,7 @@ var datePickerRangeRoot = exports.datePickerRangeRoot = function datePickerRange
328
326
  startOriginalDate = _getFormattedDates.originalDate;
329
327
  var _getFormattedDates2 = (0, _utils3.getFormattedDates)({
330
328
  value: inputSecondValue,
331
- delimiter: dateFormatDelimiter(),
329
+ delimiter: dateFormatDelimiter,
332
330
  lang: lang,
333
331
  format: format,
334
332
  includeEdgeDates: includeEdgeDates,
@@ -348,7 +346,7 @@ var datePickerRangeRoot = exports.datePickerRangeRoot = function datePickerRange
348
346
  endValue = _getSortedValues2[1];
349
347
  var _getFormattedDates3 = (0, _utils3.getFormattedDates)({
350
348
  value: startValue || null,
351
- delimiter: dateFormatDelimiter(),
349
+ delimiter: dateFormatDelimiter,
352
350
  lang: lang,
353
351
  format: format,
354
352
  includeEdgeDates: includeEdgeDates,
@@ -358,7 +356,7 @@ var datePickerRangeRoot = exports.datePickerRangeRoot = function datePickerRange
358
356
  startFormattedDate = _getFormattedDates3.formattedDate;
359
357
  var _getFormattedDates4 = (0, _utils3.getFormattedDates)({
360
358
  value: endValue || null,
361
- delimiter: dateFormatDelimiter(),
359
+ delimiter: dateFormatDelimiter,
362
360
  lang: lang,
363
361
  format: format,
364
362
  includeEdgeDates: includeEdgeDates,
@@ -376,7 +374,7 @@ var datePickerRangeRoot = exports.datePickerRangeRoot = function datePickerRange
376
374
  isCalendarOpen: isInnerOpen,
377
375
  format: format,
378
376
  maskWithFormat: maskWithFormat,
379
- delimiter: dateFormatDelimiter(),
377
+ delimiter: dateFormatDelimiter,
380
378
  closeOnEsc: closeOnEsc,
381
379
  onToggle: handleToggle
382
380
  }),
@@ -490,10 +488,10 @@ var datePickerRangeRoot = exports.datePickerRangeRoot = function datePickerRange
490
488
  updateExternalSecondDate(endExternalValue || undefined);
491
489
  }, [endExternalValue, format, lang]);
492
490
  (0, _react.useLayoutEffect)(function () {
493
- !startExternalValue && updateExternalFirstDate(defaultFirstDate);
491
+ updateExternalFirstDate(defaultFirstDate);
494
492
  }, [defaultFirstDate, format, lang]);
495
493
  (0, _react.useLayoutEffect)(function () {
496
- !endExternalValue && updateExternalSecondDate(defaultSecondDate);
494
+ updateExternalSecondDate(defaultSecondDate);
497
495
  }, [defaultSecondDate, format, lang]);
498
496
  var RootWrapper = (0, _react.useCallback)(function (_ref6) {
499
497
  var children = _ref6.children;
@@ -103,7 +103,7 @@ var datePickerRoot = exports.datePickerRoot = function datePickerRoot(Root) {
103
103
  autoComplete = _ref.autoComplete,
104
104
  rest = _objectWithoutProperties(_ref, _excluded);
105
105
  if (value && defaultDate) {
106
- console.error("Controlled DatePicker can't have `defaultDate`, use `value` instead");
106
+ throw new Error("Controlled DatePicker can't have `defaultDate`, use `value` instead");
107
107
  }
108
108
  var inputRef = (0, _react.useRef)(null);
109
109
  var innerRef = (0, _react.useRef)(null);
@@ -111,12 +111,10 @@ var datePickerRoot = exports.datePickerRoot = function datePickerRoot(Root) {
111
111
  _useState2 = _slicedToArray(_useState, 2),
112
112
  isInnerOpen = _useState2[0],
113
113
  setIsInnerOpen = _useState2[1];
114
- var dateFormatDelimiter = (0, _react.useCallback)(function () {
115
- return (0, _dateHelper.getDateFormatDelimiter)(format);
116
- }, [format]);
114
+ var dateFormatDelimiter = (0, _dateHelper.getDateFormatDelimiter)(format);
117
115
  var initialValues = (0, _utils2.getFormattedDates)({
118
116
  value: value || defaultDate,
119
- delimiter: dateFormatDelimiter(),
117
+ delimiter: dateFormatDelimiter,
120
118
  lang: lang,
121
119
  format: format,
122
120
  includeEdgeDates: includeEdgeDates,
@@ -186,7 +184,7 @@ var datePickerRoot = exports.datePickerRoot = function datePickerRoot(Root) {
186
184
  isCalendarOpen: isInnerOpen,
187
185
  format: format,
188
186
  maskWithFormat: maskWithFormat,
189
- delimiter: dateFormatDelimiter(),
187
+ delimiter: dateFormatDelimiter,
190
188
  closeOnEsc: closeOnEsc,
191
189
  onToggle: handleToggle
192
190
  }),
@@ -234,9 +232,7 @@ var datePickerRoot = exports.datePickerRoot = function datePickerRoot(Root) {
234
232
  updateExternalDate(value);
235
233
  }, [value, format, lang]);
236
234
  (0, _react.useLayoutEffect)(function () {
237
- if (!value) {
238
- updateExternalDate(defaultDate);
239
- }
235
+ updateExternalDate(defaultDate);
240
236
  }, [defaultDate, format, lang]);
241
237
  return /*#__PURE__*/_react["default"].createElement(Root, _extends({
242
238
  view: view,
@@ -23,10 +23,10 @@ var useDatePicker = exports.useDatePicker = function useDatePicker(_ref) {
23
23
  max = _ref.max,
24
24
  includeEdgeDates = _ref.includeEdgeDates,
25
25
  maskWithFormat = _ref.maskWithFormat,
26
+ dateFormatDelimiter = _ref.dateFormatDelimiter,
26
27
  setCorrectDates = _ref.setCorrectDates,
27
28
  setInputValue = _ref.setInputValue,
28
29
  setCalendarValue = _ref.setCalendarValue,
29
- dateFormatDelimiter = _ref.dateFormatDelimiter,
30
30
  onChangeValue = _ref.onChangeValue,
31
31
  onCommitDate = _ref.onCommitDate,
32
32
  onChange = _ref.onChange;
@@ -51,11 +51,11 @@ var useDatePicker = exports.useDatePicker = function useDatePicker(_ref) {
51
51
  return;
52
52
  }
53
53
  var value = event.target.value;
54
- var newValue = maskWithFormat ? (0, _utils2.getMaskedDateOnInput)(value, format, dateFormatDelimiter(), currentValue) : value;
54
+ var newValue = maskWithFormat ? (0, _utils2.getMaskedDateOnInput)(value, format, dateFormatDelimiter, currentValue) : value;
55
55
  var _getFormattedDates = (0, _utils2.getFormattedDates)({
56
56
  value: newValue,
57
57
  lang: lang,
58
- delimiter: dateFormatDelimiter(),
58
+ delimiter: dateFormatDelimiter,
59
59
  format: format,
60
60
  includeEdgeDates: includeEdgeDates,
61
61
  min: min,
@@ -70,18 +70,24 @@ var useDatePicker = exports.useDatePicker = function useDatePicker(_ref) {
70
70
  input: formattedDate
71
71
  });
72
72
  var dateInfo = getQuarterInfo(originalDate);
73
- onCommitDate === null || onCommitDate === void 0 || onCommitDate(formattedDate, false, true, dateInfo, originalDate, isoDate);
73
+ if (onCommitDate) {
74
+ onCommitDate(formattedDate, false, true, dateInfo, originalDate, isoDate);
75
+ }
74
76
  setCalendarValue(originalDate);
75
77
  setInputValue(formattedDate);
76
- onChangeValue === null || onChangeValue === void 0 || onChangeValue(event, formattedDate, originalDate, isoDate);
77
- onChange === null || onChange === void 0 || onChange({
78
- target: {
79
- value: formattedDate,
80
- originalDate: originalDate,
81
- isoDate: isoDate,
82
- name: name
83
- }
84
- });
78
+ if (onChangeValue) {
79
+ onChangeValue(event, formattedDate, originalDate, isoDate);
80
+ }
81
+ if (onChange) {
82
+ onChange({
83
+ target: {
84
+ value: formattedDate,
85
+ originalDate: originalDate,
86
+ isoDate: isoDate,
87
+ name: name
88
+ }
89
+ });
90
+ }
85
91
  return;
86
92
  }
87
93
  if (formattedDate === '') {
@@ -92,15 +98,19 @@ var useDatePicker = exports.useDatePicker = function useDatePicker(_ref) {
92
98
  }
93
99
  setCalendarValue(originalDate);
94
100
  setInputValue(formattedDate);
95
- onChangeValue === null || onChangeValue === void 0 || onChangeValue(event, formattedDate, originalDate, isoDate);
96
- onChange === null || onChange === void 0 || onChange({
97
- target: {
98
- value: formattedDate,
99
- originalDate: originalDate,
100
- isoDate: isoDate,
101
- name: name
102
- }
103
- });
101
+ if (onChangeValue) {
102
+ onChangeValue(event, formattedDate, originalDate, isoDate);
103
+ }
104
+ if (onChange) {
105
+ onChange({
106
+ target: {
107
+ value: formattedDate,
108
+ originalDate: originalDate,
109
+ isoDate: isoDate,
110
+ name: name
111
+ }
112
+ });
113
+ }
104
114
  };
105
115
  var handleSearch = function handleSearch(date) {
106
116
  if (disabled || readOnly) {
@@ -109,12 +119,15 @@ var useDatePicker = exports.useDatePicker = function useDatePicker(_ref) {
109
119
  if (!date) {
110
120
  setCalendarValue(undefined);
111
121
  setInputValue('');
112
- return onCommitDate === null || onCommitDate === void 0 ? void 0 : onCommitDate('', false, true, undefined, undefined, '');
122
+ if (onCommitDate) {
123
+ onCommitDate('', false, true, undefined, undefined, '');
124
+ }
125
+ return;
113
126
  }
114
127
  var _getFormattedDates2 = (0, _utils2.getFormattedDates)({
115
128
  value: date,
116
129
  lang: lang,
117
- delimiter: dateFormatDelimiter(),
130
+ delimiter: dateFormatDelimiter,
118
131
  format: format,
119
132
  includeEdgeDates: includeEdgeDates,
120
133
  min: min,
@@ -125,7 +138,9 @@ var useDatePicker = exports.useDatePicker = function useDatePicker(_ref) {
125
138
  originalDate = _getFormattedDates2.originalDate;
126
139
  if (originalDate) {
127
140
  var dateInfo = getQuarterInfo(originalDate);
128
- onCommitDate === null || onCommitDate === void 0 || onCommitDate(formattedDate, false, true, dateInfo, originalDate, isoDate);
141
+ if (onCommitDate) {
142
+ onCommitDate(formattedDate, false, true, dateInfo, originalDate, isoDate);
143
+ }
129
144
  }
130
145
  };
131
146
  var handleCalendarPick = function handleCalendarPick(date, dateInfo) {
@@ -139,16 +154,22 @@ var useDatePicker = exports.useDatePicker = function useDatePicker(_ref) {
139
154
  calendar: date || undefined,
140
155
  input: ''
141
156
  });
142
- onChangeValue === null || onChangeValue === void 0 || onChangeValue(null, '', date, '');
143
- onChange === null || onChange === void 0 || onChange({
144
- target: {
145
- value: '',
146
- originalDate: date,
147
- isoDate: '',
148
- name: name
149
- }
150
- });
151
- onCommitDate === null || onCommitDate === void 0 || onCommitDate('', false, true, dateInfo, date || undefined, '');
157
+ if (onChangeValue) {
158
+ onChangeValue(null, '', date, '');
159
+ }
160
+ if (onChange) {
161
+ onChange({
162
+ target: {
163
+ value: '',
164
+ originalDate: date,
165
+ isoDate: '',
166
+ name: name
167
+ }
168
+ });
169
+ }
170
+ if (onCommitDate) {
171
+ onCommitDate('', false, true, dateInfo, date || undefined, '');
172
+ }
152
173
  return;
153
174
  }
154
175
  _datejs.customDayjs.locale(lang);
@@ -160,22 +181,28 @@ var useDatePicker = exports.useDatePicker = function useDatePicker(_ref) {
160
181
  calendar: date,
161
182
  input: formattedDate
162
183
  });
163
- onChangeValue === null || onChangeValue === void 0 || onChangeValue(null, formattedDate, date, isoDate);
164
- onChange === null || onChange === void 0 || onChange({
165
- target: {
166
- value: formattedDate,
167
- originalDate: date,
168
- isoDate: isoDate,
169
- name: name
170
- }
171
- });
172
- onCommitDate === null || onCommitDate === void 0 || onCommitDate(formattedDate, false, true, dateInfo, date, isoDate);
184
+ if (onChangeValue) {
185
+ onChangeValue(null, formattedDate, date, isoDate);
186
+ }
187
+ if (onChange) {
188
+ onChange({
189
+ target: {
190
+ value: formattedDate,
191
+ originalDate: date,
192
+ isoDate: isoDate,
193
+ name: name
194
+ }
195
+ });
196
+ }
197
+ if (onCommitDate) {
198
+ onCommitDate(formattedDate, false, true, dateInfo, date, isoDate);
199
+ }
173
200
  };
174
201
  var updateExternalDate = function updateExternalDate(externalDate) {
175
202
  var _getFormattedDates3 = (0, _utils2.getFormattedDates)({
176
203
  value: externalDate || null,
177
204
  lang: lang,
178
- delimiter: dateFormatDelimiter(),
205
+ delimiter: dateFormatDelimiter,
179
206
  format: format,
180
207
  includeEdgeDates: includeEdgeDates,
181
208
  min: min,
@@ -5,6 +5,12 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.getOriginalDates = void 0;
7
7
  var _datejs = /*#__PURE__*/require("../../../utils/datejs");
8
+ 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); }
9
+ 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; }
10
+ 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; }
11
+ 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; }
12
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
13
+ 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); }
8
14
  var initialValueStructure = {
9
15
  isoDate: '',
10
16
  originalDate: undefined,
@@ -32,5 +38,7 @@ var getOriginalDates = exports.getOriginalDates = function getOriginalDates(valu
32
38
  originalDate: originalDate
33
39
  };
34
40
  }
35
- return initialValueStructure;
41
+ return _objectSpread(_objectSpread({}, initialValueStructure), {}, {
42
+ formattedDate: value
43
+ });
36
44
  };