@mantine/core 5.5.6 → 5.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (181) hide show
  1. package/cjs/Autocomplete/Autocomplete.js +7 -3
  2. package/cjs/Autocomplete/Autocomplete.js.map +1 -1
  3. package/cjs/Badge/Badge.styles.js +1 -1
  4. package/cjs/Badge/Badge.styles.js.map +1 -1
  5. package/cjs/CloseButton/CloseButton.js +5 -2
  6. package/cjs/CloseButton/CloseButton.js.map +1 -1
  7. package/cjs/ColorInput/ColorInput.js +6 -4
  8. package/cjs/ColorInput/ColorInput.js.map +1 -1
  9. package/cjs/FileButton/FileButton.js +2 -2
  10. package/cjs/FileButton/FileButton.js.map +1 -1
  11. package/cjs/FileInput/FileInput.js +7 -4
  12. package/cjs/FileInput/FileInput.js.map +1 -1
  13. package/cjs/Image/Image.js +1 -1
  14. package/cjs/Image/Image.js.map +1 -1
  15. package/cjs/JsonInput/JsonInput.js +7 -4
  16. package/cjs/JsonInput/JsonInput.js.map +1 -1
  17. package/cjs/MediaQuery/MediaQuery.js.map +1 -1
  18. package/cjs/MediaQuery/MediaQuery.styles.js +5 -4
  19. package/cjs/MediaQuery/MediaQuery.styles.js.map +1 -1
  20. package/cjs/NativeSelect/NativeSelect.js +1 -0
  21. package/cjs/NativeSelect/NativeSelect.js.map +1 -1
  22. package/cjs/Progress/Progress.js +33 -18
  23. package/cjs/Progress/Progress.js.map +1 -1
  24. package/cjs/Rating/Rating.js +192 -0
  25. package/cjs/Rating/Rating.js.map +1 -0
  26. package/cjs/Rating/Rating.styles.js +23 -0
  27. package/cjs/Rating/Rating.styles.js.map +1 -0
  28. package/cjs/Rating/RatingItem/RatingItem.js +105 -0
  29. package/cjs/Rating/RatingItem/RatingItem.js.map +1 -0
  30. package/cjs/Rating/RatingItem/RatingItem.styles.js +52 -0
  31. package/cjs/Rating/RatingItem/RatingItem.styles.js.map +1 -0
  32. package/cjs/Rating/StarSymbol/StarIcon.js +41 -0
  33. package/cjs/Rating/StarSymbol/StarIcon.js.map +1 -0
  34. package/cjs/Rating/StarSymbol/StarSymbol.js +22 -0
  35. package/cjs/Rating/StarSymbol/StarSymbol.js.map +1 -0
  36. package/cjs/Rating/StarSymbol/StarSymbol.styles.js +28 -0
  37. package/cjs/Rating/StarSymbol/StarSymbol.styles.js.map +1 -0
  38. package/cjs/RingProgress/Curve/Curve.js +39 -13
  39. package/cjs/RingProgress/Curve/Curve.js.map +1 -1
  40. package/cjs/RingProgress/RingProgress.js +15 -15
  41. package/cjs/RingProgress/RingProgress.js.map +1 -1
  42. package/cjs/RingProgress/get-curves/get-curves.js.map +1 -1
  43. package/cjs/Select/SelectPopover/SelectPopover.js +3 -1
  44. package/cjs/Select/SelectPopover/SelectPopover.js.map +1 -1
  45. package/cjs/Tabs/Tab/Tab.js +2 -1
  46. package/cjs/Tabs/Tab/Tab.js.map +1 -1
  47. package/cjs/Tabs/Tab/Tab.styles.js +7 -7
  48. package/cjs/Tabs/Tab/Tab.styles.js.map +1 -1
  49. package/cjs/Tabs/Tabs.context.js.map +1 -1
  50. package/cjs/Tabs/Tabs.js +9 -5
  51. package/cjs/Tabs/Tabs.js.map +1 -1
  52. package/cjs/Tabs/Tabs.styles.js +3 -2
  53. package/cjs/Tabs/Tabs.styles.js.map +1 -1
  54. package/cjs/Tabs/TabsList/TabsList.js +2 -2
  55. package/cjs/Tabs/TabsList/TabsList.js.map +1 -1
  56. package/cjs/Tabs/TabsList/TabsList.styles.js +3 -3
  57. package/cjs/Tabs/TabsList/TabsList.styles.js.map +1 -1
  58. package/cjs/Tabs/TabsPanel/TabsPanel.js +2 -1
  59. package/cjs/Tabs/TabsPanel/TabsPanel.js.map +1 -1
  60. package/cjs/Tabs/TabsProvider.js +2 -0
  61. package/cjs/Tabs/TabsProvider.js.map +1 -1
  62. package/cjs/index.js +4 -0
  63. package/cjs/index.js.map +1 -1
  64. package/esm/Autocomplete/Autocomplete.js +7 -3
  65. package/esm/Autocomplete/Autocomplete.js.map +1 -1
  66. package/esm/Badge/Badge.styles.js +1 -1
  67. package/esm/Badge/Badge.styles.js.map +1 -1
  68. package/esm/CloseButton/CloseButton.js +5 -3
  69. package/esm/CloseButton/CloseButton.js.map +1 -1
  70. package/esm/ColorInput/ColorInput.js +6 -4
  71. package/esm/ColorInput/ColorInput.js.map +1 -1
  72. package/esm/FileButton/FileButton.js +2 -2
  73. package/esm/FileButton/FileButton.js.map +1 -1
  74. package/esm/FileInput/FileInput.js +7 -4
  75. package/esm/FileInput/FileInput.js.map +1 -1
  76. package/esm/Image/Image.js +1 -1
  77. package/esm/Image/Image.js.map +1 -1
  78. package/esm/JsonInput/JsonInput.js +7 -4
  79. package/esm/JsonInput/JsonInput.js.map +1 -1
  80. package/esm/MediaQuery/MediaQuery.js.map +1 -1
  81. package/esm/MediaQuery/MediaQuery.styles.js +5 -4
  82. package/esm/MediaQuery/MediaQuery.styles.js.map +1 -1
  83. package/esm/NativeSelect/NativeSelect.js +1 -0
  84. package/esm/NativeSelect/NativeSelect.js.map +1 -1
  85. package/esm/Progress/Progress.js +33 -18
  86. package/esm/Progress/Progress.js.map +1 -1
  87. package/esm/Rating/Rating.js +184 -0
  88. package/esm/Rating/Rating.js.map +1 -0
  89. package/esm/Rating/Rating.styles.js +19 -0
  90. package/esm/Rating/Rating.styles.js.map +1 -0
  91. package/esm/Rating/RatingItem/RatingItem.js +97 -0
  92. package/esm/Rating/RatingItem/RatingItem.js.map +1 -0
  93. package/esm/Rating/RatingItem/RatingItem.styles.js +48 -0
  94. package/esm/Rating/RatingItem/RatingItem.styles.js.map +1 -0
  95. package/esm/Rating/StarSymbol/StarIcon.js +33 -0
  96. package/esm/Rating/StarSymbol/StarIcon.js.map +1 -0
  97. package/esm/Rating/StarSymbol/StarSymbol.js +14 -0
  98. package/esm/Rating/StarSymbol/StarSymbol.js.map +1 -0
  99. package/esm/Rating/StarSymbol/StarSymbol.styles.js +24 -0
  100. package/esm/Rating/StarSymbol/StarSymbol.styles.js.map +1 -0
  101. package/esm/RingProgress/Curve/Curve.js +39 -13
  102. package/esm/RingProgress/Curve/Curve.js.map +1 -1
  103. package/esm/RingProgress/RingProgress.js +15 -15
  104. package/esm/RingProgress/RingProgress.js.map +1 -1
  105. package/esm/RingProgress/get-curves/get-curves.js.map +1 -1
  106. package/esm/Select/SelectPopover/SelectPopover.js +3 -1
  107. package/esm/Select/SelectPopover/SelectPopover.js.map +1 -1
  108. package/esm/Tabs/Tab/Tab.js +2 -1
  109. package/esm/Tabs/Tab/Tab.js.map +1 -1
  110. package/esm/Tabs/Tab/Tab.styles.js +7 -7
  111. package/esm/Tabs/Tab/Tab.styles.js.map +1 -1
  112. package/esm/Tabs/Tabs.context.js.map +1 -1
  113. package/esm/Tabs/Tabs.js +9 -5
  114. package/esm/Tabs/Tabs.js.map +1 -1
  115. package/esm/Tabs/Tabs.styles.js +3 -2
  116. package/esm/Tabs/Tabs.styles.js.map +1 -1
  117. package/esm/Tabs/TabsList/TabsList.js +2 -2
  118. package/esm/Tabs/TabsList/TabsList.js.map +1 -1
  119. package/esm/Tabs/TabsList/TabsList.styles.js +3 -3
  120. package/esm/Tabs/TabsList/TabsList.styles.js.map +1 -1
  121. package/esm/Tabs/TabsPanel/TabsPanel.js +2 -1
  122. package/esm/Tabs/TabsPanel/TabsPanel.js.map +1 -1
  123. package/esm/Tabs/TabsProvider.js +2 -0
  124. package/esm/Tabs/TabsProvider.js.map +1 -1
  125. package/esm/index.js +2 -0
  126. package/esm/index.js.map +1 -1
  127. package/lib/Autocomplete/Autocomplete.d.ts.map +1 -1
  128. package/lib/CloseButton/CloseButton.d.ts +8 -1
  129. package/lib/CloseButton/CloseButton.d.ts.map +1 -1
  130. package/lib/ColorInput/ColorInput.d.ts.map +1 -1
  131. package/lib/FileButton/FileButton.d.ts +2 -0
  132. package/lib/FileButton/FileButton.d.ts.map +1 -1
  133. package/lib/FileInput/FileInput.d.ts +2 -0
  134. package/lib/FileInput/FileInput.d.ts.map +1 -1
  135. package/lib/Image/Image.d.ts.map +1 -1
  136. package/lib/JsonInput/JsonInput.d.ts.map +1 -1
  137. package/lib/MediaQuery/MediaQuery.d.ts +2 -2
  138. package/lib/MediaQuery/MediaQuery.d.ts.map +1 -1
  139. package/lib/MediaQuery/MediaQuery.styles.d.ts +3 -3
  140. package/lib/MediaQuery/MediaQuery.styles.d.ts.map +1 -1
  141. package/lib/Progress/Progress.d.ts +1 -1
  142. package/lib/Progress/Progress.d.ts.map +1 -1
  143. package/lib/Rating/Rating.d.ts +37 -0
  144. package/lib/Rating/Rating.d.ts.map +1 -0
  145. package/lib/Rating/Rating.styles.d.ts +7 -0
  146. package/lib/Rating/Rating.styles.d.ts.map +1 -0
  147. package/lib/Rating/RatingItem/RatingItem.d.ts +20 -0
  148. package/lib/Rating/RatingItem/RatingItem.d.ts.map +1 -0
  149. package/lib/Rating/RatingItem/RatingItem.styles.d.ts +7 -0
  150. package/lib/Rating/RatingItem/RatingItem.styles.d.ts.map +1 -0
  151. package/lib/Rating/StarSymbol/StarIcon.d.ts +6 -0
  152. package/lib/Rating/StarSymbol/StarIcon.d.ts.map +1 -0
  153. package/lib/Rating/StarSymbol/StarSymbol.d.ts +12 -0
  154. package/lib/Rating/StarSymbol/StarSymbol.d.ts.map +1 -0
  155. package/lib/Rating/StarSymbol/StarSymbol.styles.d.ts +13 -0
  156. package/lib/Rating/StarSymbol/StarSymbol.styles.d.ts.map +1 -0
  157. package/lib/Rating/index.d.ts +4 -0
  158. package/lib/Rating/index.d.ts.map +1 -0
  159. package/lib/RingProgress/Curve/Curve.d.ts +2 -2
  160. package/lib/RingProgress/Curve/Curve.d.ts.map +1 -1
  161. package/lib/RingProgress/RingProgress.d.ts +7 -5
  162. package/lib/RingProgress/RingProgress.d.ts.map +1 -1
  163. package/lib/RingProgress/get-curves/get-curves.d.ts +1 -1
  164. package/lib/RingProgress/get-curves/get-curves.d.ts.map +1 -1
  165. package/lib/Select/SelectPopover/SelectPopover.d.ts +2 -1
  166. package/lib/Select/SelectPopover/SelectPopover.d.ts.map +1 -1
  167. package/lib/Tabs/Tab/Tab.d.ts.map +1 -1
  168. package/lib/Tabs/Tab/Tab.styles.d.ts.map +1 -1
  169. package/lib/Tabs/Tabs.context.d.ts +3 -2
  170. package/lib/Tabs/Tabs.context.d.ts.map +1 -1
  171. package/lib/Tabs/Tabs.d.ts.map +1 -1
  172. package/lib/Tabs/Tabs.styles.d.ts.map +1 -1
  173. package/lib/Tabs/Tabs.types.d.ts +2 -0
  174. package/lib/Tabs/Tabs.types.d.ts.map +1 -1
  175. package/lib/Tabs/TabsList/TabsList.styles.d.ts.map +1 -1
  176. package/lib/Tabs/TabsPanel/TabsPanel.d.ts.map +1 -1
  177. package/lib/Tabs/TabsProvider.d.ts +4 -2
  178. package/lib/Tabs/TabsProvider.d.ts.map +1 -1
  179. package/lib/index.d.ts +1 -0
  180. package/lib/index.d.ts.map +1 -1
  181. package/package.json +4 -4
