@primer/components 0.0.0-2021927173554 → 0.0.0-2021927175656

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 (106) hide show
  1. package/CHANGELOG.md +8 -4
  2. package/dist/browser.esm.js +2 -2
  3. package/dist/browser.esm.js.map +1 -1
  4. package/dist/browser.umd.js +2 -2
  5. package/dist/browser.umd.js.map +1 -1
  6. package/lib/AnchoredOverlay/AnchoredOverlay.d.ts +4 -2
  7. package/lib/Autocomplete/Autocomplete.d.ts +12 -10
  8. package/lib/Autocomplete/AutocompleteInput.d.ts +12 -10
  9. package/lib/Button/Button.d.ts +6 -6
  10. package/lib/Button/ButtonBase.d.ts +1 -1
  11. package/lib/Button/ButtonClose.d.ts +5 -5
  12. package/lib/Button/ButtonDanger.d.ts +6 -6
  13. package/lib/Button/ButtonInvisible.d.ts +6 -6
  14. package/lib/Button/ButtonOutline.d.ts +6 -6
  15. package/lib/Button/ButtonPrimary.d.ts +6 -6
  16. package/lib/CircleBadge.d.ts +2 -2
  17. package/lib/CircleOcticon.d.ts +4 -4
  18. package/lib/DatePicker/DatePicker.d.ts +48 -0
  19. package/lib/DatePicker/DatePicker.js +100 -0
  20. package/lib/DatePicker/DatePickerAnchor.d.ts +5 -0
  21. package/lib/DatePicker/DatePickerAnchor.js +182 -0
  22. package/lib/DatePicker/DatePickerOverlay.d.ts +3 -0
  23. package/lib/DatePicker/DatePickerOverlay.js +39 -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 +120 -0
  30. package/lib/DatePicker/index.d.ts +2 -0
  31. package/lib/DatePicker/index.js +13 -0
  32. package/lib/DatePicker/useDatePicker.d.ts +88 -0
  33. package/lib/DatePicker/useDatePicker.js +383 -0
  34. package/lib/Dialog.d.ts +4 -4
  35. package/lib/Dropdown.d.ts +18 -18
  36. package/lib/DropdownMenu/DropdownButton.d.ts +7 -7
  37. package/lib/FilterList.d.ts +3 -3
  38. package/lib/Flash.d.ts +1 -1
  39. package/lib/Label.d.ts +1 -1
  40. package/lib/Position.d.ts +4 -4
  41. package/lib/ProgressBar.d.ts +1 -1
  42. package/lib/SelectMenu/SelectMenu.d.ts +32 -30
  43. package/lib/SelectMenu/SelectMenuItem.d.ts +1 -1
  44. package/lib/TextInputWithTokens.d.ts +12 -10
  45. package/lib/Timeline.d.ts +4 -4
  46. package/lib/Token/AvatarToken.d.ts +1 -1
  47. package/lib/Token/IssueLabelToken.d.ts +1 -1
  48. package/lib/Token/Token.d.ts +1 -1
  49. package/lib/_TextInputWrapper.d.ts +1 -1
  50. package/lib/hooks/useDebounce.d.ts +2 -0
  51. package/lib/hooks/useDebounce.js +24 -0
  52. package/lib/sx.d.ts +2 -8
  53. package/lib/theme-preval.js +2 -2
  54. package/lib/theme.d.ts +0 -100
  55. package/lib/utils/testing.d.ts +1 -1
  56. package/lib-esm/AnchoredOverlay/AnchoredOverlay.d.ts +4 -2
  57. package/lib-esm/Autocomplete/Autocomplete.d.ts +12 -10
  58. package/lib-esm/Autocomplete/AutocompleteInput.d.ts +12 -10
  59. package/lib-esm/Button/Button.d.ts +6 -6
  60. package/lib-esm/Button/ButtonBase.d.ts +1 -1
  61. package/lib-esm/Button/ButtonClose.d.ts +5 -5
  62. package/lib-esm/Button/ButtonDanger.d.ts +6 -6
  63. package/lib-esm/Button/ButtonInvisible.d.ts +6 -6
  64. package/lib-esm/Button/ButtonOutline.d.ts +6 -6
  65. package/lib-esm/Button/ButtonPrimary.d.ts +6 -6
  66. package/lib-esm/CircleBadge.d.ts +2 -2
  67. package/lib-esm/CircleOcticon.d.ts +4 -4
  68. package/lib-esm/DatePicker/DatePicker.d.ts +48 -0
  69. package/lib-esm/DatePicker/DatePicker.js +83 -0
  70. package/lib-esm/DatePicker/DatePickerAnchor.d.ts +5 -0
  71. package/lib-esm/DatePicker/DatePickerAnchor.js +155 -0
  72. package/lib-esm/DatePicker/DatePickerOverlay.d.ts +3 -0
  73. package/lib-esm/DatePicker/DatePickerOverlay.js +24 -0
  74. package/lib-esm/DatePicker/DatePickerPanel.d.ts +2 -0
  75. package/lib-esm/DatePicker/DatePickerPanel.js +100 -0
  76. package/lib-esm/DatePicker/Day.d.ts +14 -0
  77. package/lib-esm/DatePicker/Day.js +169 -0
  78. package/lib-esm/DatePicker/Month.d.ts +9 -0
  79. package/lib-esm/DatePicker/Month.js +96 -0
  80. package/lib-esm/DatePicker/index.d.ts +2 -0
  81. package/lib-esm/DatePicker/index.js +1 -0
  82. package/lib-esm/DatePicker/useDatePicker.d.ts +88 -0
  83. package/lib-esm/DatePicker/useDatePicker.js +355 -0
  84. package/lib-esm/Dialog.d.ts +4 -4
  85. package/lib-esm/Dropdown.d.ts +18 -18
  86. package/lib-esm/DropdownMenu/DropdownButton.d.ts +7 -7
  87. package/lib-esm/FilterList.d.ts +3 -3
  88. package/lib-esm/Flash.d.ts +1 -1
  89. package/lib-esm/Label.d.ts +1 -1
  90. package/lib-esm/Position.d.ts +4 -4
  91. package/lib-esm/ProgressBar.d.ts +1 -1
  92. package/lib-esm/SelectMenu/SelectMenu.d.ts +32 -30
  93. package/lib-esm/SelectMenu/SelectMenuItem.d.ts +1 -1
  94. package/lib-esm/TextInputWithTokens.d.ts +12 -10
  95. package/lib-esm/Timeline.d.ts +4 -4
  96. package/lib-esm/Token/AvatarToken.d.ts +1 -1
  97. package/lib-esm/Token/IssueLabelToken.d.ts +1 -1
  98. package/lib-esm/Token/Token.d.ts +1 -1
  99. package/lib-esm/_TextInputWrapper.d.ts +1 -1
  100. package/lib-esm/hooks/useDebounce.d.ts +2 -0
  101. package/lib-esm/hooks/useDebounce.js +16 -0
  102. package/lib-esm/sx.d.ts +2 -8
  103. package/lib-esm/theme-preval.js +2 -2
  104. package/lib-esm/theme.d.ts +0 -100
  105. package/lib-esm/utils/testing.d.ts +1 -1
  106. package/package.json +9 -8
