@mantine/core 5.2.7 → 5.3.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.
- package/cjs/Accordion/AccordionControl/AccordionControl.styles.js +1 -1
- package/cjs/Accordion/AccordionControl/AccordionControl.styles.js.map +1 -1
- package/cjs/Accordion/AccordionPanel/AccordionPanel.styles.js +1 -1
- package/cjs/Accordion/AccordionPanel/AccordionPanel.styles.js.map +1 -1
- package/cjs/AppShell/AppShell.js +7 -2
- package/cjs/AppShell/AppShell.js.map +1 -1
- package/cjs/Badge/Badge.styles.js +2 -2
- package/cjs/Badge/Badge.styles.js.map +1 -1
- package/cjs/Burger/Burger.styles.js +3 -3
- package/cjs/Burger/Burger.styles.js.map +1 -1
- package/cjs/Code/Code.styles.js +1 -1
- package/cjs/Code/Code.styles.js.map +1 -1
- package/cjs/ColorSwatch/ColorSwatch.js +24 -3
- package/cjs/ColorSwatch/ColorSwatch.js.map +1 -1
- package/cjs/Dialog/Dialog.styles.js +2 -2
- package/cjs/Dialog/Dialog.styles.js.map +1 -1
- package/cjs/Grid/Col/Col.js +3 -0
- package/cjs/Grid/Col/Col.js.map +1 -1
- package/cjs/Grid/Col/Col.styles.js +30 -7
- package/cjs/Grid/Col/Col.styles.js.map +1 -1
- package/cjs/Indicator/Indicator.js +29 -5
- package/cjs/Indicator/Indicator.js.map +1 -1
- package/cjs/Indicator/Indicator.styles.js +53 -27
- package/cjs/Indicator/Indicator.styles.js.map +1 -1
- package/cjs/Indicator/Machine/Machine.js +65 -0
- package/cjs/Indicator/Machine/Machine.js.map +1 -0
- package/cjs/Indicator/Machine/Machine.styles.js +16 -0
- package/cjs/Indicator/Machine/Machine.styles.js.map +1 -0
- package/cjs/Indicator/Machine/MachineNumber.js +58 -0
- package/cjs/Indicator/Machine/MachineNumber.js.map +1 -0
- package/cjs/Indicator/Machine/MachineNumber.styles.js +99 -0
- package/cjs/Indicator/Machine/MachineNumber.styles.js.map +1 -0
- package/cjs/Input/Input.styles.js +2 -2
- package/cjs/Input/Input.styles.js.map +1 -1
- package/cjs/Kbd/Kbd.styles.js +1 -1
- package/cjs/Kbd/Kbd.styles.js.map +1 -1
- package/cjs/Menu/MenuDivider/MenuDivider.styles.js +1 -1
- package/cjs/Menu/MenuDivider/MenuDivider.styles.js.map +1 -1
- package/cjs/Menu/MenuLabel/MenuLabel.styles.js +1 -1
- package/cjs/Menu/MenuLabel/MenuLabel.styles.js.map +1 -1
- package/cjs/MultiSelect/MultiSelect.js +5 -5
- package/cjs/MultiSelect/MultiSelect.js.map +1 -1
- package/cjs/MultiSelect/MultiSelect.styles.js +3 -3
- package/cjs/MultiSelect/MultiSelect.styles.js.map +1 -1
- package/cjs/Notification/Notification.js +3 -2
- package/cjs/Notification/Notification.js.map +1 -1
- package/cjs/NumberInput/NumberInput.js +7 -4
- package/cjs/NumberInput/NumberInput.js.map +1 -1
- package/cjs/Radio/Radio.js +2 -0
- package/cjs/Radio/Radio.js.map +1 -1
- package/cjs/Radio/RadioGroup/RadioGroup.js +5 -3
- package/cjs/Radio/RadioGroup/RadioGroup.js.map +1 -1
- package/cjs/Radio/RadioGroup.context.js.map +1 -1
- package/cjs/SegmentedControl/SegmentedControl.js +5 -2
- package/cjs/SegmentedControl/SegmentedControl.js.map +1 -1
- package/cjs/Slider/Marks/Marks.styles.js +1 -1
- package/cjs/Slider/Marks/Marks.styles.js.map +1 -1
- package/cjs/Slider/Thumb/Thumb.styles.js +1 -1
- package/cjs/Slider/Thumb/Thumb.styles.js.map +1 -1
- package/cjs/Stepper/Step/Step.styles.js +1 -1
- package/cjs/Stepper/Step/Step.styles.js.map +1 -1
- package/cjs/Stepper/Stepper.styles.js +2 -2
- package/cjs/Stepper/Stepper.styles.js.map +1 -1
- package/cjs/Switch/Switch.js +35 -8
- package/cjs/Switch/Switch.js.map +1 -1
- package/cjs/Switch/Switch.styles.js +81 -61
- package/cjs/Switch/Switch.styles.js.map +1 -1
- package/cjs/Tabs/TabsList/TabsList.styles.js +1 -1
- package/cjs/Tabs/TabsList/TabsList.styles.js.map +1 -1
- package/cjs/Timeline/TimelineItem/TimelineItem.styles.js +1 -1
- package/cjs/Timeline/TimelineItem/TimelineItem.styles.js.map +1 -1
- package/cjs/Tooltip/Tooltip.styles.js +1 -1
- package/cjs/Tooltip/Tooltip.styles.js.map +1 -1
- package/cjs/TransferList/RenderList/RenderList.styles.js +4 -4
- package/cjs/TransferList/RenderList/RenderList.styles.js.map +1 -1
- package/cjs/TypographyStylesProvider/TypographyStylesProvider.styles.js +3 -3
- package/cjs/TypographyStylesProvider/TypographyStylesProvider.styles.js.map +1 -1
- package/esm/Accordion/AccordionControl/AccordionControl.styles.js +1 -1
- package/esm/Accordion/AccordionControl/AccordionControl.styles.js.map +1 -1
- package/esm/Accordion/AccordionPanel/AccordionPanel.styles.js +1 -1
- package/esm/Accordion/AccordionPanel/AccordionPanel.styles.js.map +1 -1
- package/esm/AppShell/AppShell.js +7 -2
- package/esm/AppShell/AppShell.js.map +1 -1
- package/esm/Badge/Badge.styles.js +2 -2
- package/esm/Badge/Badge.styles.js.map +1 -1
- package/esm/Burger/Burger.styles.js +3 -3
- package/esm/Burger/Burger.styles.js.map +1 -1
- package/esm/Code/Code.styles.js +1 -1
- package/esm/Code/Code.styles.js.map +1 -1
- package/esm/ColorSwatch/ColorSwatch.js +24 -3
- package/esm/ColorSwatch/ColorSwatch.js.map +1 -1
- package/esm/Dialog/Dialog.styles.js +2 -2
- package/esm/Dialog/Dialog.styles.js.map +1 -1
- package/esm/Grid/Col/Col.js +3 -0
- package/esm/Grid/Col/Col.js.map +1 -1
- package/esm/Grid/Col/Col.styles.js +30 -7
- package/esm/Grid/Col/Col.styles.js.map +1 -1
- package/esm/Indicator/Indicator.js +30 -6
- package/esm/Indicator/Indicator.js.map +1 -1
- package/esm/Indicator/Indicator.styles.js +54 -28
- package/esm/Indicator/Indicator.styles.js.map +1 -1
- package/esm/Indicator/Machine/Machine.js +57 -0
- package/esm/Indicator/Machine/Machine.js.map +1 -0
- package/esm/Indicator/Machine/Machine.styles.js +12 -0
- package/esm/Indicator/Machine/Machine.styles.js.map +1 -0
- package/esm/Indicator/Machine/MachineNumber.js +50 -0
- package/esm/Indicator/Machine/MachineNumber.js.map +1 -0
- package/esm/Indicator/Machine/MachineNumber.styles.js +95 -0
- package/esm/Indicator/Machine/MachineNumber.styles.js.map +1 -0
- package/esm/Input/Input.styles.js +2 -2
- package/esm/Input/Input.styles.js.map +1 -1
- package/esm/Kbd/Kbd.styles.js +1 -1
- package/esm/Kbd/Kbd.styles.js.map +1 -1
- package/esm/Menu/MenuDivider/MenuDivider.styles.js +1 -1
- package/esm/Menu/MenuDivider/MenuDivider.styles.js.map +1 -1
- package/esm/Menu/MenuLabel/MenuLabel.styles.js +1 -1
- package/esm/Menu/MenuLabel/MenuLabel.styles.js.map +1 -1
- package/esm/MultiSelect/MultiSelect.js +5 -5
- package/esm/MultiSelect/MultiSelect.js.map +1 -1
- package/esm/MultiSelect/MultiSelect.styles.js +3 -3
- package/esm/MultiSelect/MultiSelect.styles.js.map +1 -1
- package/esm/Notification/Notification.js +3 -2
- package/esm/Notification/Notification.js.map +1 -1
- package/esm/NumberInput/NumberInput.js +7 -4
- package/esm/NumberInput/NumberInput.js.map +1 -1
- package/esm/Radio/Radio.js +2 -0
- package/esm/Radio/Radio.js.map +1 -1
- package/esm/Radio/RadioGroup/RadioGroup.js +5 -3
- package/esm/Radio/RadioGroup/RadioGroup.js.map +1 -1
- package/esm/Radio/RadioGroup.context.js.map +1 -1
- package/esm/SegmentedControl/SegmentedControl.js +5 -2
- package/esm/SegmentedControl/SegmentedControl.js.map +1 -1
- package/esm/Slider/Marks/Marks.styles.js +1 -1
- package/esm/Slider/Marks/Marks.styles.js.map +1 -1
- package/esm/Slider/Thumb/Thumb.styles.js +1 -1
- package/esm/Slider/Thumb/Thumb.styles.js.map +1 -1
- package/esm/Stepper/Step/Step.styles.js +1 -1
- package/esm/Stepper/Step/Step.styles.js.map +1 -1
- package/esm/Stepper/Stepper.styles.js +2 -2
- package/esm/Stepper/Stepper.styles.js.map +1 -1
- package/esm/Switch/Switch.js +36 -9
- package/esm/Switch/Switch.js.map +1 -1
- package/esm/Switch/Switch.styles.js +81 -61
- package/esm/Switch/Switch.styles.js.map +1 -1
- package/esm/Tabs/TabsList/TabsList.styles.js +1 -1
- package/esm/Tabs/TabsList/TabsList.styles.js.map +1 -1
- package/esm/Timeline/TimelineItem/TimelineItem.styles.js +1 -1
- package/esm/Timeline/TimelineItem/TimelineItem.styles.js.map +1 -1
- package/esm/Tooltip/Tooltip.styles.js +1 -1
- package/esm/Tooltip/Tooltip.styles.js.map +1 -1
- package/esm/TransferList/RenderList/RenderList.styles.js +4 -4
- package/esm/TransferList/RenderList/RenderList.styles.js.map +1 -1
- package/esm/TypographyStylesProvider/TypographyStylesProvider.styles.js +3 -3
- package/esm/TypographyStylesProvider/TypographyStylesProvider.styles.js.map +1 -1
- package/lib/AppShell/AppShell.d.ts +2 -0
- package/lib/AppShell/AppShell.d.ts.map +1 -1
- package/lib/ColorSwatch/ColorSwatch.d.ts +2 -0
- package/lib/ColorSwatch/ColorSwatch.d.ts.map +1 -1
- package/lib/Grid/Col/Col.d.ts +7 -6
- package/lib/Grid/Col/Col.d.ts.map +1 -1
- package/lib/Grid/Col/Col.styles.d.ts +7 -6
- package/lib/Grid/Col/Col.styles.d.ts.map +1 -1
- package/lib/Indicator/Indicator.d.ts +7 -0
- package/lib/Indicator/Indicator.d.ts.map +1 -1
- package/lib/Indicator/Indicator.styles.d.ts +2 -2
- package/lib/Indicator/Indicator.styles.d.ts.map +1 -1
- package/lib/Indicator/Machine/Machine.d.ts +8 -0
- package/lib/Indicator/Machine/Machine.d.ts.map +1 -0
- package/lib/Indicator/Machine/Machine.styles.d.ts +7 -0
- package/lib/Indicator/Machine/Machine.styles.d.ts.map +1 -0
- package/lib/Indicator/Machine/MachineNumber.d.ts +9 -0
- package/lib/Indicator/Machine/MachineNumber.d.ts.map +1 -0
- package/lib/Indicator/Machine/MachineNumber.styles.d.ts +7 -0
- package/lib/Indicator/Machine/MachineNumber.styles.d.ts.map +1 -0
- package/lib/MultiSelect/MultiSelect.d.ts.map +1 -1
- package/lib/NumberInput/NumberInput.d.ts +2 -0
- package/lib/NumberInput/NumberInput.d.ts.map +1 -1
- package/lib/Radio/Radio.d.ts.map +1 -1
- package/lib/Radio/RadioGroup/RadioGroup.d.ts +2 -0
- package/lib/Radio/RadioGroup/RadioGroup.d.ts.map +1 -1
- package/lib/Radio/RadioGroup.context.d.ts +1 -0
- package/lib/Radio/RadioGroup.context.d.ts.map +1 -1
- package/lib/SegmentedControl/SegmentedControl.d.ts.map +1 -1
- package/lib/Switch/Switch.d.ts +4 -2
- package/lib/Switch/Switch.d.ts.map +1 -1
- package/lib/Switch/Switch.styles.d.ts +2 -4
- package/lib/Switch/Switch.styles.d.ts.map +1 -1
- package/package.json +4 -4
|
@@ -34,17 +34,38 @@ var __objRest = (source, exclude) => {
|
|
|
34
34
|
};
|
|
35
35
|
const defaultProps = {
|
|
36
36
|
size: 25,
|
|
37
|
-
radius: 25
|
|
37
|
+
radius: 25,
|
|
38
|
+
withShadow: true
|
|
38
39
|
};
|
|
39
40
|
const _ColorSwatch = forwardRef((props, ref) => {
|
|
40
|
-
const _a = useComponentDefaultProps("ColorSwatch", defaultProps, props), {
|
|
41
|
+
const _a = useComponentDefaultProps("ColorSwatch", defaultProps, props), {
|
|
42
|
+
color,
|
|
43
|
+
size,
|
|
44
|
+
radius,
|
|
45
|
+
className,
|
|
46
|
+
children,
|
|
47
|
+
classNames,
|
|
48
|
+
styles,
|
|
49
|
+
unstyled,
|
|
50
|
+
withShadow
|
|
51
|
+
} = _a, others = __objRest(_a, [
|
|
52
|
+
"color",
|
|
53
|
+
"size",
|
|
54
|
+
"radius",
|
|
55
|
+
"className",
|
|
56
|
+
"children",
|
|
57
|
+
"classNames",
|
|
58
|
+
"styles",
|
|
59
|
+
"unstyled",
|
|
60
|
+
"withShadow"
|
|
61
|
+
]);
|
|
41
62
|
const { classes, cx } = useStyles({ radius, size }, { classNames, styles, unstyled, name: "ColorSwatch" });
|
|
42
63
|
return /* @__PURE__ */ React.createElement(Box, __spreadValues({
|
|
43
64
|
className: cx(classes.root, className),
|
|
44
65
|
ref
|
|
45
66
|
}, others), /* @__PURE__ */ React.createElement("div", {
|
|
46
67
|
className: cx(classes.alphaOverlay, classes.overlay)
|
|
47
|
-
}), /* @__PURE__ */ React.createElement("div", {
|
|
68
|
+
}), withShadow && /* @__PURE__ */ React.createElement("div", {
|
|
48
69
|
className: cx(classes.shadowOverlay, classes.overlay)
|
|
49
70
|
}), /* @__PURE__ */ React.createElement("div", {
|
|
50
71
|
className: classes.overlay,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColorSwatch.js","sources":["../../src/ColorSwatch/ColorSwatch.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport {\n DefaultProps,\n MantineNumberSize,\n useComponentDefaultProps,\n Selectors,\n} from '@mantine/styles';\nimport { createPolymorphicComponent } from '@mantine/utils';\nimport { Box } from '../Box';\nimport useStyles, { ColorSwatchStylesParams } from './ColorSwatch.styles';\n\nexport type ColorSwatchStylesNames = Selectors<typeof useStyles>;\n\nexport interface ColorSwatchProps\n extends DefaultProps<ColorSwatchStylesNames, ColorSwatchStylesParams> {\n /** Swatch color value in any css valid format (hex, rgb, etc.) */\n color: string;\n\n /** Width, height and border-radius in px */\n size?: number;\n\n /** Swatch border-radius predefined from theme or number for px value */\n radius?: MantineNumberSize;\n\n /** ColorSwatch children */\n children?: React.ReactNode;\n}\n\nconst defaultProps: Partial<ColorSwatchProps> = {\n size: 25,\n radius: 25,\n};\n\nexport const _ColorSwatch = forwardRef<HTMLDivElement, ColorSwatchProps>((props, ref) => {\n const {
|
|
1
|
+
{"version":3,"file":"ColorSwatch.js","sources":["../../src/ColorSwatch/ColorSwatch.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport {\n DefaultProps,\n MantineNumberSize,\n useComponentDefaultProps,\n Selectors,\n} from '@mantine/styles';\nimport { createPolymorphicComponent } from '@mantine/utils';\nimport { Box } from '../Box';\nimport useStyles, { ColorSwatchStylesParams } from './ColorSwatch.styles';\n\nexport type ColorSwatchStylesNames = Selectors<typeof useStyles>;\n\nexport interface ColorSwatchProps\n extends DefaultProps<ColorSwatchStylesNames, ColorSwatchStylesParams> {\n /** Swatch color value in any css valid format (hex, rgb, etc.) */\n color: string;\n\n /** Width, height and border-radius in px */\n size?: number;\n\n /** Swatch border-radius predefined from theme or number for px value */\n radius?: MantineNumberSize;\n\n /** ColorSwatch children */\n children?: React.ReactNode;\n\n /** Determines whether swatch should have inner shadow */\n withShadow?: boolean;\n}\n\nconst defaultProps: Partial<ColorSwatchProps> = {\n size: 25,\n radius: 25,\n withShadow: true,\n};\n\nexport const _ColorSwatch = forwardRef<HTMLDivElement, ColorSwatchProps>((props, ref) => {\n const {\n color,\n size,\n radius,\n className,\n children,\n classNames,\n styles,\n unstyled,\n withShadow,\n ...others\n } = useComponentDefaultProps('ColorSwatch', defaultProps, props);\n const { classes, cx } = useStyles(\n { radius, size },\n { classNames, styles, unstyled, name: 'ColorSwatch' }\n );\n\n return (\n <Box className={cx(classes.root, className)} ref={ref} {...others}>\n <div className={cx(classes.alphaOverlay, classes.overlay)} />\n {withShadow && <div className={cx(classes.shadowOverlay, classes.overlay)} />}\n <div className={classes.overlay} style={{ backgroundColor: color }} />\n <div className={cx(classes.children, classes.overlay)}>{children}</div>\n </Box>\n );\n});\n\n_ColorSwatch.displayName = '@mantine/core/ColorSwatch';\n\nexport const ColorSwatch = createPolymorphicComponent<'div', ColorSwatchProps>(_ColorSwatch);\n"],"names":[],"mappings":"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"}
|
|
@@ -36,8 +36,8 @@ var useStyles = createStyles((theme, { size }) => ({
|
|
|
36
36
|
}),
|
|
37
37
|
closeButton: {
|
|
38
38
|
position: "absolute",
|
|
39
|
-
top: theme.spacing.md / 2
|
|
40
|
-
right: theme.spacing.md / 2
|
|
39
|
+
top: `calc(${theme.spacing.md}px / 2)`,
|
|
40
|
+
right: `calc(${theme.spacing.md}px / 2)`
|
|
41
41
|
}
|
|
42
42
|
}));
|
|
43
43
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dialog.styles.js","sources":["../../src/Dialog/Dialog.styles.ts"],"sourcesContent":["import { createStyles } from '@mantine/styles';\n\nexport interface DialogStylesParams {\n size: string | number;\n}\n\nconst sizes = {\n xs: 160,\n sm: 200,\n md: 340,\n lg: 400,\n xl: 500,\n};\n\nexport default createStyles((theme, { size }: DialogStylesParams) => ({\n root: {\n ...theme.fn.fontStyles(),\n color: theme.colorScheme === 'dark' ? theme.colors.dark[0] : theme.black,\n position: 'relative',\n width: theme.fn.size({ size, sizes }),\n maxWidth: '100%',\n minHeight: 50,\n },\n\n closeButton: {\n position: 'absolute',\n top: theme.spacing.md / 2
|
|
1
|
+
{"version":3,"file":"Dialog.styles.js","sources":["../../src/Dialog/Dialog.styles.ts"],"sourcesContent":["import { createStyles } from '@mantine/styles';\n\nexport interface DialogStylesParams {\n size: string | number;\n}\n\nconst sizes = {\n xs: 160,\n sm: 200,\n md: 340,\n lg: 400,\n xl: 500,\n};\n\nexport default createStyles((theme, { size }: DialogStylesParams) => ({\n root: {\n ...theme.fn.fontStyles(),\n color: theme.colorScheme === 'dark' ? theme.colors.dark[0] : theme.black,\n position: 'relative',\n width: theme.fn.size({ size, sizes }),\n maxWidth: '100%',\n minHeight: 50,\n },\n\n closeButton: {\n position: 'absolute',\n top: `calc(${theme.spacing.md}px / 2)`,\n right: `calc(${theme.spacing.md}px / 2)`,\n },\n}));\n"],"names":[],"mappings":";;AAAA,IAAI,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC;AACtC,IAAI,UAAU,GAAG,MAAM,CAAC,gBAAgB,CAAC;AACzC,IAAI,iBAAiB,GAAG,MAAM,CAAC,yBAAyB,CAAC;AACzD,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;AACF,IAAI,aAAa,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,UAAU,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;AAElE,MAAM,KAAK,GAAG;AACd,EAAE,EAAE,EAAE,GAAG;AACT,EAAE,EAAE,EAAE,GAAG;AACT,EAAE,EAAE,EAAE,GAAG;AACT,EAAE,EAAE,EAAE,GAAG;AACT,EAAE,EAAE,EAAE,GAAG;AACT,CAAC,CAAC;AACF,gBAAe,YAAY,CAAC,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM;AAClD,EAAE,IAAI,EAAE,aAAa,CAAC,cAAc,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,EAAE;AACjE,IAAI,KAAK,EAAE,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK;AAC5E,IAAI,QAAQ,EAAE,UAAU;AACxB,IAAI,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AACzC,IAAI,QAAQ,EAAE,MAAM;AACpB,IAAI,SAAS,EAAE,EAAE;AACjB,GAAG,CAAC;AACJ,EAAE,WAAW,EAAE;AACf,IAAI,QAAQ,EAAE,UAAU;AACxB,IAAI,GAAG,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC;AAC1C,IAAI,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC;AAC5C,GAAG;AACH,CAAC,CAAC,CAAC;;;;"}
|
package/esm/Grid/Col/Col.js
CHANGED
|
@@ -41,6 +41,9 @@ const defaultProps = {
|
|
|
41
41
|
offsetXl: 0
|
|
42
42
|
};
|
|
43
43
|
function isValidSpan(span) {
|
|
44
|
+
if (span === "auto" || span === "content") {
|
|
45
|
+
return true;
|
|
46
|
+
}
|
|
44
47
|
return typeof span === "number" && span > 0 && span % 1 === 0;
|
|
45
48
|
}
|
|
46
49
|
const Col = forwardRef((props, ref) => {
|
package/esm/Grid/Col/Col.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Col.js","sources":["../../../src/Grid/Col/Col.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { DefaultProps, useComponentDefaultProps } from '@mantine/styles';\nimport { Box } from '../../Box';\nimport { useGridContext } from '../Grid.context';\nimport useStyles from './Col.styles';\n\nexport interface ColProps extends DefaultProps, React.ComponentPropsWithoutRef<'div'> {\n /** Default col span */\n span?:
|
|
1
|
+
{"version":3,"file":"Col.js","sources":["../../../src/Grid/Col/Col.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { DefaultProps, useComponentDefaultProps } from '@mantine/styles';\nimport { Box } from '../../Box';\nimport { useGridContext } from '../Grid.context';\nimport useStyles, { ColSpan } from './Col.styles';\n\nexport interface ColProps extends DefaultProps, React.ComponentPropsWithoutRef<'div'> {\n /** Default col span */\n span?: ColSpan;\n\n /** Column left offset */\n offset?: number;\n\n /** Default col order */\n order?: React.CSSProperties['order'];\n\n /** Col order at (min-width: theme.breakpoints.xs) */\n orderXs?: React.CSSProperties['order'];\n\n /** Col order at (min-width: theme.breakpoints.sm) */\n orderSm?: React.CSSProperties['order'];\n\n /** Col order at (min-width: theme.breakpoints.md) */\n orderMd?: React.CSSProperties['order'];\n\n /** Col order at (min-width: theme.breakpoints.lg) */\n orderLg?: React.CSSProperties['order'];\n\n /** Col order at (min-width: theme.breakpoints.xl) */\n orderXl?: React.CSSProperties['order'];\n\n /** Column left offset at (min-width: theme.breakpoints.xs) */\n offsetXs?: number;\n\n /** Column left offset at (min-width: theme.breakpoints.sm) */\n offsetSm?: number;\n\n /** Column left offset at (min-width: theme.breakpoints.md) */\n offsetMd?: number;\n\n /** Column left offset at (min-width: theme.breakpoints.lg) */\n offsetLg?: number;\n\n /** Column left offset at (min-width: theme.breakpoints.xl) */\n offsetXl?: number;\n\n /** Col span at (min-width: theme.breakpoints.xs) */\n xs?: ColSpan;\n\n /** Col span at (min-width: theme.breakpoints.sm) */\n sm?: ColSpan;\n\n /** Col span at (min-width: theme.breakpoints.md) */\n md?: ColSpan;\n\n /** Col span at (min-width: theme.breakpoints.lg) */\n lg?: ColSpan;\n\n /** Col span at (min-width: theme.breakpoints.xl) */\n xl?: ColSpan;\n}\n\nconst defaultProps: Partial<ColProps> = {\n offset: 0,\n offsetXs: 0,\n offsetSm: 0,\n offsetMd: 0,\n offsetLg: 0,\n offsetXl: 0,\n};\n\nfunction isValidSpan(span: ColSpan) {\n if (span === 'auto' || span === 'content') {\n return true;\n }\n return typeof span === 'number' && span > 0 && span % 1 === 0;\n}\n\nexport const Col = forwardRef<HTMLDivElement, ColProps>((props: ColProps, ref) => {\n const {\n children,\n span,\n offset,\n offsetXs,\n offsetSm,\n offsetMd,\n offsetLg,\n offsetXl,\n xs,\n sm,\n md,\n lg,\n xl,\n order,\n orderXs,\n orderSm,\n orderMd,\n orderLg,\n orderXl,\n className,\n id,\n unstyled,\n ...others\n } = useComponentDefaultProps('Grid.Col', defaultProps, props);\n\n const ctx = useGridContext();\n\n if (!ctx) {\n throw new Error('[@mantine/core] Grid.Col was used outside of Grid context');\n }\n\n const colSpan = span || ctx.columns;\n const { classes, cx } = useStyles(\n {\n gutter: ctx.gutter,\n offset,\n offsetXs,\n offsetSm,\n offsetMd,\n offsetLg,\n offsetXl,\n xs,\n sm,\n md,\n lg,\n xl,\n order,\n orderXs,\n orderSm,\n orderMd,\n orderLg,\n orderXl,\n grow: ctx.grow,\n columns: ctx.columns,\n span: colSpan,\n },\n { unstyled, name: 'Col' }\n );\n\n if (!isValidSpan(colSpan) || colSpan > ctx.columns) {\n return null;\n }\n\n return (\n <Box className={cx(classes.root, className)} ref={ref} {...others}>\n {children}\n </Box>\n );\n});\n\nCol.displayName = '@mantine/core/Col';\n"],"names":[],"mappings":"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"}
|
|
@@ -16,7 +16,27 @@ var __spreadValues = (a, b) => {
|
|
|
16
16
|
}
|
|
17
17
|
return a;
|
|
18
18
|
};
|
|
19
|
-
const
|
|
19
|
+
const getColumnFlexBasis = (colSpan, columns) => {
|
|
20
|
+
if (colSpan === "content") {
|
|
21
|
+
return "auto";
|
|
22
|
+
}
|
|
23
|
+
if (colSpan === "auto") {
|
|
24
|
+
return "0px";
|
|
25
|
+
}
|
|
26
|
+
return colSpan ? `${100 / (columns / colSpan)}%` : void 0;
|
|
27
|
+
};
|
|
28
|
+
const getColumnMaxWidth = (colSpan, columns, grow) => {
|
|
29
|
+
if (grow || colSpan === "auto" || colSpan === "content") {
|
|
30
|
+
return "unset";
|
|
31
|
+
}
|
|
32
|
+
return getColumnFlexBasis(colSpan, columns);
|
|
33
|
+
};
|
|
34
|
+
const getColumnFlexGrow = (colSpan, grow) => {
|
|
35
|
+
if (!colSpan) {
|
|
36
|
+
return void 0;
|
|
37
|
+
}
|
|
38
|
+
return colSpan === "auto" || grow ? 1 : 0;
|
|
39
|
+
};
|
|
20
40
|
const getColumnOffset = (offset, columns) => offset ? `${100 / (columns / offset)}%` : void 0;
|
|
21
41
|
function getBreakpointsStyles({
|
|
22
42
|
sizes,
|
|
@@ -29,10 +49,12 @@ function getBreakpointsStyles({
|
|
|
29
49
|
return MANTINE_SIZES.reduce((acc, size) => {
|
|
30
50
|
acc[`@media (min-width: ${theme.breakpoints[size] + 1}px)`] = {
|
|
31
51
|
order: orders[size],
|
|
32
|
-
flexBasis:
|
|
52
|
+
flexBasis: getColumnFlexBasis(sizes[size], columns),
|
|
33
53
|
flexShrink: 0,
|
|
34
|
-
|
|
35
|
-
|
|
54
|
+
width: sizes[size] === "content" ? "auto" : void 0,
|
|
55
|
+
maxWidth: getColumnMaxWidth(sizes[size], columns, grow),
|
|
56
|
+
marginLeft: getColumnOffset(offsets[size], columns),
|
|
57
|
+
flexGrow: getColumnFlexGrow(sizes[size], grow)
|
|
36
58
|
};
|
|
37
59
|
return acc;
|
|
38
60
|
}, {});
|
|
@@ -62,13 +84,14 @@ var useStyles = createStyles((theme, {
|
|
|
62
84
|
}) => ({
|
|
63
85
|
root: __spreadValues({
|
|
64
86
|
boxSizing: "border-box",
|
|
65
|
-
flexGrow: grow
|
|
87
|
+
flexGrow: getColumnFlexGrow(span, grow),
|
|
66
88
|
order,
|
|
67
89
|
padding: theme.fn.size({ size: gutter, sizes: theme.spacing }) / 2,
|
|
68
90
|
marginLeft: getColumnOffset(offset, columns),
|
|
69
|
-
flexBasis:
|
|
91
|
+
flexBasis: getColumnFlexBasis(span, columns),
|
|
70
92
|
flexShrink: 0,
|
|
71
|
-
|
|
93
|
+
width: span === "content" ? "auto" : void 0,
|
|
94
|
+
maxWidth: getColumnMaxWidth(span, columns, grow)
|
|
72
95
|
}, getBreakpointsStyles({
|
|
73
96
|
sizes: { xs, sm, md, lg, xl },
|
|
74
97
|
offsets: { xs: offsetXs, sm: offsetSm, md: offsetMd, lg: offsetLg, xl: offsetXl },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Col.styles.js","sources":["../../../src/Grid/Col/Col.styles.ts"],"sourcesContent":["import {\n createStyles,\n MantineNumberSize,\n MANTINE_SIZES,\n MantineSize,\n MantineTheme,\n} from '@mantine/styles';\n\ninterface ColStyles {\n gutter: MantineNumberSize;\n columns: number;\n grow: boolean;\n offset: number;\n offsetXs: number;\n offsetSm: number;\n offsetMd: number;\n offsetLg: number;\n offsetXl: number;\n span:
|
|
1
|
+
{"version":3,"file":"Col.styles.js","sources":["../../../src/Grid/Col/Col.styles.ts"],"sourcesContent":["import {\n createStyles,\n MantineNumberSize,\n MANTINE_SIZES,\n MantineSize,\n MantineTheme,\n} from '@mantine/styles';\n\nexport type ColSpan = number | 'auto' | 'content';\n\ninterface ColStyles {\n gutter: MantineNumberSize;\n columns: number;\n grow: boolean;\n offset: number;\n offsetXs: number;\n offsetSm: number;\n offsetMd: number;\n offsetLg: number;\n offsetXl: number;\n span: ColSpan;\n xs: ColSpan;\n sm: ColSpan;\n md: ColSpan;\n lg: ColSpan;\n xl: ColSpan;\n order: React.CSSProperties['order'];\n orderXs: React.CSSProperties['order'];\n orderSm: React.CSSProperties['order'];\n orderMd: React.CSSProperties['order'];\n orderLg: React.CSSProperties['order'];\n orderXl: React.CSSProperties['order'];\n}\n\nconst getColumnFlexBasis = (colSpan: ColSpan, columns: number) => {\n if (colSpan === 'content') {\n return 'auto';\n }\n if (colSpan === 'auto') {\n return '0px';\n }\n return colSpan ? `${100 / (columns / colSpan)}%` : undefined;\n};\n\nconst getColumnMaxWidth = (colSpan: ColSpan, columns: number, grow: boolean) => {\n if (grow || colSpan === 'auto' || colSpan === 'content') {\n return 'unset';\n }\n return getColumnFlexBasis(colSpan, columns);\n};\n\nconst getColumnFlexGrow = (colSpan: ColSpan, grow: boolean) => {\n if (!colSpan) {\n return undefined;\n }\n return colSpan === 'auto' || grow ? 1 : 0;\n};\n\nconst getColumnOffset = (offset: number, columns: number) =>\n offset ? `${100 / (columns / offset)}%` : undefined;\n\nfunction getBreakpointsStyles({\n sizes,\n offsets,\n orders,\n theme,\n columns,\n grow,\n}: {\n sizes: Record<MantineSize, ColSpan>;\n offsets: Record<MantineSize, number>;\n orders: Record<MantineSize, React.CSSProperties['order']>;\n grow: boolean;\n theme: MantineTheme;\n columns: number;\n}) {\n return MANTINE_SIZES.reduce((acc, size) => {\n acc[`@media (min-width: ${theme.breakpoints[size] + 1}px)`] = {\n order: orders[size],\n flexBasis: getColumnFlexBasis(sizes[size], columns),\n flexShrink: 0,\n width: sizes[size] === 'content' ? 'auto' : undefined,\n maxWidth: getColumnMaxWidth(sizes[size], columns, grow),\n marginLeft: getColumnOffset(offsets[size], columns),\n flexGrow: getColumnFlexGrow(sizes[size], grow),\n };\n return acc;\n }, {});\n}\n\nexport default createStyles(\n (\n theme,\n {\n gutter,\n grow,\n offset,\n offsetXs,\n offsetSm,\n offsetMd,\n offsetLg,\n offsetXl,\n columns,\n span,\n xs,\n sm,\n md,\n lg,\n xl,\n order,\n orderXs,\n orderSm,\n orderMd,\n orderLg,\n orderXl,\n }: ColStyles\n ) => ({\n root: {\n boxSizing: 'border-box',\n flexGrow: getColumnFlexGrow(span, grow),\n order,\n padding: theme.fn.size({ size: gutter, sizes: theme.spacing }) / 2,\n marginLeft: getColumnOffset(offset, columns),\n flexBasis: getColumnFlexBasis(span, columns),\n flexShrink: 0,\n width: span === 'content' ? 'auto' : undefined,\n maxWidth: getColumnMaxWidth(span, columns, grow),\n ...getBreakpointsStyles({\n sizes: { xs, sm, md, lg, xl },\n offsets: { xs: offsetXs, sm: offsetSm, md: offsetMd, lg: offsetLg, xl: offsetXl },\n orders: { xs: orderXs, sm: orderSm, md: orderMd, lg: orderLg, xl: orderXl },\n theme,\n columns,\n grow,\n }),\n },\n })\n);\n"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import React, { forwardRef } from 'react';
|
|
1
|
+
import React, { forwardRef, useMemo } from 'react';
|
|
2
2
|
import { getDefaultZIndex, useComponentDefaultProps } from '@mantine/styles';
|
|
3
3
|
import useStyles from './Indicator.styles.js';
|
|
4
|
+
import { Machine } from './Machine/Machine.js';
|
|
4
5
|
import { Box } from '../Box/Box.js';
|
|
5
6
|
|
|
6
7
|
var __defProp = Object.defineProperty;
|
|
@@ -37,7 +38,10 @@ const defaultProps = {
|
|
|
37
38
|
inline: false,
|
|
38
39
|
withBorder: false,
|
|
39
40
|
disabled: false,
|
|
41
|
+
showZero: true,
|
|
42
|
+
processing: false,
|
|
40
43
|
size: 10,
|
|
44
|
+
overflowCount: 99,
|
|
41
45
|
radius: 1e3,
|
|
42
46
|
zIndex: getDefaultZIndex("app")
|
|
43
47
|
};
|
|
@@ -52,12 +56,16 @@ const Indicator = forwardRef((props, ref) => {
|
|
|
52
56
|
withBorder,
|
|
53
57
|
className,
|
|
54
58
|
color,
|
|
59
|
+
dot,
|
|
55
60
|
styles,
|
|
56
61
|
label,
|
|
62
|
+
overflowCount,
|
|
63
|
+
showZero,
|
|
57
64
|
classNames,
|
|
58
65
|
disabled,
|
|
59
66
|
zIndex,
|
|
60
|
-
unstyled
|
|
67
|
+
unstyled,
|
|
68
|
+
processing
|
|
61
69
|
} = _a, others = __objRest(_a, [
|
|
62
70
|
"children",
|
|
63
71
|
"position",
|
|
@@ -68,20 +76,36 @@ const Indicator = forwardRef((props, ref) => {
|
|
|
68
76
|
"withBorder",
|
|
69
77
|
"className",
|
|
70
78
|
"color",
|
|
79
|
+
"dot",
|
|
71
80
|
"styles",
|
|
72
81
|
"label",
|
|
82
|
+
"overflowCount",
|
|
83
|
+
"showZero",
|
|
73
84
|
"classNames",
|
|
74
85
|
"disabled",
|
|
75
86
|
"zIndex",
|
|
76
|
-
"unstyled"
|
|
87
|
+
"unstyled",
|
|
88
|
+
"processing"
|
|
77
89
|
]);
|
|
78
90
|
const { classes, cx } = useStyles({ position, offset, size, radius, inline, color, withBorder, zIndex, withLabel: !!label }, { name: "Indicator", classNames, styles, unstyled });
|
|
91
|
+
const renderLabel = useMemo(() => {
|
|
92
|
+
if (typeof label === "number") {
|
|
93
|
+
return /* @__PURE__ */ React.createElement(Machine, {
|
|
94
|
+
value: label,
|
|
95
|
+
max: overflowCount
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
return label;
|
|
99
|
+
}, [label, overflowCount]);
|
|
100
|
+
const isShowIndicator = useMemo(() => !disabled && (dot || label != null && !(label <= 0 && !showZero)), [disabled, label, showZero]);
|
|
79
101
|
return /* @__PURE__ */ React.createElement(Box, __spreadValues({
|
|
80
102
|
ref,
|
|
81
103
|
className: cx(classes.root, className)
|
|
82
|
-
}, others),
|
|
83
|
-
className: classes.indicator
|
|
84
|
-
},
|
|
104
|
+
}, others), isShowIndicator && /* @__PURE__ */ React.createElement("div", {
|
|
105
|
+
className: cx(classes.indicator, classes.common)
|
|
106
|
+
}, renderLabel), processing && /* @__PURE__ */ React.createElement("div", {
|
|
107
|
+
className: cx(classes.processing, classes.common)
|
|
108
|
+
}), children);
|
|
85
109
|
});
|
|
86
110
|
Indicator.displayName = "@mantine/core/Indicator";
|
|
87
111
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Indicator.js","sources":["../../src/Indicator/Indicator.tsx"],"sourcesContent":["/* eslint-disable react/no-unused-prop-types */\nimport React, { forwardRef } from 'react';\nimport {\n Selectors,\n DefaultProps,\n MantineColor,\n MantineNumberSize,\n useComponentDefaultProps,\n getDefaultZIndex,\n} from '@mantine/styles';\nimport { Box } from '../Box';\nimport { IndicatorPosition } from './Indicator.types';\nimport useStyles, { IndicatorStylesParams } from './Indicator.styles';\n\nexport type IndicatorStylesNames = Selectors<typeof useStyles>;\n\nexport interface IndicatorProps\n extends DefaultProps<IndicatorStylesNames, IndicatorStylesParams>,\n React.ComponentPropsWithoutRef<'div'> {\n /** Element that should have an indicator */\n children: React.ReactNode;\n\n /** Indicator position relative to child element */\n position?: IndicatorPosition;\n\n /** Changes position offset, usually used when element has border-radius */\n offset?: number;\n\n /** Determines whether indicator container should be an inline element */\n inline?: boolean;\n\n /** Size in px */\n size?: number;\n\n /** Indicator label */\n label?: React.ReactNode;\n\n /** border-radius from theme.radius or number value to set radius in px */\n radius?: MantineNumberSize;\n\n /** Color from theme.colors or any other valid CSS color value */\n color?: MantineColor;\n\n /** Determines whether indicator should have border */\n withBorder?: boolean;\n\n /** When component is disabled it renders children without indicator */\n disabled?: boolean;\n\n /** Indicator z-index */\n zIndex?: React.CSSProperties['zIndex'];\n}\n\nconst defaultProps: Partial<IndicatorProps> = {\n position: 'top-end',\n offset: 0,\n inline: false,\n withBorder: false,\n disabled: false,\n size: 10,\n radius: 1000,\n zIndex: getDefaultZIndex('app'),\n};\n\nexport const Indicator = forwardRef<HTMLDivElement, IndicatorProps>((props, ref) => {\n const {\n children,\n position,\n offset,\n size,\n radius,\n inline,\n withBorder,\n className,\n color,\n styles,\n label,\n classNames,\n disabled,\n zIndex,\n unstyled,\n ...others\n } = useComponentDefaultProps('Indicator', defaultProps, props);\n\n const { classes, cx } = useStyles(\n { position, offset, size, radius, inline, color, withBorder, zIndex, withLabel: !!label },\n { name: 'Indicator', classNames, styles, unstyled }\n );\n\n return (\n <Box ref={ref} className={cx(classes.root, className)} {...others}>\n {
|
|
1
|
+
{"version":3,"file":"Indicator.js","sources":["../../src/Indicator/Indicator.tsx"],"sourcesContent":["/* eslint-disable react/no-unused-prop-types */\nimport React, { forwardRef, useMemo } from 'react';\nimport {\n Selectors,\n DefaultProps,\n MantineColor,\n MantineNumberSize,\n useComponentDefaultProps,\n getDefaultZIndex,\n} from '@mantine/styles';\nimport { Box } from '../Box';\nimport { IndicatorPosition } from './Indicator.types';\nimport useStyles, { IndicatorStylesParams } from './Indicator.styles';\nimport { Machine } from './Machine/Machine';\n\nexport type IndicatorStylesNames = Selectors<typeof useStyles>;\n\nexport interface IndicatorProps\n extends DefaultProps<IndicatorStylesNames, IndicatorStylesParams>,\n React.ComponentPropsWithoutRef<'div'> {\n /** Element that should have an indicator */\n children: React.ReactNode;\n\n /** Indicator position relative to child element */\n position?: IndicatorPosition;\n\n /** Changes position offset, usually used when element has border-radius */\n offset?: number;\n\n /** Determines whether indicator container should be an inline element */\n inline?: boolean;\n\n /** Size in px */\n size?: number;\n\n /** Indicator label */\n label?: React.ReactNode;\n\n /** Indicator count overflowCount */\n overflowCount?: number;\n\n dot?: boolean;\n\n /** border-radius from theme.radius or number value to set radius in px */\n radius?: MantineNumberSize;\n\n /** Color from theme.colors or any other valid CSS color value */\n color?: MantineColor;\n\n /** Determines whether indicator should have border */\n withBorder?: boolean;\n\n /** When component is disabled it renders children without indicator */\n disabled?: boolean;\n\n /** When showZero is true and label is zero renders children with indicator*/\n showZero?: boolean;\n\n /** Indicator processing animation */\n processing?: boolean;\n\n /** Indicator z-index */\n zIndex?: React.CSSProperties['zIndex'];\n}\n\nconst defaultProps: Partial<IndicatorProps> = {\n position: 'top-end',\n offset: 0,\n inline: false,\n withBorder: false,\n disabled: false,\n showZero: true,\n processing: false,\n size: 10,\n overflowCount: 99,\n radius: 1000,\n zIndex: getDefaultZIndex('app'),\n};\n\nexport const Indicator = forwardRef<HTMLDivElement, IndicatorProps>((props, ref) => {\n const {\n children,\n position,\n offset,\n size,\n radius,\n inline,\n withBorder,\n className,\n color,\n dot,\n styles,\n label,\n overflowCount,\n showZero,\n classNames,\n disabled,\n zIndex,\n unstyled,\n processing,\n ...others\n } = useComponentDefaultProps('Indicator', defaultProps, props);\n\n const { classes, cx } = useStyles(\n { position, offset, size, radius, inline, color, withBorder, zIndex, withLabel: !!label },\n { name: 'Indicator', classNames, styles, unstyled }\n );\n\n const renderLabel = useMemo(() => {\n if (typeof label === 'number') {\n return <Machine value={label} max={overflowCount} />;\n }\n return label;\n }, [label, overflowCount]);\n\n const isShowIndicator = useMemo(\n () => !disabled && (dot || (label != null && !(label <= 0 && !showZero))),\n [disabled, label, showZero]\n );\n\n return (\n <Box ref={ref} className={cx(classes.root, className)} {...others}>\n {isShowIndicator && (\n <div className={cx(classes.indicator, classes.common)}>{renderLabel}</div>\n )}\n {processing && <div className={cx(classes.processing, classes.common)} />}\n {children}\n </Box>\n );\n});\n\nIndicator.displayName = '@mantine/core/Indicator';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createStyles } from '@mantine/styles';
|
|
1
|
+
import { createStyles, keyframes } from '@mantine/styles';
|
|
2
2
|
|
|
3
3
|
var __defProp = Object.defineProperty;
|
|
4
4
|
var __defProps = Object.defineProperties;
|
|
@@ -19,6 +19,16 @@ var __spreadValues = (a, b) => {
|
|
|
19
19
|
return a;
|
|
20
20
|
};
|
|
21
21
|
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
22
|
+
const processingAnimation = (color) => keyframes({
|
|
23
|
+
from: {
|
|
24
|
+
boxShadow: `0 0 0.5px 0 ${color}`,
|
|
25
|
+
opacity: 0.6
|
|
26
|
+
},
|
|
27
|
+
to: {
|
|
28
|
+
boxShadow: `0 0 0.5px 4.4px ${color}`,
|
|
29
|
+
opacity: 0
|
|
30
|
+
}
|
|
31
|
+
});
|
|
22
32
|
function getPositionStyles(_position, offset = 0) {
|
|
23
33
|
const styles = {};
|
|
24
34
|
const [position, placement] = _position.split("-");
|
|
@@ -61,33 +71,49 @@ var useStyles = createStyles((theme, {
|
|
|
61
71
|
withBorder,
|
|
62
72
|
withLabel,
|
|
63
73
|
zIndex
|
|
64
|
-
}) =>
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
74
|
+
}) => {
|
|
75
|
+
const { background } = theme.fn.variant({
|
|
76
|
+
variant: "filled",
|
|
77
|
+
primaryFallback: false,
|
|
78
|
+
color: color || theme.primaryColor
|
|
79
|
+
});
|
|
80
|
+
return {
|
|
81
|
+
root: {
|
|
82
|
+
position: "relative",
|
|
83
|
+
display: inline ? "inline-block" : "block"
|
|
84
|
+
},
|
|
85
|
+
indicator: __spreadProps(__spreadValues({}, getPositionStyles(position, offset)), {
|
|
86
|
+
zIndex,
|
|
87
|
+
position: "absolute",
|
|
88
|
+
[withLabel ? "minWidth" : "width"]: size,
|
|
89
|
+
height: size,
|
|
90
|
+
display: "flex",
|
|
91
|
+
justifyContent: "center",
|
|
92
|
+
alignItems: "center",
|
|
93
|
+
fontSize: theme.fontSizes.xs,
|
|
94
|
+
paddingLeft: withLabel ? `calc(${theme.spacing.xs}px / 2)` : 0,
|
|
95
|
+
paddingRight: withLabel ? `calc(${theme.spacing.xs}px / 2)` : 0,
|
|
96
|
+
borderRadius: theme.fn.size({ size: radius, sizes: theme.radius }),
|
|
97
|
+
backgroundColor: theme.fn.variant({
|
|
98
|
+
variant: "filled",
|
|
99
|
+
primaryFallback: false,
|
|
100
|
+
color: color || theme.primaryColor
|
|
101
|
+
}).background,
|
|
102
|
+
border: withBorder ? `2px solid ${theme.colorScheme === "dark" ? theme.colors.dark[7] : theme.white}` : void 0,
|
|
103
|
+
color: theme.white,
|
|
104
|
+
whiteSpace: "nowrap"
|
|
105
|
+
}),
|
|
106
|
+
processing: {
|
|
107
|
+
animation: `${processingAnimation(background)} 1000ms linear infinite`
|
|
108
|
+
},
|
|
109
|
+
common: __spreadProps(__spreadValues({}, getPositionStyles(position, offset)), {
|
|
110
|
+
position: "absolute",
|
|
111
|
+
[withLabel ? "minWidth" : "width"]: size,
|
|
112
|
+
height: size,
|
|
113
|
+
borderRadius: theme.fn.size({ size: radius, sizes: theme.radius })
|
|
114
|
+
})
|
|
115
|
+
};
|
|
116
|
+
});
|
|
91
117
|
|
|
92
118
|
export default useStyles;
|
|
93
119
|
//# sourceMappingURL=Indicator.styles.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Indicator.styles.js","sources":["../../src/Indicator/Indicator.styles.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"Indicator.styles.js","sources":["../../src/Indicator/Indicator.styles.ts"],"sourcesContent":["import {\n createStyles,\n CSSObject,\n MantineColor,\n MantineNumberSize,\n keyframes,\n} from '@mantine/styles';\nimport { IndicatorPosition } from './Indicator.types';\n\nexport interface IndicatorStylesParams {\n radius: MantineNumberSize;\n size: number;\n color: MantineColor;\n position: IndicatorPosition;\n offset: number;\n inline: boolean;\n withBorder: boolean;\n withLabel: boolean;\n zIndex: React.CSSProperties['zIndex'];\n}\n\nconst processingAnimation = (color: string) =>\n keyframes({\n from: {\n boxShadow: `0 0 0.5px 0 ${color}`,\n opacity: 0.6,\n },\n to: {\n boxShadow: `0 0 0.5px 4.4px ${color}`,\n opacity: 0,\n },\n });\n\nfunction getPositionStyles(_position: IndicatorPosition, offset = 0) {\n const styles: CSSObject = {};\n const [position, placement] = _position.split('-');\n let translateX = '';\n let translateY = '';\n\n if (position === 'top') {\n styles.top = offset;\n translateY = '-50%';\n }\n\n if (position === 'middle') {\n styles.top = '50%';\n translateY = '-50%';\n }\n\n if (position === 'bottom') {\n styles.bottom = offset;\n translateY = '50%';\n }\n\n if (placement === 'start') {\n styles.left = offset;\n translateX = '-50%';\n }\n\n if (placement === 'center') {\n styles.left = '50%';\n translateX = '-50%';\n }\n\n if (placement === 'end') {\n styles.right = offset;\n translateX = '50%';\n }\n\n styles.transform = `translate(${translateX}, ${translateY})`;\n\n return styles;\n}\n\nexport default createStyles(\n (\n theme,\n {\n radius,\n size,\n color,\n position,\n offset,\n inline,\n withBorder,\n withLabel,\n zIndex,\n }: IndicatorStylesParams\n ) => {\n const { background } = theme.fn.variant({\n variant: 'filled',\n primaryFallback: false,\n color: color || theme.primaryColor,\n });\n return {\n root: {\n position: 'relative',\n display: inline ? 'inline-block' : 'block',\n },\n\n indicator: {\n ...getPositionStyles(position, offset),\n zIndex,\n position: 'absolute',\n [withLabel ? 'minWidth' : 'width']: size,\n height: size,\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n fontSize: theme.fontSizes.xs,\n paddingLeft: withLabel ? `calc(${theme.spacing.xs}px / 2)` : 0,\n paddingRight: withLabel ? `calc(${theme.spacing.xs}px / 2)` : 0,\n borderRadius: theme.fn.size({ size: radius, sizes: theme.radius }),\n backgroundColor: theme.fn.variant({\n variant: 'filled',\n primaryFallback: false,\n color: color || theme.primaryColor,\n }).background,\n border: withBorder\n ? `2px solid ${theme.colorScheme === 'dark' ? theme.colors.dark[7] : theme.white}`\n : undefined,\n color: theme.white,\n whiteSpace: 'nowrap',\n },\n\n processing: {\n animation: `${processingAnimation(background)} 1000ms linear infinite`,\n },\n\n common: {\n ...getPositionStyles(position, offset),\n position: 'absolute',\n [withLabel ? 'minWidth' : 'width']: size,\n height: size,\n borderRadius: theme.fn.size({ size: radius, sizes: theme.radius }),\n },\n };\n }\n);\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import React, { forwardRef, useState, useEffect, useMemo } from 'react';
|
|
2
|
+
import { usePrevious } from '@mantine/hooks';
|
|
3
|
+
import { MachineNumber } from './MachineNumber.js';
|
|
4
|
+
import useStyles from './Machine.styles.js';
|
|
5
|
+
|
|
6
|
+
const Machine = forwardRef(({ value = 0, max }, ref) => {
|
|
7
|
+
const [oldValue, setOldValue] = useState();
|
|
8
|
+
const [newValue, setNewValue] = useState();
|
|
9
|
+
const prevValueRef = usePrevious(value);
|
|
10
|
+
useEffect(() => {
|
|
11
|
+
if (typeof value === "string") {
|
|
12
|
+
setOldValue(void 0);
|
|
13
|
+
setNewValue(void 0);
|
|
14
|
+
} else if (typeof prevValueRef === "string") {
|
|
15
|
+
setOldValue(void 0);
|
|
16
|
+
setNewValue(value);
|
|
17
|
+
} else {
|
|
18
|
+
setOldValue(prevValueRef);
|
|
19
|
+
setNewValue(value);
|
|
20
|
+
}
|
|
21
|
+
}, [value, prevValueRef]);
|
|
22
|
+
const numbers = useMemo(() => {
|
|
23
|
+
if (typeof value === "string") {
|
|
24
|
+
return [];
|
|
25
|
+
}
|
|
26
|
+
if (value < 1) {
|
|
27
|
+
return [0];
|
|
28
|
+
}
|
|
29
|
+
const result = [];
|
|
30
|
+
let currentValue = value;
|
|
31
|
+
if (typeof max === "number") {
|
|
32
|
+
currentValue = Math.min(max, currentValue);
|
|
33
|
+
}
|
|
34
|
+
while (currentValue >= 1) {
|
|
35
|
+
result.push(currentValue % 10);
|
|
36
|
+
currentValue /= 10;
|
|
37
|
+
currentValue = Math.floor(currentValue);
|
|
38
|
+
}
|
|
39
|
+
result.reverse();
|
|
40
|
+
return result;
|
|
41
|
+
}, [value, max]);
|
|
42
|
+
const { classes } = useStyles(null, { name: "machine" });
|
|
43
|
+
return typeof value === "string" ? /* @__PURE__ */ React.createElement("span", {
|
|
44
|
+
ref
|
|
45
|
+
}, value) : /* @__PURE__ */ React.createElement("span", {
|
|
46
|
+
ref,
|
|
47
|
+
className: classes.base
|
|
48
|
+
}, numbers.map((number, i) => /* @__PURE__ */ React.createElement(MachineNumber, {
|
|
49
|
+
key: numbers.length - i - 1,
|
|
50
|
+
value: number,
|
|
51
|
+
oldOriginalNumber: oldValue,
|
|
52
|
+
newOriginalNumber: newValue
|
|
53
|
+
})), typeof max === "number" && value > max && /* @__PURE__ */ React.createElement("span", null, "+"));
|
|
54
|
+
});
|
|
55
|
+
|
|
56
|
+
export { Machine };
|
|
57
|
+
//# sourceMappingURL=Machine.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Machine.js","sources":["../../../src/Indicator/Machine/Machine.tsx"],"sourcesContent":["import React, { useState, forwardRef, useMemo, useEffect } from 'react';\nimport { usePrevious } from '@mantine/hooks';\nimport { MachineNumber } from './MachineNumber';\nimport useStyles from './Machine.styles';\n\ninterface MachineNumberProps {\n value: number | string;\n max: number;\n}\n\nexport const Machine = forwardRef<HTMLDivElement, MachineNumberProps>(({ value = 0, max }, ref) => {\n const [oldValue, setOldValue] = useState<number>();\n const [newValue, setNewValue] = useState<number>();\n const prevValueRef = usePrevious(value);\n\n useEffect(() => {\n if (typeof value === 'string') {\n setOldValue(undefined);\n setNewValue(undefined);\n } else if (typeof prevValueRef === 'string') {\n setOldValue(undefined);\n setNewValue(value);\n } else {\n setOldValue(prevValueRef);\n setNewValue(value);\n }\n }, [value, prevValueRef]);\n\n const numbers = useMemo(() => {\n if (typeof value === 'string') {\n return [];\n }\n\n if (value < 1) {\n return [0];\n }\n\n const result: number[] = [];\n let currentValue = value;\n\n if (typeof max === 'number') {\n currentValue = Math.min(max, currentValue);\n }\n\n while (currentValue >= 1) {\n result.push(currentValue % 10);\n currentValue /= 10;\n currentValue = Math.floor(currentValue);\n }\n\n result.reverse();\n return result;\n }, [value, max]);\n\n const { classes } = useStyles(null, { name: 'machine' });\n\n return typeof value === 'string' ? (\n <span ref={ref}>{value}</span>\n ) : (\n <span ref={ref} className={classes.base}>\n {numbers.map((number, i) => (\n <MachineNumber\n key={numbers.length - i - 1}\n value={number}\n oldOriginalNumber={oldValue}\n newOriginalNumber={newValue}\n />\n ))}\n {typeof max === 'number' && value > max && <span>+</span>}\n </span>\n );\n});\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Machine.styles.js","sources":["../../../src/Indicator/Machine/Machine.styles.ts"],"sourcesContent":["import { createStyles } from '@mantine/styles';\n\nexport default createStyles(() => ({\n base: {\n display: 'flex',\n alignItems: 'center',\n overflow: 'hidden',\n },\n}));\n"],"names":[],"mappings":";;AACA,gBAAe,YAAY,CAAC,OAAO;AACnC,EAAE,IAAI,EAAE;AACR,IAAI,OAAO,EAAE,MAAM;AACnB,IAAI,UAAU,EAAE,QAAQ;AACxB,IAAI,QAAQ,EAAE,QAAQ;AACtB,GAAG;AACH,CAAC,CAAC,CAAC;;;;"}
|