@mantine/core 7.0.0-alpha.19 → 7.0.0-alpha.20

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 (252) hide show
  1. package/cjs/components/AppShell/AppShellMediaStyles/get-variables/get-variables.js.map +1 -1
  2. package/cjs/components/Blockquote/Blockquote.js +1 -1
  3. package/cjs/components/Button/Button.js.map +1 -1
  4. package/cjs/components/Card/Card.context.js +13 -0
  5. package/cjs/components/Card/Card.context.js.map +1 -0
  6. package/cjs/components/Card/Card.js +88 -0
  7. package/cjs/components/Card/Card.js.map +1 -0
  8. package/cjs/components/Card/Card.module.css.js +8 -0
  9. package/cjs/components/Card/Card.module.css.js.map +1 -0
  10. package/cjs/components/Card/CardSection/CardSection.js +79 -0
  11. package/cjs/components/Card/CardSection/CardSection.js.map +1 -0
  12. package/cjs/components/Collapse/Collapse.js +1 -1
  13. package/cjs/components/FileInput/FileInput.js +156 -0
  14. package/cjs/components/FileInput/FileInput.js.map +1 -0
  15. package/cjs/components/Grid/GridVariables.js.map +1 -1
  16. package/cjs/components/Group/Group.js +15 -4
  17. package/cjs/components/Group/Group.js.map +1 -1
  18. package/cjs/components/Image/Image.js +129 -0
  19. package/cjs/components/Image/Image.js.map +1 -0
  20. package/cjs/components/Image/Image.module.css.js +8 -0
  21. package/cjs/components/Image/Image.module.css.js.map +1 -0
  22. package/cjs/components/Indicator/Indicator.js +134 -0
  23. package/cjs/components/Indicator/Indicator.js.map +1 -0
  24. package/cjs/components/Indicator/Indicator.module.css.js +8 -0
  25. package/cjs/components/Indicator/Indicator.module.css.js.map +1 -0
  26. package/cjs/components/Indicator/get-position-variables/get-position-variables.js +46 -0
  27. package/cjs/components/Indicator/get-position-variables/get-position-variables.js.map +1 -0
  28. package/cjs/components/Input/InputLabel/InputLabel.js +1 -1
  29. package/cjs/components/JsonInput/JsonInput.js +117 -0
  30. package/cjs/components/JsonInput/JsonInput.js.map +1 -0
  31. package/cjs/components/JsonInput/validate-json/validate-json.js +18 -0
  32. package/cjs/components/JsonInput/validate-json/validate-json.js.map +1 -0
  33. package/cjs/components/Modal/Modal.js +5 -3
  34. package/cjs/components/Modal/Modal.js.map +1 -1
  35. package/cjs/components/Modal/ModalRoot.js +1 -1
  36. package/cjs/components/Modal/ModalRoot.js.map +1 -1
  37. package/cjs/components/ModalBase/ModalBaseContent.js.map +1 -1
  38. package/cjs/components/Overlay/Overlay.js +1 -1
  39. package/cjs/components/Paper/Paper.js +1 -1
  40. package/cjs/components/PasswordInput/PasswordInput.js +253 -0
  41. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -0
  42. package/cjs/components/PasswordInput/PasswordInput.module.css.js +8 -0
  43. package/cjs/components/PasswordInput/PasswordInput.module.css.js.map +1 -0
  44. package/cjs/components/PasswordInput/PasswordToggleIcon.js +33 -0
  45. package/cjs/components/PasswordInput/PasswordToggleIcon.js.map +1 -0
  46. package/cjs/components/PinInput/PinInput.js +292 -0
  47. package/cjs/components/PinInput/PinInput.js.map +1 -0
  48. package/cjs/components/PinInput/PinInput.module.css.js +8 -0
  49. package/cjs/components/PinInput/PinInput.module.css.js.map +1 -0
  50. package/cjs/components/PinInput/create-pin-array/create-pin-array.js +20 -0
  51. package/cjs/components/PinInput/create-pin-array/create-pin-array.js.map +1 -0
  52. package/cjs/components/Popover/Popover.js +6 -6
  53. package/cjs/components/Popover/Popover.js.map +1 -1
  54. package/cjs/components/Popover/PopoverTarget/PopoverTarget.js +1 -1
  55. package/cjs/components/ScrollArea/ScrollArea.js +2 -2
  56. package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarVisible.js +1 -1
  57. package/cjs/components/Textarea/Textarea.js +73 -0
  58. package/cjs/components/Textarea/Textarea.js.map +1 -0
  59. package/cjs/components/Tooltip/TooltipFloating/use-floating-tooltip.js +5 -5
  60. package/cjs/components/Tooltip/TooltipFloating/use-floating-tooltip.js.map +1 -1
  61. package/cjs/components/Tooltip/use-tooltip.js +2 -4
  62. package/cjs/components/Tooltip/use-tooltip.js.map +1 -1
  63. package/cjs/core/Box/Box.js.map +1 -1
  64. package/cjs/core/factory/create-polymorphic-component.js.map +1 -1
  65. package/cjs/core/factory/factory.js.map +1 -1
  66. package/cjs/core/styles-api/use-styles/use-styles.js.map +1 -1
  67. package/cjs/core/utils/get-size/get-size.js +3 -0
  68. package/cjs/core/utils/get-size/get-size.js.map +1 -1
  69. package/cjs/index.css +1281 -1067
  70. package/cjs/index.js +74 -56
  71. package/cjs/index.js.map +1 -1
  72. package/esm/components/AppShell/AppShellMediaStyles/get-variables/get-variables.js.map +1 -1
  73. package/esm/components/Blockquote/Blockquote.js +1 -1
  74. package/esm/components/Button/Button.js.map +1 -1
  75. package/esm/components/Card/Card.context.js +8 -0
  76. package/esm/components/Card/Card.context.js.map +1 -0
  77. package/esm/components/Card/Card.js +80 -0
  78. package/esm/components/Card/Card.js.map +1 -0
  79. package/esm/components/Card/Card.module.css.js +4 -0
  80. package/esm/components/Card/Card.module.css.js.map +1 -0
  81. package/esm/components/Card/CardSection/CardSection.js +71 -0
  82. package/esm/components/Card/CardSection/CardSection.js.map +1 -0
  83. package/esm/components/Collapse/Collapse.js +1 -1
  84. package/esm/components/FileInput/FileInput.js +148 -0
  85. package/esm/components/FileInput/FileInput.js.map +1 -0
  86. package/esm/components/Grid/GridVariables.js.map +1 -1
  87. package/esm/components/Group/Group.js +15 -4
  88. package/esm/components/Group/Group.js.map +1 -1
  89. package/esm/components/Image/Image.js +121 -0
  90. package/esm/components/Image/Image.js.map +1 -0
  91. package/esm/components/Image/Image.module.css.js +4 -0
  92. package/esm/components/Image/Image.module.css.js.map +1 -0
  93. package/esm/components/Indicator/Indicator.js +126 -0
  94. package/esm/components/Indicator/Indicator.js.map +1 -0
  95. package/esm/components/Indicator/Indicator.module.css.js +4 -0
  96. package/esm/components/Indicator/Indicator.module.css.js.map +1 -0
  97. package/esm/components/Indicator/get-position-variables/get-position-variables.js +42 -0
  98. package/esm/components/Indicator/get-position-variables/get-position-variables.js.map +1 -0
  99. package/esm/components/Input/InputLabel/InputLabel.js +1 -1
  100. package/esm/components/JsonInput/JsonInput.js +109 -0
  101. package/esm/components/JsonInput/JsonInput.js.map +1 -0
  102. package/esm/components/JsonInput/validate-json/validate-json.js +14 -0
  103. package/esm/components/JsonInput/validate-json/validate-json.js.map +1 -0
  104. package/esm/components/Modal/Modal.js +5 -3
  105. package/esm/components/Modal/Modal.js.map +1 -1
  106. package/esm/components/Modal/ModalRoot.js +1 -1
  107. package/esm/components/Modal/ModalRoot.js.map +1 -1
  108. package/esm/components/ModalBase/ModalBaseContent.js.map +1 -1
  109. package/esm/components/Overlay/Overlay.js +1 -1
  110. package/esm/components/Paper/Paper.js +1 -1
  111. package/esm/components/PasswordInput/PasswordInput.js +244 -0
  112. package/esm/components/PasswordInput/PasswordInput.js.map +1 -0
  113. package/esm/components/PasswordInput/PasswordInput.module.css.js +4 -0
  114. package/esm/components/PasswordInput/PasswordInput.module.css.js.map +1 -0
  115. package/esm/components/PasswordInput/PasswordToggleIcon.js +25 -0
  116. package/esm/components/PasswordInput/PasswordToggleIcon.js.map +1 -0
  117. package/esm/components/PinInput/PinInput.js +284 -0
  118. package/esm/components/PinInput/PinInput.js.map +1 -0
  119. package/esm/components/PinInput/PinInput.module.css.js +4 -0
  120. package/esm/components/PinInput/PinInput.module.css.js.map +1 -0
  121. package/esm/components/PinInput/create-pin-array/create-pin-array.js +16 -0
  122. package/esm/components/PinInput/create-pin-array/create-pin-array.js.map +1 -0
  123. package/esm/components/Popover/Popover.js +6 -6
  124. package/esm/components/Popover/Popover.js.map +1 -1
  125. package/esm/components/Popover/PopoverTarget/PopoverTarget.js +1 -1
  126. package/esm/components/ScrollArea/ScrollArea.js +2 -2
  127. package/esm/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarVisible.js +1 -1
  128. package/esm/components/Textarea/Textarea.js +64 -0
  129. package/esm/components/Textarea/Textarea.js.map +1 -0
  130. package/esm/components/Tooltip/TooltipFloating/use-floating-tooltip.js +5 -5
  131. package/esm/components/Tooltip/TooltipFloating/use-floating-tooltip.js.map +1 -1
  132. package/esm/components/Tooltip/use-tooltip.js +2 -4
  133. package/esm/components/Tooltip/use-tooltip.js.map +1 -1
  134. package/esm/core/Box/Box.js.map +1 -1
  135. package/esm/core/factory/create-polymorphic-component.js.map +1 -1
  136. package/esm/core/factory/factory.js.map +1 -1
  137. package/esm/core/styles-api/use-styles/use-styles.js.map +1 -1
  138. package/esm/core/utils/get-size/get-size.js +3 -0
  139. package/esm/core/utils/get-size/get-size.js.map +1 -1
  140. package/esm/index.css +1281 -1067
  141. package/esm/index.js +36 -27
  142. package/esm/index.js.map +1 -1
  143. package/esm/styles/Card.css +1 -0
  144. package/esm/styles/Image.css +1 -0
  145. package/esm/styles/Indicator.css +1 -0
  146. package/esm/styles/Input.css +1 -1
  147. package/esm/styles/Modal.css +1 -1
  148. package/esm/styles/PasswordInput.css +1 -0
  149. package/esm/styles/PinInput.css +1 -0
  150. package/lib/components/Accordion/Accordion.context.d.ts +1 -1
  151. package/lib/components/Accordion/Accordion.d.ts +1 -1
  152. package/lib/components/Accordion/AccordionChevron.d.ts +1 -1
  153. package/lib/components/Accordion/AccordionItem.context.d.ts +1 -1
  154. package/lib/components/AppShell/AppShell.context.d.ts +1 -1
  155. package/lib/components/AppShell/AppShellMediaStyles/AppShellMediaStyles.d.ts +1 -2
  156. package/lib/components/AppShell/AppShellMediaStyles/get-padding-value/get-padding-value.d.ts +1 -1
  157. package/lib/components/AppShell/AppShellMediaStyles/get-variables/get-variables.d.ts +3 -3
  158. package/lib/components/Avatar/AvatarPlaceholderIcon.d.ts +1 -1
  159. package/lib/components/Button/Button.d.ts +3 -0
  160. package/lib/components/Card/Card.context.d.ts +11 -0
  161. package/lib/components/Card/Card.d.ts +56 -0
  162. package/lib/components/Card/CardSection/CardSection.d.ts +35 -0
  163. package/lib/components/Card/index.d.ts +4 -0
  164. package/lib/components/Checkbox/CheckIcon.d.ts +2 -2
  165. package/lib/components/Chip/ChipGroup/ChipGroup.d.ts +1 -1
  166. package/lib/components/Chip/ChipGroup.context.d.ts +1 -1
  167. package/lib/components/ColorPicker/ColorPicker.context.d.ts +1 -1
  168. package/lib/components/ColorPicker/Saturation/Saturation.d.ts +1 -2
  169. package/lib/components/Combobox/Combobox.context.d.ts +1 -1
  170. package/lib/components/Combobox/Combobox.d.ts +1 -1
  171. package/lib/components/Combobox/OptionsDropdown/OptionsDropdown.d.ts +1 -1
  172. package/lib/components/CopyButton/CopyButton.d.ts +1 -1
  173. package/lib/components/Drawer/Drawer.context.d.ts +1 -1
  174. package/lib/components/FileInput/FileInput.d.ts +45 -0
  175. package/lib/components/FileInput/index.d.ts +2 -0
  176. package/lib/components/Grid/Grid.context.d.ts +1 -1
  177. package/lib/components/Grid/GridCol/GridColVariables.d.ts +1 -2
  178. package/lib/components/Grid/GridVariables.d.ts +1 -2
  179. package/lib/components/Group/Group.d.ts +1 -0
  180. package/lib/components/HoverCard/HoverCard.context.d.ts +1 -1
  181. package/lib/components/HoverCard/HoverCard.d.ts +1 -1
  182. package/lib/components/HoverCard/HoverCardDropdown/HoverCardDropdown.d.ts +1 -1
  183. package/lib/components/Image/Image.d.ts +44 -0
  184. package/lib/components/Image/index.d.ts +2 -0
  185. package/lib/components/Indicator/Indicator.d.ts +44 -0
  186. package/lib/components/Indicator/Indicator.types.d.ts +4 -0
  187. package/lib/components/Indicator/get-position-variables/get-position-variables.d.ts +3 -0
  188. package/lib/components/Indicator/index.d.ts +2 -0
  189. package/lib/components/Input/InputWrapper.context.d.ts +1 -1
  190. package/lib/components/Input/use-input-props.d.ts +50 -40
  191. package/lib/components/JsonInput/JsonInput.d.ts +30 -0
  192. package/lib/components/JsonInput/index.d.ts +2 -0
  193. package/lib/components/JsonInput/validate-json/validate-json.d.ts +1 -0
  194. package/lib/components/Menu/Menu.context.d.ts +1 -1
  195. package/lib/components/Menu/Menu.d.ts +2 -2
  196. package/lib/components/Menu/MenuItem/MenuItem.d.ts +1 -1
  197. package/lib/components/Modal/Modal.context.d.ts +1 -1
  198. package/lib/components/Modal/ModalRoot.d.ts +1 -1
  199. package/lib/components/ModalBase/ModalBase.context.d.ts +1 -1
  200. package/lib/components/ModalBase/ModalBaseContent.d.ts +5 -1
  201. package/lib/components/ModalBase/NativeScrollArea.d.ts +1 -1
  202. package/lib/components/NativeSelect/NativeSelectOption.d.ts +1 -2
  203. package/lib/components/Pagination/Pagination.context.d.ts +1 -1
  204. package/lib/components/Pagination/Pagination.icons.d.ts +5 -5
  205. package/lib/components/Pagination/PaginationItems/PaginationItems.d.ts +1 -2
  206. package/lib/components/PasswordInput/PasswordInput.d.ts +36 -0
  207. package/lib/components/PasswordInput/PasswordToggleIcon.d.ts +6 -0
  208. package/lib/components/PasswordInput/index.d.ts +2 -0
  209. package/lib/components/Pill/PillGroup.context.d.ts +1 -1
  210. package/lib/components/PillsInput/PillsInput.context.d.ts +1 -1
  211. package/lib/components/PinInput/PinInput.d.ts +66 -0
  212. package/lib/components/PinInput/create-pin-array/create-pin-array.d.ts +1 -0
  213. package/lib/components/PinInput/index.d.ts +2 -0
  214. package/lib/components/Popover/Popover.context.d.ts +1 -1
  215. package/lib/components/Popover/Popover.d.ts +1 -1
  216. package/lib/components/Popover/use-popover.d.ts +38 -1
  217. package/lib/components/Portal/OptionalPortal.d.ts +1 -2
  218. package/lib/components/Progress/Progress.context.d.ts +1 -1
  219. package/lib/components/Rating/Rating.context.d.ts +1 -1
  220. package/lib/components/Rating/RatingItem/RatingItem.d.ts +1 -1
  221. package/lib/components/Rating/StarSymbol/StarIcon.d.ts +1 -1
  222. package/lib/components/Rating/StarSymbol/StarSymbol.d.ts +1 -2
  223. package/lib/components/RingProgress/Curve/Curve.d.ts +1 -1
  224. package/lib/components/ScrollArea/ScrollArea.context.d.ts +1 -1
  225. package/lib/components/ScrollArea/ScrollAreaScrollbar/Scrollbar.context.d.ts +1 -1
  226. package/lib/components/SimpleGrid/SimpleGridVariables.d.ts +1 -2
  227. package/lib/components/Slider/Marks/Marks.d.ts +1 -1
  228. package/lib/components/Slider/Slider.context.d.ts +1 -1
  229. package/lib/components/Slider/Track/Track.d.ts +1 -1
  230. package/lib/components/Table/Table.context.d.ts +1 -1
  231. package/lib/components/Tabs/Tabs.context.d.ts +1 -1
  232. package/lib/components/Textarea/Textarea.d.ts +21 -0
  233. package/lib/components/Textarea/index.d.ts +2 -0
  234. package/lib/components/Tooltip/TooltipFloating/use-floating-tooltip.d.ts +3 -3
  235. package/lib/components/Tooltip/TooltipGroup/TooltipGroup.d.ts +1 -1
  236. package/lib/components/Tooltip/use-tooltip.d.ts +4 -4
  237. package/lib/components/Transition/Transition.d.ts +1 -1
  238. package/lib/components/VisuallyHidden/VisuallyHidden.d.ts +1 -1
  239. package/lib/components/index.d.ts +19 -11
  240. package/lib/core/DirectionProvider/DirectionProvider.d.ts +1 -1
  241. package/lib/core/InlineStyles/InlineStyles.d.ts +1 -1
  242. package/lib/core/MantineProvider/ColorSchemeScript/ColorSchemeScript.d.ts +1 -1
  243. package/lib/core/MantineProvider/MantineClasses/MantineClasses.d.ts +1 -2
  244. package/lib/core/MantineProvider/MantineCssVariables/MantineCssVariables.d.ts +1 -2
  245. package/lib/core/MantineProvider/MantineProvider.d.ts +1 -1
  246. package/lib/core/MantineProvider/MantineThemeProvider/MantineThemeProvider.d.ts +1 -1
  247. package/lib/core/factory/factory.d.ts +1 -1
  248. package/lib/core/styles-api/use-styles/use-styles.d.ts +1 -1
  249. package/lib/core/utils/create-optional-context/create-optional-context.d.ts +1 -1
  250. package/lib/core/utils/create-safe-context/create-safe-context.d.ts +1 -1
  251. package/lib/core/utils/get-size/get-size.d.ts +6 -6
  252. package/package.json +9 -9