@@ -0,0 +1,184 @@
1
+ import React, { forwardRef, useRef, useState } from 'react';
2
+ import { useComponentDefaultProps } from '@mantine/styles';
3
+ import { useId, useUncontrolled, useMergedRef, clamp } from '@mantine/hooks';
4
+ import { RatingItem } from './RatingItem/RatingItem.js';
5
+ import useStyles from './Rating.styles.js';
6
+ import { Box } from '../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
+ function roundValueTo(value, to) {
37
+ var _a;
38
+ const rounded = Math.round(value / to) * to;
39
+ const precision = ((_a = `${to}`.split(".")[1]) == null ? void 0 : _a.length) || 0;
40
+ return Number(rounded.toFixed(precision));
41
+ }
42
+ const defaultProps = {
43
+ size: "sm",
44
+ getSymbolLabel: (value) => `${value}`,
45
+ count: 5,
46
+ fractions: 1,
47
+ color: "yellow"
48
+ };
49
+ const Rating = forwardRef((props, ref) => {
50
+ const _a = useComponentDefaultProps("Rating", defaultProps, props), {
51
+ defaultValue,
52
+ value,
53
+ emptySymbol,
54
+ fullSymbol,
55
+ size,
56
+ count,
57
+ fractions,
58
+ onChange,
59
+ onHover,
60
+ getSymbolLabel,
61
+ name,
62
+ readOnly,
63
+ className,
64
+ classNames,
65
+ styles,
66
+ unstyled,
67
+ onMouseEnter,
68
+ onMouseMove,
69
+ onMouseLeave,
70
+ highlightSelectedOnly,
71
+ color
72
+ } = _a, others = __objRest(_a, [
73
+ "defaultValue",
74
+ "value",
75
+ "emptySymbol",
76
+ "fullSymbol",
77
+ "size",
78
+ "count",
79
+ "fractions",
80
+ "onChange",
81
+ "onHover",
82
+ "getSymbolLabel",
83
+ "name",
84
+ "readOnly",
85
+ "className",
86
+ "classNames",
87
+ "styles",
88
+ "unstyled",
89
+ "onMouseEnter",
90
+ "onMouseMove",
91
+ "onMouseLeave",
92
+ "highlightSelectedOnly",
93
+ "color"
94
+ ]);
95
+ const { classes, cx, theme } = useStyles(null, { name: "Rating", classNames, styles, unstyled });
96
+ const _name = useId(name);
97
+ const rootRef = useRef(null);
98
+ const [_value, setValue] = useUncontrolled({
99
+ value,
100
+ defaultValue,
101
+ finalValue: 0,
102
+ onChange
103
+ });
104
+ const [hovered, setHovered] = useState(-1);
105
+ const [isOutside, setOutside] = useState(true);
106
+ const decimalUnit = 1 / fractions;
107
+ const stableValueRounded = roundValueTo(_value, decimalUnit);
108
+ const finalValue = hovered !== -1 ? hovered : stableValueRounded;
109
+ const handleMouseEnter = (event) => {
110
+ onMouseEnter == null ? void 0 : onMouseEnter(event);
111
+ !readOnly && setOutside(false);
112
+ };
113
+ const handleMouseMove = (event) => {
114
+ onMouseMove == null ? void 0 : onMouseMove(event);
115
+ if (readOnly) {
116
+ return;
117
+ }
118
+ const { left, right, width } = rootRef.current.getBoundingClientRect();
119
+ const symbolWidth = width / count;
120
+ const hoverPosition = theme.dir === "rtl" ? right - event.clientX : event.clientX - left;
121
+ const hoverValue = hoverPosition / symbolWidth;
122
+ const rounded = clamp(roundValueTo(hoverValue + decimalUnit / 2, decimalUnit), decimalUnit, count);
123
+ setHovered(rounded);
124
+ rounded !== hovered && (onHover == null ? void 0 : onHover(rounded));
125
+ };
126
+ const handleMouseLeave = (event) => {
127
+ onMouseLeave == null ? void 0 : onMouseLeave(event);
128
+ if (readOnly) {
129
+ return;
130
+ }
131
+ setHovered(-1);
132
+ setOutside(true);
133
+ hovered !== -1 && (onHover == null ? void 0 : onHover(-1));
134
+ };
135
+ const handleItemBlur = () => isOutside && setHovered(-1);
136
+ const handleChange = (event) => {
137
+ const resultedValue = parseFloat(event.target.value);
138
+ setValue(resultedValue);
139
+ };
140
+ const items = Array(count).fill(0).map((_, integerIndex) => {
141
+ const integerValue = integerIndex + 1;
142
+ const fractionItems = Array.from(new Array(integerIndex === 0 ? fractions + 1 : fractions));
143
+ const isGroupActive = !readOnly && Math.ceil(hovered) === integerValue;
144
+ return /* @__PURE__ */ React.createElement("div", {
145
+ key: integerValue,
146
+ "data-active": isGroupActive,
147
+ className: classes.symbolGroup
148
+ }, fractionItems.map((__, fractionIndex) => {
149
+ const fractionValue = decimalUnit * (integerIndex === 0 ? fractionIndex : fractionIndex + 1);
150
+ const symbolValue = roundValueTo(integerValue - 1 + fractionValue, decimalUnit);
151
+ return /* @__PURE__ */ React.createElement(RatingItem, {
152
+ key: `${integerValue}-${symbolValue}`,
153
+ size,
154
+ getSymbolLabel,
155
+ emptyIcon: emptySymbol,
156
+ fullIcon: fullSymbol,
157
+ full: highlightSelectedOnly ? symbolValue === finalValue : symbolValue <= finalValue,
158
+ active: symbolValue === finalValue,
159
+ checked: symbolValue === stableValueRounded,
160
+ readOnly,
161
+ fractionValue,
162
+ value: symbolValue,
163
+ name: _name,
164
+ onChange: handleChange,
165
+ onBlur: handleItemBlur,
166
+ classNames,
167
+ styles,
168
+ unstyled,
169
+ color
170
+ });
171
+ }));
172
+ });
173
+ return /* @__PURE__ */ React.createElement(Box, __spreadValues({
174
+ ref: useMergedRef(rootRef, ref),
175
+ className: cx(classes.root, className),
176
+ onMouseMove: handleMouseMove,
177
+ onMouseEnter: handleMouseEnter,
178
+ onMouseLeave: handleMouseLeave
179
+ }, others), items);
180
+ });
181
+ Rating.displayName = "@mantine/core/Rating";
182
+
183
+ export { Rating };
184
+ //# sourceMappingURL=Rating.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Rating.js","sources":["../../src/Rating/Rating.tsx"],"sourcesContent":["import React, { forwardRef, useState, useRef } from 'react';\nimport {\n DefaultProps,\n MantineSize,\n useComponentDefaultProps,\n Selectors,\n MantineColor,\n} from '@mantine/styles';\nimport { useUncontrolled, clamp, useMergedRef, useId } from '@mantine/hooks';\nimport { Box } from '../Box';\nimport { RatingItem, RatingItemStylesNames } from './RatingItem/RatingItem';\nimport useStyles from './Rating.styles';\n\nfunction roundValueTo(value: number, to: number) {\n const rounded = Math.round(value / to) * to;\n const precision = `${to}`.split('.')[1]?.length || 0;\n return Number(rounded.toFixed(precision));\n}\n\nexport type RatingStylesNames = Selectors<typeof useStyles> | RatingItemStylesNames;\n\nexport interface RatingProps\n extends DefaultProps<RatingStylesNames>,\n Omit<React.ComponentPropsWithoutRef<'div'>, 'onChange'> {\n /** Default value for uncontrolled component */\n defaultValue?: number;\n\n /** Value for controlled component */\n value?: number;\n\n /** Called when value changes */\n onChange?(value: number): void;\n\n /** The icon that is displayed when symbol is empty */\n emptySymbol?: React.ReactNode | ((value: number) => React.ReactNode);\n\n /** This icon that is displayed when symbol is full */\n fullSymbol?: React.ReactNode | ((value: number) => React.ReactNode);\n\n /** Number of fractions each item can be divided into, 1 by default */\n fractions?: number;\n\n /** Controls component size */\n size?: MantineSize;\n\n /** Number of controls that should be rendered */\n count?: number;\n\n /** Called when item is hovered */\n onHover?(value: number): void;\n\n /** Function should return labelText for the symbols */\n getSymbolLabel?: (value: number) => string;\n\n /** Name of rating, should be unique within the page */\n name?: string;\n\n /** If true, you won't be able to interact */\n readOnly?: boolean;\n\n /** If true, only the selected symbol will change to full symbol */\n highlightSelectedOnly?: boolean;\n\n /** Key of theme.colors or any CSS color value, yellow by default */\n color?: MantineColor;\n}\n\nconst defaultProps: Partial<RatingProps> = {\n size: 'sm',\n getSymbolLabel: (value) => `${value}`,\n count: 5,\n fractions: 1,\n color: 'yellow',\n};\n\nexport const Rating = forwardRef<HTMLInputElement, RatingProps>((props, ref) => {\n const {\n defaultValue,\n value,\n emptySymbol,\n fullSymbol,\n size,\n count,\n fractions,\n onChange,\n onHover,\n getSymbolLabel,\n name,\n readOnly,\n className,\n classNames,\n styles,\n unstyled,\n onMouseEnter,\n onMouseMove,\n onMouseLeave,\n highlightSelectedOnly,\n color,\n ...others\n } = useComponentDefaultProps('Rating', defaultProps, props);\n\n const { classes, cx, theme } = useStyles(null, { name: 'Rating', classNames, styles, unstyled });\n\n const _name = useId(name);\n const rootRef = useRef<HTMLDivElement>(null);\n\n const [_value, setValue] = useUncontrolled({\n value,\n defaultValue,\n finalValue: 0,\n onChange,\n });\n\n const [hovered, setHovered] = useState(-1);\n const [isOutside, setOutside] = useState(true);\n\n const decimalUnit = 1 / fractions;\n const stableValueRounded = roundValueTo(_value, decimalUnit);\n const finalValue = hovered !== -1 ? hovered : stableValueRounded;\n\n const handleMouseEnter = (event: React.MouseEvent<HTMLDivElement>) => {\n onMouseEnter?.(event);\n !readOnly && setOutside(false);\n };\n\n const handleMouseMove = (event: React.MouseEvent<HTMLDivElement>) => {\n onMouseMove?.(event);\n\n if (readOnly) {\n return;\n }\n\n const { left, right, width } = rootRef.current.getBoundingClientRect();\n const symbolWidth = width / count;\n\n const hoverPosition = theme.dir === 'rtl' ? right - event.clientX : event.clientX - left;\n const hoverValue = hoverPosition / symbolWidth;\n\n const rounded = clamp(\n roundValueTo(hoverValue + decimalUnit / 2, decimalUnit),\n decimalUnit,\n count\n );\n\n setHovered(rounded);\n rounded !== hovered && onHover?.(rounded);\n };\n\n const handleMouseLeave = (event: React.MouseEvent<HTMLDivElement>) => {\n onMouseLeave?.(event);\n\n if (readOnly) {\n return;\n }\n\n setHovered(-1);\n setOutside(true);\n hovered !== -1 && onHover?.(-1);\n };\n\n const handleItemBlur = () => isOutside && setHovered(-1);\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n const resultedValue = parseFloat(event.target.value);\n setValue(resultedValue);\n };\n\n const items = Array(count)\n .fill(0)\n .map((_, integerIndex) => {\n const integerValue = integerIndex + 1;\n const fractionItems = Array.from(new Array(integerIndex === 0 ? fractions + 1 : fractions));\n const isGroupActive = !readOnly && Math.ceil(hovered) === integerValue;\n\n return (\n <div key={integerValue} data-active={isGroupActive} className={classes.symbolGroup}>\n {fractionItems.map((__, fractionIndex) => {\n const fractionValue =\n decimalUnit * (integerIndex === 0 ? fractionIndex : fractionIndex + 1);\n const symbolValue = roundValueTo(integerValue - 1 + fractionValue, decimalUnit);\n\n return (\n <RatingItem\n key={`${integerValue}-${symbolValue}`}\n size={size}\n getSymbolLabel={getSymbolLabel}\n emptyIcon={emptySymbol}\n fullIcon={fullSymbol}\n full={\n highlightSelectedOnly ? symbolValue === finalValue : symbolValue <= finalValue\n }\n active={symbolValue === finalValue}\n checked={symbolValue === stableValueRounded}\n readOnly={readOnly}\n fractionValue={fractionValue}\n value={symbolValue}\n name={_name}\n onChange={handleChange}\n onBlur={handleItemBlur}\n classNames={classNames}\n styles={styles}\n unstyled={unstyled}\n color={color}\n />\n );\n })}\n </div>\n );\n });\n\n return (\n <Box\n ref={useMergedRef(rootRef, ref)}\n className={cx(classes.root, className)}\n onMouseMove={handleMouseMove}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n {...others}\n >\n {items}\n </Box>\n );\n});\n\nRating.displayName = '@mantine/core/Rating';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import { createStyles } from '@mantine/styles';
2
+
3
+ var useStyles = createStyles(() => ({
4
+ root: {
5
+ display: "flex",
6
+ width: "max-content"
7
+ },
8
+ symbolGroup: {
9
+ position: "relative",
10
+ transition: "transform 100ms ease",
11
+ '&[data-active="true"]': {
12
+ zIndex: 1,
13
+ transform: "scale(1.2)"
14
+ }
15
+ }
16
+ }));
17
+
18
+ export default useStyles;
19
+ //# sourceMappingURL=Rating.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Rating.styles.js","sources":["../../src/Rating/Rating.styles.ts"],"sourcesContent":["import { createStyles } from '@mantine/styles';\n\nexport default createStyles(() => ({\n root: {\n display: 'flex',\n width: 'max-content',\n },\n\n symbolGroup: {\n position: 'relative',\n transition: 'transform 100ms ease',\n\n '&[data-active=\"true\"]': {\n zIndex: 1,\n transform: 'scale(1.2)',\n },\n },\n}));\n"],"names":[],"mappings":";;AACA,gBAAe,YAAY,CAAC,OAAO;AACnC,EAAE,IAAI,EAAE;AACR,IAAI,OAAO,EAAE,MAAM;AACnB,IAAI,KAAK,EAAE,aAAa;AACxB,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,QAAQ,EAAE,UAAU;AACxB,IAAI,UAAU,EAAE,sBAAsB;AACtC,IAAI,uBAAuB,EAAE;AAC7B,MAAM,MAAM,EAAE,CAAC;AACf,MAAM,SAAS,EAAE,YAAY;AAC7B,KAAK;AACL,GAAG;AACH,CAAC,CAAC,CAAC;;;;"}
@@ -0,0 +1,97 @@
1
+ import React, { useId } from 'react';
2
+ import { StarSymbol } from '../StarSymbol/StarSymbol.js';
3
+ import useStyles from './RatingItem.styles.js';
4
+ import { Box } from '../../Box/Box.js';
5
+
6
+ var __defProp = Object.defineProperty;
7
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
8
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
10
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
11
+ var __spreadValues = (a, b) => {
12
+ for (var prop in b || (b = {}))
13
+ if (__hasOwnProp.call(b, prop))
14
+ __defNormalProp(a, prop, b[prop]);
15
+ if (__getOwnPropSymbols)
16
+ for (var prop of __getOwnPropSymbols(b)) {
17
+ if (__propIsEnum.call(b, prop))
18
+ __defNormalProp(a, prop, b[prop]);
19
+ }
20
+ return a;
21
+ };
22
+ var __objRest = (source, exclude) => {
23
+ var target = {};
24
+ for (var prop in source)
25
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
26
+ target[prop] = source[prop];
27
+ if (source != null && __getOwnPropSymbols)
28
+ for (var prop of __getOwnPropSymbols(source)) {
29
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
30
+ target[prop] = source[prop];
31
+ }
32
+ return target;
33
+ };
34
+ function RatingItem(_a) {
35
+ var _b = _a, {
36
+ size,
37
+ getSymbolLabel,
38
+ emptyIcon,
39
+ fullIcon,
40
+ full,
41
+ active,
42
+ value,
43
+ readOnly,
44
+ fractionValue,
45
+ classNames,
46
+ styles,
47
+ unstyled,
48
+ color
49
+ } = _b, others = __objRest(_b, [
50
+ "size",
51
+ "getSymbolLabel",
52
+ "emptyIcon",
53
+ "fullIcon",
54
+ "full",
55
+ "active",
56
+ "value",
57
+ "readOnly",
58
+ "fractionValue",
59
+ "classNames",
60
+ "styles",
61
+ "unstyled",
62
+ "color"
63
+ ]);
64
+ const id = useId();
65
+ const { classes } = useStyles(null, { name: "Rating", classNames, styles, unstyled });
66
+ const _fullIcon = typeof fullIcon === "function" ? fullIcon(value) : fullIcon;
67
+ const _emptyIcon = typeof emptyIcon === "function" ? emptyIcon(value) : emptyIcon;
68
+ return /* @__PURE__ */ React.createElement(React.Fragment, null, !readOnly && /* @__PURE__ */ React.createElement("input", __spreadValues({
69
+ className: classes.input,
70
+ id,
71
+ type: "radio",
72
+ "data-active": active,
73
+ "aria-label": getSymbolLabel(value),
74
+ value
75
+ }, others)), /* @__PURE__ */ React.createElement(Box, {
76
+ component: readOnly ? "div" : "label",
77
+ className: classes.label,
78
+ "data-read-only": readOnly || void 0,
79
+ htmlFor: id,
80
+ sx: fractionValue === 1 ? void 0 : { zIndex: active ? 2 : 0 }
81
+ }, /* @__PURE__ */ React.createElement(Box, {
82
+ className: classes.symbolBody,
83
+ sx: fractionValue === 1 ? void 0 : { clipPath: `inset(0 ${active ? 100 - fractionValue * 100 : 100}% 0 0)` }
84
+ }, full ? _fullIcon || /* @__PURE__ */ React.createElement(StarSymbol, {
85
+ color,
86
+ size,
87
+ type: "full"
88
+ }) : _emptyIcon || /* @__PURE__ */ React.createElement(StarSymbol, {
89
+ color,
90
+ size,
91
+ type: "empty"
92
+ }))));
93
+ }
94
+ RatingItem.displayName = "@mantine/core/RatingItem";
95
+
96
+ export { RatingItem };
97
+ //# sourceMappingURL=RatingItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RatingItem.js","sources":["../../../src/Rating/RatingItem/RatingItem.tsx"],"sourcesContent":["import React, { useId } from 'react';\nimport { MantineSize, Selectors, DefaultProps, MantineColor } from '@mantine/styles';\nimport { Box } from '../../Box';\nimport { StarSymbol } from '../StarSymbol/StarSymbol';\nimport useStyles from './RatingItem.styles';\n\nexport type RatingItemStylesNames = Selectors<typeof useStyles>;\n\nexport interface RatingItemProps\n extends DefaultProps<RatingItemStylesNames>,\n Omit<React.ComponentPropsWithoutRef<'input'>, 'value' | 'size'> {\n size: MantineSize;\n getSymbolLabel: (value: number) => string;\n emptyIcon?: React.ReactNode | ((value: number) => React.ReactNode);\n fullIcon?: React.ReactNode | ((value: number) => React.ReactNode);\n color: MantineColor;\n full: boolean;\n active: boolean;\n fractionValue: number;\n value: number;\n}\n\nexport function RatingItem({\n size,\n getSymbolLabel,\n emptyIcon,\n fullIcon,\n full,\n active,\n value,\n readOnly,\n fractionValue,\n classNames,\n styles,\n unstyled,\n color,\n ...others\n}: RatingItemProps) {\n const id = useId();\n const { classes } = useStyles(null, { name: 'Rating', classNames, styles, unstyled });\n const _fullIcon = typeof fullIcon === 'function' ? fullIcon(value) : fullIcon;\n const _emptyIcon = typeof emptyIcon === 'function' ? emptyIcon(value) : emptyIcon;\n\n return (\n <>\n {!readOnly && (\n <input\n className={classes.input}\n id={id}\n type=\"radio\"\n data-active={active}\n aria-label={getSymbolLabel(value)}\n value={value}\n {...others}\n />\n )}\n\n <Box\n component={readOnly ? 'div' : 'label'}\n className={classes.label}\n data-read-only={readOnly || undefined}\n htmlFor={id}\n sx={fractionValue === 1 ? undefined : { zIndex: active ? 2 : 0 }}\n >\n <Box\n className={classes.symbolBody}\n sx={\n fractionValue === 1\n ? undefined\n : { clipPath: `inset(0 ${active ? 100 - fractionValue * 100 : 100}% 0 0)` }\n }\n >\n {full\n ? _fullIcon || <StarSymbol color={color} size={size} type=\"full\" />\n : _emptyIcon || <StarSymbol color={color} size={size} type=\"empty\" />}\n </Box>\n </Box>\n </>\n );\n}\n\nRatingItem.displayName = '@mantine/core/RatingItem';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ import { createStyles } from '@mantine/styles';
2
+
3
+ var useStyles = createStyles((theme, _params, getRef) => ({
4
+ input: {
5
+ height: 0,
6
+ width: 0,
7
+ position: "absolute",
8
+ overflow: "hidden",
9
+ whiteSpace: "nowrap",
10
+ opacity: 0,
11
+ "&:focus": {
12
+ [`& + .${getRef("label")}`]: {
13
+ outline: theme.focusRing === "always" || theme.focusRing === "auto" ? `1px solid ${theme.colors[theme.primaryColor][theme.colorScheme === "dark" ? 7 : 5]}` : void 0
14
+ },
15
+ "&:focus:not(:focus-visible)": {
16
+ [`& + .${getRef("label")}`]: {
17
+ outline: theme.focusRing === "auto" || theme.focusRing === "never" ? "none" : void 0
18
+ }
19
+ }
20
+ }
21
+ },
22
+ label: {
23
+ ref: getRef("label"),
24
+ display: "block",
25
+ boxSizing: "border-box",
26
+ marginInline: 1,
27
+ top: 0,
28
+ left: 0,
29
+ cursor: "pointer",
30
+ position: "absolute",
31
+ zIndex: 0,
32
+ "&[data-read-only]": {
33
+ cursor: "default"
34
+ },
35
+ "&:last-of-type": {
36
+ position: "relative",
37
+ zIndex: 0
38
+ }
39
+ },
40
+ symbolBody: {
41
+ display: "grid",
42
+ placeContent: "center",
43
+ placeItems: "center"
44
+ }
45
+ }));
46
+
47
+ export default useStyles;
48
+ //# sourceMappingURL=RatingItem.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RatingItem.styles.js","sources":["../../../src/Rating/RatingItem/RatingItem.styles.ts"],"sourcesContent":["import { createStyles } from '@mantine/styles';\n\nexport default createStyles((theme, _params, getRef) => ({\n input: {\n height: 0,\n width: 0,\n position: 'absolute',\n overflow: 'hidden',\n whiteSpace: 'nowrap',\n opacity: 0,\n\n '&:focus': {\n [`& + .${getRef('label')}`]: {\n outline:\n theme.focusRing === 'always' || theme.focusRing === 'auto'\n ? `1px solid ${theme.colors[theme.primaryColor][theme.colorScheme === 'dark' ? 7 : 5]}`\n : undefined,\n },\n\n '&:focus:not(:focus-visible)': {\n [`& + .${getRef('label')}`]: {\n outline: theme.focusRing === 'auto' || theme.focusRing === 'never' ? 'none' : undefined,\n },\n },\n },\n },\n\n label: {\n ref: getRef('label'),\n display: 'block',\n boxSizing: 'border-box',\n marginInline: 1,\n top: 0,\n left: 0,\n cursor: 'pointer',\n position: 'absolute',\n zIndex: 0,\n\n '&[data-read-only]': {\n cursor: 'default',\n },\n\n '&:last-of-type': {\n position: 'relative',\n zIndex: 0,\n },\n },\n\n symbolBody: {\n display: 'grid',\n placeContent: 'center',\n placeItems: 'center',\n },\n}));\n"],"names":[],"mappings":";;AACA,gBAAe,YAAY,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM;AACzD,EAAE,KAAK,EAAE;AACT,IAAI,MAAM,EAAE,CAAC;AACb,IAAI,KAAK,EAAE,CAAC;AACZ,IAAI,QAAQ,EAAE,UAAU;AACxB,IAAI,QAAQ,EAAE,QAAQ;AACtB,IAAI,UAAU,EAAE,QAAQ;AACxB,IAAI,OAAO,EAAE,CAAC;AACd,IAAI,SAAS,EAAE;AACf,MAAM,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG;AACnC,QAAQ,OAAO,EAAE,KAAK,CAAC,SAAS,KAAK,QAAQ,IAAI,KAAK,CAAC,SAAS,KAAK,MAAM,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;AAC5K,OAAO;AACP,MAAM,6BAA6B,EAAE;AACrC,QAAQ,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG;AACrC,UAAU,OAAO,EAAE,KAAK,CAAC,SAAS,KAAK,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK,OAAO,GAAG,MAAM,GAAG,KAAK,CAAC;AAC9F,SAAS;AACT,OAAO;AACP,KAAK;AACL,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC;AACxB,IAAI,OAAO,EAAE,OAAO;AACpB,IAAI,SAAS,EAAE,YAAY;AAC3B,IAAI,YAAY,EAAE,CAAC;AACnB,IAAI,GAAG,EAAE,CAAC;AACV,IAAI,IAAI,EAAE,CAAC;AACX,IAAI,MAAM,EAAE,SAAS;AACrB,IAAI,QAAQ,EAAE,UAAU;AACxB,IAAI,MAAM,EAAE,CAAC;AACb,IAAI,mBAAmB,EAAE;AACzB,MAAM,MAAM,EAAE,SAAS;AACvB,KAAK;AACL,IAAI,gBAAgB,EAAE;AACtB,MAAM,QAAQ,EAAE,UAAU;AAC1B,MAAM,MAAM,EAAE,CAAC;AACf,KAAK;AACL,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,OAAO,EAAE,MAAM;AACnB,IAAI,YAAY,EAAE,QAAQ;AAC1B,IAAI,UAAU,EAAE,QAAQ;AACxB,GAAG;AACH,CAAC,CAAC,CAAC;;;;"}
@@ -0,0 +1,33 @@
1
+ import React from 'react';
2
+
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ function StarIcon(props) {
20
+ return /* @__PURE__ */ React.createElement("svg", __spreadValues({
21
+ viewBox: "0 0 24 24",
22
+ strokeLinecap: "round",
23
+ strokeLinejoin: "round",
24
+ fill: "none",
25
+ xmlns: "http://www.w3.org/2000/svg"
26
+ }, props), /* @__PURE__ */ React.createElement("path", {
27
+ d: "M12 17.75l-6.172 3.245l1.179 -6.873l-5 -4.867l6.9 -1l3.086 -6.253l3.086 6.253l6.9 1l-5 4.867l1.179 6.873z"
28
+ }));
29
+ }
30
+ StarIcon.displayName = "@mantine/core/StarIcon";
31
+
32
+ export { StarIcon };
33
+ //# sourceMappingURL=StarIcon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StarIcon.js","sources":["../../../src/Rating/StarSymbol/StarIcon.tsx"],"sourcesContent":["import React from 'react';\n\nexport function StarIcon(props: React.ComponentPropsWithoutRef<'svg'>) {\n return (\n <svg\n viewBox=\"0 0 24 24\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path d=\"M12 17.75l-6.172 3.245l1.179 -6.873l-5 -4.867l6.9 -1l3.086 -6.253l3.086 6.253l6.9 1l-5 4.867l1.179 6.873z\" />\n </svg>\n );\n}\n\nStarIcon.displayName = '@mantine/core/StarIcon';\n"],"names":[],"mappings":";;AAAA,IAAI,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC;AACtC,IAAI,mBAAmB,GAAG,MAAM,CAAC,qBAAqB,CAAC;AACvD,IAAI,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC;AACnD,IAAI,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC;AACzD,IAAI,eAAe,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,KAAK,GAAG,IAAI,GAAG,GAAG,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAChK,IAAI,cAAc,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK;AAC/B,EAAE,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;AAChC,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;AAClC,MAAM,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AACxC,EAAE,IAAI,mBAAmB;AACzB,IAAI,KAAK,IAAI,IAAI,IAAI,mBAAmB,CAAC,CAAC,CAAC,EAAE;AAC7C,MAAM,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;AACpC,QAAQ,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAC1C,KAAK;AACL,EAAE,OAAO,CAAC,CAAC;AACX,CAAC,CAAC;AAEK,SAAS,QAAQ,CAAC,KAAK,EAAE;AAChC,EAAE,uBAAuB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,cAAc,CAAC;AACnE,IAAI,OAAO,EAAE,WAAW;AACxB,IAAI,aAAa,EAAE,OAAO;AAC1B,IAAI,cAAc,EAAE,OAAO;AAC3B,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,KAAK,EAAE,4BAA4B;AACvC,GAAG,EAAE,KAAK,CAAC,kBAAkB,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE;AACzD,IAAI,CAAC,EAAE,2GAA2G;AAClH,GAAG,CAAC,CAAC,CAAC;AACN,CAAC;AACD,QAAQ,CAAC,WAAW,GAAG,wBAAwB;;;;"}
@@ -0,0 +1,14 @@
1
+ import React from 'react';
2
+ import { StarIcon } from './StarIcon.js';
3
+ import useStyles from './StarSymbol.styles.js';
4
+
5
+ function StarSymbol({ size, type, color }) {
6
+ const { classes } = useStyles({ size, type, color });
7
+ return /* @__PURE__ */ React.createElement(StarIcon, {
8
+ className: classes.icon
9
+ });
10
+ }
11
+ StarSymbol.displayName = "@mantine/core/StarSymbol";
12
+
13
+ export { StarSymbol };
14
+ //# sourceMappingURL=StarSymbol.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StarSymbol.js","sources":["../../../src/Rating/StarSymbol/StarSymbol.tsx"],"sourcesContent":["import React from 'react';\nimport { MantineSize, MantineColor } from '@mantine/styles';\nimport { StarIcon } from './StarIcon';\nimport useStyles from './StarSymbol.styles';\n\nexport interface StarSymbolProps {\n size: MantineSize;\n color: MantineColor;\n type: 'empty' | 'full';\n}\n\nexport function StarSymbol({ size, type, color }: StarSymbolProps) {\n const { classes } = useStyles({ size, type, color });\n return <StarIcon className={classes.icon} />;\n}\n\nStarSymbol.displayName = '@mantine/core/StarSymbol';\n"],"names":[],"mappings":";;;;AAGO,SAAS,UAAU,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;AAClD,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,SAAS,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;AACvD,EAAE,uBAAuB,KAAK,CAAC,aAAa,CAAC,QAAQ,EAAE;AACvD,IAAI,SAAS,EAAE,OAAO,CAAC,IAAI;AAC3B,GAAG,CAAC,CAAC;AACL,CAAC;AACD,UAAU,CAAC,WAAW,GAAG,0BAA0B;;;;"}
@@ -0,0 +1,24 @@
1
+ import { createStyles } from '@mantine/styles';
2
+
3
+ const sizes = {
4
+ xs: 14,
5
+ sm: 18,
6
+ md: 20,
7
+ lg: 28,
8
+ xl: 32
9
+ };
10
+ var useStyles = createStyles((theme, { size, type, color }) => {
11
+ const emptyColor = theme.colorScheme === "light" ? theme.colors.gray[3] : theme.colors.gray[8];
12
+ const fullColor = theme.fn.variant({ variant: "filled", color }).background;
13
+ return {
14
+ icon: {
15
+ stroke: type === "empty" ? emptyColor : fullColor,
16
+ fill: type === "empty" ? emptyColor : fullColor,
17
+ width: theme.fn.size({ size, sizes }),
18
+ height: theme.fn.size({ size, sizes })
19
+ }
20
+ };
21
+ });
22
+
23
+ export default useStyles;
24
+ //# sourceMappingURL=StarSymbol.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StarSymbol.styles.js","sources":["../../../src/Rating/StarSymbol/StarSymbol.styles.ts"],"sourcesContent":["import { createStyles, MantineColor, MantineSize } from '@mantine/styles';\n\nexport interface StarSymbolStylesParams {\n size: MantineSize;\n type: 'empty' | 'full';\n color: MantineColor;\n}\n\nconst sizes: Record<MantineSize, number> = {\n xs: 14,\n sm: 18,\n md: 20,\n lg: 28,\n xl: 32,\n};\n\nexport default createStyles((theme, { size, type, color }: StarSymbolStylesParams) => {\n const emptyColor = theme.colorScheme === 'light' ? theme.colors.gray[3] : theme.colors.gray[8];\n const fullColor = theme.fn.variant({ variant: 'filled', color }).background;\n\n return {\n icon: {\n stroke: type === 'empty' ? emptyColor : fullColor,\n fill: type === 'empty' ? emptyColor : fullColor,\n width: theme.fn.size({ size, sizes }),\n height: theme.fn.size({ size, sizes }),\n },\n };\n});\n"],"names":[],"mappings":";;AACA,MAAM,KAAK,GAAG;AACd,EAAE,EAAE,EAAE,EAAE;AACR,EAAE,EAAE,EAAE,EAAE;AACR,EAAE,EAAE,EAAE,EAAE;AACR,EAAE,EAAE,EAAE,EAAE;AACR,EAAE,EAAE,EAAE,EAAE;AACR,CAAC,CAAC;AACF,gBAAe,YAAY,CAAC,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK;AAC9D,EAAE,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,KAAK,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjG,EAAE,MAAM,SAAS,GAAG,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,UAAU,CAAC;AAC9E,EAAE,OAAO;AACT,IAAI,IAAI,EAAE;AACV,MAAM,MAAM,EAAE,IAAI,KAAK,OAAO,GAAG,UAAU,GAAG,SAAS;AACvD,MAAM,IAAI,EAAE,IAAI,KAAK,OAAO,GAAG,UAAU,GAAG,SAAS;AACrD,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AAC3C,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AAC5C,KAAK;AACL,GAAG,CAAC;AACJ,CAAC,CAAC;;;;"}
@@ -4,6 +4,8 @@ import { getCurveProps } from './get-curve-props.js';
4
4
  import { Tooltip } from '../../Tooltip/Tooltip.js';
