@mantine/core 7.0.0-alpha.16 → 7.0.0-alpha.17

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 (131) hide show
  1. package/cjs/components/Autocomplete/Autocomplete.js +201 -0
  2. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -0
  3. package/cjs/components/Breadcrumbs/Breadcrumbs.js +1 -1
  4. package/cjs/components/Combobox/Combobox.context.js.map +1 -1
  5. package/cjs/components/Combobox/Combobox.js +10 -6
  6. package/cjs/components/Combobox/Combobox.js.map +1 -1
  7. package/cjs/components/Combobox/Combobox.module.css.js +1 -1
  8. package/cjs/components/Combobox/ComboboxEventsTarget/ComboboxEventsTarget.js +1 -1
  9. package/cjs/components/Combobox/ComboboxEventsTarget/ComboboxEventsTarget.js.map +1 -1
  10. package/cjs/components/Combobox/ComboboxGroup/ComboboxGroup.js +61 -0
  11. package/cjs/components/Combobox/ComboboxGroup/ComboboxGroup.js.map +1 -0
  12. package/cjs/components/Combobox/ComboboxOption/ComboboxOption.js +1 -1
  13. package/cjs/components/Combobox/ComboboxOption/ComboboxOption.js.map +1 -1
  14. package/cjs/components/Combobox/OptionsDropdown/OptionsDropdown.js +87 -0
  15. package/cjs/components/Combobox/OptionsDropdown/OptionsDropdown.js.map +1 -0
  16. package/cjs/components/Combobox/OptionsDropdown/OptionsDropdown.module.css.js +8 -0
  17. package/cjs/components/Combobox/OptionsDropdown/OptionsDropdown.module.css.js.map +1 -0
  18. package/cjs/components/Combobox/OptionsDropdown/default-options-filter.js +39 -0
  19. package/cjs/components/Combobox/OptionsDropdown/default-options-filter.js.map +1 -0
  20. package/cjs/components/Combobox/OptionsDropdown/is-empty-combobox-data.js +21 -0
  21. package/cjs/components/Combobox/OptionsDropdown/is-empty-combobox-data.js.map +1 -0
  22. package/cjs/components/Combobox/OptionsDropdown/is-options-group.js +10 -0
  23. package/cjs/components/Combobox/OptionsDropdown/is-options-group.js.map +1 -0
  24. package/cjs/components/Combobox/get-options-lockup/get-options-lockup.js +42 -0
  25. package/cjs/components/Combobox/get-options-lockup/get-options-lockup.js.map +1 -0
  26. package/cjs/components/Combobox/get-parsed-combobox-data/get-parsed-combobox-data.js +1 -1
  27. package/cjs/components/Combobox/get-parsed-combobox-data/get-parsed-combobox-data.js.map +1 -1
  28. package/cjs/components/Combobox/use-combobox/use-virtualized-combobox.js.map +1 -1
  29. package/cjs/components/InputBase/InputBase.js.map +1 -1
  30. package/cjs/components/MultiSelect/MultiSelect.js +345 -0
  31. package/cjs/components/MultiSelect/MultiSelect.js.map +1 -0
  32. package/cjs/components/MultiSelect/filter-picked-values.js +26 -0
  33. package/cjs/components/MultiSelect/filter-picked-values.js.map +1 -0
  34. package/cjs/components/PillsInput/PillsInputField/PillsInputField.js +24 -2
  35. package/cjs/components/PillsInput/PillsInputField/PillsInputField.js.map +1 -1
  36. package/cjs/components/Popover/PopoverTarget/PopoverTarget.js +1 -1
  37. package/cjs/components/ScrollArea/ScrollArea.js +1 -1
  38. package/cjs/components/ScrollArea/ScrollArea.js.map +1 -1
  39. package/cjs/components/Select/Select.js +227 -0
  40. package/cjs/components/Select/Select.js.map +1 -0
  41. package/cjs/components/TagsInput/TagsInput.js +370 -0
  42. package/cjs/components/TagsInput/TagsInput.js.map +1 -0
  43. package/cjs/components/TagsInput/filter-picked-tags.js +26 -0
  44. package/cjs/components/TagsInput/filter-picked-tags.js.map +1 -0
  45. package/cjs/components/TagsInput/get-splitted-tags.js +23 -0
  46. package/cjs/components/TagsInput/get-splitted-tags.js.map +1 -0
  47. package/cjs/core/styles-api/use-resolved-styles-api/use-resolved-styles-api.js +33 -0
  48. package/cjs/core/styles-api/use-resolved-styles-api/use-resolved-styles-api.js.map +1 -0
  49. package/cjs/index.css +1464 -1387
  50. package/cjs/index.js +21 -0
  51. package/cjs/index.js.map +1 -1
  52. package/esm/components/Autocomplete/Autocomplete.js +193 -0
  53. package/esm/components/Autocomplete/Autocomplete.js.map +1 -0
  54. package/esm/components/Breadcrumbs/Breadcrumbs.js +1 -1
  55. package/esm/components/Combobox/Combobox.context.js.map +1 -1
  56. package/esm/components/Combobox/Combobox.js +10 -6
  57. package/esm/components/Combobox/Combobox.js.map +1 -1
  58. package/esm/components/Combobox/Combobox.module.css.js +1 -1
  59. package/esm/components/Combobox/ComboboxEventsTarget/ComboboxEventsTarget.js +1 -1
  60. package/esm/components/Combobox/ComboboxEventsTarget/ComboboxEventsTarget.js.map +1 -1
  61. package/esm/components/Combobox/ComboboxGroup/ComboboxGroup.js +53 -0
  62. package/esm/components/Combobox/ComboboxGroup/ComboboxGroup.js.map +1 -0
  63. package/esm/components/Combobox/ComboboxOption/ComboboxOption.js +1 -1
  64. package/esm/components/Combobox/ComboboxOption/ComboboxOption.js.map +1 -1
  65. package/esm/components/Combobox/OptionsDropdown/OptionsDropdown.js +79 -0
  66. package/esm/components/Combobox/OptionsDropdown/OptionsDropdown.js.map +1 -0
  67. package/esm/components/Combobox/OptionsDropdown/OptionsDropdown.module.css.js +4 -0
  68. package/esm/components/Combobox/OptionsDropdown/OptionsDropdown.module.css.js.map +1 -0
  69. package/esm/components/Combobox/OptionsDropdown/default-options-filter.js +35 -0
  70. package/esm/components/Combobox/OptionsDropdown/default-options-filter.js.map +1 -0
  71. package/esm/components/Combobox/OptionsDropdown/is-empty-combobox-data.js +17 -0
  72. package/esm/components/Combobox/OptionsDropdown/is-empty-combobox-data.js.map +1 -0
  73. package/esm/components/Combobox/OptionsDropdown/is-options-group.js +6 -0
  74. package/esm/components/Combobox/OptionsDropdown/is-options-group.js.map +1 -0
  75. package/esm/components/Combobox/get-options-lockup/get-options-lockup.js +37 -0
  76. package/esm/components/Combobox/get-options-lockup/get-options-lockup.js.map +1 -0
  77. package/esm/components/Combobox/get-parsed-combobox-data/get-parsed-combobox-data.js +1 -1
  78. package/esm/components/Combobox/get-parsed-combobox-data/get-parsed-combobox-data.js.map +1 -1
  79. package/esm/components/Combobox/use-combobox/use-virtualized-combobox.js.map +1 -1
  80. package/esm/components/InputBase/InputBase.js.map +1 -1
  81. package/esm/components/MultiSelect/MultiSelect.js +337 -0
  82. package/esm/components/MultiSelect/MultiSelect.js.map +1 -0
  83. package/esm/components/MultiSelect/filter-picked-values.js +22 -0
  84. package/esm/components/MultiSelect/filter-picked-values.js.map +1 -0
  85. package/esm/components/PillsInput/PillsInputField/PillsInputField.js +24 -2
  86. package/esm/components/PillsInput/PillsInputField/PillsInputField.js.map +1 -1
  87. package/esm/components/Popover/PopoverTarget/PopoverTarget.js +1 -1
  88. package/esm/components/ScrollArea/ScrollArea.js +1 -1
  89. package/esm/components/ScrollArea/ScrollArea.js.map +1 -1
  90. package/esm/components/Select/Select.js +219 -0
  91. package/esm/components/Select/Select.js.map +1 -0
  92. package/esm/components/TagsInput/TagsInput.js +362 -0
  93. package/esm/components/TagsInput/TagsInput.js.map +1 -0
  94. package/esm/components/TagsInput/filter-picked-tags.js +22 -0
  95. package/esm/components/TagsInput/filter-picked-tags.js.map +1 -0
  96. package/esm/components/TagsInput/get-splitted-tags.js +19 -0
  97. package/esm/components/TagsInput/get-splitted-tags.js.map +1 -0
  98. package/esm/core/styles-api/use-resolved-styles-api/use-resolved-styles-api.js +29 -0
  99. package/esm/core/styles-api/use-resolved-styles-api/use-resolved-styles-api.js.map +1 -0
  100. package/esm/index.css +1464 -1387
  101. package/esm/index.js +10 -0
  102. package/esm/index.js.map +1 -1
  103. package/lib/components/Autocomplete/Autocomplete.d.ts +24 -0
  104. package/lib/components/Autocomplete/index.d.ts +2 -0
  105. package/lib/components/Combobox/Combobox.context.d.ts +1 -1
  106. package/lib/components/Combobox/Combobox.d.ts +12 -3
  107. package/lib/components/Combobox/Combobox.types.d.ts +31 -2
  108. package/lib/components/Combobox/ComboboxGroup/ComboboxGroup.d.ts +19 -0
  109. package/lib/components/Combobox/OptionsDropdown/OptionsDropdown.d.ts +25 -0
  110. package/lib/components/Combobox/OptionsDropdown/default-options-filter.d.ts +7 -0
  111. package/lib/components/Combobox/OptionsDropdown/is-empty-combobox-data.d.ts +2 -0
  112. package/lib/components/Combobox/OptionsDropdown/is-options-group.d.ts +2 -0
  113. package/lib/components/Combobox/get-options-lockup/get-options-lockup.d.ts +3 -0
  114. package/lib/components/Combobox/index.d.ts +8 -1
  115. package/lib/components/Input/use-input-props.d.ts +33 -33
  116. package/lib/components/InputBase/InputBase.d.ts +2 -1
  117. package/lib/components/MultiSelect/MultiSelect.d.ts +41 -0
  118. package/lib/components/MultiSelect/filter-picked-values.d.ts +7 -0
  119. package/lib/components/MultiSelect/index.d.ts +2 -0
  120. package/lib/components/PillsInput/PillsInputField/PillsInputField.d.ts +3 -7
  121. package/lib/components/ScrollArea/ScrollArea.d.ts +2 -2
  122. package/lib/components/Select/Select.d.ts +33 -0
  123. package/lib/components/Select/index.d.ts +2 -0
  124. package/lib/components/TagsInput/TagsInput.d.ts +36 -0
  125. package/lib/components/TagsInput/filter-picked-tags.d.ts +7 -0
  126. package/lib/components/TagsInput/get-splitted-tags.d.ts +9 -0
  127. package/lib/components/TagsInput/index.d.ts +2 -0
  128. package/lib/components/index.d.ts +4 -0
  129. package/lib/core/styles-api/index.d.ts +1 -0
  130. package/lib/core/styles-api/use-resolved-styles-api/use-resolved-styles-api.d.ts +12 -0
  131. package/package.json +2 -2
