@primer/components 0.0.0-2021929114541 → 0.0.0-202192923313

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 (165) hide show
  1. package/CHANGELOG.md +1 -23
  2. package/dist/browser.esm.js +49 -53
  3. package/dist/browser.esm.js.map +1 -1
  4. package/dist/browser.umd.js +46 -50
  5. package/dist/browser.umd.js.map +1 -1
  6. package/lib/ActionList/Item.d.ts +0 -6
  7. package/lib/ActionList/Item.js +1 -5
  8. package/lib/AnchoredOverlay/AnchoredOverlay.d.ts +4 -2
  9. package/lib/Autocomplete/Autocomplete.d.ts +8 -6
  10. package/lib/Autocomplete/AutocompleteInput.d.ts +8 -6
  11. package/lib/Button/Button.d.ts +4 -4
  12. package/lib/Button/ButtonClose.d.ts +21 -21
  13. package/lib/Button/ButtonDanger.d.ts +4 -4
  14. package/lib/Button/ButtonInvisible.d.ts +4 -4
  15. package/lib/Button/ButtonOutline.d.ts +4 -4
  16. package/lib/Button/ButtonPrimary.d.ts +4 -4
  17. package/lib/CircleOcticon.d.ts +19 -19
  18. package/lib/DatePicker/DatePicker.d.ts +48 -0
  19. package/lib/DatePicker/DatePicker.js +106 -0
  20. package/lib/DatePicker/DatePickerAnchor.d.ts +5 -0
  21. package/lib/DatePicker/DatePickerAnchor.js +223 -0
  22. package/lib/DatePicker/DatePickerOverlay.d.ts +3 -0
  23. package/lib/DatePicker/DatePickerOverlay.js +48 -0
  24. package/lib/DatePicker/DatePickerPanel.d.ts +2 -0
  25. package/lib/DatePicker/DatePickerPanel.js +126 -0
  26. package/lib/DatePicker/Day.d.ts +14 -0
  27. package/lib/DatePicker/Day.js +192 -0
  28. package/lib/DatePicker/Month.d.ts +9 -0
  29. package/lib/DatePicker/Month.js +122 -0
  30. package/lib/DatePicker/dateParser.d.ts +11 -0
  31. package/lib/DatePicker/dateParser.js +192 -0
  32. package/lib/DatePicker/index.d.ts +2 -0
  33. package/lib/{experiments.js → DatePicker/index.js} +3 -3
  34. package/lib/DatePicker/useDatePicker.d.ts +89 -0
  35. package/lib/DatePicker/useDatePicker.js +439 -0
  36. package/lib/Dialog.d.ts +21 -21
  37. package/lib/Dropdown.d.ts +82 -82
  38. package/lib/DropdownMenu/DropdownButton.d.ts +23 -23
  39. package/lib/FilterList.d.ts +19 -19
  40. package/lib/Position.d.ts +4 -4
  41. package/lib/SelectMenu/SelectMenu.d.ts +107 -105
  42. package/lib/SelectMenu/SelectMenuItem.d.ts +1 -1
  43. package/lib/SelectMenu/SelectMenuModal.d.ts +1 -1
  44. package/lib/TextInputWithTokens.d.ts +8 -10
  45. package/lib/TextInputWithTokens.js +29 -102
  46. package/lib/Timeline.d.ts +19 -19
  47. package/lib/Token/AvatarToken.d.ts +1 -1
  48. package/lib/Token/IssueLabelToken.d.ts +1 -1
  49. package/lib/Token/Token.d.ts +1 -1
  50. package/lib/Token/Token.js +2 -13
  51. package/lib/Token/TokenBase.js +4 -0
  52. package/lib/Token/_RemoveTokenButton.js +2 -15
  53. package/lib/_TextInputWrapper.js +1 -1
  54. package/lib/hooks/useDebounce.d.ts +2 -0
  55. package/lib/hooks/useDebounce.js +24 -0
  56. package/lib/sx.d.ts +0 -2
  57. package/lib/sx.js +0 -8
  58. package/lib/theme-preval.js +2 -2
  59. package/lib/utils/testing.d.ts +1 -1
  60. package/lib-esm/ActionList/Item.d.ts +0 -6
  61. package/lib-esm/ActionList/Item.js +1 -5
  62. package/lib-esm/AnchoredOverlay/AnchoredOverlay.d.ts +4 -2
  63. package/lib-esm/Autocomplete/Autocomplete.d.ts +8 -6
  64. package/lib-esm/Autocomplete/AutocompleteInput.d.ts +8 -6
  65. package/lib-esm/Button/Button.d.ts +4 -4
  66. package/lib-esm/Button/ButtonClose.d.ts +21 -21
  67. package/lib-esm/Button/ButtonDanger.d.ts +4 -4
  68. package/lib-esm/Button/ButtonInvisible.d.ts +4 -4
  69. package/lib-esm/Button/ButtonOutline.d.ts +4 -4
  70. package/lib-esm/Button/ButtonPrimary.d.ts +4 -4
  71. package/lib-esm/CircleOcticon.d.ts +19 -19
  72. package/lib-esm/DatePicker/DatePicker.d.ts +48 -0
  73. package/lib-esm/DatePicker/DatePicker.js +89 -0
  74. package/lib-esm/DatePicker/DatePickerAnchor.d.ts +5 -0
  75. package/lib-esm/DatePicker/DatePickerAnchor.js +196 -0
  76. package/lib-esm/DatePicker/DatePickerOverlay.d.ts +3 -0
  77. package/lib-esm/DatePicker/DatePickerOverlay.js +29 -0
  78. package/lib-esm/DatePicker/DatePickerPanel.d.ts +2 -0
  79. package/lib-esm/DatePicker/DatePickerPanel.js +100 -0
  80. package/lib-esm/DatePicker/Day.d.ts +14 -0
  81. package/lib-esm/DatePicker/Day.js +169 -0
  82. package/lib-esm/DatePicker/Month.d.ts +9 -0
  83. package/lib-esm/DatePicker/Month.js +98 -0
  84. package/lib-esm/DatePicker/dateParser.d.ts +11 -0
  85. package/lib-esm/DatePicker/dateParser.js +178 -0
  86. package/lib-esm/DatePicker/index.d.ts +2 -0
  87. package/lib-esm/DatePicker/index.js +1 -0
  88. package/lib-esm/DatePicker/useDatePicker.d.ts +89 -0
  89. package/lib-esm/DatePicker/useDatePicker.js +408 -0
  90. package/lib-esm/Dialog.d.ts +21 -21
  91. package/lib-esm/Dropdown.d.ts +82 -82
  92. package/lib-esm/DropdownMenu/DropdownButton.d.ts +23 -23
  93. package/lib-esm/FilterList.d.ts +19 -19
  94. package/lib-esm/Position.d.ts +4 -4
  95. package/lib-esm/SelectMenu/SelectMenu.d.ts +107 -105
  96. package/lib-esm/SelectMenu/SelectMenuItem.d.ts +1 -1
  97. package/lib-esm/SelectMenu/SelectMenuModal.d.ts +1 -1
  98. package/lib-esm/TextInputWithTokens.d.ts +8 -10
  99. package/lib-esm/TextInputWithTokens.js +30 -101
  100. package/lib-esm/Timeline.d.ts +19 -19
  101. package/lib-esm/Token/AvatarToken.d.ts +1 -1
  102. package/lib-esm/Token/IssueLabelToken.d.ts +1 -1
  103. package/lib-esm/Token/Token.d.ts +1 -1
  104. package/lib-esm/Token/Token.js +2 -13
  105. package/lib-esm/Token/TokenBase.js +4 -0
  106. package/lib-esm/Token/_RemoveTokenButton.js +2 -11
  107. package/lib-esm/_TextInputWrapper.js +1 -1
  108. package/lib-esm/hooks/useDebounce.d.ts +2 -0
  109. package/lib-esm/hooks/useDebounce.js +16 -0
  110. package/lib-esm/sx.d.ts +0 -2
  111. package/lib-esm/sx.js +1 -3
  112. package/lib-esm/theme-preval.js +2 -2
  113. package/lib-esm/utils/testing.d.ts +1 -1
  114. package/package.json +14 -14
  115. package/lib/ActionList2/Description.d.ts +0 -6
  116. package/lib/ActionList2/Description.js +0 -53
  117. package/lib/ActionList2/Divider.d.ts +0 -5
  118. package/lib/ActionList2/Divider.js +0 -33
  119. package/lib/ActionList2/Group.d.ts +0 -11
  120. package/lib/ActionList2/Group.js +0 -55
  121. package/lib/ActionList2/Header.d.ts +0 -26
  122. package/lib/ActionList2/Header.js +0 -55
  123. package/lib/ActionList2/Item.d.ts +0 -48
  124. package/lib/ActionList2/Item.js +0 -204
  125. package/lib/ActionList2/List.d.ts +0 -26
  126. package/lib/ActionList2/List.js +0 -56
  127. package/lib/ActionList2/Selection.d.ts +0 -5
  128. package/lib/ActionList2/Selection.js +0 -73
  129. package/lib/ActionList2/Visuals.d.ts +0 -11
  130. package/lib/ActionList2/Visuals.js +0 -90
  131. package/lib/ActionList2/hacks.d.ts +0 -30
  132. package/lib/ActionList2/hacks.js +0 -38
  133. package/lib/ActionList2/index.d.ts +0 -28
  134. package/lib/ActionList2/index.js +0 -42
  135. package/lib/experiments.d.ts +0 -1
  136. package/lib/utils/create-slots.d.ts +0 -17
  137. package/lib/utils/create-slots.js +0 -105
  138. package/lib/utils/use-force-update.d.ts +0 -1
  139. package/lib/utils/use-force-update.js +0 -19
  140. package/lib-esm/ActionList2/Description.d.ts +0 -6
  141. package/lib-esm/ActionList2/Description.js +0 -37
  142. package/lib-esm/ActionList2/Divider.d.ts +0 -5
  143. package/lib-esm/ActionList2/Divider.js +0 -21
  144. package/lib-esm/ActionList2/Group.d.ts +0 -11
  145. package/lib-esm/ActionList2/Group.js +0 -38
  146. package/lib-esm/ActionList2/Header.d.ts +0 -26
  147. package/lib-esm/ActionList2/Header.js +0 -45
  148. package/lib-esm/ActionList2/Item.d.ts +0 -48
  149. package/lib-esm/ActionList2/Item.js +0 -176
  150. package/lib-esm/ActionList2/List.d.ts +0 -26
  151. package/lib-esm/ActionList2/List.js +0 -38
  152. package/lib-esm/ActionList2/Selection.d.ts +0 -5
  153. package/lib-esm/ActionList2/Selection.js +0 -55
  154. package/lib-esm/ActionList2/Visuals.d.ts +0 -11
  155. package/lib-esm/ActionList2/Visuals.js +0 -68
  156. package/lib-esm/ActionList2/hacks.d.ts +0 -30
  157. package/lib-esm/ActionList2/hacks.js +0 -30
  158. package/lib-esm/ActionList2/index.d.ts +0 -28
  159. package/lib-esm/ActionList2/index.js +0 -29
  160. package/lib-esm/experiments.d.ts +0 -1
  161. package/lib-esm/experiments.js +0 -2
  162. package/lib-esm/utils/create-slots.d.ts +0 -17
  163. package/lib-esm/utils/create-slots.js +0 -84
  164. package/lib-esm/utils/use-force-update.d.ts +0 -1
  165. package/lib-esm/utils/use-force-update.js +0 -6