5
5
 
6
6
  var __defProp = Object.defineProperty;
7
+ var __defProps = Object.defineProperties;
8
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
7
9
  var __getOwnPropSymbols = Object.getOwnPropertySymbols;
8
10
  var __hasOwnProp = Object.prototype.hasOwnProperty;
9
11
  var __propIsEnum = Object.prototype.propertyIsEnumerable;
@@ -19,27 +21,51 @@ var __spreadValues = (a, b) => {
19
21
  }
20
22
  return a;
21
23
  };
22
- function Curve({
23
- size,
24
- value,
25
- offset,
26
- sum,
27
- thickness,
28
- root,
29
- color,
30
- lineRoundCaps,
31
- tooltip
32
- }) {
24
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
25
+ var __objRest = (source, exclude) => {
26
+ var target = {};
27
+ for (var prop in source)
28
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
29
+ target[prop] = source[prop];
30
+ if (source != null && __getOwnPropSymbols)
31
+ for (var prop of __getOwnPropSymbols(source)) {
32
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
33
+ target[prop] = source[prop];
34
+ }
35
+ return target;
36
+ };
37
+ function Curve(_a) {
38
+ var _b = _a, {
39
+ size,
40
+ value,
41
+ offset,
42
+ sum,
43
+ thickness,
44
+ root,
45
+ color,
46
+ lineRoundCaps,
47
+ tooltip
48
+ } = _b, others = __objRest(_b, [
49
+ "size",
50
+ "value",
51
+ "offset",
52
+ "sum",
53
+ "thickness",
54
+ "root",
55
+ "color",
56
+ "lineRoundCaps",
57
+ "tooltip"
58
+ ]);
33
59
  const theme = useMantineTheme();
34
60
  const stroke = theme.fn.themeColor(color || (theme.colorScheme === "dark" ? "dark" : "gray"), color ? theme.fn.primaryShade() : theme.colorScheme === "dark" ? 4 : 1, false);
35
61
  return /* @__PURE__ */ React.createElement(Tooltip.Floating, {
36
62
  disabled: !tooltip,
37
63
  label: tooltip
38
- }, /* @__PURE__ */ React.createElement("circle", __spreadValues({
64
+ }, /* @__PURE__ */ React.createElement("circle", __spreadValues(__spreadProps(__spreadValues({}, others), {
39
65
  fill: "none",
40
66
  strokeLinecap: lineRoundCaps ? "round" : "butt",
41
67
  stroke
42
- }, getCurveProps({ sum, size, thickness, value, offset, root }))));
68
+ }), getCurveProps({ sum, size, thickness, value, offset, root }))));
43
69
  }