package/cjs/index.js CHANGED
@@ -24,6 +24,7 @@ var getSize = require('./core/utils/get-size/get-size.js');
24
24
  var createVarsResolver = require('./core/styles-api/create-vars-resolver/create-vars-resolver.js');
25
25
  var resolveClassNames = require('./core/styles-api/use-styles/get-class-name/resolve-class-names/resolve-class-names.js');
26
26
  var resolveStyles = require('./core/styles-api/use-styles/get-style/resolve-styles/resolve-styles.js');
27
+ var useResolvedStylesApi = require('./core/styles-api/use-resolved-styles-api/use-resolved-styles-api.js');
27
28
  var getGlobalClassNames = require('./core/styles-api/use-styles/get-class-name/get-global-class-names/get-global-class-names.js');
28
29
  var useStyles = require('./core/styles-api/use-styles/use-styles.js');
29
30
  var defaultTheme = require('./core/MantineProvider/default-theme.js');
@@ -77,6 +78,7 @@ var Affix = require('./components/Affix/Affix.js');
77
78
  var Alert = require('./components/Alert/Alert.js');
78
79
  var Anchor = require('./components/Anchor/Anchor.js');
79
80
  var AspectRatio = require('./components/AspectRatio/AspectRatio.js');
81
+ var Autocomplete = require('./components/Autocomplete/Autocomplete.js');
80
82
  var Avatar = require('./components/Avatar/Avatar.js');
81
83
  var AvatarGroup = require('./components/Avatar/AvatarGroup/AvatarGroup.js');
82
84
  var BackgroundImage = require('./components/BackgroundImage/BackgroundImage.js');
@@ -97,6 +99,7 @@ var Collapse = require('./components/Collapse/Collapse.js');
97
99
  var ColorPicker = require('./components/ColorPicker/ColorPicker.js');
98
100
  var ColorSwatch = require('./components/ColorSwatch/ColorSwatch.js');
99
101
  var getParsedComboboxData = require('./components/Combobox/get-parsed-combobox-data/get-parsed-combobox-data.js');
102
+ var getOptionsLockup = require('./components/Combobox/get-options-lockup/get-options-lockup.js');
100
103
  var ComboboxChevron = require('./components/Combobox/ComboboxChevron/ComboboxChevron.js');
101
104
  var Combobox = require('./components/Combobox/Combobox.js');
102
105
  var ComboboxDropdown = require('./components/Combobox/ComboboxDropdown/ComboboxDropdown.js');