@@ -0,0 +1,355 @@
1
+ import { format, isEqual, isAfter, isBefore, addMonths, subMonths, isToday } from 'date-fns';
2
+ import deepmerge from 'deepmerge';
3
+ import React, { createContext, useCallback, useContext, useMemo, useEffect, useState } from 'react';
4
+ const DatePickerContext = /*#__PURE__*/createContext(null);
5
+
6
+ const useDatePicker = date => {
7
+ const value = useContext(DatePickerContext);
8
+ const [selected, setSelected] = useState(false);
9
+ const today = date ? isToday(date) : false;
10
+
11
+ if (!value) {
12
+ throw new Error('useDatePicker must be used inside a DatePickerProvider');
13
+ }
14
+
15
+ useEffect(() => {
16
+ if (date) {
17
+ if (value.hoverRange) {
18
+ if (isRangeSelection(value.hoverRange)) {
19
+ if (isEqual(date, value.hoverRange.from)) {
20
+ setSelected('start');
21
+ } else if (value.hoverRange.to && isEqual(date, value.hoverRange.to)) {
22
+ setSelected('end');
23
+ } else if (isAfter(date, value.hoverRange.from) && value.hoverRange.to && isBefore(date, value.hoverRange.to)) {
24
+ setSelected('middle');
25
+ } else {
26
+ setSelected(false);
27
+ }
28
+ }
29
+ } else if (value.selection) {
30
+ if (isMultiSelection(value.selection)) {
31
+ setSelected(!!value.selection.find(d => isEqual(d, date)));
32
+ } else if (isRangeSelection(value.selection)) {
33
+ if (isEqual(date, value.selection.from)) {
34
+ setSelected('start');
35
+ } else if (value.selection.to && isEqual(date, value.selection.to)) {
36
+ setSelected('end');
37
+ } else if (isAfter(date, value.selection.from) && value.selection.to && isBefore(date, value.selection.to)) {
38
+ setSelected('middle');
39
+ } else {
40
+ setSelected(false);
41
+ }
42
+ } else {
43
+ setSelected(isEqual(date, value.selection));
44
+ }
45
+ }
46
+ }
47
+ }, [date, value.hoverRange, value.selection, today]);
48
+ let blocked,
49
+ disabled = false;
50
+
51
+ if (date) {
52
+ // Determine if date is blocked out
53
+ if (value.configuration.blockedDates) {
54
+ blocked = !!value.configuration.blockedDates.find(d => isEqual(d, date));
55
+ } // Determine if date is disabled
56
+
57
+
58
+ if (value.configuration.minDate || value.configuration.maxDate) {
59
+ disabled = (value.configuration.minDate ? isBefore(date, value.configuration.minDate) : false) || (value.configuration.maxDate ? isAfter(date, value.configuration.maxDate) : false);
60
+ }
61
+ }
62
+
63
+ return { ...value,
64
+ blocked,
65
+ disabled,
66
+ selected,
67
+ today
68
+ };
69
+ };
70
+
71
+ export default useDatePicker;
72
+ export function isSingleSelection(selection) {
73
+ return selection instanceof Date;
74
+ }
75
+ export function isMultiSelection(selection) {
76
+ return Array.isArray(selection);
77
+ }
78
+ export function isRangeSelection(selection) {
79
+ return !!selection.from;
80
+ }
81
+ export function isStringRangeSelection(selection) {
82
+ return !!selection.from;
83
+ }
84
+
85
+ function parseSelection(selection, variant) {
86
+ if (!selection) return;
87
+
88
+ if (variant === 'multi') {
89
+ if (isMultiSelection(selection)) {
90
+ const parsedSelection = [];
91
+
92
+ for (const d of selection) {
93
+ parsedSelection.push(new Date(new Date(d).toDateString()));
94
+ }
95
+
96
+ return parsedSelection.sort((a, b) => a.getTime() - b.getTime());
97
+ } else if (selection instanceof Date) {
98
+ return [new Date(new Date(selection).toDateString())];
99
+ } else if (isRangeSelection(selection)) {
100
+ const parsedSelection = [];
101
+ parsedSelection.push(new Date(new Date(selection.from).toDateString()));
102
+
103
+ if (selection.to) {
104
+ parsedSelection.push(new Date(new Date(selection.to).toDateString()));
105
+ }
106
+
107
+ return parsedSelection.sort((a, b) => a.getTime() - b.getTime());
108
+ }
109
+ } else if (variant === 'range') {
110
+ if (isRangeSelection(selection)) {
111
+ return {
112
+ from: new Date(new Date(selection.from).toDateString()),
113
+ to: selection.to ? new Date(new Date(selection.to).toDateString()) : null
114
+ };
115
+ } else if (isMultiSelection(selection)) {
116
+ return {
117
+ from: new Date(new Date(selection[0]).toDateString()),
118
+ to: selection[1] ? new Date(new Date(selection[1]).toDateString()) : null
119
+ };
120
+ } else if (selection instanceof Date) {
121
+ return {
122
+ from: new Date(new Date(selection).toDateString()),
123
+ to: null
124
+ };
125
+ }
126
+ } else {
127
+ if (selection instanceof Date) {
128
+ return new Date(new Date(selection).toDateString());
129
+ } else if (isMultiSelection(selection)) {
130
+ return new Date(new Date(selection[0]).toDateString());
131
+ } else if (isRangeSelection(selection)) {
132
+ return new Date(new Date(selection.from).toDateString());
133
+ } else {
134
+ return;
135
+ }
136
+ }
137
+ }
138
+
139
+ const defaultConfiguration = {
140
+ anchorVariant: 'button',
141
+ confirmation: false,
142
+ contiguousSelection: false,
143
+ dimWeekends: false,
144
+ iconPlacement: 'start',
145
+ placeholder: 'Select a Date...',
146
+ selection: 'single',
147
+ view: '2-month',
148
+ weekStartsOn: 'Sunday'
149
+ };
150
+ export const DatePickerProvider = ({
151
+ configuration: externalConfig = {},
152
+ children,
153
+ closePicker,
154
+ value
155
+ }) => {
156
+ const [configuration, setConfiguration] = useState(deepmerge(defaultConfiguration, externalConfig));
157
+ const [previousSelection, setPreviousSelection] = useState(parseSelection(value, configuration.selection));
158
+ const [selection, setSelection] = useState(parseSelection(value, configuration.selection));
159
+ const [hoverRange, setHoverRange] = useState(null);
160
+ const [currentViewingDate, setCurrentViewingDate] = useState(new Date());
161
+ useEffect(() => {
162
+ setConfiguration(deepmerge(defaultConfiguration, externalConfig));
163
+ setSelection(parseSelection(selection, configuration.selection)); // Don't want this to run every time selection gets updated
164
+ // eslint-disable-next-line react-hooks/exhaustive-deps
165
+ }, [configuration.selection, externalConfig]);
166
+ const goToMonth = useCallback(date => {
167
+ setCurrentViewingDate(new Date(new Date(date).toDateString()));
168
+ }, []);
169
+ const nextMonth = useCallback(() => {
170
+ setCurrentViewingDate(addMonths(currentViewingDate, 1));
171
+ }, [currentViewingDate]);
172
+ const previousMonth = useCallback(() => {
173
+ setCurrentViewingDate(subMonths(currentViewingDate, 1));
174
+ }, [currentViewingDate]);
175
+ const getFormattedDate = useMemo(() => {
176
+ if (!selection) {
177
+ return configuration.placeholder;
178
+ }
179
+
180
+ let template = 'MMM d';
181
+
182
+ if (configuration.anchorVariant !== 'input' && configuration.dateFormat) {
183
+ switch (configuration.dateFormat) {
184
+ case 'short':
185
+ template = 'MMM d';
186
+ break;
187
+
188
+ case 'long':
189
+ template = 'MMM d, yyyy';
190
+ break;
191
+
192
+ default:
193
+ template = configuration.dateFormat;
194
+ break;
195
+ }
196
+ } else {
197
+ template = 'MM/dd/yyyy';
198
+ }
199
+
200
+ switch (configuration.selection) {
201
+ case 'single':
202
+ {
203
+ if (selection instanceof Date) {
204
+ return format(selection, template);
205
+ } else if (Array.isArray(selection)) {
206
+ return format(selection[0], template);
207
+ } else if (isRangeSelection(selection)) {
208
+ return format(selection.from, template);
209
+ } else {
210
+ return 'Invalid Selection';
211
+ }
212
+ }
213
+
214
+ case 'multi':
215
+ {
216
+ if (Array.isArray(selection)) {
217
+ if (selection.length > 3) return `${selection.length} Selected`;
218
+ const formatted = selection.map(d => format(d, template)).join(', ');
219
+ return formatted;
220
+ } else if (selection instanceof Date) {
221
+ return [selection].map(d => format(d, template)).join(', ');
222
+ } else if (isRangeSelection(selection)) {
223
+ return [selection.to, selection.from].map(d => d ? format(d, template) : '').join(', ');
224
+ } else {
225
+ return 'Invalid Selection';
226
+ }
227
+ }
228
+
229
+ case 'range':
230
+ {
231
+ if (isRangeSelection(selection)) {
232
+ return Object.entries(selection).map(([_, date]) => date ? format(date, template) : '').join(' - ');
233
+ } else if (selection instanceof Date) {
234
+ return Object.entries({
235
+ from: selection,
236
+ to: null
237
+ }).map(([_, date]) => date ? format(date, template) : '').join(' - ');
238
+ } else if (Array.isArray(selection)) {
239
+ return Object.entries({
240
+ from: selection[0],
241
+ to: selection[1]
242
+ }) // to date can still be null
243
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
244
+ .map(([_, date]) => date ? format(date, template) : '').join(' - ');
245
+ } else {
246
+ return 'Invalid Selection';
247
+ }
248
+ }
249
+
250
+ default:
251
+ {
252
+ return 'Invalid Configuration';
253
+ }
254
+ }
255
+ }, [configuration.anchorVariant, configuration.dateFormat, configuration.placeholder, configuration.selection, selection]);
256
+ const saveValue = useCallback(updatedSelection => {
257
+ setPreviousSelection(updatedSelection !== null && updatedSelection !== void 0 ? updatedSelection : selection);
258
+ closePicker === null || closePicker === void 0 ? void 0 : closePicker();
259
+ }, [closePicker, selection]);
260
+ const inputHandler = useCallback(updatedSelection => {
261
+ // validate date falls within range
262
+ setSelection(updatedSelection);
263
+ }, []);
264
+ const selectionHandler = useCallback(date => {
265
+ if (configuration.selection === 'multi') {
266
+ const selections = [...selection];
267
+ const existingIndex = selections.findIndex(s => isEqual(s, date));
268
+
269
+ if (existingIndex > -1) {
270
+ selections.splice(existingIndex, 1);
271
+ setSelection(selections.sort((a, b) => a.getTime() - b.getTime()));
272
+ } else {
273
+ if (configuration.maxSelections && selections.length + 1 > configuration.maxSelections) return;
274
+ setSelection([...selections, date].sort((a, b) => a.getTime() - b.getTime()));
275
+ }
276
+ } else if (configuration.selection === 'range') {
277
+ if (selection && isRangeSelection(selection) && !selection.to) {
278
+ const updatedSelection = isBefore(date, selection.from) ? {
279
+ from: date,
280
+ to: selection.from
281
+ } : {
282
+ from: selection.from,
283
+ to: date
284
+ };
285
+ setSelection(updatedSelection);
286
+ setHoverRange(null);
287
+
288
+ if (!configuration.confirmation) {
289
+ saveValue(updatedSelection);
290
+ }
291
+ } else {
292
+ setHoverRange({
293
+ from: date,
294
+ to: date
295
+ });
296
+ setSelection({
297
+ from: date,
298
+ to: null
299
+ });
300
+ }
301
+ } else {
302
+ setSelection(date);
303
+
304
+ if (!configuration.confirmation) {
305
+ saveValue(date);
306
+ }
307
+ }
308
+ }, [configuration.confirmation, configuration.maxSelections, configuration.selection, saveValue, selection]);
309
+ const focusHnadler = useCallback(date => {
310
+ if (!selection) return;
311
+
312
+ if (configuration.selection === 'range' && isRangeSelection(selection) && hoverRange) {
313
+ setHoverRange(isBefore(date, selection.from) ? {
314
+ from: date,
315
+ to: selection.from
316
+ } : {
317
+ from: selection.from,
318
+ to: date
319
+ });
320
+ }
321
+ }, [configuration.selection, hoverRange, selection]);
322
+ const blurHnadler = useCallback(date => {
323
+ if (!selection || !hoverRange) return;
324
+
325
+ if (configuration.selection === 'range' && isRangeSelection(selection) && (hoverRange.from === date || hoverRange.to === date)) {// setHoverRange({from: hoverRange.from, to: hoverRange.from})
326
+ }
327
+ }, [configuration.selection, hoverRange, selection]);
328
+ const revertValue = useCallback(() => {
329
+ setSelection(previousSelection);
330
+ }, [previousSelection]);
331
+ const datePickerCtx = useMemo(() => {
332
+ return {
333
+ configuration,
334
+ currentViewingDate,
335
+ disabled: false,
336
+ formattedDate: getFormattedDate,
337
+ goToMonth,
338
+ hoverRange,
339
+ nextMonth,
340
+ onDateInput: inputHandler,
341
+ onDayBlur: blurHnadler,
342
+ onDayFocus: focusHnadler,
343
+ onSelection: selectionHandler,
344
+ previousMonth,
345
+ revertValue,
346
+ saveValue,
347
+ selectionActive: false,
348
+ selection
349
+ };
350
+ }, [blurHnadler, configuration, currentViewingDate, focusHnadler, getFormattedDate, goToMonth, hoverRange, inputHandler, nextMonth, previousMonth, revertValue, saveValue, selection, selectionHandler]);
351
+ return /*#__PURE__*/React.createElement(DatePickerContext.Provider, {
352
+ value: datePickerCtx
353
+ }, children);
354
+ };
355
+ DatePickerProvider.displayName = "DatePickerProvider";
@@ -15,7 +15,6 @@ declare namespace DialogHeader {
15
15
  };
