@mantine/core 5.4.2 → 5.5.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/AppShell/AppShell.styles.js +2 -2
- package/cjs/AppShell/AppShell.styles.js.map +1 -1
- package/cjs/AppShell/HorizontalSection/HorizontalSection.js +1 -1
- package/cjs/AppShell/HorizontalSection/HorizontalSection.js.map +1 -1
- package/cjs/AppShell/HorizontalSection/HorizontalSection.styles.js +2 -2
- package/cjs/AppShell/HorizontalSection/HorizontalSection.styles.js.map +1 -1
- package/cjs/Checkbox/Checkbox.js +36 -12
- package/cjs/Checkbox/Checkbox.js.map +1 -1
- package/cjs/Checkbox/Checkbox.styles.js +32 -11
- package/cjs/Checkbox/Checkbox.styles.js.map +1 -1
- package/cjs/Collapse/Collapse.js +7 -3
- package/cjs/Collapse/Collapse.js.map +1 -1
- package/cjs/Collapse/use-collapse.js +74 -15
- package/cjs/Collapse/use-collapse.js.map +1 -1
- package/cjs/Grid/Col/Col.styles.js +1 -1
- package/cjs/Grid/Col/Col.styles.js.map +1 -1
- package/cjs/List/List.js.map +1 -1
- package/cjs/List/List.styles.js +1 -1
- package/cjs/List/List.styles.js.map +1 -1
- package/cjs/MediaQuery/MediaQuery.styles.js +4 -4
- package/cjs/MediaQuery/MediaQuery.styles.js.map +1 -1
- package/cjs/NumberInput/NumberInput.js +16 -2
- package/cjs/NumberInput/NumberInput.js.map +1 -1
- package/cjs/Popover/Popover.context.js.map +1 -1
- package/cjs/Popover/Popover.js +18 -7
- package/cjs/Popover/Popover.js.map +1 -1
- package/cjs/Popover/PopoverDropdown/PopoverDropdown.js +3 -0
- package/cjs/Popover/PopoverDropdown/PopoverDropdown.js.map +1 -1
- package/cjs/Popover/use-popover.js +3 -0
- package/cjs/Popover/use-popover.js.map +1 -1
- package/cjs/Radio/Radio.js +24 -9
- package/cjs/Radio/Radio.js.map +1 -1
- package/cjs/Radio/Radio.styles.js +22 -11
- package/cjs/Radio/Radio.styles.js.map +1 -1
- package/cjs/ScrollArea/ScrollArea.js.map +1 -1
- package/cjs/Select/SelectItems/SelectItems.js +0 -1
- package/cjs/Select/SelectItems/SelectItems.js.map +1 -1
- package/cjs/SimpleGrid/SimpleGrid.styles.js +1 -1
- package/cjs/SimpleGrid/SimpleGrid.styles.js.map +1 -1
- package/cjs/Slider/RangeSlider/RangeSlider.js +5 -2
- package/cjs/Slider/RangeSlider/RangeSlider.js.map +1 -1
- package/cjs/Slider/Slider/Slider.js +5 -2
- package/cjs/Slider/Slider/Slider.js.map +1 -1
- package/cjs/Slider/Track/Track.js +5 -3
- package/cjs/Slider/Track/Track.js.map +1 -1
- package/cjs/Slider/Track/Track.styles.js +3 -3
- package/cjs/Slider/Track/Track.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 +26 -12
- package/cjs/Switch/Switch.js.map +1 -1
- package/cjs/Switch/Switch.styles.js +19 -8
- package/cjs/Switch/Switch.styles.js.map +1 -1
- package/cjs/Tabs/Tabs.js.map +1 -1
- package/cjs/Tooltip/Tooltip.js +7 -3
- package/cjs/Tooltip/Tooltip.js.map +1 -1
- package/cjs/Tooltip/use-tooltip.js +2 -3
- package/cjs/Tooltip/use-tooltip.js.map +1 -1
- package/esm/AppShell/AppShell.styles.js +2 -2
- package/esm/AppShell/AppShell.styles.js.map +1 -1
- package/esm/AppShell/HorizontalSection/HorizontalSection.js +1 -1
- package/esm/AppShell/HorizontalSection/HorizontalSection.js.map +1 -1
- package/esm/AppShell/HorizontalSection/HorizontalSection.styles.js +2 -2
- package/esm/AppShell/HorizontalSection/HorizontalSection.styles.js.map +1 -1
- package/esm/Checkbox/Checkbox.js +36 -12
- package/esm/Checkbox/Checkbox.js.map +1 -1
- package/esm/Checkbox/Checkbox.styles.js +32 -11
- package/esm/Checkbox/Checkbox.styles.js.map +1 -1
- package/esm/Collapse/Collapse.js +7 -3
- package/esm/Collapse/Collapse.js.map +1 -1
- package/esm/Collapse/use-collapse.js +75 -17
- package/esm/Collapse/use-collapse.js.map +1 -1
- package/esm/Grid/Col/Col.styles.js +1 -1
- package/esm/Grid/Col/Col.styles.js.map +1 -1
- package/esm/List/List.js.map +1 -1
- package/esm/List/List.styles.js +1 -1
- package/esm/List/List.styles.js.map +1 -1
- package/esm/MediaQuery/MediaQuery.styles.js +4 -4
- package/esm/MediaQuery/MediaQuery.styles.js.map +1 -1
- package/esm/NumberInput/NumberInput.js +16 -2
- package/esm/NumberInput/NumberInput.js.map +1 -1
- package/esm/Popover/Popover.context.js.map +1 -1
- package/esm/Popover/Popover.js +19 -8
- package/esm/Popover/Popover.js.map +1 -1
- package/esm/Popover/PopoverDropdown/PopoverDropdown.js +3 -0
- package/esm/Popover/PopoverDropdown/PopoverDropdown.js.map +1 -1
- package/esm/Popover/use-popover.js +4 -1
- package/esm/Popover/use-popover.js.map +1 -1
- package/esm/Radio/Radio.js +24 -9
- package/esm/Radio/Radio.js.map +1 -1
- package/esm/Radio/Radio.styles.js +22 -11
- package/esm/Radio/Radio.styles.js.map +1 -1
- package/esm/ScrollArea/ScrollArea.js.map +1 -1
- package/esm/Select/SelectItems/SelectItems.js +0 -1
- package/esm/Select/SelectItems/SelectItems.js.map +1 -1
- package/esm/SimpleGrid/SimpleGrid.styles.js +1 -1
- package/esm/SimpleGrid/SimpleGrid.styles.js.map +1 -1
- package/esm/Slider/RangeSlider/RangeSlider.js +5 -2
- package/esm/Slider/RangeSlider/RangeSlider.js.map +1 -1
- package/esm/Slider/Slider/Slider.js +5 -2
- package/esm/Slider/Slider/Slider.js.map +1 -1
- package/esm/Slider/Track/Track.js +5 -3
- package/esm/Slider/Track/Track.js.map +1 -1
- package/esm/Slider/Track/Track.styles.js +3 -3
- package/esm/Slider/Track/Track.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 +26 -12
- package/esm/Switch/Switch.js.map +1 -1
- package/esm/Switch/Switch.styles.js +19 -8
- package/esm/Switch/Switch.styles.js.map +1 -1
- package/esm/Tabs/Tabs.js.map +1 -1
- package/esm/Tooltip/Tooltip.js +7 -3
- package/esm/Tooltip/Tooltip.js.map +1 -1
- package/esm/Tooltip/use-tooltip.js +3 -4
- package/esm/Tooltip/use-tooltip.js.map +1 -1
- package/lib/AppShell/HorizontalSection/HorizontalSection.styles.d.ts.map +1 -1
- package/lib/Checkbox/Checkbox.d.ts +6 -0
- package/lib/Checkbox/Checkbox.d.ts.map +1 -1
- package/lib/Checkbox/Checkbox.styles.d.ts +5 -2
- package/lib/Checkbox/Checkbox.styles.d.ts.map +1 -1
- package/lib/Collapse/Collapse.d.ts +2 -0
- package/lib/Collapse/Collapse.d.ts.map +1 -1
- package/lib/Collapse/use-collapse.d.ts +7 -1
- package/lib/Collapse/use-collapse.d.ts.map +1 -1
- package/lib/List/List.d.ts +1 -1
- package/lib/List/List.d.ts.map +1 -1
- package/lib/NumberInput/NumberInput.d.ts +2 -0
- package/lib/NumberInput/NumberInput.d.ts.map +1 -1
- package/lib/Popover/Popover.context.d.ts +1 -0
- package/lib/Popover/Popover.context.d.ts.map +1 -1
- package/lib/Popover/Popover.d.ts +2 -0
- package/lib/Popover/Popover.d.ts.map +1 -1
- package/lib/Popover/Popover.types.d.ts +1 -0
- package/lib/Popover/Popover.types.d.ts.map +1 -1
- package/lib/Popover/PopoverDropdown/PopoverDropdown.d.ts.map +1 -1
- package/lib/Popover/use-popover.d.ts.map +1 -1
- package/lib/Radio/Radio.d.ts +6 -0
- package/lib/Radio/Radio.d.ts.map +1 -1
- package/lib/Radio/Radio.styles.d.ts +4 -2
- package/lib/Radio/Radio.styles.d.ts.map +1 -1
- package/lib/ScrollArea/ScrollArea.d.ts +2 -2
- package/lib/ScrollArea/ScrollArea.d.ts.map +1 -1
- package/lib/Select/SelectScrollArea/SelectScrollArea.d.ts +1 -1
- package/lib/Select/SelectScrollArea/SelectScrollArea.d.ts.map +1 -1
- package/lib/Slider/RangeSlider/RangeSlider.d.ts +2 -0
- package/lib/Slider/RangeSlider/RangeSlider.d.ts.map +1 -1
- package/lib/Slider/Slider/Slider.d.ts +2 -0
- package/lib/Slider/Slider/Slider.d.ts.map +1 -1
- package/lib/Slider/Track/Track.d.ts +2 -1
- package/lib/Slider/Track/Track.d.ts.map +1 -1
- package/lib/Slider/Track/Track.styles.d.ts +1 -0
- package/lib/Slider/Track/Track.styles.d.ts.map +1 -1
- package/lib/Switch/Switch.d.ts +7 -1
- package/lib/Switch/Switch.d.ts.map +1 -1
- package/lib/Switch/Switch.styles.d.ts +4 -2
- package/lib/Switch/Switch.styles.d.ts.map +1 -1
- package/lib/Tabs/Tabs.d.ts +1 -1
- package/lib/Tabs/Tabs.d.ts.map +1 -1
- package/lib/Tooltip/Tooltip.d.ts +2 -0
- package/lib/Tooltip/Tooltip.d.ts.map +1 -1
- package/lib/Tooltip/use-tooltip.d.ts +1 -0
- package/lib/Tooltip/use-tooltip.d.ts.map +1 -1
- package/package.json +4 -4
|
@@ -33,10 +33,10 @@ function getPositionStyles(props, theme) {
|
|
|
33
33
|
paddingBottom: `calc(var(--mantine-footer-height, 0px) + ${padding}px)`,
|
|
34
34
|
paddingLeft: `calc(var(--mantine-navbar-width, 0px) + ${padding}px)`,
|
|
35
35
|
paddingRight: `calc(var(--mantine-aside-width, 0px) + ${padding}px)`,
|
|
36
|
-
[`@media (max-width: ${navbarOffset}px)`]: {
|
|
36
|
+
[`@media (max-width: ${navbarOffset - 1}px)`]: {
|
|
37
37
|
paddingLeft: padding
|
|
38
38
|
},
|
|
39
|
-
[`@media (max-width: ${asideOffset}px)`]: {
|
|
39
|
+
[`@media (max-width: ${asideOffset - 1}px)`]: {
|
|
40
40
|
paddingRight: padding
|
|
41
41
|
}
|
|
42
42
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppShell.styles.js","sources":["../../src/AppShell/AppShell.styles.ts"],"sourcesContent":["import { createStyles, MantineNumberSize, MantineTheme, CSSObject } from '@mantine/styles';\n\nexport interface AppShellStylesParams {\n padding: MantineNumberSize;\n fixed: boolean;\n navbarOffsetBreakpoint: MantineNumberSize;\n asideOffsetBreakpoint: MantineNumberSize;\n}\n\nfunction getPositionStyles(props: AppShellStylesParams, theme: MantineTheme): CSSObject {\n const padding = theme.fn.size({ size: props.padding, sizes: theme.spacing });\n\n const navbarOffset = props.navbarOffsetBreakpoint\n ? theme.fn.size({ size: props.navbarOffsetBreakpoint, sizes: theme.breakpoints })\n : null;\n\n const asideOffset = props.asideOffsetBreakpoint\n ? theme.fn.size({ size: props.asideOffsetBreakpoint, sizes: theme.breakpoints })\n : null;\n\n if (!props.fixed) {\n return { padding };\n }\n\n return {\n minHeight: '100vh',\n paddingTop: `calc(var(--mantine-header-height, 0px) + ${padding}px)`,\n paddingBottom: `calc(var(--mantine-footer-height, 0px) + ${padding}px)`,\n paddingLeft: `calc(var(--mantine-navbar-width, 0px) + ${padding}px)`,\n paddingRight: `calc(var(--mantine-aside-width, 0px) + ${padding}px)`,\n\n [`@media (max-width: ${navbarOffset}px)`]: {\n paddingLeft: padding,\n },\n\n [`@media (max-width: ${asideOffset}px)`]: {\n paddingRight: padding,\n },\n };\n}\n\nexport default createStyles((theme, props: AppShellStylesParams) => ({\n root: {\n boxSizing: 'border-box',\n },\n\n body: {\n display: 'flex',\n boxSizing: 'border-box',\n },\n\n main: {\n flex: 1,\n width: '100vw',\n boxSizing: 'border-box',\n ...getPositionStyles(props, theme),\n },\n}));\n"],"names":["createStyles"],"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;AAEF,SAAS,iBAAiB,CAAC,KAAK,EAAE,KAAK,EAAE;AACzC,EAAE,MAAM,OAAO,GAAG,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;AAC/E,EAAE,MAAM,YAAY,GAAG,KAAK,CAAC,sBAAsB,GAAG,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,sBAAsB,EAAE,KAAK,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,GAAG,IAAI,CAAC;AAC7I,EAAE,MAAM,WAAW,GAAG,KAAK,CAAC,qBAAqB,GAAG,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,qBAAqB,EAAE,KAAK,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,GAAG,IAAI,CAAC;AAC1I,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;AACpB,IAAI,OAAO,EAAE,OAAO,EAAE,CAAC;AACvB,GAAG;AACH,EAAE,OAAO;AACT,IAAI,SAAS,EAAE,OAAO;AACtB,IAAI,UAAU,EAAE,CAAC,yCAAyC,EAAE,OAAO,CAAC,GAAG,CAAC;AACxE,IAAI,aAAa,EAAE,CAAC,yCAAyC,EAAE,OAAO,CAAC,GAAG,CAAC;AAC3E,IAAI,WAAW,EAAE,CAAC,wCAAwC,EAAE,OAAO,CAAC,GAAG,CAAC;AACxE,IAAI,YAAY,EAAE,CAAC,uCAAuC,EAAE,OAAO,CAAC,GAAG,CAAC;AACxE,IAAI,CAAC,CAAC,mBAAmB,EAAE,YAAY,CAAC,GAAG,CAAC,GAAG;
|
|
1
|
+
{"version":3,"file":"AppShell.styles.js","sources":["../../src/AppShell/AppShell.styles.ts"],"sourcesContent":["import { createStyles, MantineNumberSize, MantineTheme, CSSObject } from '@mantine/styles';\n\nexport interface AppShellStylesParams {\n padding: MantineNumberSize;\n fixed: boolean;\n navbarOffsetBreakpoint: MantineNumberSize;\n asideOffsetBreakpoint: MantineNumberSize;\n}\n\nfunction getPositionStyles(props: AppShellStylesParams, theme: MantineTheme): CSSObject {\n const padding = theme.fn.size({ size: props.padding, sizes: theme.spacing });\n\n const navbarOffset = props.navbarOffsetBreakpoint\n ? theme.fn.size({ size: props.navbarOffsetBreakpoint, sizes: theme.breakpoints })\n : null;\n\n const asideOffset = props.asideOffsetBreakpoint\n ? theme.fn.size({ size: props.asideOffsetBreakpoint, sizes: theme.breakpoints })\n : null;\n\n if (!props.fixed) {\n return { padding };\n }\n\n return {\n minHeight: '100vh',\n paddingTop: `calc(var(--mantine-header-height, 0px) + ${padding}px)`,\n paddingBottom: `calc(var(--mantine-footer-height, 0px) + ${padding}px)`,\n paddingLeft: `calc(var(--mantine-navbar-width, 0px) + ${padding}px)`,\n paddingRight: `calc(var(--mantine-aside-width, 0px) + ${padding}px)`,\n\n [`@media (max-width: ${navbarOffset - 1}px)`]: {\n paddingLeft: padding,\n },\n\n [`@media (max-width: ${asideOffset - 1}px)`]: {\n paddingRight: padding,\n },\n };\n}\n\nexport default createStyles((theme, props: AppShellStylesParams) => ({\n root: {\n boxSizing: 'border-box',\n },\n\n body: {\n display: 'flex',\n boxSizing: 'border-box',\n },\n\n main: {\n flex: 1,\n width: '100vw',\n boxSizing: 'border-box',\n ...getPositionStyles(props, theme),\n },\n}));\n"],"names":["createStyles"],"mappings":"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"}
|
|
@@ -87,7 +87,7 @@ const HorizontalSection = React.forwardRef((_a, ref) => {
|
|
|
87
87
|
withBorder
|
|
88
88
|
}, { classNames, styles: styles$1, name: __staticSelector, unstyled });
|
|
89
89
|
const breakpoints = getSortedBreakpoints.getSortedBreakpoints(width, theme).reduce((acc, [breakpoint, breakpointSize]) => {
|
|
90
|
-
acc[`@media (min-width: ${breakpoint
|
|
90
|
+
acc[`@media (min-width: ${breakpoint}px)`] = {
|
|
91
91
|
[`--mantine-${section}-width`]: `${breakpointSize}px`
|
|
92
92
|
};
|
|
93
93
|
return acc;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HorizontalSection.js","sources":["../../../src/AppShell/HorizontalSection/HorizontalSection.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { DefaultProps, MantineNumberSize, getDefaultZIndex, Global } from '@mantine/styles';\nimport { Box } from '../../Box';\nimport { useAppShellContext } from '../AppShell.context';\nimport { getSortedBreakpoints } from './get-sorted-breakpoints/get-sorted-breakpoints';\nimport useStyles, {\n HorizontalSectionPosition,\n HorizontalSectionWidth,\n} from './HorizontalSection.styles';\n\nexport interface HorizontalSectionSharedProps extends DefaultProps {\n /** Component width with breakpoints */\n width?: HorizontalSectionWidth;\n\n /** Component height */\n height?: string | number;\n\n /** HorizontalSection content */\n children: React.ReactNode;\n\n /** Border */\n withBorder?: boolean;\n\n /** Set position to fixed */\n fixed?: boolean;\n\n /** Position for fixed variant */\n position?: HorizontalSectionPosition;\n\n /** Breakpoint at which component will be hidden if hidden prop is true */\n hiddenBreakpoint?: MantineNumberSize;\n\n /** Set to true to hide component at hiddenBreakpoint */\n hidden?: boolean;\n\n /** z-index */\n zIndex?: React.CSSProperties['zIndex'];\n}\n\nexport interface HorizontalSectionProps\n extends HorizontalSectionSharedProps,\n Omit<React.ComponentPropsWithRef<'nav'>, 'children'> {\n section: 'navbar' | 'aside';\n __staticSelector: string;\n}\n\nexport const HorizontalSection = forwardRef<HTMLElement, HorizontalSectionProps>(\n (\n {\n width,\n height,\n fixed = false,\n position,\n zIndex = getDefaultZIndex('app'),\n hiddenBreakpoint = 'md',\n hidden = false,\n withBorder = true,\n className,\n classNames,\n styles,\n children,\n section,\n __staticSelector,\n unstyled,\n ...others\n }: HorizontalSectionProps,\n ref\n ) => {\n const ctx = useAppShellContext();\n\n const { classes, cx, theme } = useStyles(\n {\n width,\n height,\n fixed: ctx.fixed || fixed,\n position,\n hiddenBreakpoint,\n zIndex: ctx.zIndex || zIndex,\n section,\n withBorder,\n },\n { classNames, styles, name: __staticSelector, unstyled }\n );\n\n const breakpoints = getSortedBreakpoints(width, theme).reduce(\n (acc, [breakpoint, breakpointSize]) => {\n acc[`@media (min-width: ${breakpoint
|
|
1
|
+
{"version":3,"file":"HorizontalSection.js","sources":["../../../src/AppShell/HorizontalSection/HorizontalSection.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { DefaultProps, MantineNumberSize, getDefaultZIndex, Global } from '@mantine/styles';\nimport { Box } from '../../Box';\nimport { useAppShellContext } from '../AppShell.context';\nimport { getSortedBreakpoints } from './get-sorted-breakpoints/get-sorted-breakpoints';\nimport useStyles, {\n HorizontalSectionPosition,\n HorizontalSectionWidth,\n} from './HorizontalSection.styles';\n\nexport interface HorizontalSectionSharedProps extends DefaultProps {\n /** Component width with breakpoints */\n width?: HorizontalSectionWidth;\n\n /** Component height */\n height?: string | number;\n\n /** HorizontalSection content */\n children: React.ReactNode;\n\n /** Border */\n withBorder?: boolean;\n\n /** Set position to fixed */\n fixed?: boolean;\n\n /** Position for fixed variant */\n position?: HorizontalSectionPosition;\n\n /** Breakpoint at which component will be hidden if hidden prop is true */\n hiddenBreakpoint?: MantineNumberSize;\n\n /** Set to true to hide component at hiddenBreakpoint */\n hidden?: boolean;\n\n /** z-index */\n zIndex?: React.CSSProperties['zIndex'];\n}\n\nexport interface HorizontalSectionProps\n extends HorizontalSectionSharedProps,\n Omit<React.ComponentPropsWithRef<'nav'>, 'children'> {\n section: 'navbar' | 'aside';\n __staticSelector: string;\n}\n\nexport const HorizontalSection = forwardRef<HTMLElement, HorizontalSectionProps>(\n (\n {\n width,\n height,\n fixed = false,\n position,\n zIndex = getDefaultZIndex('app'),\n hiddenBreakpoint = 'md',\n hidden = false,\n withBorder = true,\n className,\n classNames,\n styles,\n children,\n section,\n __staticSelector,\n unstyled,\n ...others\n }: HorizontalSectionProps,\n ref\n ) => {\n const ctx = useAppShellContext();\n\n const { classes, cx, theme } = useStyles(\n {\n width,\n height,\n fixed: ctx.fixed || fixed,\n position,\n hiddenBreakpoint,\n zIndex: ctx.zIndex || zIndex,\n section,\n withBorder,\n },\n { classNames, styles, name: __staticSelector, unstyled }\n );\n\n const breakpoints = getSortedBreakpoints(width, theme).reduce(\n (acc, [breakpoint, breakpointSize]) => {\n acc[`@media (min-width: ${breakpoint}px)`] = {\n [`--mantine-${section}-width`]: `${breakpointSize}px`,\n };\n\n return acc;\n },\n {}\n );\n\n return (\n <Box\n component={section === 'navbar' ? 'nav' : 'aside'}\n ref={ref}\n data-hidden={hidden || undefined}\n className={cx(classes.root, className)}\n {...others}\n >\n {children}\n\n <Global\n styles={() => ({\n ':root': {\n [`--mantine-${section}-width`]: width?.base ? `${width.base}px` : '0px',\n ...breakpoints,\n },\n })}\n />\n </Box>\n );\n }\n);\n\nHorizontalSection.displayName = '@mantine/core/HorizontalSection';\n"],"names":["forwardRef","getDefaultZIndex","styles","useAppShellContext","useStyles","getSortedBreakpoints","React","Box","Global"],"mappings":"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"}
|
|
@@ -35,7 +35,7 @@ var useStyles = styles.createStyles((theme, {
|
|
|
35
35
|
withBorder
|
|
36
36
|
}) => {
|
|
37
37
|
const breakpoints = typeof width === "object" && width !== null ? getSortedBreakpoints.getSortedBreakpoints(width, theme).reduce((acc, [breakpoint, breakpointSize]) => {
|
|
38
|
-
acc[`@media (min-width: ${breakpoint
|
|
38
|
+
acc[`@media (min-width: ${breakpoint}px)`] = {
|
|
39
39
|
width: breakpointSize,
|
|
40
40
|
minWidth: breakpointSize
|
|
41
41
|
};
|
|
@@ -61,7 +61,7 @@ var useStyles = styles.createStyles((theme, {
|
|
|
61
61
|
[`@media (max-width: ${theme.fn.size({
|
|
62
62
|
size: hiddenBreakpoint,
|
|
63
63
|
sizes: theme.breakpoints
|
|
64
|
-
})}px)`]: {
|
|
64
|
+
}) - 1}px)`]: {
|
|
65
65
|
display: "none"
|
|
66
66
|
}
|
|
67
67
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HorizontalSection.styles.js","sources":["../../../src/AppShell/HorizontalSection/HorizontalSection.styles.ts"],"sourcesContent":["import { createStyles, MantineNumberSize } from '@mantine/styles';\nimport { getSortedBreakpoints } from './get-sorted-breakpoints/get-sorted-breakpoints';\n\nexport type HorizontalSectionWidth = Partial<Record<string, string | number>>;\n\nexport interface HorizontalSectionPosition {\n top?: number;\n left?: number;\n bottom?: number;\n right?: number;\n}\n\ninterface HorizontalSectionStyles {\n width: Partial<Record<string, string | number>>;\n height: string | number;\n position: HorizontalSectionPosition;\n hiddenBreakpoint: MantineNumberSize;\n fixed: boolean;\n zIndex: React.CSSProperties['zIndex'];\n section: 'navbar' | 'aside';\n withBorder: boolean;\n}\n\nexport default createStyles(\n (\n theme,\n {\n height,\n width,\n fixed,\n position,\n hiddenBreakpoint,\n zIndex,\n section,\n withBorder,\n }: HorizontalSectionStyles\n ) => {\n const breakpoints =\n typeof width === 'object' && width !== null\n ? getSortedBreakpoints(width, theme).reduce((acc, [breakpoint, breakpointSize]) => {\n acc[`@media (min-width: ${breakpoint
|
|
1
|
+
{"version":3,"file":"HorizontalSection.styles.js","sources":["../../../src/AppShell/HorizontalSection/HorizontalSection.styles.ts"],"sourcesContent":["import { createStyles, MantineNumberSize } from '@mantine/styles';\nimport { getSortedBreakpoints } from './get-sorted-breakpoints/get-sorted-breakpoints';\n\nexport type HorizontalSectionWidth = Partial<Record<string, string | number>>;\n\nexport interface HorizontalSectionPosition {\n top?: number;\n left?: number;\n bottom?: number;\n right?: number;\n}\n\ninterface HorizontalSectionStyles {\n width: Partial<Record<string, string | number>>;\n height: string | number;\n position: HorizontalSectionPosition;\n hiddenBreakpoint: MantineNumberSize;\n fixed: boolean;\n zIndex: React.CSSProperties['zIndex'];\n section: 'navbar' | 'aside';\n withBorder: boolean;\n}\n\nexport default createStyles(\n (\n theme,\n {\n height,\n width,\n fixed,\n position,\n hiddenBreakpoint,\n zIndex,\n section,\n withBorder,\n }: HorizontalSectionStyles\n ) => {\n const breakpoints =\n typeof width === 'object' && width !== null\n ? getSortedBreakpoints(width, theme).reduce((acc, [breakpoint, breakpointSize]) => {\n acc[`@media (min-width: ${breakpoint}px)`] = {\n width: breakpointSize,\n minWidth: breakpointSize,\n };\n\n return acc;\n }, {})\n : null;\n\n const borderStyles = withBorder\n ? {\n [section === 'navbar' ? 'borderRight' : 'borderLeft']: `1px solid ${\n theme.colorScheme === 'dark' ? theme.colors.dark[5] : theme.colors.gray[2]\n }`,\n }\n : {};\n\n return {\n root: {\n ...theme.fn.fontStyles(),\n ...position,\n top: position?.top || 'var(--mantine-header-height)',\n bottom: 0,\n zIndex,\n height:\n height ||\n 'calc(100vh - var(--mantine-header-height, 0px) - var(--mantine-footer-height, 0px))',\n width: width?.base || '100%',\n position: fixed ? 'fixed' : 'static',\n boxSizing: 'border-box',\n display: 'flex',\n flexDirection: 'column',\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[7] : theme.white,\n ...borderStyles,\n ...breakpoints,\n\n '&[data-hidden]': {\n [`@media (max-width: ${\n theme.fn.size({\n size: hiddenBreakpoint,\n sizes: theme.breakpoints,\n }) - 1\n }px)`]: {\n display: 'none',\n },\n },\n },\n };\n }\n);\n"],"names":["createStyles","getSortedBreakpoints"],"mappings":"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"}
|
package/cjs/Checkbox/Checkbox.js
CHANGED
|
@@ -10,6 +10,7 @@ var CheckboxGroup = require('./CheckboxGroup/CheckboxGroup.js');
|
|
|
10
10
|
var CheckboxGroup_context = require('./CheckboxGroup.context.js');
|
|
11
11
|
var Checkbox_styles = require('./Checkbox.styles.js');
|
|
12
12
|
var Box = require('../Box/Box.js');
|
|
13
|
+
var Input = require('../Input/Input.js');
|
|
13
14
|
|
|
14
15
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e['default'] : e; }
|
|
15
16
|
|
|
@@ -46,7 +47,8 @@ var __objRest = (source, exclude) => {
|
|
|
46
47
|
const defaultProps = {
|
|
47
48
|
size: "sm",
|
|
48
49
|
transitionDuration: 100,
|
|
49
|
-
icon: CheckboxIcon.CheckboxIcon
|
|
50
|
+
icon: CheckboxIcon.CheckboxIcon,
|
|
51
|
+
labelPosition: "right"
|
|
50
52
|
};
|
|
51
53
|
const Checkbox = React.forwardRef((props, ref) => {
|
|
52
54
|
const _a = styles.useComponentDefaultProps("Checkbox", defaultProps, props), {
|
|
@@ -67,7 +69,10 @@ const Checkbox = React.forwardRef((props, ref) => {
|
|
|
67
69
|
styles: styles$1,
|
|
68
70
|
transitionDuration,
|
|
69
71
|
icon: Icon,
|
|
70
|
-
unstyled
|
|
72
|
+
unstyled,
|
|
73
|
+
labelPosition,
|
|
74
|
+
description,
|
|
75
|
+
error
|
|
71
76
|
} = _a, others = __objRest(_a, [
|
|
72
77
|
"className",
|
|
73
78
|
"style",
|
|
@@ -86,37 +91,56 @@ const Checkbox = React.forwardRef((props, ref) => {
|
|
|
86
91
|
"styles",
|
|
87
92
|
"transitionDuration",
|
|
88
93
|
"icon",
|
|
89
|
-
"unstyled"
|
|
94
|
+
"unstyled",
|
|
95
|
+
"labelPosition",
|
|
96
|
+
"description",
|
|
97
|
+
"error"
|
|
90
98
|
]);
|
|
91
99
|
const ctx = CheckboxGroup_context.useCheckboxGroupContext();
|
|
92
100
|
const uuid = hooks.useId(id);
|
|
93
101
|
const { systemStyles, rest } = styles.extractSystemStyles(others);
|
|
94
|
-
const { classes, cx } = Checkbox_styles['default']({
|
|
102
|
+
const { classes, cx } = Checkbox_styles['default']({
|
|
103
|
+
size: (ctx == null ? void 0 : ctx.size) || size,
|
|
104
|
+
radius,
|
|
105
|
+
color,
|
|
106
|
+
transitionDuration,
|
|
107
|
+
labelPosition,
|
|
108
|
+
error: !!error,
|
|
109
|
+
indeterminate
|
|
110
|
+
}, { name: "Checkbox", classNames, styles: styles$1, unstyled });
|
|
95
111
|
const contextProps = ctx ? {
|
|
96
112
|
checked: ctx.value.includes(rest.value),
|
|
97
113
|
onChange: ctx.onChange
|
|
98
114
|
} : {};
|
|
99
115
|
return /* @__PURE__ */ React__default.createElement(Box.Box, __spreadValues(__spreadValues({
|
|
100
116
|
className: cx(classes.root, className),
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
}, systemStyles), wrapperProps), /* @__PURE__ */ React__default.createElement(
|
|
117
|
+
sx,
|
|
118
|
+
style
|
|
119
|
+
}, systemStyles), wrapperProps), /* @__PURE__ */ React__default.createElement(Box.Box, {
|
|
120
|
+
className: cx(classes.body)
|
|
121
|
+
}, /* @__PURE__ */ React__default.createElement("div", {
|
|
104
122
|
className: classes.inner
|
|
105
123
|
}, /* @__PURE__ */ React__default.createElement("input", __spreadValues(__spreadValues({
|
|
106
124
|
id: uuid,
|
|
107
125
|
ref,
|
|
108
126
|
type: "checkbox",
|
|
109
127
|
className: classes.input,
|
|
110
|
-
checked
|
|
128
|
+
checked,
|
|
111
129
|
disabled
|
|
112
130
|
}, rest), contextProps)), /* @__PURE__ */ React__default.createElement(Icon, {
|
|
113
131
|
indeterminate,
|
|
114
132
|
className: classes.icon
|
|
115
|
-
})),
|
|
133
|
+
})), /* @__PURE__ */ React__default.createElement("div", {
|
|
134
|
+
className: classes.labelWrapper
|
|
135
|
+
}, label && /* @__PURE__ */ React__default.createElement("label", {
|
|
116
136
|
"data-disabled": disabled || void 0,
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
}, label)
|
|
137
|
+
htmlFor: uuid,
|
|
138
|
+
"data-testid": "label"
|
|
139
|
+
}, label), description && /* @__PURE__ */ React__default.createElement(Input.Input.Description, {
|
|
140
|
+
className: classes.description
|
|
141
|
+
}, description), error && error !== "boolean" && /* @__PURE__ */ React__default.createElement(Input.Input.Error, {
|
|
142
|
+
className: classes.error
|
|
143
|
+
}, error))));
|
|
120
144
|
});
|
|
121
145
|
Checkbox.displayName = "@mantine/core/Checkbox";
|
|
122
146
|
Checkbox.Group = CheckboxGroup.CheckboxGroup;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Checkbox.js","sources":["../../src/Checkbox/Checkbox.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport {\n DefaultProps,\n MantineSize,\n MantineColor,\n Selectors,\n extractSystemStyles,\n MantineNumberSize,\n useComponentDefaultProps,\n} from '@mantine/styles';\nimport { ForwardRefWithStaticComponents } from '@mantine/utils';\nimport { useId } from '@mantine/hooks';\nimport { Box } from '../Box';\nimport { CheckboxIcon } from './CheckboxIcon';\nimport { CheckboxGroup } from './CheckboxGroup/CheckboxGroup';\nimport { useCheckboxGroupContext } from './CheckboxGroup.context';\nimport useStyles, { CheckboxStylesParams } from './Checkbox.styles';\n\nexport type CheckboxStylesNames = Selectors<typeof useStyles>;\n\nexport interface CheckboxProps\n extends DefaultProps<CheckboxStylesNames, CheckboxStylesParams>,\n Omit<React.ComponentPropsWithRef<'input'>, 'type' | 'size'> {\n /** Key of theme.colors */\n color?: MantineColor;\n\n /** Key of theme.radius or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** Predefined label font-size and checkbox width and height in px */\n size?: MantineSize;\n\n /** Checkbox label */\n label?: React.ReactNode;\n\n /** Indeterminate state of checkbox, overwrites checked */\n indeterminate?: boolean;\n\n /** Props spread to wrapper element */\n wrapperProps?: Record<string, any>;\n\n /** id to connect label with input */\n id?: string;\n\n /** Transition duration in ms */\n transitionDuration?: number;\n\n /** Icon rendered when checkbox has checked or indeterminate state */\n icon?: React.FC<{ indeterminate: boolean; className: string }>;\n}\n\nconst defaultProps: Partial<CheckboxProps> = {\n size: 'sm',\n transitionDuration: 100,\n icon: CheckboxIcon,\n};\n\ntype CheckboxComponent = ForwardRefWithStaticComponents<\n CheckboxProps,\n { Group: typeof CheckboxGroup }\n>;\n\nexport const Checkbox: CheckboxComponent = forwardRef<HTMLInputElement, CheckboxProps>(\n (props, ref) => {\n const {\n className,\n style,\n sx,\n checked,\n disabled,\n color,\n label,\n indeterminate,\n id,\n size,\n radius,\n wrapperProps,\n children,\n classNames,\n styles,\n transitionDuration,\n icon: Icon,\n unstyled,\n ...others\n } = useComponentDefaultProps('Checkbox', defaultProps, props);\n\n const ctx = useCheckboxGroupContext();\n const uuid = useId(id);\n const { systemStyles, rest } = extractSystemStyles(others);\n const { classes, cx } = useStyles(\n {
|
|
1
|
+
{"version":3,"file":"Checkbox.js","sources":["../../src/Checkbox/Checkbox.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport {\n DefaultProps,\n MantineSize,\n MantineColor,\n Selectors,\n extractSystemStyles,\n MantineNumberSize,\n useComponentDefaultProps,\n} from '@mantine/styles';\nimport { ForwardRefWithStaticComponents } from '@mantine/utils';\nimport { useId } from '@mantine/hooks';\nimport { Box } from '../Box';\nimport { CheckboxIcon } from './CheckboxIcon';\nimport { CheckboxGroup } from './CheckboxGroup/CheckboxGroup';\nimport { useCheckboxGroupContext } from './CheckboxGroup.context';\nimport useStyles, { CheckboxStylesParams } from './Checkbox.styles';\nimport { Input } from '../Input';\n\nexport type CheckboxStylesNames = Selectors<typeof useStyles>;\n\nexport interface CheckboxProps\n extends DefaultProps<CheckboxStylesNames, CheckboxStylesParams>,\n Omit<React.ComponentPropsWithRef<'input'>, 'type' | 'size'> {\n /** Key of theme.colors */\n color?: MantineColor;\n\n /** Key of theme.radius or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** Predefined label font-size and checkbox width and height in px */\n size?: MantineSize;\n\n /** Checkbox label */\n label?: React.ReactNode;\n\n /** Indeterminate state of checkbox, overwrites checked */\n indeterminate?: boolean;\n\n /** Props spread to wrapper element */\n wrapperProps?: Record<string, any>;\n\n /** id to connect label with input */\n id?: string;\n\n /** Transition duration in ms */\n transitionDuration?: number;\n\n /** Icon rendered when checkbox has checked or indeterminate state */\n icon?: React.FC<{ indeterminate: boolean; className: string }>;\n\n /** Position of label */\n labelPosition?: 'left' | 'right';\n\n /** description, displayed after label */\n description?: React.ReactNode;\n\n /** Displays error message after input */\n error?: React.ReactNode;\n}\n\nconst defaultProps: Partial<CheckboxProps> = {\n size: 'sm',\n transitionDuration: 100,\n icon: CheckboxIcon,\n labelPosition: 'right',\n};\n\ntype CheckboxComponent = ForwardRefWithStaticComponents<\n CheckboxProps,\n { Group: typeof CheckboxGroup }\n>;\n\nexport const Checkbox: CheckboxComponent = forwardRef<HTMLInputElement, CheckboxProps>(\n (props, ref) => {\n const {\n className,\n style,\n sx,\n checked,\n disabled,\n color,\n label,\n indeterminate,\n id,\n size,\n radius,\n wrapperProps,\n children,\n classNames,\n styles,\n transitionDuration,\n icon: Icon,\n unstyled,\n labelPosition,\n description,\n error,\n ...others\n } = useComponentDefaultProps('Checkbox', defaultProps, props);\n\n const ctx = useCheckboxGroupContext();\n const uuid = useId(id);\n const { systemStyles, rest } = extractSystemStyles(others);\n const { classes, cx } = useStyles(\n {\n size: ctx?.size || size,\n radius,\n color,\n transitionDuration,\n labelPosition,\n error: !!error,\n indeterminate,\n },\n { name: 'Checkbox', classNames, styles, unstyled }\n );\n\n const contextProps = ctx\n ? {\n checked: ctx.value.includes(rest.value as string),\n onChange: ctx.onChange,\n }\n : {};\n\n return (\n <Box\n className={cx(classes.root, className)}\n sx={sx}\n style={style}\n {...systemStyles}\n {...wrapperProps}\n >\n <Box className={cx(classes.body)}>\n <div className={classes.inner}>\n <input\n id={uuid}\n ref={ref}\n type=\"checkbox\"\n className={classes.input}\n checked={checked}\n disabled={disabled}\n {...rest}\n {...contextProps}\n />\n\n <Icon indeterminate={indeterminate} className={classes.icon} />\n </div>\n\n <div className={classes.labelWrapper}>\n {label && (\n <label data-disabled={disabled || undefined} htmlFor={uuid} data-testid=\"label\">\n {label}\n </label>\n )}\n\n {description && (\n <Input.Description className={classes.description}>{description}</Input.Description>\n )}\n\n {error && error !== 'boolean' && (\n <Input.Error className={classes.error}>{error}</Input.Error>\n )}\n </div>\n </Box>\n </Box>\n );\n }\n) as any;\n\nCheckbox.displayName = '@mantine/core/Checkbox';\nCheckbox.Group = CheckboxGroup;\n"],"names":["CheckboxIcon","forwardRef","useComponentDefaultProps","styles","useCheckboxGroupContext","useId","extractSystemStyles","useStyles","React","Box","Input","CheckboxGroup"],"mappings":"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"}
|
|
@@ -37,15 +37,30 @@ const iconSizes = {
|
|
|
37
37
|
lg: 16,
|
|
38
38
|
xl: 20
|
|
39
39
|
};
|
|
40
|
-
var useStyles = styles.createStyles((theme, {
|
|
40
|
+
var useStyles = styles.createStyles((theme, {
|
|
41
|
+
size,
|
|
42
|
+
radius,
|
|
43
|
+
color,
|
|
44
|
+
transitionDuration,
|
|
45
|
+
labelPosition,
|
|
46
|
+
error,
|
|
47
|
+
indeterminate
|
|
48
|
+
}, getRef) => {
|
|
41
49
|
const _size = theme.fn.size({ size, sizes });
|
|
42
50
|
const colors = theme.fn.variant({ variant: "filled", color });
|
|
51
|
+
const errorColor = theme.fn.variant({ variant: "filled", color: "red" }).background;
|
|
43
52
|
return {
|
|
53
|
+
description: {
|
|
54
|
+
marginTop: `calc(${theme.spacing.xs}px / 2)`
|
|
55
|
+
},
|
|
56
|
+
error: {
|
|
57
|
+
marginTop: `calc(${theme.spacing.xs}px / 2)`
|
|
58
|
+
},
|
|
44
59
|
icon: {
|
|
45
60
|
ref: getRef("icon"),
|
|
46
|
-
color: theme.white,
|
|
47
|
-
transform: "translateY(5px) scale(0.5)",
|
|
48
|
-
opacity: 0,
|
|
61
|
+
color: indeterminate ? "inherit" : theme.white,
|
|
62
|
+
transform: indeterminate ? "none" : "translateY(5px) scale(0.5)",
|
|
63
|
+
opacity: indeterminate ? 1 : 0,
|
|
49
64
|
transitionProperty: "opacity, transform",
|
|
50
65
|
transitionTimingFunction: "ease",
|
|
51
66
|
transitionDuration: `${transitionDuration}ms`,
|
|
@@ -62,30 +77,35 @@ var useStyles = styles.createStyles((theme, { size, radius, color, transitionDur
|
|
|
62
77
|
transitionDuration: theme.respectReducedMotion ? "0ms" : void 0
|
|
63
78
|
}
|
|
64
79
|
},
|
|
65
|
-
root: {
|
|
80
|
+
root: {},
|
|
81
|
+
body: {
|
|
66
82
|
display: "flex",
|
|
67
|
-
|
|
83
|
+
marginBlock: "5px"
|
|
68
84
|
},
|
|
69
85
|
inner: {
|
|
70
86
|
position: "relative",
|
|
71
87
|
width: _size,
|
|
72
|
-
height: _size
|
|
88
|
+
height: _size,
|
|
89
|
+
order: labelPosition === "left" ? 2 : 1
|
|
73
90
|
},
|
|
74
|
-
|
|
91
|
+
labelWrapper: __spreadProps(__spreadValues({}, theme.fn.fontStyles()), {
|
|
75
92
|
WebkitTapHighlightColor: "transparent",
|
|
76
|
-
paddingLeft: theme.spacing.sm,
|
|
77
93
|
fontSize: theme.fn.size({ size, sizes: theme.fontSizes }),
|
|
78
94
|
lineHeight: `${_size}px`,
|
|
79
95
|
color: theme.colorScheme === "dark" ? theme.colors.dark[0] : theme.black,
|
|
80
96
|
cursor: theme.cursorType,
|
|
81
|
-
"
|
|
97
|
+
order: labelPosition === "left" ? 1 : 2,
|
|
98
|
+
"& *": {
|
|
99
|
+
[labelPosition === "left" ? "paddingRight" : "paddingLeft"]: theme.spacing.sm
|
|
100
|
+
},
|
|
101
|
+
"& label[data-disabled]": {
|
|
82
102
|
color: theme.colorScheme === "dark" ? theme.colors.dark[3] : theme.colors.gray[5]
|
|
83
103
|
}
|
|
84
104
|
}),
|
|
85
105
|
input: __spreadProps(__spreadValues({}, theme.fn.focusStyles()), {
|
|
86
106
|
appearance: "none",
|
|
87
107
|
backgroundColor: theme.colorScheme === "dark" ? theme.colors.dark[6] : theme.white,
|
|
88
|
-
border: `1px solid ${theme.colorScheme === "dark" ? theme.colors.dark[4] : theme.colors.gray[4]}`,
|
|
108
|
+
border: `1px solid ${error ? errorColor : theme.colorScheme === "dark" ? theme.colors.dark[4] : theme.colors.gray[4]}`,
|
|
89
109
|
width: _size,
|
|
90
110
|
height: _size,
|
|
91
111
|
borderRadius: theme.fn.radius(radius),
|
|
@@ -99,6 +119,7 @@ var useStyles = styles.createStyles((theme, { size, radius, color, transitionDur
|
|
|
99
119
|
borderColor: colors.background,
|
|
100
120
|
[`& + .${getRef("icon")}`]: {
|
|
101
121
|
opacity: 1,
|
|
122
|
+
color: theme.white,
|
|
102
123
|
transform: "translateY(0) scale(1)"
|
|
103
124
|
}
|
|
104
125
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Checkbox.styles.js","sources":["../../src/Checkbox/Checkbox.styles.ts"],"sourcesContent":["import { createStyles, MantineSize, MantineColor, MantineNumberSize } from '@mantine/styles';\n\nconst sizes = {\n xs: 16,\n sm: 20,\n md: 24,\n lg: 30,\n xl: 36,\n};\n\nconst iconSizes = {\n xs: 8,\n sm: 10,\n md: 14,\n lg: 16,\n xl: 20,\n};\n\nexport interface CheckboxStylesParams {\n size: MantineSize;\n radius: MantineNumberSize;\n color: MantineColor;\n transitionDuration: number;\n}\n\nexport default createStyles(\n (theme
|
|
1
|
+
{"version":3,"file":"Checkbox.styles.js","sources":["../../src/Checkbox/Checkbox.styles.ts"],"sourcesContent":["import { createStyles, MantineSize, MantineColor, MantineNumberSize } from '@mantine/styles';\n\nconst sizes = {\n xs: 16,\n sm: 20,\n md: 24,\n lg: 30,\n xl: 36,\n};\n\nconst iconSizes = {\n xs: 8,\n sm: 10,\n md: 14,\n lg: 16,\n xl: 20,\n};\n\nexport interface CheckboxStylesParams {\n size: MantineSize;\n radius: MantineNumberSize;\n color: MantineColor;\n transitionDuration: number;\n labelPosition: 'left' | 'right';\n error: boolean;\n indeterminate: boolean;\n}\n\nexport default createStyles(\n (\n theme,\n {\n size,\n radius,\n color,\n transitionDuration,\n labelPosition,\n error,\n indeterminate,\n }: CheckboxStylesParams,\n getRef\n ) => {\n const _size = theme.fn.size({ size, sizes });\n const colors = theme.fn.variant({ variant: 'filled', color });\n const errorColor = theme.fn.variant({ variant: 'filled', color: 'red' }).background;\n\n return {\n description: {\n marginTop: `calc(${theme.spacing.xs}px / 2)`,\n },\n\n error: {\n marginTop: `calc(${theme.spacing.xs}px / 2)`,\n },\n\n icon: {\n ref: getRef('icon'),\n color: indeterminate ? 'inherit' : theme.white,\n transform: indeterminate ? 'none' : 'translateY(5px) scale(0.5)',\n opacity: indeterminate ? 1 : 0,\n transitionProperty: 'opacity, transform',\n transitionTimingFunction: 'ease',\n transitionDuration: `${transitionDuration}ms`,\n pointerEvents: 'none',\n width: theme.fn.size({ size, sizes: iconSizes }),\n position: 'absolute',\n zIndex: 1,\n top: 0,\n bottom: 0,\n left: 0,\n right: 0,\n margin: 'auto',\n\n '@media (prefers-reduced-motion)': {\n transitionDuration: theme.respectReducedMotion ? '0ms' : undefined,\n },\n },\n\n root: {},\n\n body: {\n display: 'flex',\n marginBlock: '5px',\n },\n\n inner: {\n position: 'relative',\n width: _size,\n height: _size,\n order: labelPosition === 'left' ? 2 : 1,\n },\n\n labelWrapper: {\n ...theme.fn.fontStyles(),\n WebkitTapHighlightColor: 'transparent',\n fontSize: theme.fn.size({ size, sizes: theme.fontSizes }),\n lineHeight: `${_size}px`,\n color: theme.colorScheme === 'dark' ? theme.colors.dark[0] : theme.black,\n cursor: theme.cursorType,\n order: labelPosition === 'left' ? 1 : 2,\n '& *': {\n [labelPosition === 'left' ? 'paddingRight' : 'paddingLeft']: theme.spacing.sm,\n },\n '& label[data-disabled]': {\n color: theme.colorScheme === 'dark' ? theme.colors.dark[3] : theme.colors.gray[5],\n },\n },\n\n input: {\n ...theme.fn.focusStyles(),\n appearance: 'none',\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[6] : theme.white,\n border: `1px solid ${\n error\n ? errorColor\n : theme.colorScheme === 'dark'\n ? theme.colors.dark[4]\n : theme.colors.gray[4]\n }`,\n width: _size,\n height: _size,\n borderRadius: theme.fn.radius(radius),\n padding: 0,\n display: 'block',\n margin: 0,\n transition: `border-color ${transitionDuration}ms ease, background-color ${transitionDuration}ms ease`,\n cursor: theme.cursorType,\n\n '&:checked': {\n backgroundColor: colors.background,\n borderColor: colors.background,\n\n [`& + .${getRef('icon')}`]: {\n opacity: 1,\n color: theme.white,\n transform: 'translateY(0) scale(1)',\n },\n },\n\n '&:disabled': {\n backgroundColor:\n theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[2],\n borderColor: theme.colorScheme === 'dark' ? theme.colors.dark[6] : theme.colors.gray[3],\n cursor: 'not-allowed',\n\n [`& + .${getRef('icon')}`]: {\n color: theme.colorScheme === 'dark' ? theme.colors.dark[6] : theme.colors.gray[5],\n },\n },\n },\n };\n }\n);\n"],"names":["createStyles"],"mappings":"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"}
|
package/cjs/Collapse/Collapse.js
CHANGED
|
@@ -43,7 +43,8 @@ var __objRest = (source, exclude) => {
|
|
|
43
43
|
const defaultProps = {
|
|
44
44
|
transitionDuration: 200,
|
|
45
45
|
transitionTimingFunction: "ease",
|
|
46
|
-
animateOpacity: true
|
|
46
|
+
animateOpacity: true,
|
|
47
|
+
axis: "y"
|
|
47
48
|
};
|
|
48
49
|
const Collapse = React.forwardRef((props, ref) => {
|
|
49
50
|
const _a = styles.useComponentDefaultProps("Collapse", defaultProps, props), {
|
|
@@ -53,7 +54,8 @@ const Collapse = React.forwardRef((props, ref) => {
|
|
|
53
54
|
transitionTimingFunction,
|
|
54
55
|
style,
|
|
55
56
|
onTransitionEnd,
|
|
56
|
-
animateOpacity
|
|
57
|
+
animateOpacity,
|
|
58
|
+
axis
|
|
57
59
|
} = _a, others = __objRest(_a, [
|
|
58
60
|
"children",
|
|
59
61
|
"in",
|
|
@@ -61,7 +63,8 @@ const Collapse = React.forwardRef((props, ref) => {
|
|
|
61
63
|
"transitionTimingFunction",
|
|
62
64
|
"style",
|
|
63
65
|
"onTransitionEnd",
|
|
64
|
-
"animateOpacity"
|
|
66
|
+
"animateOpacity",
|
|
67
|
+
"axis"
|
|
65
68
|
]);
|
|
66
69
|
const theme = styles.useMantineTheme();
|
|
67
70
|
const shouldReduceMotion = hooks.useReducedMotion();
|
|
@@ -69,6 +72,7 @@ const Collapse = React.forwardRef((props, ref) => {
|
|
|
69
72
|
const duration = reduceMotion ? 0 : transitionDuration;
|
|
70
73
|
const { systemStyles, rest } = styles.extractSystemStyles(others);
|
|
71
74
|
const getCollapseProps = useCollapse.useCollapse({
|
|
75
|
+
axis,
|
|
72
76
|
opened,
|
|
73
77
|
transitionDuration: duration,
|
|
74
78
|
transitionTimingFunction,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Collapse.js","sources":["../../src/Collapse/Collapse.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { useReducedMotion } from '@mantine/hooks';\nimport {\n extractSystemStyles,\n DefaultProps,\n useComponentDefaultProps,\n useMantineTheme,\n} from '@mantine/styles';\nimport { Box } from '../Box';\nimport { useCollapse } from './use-collapse';\n\nexport interface CollapseProps extends DefaultProps, React.ComponentPropsWithoutRef<'div'> {\n /** Content that should be collapsed */\n children: React.ReactNode;\n\n /** Opened state */\n in: boolean;\n\n /** Called each time transition ends */\n onTransitionEnd?: () => void;\n\n /** Transition duration in ms */\n transitionDuration?: number;\n\n /** Transition timing function */\n transitionTimingFunction?: string;\n\n /** Should opacity be animated */\n animateOpacity?: boolean;\n}\n\nconst defaultProps: Partial<CollapseProps> = {\n transitionDuration: 200,\n transitionTimingFunction: 'ease',\n animateOpacity: true,\n};\n\nexport const Collapse = forwardRef<HTMLDivElement, CollapseProps>((props, ref) => {\n const {\n children,\n in: opened,\n transitionDuration,\n transitionTimingFunction,\n style,\n onTransitionEnd,\n animateOpacity,\n ...others\n } = useComponentDefaultProps('Collapse', defaultProps, props);\n const theme = useMantineTheme();\n\n const shouldReduceMotion = useReducedMotion();\n const reduceMotion = theme.respectReducedMotion ? shouldReduceMotion : false;\n\n const duration = reduceMotion ? 0 : transitionDuration;\n const { systemStyles, rest } = extractSystemStyles(others);\n const getCollapseProps = useCollapse({\n opened,\n transitionDuration: duration,\n transitionTimingFunction,\n onTransitionEnd,\n });\n\n if (duration === 0) {\n return opened ? <Box {...rest}>{children}</Box> : null;\n }\n\n return (\n <Box {...getCollapseProps({ style, ref, ...rest, ...systemStyles })}>\n <div\n style={{\n opacity: opened || !animateOpacity ? 1 : 0,\n transition: animateOpacity ? `opacity ${duration}ms ${transitionTimingFunction}` : 'none',\n }}\n >\n {children}\n </div>\n </Box>\n );\n});\n\nCollapse.displayName = '@mantine/core/Collapse';\n"],"names":["forwardRef","useComponentDefaultProps","useMantineTheme","useReducedMotion","extractSystemStyles","useCollapse","React","Box"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Collapse.js","sources":["../../src/Collapse/Collapse.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { useReducedMotion } from '@mantine/hooks';\nimport {\n extractSystemStyles,\n DefaultProps,\n useComponentDefaultProps,\n useMantineTheme,\n} from '@mantine/styles';\nimport { Box } from '../Box';\nimport { useCollapse } from './use-collapse';\n\nexport interface CollapseProps extends DefaultProps, React.ComponentPropsWithoutRef<'div'> {\n /** Content that should be collapsed */\n children: React.ReactNode;\n\n /** Opened state */\n in: boolean;\n\n /** Called each time transition ends */\n onTransitionEnd?: () => void;\n\n /** Transition duration in ms */\n transitionDuration?: number;\n\n /** Transition timing function */\n transitionTimingFunction?: string;\n\n /** Should opacity be animated */\n animateOpacity?: boolean;\n\n /** Axis of collapse */\n axis?: 'x' | 'y';\n}\n\nconst defaultProps: Partial<CollapseProps> = {\n transitionDuration: 200,\n transitionTimingFunction: 'ease',\n animateOpacity: true,\n axis: 'y',\n};\n\nexport const Collapse = forwardRef<HTMLDivElement, CollapseProps>((props, ref) => {\n const {\n children,\n in: opened,\n transitionDuration,\n transitionTimingFunction,\n style,\n onTransitionEnd,\n animateOpacity,\n axis,\n ...others\n } = useComponentDefaultProps('Collapse', defaultProps, props);\n const theme = useMantineTheme();\n\n const shouldReduceMotion = useReducedMotion();\n const reduceMotion = theme.respectReducedMotion ? shouldReduceMotion : false;\n\n const duration = reduceMotion ? 0 : transitionDuration;\n const { systemStyles, rest } = extractSystemStyles(others);\n const getCollapseProps = useCollapse({\n axis,\n opened,\n transitionDuration: duration,\n transitionTimingFunction,\n onTransitionEnd,\n });\n\n if (duration === 0) {\n return opened ? <Box {...rest}>{children}</Box> : null;\n }\n\n return (\n <Box {...getCollapseProps({ style, ref, ...rest, ...systemStyles })}>\n <div\n style={{\n opacity: opened || !animateOpacity ? 1 : 0,\n transition: animateOpacity ? `opacity ${duration}ms ${transitionTimingFunction}` : 'none',\n }}\n >\n {children}\n </div>\n </Box>\n );\n});\n\nCollapse.displayName = '@mantine/core/Collapse';\n"],"names":["forwardRef","useComponentDefaultProps","useMantineTheme","useReducedMotion","extractSystemStyles","useCollapse","React","Box"],"mappings":"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"}
|
|
@@ -47,22 +47,21 @@ function getAutoHeightDuration(height) {
|
|
|
47
47
|
function getElementHeight(el) {
|
|
48
48
|
return (el == null ? void 0 : el.current) ? el.current.scrollHeight : "auto";
|
|
49
49
|
}
|
|
50
|
+
function getElementWidth(el) {
|
|
51
|
+
return (el == null ? void 0 : el.current) ? el.current.scrollWidth : "auto";
|
|
52
|
+
}
|
|
50
53
|
const raf = typeof window !== "undefined" && window.requestAnimationFrame;
|
|
51
54
|
function useCollapse({
|
|
52
55
|
transitionDuration,
|
|
53
56
|
transitionTimingFunction = "ease",
|
|
54
57
|
onTransitionEnd = () => {
|
|
55
58
|
},
|
|
56
|
-
opened
|
|
59
|
+
opened,
|
|
60
|
+
axis
|
|
57
61
|
}) {
|
|
58
62
|
const el = React.useRef(null);
|
|
59
63
|
const collapsedHeight = "0px";
|
|
60
|
-
const
|
|
61
|
-
display: "none",
|
|
62
|
-
height: "0px",
|
|
63
|
-
overflow: "hidden"
|
|
64
|
-
};
|
|
65
|
-
const [styles, setStylesRaw] = React.useState(opened ? {} : collapsedStyles);
|
|
64
|
+
const [styles, setStylesRaw] = React.useState({});
|
|
66
65
|
const setStyles = (newStyles) => {
|
|
67
66
|
reactDom.flushSync(() => setStylesRaw(newStyles));
|
|
68
67
|
};
|
|
@@ -72,10 +71,38 @@ function useCollapse({
|
|
|
72
71
|
function getTransitionStyles(height) {
|
|
73
72
|
const _duration = transitionDuration || getAutoHeightDuration(height);
|
|
74
73
|
return {
|
|
75
|
-
|
|
74
|
+
transitionProperty: `${axis === "x" ? "width" : "height"}`,
|
|
75
|
+
transitionDuration: `${_duration}ms`,
|
|
76
|
+
transitionTimingFunction: `${transitionTimingFunction}`
|
|
76
77
|
};
|
|
77
78
|
}
|
|
79
|
+
const getDefaultSizes = () => {
|
|
80
|
+
const oldStyles = styles;
|
|
81
|
+
setStyles({});
|
|
82
|
+
const sizes = { width: getElementWidth(el), height: getElementHeight(el) };
|
|
83
|
+
setStyles(oldStyles);
|
|
84
|
+
return sizes;
|
|
85
|
+
};
|
|
86
|
+
const getCollapsedStyles = () => {
|
|
87
|
+
const { height } = getDefaultSizes();
|
|
88
|
+
return {
|
|
89
|
+
x: { height, width: "0px", overflow: "hidden" },
|
|
90
|
+
y: { display: "none", height: "0px", overflow: "hidden" }
|
|
91
|
+
};
|
|
92
|
+
};
|
|
93
|
+
React.useEffect(() => {
|
|
94
|
+
raf(() => {
|
|
95
|
+
const { x, y } = getCollapsedStyles();
|
|
96
|
+
if (axis === "x" && !opened) {
|
|
97
|
+
setStyles(__spreadValues({}, x));
|
|
98
|
+
} else if (axis === "y" && !opened) {
|
|
99
|
+
setStyles(__spreadValues({}, y));
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
}, []);
|
|
78
103
|
hooks.useDidUpdate(() => {
|
|
104
|
+
if (axis === "x")
|
|
105
|
+
return;
|
|
79
106
|
if (opened) {
|
|
80
107
|
raf(() => {
|
|
81
108
|
mergeStyles({ willChange: "height", display: "block", overflow: "hidden" });
|
|
@@ -92,20 +119,51 @@ function useCollapse({
|
|
|
92
119
|
});
|
|
93
120
|
}
|
|
94
121
|
}, [opened]);
|
|
122
|
+
hooks.useDidUpdate(() => {
|
|
123
|
+
if (axis === "y")
|
|
124
|
+
return;
|
|
125
|
+
if (opened) {
|
|
126
|
+
raf(() => {
|
|
127
|
+
const { width } = getDefaultSizes();
|
|
128
|
+
mergeStyles({
|
|
129
|
+
display: "block",
|
|
130
|
+
overflow: "hidden",
|
|
131
|
+
willChange: "width",
|
|
132
|
+
flexShrink: 0
|
|
133
|
+
});
|
|
134
|
+
raf(() => {
|
|
135
|
+
mergeStyles(__spreadProps(__spreadValues({}, getTransitionStyles(width)), { width }));
|
|
136
|
+
});
|
|
137
|
+
});
|
|
138
|
+
} else {
|
|
139
|
+
raf(() => {
|
|
140
|
+
const { width, height } = getDefaultSizes();
|
|
141
|
+
mergeStyles(__spreadProps(__spreadValues({}, getTransitionStyles(width)), {
|
|
142
|
+
flexShrink: 0,
|
|
143
|
+
willChange: "width",
|
|
144
|
+
width,
|
|
145
|
+
height
|
|
146
|
+
}));
|
|
147
|
+
raf(() => mergeStyles({ width: "0px", overflow: "hidden" }));
|
|
148
|
+
});
|
|
149
|
+
}
|
|
150
|
+
}, [opened]);
|
|
95
151
|
const handleTransitionEnd = (e) => {
|
|
96
|
-
if (e.target !== el.current || e.propertyName
|
|
152
|
+
if (e.target !== el.current || !(e.propertyName === "width" || "height")) {
|
|
97
153
|
return;
|
|
98
154
|
}
|
|
155
|
+
const { height, width } = getDefaultSizes();
|
|
99
156
|
if (opened) {
|
|
100
|
-
|
|
101
|
-
if (height === styles.height) {
|
|
157
|
+
if (width === styles.width || height === styles.height) {
|
|
102
158
|
setStyles({});
|
|
103
|
-
} else {
|
|
104
|
-
mergeStyles({ height });
|
|
105
159
|
}
|
|
106
160
|
onTransitionEnd();
|
|
107
|
-
} else if (styles.height ===
|
|
108
|
-
|
|
161
|
+
} else if (styles.width === "0px" || styles.height === "0px") {
|
|
162
|
+
const { x, y } = getCollapsedStyles();
|
|
163
|
+
if (axis === "x")
|
|
164
|
+
setStyles(x);
|
|
165
|
+
else
|
|
166
|
+
setStyles(y);
|
|
109
167
|
onTransitionEnd();
|
|
110
168
|
}
|
|
111
169
|
};
|
|
@@ -124,5 +182,6 @@ function useCollapse({
|
|
|
124
182
|
}
|
|
125
183
|
|
|
126
184
|
exports.getElementHeight = getElementHeight;
|
|
185
|
+
exports.getElementWidth = getElementWidth;
|
|
127
186
|
exports.useCollapse = useCollapse;
|
|
128
187
|
//# sourceMappingURL=use-collapse.js.map
|