@@ -109,9 +112,13 @@ var ComboboxFooter = require('./components/Combobox/ComboboxFooter/ComboboxFoote
109
112
  var ComboboxHeader = require('./components/Combobox/ComboboxHeader/ComboboxHeader.js');
110
113
  var ComboboxEventsTarget = require('./components/Combobox/ComboboxEventsTarget/ComboboxEventsTarget.js');
111
114
  var ComboboxDropdownTarget = require('./components/Combobox/ComboboxDropdownTarget/ComboboxDropdownTarget.js');
115
+ var ComboboxGroup = require('./components/Combobox/ComboboxGroup/ComboboxGroup.js');
116
+ var OptionsDropdown = require('./components/Combobox/OptionsDropdown/OptionsDropdown.js');
112
117
  var useCombobox = require('./components/Combobox/use-combobox/use-combobox.js');
113
118
  var useVirtualizedCombobox = require('./components/Combobox/use-combobox/use-virtualized-combobox.js');
114
119
  var useComboboxTargetProps = require('./components/Combobox/use-combobox-target-props/use-combobox-target-props.js');
120
+ var isOptionsGroup = require('./components/Combobox/OptionsDropdown/is-options-group.js');
121
+ var defaultOptionsFilter = require('./components/Combobox/OptionsDropdown/default-options-filter.js');
115
122
  var Container = require('./components/Container/Container.js');
116
123
  var CopyButton = require('./components/CopyButton/CopyButton.js');
117
124
  var Divider = require('./components/Divider/Divider.js');
@@ -160,6 +167,7 @@ var ModalBaseHeader = require('./components/ModalBase/ModalBaseHeader.js');
160
167
  var ModalBaseOverlay = require('./components/ModalBase/ModalBaseOverlay.js');
161
168
  var ModalBaseTitle = require('./components/ModalBase/ModalBaseTitle.js');
162
169
  var NativeScrollArea = require('./components/ModalBase/NativeScrollArea.js');
170
+ var MultiSelect = require('./components/MultiSelect/MultiSelect.js');
163
171
  var NativeSelect = require('./components/NativeSelect/NativeSelect.js');
164
172
  var Notification = require('./components/Notification/Notification.js');
165
173
  var Overlay = require('./components/Overlay/Overlay.js');
@@ -175,6 +183,7 @@ var Portal = require('./components/Portal/Portal.js');
175
183
  var OptionalPortal = require('./components/Portal/OptionalPortal.js');
176
184
  var ScrollArea = require('./components/ScrollArea/ScrollArea.js');
177
185
  var SegmentedControl = require('./components/SegmentedControl/SegmentedControl.js');
186
+ var Select = require('./components/Select/Select.js');
178
187
  var Slider = require('./components/Slider/Slider/Slider.js');
179
188
  var RangeSlider = require('./components/Slider/RangeSlider/RangeSlider.js');
180
189
  var Stack = require('./components/Stack/Stack.js');
@@ -186,6 +195,7 @@ var Tabs = require('./components/Tabs/Tabs.js');
186
195
  var TabsList = require('./components/Tabs/TabsList/TabsList.js');
187
196
  var TabsTab = require('./components/Tabs/TabsTab/TabsTab.js');
188
197
  var TabsPanel = require('./components/Tabs/TabsPanel/TabsPanel.js');
198
+ var TagsInput = require('./components/TagsInput/TagsInput.js');
189
199
  var Text = require('./components/Text/Text.js');
190
200
  var TextInput = require('./components/TextInput/TextInput.js');
191
201
  var Title = require('./components/Title/Title.js');
@@ -226,6 +236,7 @@ exports.getSpacing = getSize.getSpacing;
226
236
  exports.createVarsResolver = createVarsResolver.createVarsResolver;
227
237
  exports.resolveClassNames = resolveClassNames.resolveClassNames;
228
238
  exports.resolveStyles = resolveStyles.resolveStyles;
239
+ exports.useResolvedStylesApi = useResolvedStylesApi.useResolvedStylesApi;
229
240
  exports.FOCUS_CLASS_NAMES = getGlobalClassNames.FOCUS_CLASS_NAMES;
230
241
  exports.useStyles = useStyles.useStyles;
231
242
  exports.DEFAULT_THEME = defaultTheme.DEFAULT_THEME;
@@ -289,6 +300,7 @@ exports.Affix = Affix.Affix;
289
300
  exports.Alert = Alert.Alert;
290
301
  exports.Anchor = Anchor.Anchor;
291
302
  exports.AspectRatio = AspectRatio.AspectRatio;
303
+ exports.Autocomplete = Autocomplete.Autocomplete;
292
304
  exports.Avatar = Avatar.Avatar;
293
305
  exports.AvatarGroup = AvatarGroup.AvatarGroup;
294
306
  exports.BackgroundImage = BackgroundImage.BackgroundImage;
@@ -309,6 +321,8 @@ exports.Collapse = Collapse.Collapse;
309
321
  exports.ColorPicker = ColorPicker.ColorPicker;
310
322
  exports.ColorSwatch = ColorSwatch.ColorSwatch;
311
323
  exports.getParsedComboboxData = getParsedComboboxData.getParsedComboboxData;
324
+ exports.getLabelsLockup = getOptionsLockup.getLabelsLockup;
325
+ exports.getOptionsLockup = getOptionsLockup.getOptionsLockup;
312
326
  exports.ComboboxChevron = ComboboxChevron.ComboboxChevron;
313
327
  exports.Combobox = Combobox.Combobox;
314
328
  exports.ComboboxDropdown = ComboboxDropdown.ComboboxDropdown;
@@ -321,9 +335,13 @@ exports.ComboboxFooter = ComboboxFooter.ComboboxFooter;
321
335
  exports.ComboboxHeader = ComboboxHeader.ComboboxHeader;
322
336
  exports.ComboboxEventsTarget = ComboboxEventsTarget.ComboboxEventsTarget;
323
337
  exports.ComboboxDropdownTarget = ComboboxDropdownTarget.ComboboxDropdownTarget;
338
+ exports.ComboboxGroup = ComboboxGroup.ComboboxGroup;
339
+ exports.OptionsDropdown = OptionsDropdown.OptionsDropdown;
324
340
  exports.useCombobox = useCombobox.useCombobox;
325
341
  exports.useVirtualizedCombobox = useVirtualizedCombobox.useVirtualizedCombobox;
326
342
  exports.useComboboxTargetProps = useComboboxTargetProps.useComboboxTargetProps;
343
+ exports.isOptionsGroup = isOptionsGroup.isOptionsGroup;
344
+ exports.defaultOptionsFilter = defaultOptionsFilter.defaultOptionsFilter;
327
345
  exports.Container = Container.Container;
328
346
  exports.CopyButton = CopyButton.CopyButton;
329
347
  exports.Divider = Divider.Divider;
@@ -373,6 +391,7 @@ exports.ModalBaseHeader = ModalBaseHeader.ModalBaseHeader;
373
391
  exports.ModalBaseOverlay = ModalBaseOverlay.ModalBaseOverlay;
374
392
  exports.ModalBaseTitle = ModalBaseTitle.ModalBaseTitle;
375
393
  exports.NativeScrollArea = NativeScrollArea.NativeScrollArea;
394
+ exports.MultiSelect = MultiSelect.MultiSelect;
376
395
  exports.NativeSelect = NativeSelect.NativeSelect;
377
396
  exports.Notification = Notification.Notification;
378
397
  exports.Overlay = Overlay.Overlay;
@@ -389,6 +408,7 @@ exports.OptionalPortal = OptionalPortal.OptionalPortal;
389
408
  exports.ScrollArea = ScrollArea.ScrollArea;
390
409
  exports.ScrollAreaAutosize = ScrollArea.ScrollAreaAutosize;
391
410
  exports.SegmentedControl = SegmentedControl.SegmentedControl;
411
+ exports.Select = Select.Select;
392
412
  exports.Slider = Slider.Slider;
393
413
  exports.RangeSlider = RangeSlider.RangeSlider;
394
414
  exports.Stack = Stack.Stack;
@@ -406,6 +426,7 @@ exports.Tabs = Tabs.Tabs;
406
426
  exports.TabsList = TabsList.TabsList;
407
427
  exports.TabsTab = TabsTab.TabsTab;
408
428
  exports.TabsPanel = TabsPanel.TabsPanel;
429
+ exports.TagsInput = TagsInput.TagsInput;
409
430
  exports.Text = Text.Text;
410
431
  exports.TextInput = TextInput.TextInput;
411
432
  exports.Title = Title.Title;
package/cjs/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,193 @@
1
+ import React, { useEffect } from 'react';
2
+ import { useUncontrolled } from '@mantine/hooks';
3
+ import { getParsedComboboxData } from '../Combobox/get-parsed-combobox-data/get-parsed-combobox-data.js';
4
+ import { getOptionsLockup } from '../Combobox/get-options-lockup/get-options-lockup.js';
5
+ import { useCombobox } from '../Combobox/use-combobox/use-combobox.js';
6
+ import { useResolvedStylesApi } from '../../core/styles-api/use-resolved-styles-api/use-resolved-styles-api.js';
7
+ import { Combobox } from '../Combobox/Combobox.js';
8
+ import { InputBase } from '../InputBase/InputBase.js';
9
+ import { OptionsDropdown } from '../Combobox/OptionsDropdown/OptionsDropdown.js';
10
+ import { factory } from '../../core/factory/factory.js';
11
+ import { useProps } from '../../core/MantineProvider/use-props/use-props.js';
12
+
13
+ var __defProp = Object.defineProperty;
14
+ var __defProps = Object.defineProperties;
15
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
16
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
17
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
18
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
19
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
20
+ var __spreadValues = (a, b) => {
21
+ for (var prop in b || (b = {}))
22
+ if (__hasOwnProp.call(b, prop))
23
+ __defNormalProp(a, prop, b[prop]);
24
+ if (__getOwnPropSymbols)
25
+ for (var prop of __getOwnPropSymbols(b)) {
26
+ if (__propIsEnum.call(b, prop))
27
+ __defNormalProp(a, prop, b[prop]);
28
+ }
29
+ return a;
30
+ };
31
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
32
+ var __objRest = (source, exclude) => {
33
+ var target = {};
34
+ for (var prop in source)
35
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
36
+ target[prop] = source[prop];
37
+ if (source != null && __getOwnPropSymbols)
38
+ for (var prop of __getOwnPropSymbols(source)) {
39
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
40
+ target[prop] = source[prop];
41
+ }
42
+ return target;
43
+ };
44
+ const defaultProps = {};
45
+ const Autocomplete = factory((_props, ref) => {
46
+ const props = useProps("Autocomplete", defaultProps, _props);
47
+ const _a = props, {
48
+ classNames,
49
+ styles,
50
+ unstyled,
51
+ vars,
52
+ dropdownOpened,
53
+ defaultDropdownOpened,
54
+ onDropdownClose,
55
+ onDropdownOpen,
56
+ onFocus,
57
+ onBlur,
58
+ onClick,
59
+ onChange,
60
+ data,
61
+ value,
62
+ defaultValue,
63
+ selectFirstOptionOnChange,
64
+ onOptionSubmit,
65
+ comboboxProps,
66
+ readOnly,
67
+ disabled,
68
+ filter,
69
+ limit,
70
+ withScrollArea,
71
+ maxDropdownHeight,
72
+ size
73
+ } = _a, others = __objRest(_a, [
74
+ "classNames",
75
+ "styles",
76
+ "unstyled",
77
+ "vars",
78
+ "dropdownOpened",
79
+ "defaultDropdownOpened",
80
+ "onDropdownClose",
81
+ "onDropdownOpen",
82
+ "onFocus",
83
+ "onBlur",
84
+ "onClick",
85
+ "onChange",
86
+ "data",
87
+ "value",
88
+ "defaultValue",
89
+ "selectFirstOptionOnChange",
90
+ "onOptionSubmit",
91
+ "comboboxProps",
92
+ "readOnly",
93
+ "disabled",
94
+ "filter",
95
+ "limit",
96
+ "withScrollArea",
97
+ "maxDropdownHeight",
98
+ "size"
99
+ ]);
100
+ const parsedData = getParsedComboboxData(data);
101
+ const optionsLockup = getOptionsLockup(parsedData);
102
+ const [_value, setValue] = useUncontrolled({
103
+ value,
104
+ defaultValue,
105
+ finalValue: "",
106
+ onChange
107
+ });
108
+ const combobox = useCombobox({
109
+ opened: dropdownOpened,
110
+ defaultOpened: defaultDropdownOpened,
111
+ onDropdownOpen,
112
+ onDropdownClose: () => {
113
+ onDropdownClose == null ? void 0 : onDropdownClose();
114
+ combobox.resetSelectedOption();
115
+ }
116
+ });
117
+ const { resolvedClassNames, resolvedStyles } = useResolvedStylesApi({
118
+ props,
119
+ styles,
120
+ classNames
121
+ });
122
+ useEffect(() => {
123
+ if (selectFirstOptionOnChange) {
124
+ combobox.selectFirstOption();
125
+ }
126
+ }, [selectFirstOptionOnChange, _value]);
127
+ return /* @__PURE__ */ React.createElement(
128
+ Combobox,
129
+ __spreadValues({
130
+ store: combobox,
131
+ __staticSelector: "Autocomplete",
132
+ classNames: resolvedClassNames,
133
+ styles: resolvedStyles,
134
+ unstyled,
135
+ onOptionSubmit: (val) => {
136
+ onOptionSubmit == null ? void 0 : onOptionSubmit(val);
137
+ setValue(optionsLockup[val].label);
138
+ combobox.closeDropdown();
139
+ },
140
+ size
141
+ }, comboboxProps),
142
+ /* @__PURE__ */ React.createElement(Combobox.Target, null, /* @__PURE__ */ React.createElement(
143
+ InputBase,
144
+ __spreadProps(__spreadValues({
145
+ ref
146
+ }, others), {
147
+ size,
148
+ __staticSelector: "Autocomplete",
149
+ disabled,
150
+ readOnly,
151
+ value: _value,
152
+ onChange: (event) => {
153
+ setValue(event.currentTarget.value);
154
+ combobox.openDropdown();
155
+ selectFirstOptionOnChange && combobox.selectFirstOption();
156
+ },
157
+ onFocus: (event) => {
158
+ combobox.openDropdown();
159
+ onFocus == null ? void 0 : onFocus(event);
160
+ },
161
+ onBlur: (event) => {
162
+ combobox.closeDropdown();
163
+ onBlur == null ? void 0 : onBlur(event);
164
+ },
165
+ onClick: (event) => {
166
+ combobox.openDropdown();
167
+ onClick == null ? void 0 : onClick(event);
168
+ },
169
+ classNames: resolvedClassNames,
170
+ styles: resolvedStyles,
171
+ unstyled
172
+ })
173
+ )),
174
+ /* @__PURE__ */ React.createElement(
175
+ OptionsDropdown,
176
+ {
177
+ data: parsedData,
178
+ hidden: readOnly || disabled,
179
+ filter,
180
+ search: _value,
181
+ limit,
182
+ hiddenWhenEmpty: true,
183
+ withScrollArea,
184
+ maxDropdownHeight
185
+ }
186
+ )
187
+ );
188
+ });
189
+ Autocomplete.classes = __spreadValues(__spreadValues({}, InputBase.classes), Combobox.classes);
190
+ Autocomplete.displayName = "@mantine/core/Autocomplete";
191
+
192
+ export { Autocomplete };
193
+ //# sourceMappingURL=Autocomplete.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Autocomplete.js","sources":["../../../src/components/Autocomplete/Autocomplete.tsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport { useUncontrolled } from '@mantine/hooks';\nimport {\n BoxProps,\n StylesApiProps,\n factory,\n ElementProps,\n useProps,\n Factory,\n useResolvedStylesApi,\n} from '../../core';\nimport { InputBase } from '../InputBase';\nimport { __InputStylesNames, __BaseInputProps, InputVariant } from '../Input';\nimport {\n Combobox,\n OptionsDropdown,\n useCombobox,\n getParsedComboboxData,\n getOptionsLockup,\n ComboboxLikeProps,\n ComboboxLikeStylesNames,\n} from '../Combobox';\n\nexport type AutocompleteStylesNames = __InputStylesNames | ComboboxLikeStylesNames;\n\nexport interface AutocompleteProps\n extends BoxProps,\n __BaseInputProps,\n ComboboxLikeProps,\n StylesApiProps<AutocompleteFactory>,\n ElementProps<'input', 'onChange' | 'size'> {\n /** Controlled component value */\n value?: string;\n\n /** Uncontrolled component default value */\n defaultValue?: string;\n\n /** Called when value changes */\n onChange?(value: string): void;\n}\n\nexport type AutocompleteFactory = Factory<{\n props: AutocompleteProps;\n ref: HTMLInputElement;\n stylesNames: AutocompleteStylesNames;\n variant: InputVariant;\n}>;\n\nconst defaultProps: Partial<AutocompleteProps> = {};\n\nexport const Autocomplete = factory<AutocompleteFactory>((_props, ref) => {\n const props = useProps('Autocomplete', defaultProps, _props);\n const {\n classNames,\n styles,\n unstyled,\n vars,\n dropdownOpened,\n defaultDropdownOpened,\n onDropdownClose,\n onDropdownOpen,\n onFocus,\n onBlur,\n onClick,\n onChange,\n data,\n value,\n defaultValue,\n selectFirstOptionOnChange,\n onOptionSubmit,\n comboboxProps,\n readOnly,\n disabled,\n filter,\n limit,\n withScrollArea,\n maxDropdownHeight,\n size,\n ...others\n } = props;\n\n const parsedData = getParsedComboboxData(data);\n const optionsLockup = getOptionsLockup(parsedData);\n\n const [_value, setValue] = useUncontrolled({\n value,\n defaultValue,\n finalValue: '',\n onChange,\n });\n\n const combobox = useCombobox({\n opened: dropdownOpened,\n defaultOpened: defaultDropdownOpened,\n onDropdownOpen,\n onDropdownClose: () => {\n onDropdownClose?.();\n combobox.resetSelectedOption();\n },\n });\n\n const { resolvedClassNames, resolvedStyles } = useResolvedStylesApi<AutocompleteFactory>({\n props,\n styles,\n classNames,\n });\n\n useEffect(() => {\n if (selectFirstOptionOnChange) {\n combobox.selectFirstOption();\n }\n }, [selectFirstOptionOnChange, _value]);\n\n return (\n <Combobox\n store={combobox}\n __staticSelector=\"Autocomplete\"\n classNames={resolvedClassNames}\n styles={resolvedStyles}\n unstyled={unstyled}\n onOptionSubmit={(val) => {\n onOptionSubmit?.(val);\n setValue(optionsLockup[val].label);\n combobox.closeDropdown();\n }}\n size={size}\n {...comboboxProps}\n >\n <Combobox.Target>\n <InputBase\n ref={ref}\n {...others}\n size={size}\n __staticSelector=\"Autocomplete\"\n disabled={disabled}\n readOnly={readOnly}\n value={_value}\n onChange={(event) => {\n setValue(event.currentTarget.value);\n combobox.openDropdown();\n selectFirstOptionOnChange && combobox.selectFirstOption();\n }}\n onFocus={(event) => {\n combobox.openDropdown();\n onFocus?.(event);\n }}\n onBlur={(event) => {\n combobox.closeDropdown();\n onBlur?.(event);\n }}\n onClick={(event) => {\n combobox.openDropdown();\n onClick?.(event);\n }}\n classNames={resolvedClassNames}\n styles={resolvedStyles}\n unstyled={unstyled}\n />\n </Combobox.Target>\n <OptionsDropdown\n data={parsedData}\n hidden={readOnly || disabled}\n filter={filter}\n search={_value}\n limit={limit}\n hiddenWhenEmpty\n withScrollArea={withScrollArea}\n maxDropdownHeight={maxDropdownHeight}\n />\n </Combobox>\n );\n});\n\nAutocomplete.classes = { ...InputBase.classes, ...Combobox.classes };\nAutocomplete.displayName = '@mantine/core/Autocomplete';\n"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import React from 'react';
2
2
  import classes from './Breadcrumbs.module.css.js';
3
- import { isElement } from '../../core/utils/is-element/is-element.js';
4
3
  import { factory } from '../../core/factory/factory.js';
5
4
  import { useProps } from '../../core/MantineProvider/use-props/use-props.js';
6
5
  import { useStyles } from '../../core/styles-api/use-styles/use-styles.js';
6
+ import { isElement } from '../../core/utils/is-element/is-element.js';
7
7
  import { Box } from '../../core/Box/Box.js';
8
8
  import { createVarsResolver } from '../../core/styles-api/create-vars-resolver/create-vars-resolver.js';
9
9
  import { getSpacing } from '../../core/utils/get-size/get-size.js';
@@ -1 +1 @@
1
- {"version":3,"file":"Combobox.context.js","sources":["../../../src/components/Combobox/Combobox.context.ts"],"sourcesContent":["import { createSafeContext, GetStylesApi, MantineSize } from '../../core';\nimport type { ComboboxFactory } from './Combobox';\nimport type { ComboboxOptionProps } from './ComboboxOption/ComboboxOption';\nimport type { ComboboxStore } from './use-combobox/use-combobox';\n\nexport interface ComboboxContextValue {\n getStyles: GetStylesApi<ComboboxFactory>;\n store: ComboboxStore;\n onOptionSelect?(value: string, optionProps: ComboboxOptionProps): void;\n size: MantineSize | (string & {});\n resetSelectionOnOptionHover: boolean | undefined;\n}\n\nexport const [ComboboxProvider, useComboboxContext] = createSafeContext<ComboboxContextValue>(\n 'Combobox component was not found in tree'\n);\n"],"names":[],"mappings":";;AACY,MAAC,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,GAAG,iBAAiB;AACvE,EAAE,0CAA0C;AAC5C;;;;"}
1
+ {"version":3,"file":"Combobox.context.js","sources":["../../../src/components/Combobox/Combobox.context.ts"],"sourcesContent":["import { createSafeContext, GetStylesApi, MantineSize } from '../../core';\nimport type { ComboboxFactory } from './Combobox';\nimport type { ComboboxOptionProps } from './ComboboxOption/ComboboxOption';\nimport type { ComboboxStore } from './use-combobox/use-combobox';\n\nexport interface ComboboxContextValue {\n getStyles: GetStylesApi<ComboboxFactory>;\n store: ComboboxStore;\n onOptionSubmit?(value: string, optionProps: ComboboxOptionProps): void;\n size: MantineSize | (string & {});\n resetSelectionOnOptionHover: boolean | undefined;\n}\n\nexport const [ComboboxProvider, useComboboxContext] = createSafeContext<ComboboxContextValue>(\n 'Combobox component was not found in tree'\n);\n"],"names":[],"mappings":";;AACY,MAAC,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,GAAG,iBAAiB;AACvE,EAAE,0CAA0C;AAC5C;;;;"}
@@ -12,6 +12,7 @@ import { ComboboxFooter } from './ComboboxFooter/ComboboxFooter.js';
12
12
  import { ComboboxHeader } from './ComboboxHeader/ComboboxHeader.js';
13
13
  import { ComboboxEventsTarget } from './ComboboxEventsTarget/ComboboxEventsTarget.js';
14
14
  import { ComboboxDropdownTarget } from './ComboboxDropdownTarget/ComboboxDropdownTarget.js';
15
+ import { ComboboxGroup } from './ComboboxGroup/ComboboxGroup.js';
15
16
  import classes from './Combobox.module.css.js';
16
17
  import { Popover } from '../Popover/Popover.js';
17
18
  import { useProps } from '../../core/MantineProvider/use-props/use-props.js';
@@ -80,10 +81,11 @@ function Combobox(_props) {
80
81
  children,
81
82
  store: controlledStore,
82
83
  vars,
83
- onOptionSelect,
84
+ onOptionSubmit,
84
85
  size,
85
86
  dropdownPadding,
86
- resetSelectionOnOptionHover
87
+ resetSelectionOnOptionHover,
88
+ __staticSelector
87
89
  } = _a, others = __objRest(_a, [
88
90
  "classNames",
89
91
  "styles",
@@ -91,15 +93,16 @@ function Combobox(_props) {
91
93
  "children",
92
94
  "store",
93
95
  "vars",
94
- "onOptionSelect",
96
+ "onOptionSubmit",
95
97
  "size",
96
98
  "dropdownPadding",
97
- "resetSelectionOnOptionHover"
99
+ "resetSelectionOnOptionHover",
100
+ "__staticSelector"
98
101
  ]);
99
102
  const uncontrolledStore = useCombobox();
100
103
  const store = controlledStore || uncontrolledStore;
101
104
  const getStyles = useStyles({
102
- name: "Combobox",
105
+ name: __staticSelector || "Combobox",
103
106
  classes,
104
107
  props,
105
108
  classNames,
@@ -111,7 +114,7 @@ function Combobox(_props) {
111
114
  return /* @__PURE__ */ React.createElement(
112
115
  ComboboxProvider,
113
116
  {
114
- value: { getStyles, store, onOptionSelect, size, resetSelectionOnOptionHover }
117
+ value: { getStyles, store, onOptionSubmit, size, resetSelectionOnOptionHover }
115
118
  },
116
119
  /* @__PURE__ */ React.createElement(
117
120
  Popover,
@@ -138,6 +141,7 @@ Combobox.Footer = ComboboxFooter;
138
141
  Combobox.Header = ComboboxHeader;
139
142
  Combobox.EventsTarget = ComboboxEventsTarget;
140
143
  Combobox.DropdownTarget = ComboboxDropdownTarget;
144
+ Combobox.Group = ComboboxGroup;
141
145
 
142
146
  export { Combobox };
143
147
  //# sourceMappingURL=Combobox.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Combobox.js","sources":["../../../src/components/Combobox/Combobox.tsx"],"sourcesContent":["import React from 'react';\nimport {\n StylesApiProps,\n useProps,\n useStyles,\n Factory,\n createVarsResolver,\n MantineSize,\n getFontSize,\n rem,\n getSize,\n} from '../../core';\nimport { __PopoverProps, Popover } from '../Popover';\nimport { useCombobox, ComboboxStore } from './use-combobox/use-combobox';\nimport { ComboboxProvider } from './Combobox.context';\nimport { ComboboxTarget } from './ComboboxTarget/ComboboxTarget';\nimport { ComboboxDropdown } from './ComboboxDropdown/ComboboxDropdown';\nimport { ComboboxOptions } from './ComboboxOptions/ComboboxOptions';\nimport { ComboboxOption, ComboboxOptionProps } from './ComboboxOption/ComboboxOption';\nimport { ComboboxSearch } from './ComboboxSearch/ComboboxSearch';\nimport { ComboboxEmpty } from './ComboboxEmpty/ComboboxEmpty';\nimport { ComboboxChevron } from './ComboboxChevron/ComboboxChevron';\nimport { ComboboxFooter } from './ComboboxFooter/ComboboxFooter';\nimport { ComboboxHeader } from './ComboboxHeader/ComboboxHeader';\nimport { ComboboxEventsTarget } from './ComboboxEventsTarget/ComboboxEventsTarget';\nimport { ComboboxDropdownTarget } from './ComboboxDropdownTarget/ComboboxDropdownTarget';\nimport classes from './Combobox.module.css';\n\nexport type ComboboxStylesNames =\n | 'options'\n | 'dropdown'\n | 'option'\n | 'search'\n | 'empty'\n | 'footer'\n | 'header';\n\nexport type ComboboxCSSVariables = {\n options: '--combobox-option-fz' | '--combobox-option-padding';\n dropdown: '--combobox-padding' | '--combobox-option-fz' | '--combobox-option-padding';\n};\n\nexport interface ComboboxProps extends __PopoverProps, StylesApiProps<ComboboxFactory> {\n /** Combobox content */\n children: React.ReactNode;\n\n /** Combobox store, can be used to control combobox state */\n store?: ComboboxStore;\n\n /** Called when item is selected with `Enter` key or by clicking it */\n onOptionSelect?(value: string, optionProps: ComboboxOptionProps): void;\n\n /** Controls items `font-size` and `padding`, `'sm'` by default */\n size?: MantineSize | (string & {});\n\n /** Controls `padding` of the dropdown, `4` by default */\n dropdownPadding?: React.CSSProperties['padding'];\n\n /** Determines whether selection should be reset when option is hovered, `false` by default */\n resetSelectionOnOptionHover?: boolean;\n}\n\nexport type ComboboxFactory = Factory<{\n props: ComboboxProps;\n ref: HTMLDivElement;\n stylesNames: ComboboxStylesNames;\n vars: ComboboxCSSVariables;\n staticComponents: {\n Target: typeof ComboboxTarget;\n Dropdown: typeof ComboboxDropdown;\n Options: typeof ComboboxOptions;\n Option: typeof ComboboxOption;\n Search: typeof ComboboxSearch;\n Empty: typeof ComboboxEmpty;\n Chevron: typeof ComboboxChevron;\n Footer: typeof ComboboxFooter;\n Header: typeof ComboboxHeader;\n EventsTarget: typeof ComboboxEventsTarget;\n DropdownTarget: typeof ComboboxDropdownTarget;\n };\n}>;\n\nconst defaultProps: Partial<ComboboxProps> = {\n keepMounted: true,\n withinPortal: true,\n resetSelectionOnOptionHover: false,\n width: 'target',\n transitionProps: { transition: 'fade', duration: 0 },\n size: 'sm',\n dropdownPadding: 4,\n};\n\nconst varsResolver = createVarsResolver<ComboboxFactory>((_, { size, dropdownPadding }) => ({\n options: {\n '--combobox-option-fz': getFontSize(size),\n '--combobox-option-padding': getSize(size, 'combobox-option-padding'),\n },\n\n dropdown: {\n '--combobox-padding': rem(dropdownPadding),\n '--combobox-option-fz': getFontSize(size),\n '--combobox-option-padding': getSize(size, 'combobox-option-padding'),\n },\n}));\n\nexport function Combobox(_props: ComboboxProps) {\n const props = useProps('Combobox', defaultProps, _props);\n const {\n classNames,\n styles,\n unstyled,\n children,\n store: controlledStore,\n vars,\n onOptionSelect,\n size,\n dropdownPadding,\n resetSelectionOnOptionHover,\n ...others\n } = props;\n\n const uncontrolledStore = useCombobox();\n const store = controlledStore || uncontrolledStore;\n\n const getStyles = useStyles<ComboboxFactory>({\n name: 'Combobox',\n classes,\n props,\n classNames,\n styles,\n unstyled,\n vars,\n varsResolver,\n });\n\n return (\n <ComboboxProvider\n value={{ getStyles, store, onOptionSelect, size: size!, resetSelectionOnOptionHover }}\n >\n <Popover\n opened={store.dropdownOpened}\n {...others}\n onClose={store.closeDropdown}\n withRoles={false}\n >\n {children}\n </Popover>\n </ComboboxProvider>\n );\n}\n\nCombobox.classes = classes;\nCombobox.displayName = '@mantine/core/Combobox';\nCombobox.Target = ComboboxTarget;\nCombobox.Dropdown = ComboboxDropdown;\nCombobox.Options = ComboboxOptions;\nCombobox.Option = ComboboxOption;\nCombobox.Search = ComboboxSearch;\nCombobox.Empty = ComboboxEmpty;\nCombobox.Chevron = ComboboxChevron;\nCombobox.Footer = ComboboxFooter;\nCombobox.Header = ComboboxHeader;\nCombobox.EventsTarget = ComboboxEventsTarget;\nCombobox.DropdownTarget = ComboboxDropdownTarget;\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Combobox.js","sources":["../../../src/components/Combobox/Combobox.tsx"],"sourcesContent":["import React from 'react';\nimport {\n StylesApiProps,\n useProps,\n useStyles,\n Factory,\n createVarsResolver,\n MantineSize,\n getFontSize,\n rem,\n getSize,\n} from '../../core';\nimport { __PopoverProps, Popover } from '../Popover';\nimport { useCombobox, ComboboxStore } from './use-combobox/use-combobox';\nimport { ComboboxProvider } from './Combobox.context';\nimport { ComboboxTarget } from './ComboboxTarget/ComboboxTarget';\nimport { ComboboxDropdown } from './ComboboxDropdown/ComboboxDropdown';\nimport { ComboboxOptions } from './ComboboxOptions/ComboboxOptions';\nimport { ComboboxOption, ComboboxOptionProps } from './ComboboxOption/ComboboxOption';\nimport { ComboboxSearch } from './ComboboxSearch/ComboboxSearch';\nimport { ComboboxEmpty } from './ComboboxEmpty/ComboboxEmpty';\nimport { ComboboxChevron } from './ComboboxChevron/ComboboxChevron';\nimport { ComboboxFooter } from './ComboboxFooter/ComboboxFooter';\nimport { ComboboxHeader } from './ComboboxHeader/ComboboxHeader';\nimport { ComboboxEventsTarget } from './ComboboxEventsTarget/ComboboxEventsTarget';\nimport { ComboboxDropdownTarget } from './ComboboxDropdownTarget/ComboboxDropdownTarget';\nimport { ComboboxGroup } from './ComboboxGroup/ComboboxGroup';\nimport classes from './Combobox.module.css';\n\nexport type ComboboxStylesNames =\n | 'options'\n | 'dropdown'\n | 'option'\n | 'search'\n | 'empty'\n | 'footer'\n | 'header'\n | 'group'\n | 'groupLabel';\n\nexport type ComboboxCSSVariables = {\n options: '--combobox-option-fz' | '--combobox-option-padding';\n dropdown: '--combobox-padding' | '--combobox-option-fz' | '--combobox-option-padding';\n};\n\nexport interface ComboboxProps extends __PopoverProps, StylesApiProps<ComboboxFactory> {\n __staticSelector?: string;\n\n /** Combobox content */\n children?: React.ReactNode;\n\n /** Combobox store, can be used to control combobox state */\n store?: ComboboxStore;\n\n /** Called when item is selected with `Enter` key or by clicking it */\n onOptionSubmit?(value: string, optionProps: ComboboxOptionProps): void;\n\n /** Controls items `font-size` and `padding`, `'sm'` by default */\n size?: MantineSize | (string & {});\n\n /** Controls `padding` of the dropdown, `4` by default */\n dropdownPadding?: React.CSSProperties['padding'];\n\n /** Determines whether selection should be reset when option is hovered, `false` by default */\n resetSelectionOnOptionHover?: boolean;\n}\n\nexport type ComboboxFactory = Factory<{\n props: ComboboxProps;\n ref: HTMLDivElement;\n stylesNames: ComboboxStylesNames;\n vars: ComboboxCSSVariables;\n staticComponents: {\n Target: typeof ComboboxTarget;\n Dropdown: typeof ComboboxDropdown;\n Options: typeof ComboboxOptions;\n Option: typeof ComboboxOption;\n Search: typeof ComboboxSearch;\n Empty: typeof ComboboxEmpty;\n Chevron: typeof ComboboxChevron;\n Footer: typeof ComboboxFooter;\n Header: typeof ComboboxHeader;\n EventsTarget: typeof ComboboxEventsTarget;\n DropdownTarget: typeof ComboboxDropdownTarget;\n Group: typeof ComboboxGroup;\n };\n}>;\n\nconst defaultProps: Partial<ComboboxProps> = {\n keepMounted: true,\n withinPortal: true,\n resetSelectionOnOptionHover: false,\n width: 'target',\n transitionProps: { transition: 'fade', duration: 0 },\n size: 'sm',\n dropdownPadding: 4,\n};\n\nconst varsResolver = createVarsResolver<ComboboxFactory>((_, { size, dropdownPadding }) => ({\n options: {\n '--combobox-option-fz': getFontSize(size),\n '--combobox-option-padding': getSize(size, 'combobox-option-padding'),\n },\n\n dropdown: {\n '--combobox-padding': rem(dropdownPadding),\n '--combobox-option-fz': getFontSize(size),\n '--combobox-option-padding': getSize(size, 'combobox-option-padding'),\n },\n}));\n\nexport function Combobox(_props: ComboboxProps) {\n const props = useProps('Combobox', defaultProps, _props);\n const {\n classNames,\n styles,\n unstyled,\n children,\n store: controlledStore,\n vars,\n onOptionSubmit,\n size,\n dropdownPadding,\n resetSelectionOnOptionHover,\n __staticSelector,\n ...others\n } = props;\n\n const uncontrolledStore = useCombobox();\n const store = controlledStore || uncontrolledStore;\n\n const getStyles = useStyles<ComboboxFactory>({\n name: __staticSelector || 'Combobox',\n classes,\n props,\n classNames,\n styles,\n unstyled,\n vars,\n varsResolver,\n });\n\n return (\n <ComboboxProvider\n value={{ getStyles, store, onOptionSubmit, size: size!, resetSelectionOnOptionHover }}\n >\n <Popover\n opened={store.dropdownOpened}\n {...others}\n onClose={store.closeDropdown}\n withRoles={false}\n >\n {children}\n </Popover>\n </ComboboxProvider>\n );\n}\n\nCombobox.classes = classes;\nCombobox.displayName = '@mantine/core/Combobox';\nCombobox.Target = ComboboxTarget;\nCombobox.Dropdown = ComboboxDropdown;\nCombobox.Options = ComboboxOptions;\nCombobox.Option = ComboboxOption;\nCombobox.Search = ComboboxSearch;\nCombobox.Empty = ComboboxEmpty;\nCombobox.Chevron = ComboboxChevron;\nCombobox.Footer = ComboboxFooter;\nCombobox.Header = ComboboxHeader;\nCombobox.EventsTarget = ComboboxEventsTarget;\nCombobox.DropdownTarget = ComboboxDropdownTarget;\nCombobox.Group = ComboboxGroup;\n"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- var classes = {"dropdown":"mantine-oGVJEaz","options":"mantine-5kIu9Ez","option":"mantine-Jvh599k","search":"mantine-E0imXrV","empty":"mantine-AHC-x-C","header":"mantine-raltP2G","footer":"mantine-dRrkbFg"};
1
+ var classes = {"dropdown":"mantine-oGVJEaz","options":"mantine-5kIu9Ez","option":"mantine-Jvh599k","search":"mantine-E0imXrV","empty":"mantine-AHC-x-C","header":"mantine-raltP2G","footer":"mantine-dRrkbFg","group":"mantine-kkccSNb","groupLabel":"mantine-e3mmS3k"};
2
2
 
3
3
  export default classes;
4
4
  //# sourceMappingURL=Combobox.module.css.js.map
@@ -58,7 +58,7 @@ const ComboboxEventsTarget = factory((props, ref) => {
58
58
  onKeyDown: children.props.onKeyDown
59
59
  });
60
60
  return cloneElement(children, __spreadProps(__spreadValues(__spreadValues({}, targetProps), others), {
61
- [refProp]: useMergedRef(ref, ctx.store.targetRef)
61
+ [refProp]: useMergedRef(ref, ctx.store.targetRef, children == null ? void 0 : children.ref)
62
62
  }));
63
63
  });
64
64
  ComboboxEventsTarget.displayName = "@mantine/core/ComboboxEventsTarget";
@@ -1 +1 @@
1
- {"version":3,"file":"ComboboxEventsTarget.js","sources":["../../../../src/components/Combobox/ComboboxEventsTarget/ComboboxEventsTarget.tsx"],"sourcesContent":["import React, { cloneElement } from 'react';\nimport { useMergedRef } from '@mantine/hooks';\nimport { isElement, useProps, factory, Factory } from '../../../core';\nimport { useComboboxTargetProps } from '../use-combobox-target-props/use-combobox-target-props';\nimport { useComboboxContext } from '../Combobox.context';\n\nexport interface ComboboxEventsTargetProps {\n /** Target element */\n children: React.ReactNode;\n\n /** Key of the prop that should be used to access element ref */\n refProp?: string;\n\n /** Determines whether component should respond to keyboard events, `true` by default */\n withKeyboardNavigation?: boolean;\n\n /** Determines whether the target should have `aria-` attributes, `true` by default */\n withAriaAttributes?: boolean;\n\n /** Determines which events should be handled by the target element.\n * `button` target type handles `Space` and `Enter` keys to toggle dropdown opened state.\n * `input` by default.\n * */\n targetType?: 'button' | 'input';\n}\n\nconst defaultProps: Partial<ComboboxEventsTargetProps> = {\n refProp: 'ref',\n targetType: 'input',\n withKeyboardNavigation: true,\n withAriaAttributes: true,\n};\n\nexport type ComboboxEventsTargetFactory = Factory<{\n props: ComboboxEventsTargetProps;\n ref: HTMLElement;\n compound: true;\n}>;\n\nexport const ComboboxEventsTarget = factory<ComboboxEventsTargetFactory>((props, ref) => {\n const { children, refProp, withKeyboardNavigation, withAriaAttributes, targetType, ...others } =\n useProps('ComboboxEventsTarget', defaultProps, props);\n\n if (!isElement(children)) {\n throw new Error(\n 'Combobox.EventsTarget component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported'\n );\n }\n\n const ctx = useComboboxContext();\n const targetProps = useComboboxTargetProps({\n targetType,\n withAriaAttributes,\n withKeyboardNavigation,\n onKeyDown: children.props.onKeyDown,\n });\n\n return cloneElement(children, {\n ...targetProps,\n ...others,\n [refProp!]: useMergedRef(ref, ctx.store.targetRef),\n });\n});\n\nComboboxEventsTarget.displayName = '@mantine/core/ComboboxEventsTarget';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ComboboxEventsTarget.js","sources":["../../../../src/components/Combobox/ComboboxEventsTarget/ComboboxEventsTarget.tsx"],"sourcesContent":["import React, { cloneElement } from 'react';\nimport { useMergedRef } from '@mantine/hooks';\nimport { isElement, useProps, factory, Factory } from '../../../core';\nimport { useComboboxTargetProps } from '../use-combobox-target-props/use-combobox-target-props';\nimport { useComboboxContext } from '../Combobox.context';\n\nexport interface ComboboxEventsTargetProps {\n /** Target element */\n children: React.ReactNode;\n\n /** Key of the prop that should be used to access element ref */\n refProp?: string;\n\n /** Determines whether component should respond to keyboard events, `true` by default */\n withKeyboardNavigation?: boolean;\n\n /** Determines whether the target should have `aria-` attributes, `true` by default */\n withAriaAttributes?: boolean;\n\n /** Determines which events should be handled by the target element.\n * `button` target type handles `Space` and `Enter` keys to toggle dropdown opened state.\n * `input` by default.\n * */\n targetType?: 'button' | 'input';\n}\n\nconst defaultProps: Partial<ComboboxEventsTargetProps> = {\n refProp: 'ref',\n targetType: 'input',\n withKeyboardNavigation: true,\n withAriaAttributes: true,\n};\n\nexport type ComboboxEventsTargetFactory = Factory<{\n props: ComboboxEventsTargetProps;\n ref: HTMLElement;\n compound: true;\n}>;\n\nexport const ComboboxEventsTarget = factory<ComboboxEventsTargetFactory>((props, ref) => {\n const { children, refProp, withKeyboardNavigation, withAriaAttributes, targetType, ...others } =\n useProps('ComboboxEventsTarget', defaultProps, props);\n\n if (!isElement(children)) {\n throw new Error(\n 'Combobox.EventsTarget component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported'\n );\n }\n\n const ctx = useComboboxContext();\n const targetProps = useComboboxTargetProps({\n targetType,\n withAriaAttributes,\n withKeyboardNavigation,\n onKeyDown: children.props.onKeyDown,\n });\n\n return cloneElement(children, {\n ...targetProps,\n ...others,\n [refProp!]: useMergedRef(ref, ctx.store.targetRef, (children as any)?.ref),\n });\n});\n\nComboboxEventsTarget.displayName = '@mantine/core/ComboboxEventsTarget';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,53 @@
1
+ import React from 'react';
2
+ import { useComboboxContext } from '../Combobox.context.js';
3
+ import classes from '../Combobox.module.css.js';
4
+ import { factory } from '../../../core/factory/factory.js';
5
+ import { useProps } from '../../../core/MantineProvider/use-props/use-props.js';
6
+ import { Box } from '../../../core/Box/Box.js';
7
+
8
+ var __defProp = Object.defineProperty;
9
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
10
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
11
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
12
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
13
+ var __spreadValues = (a, b) => {
14
+ for (var prop in b || (b = {}))
15
+ if (__hasOwnProp.call(b, prop))
16
+ __defNormalProp(a, prop, b[prop]);
17
+ if (__getOwnPropSymbols)
18
+ for (var prop of __getOwnPropSymbols(b)) {
19
+ if (__propIsEnum.call(b, prop))
20
+ __defNormalProp(a, prop, b[prop]);
21
+ }
22
+ return a;
23
+ };
24
+ var __objRest = (source, exclude) => {
25
+ var target = {};
26
+ for (var prop in source)
27
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
28
+ target[prop] = source[prop];
29
+ if (source != null && __getOwnPropSymbols)
30
+ for (var prop of __getOwnPropSymbols(source)) {
31
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
32
+ target[prop] = source[prop];
33
+ }
34
+ return target;
35
+ };
36
+ const defaultProps = {};
37
+ const ComboboxGroup = factory((props, ref) => {
38
+ const _a = useProps("ComboboxGroup", defaultProps, props), { classNames, className, style, styles, unstyled, vars, children, label } = _a, others = __objRest(_a, ["classNames", "className", "style", "styles", "unstyled", "vars", "children", "label"]);
39
+ const ctx = useComboboxContext();
40
+ return /* @__PURE__ */ React.createElement(
41
+ Box,
42
+ __spreadValues(__spreadValues({
43
+ ref
44
+ }, ctx.getStyles("group", { className, classNames, style, styles })), others),
45
+ label && /* @__PURE__ */ React.createElement("div", __spreadValues({}, ctx.getStyles("groupLabel", { classNames, styles })), label),
46
+ children
47
+ );
48
+ });
49
+ ComboboxGroup.classes = classes;
50
+ ComboboxGroup.displayName = "@mantine/core/ComboboxGroup";
51
+
52
+ export { ComboboxGroup };
53
+ //# sourceMappingURL=ComboboxGroup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ComboboxGroup.js","sources":["../../../../src/components/Combobox/ComboboxGroup/ComboboxGroup.tsx"],"sourcesContent":["import React from 'react';\nimport {\n Box,\n BoxProps,\n StylesApiProps,\n factory,\n ElementProps,\n useProps,\n Factory,\n} from '../../../core';\nimport { useComboboxContext } from '../Combobox.context';\nimport classes from '../Combobox.module.css';\n\nexport type ComboboxGroupStylesNames = 'group' | 'groupLabel';\n\nexport interface ComboboxGroupProps\n extends BoxProps,\n StylesApiProps<ComboboxGroupFactory>,\n ElementProps<'div'> {\n /** Group label */\n label?: React.ReactNode;\n}\n\nexport type ComboboxGroupFactory = Factory<{\n props: ComboboxGroupProps;\n ref: HTMLDivElement;\n stylesNames: ComboboxGroupStylesNames;\n compound: true;\n}>;\n\nconst defaultProps: Partial<ComboboxGroupProps> = {};\n\nexport const ComboboxGroup = factory<ComboboxGroupFactory>((props, ref) => {\n const { classNames, className, style, styles, unstyled, vars, children, label, ...others } =\n useProps('ComboboxGroup', defaultProps, props);\n\n const ctx = useComboboxContext();\n\n return (\n <Box\n ref={ref}\n {...ctx.getStyles('group', { className, classNames, style, styles })}\n {...others}\n >\n {label && <div {...ctx.getStyles('groupLabel', { classNames, styles })}>{label}</div>}\n {children}\n </Box>\n );\n});\n\nComboboxGroup.classes = classes;\nComboboxGroup.displayName = '@mantine/core/ComboboxGroup';\n"],"names":[],"mappings":"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"}
@@ -84,7 +84,7 @@ const ComboboxOption = factory((_props, ref) => {
84
84
  onClick: (event) => {
85
85
  var _a2;
86
86
  if (!disabled) {
87
- (_a2 = ctx.onOptionSelect) == null ? void 0 : _a2.call(ctx, props.value, props);
87
+ (_a2 = ctx.onOptionSubmit) == null ? void 0 : _a2.call(ctx, props.value, props);
88
88
  onClick == null ? void 0 : onClick(event);
89
89
  } else {
90
90
  event.preventDefault();
@@ -1 +1 @@
1
- {"version":3,"file":"ComboboxOption.js","sources":["../../../../src/components/Combobox/ComboboxOption/ComboboxOption.tsx"],"sourcesContent":["import React, { useId } from 'react';\nimport {\n Box,\n BoxProps,\n StylesApiProps,\n factory,\n ElementProps,\n useProps,\n Factory,\n} from '../../../core';\nimport { useComboboxContext } from '../Combobox.context';\nimport classes from '../Combobox.module.css';\n\nexport type ComboboxOptionStylesNames = 'option';\n\nexport interface ComboboxOptionProps\n extends BoxProps,\n StylesApiProps<ComboboxOptionFactory>,\n ElementProps<'div'> {\n /** Option value */\n value: string;\n\n /** Determines whether the option is selected */\n active?: boolean;\n\n /** Determines whether the option can be selected */\n disabled?: boolean;\n\n /** Determines whether item is selected, useful for virtualized comboboxes */\n selected?: boolean;\n}\n\nexport type ComboboxOptionFactory = Factory<{\n props: ComboboxOptionProps;\n ref: HTMLDivElement;\n stylesNames: ComboboxOptionStylesNames;\n compound: true;\n}>;\n\nconst defaultProps: Partial<ComboboxOptionProps> = {};\n\nexport const ComboboxOption = factory<ComboboxOptionFactory>((_props, ref) => {\n const props = useProps('ComboboxOption', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n onClick,\n id,\n active,\n onMouseDown,\n onMouseOver,\n disabled,\n selected,\n ...others\n } = props;\n\n const ctx = useComboboxContext();\n const uuid = useId();\n const _id = id || uuid;\n\n return (\n <Box\n {...ctx.getStyles('option', { className, classNames, styles, style })}\n {...others}\n ref={ref}\n id={_id}\n mod={[\n 'combobox-option',\n { 'combobox-active': active, 'combobox-disabled': disabled, 'combobox-selected': selected },\n ]}\n role=\"option\"\n onClick={(event) => {\n if (!disabled) {\n ctx.onOptionSelect?.(props.value, props);\n onClick?.(event);\n } else {\n event.preventDefault();\n }\n }}\n onMouseDown={(event) => {\n event.preventDefault();\n onMouseDown?.(event);\n }}\n onMouseOver={(event) => {\n if (ctx.resetSelectionOnOptionHover) {\n ctx.store.resetSelectedOption();\n }\n onMouseOver?.(event);\n }}\n />\n );\n});\n\nComboboxOption.classes = classes;\nComboboxOption.displayName = '@mantine/core/ComboboxOption';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ComboboxOption.js","sources":["../../../../src/components/Combobox/ComboboxOption/ComboboxOption.tsx"],"sourcesContent":["import React, { useId } from 'react';\nimport {\n Box,\n BoxProps,\n StylesApiProps,\n factory,\n ElementProps,\n useProps,\n Factory,\n} from '../../../core';\nimport { useComboboxContext } from '../Combobox.context';\nimport classes from '../Combobox.module.css';\n\nexport type ComboboxOptionStylesNames = 'option';\n\nexport interface ComboboxOptionProps\n extends BoxProps,\n StylesApiProps<ComboboxOptionFactory>,\n ElementProps<'div'> {\n /** Option value */\n value: string;\n\n /** Determines whether the option is selected */\n active?: boolean;\n\n /** Determines whether the option can be selected */\n disabled?: boolean;\n\n /** Determines whether item is selected, useful for virtualized comboboxes */\n selected?: boolean;\n}\n\nexport type ComboboxOptionFactory = Factory<{\n props: ComboboxOptionProps;\n ref: HTMLDivElement;\n stylesNames: ComboboxOptionStylesNames;\n compound: true;\n}>;\n\nconst defaultProps: Partial<ComboboxOptionProps> = {};\n\nexport const ComboboxOption = factory<ComboboxOptionFactory>((_props, ref) => {\n const props = useProps('ComboboxOption', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n onClick,\n id,\n active,\n onMouseDown,\n onMouseOver,\n disabled,\n selected,\n ...others\n } = props;\n\n const ctx = useComboboxContext();\n const uuid = useId();\n const _id = id || uuid;\n\n return (\n <Box\n {...ctx.getStyles('option', { className, classNames, styles, style })}\n {...others}\n ref={ref}\n id={_id}\n mod={[\n 'combobox-option',\n { 'combobox-active': active, 'combobox-disabled': disabled, 'combobox-selected': selected },\n ]}\n role=\"option\"\n onClick={(event) => {\n if (!disabled) {\n ctx.onOptionSubmit?.(props.value, props);\n onClick?.(event);\n } else {\n event.preventDefault();\n }\n }}\n onMouseDown={(event) => {\n event.preventDefault();\n onMouseDown?.(event);\n }}\n onMouseOver={(event) => {\n if (ctx.resetSelectionOnOptionHover) {\n ctx.store.resetSelectedOption();\n }\n onMouseOver?.(event);\n }}\n />\n );\n});\n\nComboboxOption.classes = classes;\nComboboxOption.displayName = '@mantine/core/ComboboxOption';\n"],"names":[],"mappings":"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"}