16
16
  var propTypes: {
17
17
  lineHeight?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
18
- border?: 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;
19
18
  alignContent?: React.Validator<import("styled-system").ResponsiveValue<import("csstype").Property.AlignContent, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
20
19
  alignItems?: React.Validator<import("styled-system").ResponsiveValue<import("csstype").Property.AlignItems, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
21
20
  alignSelf?: React.Validator<import("styled-system").ResponsiveValue<import("csstype").Property.AlignSelf, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
@@ -91,6 +90,7 @@ declare namespace DialogHeader {
91
90
  zIndex?: React.Validator<import("styled-system").ResponsiveValue<import("csstype").Property.ZIndex, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
92
91
  background?: React.Validator<import("styled-system").ResponsiveValue<import("csstype").Property.Background<import("styled-system").TLengthStyledSystem>, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
93
92
  backgroundPosition?: React.Validator<import("styled-system").ResponsiveValue<import("csstype").Property.BackgroundPosition<import("styled-system").TLengthStyledSystem>, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
93
+ border?: 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;
94
94
  borderBottom?: React.Validator<import("styled-system").ResponsiveValue<import("csstype").Property.BorderBottom<import("styled-system").TLengthStyledSystem>, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
95
95
  borderColor?: React.Validator<import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
96
96
  borderLeft?: React.Validator<import("styled-system").ResponsiveValue<import("csstype").Property.BorderLeft<import("styled-system").TLengthStyledSystem>, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined> | undefined;
@@ -153,7 +153,7 @@ declare namespace DialogHeader {
153
153
  results?: React.Validator<number | null | undefined> | undefined;
154
154
  security?: React.Validator<string | null | undefined> | undefined;
155
155
  unselectable?: React.Validator<"on" | "off" | null | undefined> | undefined;
156
- inputMode?: React.Validator<"search" | "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | null | undefined> | undefined;
156
+ inputMode?: React.Validator<"none" | "text" | "search" | "tel" | "url" | "email" | "numeric" | "decimal" | null | undefined> | undefined;
157
157
  is?: React.Validator<string | null | undefined> | undefined;
158
158
  'aria-activedescendant'?: React.Validator<string | null | undefined> | undefined;
159
159
  'aria-atomic'?: React.Validator<boolean | "true" | "false" | null | undefined> | undefined;
@@ -168,7 +168,7 @@ declare namespace DialogHeader {
168
168
  'aria-describedby'?: React.Validator<string | null | undefined> | undefined;
169
169
  'aria-details'?: React.Validator<string | null | undefined> | undefined;
170
170
  'aria-disabled'?: React.Validator<boolean | "true" | "false" | null | undefined> | undefined;
171
- 'aria-dropeffect'?: React.Validator<"link" | "none" | "copy" | "execute" | "move" | "popup" | null | undefined> | undefined;
171
+ 'aria-dropeffect'?: React.Validator<"none" | "link" | "copy" | "execute" | "move" | "popup" | null | undefined> | undefined;
172
172
  'aria-errormessage'?: React.Validator<string | null | undefined> | undefined;
173
173
  'aria-expanded'?: React.Validator<boolean | "true" | "false" | null | undefined> | undefined;
174
174
  'aria-flowto'?: React.Validator<string | null | undefined> | undefined;
@@ -387,7 +387,7 @@ declare namespace DialogHeader {
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;
390
- sx?: React.Validator<import("./sx").BetterSystemStyleObject | undefined> | undefined;
390
+ sx?: React.Validator<import("@styled-system/css").SystemStyleObject | undefined> | undefined;
391
391
  theme?: React.Validator<any> | undefined;
392
392
  };
393
393
  var displayName: string;
@@ -75,7 +75,7 @@ declare const _default: {
75
75
  results?: number | undefined;
76
76
  security?: string | undefined;
77
77
  unselectable?: "on" | "off" | undefined;
78
- inputMode?: "search" | "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | undefined;
78
+ inputMode?: "none" | "text" | "search" | "tel" | "url" | "email" | "numeric" | "decimal" | undefined;
79
79
  is?: string | undefined;
80
80
  'aria-activedescendant'?: string | undefined;
81
81
  'aria-atomic'?: boolean | "true" | "false" | undefined;
@@ -90,7 +90,7 @@ declare const _default: {
90
90
  'aria-describedby'?: string | undefined;
91
91
  'aria-details'?: string | undefined;
92
92
  'aria-disabled'?: boolean | "true" | "false" | undefined;
93
- 'aria-dropeffect'?: "link" | "none" | "copy" | "execute" | "move" | "popup" | undefined;
93
+ 'aria-dropeffect'?: "none" | "link" | "copy" | "execute" | "move" | "popup" | undefined;
94
94
  'aria-errormessage'?: string | undefined;
95
95
  'aria-expanded'?: boolean | "true" | "false" | undefined;
96
96
  'aria-flowto'?: string | undefined;
@@ -307,7 +307,7 @@ declare const _default: {
307
307
  py?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
308
308
  paddingY?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
309
309
  open?: boolean | undefined;
310
- sx?: import("./sx").BetterSystemStyleObject | undefined;
310
+ sx?: import("@styled-system/css").SystemStyleObject | undefined;
311
311
  onToggle?: React.ReactEventHandler<HTMLElement> | undefined;
312
312
  } & {
313
313
  theme?: any;
@@ -372,7 +372,7 @@ declare const _default: {
372
372
  results?: number | undefined;
373
373
  security?: string | undefined;
374
374
  unselectable?: "on" | "off" | undefined;
375
- inputMode?: "search" | "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | undefined;
375
+ inputMode?: "none" | "text" | "search" | "tel" | "url" | "email" | "numeric" | "decimal" | undefined;
376
376
  is?: string | undefined;
377
377
  'aria-activedescendant'?: string | undefined;
378
378
  'aria-atomic'?: boolean | "true" | "false" | undefined;
@@ -387,7 +387,7 @@ declare const _default: {
387
387
  'aria-describedby'?: string | undefined;
388
388
  'aria-details'?: string | undefined;
389
389
  'aria-disabled'?: boolean | "true" | "false" | undefined;
390
- 'aria-dropeffect'?: "link" | "none" | "copy" | "execute" | "move" | "popup" | undefined;
390
+ 'aria-dropeffect'?: "none" | "link" | "copy" | "execute" | "move" | "popup" | undefined;
391
391
  'aria-errormessage'?: string | undefined;
392
392
  'aria-expanded'?: boolean | "true" | "false" | undefined;
393
393
  'aria-flowto'?: string | undefined;
@@ -604,7 +604,7 @@ declare const _default: {
604
604
  py?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
605
605
  paddingY?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
606
606
  open?: boolean | undefined;
607
- sx?: import("./sx").BetterSystemStyleObject | undefined;
607
+ sx?: import("@styled-system/css").SystemStyleObject | undefined;
608
608
  onToggle?: React.ReactEventHandler<HTMLElement> | undefined;
609
609
  } & {
610
610
  theme?: any;
@@ -617,7 +617,6 @@ declare const _default: {
617
617
  Item: import("styled-components").StyledComponent<"li", any, SxProp, never>;
618
618
  Button: {
619
619
  ({ children, ...rest }: {
620
- disabled?: boolean | undefined;
621
620
  backgroundColor?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
622
621
  color?: (string & import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>>) | undefined;
623
622
  display?: import("styled-system").ResponsiveValue<import("csstype").Property.Display, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
@@ -692,7 +691,7 @@ declare const _default: {
692
691
  results?: number | undefined;
693
692
  security?: string | undefined;
694
693
  unselectable?: "on" | "off" | undefined;
695
- inputMode?: "search" | "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | undefined;
694
+ inputMode?: "none" | "text" | "search" | "tel" | "url" | "email" | "numeric" | "decimal" | undefined;
696
695
  is?: string | undefined;
697
696
  'aria-activedescendant'?: string | undefined;
698
697
  'aria-atomic'?: boolean | "true" | "false" | undefined;
@@ -707,7 +706,7 @@ declare const _default: {
707
706
  'aria-describedby'?: string | undefined;
708
707
  'aria-details'?: string | undefined;
709
708
  'aria-disabled'?: boolean | "true" | "false" | undefined;
710
- 'aria-dropeffect'?: "link" | "none" | "copy" | "execute" | "move" | "popup" | undefined;
709
+ 'aria-dropeffect'?: "none" | "link" | "copy" | "execute" | "move" | "popup" | undefined;
711
710
  'aria-errormessage'?: string | undefined;
712
711
  'aria-expanded'?: boolean | "true" | "false" | undefined;
713
712
  'aria-flowto'?: string | undefined;
@@ -924,20 +923,20 @@ declare const _default: {
924
923
  py?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
925
924
  paddingY?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
926
925
  size?: import("styled-system").ResponsiveValue<import("csstype").Property.Height<import("styled-system").TLengthStyledSystem>, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
927
- sx?: import("./sx").BetterSystemStyleObject | undefined;
928
- as?: string | React.ComponentClass<any, any> | React.FunctionComponent<any> | undefined;
926
+ sx?: import("@styled-system/css").SystemStyleObject | undefined;
929
927
  autoFocus?: boolean | undefined;
928
+ disabled?: boolean | undefined;
930
929
  formAction?: string | undefined;
931
930
  formEncType?: string | undefined;
932
931
  formMethod?: string | undefined;
933
932
  formNoValidate?: boolean | undefined;
934
933
  formTarget?: string | undefined;
935
- variant?: "small" | "medium" | "large" | undefined;
934
+ as?: string | React.ComponentClass<any, any> | React.FunctionComponent<any> | undefined;
935
+ variant?: "large" | "medium" | "small" | undefined;
936
936
  } & {
937
937
  theme?: any;
938
938
  }): JSX.Element;
939
939
  defaultProps: Partial<{
940
- disabled?: boolean | undefined;
941
940
  backgroundColor?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
942
941
  color?: (string & import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>>) | undefined;
943
942
  display?: import("styled-system").ResponsiveValue<import("csstype").Property.Display, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
@@ -1012,7 +1011,7 @@ declare const _default: {
1012
1011
  results?: number | undefined;
1013
1012
  security?: string | undefined;
1014
1013
  unselectable?: "on" | "off" | undefined;
1015
- inputMode?: "search" | "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | undefined;
1014
+ inputMode?: "none" | "text" | "search" | "tel" | "url" | "email" | "numeric" | "decimal" | undefined;
1016
1015
  is?: string | undefined;
1017
1016
  'aria-activedescendant'?: string | undefined;
1018
1017
  'aria-atomic'?: boolean | "true" | "false" | undefined;
@@ -1027,7 +1026,7 @@ declare const _default: {
1027
1026
  'aria-describedby'?: string | undefined;
1028
1027
  'aria-details'?: string | undefined;
1029
1028
  'aria-disabled'?: boolean | "true" | "false" | undefined;
1030
- 'aria-dropeffect'?: "link" | "none" | "copy" | "execute" | "move" | "popup" | undefined;
1029
+ 'aria-dropeffect'?: "none" | "link" | "copy" | "execute" | "move" | "popup" | undefined;
1031
1030
  'aria-errormessage'?: string | undefined;
1032
1031
  'aria-expanded'?: boolean | "true" | "false" | undefined;
1033
1032
  'aria-flowto'?: string | undefined;
@@ -1244,15 +1243,16 @@ declare const _default: {
1244
1243
  py?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
1245
1244
  paddingY?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
1246
1245
  size?: import("styled-system").ResponsiveValue<import("csstype").Property.Height<import("styled-system").TLengthStyledSystem>, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
1247
- sx?: import("./sx").BetterSystemStyleObject | undefined;
1248
- as?: string | React.ComponentClass<any, any> | React.FunctionComponent<any> | undefined;
1246
+ sx?: import("@styled-system/css").SystemStyleObject | undefined;
1249
1247
  autoFocus?: boolean | undefined;
1248
+ disabled?: boolean | undefined;
1250
1249
  formAction?: string | undefined;
1251
1250
  formEncType?: string | undefined;
1252
1251
  formMethod?: string | undefined;
1253
1252
  formNoValidate?: boolean | undefined;
1254
1253
  formTarget?: string | undefined;
1255
- variant?: "small" | "medium" | "large" | undefined;
1254
+ as?: string | React.ComponentClass<any, any> | React.FunctionComponent<any> | undefined;
1255
+ variant?: "large" | "medium" | "small" | undefined;
1256
1256
  } & {
1257
1257
  theme?: any;
1258
1258
  }> | undefined;
@@ -2,7 +2,6 @@ import React from 'react';
2
2
  import { ButtonProps } from '../Button/Button';
3
3
  export declare type DropdownButtonProps = ButtonProps;
4
4
  export declare const DropdownButton: React.ForwardRefExoticComponent<Pick<React.PropsWithChildren<{
5
- disabled?: boolean | undefined;
6
5
  backgroundColor?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
7
6
  color?: (string & import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>>) | undefined;
8
7
  display?: import("styled-system").ResponsiveValue<import("csstype").Property.Display, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
@@ -77,7 +76,7 @@ export declare const DropdownButton: React.ForwardRefExoticComponent<Pick<React.
77
76
  results?: number | undefined;
78
77
  security?: string | undefined;
79
78
  unselectable?: "on" | "off" | undefined;
80
- inputMode?: "search" | "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | undefined;
79
+ inputMode?: "none" | "text" | "search" | "tel" | "url" | "email" | "numeric" | "decimal" | undefined;
81
80
  is?: string | undefined;
82
81
  'aria-activedescendant'?: string | undefined;
83
82
  'aria-atomic'?: boolean | "true" | "false" | undefined;
@@ -92,7 +91,7 @@ export declare const DropdownButton: React.ForwardRefExoticComponent<Pick<React.
92
91
  'aria-describedby'?: string | undefined;
93
92
  'aria-details'?: string | undefined;
94
93
  'aria-disabled'?: boolean | "true" | "false" | undefined;
95
- 'aria-dropeffect'?: "link" | "none" | "copy" | "execute" | "move" | "popup" | undefined;
94
+ 'aria-dropeffect'?: "none" | "link" | "copy" | "execute" | "move" | "popup" | undefined;
96
95
  'aria-errormessage'?: string | undefined;
97
96
  'aria-expanded'?: boolean | "true" | "false" | undefined;
98
97
  'aria-flowto'?: string | undefined;
@@ -309,15 +308,16 @@ export declare const DropdownButton: React.ForwardRefExoticComponent<Pick<React.
309
308
  py?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
310
309
  paddingY?: import("styled-system").ResponsiveValue<string | number | symbol, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
311
310
  size?: import("styled-system").ResponsiveValue<import("csstype").Property.Height<import("styled-system").TLengthStyledSystem>, Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> | undefined;
312
- sx?: import("../sx").BetterSystemStyleObject | undefined;
313
- as?: string | React.ComponentClass<any, any> | React.FunctionComponent<any> | undefined;
311
+ sx?: import("@styled-system/css").SystemStyleObject | undefined;
314
312
  autoFocus?: boolean | undefined;
313
+ disabled?: boolean | undefined;
315
314
  formAction?: string | undefined;
316
315
  formEncType?: string | undefined;
317
316
  formMethod?: string | undefined;
318
317
  formNoValidate?: boolean | undefined;
319
318
  formTarget?: string | undefined;
320
- variant?: "small" | "medium" | "large" | undefined;
319
+ as?: string | React.ComponentClass<any, any> | React.FunctionComponent<any> | undefined;
320
+ variant?: "large" | "medium" | "small" | undefined;
321
321
  } & {
322
322
  theme?: any;
323
- }>, "disabled" | "backgroundColor" | "color" | "display" | "fontSize" | "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" | "value" | "form" | "p" | "slot" | "style" | "title" | "type" | "name" | "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" | "as" | "autoFocus" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "variant"> & React.RefAttributes<HTMLElement>>;
323
+ }>, "backgroundColor" | "color" | "display" | "fontSize" | "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" | "value" | "form" | "p" | "slot" | "style" | "title" | "type" | "name" | "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" | "autoFocus" | "disabled" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "as" | "variant"> & React.RefAttributes<HTMLElement>>;