@@ -0,0 +1,148 @@
1
+ import React, { useRef, useEffect } from 'react';
2
+ import { useUncontrolled } from '@mantine/hooks';
3
+ import { InputBase } from '../InputBase/InputBase.js';
4
+ import { CloseButton } from '../CloseButton/CloseButton.js';
5
+ import { FileButton } from '../FileButton/FileButton.js';
6
+ import { Input } from '../Input/Input.js';
7
+ import { factory } from '../../core/factory/factory.js';
8
+ import { useProps } from '../../core/MantineProvider/use-props/use-props.js';
9
+
10
+ var __defProp = Object.defineProperty;
11
+ var __defProps = Object.defineProperties;
12
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
13
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
14
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
15
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
16
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
17
+ var __spreadValues = (a, b) => {
18
+ for (var prop in b || (b = {}))
19
+ if (__hasOwnProp.call(b, prop))
20
+ __defNormalProp(a, prop, b[prop]);
21
+ if (__getOwnPropSymbols)
22
+ for (var prop of __getOwnPropSymbols(b)) {
23
+ if (__propIsEnum.call(b, prop))
24
+ __defNormalProp(a, prop, b[prop]);
25
+ }
26
+ return a;
27
+ };
28
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
29
+ var __objRest = (source, exclude) => {
30
+ var target = {};
31
+ for (var prop in source)
32
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
33
+ target[prop] = source[prop];
34
+ if (source != null && __getOwnPropSymbols)
35
+ for (var prop of __getOwnPropSymbols(source)) {
36
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
37
+ target[prop] = source[prop];
38
+ }
39
+ return target;
40
+ };
41
+ const DefaultValue = ({ value }) => /* @__PURE__ */ React.createElement("div", { style: { overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap" } }, Array.isArray(value) ? value.map((file) => file.name).join(", ") : value == null ? void 0 : value.name);
42
+ const defaultProps = {
43
+ size: "sm",
44
+ valueComponent: DefaultValue
45
+ };
46
+ const _FileInput = factory((_props, ref) => {
47
+ const props = useProps("FileInput", defaultProps, _props);
48
+ const _a = props, {
49
+ unstyled,
50
+ vars,
51
+ onChange,
52
+ value,
53
+ defaultValue,
54
+ multiple,
55
+ accept,
56
+ name,
57
+ form,
58
+ valueComponent,
59
+ clearable,
60
+ clearButtonProps,
61
+ readOnly,
62
+ capture,
63
+ fileInputProps,
64
+ rightSection,
65
+ size,
66
+ placeholder
67
+ } = _a, others = __objRest(_a, [
68
+ "unstyled",
69
+ "vars",
70
+ "onChange",
71
+ "value",
72
+ "defaultValue",
73
+ "multiple",
74
+ "accept",
75
+ "name",
76
+ "form",
77
+ "valueComponent",
78
+ "clearable",
79
+ "clearButtonProps",
80
+ "readOnly",
81
+ "capture",
82
+ "fileInputProps",
83
+ "rightSection",
84
+ "size",
85
+ "placeholder"
86
+ ]);
87
+ const resetRef = useRef(null);
88
+ const [_value, setValue] = useUncontrolled({
89
+ value,
90
+ defaultValue,
91
+ onChange,
92
+ finalValue: multiple ? [] : null
93
+ });
94
+ const hasValue = Array.isArray(_value) ? _value.length !== 0 : _value !== null;
95
+ const _rightSection = rightSection || (clearable && hasValue && !readOnly ? /* @__PURE__ */ React.createElement(
96
+ CloseButton,
97
+ __spreadProps(__spreadValues({}, clearButtonProps), {
98
+ variant: "subtle",
99
+ onClick: () => setValue(multiple ? [] : null),
100
+ size,
101
+ unstyled
102
+ })
103
+ ) : null);
104
+ useEffect(() => {
105
+ var _a2;
106
+ if (Array.isArray(_value) && _value.length === 0 || _value === null) {
107
+ (_a2 = resetRef.current) == null ? void 0 : _a2.call(resetRef);
108
+ }
109
+ }, [_value]);
110
+ const ValueComponent = valueComponent;
111
+ return /* @__PURE__ */ React.createElement(
112
+ FileButton,
113
+ {
114
+ onChange: setValue,
115
+ multiple,
116
+ accept,
117
+ name,
118
+ form,
119
+ resetRef,
120
+ disabled: readOnly,
121
+ capture,
122
+ inputProps: fileInputProps
123
+ },
124
+ (fileButtonProps) => /* @__PURE__ */ React.createElement(
125
+ InputBase,
126
+ __spreadProps(__spreadValues(__spreadValues({
127
+ component: "button",
128
+ ref,
129
+ rightSection: _rightSection
130
+ }, fileButtonProps), others), {
131
+ __staticSelector: "FileInput",
132
+ multiline: true,
133
+ type: "button",
134
+ pointer: true,
135
+ __stylesApiProps: props,
136
+ unstyled,
137
+ size
138
+ }),
139
+ !hasValue ? /* @__PURE__ */ React.createElement(Input.Placeholder, null, placeholder) : /* @__PURE__ */ React.createElement(ValueComponent, { value: _value })
140
+ )
141
+ );
142
+ });
143
+ _FileInput.classes = InputBase.classes;
144
+ _FileInput.displayName = "@mantine/core/FileInput";
145
+ const FileInput = _FileInput;
146
+
147
+ export { FileInput };
148
+ //# sourceMappingURL=FileInput.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileInput.js","sources":["../../../src/components/FileInput/FileInput.tsx"],"sourcesContent":["import React, { useEffect, useRef } from 'react';\nimport { useUncontrolled } from '@mantine/hooks';\nimport { factory, ElementProps, useProps, Factory } from '../../core';\nimport { __InputStylesNames, Input, InputVariant } from '../Input';\nimport { InputBase, InputBaseProps } from '../InputBase/InputBase';\nimport { CloseButton } from '../CloseButton';\nimport { FileButton } from '../FileButton';\n\nexport interface FileInputProps<Multiple = false>\n extends InputBaseProps,\n ElementProps<'button', 'value' | 'defaultValue' | 'onChange'> {\n /** Called when value changes */\n onChange?(payload: Multiple extends true ? File[] : File | null): void;\n\n /** Controlled component value */\n value?: Multiple extends true ? File[] : File | null;\n\n /** Uncontrolled component default value */\n defaultValue?: Multiple extends true ? File[] : File | null;\n\n /** Determines whether user can pick more than one file, `false` by default */\n multiple?: Multiple;\n\n /** File input accept attribute, for example, \"image/png,image/jpeg\" */\n accept?: string;\n\n /** Input name attribute */\n name?: string;\n\n /** Input form attribute */\n form?: string;\n\n /** Value renderer, by default file name is rendered */\n valueComponent?: React.FC<{ value: null | File | File[] }>;\n\n /** Determines whether clear button should be displayed in the right section, `false` by default */\n clearable?: boolean;\n\n /** Props passed down to the clear button */\n clearButtonProps?: React.ComponentPropsWithoutRef<'button'>;\n\n /** Read only inputs value cannot be changed */\n readOnly?: boolean;\n\n /** Specifies that, optionally, a new file should be captured, and which device should be used to capture that new media of a type defined by the accept attribute. */\n capture?: boolean | 'user' | 'environment';\n\n /** Props passed down to the hidden input element which is used to capture files */\n fileInputProps?: React.ComponentPropsWithoutRef<'input'>;\n}\n\nexport type FileInputFactory = Factory<{\n props: FileInputProps;\n ref: HTMLButtonElement;\n stylesNames: __InputStylesNames;\n variant: InputVariant;\n}>;\n\nconst DefaultValue: FileInputProps['valueComponent'] = ({ value }) => (\n <div style={{ overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap' }}>\n {Array.isArray(value) ? value.map((file) => file.name).join(', ') : value?.name}\n </div>\n);\n\nconst defaultProps: Partial<FileInputProps> = {\n size: 'sm',\n valueComponent: DefaultValue,\n};\n\nconst _FileInput = factory<FileInputFactory>((_props, ref) => {\n const props = useProps('FileInput', defaultProps, _props);\n const {\n unstyled,\n vars,\n onChange,\n value,\n defaultValue,\n multiple,\n accept,\n name,\n form,\n valueComponent,\n clearable,\n clearButtonProps,\n readOnly,\n capture,\n fileInputProps,\n rightSection,\n size,\n placeholder,\n ...others\n } = props;\n\n const resetRef = useRef<() => void>(null);\n\n const [_value, setValue] = useUncontrolled<null | File | File[]>({\n value,\n defaultValue,\n onChange,\n finalValue: multiple ? [] : null,\n });\n\n const hasValue = Array.isArray(_value) ? _value.length !== 0 : _value !== null;\n\n const _rightSection =\n rightSection ||\n (clearable && hasValue && !readOnly ? (\n <CloseButton\n {...clearButtonProps}\n variant=\"subtle\"\n onClick={() => setValue(multiple ? [] : null)}\n size={size}\n unstyled={unstyled}\n />\n ) : null);\n\n useEffect(() => {\n if ((Array.isArray(_value) && _value.length === 0) || _value === null) {\n resetRef.current?.();\n }\n }, [_value]);\n\n const ValueComponent = valueComponent!;\n\n return (\n <FileButton\n onChange={setValue}\n multiple={multiple}\n accept={accept}\n name={name}\n form={form}\n resetRef={resetRef}\n disabled={readOnly}\n capture={capture}\n inputProps={fileInputProps}\n >\n {(fileButtonProps) => (\n <InputBase\n component=\"button\"\n ref={ref}\n rightSection={_rightSection}\n {...fileButtonProps}\n {...others}\n __staticSelector=\"FileInput\"\n multiline\n type=\"button\"\n pointer\n __stylesApiProps={props}\n unstyled={unstyled}\n size={size}\n >\n {!hasValue ? (\n <Input.Placeholder>{placeholder}</Input.Placeholder>\n ) : (\n <ValueComponent value={_value} />\n )}\n </InputBase>\n )}\n </FileButton>\n );\n});\n\n_FileInput.classes = InputBase.classes;\n_FileInput.displayName = '@mantine/core/FileInput';\n\ntype FileInputComponent = <Multiple extends boolean = false>(\n props: FileInputProps<Multiple> & {\n ref?: React.ForwardedRef<HTMLButtonElement>;\n }\n) => JSX.Element;\n\nexport const FileInput: FileInputComponent = _FileInput as any;\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"GridVariables.js","sources":["../../../src/components/Grid/GridVariables.tsx"],"sourcesContent":["import React from 'react';\nimport {\n getSortedBreakpoints,\n useMantineTheme,\n keys,\n getSpacing,\n MantineBreakpoint,\n filterProps,\n InlineStyles,\n getBaseValue,\n} from '../../core';\nimport type { GridProps } from './Grid';\n\ninterface GridVariablesProps extends GridProps {\n selector: string;\n}\n\nexport function GridVariables({ gutter, selector }: GridVariablesProps) {\n const theme = useMantineTheme();\n\n const baseStyles: Record<string, string> = filterProps({\n '--grid-gutter': getSpacing(getBaseValue(gutter)),\n });\n\n const queries = keys(theme.breakpoints).reduce<Record<string, Record<string, any>>>(\n (acc, breakpoint) => {\n if (!acc[breakpoint]) {\n acc[breakpoint] = {};\n }\n\n if (typeof gutter === 'object' && gutter[breakpoint] !== undefined) {\n acc[breakpoint]['--grid-gutter'] = getSpacing(gutter[breakpoint]);\n }\n\n return acc;\n },\n {}\n );\n\n const sortedBreakpoints = getSortedBreakpoints(keys(queries), theme).filter(\n (breakpoint) => keys(queries[breakpoint.value]).length > 0\n );\n\n const media = sortedBreakpoints.map((breakpoint) => ({\n query: `(min-width: ${theme.breakpoints[breakpoint.value as MantineBreakpoint]})`,\n styles: queries[breakpoint.value],\n }));\n\n return <InlineStyles styles={baseStyles} media={media} selector={selector} />;\n}\n"],"names":[],"mappings":";;;;;;;;;AAUO,SAAS,aAAa,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE;AACpD,EAAE,MAAM,KAAK,GAAG,eAAe,EAAE,CAAC;AAClC,EAAE,MAAM,UAAU,GAAG,WAAW,CAAC;AACjC,IAAI,eAAe,EAAE,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;AACrD,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,MAAM;AAChD,IAAI,CAAC,GAAG,EAAE,UAAU,KAAK;AACzB,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;AAC5B,QAAQ,GAAG,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;AAC7B,OAAO;AACP,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,KAAK,CAAC,EAAE;AACvE,QAAQ,GAAG,CAAC,UAAU,CAAC,CAAC,eAAe,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;AAC1E,OAAO;AACP,MAAM,OAAO,GAAG,CAAC;AACjB,KAAK;AACL,IAAI,EAAE;AACN,GAAG,CAAC;AACJ,EAAE,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC,MAAM;AAC7E,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC;AAC9D,GAAG,CAAC;AACJ,EAAE,MAAM,KAAK,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,UAAU,MAAM;AACvD,IAAI,KAAK,EAAE,CAAC,YAAY,EAAE,KAAK,CAAC,WAAW,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAChE,IAAI,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC;AACrC,GAAG,CAAC,CAAC,CAAC;AACN,EAAE,uBAAuB,KAAK,CAAC,aAAa,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;AACpG;;;;"}
1
+ {"version":3,"file":"GridVariables.js","sources":["../../../src/components/Grid/GridVariables.tsx"],"sourcesContent":["import React from 'react';\nimport {\n getSortedBreakpoints,\n useMantineTheme,\n keys,\n getSpacing,\n MantineBreakpoint,\n filterProps,\n InlineStyles,\n getBaseValue,\n} from '../../core';\nimport type { GridProps } from './Grid';\n\ninterface GridVariablesProps extends GridProps {\n selector: string;\n}\n\nexport function GridVariables({ gutter, selector }: GridVariablesProps) {\n const theme = useMantineTheme();\n\n const baseStyles: Record<string, string | undefined> = filterProps({\n '--grid-gutter': getSpacing(getBaseValue(gutter)),\n });\n\n const queries = keys(theme.breakpoints).reduce<Record<string, Record<string, any>>>(\n (acc, breakpoint) => {\n if (!acc[breakpoint]) {\n acc[breakpoint] = {};\n }\n\n if (typeof gutter === 'object' && gutter[breakpoint] !== undefined) {\n acc[breakpoint]['--grid-gutter'] = getSpacing(gutter[breakpoint]);\n }\n\n return acc;\n },\n {}\n );\n\n const sortedBreakpoints = getSortedBreakpoints(keys(queries), theme).filter(\n (breakpoint) => keys(queries[breakpoint.value]).length > 0\n );\n\n const media = sortedBreakpoints.map((breakpoint) => ({\n query: `(min-width: ${theme.breakpoints[breakpoint.value as MantineBreakpoint]})`,\n styles: queries[breakpoint.value],\n }));\n\n return <InlineStyles styles={baseStyles} media={media} selector={selector} />;\n}\n"],"names":[],"mappings":";;;;;;;;;AAUO,SAAS,aAAa,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE;AACpD,EAAE,MAAM,KAAK,GAAG,eAAe,EAAE,CAAC;AAClC,EAAE,MAAM,UAAU,GAAG,WAAW,CAAC;AACjC,IAAI,eAAe,EAAE,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;AACrD,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,MAAM;AAChD,IAAI,CAAC,GAAG,EAAE,UAAU,KAAK;AACzB,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;AAC5B,QAAQ,GAAG,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;AAC7B,OAAO;AACP,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,KAAK,CAAC,EAAE;AACvE,QAAQ,GAAG,CAAC,UAAU,CAAC,CAAC,eAAe,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;AAC1E,OAAO;AACP,MAAM,OAAO,GAAG,CAAC;AACjB,KAAK;AACL,IAAI,EAAE;AACN,GAAG,CAAC;AACJ,EAAE,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC,MAAM;AAC7E,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC;AAC9D,GAAG,CAAC;AACJ,EAAE,MAAM,KAAK,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,UAAU,MAAM;AACvD,IAAI,KAAK,EAAE,CAAC,YAAY,EAAE,KAAK,CAAC,WAAW,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAChE,IAAI,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC;AACrC,GAAG,CAAC,CAAC,CAAC;AACN,EAAE,uBAAuB,KAAK,CAAC,aAAa,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;AACpG;;;;"}
@@ -1,9 +1,9 @@
1
1
  import React from 'react';
2
2
  import { filterFalsyChildren } from './filter-falsy-children/filter-falsy-children.js';
3
3
  import classes from './Group.module.css.js';
4
+ import { getSpacing } from '../../core/utils/get-size/get-size.js';
4
5
  import { factory } from '../../core/factory/factory.js';
5
6
  import { useProps } from '../../core/MantineProvider/use-props/use-props.js';
6
- import { getSpacing } from '../../core/utils/get-size/get-size.js';
7
7
  import { useStyles } from '../../core/styles-api/use-styles/use-styles.js';
8
8
  import { Box } from '../../core/Box/Box.js';
9
9
  import { createVarsResolver } from '../../core/styles-api/create-vars-resolver/create-vars-resolver.js';
@@ -72,7 +72,8 @@ const Group = factory((_props, ref) => {
72
72
  grow,
73
73
  preventGrowOverflow,
74
74
  vars,
75
- variant
75
+ variant,
76
+ __size
76
77
  } = _a, others = __objRest(_a, [
77
78
  "classNames",
78
79
  "className",
@@ -87,7 +88,8 @@ const Group = factory((_props, ref) => {
87
88
  "grow",
88
89
  "preventGrowOverflow",
89
90
  "vars",
90
- "variant"
91
+ "variant",
92
+ "__size"
91
93
  ]);
92
94
  const filteredChildren = filterFalsyChildren(children);
93
95
  const childrenCount = filteredChildren.length;
@@ -108,7 +110,16 @@ const Group = factory((_props, ref) => {
108
110
  vars,
109
111
  varsResolver
110
112
  });
111
- return /* @__PURE__ */ React.createElement(Box, __spreadValues(__spreadProps(__spreadValues({}, getStyles("root")), { ref, variant, mod: { grow } }), others), filteredChildren);
113
+ return /* @__PURE__ */ React.createElement(
114
+ Box,
115
+ __spreadValues(__spreadProps(__spreadValues({}, getStyles("root")), {
116
+ ref,
117
+ variant,
118
+ mod: { grow },
119
+ size: __size
120
+ }), others),
121
+ filteredChildren
122
+ );
112
123
  });
113
124
  Group.classes = classes;
114
125
  Group.displayName = "@mantine/core/Group";
@@ -1 +1 @@
1
- {"version":3,"file":"Group.js","sources":["../../../src/components/Group/Group.tsx"],"sourcesContent":["import React from 'react';\nimport {\n Box,\n BoxProps,\n StylesApiProps,\n factory,\n ElementProps,\n useProps,\n useStyles,\n MantineSpacing,\n getSpacing,\n createVarsResolver,\n Factory,\n} from '../../core';\nimport { filterFalsyChildren } from './filter-falsy-children/filter-falsy-children';\nimport classes from './Group.module.css';\n\nexport type GroupStylesNames = 'root';\nexport type GroupCssVariables = {\n root:\n | '--group-gap'\n | '--group-align'\n | '--group-justify'\n | '--group-wrap'\n | '--group-child-width';\n};\n\nexport interface GroupStylesCtx {\n childWidth: string;\n}\n\nexport interface GroupProps extends BoxProps, StylesApiProps<GroupFactory>, ElementProps<'div'> {\n /** Controls `justify-content` CSS property, `'flex-start'` by default */\n justify?: React.CSSProperties['justifyContent'];\n\n /** Controls `align-items` CSS property, `'center'` by default */\n align?: React.CSSProperties['alignItems'];\n\n /** Controls `flex-wrap` CSS property, `'wrap'` by default */\n wrap?: React.CSSProperties['flexWrap'];\n\n /** Key of `theme.spacing` or any valid CSS value for `gap`, numbers are converted to rem, `'md'` by default */\n gap?: MantineSpacing | (string & {}) | number;\n\n /** Determines whether each child element should have `flex-grow: 1` style, `false` by default */\n grow?: boolean;\n\n /** Determines whether children should take only dedicated amount of space (`max-width` style is set based on the number of children), `true` by default */\n preventGrowOverflow?: boolean;\n}\n\nexport type GroupFactory = Factory<{\n props: GroupProps;\n ref: HTMLDivElement;\n stylesNames: GroupStylesNames;\n vars: GroupCssVariables;\n ctx: GroupStylesCtx;\n}>;\n\nconst defaultProps: Partial<GroupProps> = {\n justify: 'flex-start',\n align: 'center',\n gap: 'md',\n preventGrowOverflow: true,\n};\n\nconst varsResolver = createVarsResolver<GroupFactory>(\n (_, { grow, preventGrowOverflow, gap, align, justify, wrap }, { childWidth }) => ({\n root: {\n '--group-child-width': grow && preventGrowOverflow ? childWidth : undefined,\n '--group-gap': getSpacing(gap),\n '--group-align': align,\n '--group-justify': justify,\n '--group-wrap': wrap,\n },\n })\n);\n\nexport const Group = factory<GroupFactory>((_props, ref) => {\n const props = useProps('Group', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n children,\n gap,\n align,\n justify,\n wrap,\n grow,\n preventGrowOverflow,\n vars,\n variant,\n ...others\n } = props;\n\n const filteredChildren = filterFalsyChildren(children);\n const childrenCount = filteredChildren.length;\n const childWidth = `calc(${100 / childrenCount}% - (${getSpacing(gap)} - ${getSpacing(\n gap\n )} / ${childrenCount}))`;\n\n const stylesCtx: GroupStylesCtx = { childWidth };\n\n const getStyles = useStyles<GroupFactory>({\n name: 'Group',\n props,\n stylesCtx,\n className,\n style,\n classes,\n classNames,\n styles,\n unstyled,\n vars,\n varsResolver,\n });\n\n return (\n <Box {...getStyles('root')} ref={ref} variant={variant} mod={{ grow }} {...others}>\n {filteredChildren}\n </Box>\n );\n});\n\nGroup.classes = classes;\nGroup.displayName = '@mantine/core/Group';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Group.js","sources":["../../../src/components/Group/Group.tsx"],"sourcesContent":["import React from 'react';\nimport {\n Box,\n BoxProps,\n StylesApiProps,\n factory,\n ElementProps,\n useProps,\n useStyles,\n MantineSpacing,\n getSpacing,\n createVarsResolver,\n Factory,\n} from '../../core';\nimport { filterFalsyChildren } from './filter-falsy-children/filter-falsy-children';\nimport classes from './Group.module.css';\n\nexport type GroupStylesNames = 'root';\nexport type GroupCssVariables = {\n root:\n | '--group-gap'\n | '--group-align'\n | '--group-justify'\n | '--group-wrap'\n | '--group-child-width';\n};\n\nexport interface GroupStylesCtx {\n childWidth: string;\n}\n\nexport interface GroupProps extends BoxProps, StylesApiProps<GroupFactory>, ElementProps<'div'> {\n __size?: any;\n\n /** Controls `justify-content` CSS property, `'flex-start'` by default */\n justify?: React.CSSProperties['justifyContent'];\n\n /** Controls `align-items` CSS property, `'center'` by default */\n align?: React.CSSProperties['alignItems'];\n\n /** Controls `flex-wrap` CSS property, `'wrap'` by default */\n wrap?: React.CSSProperties['flexWrap'];\n\n /** Key of `theme.spacing` or any valid CSS value for `gap`, numbers are converted to rem, `'md'` by default */\n gap?: MantineSpacing | (string & {}) | number;\n\n /** Determines whether each child element should have `flex-grow: 1` style, `false` by default */\n grow?: boolean;\n\n /** Determines whether children should take only dedicated amount of space (`max-width` style is set based on the number of children), `true` by default */\n preventGrowOverflow?: boolean;\n}\n\nexport type GroupFactory = Factory<{\n props: GroupProps;\n ref: HTMLDivElement;\n stylesNames: GroupStylesNames;\n vars: GroupCssVariables;\n ctx: GroupStylesCtx;\n}>;\n\nconst defaultProps: Partial<GroupProps> = {\n justify: 'flex-start',\n align: 'center',\n gap: 'md',\n preventGrowOverflow: true,\n};\n\nconst varsResolver = createVarsResolver<GroupFactory>(\n (_, { grow, preventGrowOverflow, gap, align, justify, wrap }, { childWidth }) => ({\n root: {\n '--group-child-width': grow && preventGrowOverflow ? childWidth : undefined,\n '--group-gap': getSpacing(gap),\n '--group-align': align,\n '--group-justify': justify,\n '--group-wrap': wrap,\n },\n })\n);\n\nexport const Group = factory<GroupFactory>((_props, ref) => {\n const props = useProps('Group', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n children,\n gap,\n align,\n justify,\n wrap,\n grow,\n preventGrowOverflow,\n vars,\n variant,\n __size,\n ...others\n } = props;\n\n const filteredChildren = filterFalsyChildren(children);\n const childrenCount = filteredChildren.length;\n const childWidth = `calc(${100 / childrenCount}% - (${getSpacing(gap)} - ${getSpacing(\n gap\n )} / ${childrenCount}))`;\n\n const stylesCtx: GroupStylesCtx = { childWidth };\n\n const getStyles = useStyles<GroupFactory>({\n name: 'Group',\n props,\n stylesCtx,\n className,\n style,\n classes,\n classNames,\n styles,\n unstyled,\n vars,\n varsResolver,\n });\n\n return (\n <Box\n {...getStyles('root')}\n ref={ref}\n variant={variant}\n mod={{ grow }}\n size={__size}\n {...others}\n >\n {filteredChildren}\n </Box>\n );\n});\n\nGroup.classes = classes;\nGroup.displayName = '@mantine/core/Group';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,121 @@
1
+ import React, { useState, useEffect } from 'react';
2
+ import classes from './Image.module.css.js';
3
+ import { polymorphicFactory } from '../../core/factory/polymorphic-factory.js';
4
+ import { useProps } from '../../core/MantineProvider/use-props/use-props.js';
5
+ import { useStyles } from '../../core/styles-api/use-styles/use-styles.js';
6
+ import { Box } from '../../core/Box/Box.js';
7
+ import { createVarsResolver } from '../../core/styles-api/create-vars-resolver/create-vars-resolver.js';
8
+ import { getRadius } from '../../core/utils/get-size/get-size.js';
9
+
10
+ var __defProp = Object.defineProperty;
11
+ var __defProps = Object.defineProperties;
12
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
13
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
14
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
15
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
16
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
17
+ var __spreadValues = (a, b) => {
18
+ for (var prop in b || (b = {}))
19
+ if (__hasOwnProp.call(b, prop))
20
+ __defNormalProp(a, prop, b[prop]);
21
+ if (__getOwnPropSymbols)
22
+ for (var prop of __getOwnPropSymbols(b)) {
23
+ if (__propIsEnum.call(b, prop))
24
+ __defNormalProp(a, prop, b[prop]);
25
+ }
26
+ return a;
27
+ };
28
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
29
+ var __objRest = (source, exclude) => {
30
+ var target = {};
31
+ for (var prop in source)
32
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
33
+ target[prop] = source[prop];
34
+ if (source != null && __getOwnPropSymbols)
35
+ for (var prop of __getOwnPropSymbols(source)) {
36
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
37
+ target[prop] = source[prop];
38
+ }
39
+ return target;
40
+ };
41
+ const defaultProps = {
42
+ radius: 0
43
+ };
44
+ const varsResolver = createVarsResolver((_, { radius, fit }) => ({
45
+ root: {
46
+ "--image-radius": getRadius(radius),
47
+ "--image-object-fit": fit
48
+ }
49
+ }));
50
+ const Image = polymorphicFactory((_props, ref) => {
51
+ const props = useProps("Image", defaultProps, _props);
52
+ const _a = props, {
53
+ classNames,
54
+ className,
55
+ style,
56
+ styles,
57
+ unstyled,
58
+ vars,
59
+ onError,
60
+ src,
61
+ radius,
62
+ fit,
63
+ fallbackSrc
64
+ } = _a, others = __objRest(_a, [
65
+ "classNames",
66
+ "className",
67
+ "style",
68
+ "styles",
69
+ "unstyled",
70
+ "vars",
71
+ "onError",
72
+ "src",
73
+ "radius",
74
+ "fit",
75
+ "fallbackSrc"
76
+ ]);
77
+ const [error, setError] = useState(!src);
78
+ useEffect(() => setError(!src), [src]);
79
+ const getStyles = useStyles({
80
+ name: "Image",
81
+ classes,
82
+ props,
83
+ className,
84
+ style,
85
+ classNames,
86
+ styles,
87
+ unstyled,
88
+ vars,
89
+ varsResolver
90
+ });
91
+ if (error && fallbackSrc) {
92
+ return /* @__PURE__ */ React.createElement(
93
+ Box,
94
+ __spreadValues(__spreadProps(__spreadValues({
95
+ component: "img",
96
+ src: fallbackSrc
97
+ }, getStyles("root")), {
98
+ onError,
99
+ mod: "fallback"
100
+ }), others)
101
+ );
102
+ }
103
+ return /* @__PURE__ */ React.createElement(
104
+ Box,
105
+ __spreadValues(__spreadProps(__spreadValues({
106
+ component: "img",
107
+ ref
108
+ }, getStyles("root")), {
109
+ src,
110
+ onError: (event) => {
111
+ onError == null ? void 0 : onError(event);
112
+ setError(true);
113
+ }
114
+ }), others)
115
+ );
116
+ });
117
+ Image.classes = classes;
118
+ Image.displayName = "@mantine/core/Image";
119
+
120
+ export { Image };
121
+ //# sourceMappingURL=Image.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Image.js","sources":["../../../src/components/Image/Image.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport {\n Box,\n BoxProps,\n StylesApiProps,\n polymorphicFactory,\n useProps,\n useStyles,\n createVarsResolver,\n PolymorphicFactory,\n MantineRadius,\n getRadius,\n} from '../../core';\nimport classes from './Image.module.css';\n\nexport type ImageStylesNames = 'root';\nexport type ImageCssVariables = {\n root: '--image-radius' | '--image-object-fit';\n};\n\nexport interface ImageProps extends BoxProps, StylesApiProps<ImageFactory> {\n /** Key of `theme.radius` or any valid CSS value to set `border-radius`, `0` by default */\n radius?: MantineRadius | (string & {}) | number;\n\n /** Controls `object-fit` style, `'cover'` by default */\n fit?: React.CSSProperties['objectFit'];\n\n /** Image url that will be used as a fallback in case `src` prop is not set or image cannot be loaded */\n fallbackSrc?: string;\n\n /** Image url */\n src?: any;\n\n /** Called when image fails to load */\n onError?(event: React.SyntheticEvent<HTMLImageElement, Event>): void;\n}\n\nexport type ImageFactory = PolymorphicFactory<{\n props: ImageProps;\n defaultRef: HTMLImageElement;\n defaultComponent: 'img';\n stylesNames: ImageStylesNames;\n vars: ImageCssVariables;\n}>;\n\nconst defaultProps: Partial<ImageProps> = {\n radius: 0,\n};\n\nconst varsResolver = createVarsResolver<ImageFactory>((_, { radius, fit }) => ({\n root: {\n '--image-radius': getRadius(radius),\n '--image-object-fit': fit,\n },\n}));\n\nexport const Image = polymorphicFactory<ImageFactory>((_props, ref) => {\n const props = useProps('Image', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n onError,\n src,\n radius,\n fit,\n fallbackSrc,\n ...others\n } = props;\n\n const [error, setError] = useState(!src);\n\n useEffect(() => setError(!src), [src]);\n\n const getStyles = useStyles<ImageFactory>({\n name: 'Image',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n vars,\n varsResolver,\n });\n\n if (error && fallbackSrc) {\n return (\n <Box\n component=\"img\"\n src={fallbackSrc}\n {...getStyles('root')}\n onError={onError}\n mod=\"fallback\"\n {...others}\n />\n );\n }\n\n return (\n <Box\n component=\"img\"\n ref={ref}\n {...getStyles('root')}\n src={src}\n onError={(event) => {\n onError?.(event);\n setError(true);\n }}\n {...others}\n />\n );\n});\n\nImage.classes = classes;\nImage.displayName = '@mantine/core/Image';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ var classes = {"root":"m-9e117634"};
2
+
3
+ export default classes;
4
+ //# sourceMappingURL=Image.module.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Image.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1,126 @@
1
+ import React from 'react';
2
+ import { getPositionVariables } from './get-position-variables/get-position-variables.js';
3
+ import classes from './Indicator.module.css.js';
4
+ import { factory } from '../../core/factory/factory.js';
5
+ import { useProps } from '../../core/MantineProvider/use-props/use-props.js';
6
+ import { useStyles } from '../../core/styles-api/use-styles/use-styles.js';
7
+ import { Box } from '../../core/Box/Box.js';
8
+ import { createVarsResolver } from '../../core/styles-api/create-vars-resolver/create-vars-resolver.js';
9
+ import { getThemeColor } from '../../core/MantineProvider/color-functions/get-theme-color/get-theme-color.js';
10
+ import { rem } from '../../core/utils/units-converters/rem.js';
11
+ import { getRadius } from '../../core/utils/get-size/get-size.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
+ position: "top-end",
46
+ offset: 0,
47
+ inline: false,
48
+ withBorder: false,
49
+ disabled: false,
50
+ processing: false,
51
+ size: 10
52
+ };
53
+ const varsResolver = createVarsResolver(
54
+ (theme, { color, position, offset, size, radius, zIndex }) => ({
55
+ root: __spreadValues({
56
+ "--indicator-color": getThemeColor(color, theme),
57
+ "--indicator-size": rem(size),
58
+ "--indicator-radius": typeof radius !== "undefined" ? getRadius(radius) : void 0,
59
+ "--indicator-z-index": zIndex == null ? void 0 : zIndex.toString()
60
+ }, getPositionVariables(position, offset))
61
+ })
62
+ );
63
+ const Indicator = factory((_props, ref) => {
64
+ const props = useProps("Indicator", defaultProps, _props);
65
+ const _a = props, {
66
+ classNames,
67
+ className,
68
+ style,
69
+ styles,
70
+ unstyled,
71
+ vars,
72
+ children,
73
+ position,
74
+ offset,
75
+ inline,
76
+ label,
77
+ radius,
78
+ color,
79
+ withBorder,
80
+ disabled,
81
+ processing,
82
+ zIndex
83
+ } = _a, others = __objRest(_a, [
84
+ "classNames",
85
+ "className",
86
+ "style",
87
+ "styles",
88
+ "unstyled",
89
+ "vars",
90
+ "children",
91
+ "position",
92
+ "offset",
93
+ "inline",
94
+ "label",
95
+ "radius",
96
+ "color",
97
+ "withBorder",
98
+ "disabled",
99
+ "processing",
100
+ "zIndex"
101
+ ]);
102
+ const getStyles = useStyles({
103
+ name: "Indicator",
104
+ classes,
105
+ props,
106
+ className,
107
+ style,
108
+ classNames,
109
+ styles,
110
+ unstyled,
111
+ vars,
112
+ varsResolver
113
+ });
114
+ return /* @__PURE__ */ React.createElement(Box, __spreadValues(__spreadProps(__spreadValues({ ref }, getStyles("root")), { mod: { inline } }), others), !disabled && /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(
115
+ Box,
116
+ __spreadValues({
117
+ mod: { "with-label": !!label, "with-border": withBorder, processing }
118
+ }, getStyles("indicator")),
119
+ label
120
+ )), children);
121
+ });
122
+ Indicator.classes = classes;
123
+ Indicator.displayName = "@mantine/core/Indicator";
124
+
125
+ export { Indicator };
126
+ //# sourceMappingURL=Indicator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Indicator.js","sources":["../../../src/components/Indicator/Indicator.tsx"],"sourcesContent":["import React from 'react';\nimport {\n Box,\n BoxProps,\n StylesApiProps,\n factory,\n ElementProps,\n useProps,\n useStyles,\n createVarsResolver,\n Factory,\n MantineRadius,\n MantineColor,\n getThemeColor,\n rem,\n getRadius,\n} from '../../core';\nimport { getPositionVariables } from './get-position-variables/get-position-variables';\nimport { IndicatorPosition } from './Indicator.types';\nimport classes from './Indicator.module.css';\n\nexport type IndicatorPositionVariables =\n | '--indicator-top'\n | '--indicator-bottom'\n | '--indicator-left'\n | '--indicator-right'\n | '--indicator-translate-x'\n | '--indicator-translate-y';\n\nexport type IndicatorStylesNames = 'root' | 'indicator';\nexport type IndicatorCssVariables = {\n root:\n | '--indicator-color'\n | '--indicator-size'\n | '--indicator-radius'\n | '--indicator-z-index'\n | IndicatorPositionVariables;\n};\n\nexport interface IndicatorProps\n extends BoxProps,\n StylesApiProps<IndicatorFactory>,\n ElementProps<'div'> {\n /** Indicator position relative to the target element, `'top-end'` by default */\n position?: IndicatorPosition;\n\n /** Indicator offset relative to the target element, usually used for elements with border-radius, equals to `size` by default */\n offset?: number;\n\n /** Determines whether the indicator container should be an inline element, `false` by default */\n inline?: boolean;\n\n /** Indicator width and height, `10` by default */\n size?: number | string;\n\n /** Label rendered inside the indicator, for example, notification count */\n label?: React.ReactNode;\n\n /** Key of `theme.radius` or any valid CSS value to set `border-radius`, `100` by default */\n radius?: MantineRadius | (string & {}) | number;\n\n /** Key of `theme.colors` or any valid CSS color value, `theme.primaryColor` by default */\n color?: MantineColor;\n\n /** Determines whether the indicator should have a border (color of the border is the same as the body element), `false` by default */\n withBorder?: boolean;\n\n /** When Indicator is disabled it renders children only */\n disabled?: boolean;\n\n /** Determines whether the indicator should have processing animation, `false` by default */\n processing?: boolean;\n\n /** Indicator z-index, `200` by default */\n zIndex?: React.CSSProperties['zIndex'];\n}\n\nexport type IndicatorFactory = Factory<{\n props: IndicatorProps;\n ref: HTMLDivElement;\n stylesNames: IndicatorStylesNames;\n vars: IndicatorCssVariables;\n}>;\n\nconst defaultProps: Partial<IndicatorProps> = {\n position: 'top-end',\n offset: 0,\n inline: false,\n withBorder: false,\n disabled: false,\n processing: false,\n size: 10,\n};\n\nconst varsResolver = createVarsResolver<IndicatorFactory>(\n (theme, { color, position, offset, size, radius, zIndex }) => ({\n root: {\n '--indicator-color': getThemeColor(color, theme),\n '--indicator-size': rem(size),\n '--indicator-radius': typeof radius !== 'undefined' ? getRadius(radius) : undefined,\n '--indicator-z-index': zIndex?.toString(),\n ...getPositionVariables(position, offset),\n },\n })\n);\n\nexport const Indicator = factory<IndicatorFactory>((_props, ref) => {\n const props = useProps('Indicator', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n children,\n position,\n offset,\n inline,\n label,\n radius,\n color,\n withBorder,\n disabled,\n processing,\n zIndex,\n ...others\n } = props;\n\n const getStyles = useStyles<IndicatorFactory>({\n name: 'Indicator',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n vars,\n varsResolver,\n });\n\n return (\n <Box ref={ref} {...getStyles('root')} mod={{ inline }} {...others}>\n {!disabled && (\n <>\n <Box\n mod={{ 'with-label': !!label, 'with-border': withBorder, processing }}\n {...getStyles('indicator')}\n >\n {label}\n </Box>\n </>\n )}\n {children}\n </Box>\n );\n});\n\nIndicator.classes = classes;\nIndicator.displayName = '@mantine/core/Indicator';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ var classes = {"root":"m-e5262200","indicator":"m-760d1fb1","processing":"m-885901b1"};
2
+
3
+ export default classes;
4
+ //# sourceMappingURL=Indicator.module.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Indicator.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1,42 @@
1
+ import { rem } from '../../../core/utils/units-converters/rem.js';
2
+
3
+ function getPositionVariables(_position = "top-end", offset = 0) {
4
+ const variables = {
5
+ "--indicator-top": void 0,
6
+ "--indicator-bottom": void 0,
7
+ "--indicator-left": void 0,
8
+ "--indicator-right": void 0,
9
+ "--indicator-translate-x": void 0,
10
+ "--indicator-translate-y": void 0
11
+ };
12
+ const _offset = rem(offset);
13
+ const [position, placement] = _position.split("-");
14
+ if (position === "top") {
15
+ variables["--indicator-top"] = _offset;
16
+ variables["--indicator-translate-y"] = "-50%";
17
+ }
18
+ if (position === "middle") {
19
+ variables["--indicator-top"] = "50%";
20
+ variables["--indicator-translate-y"] = "-50%";
21
+ }
22
+ if (position === "bottom") {
23
+ variables["--indicator-bottom"] = _offset;
24
+ variables["--indicator-translate-y"] = "50%";
25
+ }
26
+ if (placement === "start") {
27
+ variables["--indicator-left"] = _offset;
28
+ variables["--indicator-translate-x"] = "-50%";
29
+ }
30
+ if (placement === "center") {
31
+ variables["--indicator-left"] = "50%";
32
+ variables["--indicator-translate-x"] = "-50%";
33
+ }
34
+ if (placement === "end") {
35
+ variables["--indicator-right"] = _offset;
36
+ variables["--indicator-translate-x"] = "50%";
37
+ }
38
+ return variables;
39
+ }
40
+
41
+ export { getPositionVariables };
42
+ //# sourceMappingURL=get-position-variables.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-position-variables.js","sources":["../../../../src/components/Indicator/get-position-variables/get-position-variables.ts"],"sourcesContent":["import { rem } from '../../../core';\nimport type { IndicatorPosition } from '../Indicator.types';\nimport type { IndicatorPositionVariables } from '../Indicator';\n\nexport function getPositionVariables(_position: IndicatorPosition = 'top-end', offset = 0) {\n const variables: Record<IndicatorPositionVariables, string | undefined> = {\n '--indicator-top': undefined,\n '--indicator-bottom': undefined,\n '--indicator-left': undefined,\n '--indicator-right': undefined,\n '--indicator-translate-x': undefined,\n '--indicator-translate-y': undefined,\n };\n\n const _offset = rem(offset);\n const [position, placement] = _position.split('-');\n\n if (position === 'top') {\n variables['--indicator-top'] = _offset;\n variables['--indicator-translate-y'] = '-50%';\n }\n\n if (position === 'middle') {\n variables['--indicator-top'] = '50%';\n variables['--indicator-translate-y'] = '-50%';\n }\n\n if (position === 'bottom') {\n variables['--indicator-bottom'] = _offset;\n variables['--indicator-translate-y'] = '50%';\n }\n\n if (placement === 'start') {\n variables['--indicator-left'] = _offset;\n variables['--indicator-translate-x'] = '-50%';\n }\n\n if (placement === 'center') {\n variables['--indicator-left'] = '50%';\n variables['--indicator-translate-x'] = '-50%';\n }\n\n if (placement === 'end') {\n variables['--indicator-right'] = _offset;\n variables['--indicator-translate-x'] = '50%';\n }\n\n return variables;\n}\n"],"names":[],"mappings":";;AACO,SAAS,oBAAoB,CAAC,SAAS,GAAG,SAAS,EAAE,MAAM,GAAG,CAAC,EAAE;AACxE,EAAE,MAAM,SAAS,GAAG;AACpB,IAAI,iBAAiB,EAAE,KAAK,CAAC;AAC7B,IAAI,oBAAoB,EAAE,KAAK,CAAC;AAChC,IAAI,kBAAkB,EAAE,KAAK,CAAC;AAC9B,IAAI,mBAAmB,EAAE,KAAK,CAAC;AAC/B,IAAI,yBAAyB,EAAE,KAAK,CAAC;AACrC,IAAI,yBAAyB,EAAE,KAAK,CAAC;AACrC,GAAG,CAAC;AACJ,EAAE,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC;AAC9B,EAAE,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AACrD,EAAE,IAAI,QAAQ,KAAK,KAAK,EAAE;AAC1B,IAAI,SAAS,CAAC,iBAAiB,CAAC,GAAG,OAAO,CAAC;AAC3C,IAAI,SAAS,CAAC,yBAAyB,CAAC,GAAG,MAAM,CAAC;AAClD,GAAG;AACH,EAAE,IAAI,QAAQ,KAAK,QAAQ,EAAE;AAC7B,IAAI,SAAS,CAAC,iBAAiB,CAAC,GAAG,KAAK,CAAC;AACzC,IAAI,SAAS,CAAC,yBAAyB,CAAC,GAAG,MAAM,CAAC;AAClD,GAAG;AACH,EAAE,IAAI,QAAQ,KAAK,QAAQ,EAAE;AAC7B,IAAI,SAAS,CAAC,oBAAoB,CAAC,GAAG,OAAO,CAAC;AAC9C,IAAI,SAAS,CAAC,yBAAyB,CAAC,GAAG,KAAK,CAAC;AACjD,GAAG;AACH,EAAE,IAAI,SAAS,KAAK,OAAO,EAAE;AAC7B,IAAI,SAAS,CAAC,kBAAkB,CAAC,GAAG,OAAO,CAAC;AAC5C,IAAI,SAAS,CAAC,yBAAyB,CAAC,GAAG,MAAM,CAAC;AAClD,GAAG;AACH,EAAE,IAAI,SAAS,KAAK,QAAQ,EAAE;AAC9B,IAAI,SAAS,CAAC,kBAAkB,CAAC,GAAG,KAAK,CAAC;AAC1C,IAAI,SAAS,CAAC,yBAAyB,CAAC,GAAG,MAAM,CAAC;AAClD,GAAG;AACH,EAAE,IAAI,SAAS,KAAK,KAAK,EAAE;AAC3B,IAAI,SAAS,CAAC,mBAAmB,CAAC,GAAG,OAAO,CAAC;AAC7C,IAAI,SAAS,CAAC,yBAAyB,CAAC,GAAG,KAAK,CAAC;AACjD,GAAG;AACH,EAAE,OAAO,SAAS,CAAC;AACnB;;;;"}
@@ -1,12 +1,12 @@
1
1
  import React from 'react';
2
2
  import { useInputWrapperContext } from '../InputWrapper.context.js';
3
3
  import classes from '../Input.module.css.js';
4
+ import { getFontSize } from '../../../core/utils/get-size/get-size.js';
4
5
  import { factory } from '../../../core/factory/factory.js';
5
6
  import { useProps } from '../../../core/MantineProvider/use-props/use-props.js';
6
7
  import { useStyles } from '../../../core/styles-api/use-styles/use-styles.js';
7
8
  import { Box } from '../../../core/Box/Box.js';
8
9
  import { createVarsResolver } from '../../../core/styles-api/create-vars-resolver/create-vars-resolver.js';
9
- import { getFontSize } from '../../../core/utils/get-size/get-size.js';
10
10
 
11
11
  var __defProp = Object.defineProperty;
12
12
  var __defProps = Object.defineProperties;