44
70
  Curve.displayName = "@mantine/core/Curve";
45
71
 
@@ -1 +1 @@
1
- {"version":3,"file":"Curve.js","sources":["../../../src/RingProgress/Curve/Curve.tsx"],"sourcesContent":["import React from 'react';\nimport { useMantineTheme, MantineColor } from '@mantine/styles';\nimport { Tooltip } from '../../Tooltip';\nimport { getCurveProps } from './get-curve-props';\n\ninterface CurveProps {\n value?: number;\n size: number;\n offset: number;\n sum: number;\n thickness: number;\n lineRoundCaps: boolean;\n root?: boolean;\n color?: MantineColor;\n tooltip?: React.ReactNode;\n}\n\nexport function Curve({\n size,\n value,\n offset,\n sum,\n thickness,\n root,\n color,\n lineRoundCaps,\n tooltip,\n}: CurveProps) {\n const theme = useMantineTheme();\n const stroke = theme.fn.themeColor(\n color || (theme.colorScheme === 'dark' ? 'dark' : 'gray'),\n color ? theme.fn.primaryShade() : theme.colorScheme === 'dark' ? 4 : 1,\n false\n );\n\n return (\n <Tooltip.Floating disabled={!tooltip} label={tooltip}>\n <circle\n fill=\"none\"\n strokeLinecap={lineRoundCaps ? 'round' : 'butt'}\n stroke={stroke}\n {...getCurveProps({ sum, size, thickness, value, offset, root })}\n />\n </Tooltip.Floating>\n );\n}\n\nCurve.displayName = '@mantine/core/Curve';\n"],"names":[],"mappings":";;;;;AAAA,IAAI,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC;AACtC,IAAI,mBAAmB,GAAG,MAAM,CAAC,qBAAqB,CAAC;AACvD,IAAI,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC;AACnD,IAAI,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC;AACzD,IAAI,eAAe,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,KAAK,GAAG,IAAI,GAAG,GAAG,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAChK,IAAI,cAAc,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK;AAC/B,EAAE,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;AAChC,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;AAClC,MAAM,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AACxC,EAAE,IAAI,mBAAmB;AACzB,IAAI,KAAK,IAAI,IAAI,IAAI,mBAAmB,CAAC,CAAC,CAAC,EAAE;AAC7C,MAAM,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;AACpC,QAAQ,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAC1C,KAAK;AACL,EAAE,OAAO,CAAC,CAAC;AACX,CAAC,CAAC;AAKK,SAAS,KAAK,CAAC;AACtB,EAAE,IAAI;AACN,EAAE,KAAK;AACP,EAAE,MAAM;AACR,EAAE,GAAG;AACL,EAAE,SAAS;AACX,EAAE,IAAI;AACN,EAAE,KAAK;AACP,EAAE,aAAa;AACf,EAAE,OAAO;AACT,CAAC,EAAE;AACH,EAAE,MAAM,KAAK,GAAG,eAAe,EAAE,CAAC;AAClC,EAAE,MAAM,MAAM,GAAG,KAAK,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,KAAK,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,EAAE,CAAC,YAAY,EAAE,GAAG,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;AAC/K,EAAE,uBAAuB,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,EAAE;AAC/D,IAAI,QAAQ,EAAE,CAAC,OAAO;AACtB,IAAI,KAAK,EAAE,OAAO;AAClB,GAAG,kBAAkB,KAAK,CAAC,aAAa,CAAC,QAAQ,EAAE,cAAc,CAAC;AAClE,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,aAAa,EAAE,aAAa,GAAG,OAAO,GAAG,MAAM;AACnD,IAAI,MAAM;AACV,GAAG,EAAE,aAAa,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACrE,CAAC;AACD,KAAK,CAAC,WAAW,GAAG,qBAAqB;;;;"}
1
+ {"version":3,"file":"Curve.js","sources":["../../../src/RingProgress/Curve/Curve.tsx"],"sourcesContent":["import React from 'react';\nimport { useMantineTheme, MantineColor } from '@mantine/styles';\nimport { Tooltip } from '../../Tooltip';\nimport { getCurveProps } from './get-curve-props';\n\ninterface CurveProps extends React.ComponentPropsWithRef<'circle'> {\n value?: number;\n size: number;\n offset: number;\n sum: number;\n thickness: number;\n lineRoundCaps: boolean;\n root?: boolean;\n color?: MantineColor;\n tooltip?: React.ReactNode;\n}\n\nexport function Curve({\n size,\n value,\n offset,\n sum,\n thickness,\n root,\n color,\n lineRoundCaps,\n tooltip,\n ...others\n}: CurveProps) {\n const theme = useMantineTheme();\n const stroke = theme.fn.themeColor(\n color || (theme.colorScheme === 'dark' ? 'dark' : 'gray'),\n color ? theme.fn.primaryShade() : theme.colorScheme === 'dark' ? 4 : 1,\n false\n );\n\n return (\n <Tooltip.Floating disabled={!tooltip} label={tooltip}>\n <circle\n {...others}\n fill=\"none\"\n strokeLinecap={lineRoundCaps ? 'round' : 'butt'}\n stroke={stroke}\n {...getCurveProps({ sum, size, thickness, value, offset, root })}\n />\n </Tooltip.Floating>\n );\n}\n\nCurve.displayName = '@mantine/core/Curve';\n"],"names":[],"mappings":"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"}
@@ -6,6 +6,8 @@ import useStyles from './RingProgress.styles.js';
6
6
  import { Box } from '../Box/Box.js';