@@ -0,0 +1,408 @@
1
+ import { CheckIcon, TrashIcon } from '@primer/octicons-react';
2
+ import { isEqual, isAfter, isBefore, addMonths, subMonths, isToday, isWeekend, differenceInDays, addDays, subDays } from 'date-fns';
3
+ import deepmerge from 'deepmerge';
4
+ import React, { createContext, useCallback, useContext, useMemo, useEffect, useState } from 'react';
5
+ import { Text, useConfirm } from '..';
6
+ import { formatDate } from './dateParser';
7
+ const DatePickerContext = /*#__PURE__*/createContext(null);
8
+
9
+ const useDatePicker = date => {
10
+ const value = useContext(DatePickerContext);
11
+ const [selected, setSelected] = useState(false);
12
+ const today = date ? isToday(date) : false;
13
+
14
+ if (!value) {
15
+ throw new Error('useDatePicker must be used inside a DatePickerProvider');
16
+ }
17
+
18
+ useEffect(() => {
19
+ if (date) {
20
+ if (value.hoverRange) {
21
+ if (isRangeSelection(value.hoverRange)) {
22
+ if (isEqual(date, value.hoverRange.from)) {
23
+ setSelected('start');
24
+ } else if (value.hoverRange.to && isEqual(date, value.hoverRange.to)) {
25
+ setSelected('end');
26
+ } else if (isAfter(date, value.hoverRange.from) && value.hoverRange.to && isBefore(date, value.hoverRange.to)) {
27
+ setSelected('middle');
28
+ } else {
29
+ setSelected(false);
30
+ }
31
+ }
32
+ } else if (value.selection) {
33
+ if (isMultiSelection(value.selection)) {
34
+ setSelected(!!value.selection.find(d => isEqual(d, date)));
35
+ } else if (isRangeSelection(value.selection)) {
36
+ if (isEqual(date, value.selection.from)) {
37
+ setSelected('start');
38
+ } else if (value.selection.to && isEqual(date, value.selection.to)) {
39
+ setSelected('end');
40
+ } else if (isAfter(date, value.selection.from) && value.selection.to && isBefore(date, value.selection.to)) {
41
+ setSelected('middle');
42
+ } else {
43
+ setSelected(false);
44
+ }
45
+ } else {
46
+ setSelected(isEqual(date, value.selection));
47
+ }
48
+ }
49
+ }
50
+ }, [date, value.hoverRange, value.selection, today]);
51
+ let blocked,
52
+ disabled = false;
53
+
54
+ if (date) {
55
+ // Determine if date is blocked out
56
+ if (value.configuration.blockedDates) {
57
+ blocked = !!value.configuration.blockedDates.find(d => isEqual(d, date));
58
+ } // Determine if date is disabled
59
+
60
+
61
+ if (value.configuration.minDate || value.configuration.maxDate || value.configuration.disableWeekends) {
62
+ disabled = (value.configuration.minDate ? isBefore(date, value.configuration.minDate) : false) || (value.configuration.maxDate ? isAfter(date, value.configuration.maxDate) : false) || (value.configuration.disableWeekends ? isWeekend(date) : false);
63
+ }
64
+ }
65
+
66
+ return { ...value,
67
+ blocked,
68
+ disabled,
69
+ selected,
70
+ today
71
+ };
72
+ };
73
+
74
+ export default useDatePicker;
75
+ export function isSingleSelection(selection) {
76
+ return selection instanceof Date;
77
+ }
78
+ export function isMultiSelection(selection) {
79
+ return Array.isArray(selection);
80
+ }
81
+ export function isRangeSelection(selection) {
82
+ return !!selection.from;
83
+ }
84
+ export function isStringRangeSelection(selection) {
85
+ return !!selection.from;
86
+ }
87
+
88
+ function parseSelection(selection, variant) {
89
+ if (!selection) return;
90
+
91
+ if (variant === 'multi') {
92
+ if (isMultiSelection(selection)) {
93
+ const parsedSelection = [];
94
+
95
+ for (const d of selection) {
96
+ parsedSelection.push(new Date(new Date(d).toDateString()));
97
+ }
98
+
99
+ return parsedSelection.sort((a, b) => a.getTime() - b.getTime());
100
+ } else if (selection instanceof Date) {
101
+ return [new Date(new Date(selection).toDateString())];
102
+ } else if (isRangeSelection(selection)) {
103
+ const parsedSelection = [];
104
+ parsedSelection.push(new Date(new Date(selection.from).toDateString()));
105
+
106
+ if (selection.to) {
107
+ parsedSelection.push(new Date(new Date(selection.to).toDateString()));
108
+ }
109
+
110
+ return parsedSelection.sort((a, b) => a.getTime() - b.getTime());
111
+ }
112
+ } else if (variant === 'range') {
113
+ if (isRangeSelection(selection)) {
114
+ return {
115
+ from: new Date(new Date(selection.from).toDateString()),
116
+ to: selection.to ? new Date(new Date(selection.to).toDateString()) : null
117
+ };
118
+ } else if (isMultiSelection(selection)) {
119
+ return {
120
+ from: new Date(new Date(selection[0]).toDateString()),
121
+ to: selection[1] ? new Date(new Date(selection[1]).toDateString()) : null
122
+ };
123
+ } else if (selection instanceof Date) {
124
+ return {
125
+ from: new Date(new Date(selection).toDateString()),
126
+ to: null
127
+ };
128
+ }
129
+ } else {
130
+ if (selection instanceof Date) {
131
+ return new Date(new Date(selection).toDateString());
132
+ } else if (isMultiSelection(selection)) {
133
+ return new Date(new Date(selection[0]).toDateString());
134
+ } else if (isRangeSelection(selection)) {
135
+ return new Date(new Date(selection.from).toDateString());
136
+ } else {
137
+ return;
138
+ }
139
+ }
140
+ }
141
+
142
+ const defaultConfiguration = {
143
+ anchorVariant: 'button',
144
+ confirmation: false,
145
+ confirmUnsavedClose: false,
146
+ disableWeekends: false,
147
+ iconPlacement: 'start',
148
+ placeholder: 'Select a Date...',
149
+ showInputPrompt: false,
150
+ variant: 'single',
151
+ view: '2-month',
152
+ weekStartsOn: 'Sunday'
153
+ };
154
+ export const DatePickerProvider = ({
155
+ configuration: externalConfig = {},
156
+ children,
157
+ closePicker,
158
+ value
159
+ }) => {
160
+ const [configuration, setConfiguration] = useState(deepmerge(defaultConfiguration, externalConfig));
161
+ const [previousSelection, setPreviousSelection] = useState(parseSelection(value, configuration.variant));
162
+ const [isDirty, setIsDirty] = useState(false);
163
+ const [selection, setSelection] = useState(parseSelection(value, configuration.variant));
164
+ const [hoverRange, setHoverRange] = useState(null);
165
+ const [currentViewingDate, setCurrentViewingDate] = useState(new Date());
166
+ const confirm = useConfirm();
167
+ useEffect(() => {
168
+ setConfiguration(deepmerge(defaultConfiguration, externalConfig));
169
+ setSelection(parseSelection(selection, configuration.variant)); // Don't want this to run every time selection gets updated
170
+ // eslint-disable-next-line react-hooks/exhaustive-deps
171
+ }, [configuration.variant, externalConfig]);
172
+ const goToMonth = useCallback(date => {
173
+ setCurrentViewingDate(new Date(new Date(date).toDateString()));
174
+ }, []);
175
+ const nextMonth = useCallback(() => {
176
+ setCurrentViewingDate(addMonths(currentViewingDate, 1));
177
+ }, [currentViewingDate]);
178
+ const previousMonth = useCallback(() => {
179
+ setCurrentViewingDate(subMonths(currentViewingDate, 1));
180
+ }, [currentViewingDate]);
181
+ const getFormattedDate = useMemo(() => {
182
+ const {
183
+ anchorVariant,
184
+ dateFormat,
185
+ placeholder,
186
+ variant
187
+ } = configuration;
188
+ return formatDate({
189
+ selection,
190
+ anchorVariant,
191
+ dateFormat,
192
+ placeholder,
193
+ variant
194
+ });
195
+ }, [configuration, selection]);
196
+ const saveValue = useCallback(updatedSelection => {
197
+ setPreviousSelection(updatedSelection !== null && updatedSelection !== void 0 ? updatedSelection : selection);
198
+ setIsDirty(false);
199
+ closePicker === null || closePicker === void 0 ? void 0 : closePicker();
200
+ }, [closePicker, selection]);
201
+ const revertValue = useCallback(() => {
202
+ setSelection(previousSelection);
203
+ setIsDirty(false);
204
+ }, [previousSelection]);
205
+ const handleClose = useCallback(async () => {
206
+ if (configuration.confirmUnsavedClose) {
207
+ if (isDirty) {
208
+ const result = await confirm({
209
+ title: 'Save Changes?',
210
+ content: 'You have unsaved changes, would you like to save them?',
211
+ confirmButtonContent: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(CheckIcon, null), /*#__PURE__*/React.createElement(Text, {
212
+ sx: {
213
+ ml: 1
214
+ }
215
+ }, "Save")),
216
+ cancelButtonContent: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(TrashIcon, null), /*#__PURE__*/React.createElement(Text, {
217
+ sx: {
218
+ ml: 1
219
+ }
220
+ }, "Discard"))
221
+ });
222
+
223
+ if (result) {
224
+ saveValue();
225
+ } else {
226
+ revertValue();
227
+ }
228
+ }
229
+ } else if (isDirty) revertValue();
230
+ }, [configuration.confirmUnsavedClose, confirm, isDirty, revertValue, saveValue]);
231
+ const inputHandler = useCallback(updatedSelection => {
232
+ if (!updatedSelection) return;
233
+ const {
234
+ maxDate,
235
+ minDate,
236
+ variant,
237
+ maxSelections,
238
+ maxRangeSize
239
+ } = configuration;
240
+
241
+ switch (variant) {
242
+ case 'single':
243
+ {
244
+ if (updatedSelection instanceof Date) {
245
+ if (maxDate && isAfter(updatedSelection, maxDate)) {
246
+ setSelection(maxDate);
247
+ } else if (minDate && isBefore(minDate, updatedSelection)) {
248
+ setSelection(minDate);
249
+ } else {
250
+ setSelection(updatedSelection);
251
+ }
252
+ }
253
+
254
+ break;
255
+ }
256
+
257
+ case 'multi':
258
+ {
259
+ if (Array.isArray(updatedSelection)) {
260
+ let validSelections = updatedSelection.filter(d => (maxDate ? isBefore(d, maxDate) : true) && (minDate ? isAfter(d, minDate) : true));
261
+
262
+ if (maxSelections) {
263
+ validSelections = validSelections.slice(0, maxSelections);
264
+ }
265
+
266
+ setSelection(validSelections);
267
+ }
268
+
269
+ break;
270
+ }
271
+
272
+ case 'range':
273
+ {
274
+ if (isRangeSelection(updatedSelection)) {
275
+ const validRange = updatedSelection;
276
+
277
+ if (minDate) {
278
+ validRange.from = isAfter(updatedSelection.from, minDate) ? updatedSelection.from : minDate;
279
+
280
+ if (updatedSelection.to) {
281
+ validRange.to = isAfter(updatedSelection.to, minDate) ? updatedSelection.to : minDate;
282
+ }
283
+ }
284
+
285
+ if (maxDate) {
286
+ validRange.from = isBefore(updatedSelection.from, maxDate) ? updatedSelection.from : maxDate;
287
+
288
+ if (updatedSelection.to) {
289
+ validRange.to = isBefore(updatedSelection.to, maxDate) ? updatedSelection.to : maxDate;
290
+ }
291
+ }
292
+
293
+ if (maxRangeSize && validRange.to && Math.abs(differenceInDays(validRange.from, validRange.to)) >= maxRangeSize) {
294
+ validRange.to = addDays(validRange.from, maxRangeSize - 1);
295
+ }
296
+
297
+ setSelection(updatedSelection);
298
+ }
299
+
300
+ break;
301
+ }
302
+ }
303
+ }, [configuration]);
304
+ const selectionHandler = useCallback(date => {
305
+ setIsDirty(true);
306
+
307
+ if (configuration.variant === 'multi') {
308
+ const selections = [...selection];
309
+ const existingIndex = selections.findIndex(s => isEqual(s, date));
310
+
311
+ if (existingIndex > -1) {
312
+ selections.splice(existingIndex, 1);
313
+ setSelection(selections.sort((a, b) => a.getTime() - b.getTime()));
314
+ } else {
315
+ if (configuration.maxSelections && selections.length + 1 > configuration.maxSelections) return;
316
+ setSelection([...selections, date].sort((a, b) => a.getTime() - b.getTime()));
317
+ }
318
+ } else if (configuration.variant === 'range') {
319
+ if (selection && isRangeSelection(selection) && !selection.to) {
320
+ let toDate = date;
321
+
322
+ if (configuration.maxRangeSize && Math.abs(differenceInDays(selection.from, date)) >= configuration.maxRangeSize) {
323
+ toDate = isBefore(date, selection.from) ? subDays(selection.from, configuration.maxRangeSize - 1) : addDays(selection.from, configuration.maxRangeSize - 1);
324
+ }
325
+
326
+ const updatedSelection = isBefore(toDate, selection.from) ? {
327
+ from: toDate,
328
+ to: selection.from
329
+ } : {
330
+ from: selection.from,
331
+ to: toDate
332
+ };
333
+ setSelection(updatedSelection);
334
+ setHoverRange(null);
335
+
336
+ if (!configuration.confirmation) {
337
+ saveValue(updatedSelection);
338
+ }
339
+ } else {
340
+ setHoverRange({
341
+ from: date,
342
+ to: date
343
+ });
344
+ setSelection({
345
+ from: date,
346
+ to: null
347
+ });
348
+ }
349
+ } else {
350
+ setSelection(date);
351
+
352
+ if (!configuration.confirmation) {
353
+ saveValue(date);
354
+ }
355
+ }
356
+ }, [configuration.confirmation, configuration.maxRangeSize, configuration.maxSelections, configuration.variant, saveValue, selection]);
357
+ const focusHnadler = useCallback(date => {
358
+ if (!selection) return;
359
+ const {
360
+ minDate,
361
+ maxDate,
362
+ maxRangeSize,
363
+ variant
364
+ } = configuration;
365
+
366
+ if (variant === 'range' && isRangeSelection(selection) && hoverRange) {
367
+ let hoverDate = date;
368
+ if (minDate) hoverDate = isBefore(date, minDate) ? minDate : hoverDate;
369
+ if (maxDate) hoverDate = isAfter(date, maxDate) ? maxDate : hoverDate;
370
+
371
+ if (maxRangeSize && Math.abs(differenceInDays(selection.from, hoverDate)) >= maxRangeSize) {
372
+ hoverDate = isBefore(hoverDate, selection.from) ? subDays(selection.from, configuration.maxRangeSize - 1) : addDays(selection.from, configuration.maxRangeSize - 1);
373
+ }
374
+
375
+ setHoverRange(isBefore(hoverDate, selection.from) ? {
376
+ from: hoverDate,
377
+ to: selection.from
378
+ } : {
379
+ from: selection.from,
380
+ to: hoverDate
381
+ });
382
+ }
383
+ }, [configuration, hoverRange, selection]);
384
+ const datePickerCtx = useMemo(() => {
385
+ return {
386
+ configuration,
387
+ currentViewingDate,
388
+ disabled: false,
389
+ formattedDate: getFormattedDate,
390
+ goToMonth,
391
+ hoverRange,
392
+ nextMonth,
393
+ onClose: handleClose,
394
+ onDateInput: inputHandler,
395
+ onDayFocus: focusHnadler,
396
+ onSelection: selectionHandler,
397
+ previousMonth,
398
+ revertValue,
399
+ saveValue,
400
+ selectionActive: false,
401
+ selection
402
+ };
403
+ }, [configuration, currentViewingDate, focusHnadler, getFormattedDate, goToMonth, handleClose, hoverRange, inputHandler, nextMonth, previousMonth, revertValue, saveValue, selection, selectionHandler]);
404
+ return /*#__PURE__*/React.createElement(DatePickerContext.Provider, {
405
+ value: datePickerCtx
406
+ }, children);
407
+ };
408
+ DatePickerProvider.displayName = "DatePickerProvider";
@@ -116,24 +116,6 @@ declare namespace DialogHeader {
116
116
  slot?: React.Validator<string | null | undefined> | undefined;
117
117
  style?: React.Validator<React.CSSProperties | null | undefined> | undefined;
118
118
  title?: React.Validator<string | null | undefined> | undefined;
119
- bg?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
120
- m?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
121
- mt?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
122
- mr?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
123
- mb?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
124
- ml?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
125
- mx?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
126
- marginX?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
127
- my?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
128
- marginY?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
129
- pt?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
130
- pr?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
131
- pb?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
132
- pl?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
133
- px?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
134
- paddingX?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
135
- py?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
136
- paddingY?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
137
119
  key?: React.Validator<React.Key | null | undefined> | undefined;
138
120
  defaultChecked?: React.Validator<boolean | null | undefined> | undefined;
139
121
  defaultValue?: React.Validator<string | number | readonly string[] | null | undefined> | undefined;
@@ -186,7 +168,7 @@ declare namespace DialogHeader {
186
168
  'aria-describedby'?: React.Validator<string | null | undefined> | undefined;
187
169
  'aria-details'?: React.Validator<string | null | undefined> | undefined;
188
170
  'aria-disabled'?: React.Validator<boolean | "true" | "false" | null | undefined> | undefined;
189
- 'aria-dropeffect'?: React.Validator<"none" | "link" | "copy" | "move" | "execute" | "popup" | null | undefined> | undefined;
171
+ 'aria-dropeffect'?: React.Validator<"none" | "link" | "copy" | "execute" | "move" | "popup" | null | undefined> | undefined;
190
172
  'aria-errormessage'?: React.Validator<string | null | undefined> | undefined;
191
173
  'aria-expanded'?: React.Validator<boolean | "true" | "false" | null | undefined> | undefined;
192
174
  'aria-flowto'?: React.Validator<string | null | undefined> | undefined;
@@ -384,6 +366,24 @@ declare namespace DialogHeader {
384
366
  onAnimationIterationCapture?: React.Validator<React.AnimationEventHandler<HTMLDivElement> | null | undefined> | undefined;
385
367
  onTransitionEnd?: React.Validator<React.TransitionEventHandler<HTMLDivElement> | null | undefined> | undefined;
386
368
  onTransitionEndCapture?: React.Validator<React.TransitionEventHandler<HTMLDivElement> | null | undefined> | undefined;
369
+ bg?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
370
+ m?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
371
+ mt?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
372
+ mr?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
373
+ mb?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
374
+ ml?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
375
+ mx?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
376
+ marginX?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
377
+ my?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
378
+ marginY?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
379
+ pt?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
380
+ pr?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
381
+ pb?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
382
+ pl?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
383
+ px?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
384
+ paddingX?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
385
+ py?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
386
+ paddingY?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
387
387
  size?: React.Validator<import("styled-system").ResponsiveValue<import("csstype").Property.Height<import("styled-system").TLengthStyledSystem>, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
388
388
  borderX?: React.Validator<import("styled-system").ResponsiveValue<import("csstype").Property.Border<import("styled-system").TLengthStyledSystem>, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
389
389
  borderY?: React.Validator<import("styled-system").ResponsiveValue<import("csstype").Property.Border<import("styled-system").TLengthStyledSystem>, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
@@ -398,9 +398,9 @@ declare type InternalDialogProps = {
398
398
  initialFocusRef?: React.RefObject<HTMLElement>;
399
399
  returnFocusRef?: React.RefObject<HTMLElement>;
400
400
  } & ComponentProps<typeof DialogBase>;
401
- declare const Dialog: React.ForwardRefExoticComponent<Pick<InternalDialogProps, "backgroundColor" | "color" | "display" | "height" | "marginBottom" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "opacity" | "overflowX" | "overflowY" | "paddingBottom" | "paddingLeft" | "paddingRight" | "paddingTop" | "translate" | "verticalAlign" | "width" | "margin" | "overflow" | "padding" | "hidden" | "children" | "theme" | "p" | "slot" | "style" | "title" | "bg" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "key" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "size" | "sx" | "initialFocusRef" | "returnFocusRef" | "isOpen" | "onDismiss" | "narrow" | "wide"> & React.RefAttributes<HTMLDivElement>>;
401
+ declare const Dialog: React.ForwardRefExoticComponent<Pick<InternalDialogProps, "backgroundColor" | "color" | "display" | "height" | "marginBottom" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "opacity" | "overflowX" | "overflowY" | "paddingBottom" | "paddingLeft" | "paddingRight" | "paddingTop" | "translate" | "verticalAlign" | "width" | "margin" | "overflow" | "padding" | "hidden" | "children" | "theme" | "p" | "slot" | "style" | "title" | "key" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "bg" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "size" | "sx" | "initialFocusRef" | "returnFocusRef" | "isOpen" | "onDismiss" | "narrow" | "wide"> & React.RefAttributes<HTMLDivElement>>;
402
402
  export declare type DialogProps = ComponentProps<typeof Dialog>;
403
- declare const _default: React.ForwardRefExoticComponent<Pick<InternalDialogProps, "backgroundColor" | "color" | "display" | "height" | "marginBottom" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "opacity" | "overflowX" | "overflowY" | "paddingBottom" | "paddingLeft" | "paddingRight" | "paddingTop" | "translate" | "verticalAlign" | "width" | "margin" | "overflow" | "padding" | "hidden" | "children" | "theme" | "p" | "slot" | "style" | "title" | "bg" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "key" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "size" | "sx" | "initialFocusRef" | "returnFocusRef" | "isOpen" | "onDismiss" | "narrow" | "wide"> & React.RefAttributes<HTMLDivElement>> & {
403
+ declare const _default: React.ForwardRefExoticComponent<Pick<InternalDialogProps, "backgroundColor" | "color" | "display" | "height" | "marginBottom" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "opacity" | "overflowX" | "overflowY" | "paddingBottom" | "paddingLeft" | "paddingRight" | "paddingTop" | "translate" | "verticalAlign" | "width" | "margin" | "overflow" | "padding" | "hidden" | "children" | "theme" | "p" | "slot" | "style" | "title" | "key" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "bg" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "size" | "sx" | "initialFocusRef" | "returnFocusRef" | "isOpen" | "onDismiss" | "narrow" | "wide"> & React.RefAttributes<HTMLDivElement>> & {
404
404
  Header: typeof DialogHeader;
405
405
  };
406
406
  export default _default;