7
7
 
8
8
  var __defProp = Object.defineProperty;
9
+ var __defProps = Object.defineProperties;
10
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
9
11
  var __getOwnPropSymbols = Object.getOwnPropertySymbols;
10
12
  var __hasOwnProp = Object.prototype.hasOwnProperty;
11
13
  var __propIsEnum = Object.prototype.propertyIsEnumerable;
@@ -21,6 +23,7 @@ var __spreadValues = (a, b) => {
21
23
  }
22
24
  return a;
23
25
  };
26
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
24
27
  var __objRest = (source, exclude) => {
25
28
  var target = {};
26
29
  for (var prop in source)
@@ -67,21 +70,18 @@ const RingProgress = forwardRef((props, ref) => {
67
70
  thickness,
68
71
  sections,
69
72
  renderRoundedLineCaps: roundCaps
70
- }).map((curve, index) => {
71
- var _a2, _b, _c;
72
- return /* @__PURE__ */ React.createElement(Curve, {
73
- key: index,
74
- value: (_a2 = curve.data) == null ? void 0 : _a2.value,
75
- size,
76
- thickness,
77
- sum: curve.sum,
78
- offset: curve.offset,
79
- color: (_b = curve.data) == null ? void 0 : _b.color,
80
- root: curve.root,
81
- lineRoundCaps: curve.lineRoundCaps,
82
- tooltip: (_c = curve.data) == null ? void 0 : _c.tooltip
83
- });
84
- });
73
+ }).map(({ data, sum, root, lineRoundCaps, offset }, index) => /* @__PURE__ */ React.createElement(Curve, __spreadProps(__spreadValues({}, data), {
74
+ key: index,
75
+ value: data == null ? void 0 : data.value,
76
+ size,
77
+ thickness,
78
+ sum,
79
+ offset,
80
+ color: data == null ? void 0 : data.color,
81
+ root,
82
+ lineRoundCaps,
83
+ tooltip: data == null ? void 0 : data.tooltip
84
+ })));
85
85
  return /* @__PURE__ */ React.createElement(Box, __spreadValues({
86
86
  style: __spreadValues({ width: size, height: size }, style),
87
87
  className: cx(classes.root, className),