@mantine/core 7.1.5 → 7.2.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (144) hide show
  1. package/cjs/components/ActionIcon/ActionIcon.js +1 -0
  2. package/cjs/components/ActionIcon/ActionIcon.js.map +1 -1
  3. package/cjs/components/Button/Button.js +2 -1
  4. package/cjs/components/Button/Button.js.map +1 -1
  5. package/cjs/components/Checkbox/Checkbox.js +15 -10
  6. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  7. package/cjs/components/Chip/Chip.js.map +1 -1
  8. package/cjs/components/Chip/ChipGroup/ChipGroup.js.map +1 -1
  9. package/cjs/components/ColorInput/ColorInput.js +1 -1
  10. package/cjs/components/ColorInput/ColorInput.js.map +1 -1
  11. package/cjs/components/FileInput/FileInput.js.map +1 -1
  12. package/cjs/components/Flex/Flex.js +2 -2
  13. package/cjs/components/Flex/Flex.js.map +1 -1
  14. package/cjs/components/Input/Input.js.map +1 -1
  15. package/cjs/components/Loader/Loader.js +7 -2
  16. package/cjs/components/Loader/Loader.js.map +1 -1
  17. package/cjs/components/NativeSelect/NativeSelect.js.map +1 -1
  18. package/cjs/components/NumberFormatter/NumberFormatter.js +56 -0
  19. package/cjs/components/NumberFormatter/NumberFormatter.js.map +1 -0
  20. package/cjs/components/PasswordInput/PasswordInput.js +5 -6
  21. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  22. package/cjs/components/PillsInput/PillsInput.js.map +1 -1
  23. package/cjs/components/Radio/Radio.js +14 -10
  24. package/cjs/components/Radio/Radio.js.map +1 -1
  25. package/cjs/components/Table/Table.components.js +4 -1
  26. package/cjs/components/Table/Table.components.js.map +1 -1
  27. package/cjs/components/Table/Table.context.js.map +1 -1
  28. package/cjs/components/Table/Table.js +21 -5
  29. package/cjs/components/Table/Table.js.map +1 -1
  30. package/cjs/components/Table/Table.module.css.js +1 -1
  31. package/cjs/components/Table/TableDataRenderer.js +19 -0
  32. package/cjs/components/Table/TableDataRenderer.js.map +1 -0
  33. package/cjs/components/TextInput/TextInput.js.map +1 -1
  34. package/cjs/components/Textarea/Textarea.js.map +1 -1
  35. package/cjs/components/Transition/transitions.js +8 -8
  36. package/cjs/components/Transition/transitions.js.map +1 -1
  37. package/cjs/core/Box/Box.js +6 -0
  38. package/cjs/core/Box/Box.js.map +1 -1
  39. package/cjs/core/Box/style-props/extract-style-props/extract-style-props.js +9 -3
  40. package/cjs/core/Box/style-props/extract-style-props/extract-style-props.js.map +1 -1
  41. package/cjs/core/MantineProvider/color-functions/default-variant-colors-resolver/default-variant-colors-resolver.js.map +1 -1
  42. package/cjs/core/MantineProvider/use-mantine-color-scheme/use-mantine-color-scheme.js +5 -3
  43. package/cjs/core/MantineProvider/use-mantine-color-scheme/use-mantine-color-scheme.js.map +1 -1
  44. package/cjs/core/RemoveScroll.js +11 -0
  45. package/cjs/core/RemoveScroll.js.map +1 -0
  46. package/cjs/index.css +2 -2
  47. package/cjs/index.js +2 -0
  48. package/cjs/index.js.map +1 -1
  49. package/esm/components/ActionIcon/ActionIcon.mjs +1 -0
  50. package/esm/components/ActionIcon/ActionIcon.mjs.map +1 -1
  51. package/esm/components/Button/Button.mjs +2 -1
  52. package/esm/components/Button/Button.mjs.map +1 -1
  53. package/esm/components/Checkbox/Checkbox.mjs +15 -10
  54. package/esm/components/Checkbox/Checkbox.mjs.map +1 -1
  55. package/esm/components/Chip/Chip.mjs.map +1 -1
  56. package/esm/components/Chip/ChipGroup/ChipGroup.mjs.map +1 -1
  57. package/esm/components/ColorInput/ColorInput.mjs +1 -1
  58. package/esm/components/ColorInput/ColorInput.mjs.map +1 -1
  59. package/esm/components/FileInput/FileInput.mjs.map +1 -1
  60. package/esm/components/Flex/Flex.mjs +2 -2
  61. package/esm/components/Flex/Flex.mjs.map +1 -1
  62. package/esm/components/Input/Input.mjs.map +1 -1
  63. package/esm/components/Loader/Loader.mjs +7 -2
  64. package/esm/components/Loader/Loader.mjs.map +1 -1
  65. package/esm/components/NativeSelect/NativeSelect.mjs.map +1 -1
  66. package/esm/components/NumberFormatter/NumberFormatter.mjs +48 -0
  67. package/esm/components/NumberFormatter/NumberFormatter.mjs.map +1 -0
  68. package/esm/components/PasswordInput/PasswordInput.mjs +5 -6
  69. package/esm/components/PasswordInput/PasswordInput.mjs.map +1 -1
  70. package/esm/components/PillsInput/PillsInput.mjs.map +1 -1
  71. package/esm/components/Radio/Radio.mjs +14 -10
  72. package/esm/components/Radio/Radio.mjs.map +1 -1
  73. package/esm/components/Table/Table.components.mjs +4 -1
  74. package/esm/components/Table/Table.components.mjs.map +1 -1
  75. package/esm/components/Table/Table.context.mjs.map +1 -1
  76. package/esm/components/Table/Table.mjs +21 -5
  77. package/esm/components/Table/Table.mjs.map +1 -1
  78. package/esm/components/Table/Table.module.mjs +1 -1
  79. package/esm/components/Table/TableDataRenderer.mjs +11 -0
  80. package/esm/components/Table/TableDataRenderer.mjs.map +1 -0
  81. package/esm/components/TextInput/TextInput.mjs.map +1 -1
  82. package/esm/components/Textarea/Textarea.mjs.map +1 -1
  83. package/esm/components/Transition/transitions.mjs +8 -8
  84. package/esm/components/Transition/transitions.mjs.map +1 -1
  85. package/esm/core/Box/Box.mjs +6 -0
  86. package/esm/core/Box/Box.mjs.map +1 -1
  87. package/esm/core/Box/style-props/extract-style-props/extract-style-props.mjs +9 -3
  88. package/esm/core/Box/style-props/extract-style-props/extract-style-props.mjs.map +1 -1
  89. package/esm/core/MantineProvider/color-functions/default-variant-colors-resolver/default-variant-colors-resolver.mjs.map +1 -1
  90. package/esm/core/MantineProvider/use-mantine-color-scheme/use-mantine-color-scheme.mjs +5 -3
  91. package/esm/core/MantineProvider/use-mantine-color-scheme/use-mantine-color-scheme.mjs.map +1 -1
  92. package/esm/core/RemoveScroll.mjs +7 -0
  93. package/esm/core/RemoveScroll.mjs.map +1 -0
  94. package/esm/index.css +2 -2
  95. package/esm/index.layer.css +2 -2
  96. package/esm/index.mjs +1 -0
  97. package/esm/index.mjs.map +1 -1
  98. package/esm/styles/ActionIcon.css +1 -1
  99. package/esm/styles/ActionIcon.layer.css +1 -1
  100. package/esm/styles/Button.css +1 -1
  101. package/esm/styles/Button.layer.css +1 -1
  102. package/esm/styles/Checkbox.css +1 -1
  103. package/esm/styles/Checkbox.layer.css +1 -1
  104. package/esm/styles/ColorPicker.css +1 -1
  105. package/esm/styles/ColorPicker.layer.css +1 -1
  106. package/esm/styles/Radio.css +1 -1
  107. package/esm/styles/Radio.layer.css +1 -1
  108. package/esm/styles/Rating.css +1 -1
  109. package/esm/styles/Rating.layer.css +1 -1
  110. package/esm/styles/Table.css +1 -1
  111. package/esm/styles/Table.layer.css +1 -1
  112. package/esm/styles/global.css +1 -1
  113. package/esm/styles/global.layer.css +1 -1
  114. package/lib/components/ActionIcon/ActionIcon.d.ts +1 -1
  115. package/lib/components/Button/Button.d.ts +1 -1
  116. package/lib/components/Checkbox/Checkbox.d.ts +4 -2
  117. package/lib/components/Chip/Chip.d.ts +4 -4
  118. package/lib/components/Chip/ChipGroup/ChipGroup.d.ts +2 -2
  119. package/lib/components/FileInput/FileInput.d.ts +3 -4
  120. package/lib/components/Flex/Flex.d.ts +24 -9
  121. package/lib/components/Input/Input.d.ts +3 -1
  122. package/lib/components/Input/use-input-props.d.ts +4 -4
  123. package/lib/components/Loader/Loader.d.ts +2 -0
  124. package/lib/components/NativeSelect/NativeSelect.d.ts +3 -4
  125. package/lib/components/NumberFormatter/NumberFormatter.d.ts +34 -0
  126. package/lib/components/NumberFormatter/index.d.ts +2 -0
  127. package/lib/components/PasswordInput/PasswordInput.d.ts +3 -4
  128. package/lib/components/PillsInput/PillsInput.d.ts +6 -4
  129. package/lib/components/Radio/Radio.d.ts +3 -1
  130. package/lib/components/Table/Table.components.d.ts +1 -0
  131. package/lib/components/Table/Table.context.d.ts +1 -0
  132. package/lib/components/Table/Table.d.ts +16 -1
  133. package/lib/components/Table/TableDataRenderer.d.ts +8 -0
  134. package/lib/components/Table/index.d.ts +1 -1
  135. package/lib/components/TextInput/TextInput.d.ts +3 -4
  136. package/lib/components/Textarea/Textarea.d.ts +4 -4
  137. package/lib/components/index.d.ts +1 -0
  138. package/lib/core/Box/Box.d.ts +4 -0
  139. package/lib/core/MantineProvider/color-functions/default-variant-colors-resolver/default-variant-colors-resolver.d.ts +1 -0
  140. package/lib/core/MantineProvider/use-mantine-color-scheme/use-computed-color-scheme.d.ts +1 -1
  141. package/lib/core/MantineProvider/use-mantine-color-scheme/use-mantine-color-scheme.d.ts +3 -1
  142. package/lib/core/MantineType.d.ts +3 -0
  143. package/lib/core/RemoveScroll.d.ts +1 -0
  144. package/package.json +2 -2
@@ -64,6 +64,7 @@ const varsResolver = createVarsResolver.createVarsResolver(
64
64
  "--ai-radius": radius === void 0 ? void 0 : getSize.getRadius(radius),
65
65
  "--ai-bg": color || variant ? colors.background : void 0,
66
66
  "--ai-hover": color || variant ? colors.hover : void 0,
67
+ "--ai-hover-color": color || variant ? colors.hoverColor : void 0,
67
68
  "--ai-color": color || variant ? colors.color : void 0,
68
69
  "--ai-bd": color || variant ? colors.border : void 0
69
70
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ActionIcon.js","sources":["../../../src/components/ActionIcon/ActionIcon.tsx"],"sourcesContent":["import React from 'react';\nimport {\n BoxProps,\n useProps,\n StylesApiProps,\n useStyles,\n MantineSize,\n MantineColor,\n MantineGradient,\n getRadius,\n polymorphicFactory,\n getSize,\n createVarsResolver,\n MantineRadius,\n PolymorphicFactory,\n} from '../../core';\nimport { UnstyledButton } from '../UnstyledButton';\nimport { LoaderProps, Loader } from '../Loader';\nimport { ActionIconGroup } from './ActionIconGroup/ActionIconGroup';\nimport classes from './ActionIcon.module.css';\n\nexport type ActionIconVariant =\n | 'filled'\n | 'light'\n | 'outline'\n | 'transparent'\n | 'white'\n | 'subtle'\n | 'default'\n | 'gradient';\n\nexport type ActionIconStylesNames = 'root' | 'loader';\nexport type ActionIconCssVariables = {\n root: '--ai-radius' | '--ai-size' | '--ai-bg' | '--ai-hover' | '--ai-color' | '--ai-bd';\n};\n\nexport interface ActionIconProps extends BoxProps, StylesApiProps<ActionIconFactory> {\n 'data-disabled'?: boolean;\n __staticSelector?: string;\n\n /** Determines whether `Loader` component should be displayed instead of the `children`, `false` by default */\n loading?: boolean;\n\n /** Props added to the `Loader` component (only visible when `loading` prop is set) */\n loaderProps?: LoaderProps;\n\n /** Controls width and height of the button. Numbers are converted to rem. `'md'` by default. */\n size?: MantineSize | (string & {}) | number;\n\n /** Key of `theme.colors` or any valid CSS color. Default value is `theme.primaryColor`. */\n color?: MantineColor;\n\n /** Key of `theme.radius` or any valid CSS value to set border-radius. Numbers are converted to rem. `theme.defaultRadius` by default. */\n radius?: MantineRadius;\n\n /** Gradient data used when `variant=\"gradient\"`, default value is `theme.defaultGradient` */\n gradient?: MantineGradient;\n\n /** Sets `disabled` and `data-disabled` attributes on the button element */\n disabled?: boolean;\n\n /** Icon displayed inside the button */\n children?: React.ReactNode;\n}\n\nexport type ActionIconFactory = PolymorphicFactory<{\n props: ActionIconProps;\n defaultComponent: 'button';\n defaultRef: HTMLButtonElement;\n stylesNames: ActionIconStylesNames;\n variant: ActionIconVariant;\n vars: ActionIconCssVariables;\n staticComponents: {\n Group: typeof ActionIconGroup;\n };\n}>;\n\nconst defaultProps: Partial<ActionIconProps> = {};\n\nconst varsResolver = createVarsResolver<ActionIconFactory>(\n (theme, { size, radius, variant, gradient, color }) => {\n const colors = theme.variantColorResolver({\n color: color || theme.primaryColor,\n theme,\n gradient,\n variant: variant || 'filled',\n });\n\n return {\n root: {\n '--ai-size': getSize(size, 'ai-size'),\n '--ai-radius': radius === undefined ? undefined : getRadius(radius),\n '--ai-bg': color || variant ? colors.background : undefined,\n '--ai-hover': color || variant ? colors.hover : undefined,\n '--ai-color': color || variant ? colors.color : undefined,\n '--ai-bd': color || variant ? colors.border : undefined,\n },\n };\n }\n);\n\nexport const ActionIcon = polymorphicFactory<ActionIconFactory>((_props, ref) => {\n const props = useProps('ActionIcon', defaultProps, _props);\n const {\n className,\n unstyled,\n variant,\n classNames,\n styles,\n style,\n loading,\n loaderProps,\n size,\n color,\n radius,\n __staticSelector,\n gradient,\n vars,\n children,\n disabled,\n 'data-disabled': dataDisabled,\n ...others\n } = props;\n\n const getStyles = useStyles<ActionIconFactory>({\n name: ['ActionIcon', __staticSelector],\n props,\n className,\n style,\n classes,\n classNames,\n styles,\n unstyled,\n vars,\n varsResolver,\n });\n\n return (\n <UnstyledButton\n {...getStyles('root', { active: !disabled && !loading && !dataDisabled })}\n {...others}\n unstyled={unstyled}\n variant={variant}\n size={size}\n disabled={disabled || loading}\n ref={ref}\n mod={{ loading, disabled: disabled || dataDisabled }}\n >\n {loading ? (\n <Loader\n {...getStyles('loader')}\n color=\"var(--ai-color)\"\n size=\"calc(var(--ai-size) * 0.55)\"\n {...loaderProps}\n />\n ) : (\n children\n )}\n </UnstyledButton>\n );\n});\n\nActionIcon.classes = classes;\nActionIcon.displayName = '@mantine/core/ActionIcon';\nActionIcon.Group = ActionIconGroup;\n"],"names":["createVarsResolver","getSize","getRadius","polymorphicFactory","useProps","useStyles","classes","React","UnstyledButton","Loader","ActionIconGroup"],"mappings":"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"}
1
+ {"version":3,"file":"ActionIcon.js","sources":["../../../src/components/ActionIcon/ActionIcon.tsx"],"sourcesContent":["import React from 'react';\nimport {\n BoxProps,\n useProps,\n StylesApiProps,\n useStyles,\n MantineSize,\n MantineColor,\n MantineGradient,\n getRadius,\n polymorphicFactory,\n getSize,\n createVarsResolver,\n MantineRadius,\n PolymorphicFactory,\n} from '../../core';\nimport { UnstyledButton } from '../UnstyledButton';\nimport { LoaderProps, Loader } from '../Loader';\nimport { ActionIconGroup } from './ActionIconGroup/ActionIconGroup';\nimport classes from './ActionIcon.module.css';\n\nexport type ActionIconVariant =\n | 'filled'\n | 'light'\n | 'outline'\n | 'transparent'\n | 'white'\n | 'subtle'\n | 'default'\n | 'gradient';\n\nexport type ActionIconStylesNames = 'root' | 'loader';\nexport type ActionIconCssVariables = {\n root:\n | '--ai-radius'\n | '--ai-size'\n | '--ai-bg'\n | '--ai-hover'\n | '--ai-hover-color'\n | '--ai-color'\n | '--ai-bd';\n};\n\nexport interface ActionIconProps extends BoxProps, StylesApiProps<ActionIconFactory> {\n 'data-disabled'?: boolean;\n __staticSelector?: string;\n\n /** Determines whether `Loader` component should be displayed instead of the `children`, `false` by default */\n loading?: boolean;\n\n /** Props added to the `Loader` component (only visible when `loading` prop is set) */\n loaderProps?: LoaderProps;\n\n /** Controls width and height of the button. Numbers are converted to rem. `'md'` by default. */\n size?: MantineSize | (string & {}) | number;\n\n /** Key of `theme.colors` or any valid CSS color. Default value is `theme.primaryColor`. */\n color?: MantineColor;\n\n /** Key of `theme.radius` or any valid CSS value to set border-radius. Numbers are converted to rem. `theme.defaultRadius` by default. */\n radius?: MantineRadius;\n\n /** Gradient data used when `variant=\"gradient\"`, default value is `theme.defaultGradient` */\n gradient?: MantineGradient;\n\n /** Sets `disabled` and `data-disabled` attributes on the button element */\n disabled?: boolean;\n\n /** Icon displayed inside the button */\n children?: React.ReactNode;\n}\n\nexport type ActionIconFactory = PolymorphicFactory<{\n props: ActionIconProps;\n defaultComponent: 'button';\n defaultRef: HTMLButtonElement;\n stylesNames: ActionIconStylesNames;\n variant: ActionIconVariant;\n vars: ActionIconCssVariables;\n staticComponents: {\n Group: typeof ActionIconGroup;\n };\n}>;\n\nconst defaultProps: Partial<ActionIconProps> = {};\n\nconst varsResolver = createVarsResolver<ActionIconFactory>(\n (theme, { size, radius, variant, gradient, color }) => {\n const colors = theme.variantColorResolver({\n color: color || theme.primaryColor,\n theme,\n gradient,\n variant: variant || 'filled',\n });\n\n return {\n root: {\n '--ai-size': getSize(size, 'ai-size'),\n '--ai-radius': radius === undefined ? undefined : getRadius(radius),\n '--ai-bg': color || variant ? colors.background : undefined,\n '--ai-hover': color || variant ? colors.hover : undefined,\n '--ai-hover-color': color || variant ? colors.hoverColor : undefined,\n '--ai-color': color || variant ? colors.color : undefined,\n '--ai-bd': color || variant ? colors.border : undefined,\n },\n };\n }\n);\n\nexport const ActionIcon = polymorphicFactory<ActionIconFactory>((_props, ref) => {\n const props = useProps('ActionIcon', defaultProps, _props);\n const {\n className,\n unstyled,\n variant,\n classNames,\n styles,\n style,\n loading,\n loaderProps,\n size,\n color,\n radius,\n __staticSelector,\n gradient,\n vars,\n children,\n disabled,\n 'data-disabled': dataDisabled,\n ...others\n } = props;\n\n const getStyles = useStyles<ActionIconFactory>({\n name: ['ActionIcon', __staticSelector],\n props,\n className,\n style,\n classes,\n classNames,\n styles,\n unstyled,\n vars,\n varsResolver,\n });\n\n return (\n <UnstyledButton\n {...getStyles('root', { active: !disabled && !loading && !dataDisabled })}\n {...others}\n unstyled={unstyled}\n variant={variant}\n size={size}\n disabled={disabled || loading}\n ref={ref}\n mod={{ loading, disabled: disabled || dataDisabled }}\n >\n {loading ? (\n <Loader\n {...getStyles('loader')}\n color=\"var(--ai-color)\"\n size=\"calc(var(--ai-size) * 0.55)\"\n {...loaderProps}\n />\n ) : (\n children\n )}\n </UnstyledButton>\n );\n});\n\nActionIcon.classes = classes;\nActionIcon.displayName = '@mantine/core/ActionIcon';\nActionIcon.Group = ActionIconGroup;\n"],"names":["createVarsResolver","getSize","getRadius","polymorphicFactory","useProps","useStyles","classes","React","UnstyledButton","Loader","ActionIconGroup"],"mappings":"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"}
@@ -69,7 +69,8 @@ const varsResolver = createVarsResolver.createVarsResolver(
69
69
  "--button-bg": color || variant ? colors.background : void 0,
70
70
  "--button-hover": color || variant ? colors.hover : void 0,
71
71
  "--button-color": color || variant ? colors.color : void 0,
72
- "--button-bd": color || variant ? colors.border : void 0
72
+ "--button-bd": color || variant ? colors.border : void 0,
73
+ "--button-hover-color": color || variant ? colors.hoverColor : void 0
73
74
  }
74
75
  };
75
76
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Button.js","sources":["../../../src/components/Button/Button.tsx"],"sourcesContent":["import React from 'react';\nimport {\n BoxProps,\n StylesApiProps,\n polymorphicFactory,\n useProps,\n useStyles,\n createVarsResolver,\n PolymorphicFactory,\n MantineSize,\n MantineColor,\n MantineRadius,\n MantineGradient,\n Box,\n getRadius,\n getSize,\n getFontSize,\n} from '../../core';\nimport { UnstyledButton } from '../UnstyledButton';\nimport { Loader, LoaderProps } from '../Loader';\nimport { ButtonGroup } from './ButtonGroup/ButtonGroup';\nimport classes from './Button.module.css';\n\nexport type ButtonStylesNames = 'root' | 'inner' | 'loader' | 'section' | 'label';\nexport type ButtonVariant =\n | 'filled'\n | 'light'\n | 'outline'\n | 'transparent'\n | 'white'\n | 'subtle'\n | 'default'\n | 'gradient';\n\nexport type ButtonCssVariables = {\n root:\n | '--button-justify'\n | '--button-height'\n | '--button-padding-x'\n | '--button-fz'\n | '--button-radius'\n | '--button-bg'\n | '--button-hover'\n | '--button-color'\n | '--button-bd';\n};\n\nexport interface ButtonProps extends BoxProps, StylesApiProps<ButtonFactory> {\n 'data-disabled'?: boolean;\n\n /** Controls button `height`, `font-size` and horizontal `padding`, `'sm'` by default */\n size?: MantineSize | `compact-${MantineSize}` | (string & {});\n\n /** Key of `theme.colors` or any valid CSS color, `theme.primaryColor` by default */\n color?: MantineColor;\n\n /** Sets `justify-content` of `inner` element, can be used to change distribution of sections and label, `'center'` by default */\n justify?: React.CSSProperties['justifyContent'];\n\n /** Content displayed on the left side of the button label */\n leftSection?: React.ReactNode;\n\n /** Content displayed on the right side of the button label */\n rightSection?: React.ReactNode;\n\n /** Determines whether button should take 100% width of its parent container, `false` by default */\n fullWidth?: boolean;\n\n /** Key of `theme.radius` or any valid CSS value to set `border-radius`, `theme.defaultRadius` by default */\n radius?: MantineRadius;\n\n /** Gradient configuration used when `variant=\"gradient\"`, default value is `theme.defaultGradient` */\n gradient?: MantineGradient;\n\n /** Indicates disabled state */\n disabled?: boolean;\n\n /** Button content */\n children?: React.ReactNode;\n\n /** Determines whether the `Loader` component should be displayed over the button */\n loading?: boolean;\n\n /** Props added to the `Loader` component (only visible when `loading` prop is set) */\n loaderProps?: LoaderProps;\n}\n\nexport type ButtonFactory = PolymorphicFactory<{\n props: ButtonProps;\n defaultRef: HTMLButtonElement;\n defaultComponent: 'button';\n stylesNames: ButtonStylesNames;\n vars: ButtonCssVariables;\n variant: ButtonVariant;\n staticComponents: {\n Group: typeof ButtonGroup;\n };\n}>;\n\nconst defaultProps: Partial<ButtonProps> = {};\n\nconst varsResolver = createVarsResolver<ButtonFactory>(\n (theme, { radius, color, gradient, variant, size, justify }) => {\n const colors = theme.variantColorResolver({\n color: color || theme.primaryColor,\n theme,\n gradient,\n variant: variant || 'filled',\n });\n\n return {\n root: {\n '--button-justify': justify,\n '--button-height': getSize(size, 'button-height'),\n '--button-padding-x': getSize(size, 'button-padding-x'),\n '--button-fz': size?.includes('compact')\n ? getFontSize(size.replace('compact-', ''))\n : getFontSize(size),\n '--button-radius': radius === undefined ? undefined : getRadius(radius),\n '--button-bg': color || variant ? colors.background : undefined,\n '--button-hover': color || variant ? colors.hover : undefined,\n '--button-color': color || variant ? colors.color : undefined,\n '--button-bd': color || variant ? colors.border : undefined,\n },\n };\n }\n);\n\nexport const Button = polymorphicFactory<ButtonFactory>((_props, ref) => {\n const props = useProps('Button', defaultProps, _props);\n const {\n style,\n vars,\n className,\n color,\n disabled,\n children,\n leftSection,\n rightSection,\n fullWidth,\n variant,\n radius,\n loading,\n loaderProps,\n gradient,\n classNames,\n styles,\n unstyled,\n 'data-disabled': dataDisabled,\n ...others\n } = props;\n\n const getStyles = useStyles<ButtonFactory>({\n name: 'Button',\n props,\n classes,\n className,\n style,\n classNames,\n styles,\n unstyled,\n vars,\n varsResolver,\n });\n\n const hasLeftSection = !!leftSection;\n const hasRightSection = !!rightSection;\n\n return (\n <UnstyledButton\n ref={ref}\n {...getStyles('root', { active: !disabled && !loading && !dataDisabled })}\n unstyled={unstyled}\n variant={variant}\n disabled={disabled || loading}\n mod={{\n disabled: disabled || dataDisabled,\n loading,\n block: fullWidth,\n 'with-left-section': hasLeftSection,\n 'with-right-section': hasRightSection,\n }}\n {...others}\n >\n <span {...getStyles('inner')}>\n {leftSection && (\n <Box component=\"span\" {...getStyles('section')} mod={{ position: 'left' }}>\n {leftSection}\n </Box>\n )}\n\n {loading && (\n <Box component=\"span\" {...getStyles('loader')}>\n <Loader\n color=\"var(--button-color)\"\n size=\"calc(var(--button-height) / 1.8)\"\n {...loaderProps}\n />\n </Box>\n )}\n\n <Box component=\"span\" mod={{ loading }} {...getStyles('label')}>\n {children}\n </Box>\n\n {rightSection && (\n <Box component=\"span\" {...getStyles('section')} mod={{ position: 'right' }}>\n {rightSection}\n </Box>\n )}\n </span>\n </UnstyledButton>\n );\n});\n\nButton.classes = classes;\nButton.displayName = '@mantine/core/Button';\nButton.Group = ButtonGroup;\n"],"names":["createVarsResolver","getSize","getFontSize","getRadius","polymorphicFactory","useProps","useStyles","classes","React","UnstyledButton","Box","Loader","ButtonGroup"],"mappings":"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"}
1
+ {"version":3,"file":"Button.js","sources":["../../../src/components/Button/Button.tsx"],"sourcesContent":["import React from 'react';\nimport {\n BoxProps,\n StylesApiProps,\n polymorphicFactory,\n useProps,\n useStyles,\n createVarsResolver,\n PolymorphicFactory,\n MantineSize,\n MantineColor,\n MantineRadius,\n MantineGradient,\n Box,\n getRadius,\n getSize,\n getFontSize,\n} from '../../core';\nimport { UnstyledButton } from '../UnstyledButton';\nimport { Loader, LoaderProps } from '../Loader';\nimport { ButtonGroup } from './ButtonGroup/ButtonGroup';\nimport classes from './Button.module.css';\n\nexport type ButtonStylesNames = 'root' | 'inner' | 'loader' | 'section' | 'label';\nexport type ButtonVariant =\n | 'filled'\n | 'light'\n | 'outline'\n | 'transparent'\n | 'white'\n | 'subtle'\n | 'default'\n | 'gradient';\n\nexport type ButtonCssVariables = {\n root:\n | '--button-justify'\n | '--button-height'\n | '--button-padding-x'\n | '--button-fz'\n | '--button-radius'\n | '--button-bg'\n | '--button-hover'\n | '--button-hover-color'\n | '--button-color'\n | '--button-bd';\n};\n\nexport interface ButtonProps extends BoxProps, StylesApiProps<ButtonFactory> {\n 'data-disabled'?: boolean;\n\n /** Controls button `height`, `font-size` and horizontal `padding`, `'sm'` by default */\n size?: MantineSize | `compact-${MantineSize}` | (string & {});\n\n /** Key of `theme.colors` or any valid CSS color, `theme.primaryColor` by default */\n color?: MantineColor;\n\n /** Sets `justify-content` of `inner` element, can be used to change distribution of sections and label, `'center'` by default */\n justify?: React.CSSProperties['justifyContent'];\n\n /** Content displayed on the left side of the button label */\n leftSection?: React.ReactNode;\n\n /** Content displayed on the right side of the button label */\n rightSection?: React.ReactNode;\n\n /** Determines whether button should take 100% width of its parent container, `false` by default */\n fullWidth?: boolean;\n\n /** Key of `theme.radius` or any valid CSS value to set `border-radius`, `theme.defaultRadius` by default */\n radius?: MantineRadius;\n\n /** Gradient configuration used when `variant=\"gradient\"`, default value is `theme.defaultGradient` */\n gradient?: MantineGradient;\n\n /** Indicates disabled state */\n disabled?: boolean;\n\n /** Button content */\n children?: React.ReactNode;\n\n /** Determines whether the `Loader` component should be displayed over the button */\n loading?: boolean;\n\n /** Props added to the `Loader` component (only visible when `loading` prop is set) */\n loaderProps?: LoaderProps;\n}\n\nexport type ButtonFactory = PolymorphicFactory<{\n props: ButtonProps;\n defaultRef: HTMLButtonElement;\n defaultComponent: 'button';\n stylesNames: ButtonStylesNames;\n vars: ButtonCssVariables;\n variant: ButtonVariant;\n staticComponents: {\n Group: typeof ButtonGroup;\n };\n}>;\n\nconst defaultProps: Partial<ButtonProps> = {};\n\nconst varsResolver = createVarsResolver<ButtonFactory>(\n (theme, { radius, color, gradient, variant, size, justify }) => {\n const colors = theme.variantColorResolver({\n color: color || theme.primaryColor,\n theme,\n gradient,\n variant: variant || 'filled',\n });\n\n return {\n root: {\n '--button-justify': justify,\n '--button-height': getSize(size, 'button-height'),\n '--button-padding-x': getSize(size, 'button-padding-x'),\n '--button-fz': size?.includes('compact')\n ? getFontSize(size.replace('compact-', ''))\n : getFontSize(size),\n '--button-radius': radius === undefined ? undefined : getRadius(radius),\n '--button-bg': color || variant ? colors.background : undefined,\n '--button-hover': color || variant ? colors.hover : undefined,\n '--button-color': color || variant ? colors.color : undefined,\n '--button-bd': color || variant ? colors.border : undefined,\n '--button-hover-color': color || variant ? colors.hoverColor : undefined,\n },\n };\n }\n);\n\nexport const Button = polymorphicFactory<ButtonFactory>((_props, ref) => {\n const props = useProps('Button', defaultProps, _props);\n const {\n style,\n vars,\n className,\n color,\n disabled,\n children,\n leftSection,\n rightSection,\n fullWidth,\n variant,\n radius,\n loading,\n loaderProps,\n gradient,\n classNames,\n styles,\n unstyled,\n 'data-disabled': dataDisabled,\n ...others\n } = props;\n\n const getStyles = useStyles<ButtonFactory>({\n name: 'Button',\n props,\n classes,\n className,\n style,\n classNames,\n styles,\n unstyled,\n vars,\n varsResolver,\n });\n\n const hasLeftSection = !!leftSection;\n const hasRightSection = !!rightSection;\n\n return (\n <UnstyledButton\n ref={ref}\n {...getStyles('root', { active: !disabled && !loading && !dataDisabled })}\n unstyled={unstyled}\n variant={variant}\n disabled={disabled || loading}\n mod={{\n disabled: disabled || dataDisabled,\n loading,\n block: fullWidth,\n 'with-left-section': hasLeftSection,\n 'with-right-section': hasRightSection,\n }}\n {...others}\n >\n <span {...getStyles('inner')}>\n {leftSection && (\n <Box component=\"span\" {...getStyles('section')} mod={{ position: 'left' }}>\n {leftSection}\n </Box>\n )}\n\n {loading && (\n <Box component=\"span\" {...getStyles('loader')}>\n <Loader\n color=\"var(--button-color)\"\n size=\"calc(var(--button-height) / 1.8)\"\n {...loaderProps}\n />\n </Box>\n )}\n\n <Box component=\"span\" mod={{ loading }} {...getStyles('label')}>\n {children}\n </Box>\n\n {rightSection && (\n <Box component=\"span\" {...getStyles('section')} mod={{ position: 'right' }}>\n {rightSection}\n </Box>\n )}\n </span>\n </UnstyledButton>\n );\n});\n\nButton.classes = classes;\nButton.displayName = '@mantine/core/Button';\nButton.Group = ButtonGroup;\n"],"names":["createVarsResolver","getSize","getFontSize","getRadius","polymorphicFactory","useProps","useStyles","classes","React","UnstyledButton","Box","Loader","ButtonGroup"],"mappings":"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"}
@@ -58,13 +58,16 @@ const defaultProps = {
58
58
  labelPosition: "right",
59
59
  icon: CheckIcon.CheckboxIcon
60
60
  };
61
- const varsResolver = createVarsResolver.createVarsResolver((theme, { radius, color, size }) => ({
62
- root: {
63
- "--checkbox-size": getSize.getSize(size, "checkbox-size"),
64
- "--checkbox-radius": radius === void 0 ? void 0 : getSize.getRadius(radius),
65
- "--checkbox-color": color ? getThemeColor.getThemeColor(color, theme) : void 0
66
- }
67
- }));
61
+ const varsResolver = createVarsResolver.createVarsResolver(
62
+ (theme, { radius, color, size, iconColor }) => ({
63
+ root: {
64
+ "--checkbox-size": getSize.getSize(size, "checkbox-size"),
65
+ "--checkbox-radius": radius === void 0 ? void 0 : getSize.getRadius(radius),
66
+ "--checkbox-color": color ? getThemeColor.getThemeColor(color, theme) : void 0,
67
+ "--checkbox-icon-color": iconColor ? getThemeColor.getThemeColor(iconColor, theme) : void 0
68
+ }
69
+ })
70
+ );
68
71
  const Checkbox = factory.factory((_props, ref) => {
69
72
  const props = useProps.useProps("Checkbox", defaultProps, _props);
70
73
  const _a = props, {
@@ -89,7 +92,8 @@ const Checkbox = factory.factory((_props, ref) => {
89
92
  variant,
90
93
  indeterminate,
91
94
  icon,
92
- rootRef
95
+ rootRef,
96
+ iconColor
93
97
  } = _a, others = __objRest(_a, [
94
98
  "classNames",
95
99
  "className",
@@ -112,7 +116,8 @@ const Checkbox = factory.factory((_props, ref) => {
112
116
  "variant",
113
117
  "indeterminate",
114
118
  "icon",
115
- "rootRef"
119
+ "rootRef",
120
+ "iconColor"
116
121
  ]);
117
122
  const ctx = CheckboxGroup_context.useCheckboxGroupContext();
118
123
  const _size = size || (ctx == null ? void 0 : ctx.size);
@@ -150,7 +155,7 @@ const Checkbox = factory.factory((_props, ref) => {
150
155
  classNames,
151
156
  styles,
152
157
  unstyled,
153
- "data-checked": contextProps.checked || void 0,
158
+ "data-checked": contextProps.checked || checked || void 0,
154
159
  variant,
155
160
  ref: rootRef
156
161
  }), styleProps), wrapperProps),
@@ -1 +1 @@
1
- {"version":3,"file":"Checkbox.js","sources":["../../../src/components/Checkbox/Checkbox.tsx"],"sourcesContent":["import React from 'react';\nimport { useId } from '@mantine/hooks';\nimport {\n BoxProps,\n StylesApiProps,\n factory,\n ElementProps,\n useProps,\n useStyles,\n MantineColor,\n MantineSize,\n MantineRadius,\n extractStyleProps,\n getRadius,\n getSize,\n getThemeColor,\n createVarsResolver,\n Factory,\n Box,\n} from '../../core';\nimport { InlineInput, InlineInputStylesNames, InlineInputClasses } from '../InlineInput';\nimport { useCheckboxGroupContext } from './CheckboxGroup.context';\nimport { CheckboxGroup } from './CheckboxGroup/CheckboxGroup';\nimport { CheckboxIcon } from './CheckIcon';\nimport classes from './Checkbox.module.css';\n\nexport type CheckboxStylesNames = 'icon' | 'inner' | 'input' | InlineInputStylesNames;\nexport type CheckboxCssVariables = {\n root: '--checkbox-size' | '--checkbox-radius' | '--checkbox-color';\n};\n\nexport interface CheckboxProps\n extends BoxProps,\n StylesApiProps<CheckboxFactory>,\n ElementProps<'input', 'size'> {\n /** Id used to bind input and label, if not passed, unique id will be generated instead */\n id?: string;\n\n /** Checkbox label */\n label?: React.ReactNode;\n\n /** Key of `theme.colors` or any valid CSS color to set input color in checked state, `theme.primaryColor` by default */\n color?: MantineColor;\n\n /** Controls size of all elements */\n size?: MantineSize | (string & {});\n\n /** Key of `theme.radius` or any valid CSS value to set `border-radius,` `theme.defaultRadius` by default */\n radius?: MantineRadius;\n\n /** Props passed down to the root element */\n wrapperProps?: Record<string, any>;\n\n /** Position of the label relative to the input, `'right'` by default */\n labelPosition?: 'left' | 'right';\n\n /** Description displayed below the label */\n description?: React.ReactNode;\n\n /** Error displayed below the label */\n error?: React.ReactNode;\n\n /** Indeterminate state of checkbox, if set, `checked` prop is ignored */\n indeterminate?: boolean;\n\n /** Icon rendered when checkbox has checked or indeterminate state */\n icon?: React.FC<{ indeterminate: boolean | undefined; className: string }>;\n\n /** Assigns ref of the root element, can be used with `Tooltip` and other similar components */\n rootRef?: React.ForwardedRef<HTMLDivElement>;\n}\n\nexport type CheckboxFactory = Factory<{\n props: CheckboxProps;\n ref: HTMLInputElement;\n stylesNames: CheckboxStylesNames;\n vars: CheckboxCssVariables;\n staticComponents: {\n Group: typeof CheckboxGroup;\n };\n}>;\n\nconst defaultProps: Partial<CheckboxProps> = {\n labelPosition: 'right',\n icon: CheckboxIcon,\n};\n\nconst varsResolver = createVarsResolver<CheckboxFactory>((theme, { radius, color, size }) => ({\n root: {\n '--checkbox-size': getSize(size, 'checkbox-size'),\n '--checkbox-radius': radius === undefined ? undefined : getRadius(radius),\n '--checkbox-color': color ? getThemeColor(color, theme) : undefined,\n },\n}));\n\nexport const Checkbox = factory<CheckboxFactory>((_props, ref) => {\n const props = useProps('Checkbox', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n color,\n label,\n id,\n size,\n radius,\n wrapperProps,\n children,\n checked,\n labelPosition,\n description,\n error,\n disabled,\n variant,\n indeterminate,\n icon,\n rootRef,\n ...others\n } = props;\n\n const ctx = useCheckboxGroupContext();\n const _size = size || ctx?.size;\n const Icon = icon!;\n\n const getStyles = useStyles<CheckboxFactory>({\n name: 'Checkbox',\n props,\n classes,\n className,\n style,\n classNames,\n styles,\n unstyled,\n vars,\n varsResolver,\n });\n\n const { styleProps, rest } = extractStyleProps(others);\n const uuid = useId(id);\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 <InlineInput\n {...getStyles('root')}\n __staticSelector=\"Checkbox\"\n __stylesApiProps={props}\n id={uuid}\n size={_size}\n labelPosition={labelPosition}\n label={label}\n description={description}\n error={error}\n disabled={disabled}\n classNames={classNames}\n styles={styles}\n unstyled={unstyled}\n data-checked={contextProps.checked || undefined}\n variant={variant}\n ref={rootRef}\n {...styleProps}\n {...wrapperProps}\n >\n <Box {...getStyles('inner')} mod={{ 'data-label-position': labelPosition }}>\n <Box\n component=\"input\"\n id={uuid}\n ref={ref}\n checked={checked}\n disabled={disabled}\n mod={{ error: !!error, indeterminate }}\n {...getStyles('input', { focusable: true })}\n {...rest}\n {...contextProps}\n type=\"checkbox\"\n />\n\n <Icon indeterminate={indeterminate} {...getStyles('icon')} />\n </Box>\n </InlineInput>\n );\n});\n\nCheckbox.classes = { ...classes, ...InlineInputClasses };\nCheckbox.displayName = '@mantine/core/Checkbox';\nCheckbox.Group = CheckboxGroup;\n"],"names":["CheckboxIcon","createVarsResolver","getSize","getRadius","getThemeColor","factory","useProps","useCheckboxGroupContext","useStyles","classes","extractStyleProps","useId","React","InlineInput","Box","InlineInputClasses","CheckboxGroup"],"mappings":"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"}
1
+ {"version":3,"file":"Checkbox.js","sources":["../../../src/components/Checkbox/Checkbox.tsx"],"sourcesContent":["import React from 'react';\nimport { useId } from '@mantine/hooks';\nimport {\n BoxProps,\n StylesApiProps,\n factory,\n ElementProps,\n useProps,\n useStyles,\n MantineColor,\n MantineSize,\n MantineRadius,\n extractStyleProps,\n getRadius,\n getSize,\n getThemeColor,\n createVarsResolver,\n Factory,\n Box,\n} from '../../core';\nimport { InlineInput, InlineInputStylesNames, InlineInputClasses } from '../InlineInput';\nimport { useCheckboxGroupContext } from './CheckboxGroup.context';\nimport { CheckboxGroup } from './CheckboxGroup/CheckboxGroup';\nimport { CheckboxIcon } from './CheckIcon';\nimport classes from './Checkbox.module.css';\n\nexport type CheckboxStylesNames = 'icon' | 'inner' | 'input' | InlineInputStylesNames;\nexport type CheckboxCssVariables = {\n root: '--checkbox-size' | '--checkbox-radius' | '--checkbox-color' | '--checkbox-icon-color';\n};\n\nexport interface CheckboxProps\n extends BoxProps,\n StylesApiProps<CheckboxFactory>,\n ElementProps<'input', 'size'> {\n /** Id used to bind input and label, if not passed, unique id will be generated instead */\n id?: string;\n\n /** Checkbox label */\n label?: React.ReactNode;\n\n /** Key of `theme.colors` or any valid CSS color to set input background color in checked state, `theme.primaryColor` by default */\n color?: MantineColor;\n\n /** Controls size of all elements */\n size?: MantineSize | (string & {});\n\n /** Key of `theme.radius` or any valid CSS value to set `border-radius,` `theme.defaultRadius` by default */\n radius?: MantineRadius;\n\n /** Props passed down to the root element */\n wrapperProps?: Record<string, any>;\n\n /** Position of the label relative to the input, `'right'` by default */\n labelPosition?: 'left' | 'right';\n\n /** Description displayed below the label */\n description?: React.ReactNode;\n\n /** Error displayed below the label */\n error?: React.ReactNode;\n\n /** Indeterminate state of checkbox, if set, `checked` prop is ignored */\n indeterminate?: boolean;\n\n /** Icon rendered when checkbox has checked or indeterminate state */\n icon?: React.FC<{ indeterminate: boolean | undefined; className: string }>;\n\n /** Assigns ref of the root element, can be used with `Tooltip` and other similar components */\n rootRef?: React.ForwardedRef<HTMLDivElement>;\n\n /** Key of `theme.colors` or any valid CSS color to set icon color, `theme.white` by default */\n iconColor?: MantineColor;\n}\n\nexport type CheckboxFactory = Factory<{\n props: CheckboxProps;\n ref: HTMLInputElement;\n stylesNames: CheckboxStylesNames;\n vars: CheckboxCssVariables;\n staticComponents: {\n Group: typeof CheckboxGroup;\n };\n}>;\n\nconst defaultProps: Partial<CheckboxProps> = {\n labelPosition: 'right',\n icon: CheckboxIcon,\n};\n\nconst varsResolver = createVarsResolver<CheckboxFactory>(\n (theme, { radius, color, size, iconColor }) => ({\n root: {\n '--checkbox-size': getSize(size, 'checkbox-size'),\n '--checkbox-radius': radius === undefined ? undefined : getRadius(radius),\n '--checkbox-color': color ? getThemeColor(color, theme) : undefined,\n '--checkbox-icon-color': iconColor ? getThemeColor(iconColor, theme) : undefined,\n },\n })\n);\n\nexport const Checkbox = factory<CheckboxFactory>((_props, ref) => {\n const props = useProps('Checkbox', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n color,\n label,\n id,\n size,\n radius,\n wrapperProps,\n children,\n checked,\n labelPosition,\n description,\n error,\n disabled,\n variant,\n indeterminate,\n icon,\n rootRef,\n iconColor,\n ...others\n } = props;\n\n const ctx = useCheckboxGroupContext();\n const _size = size || ctx?.size;\n const Icon = icon!;\n\n const getStyles = useStyles<CheckboxFactory>({\n name: 'Checkbox',\n props,\n classes,\n className,\n style,\n classNames,\n styles,\n unstyled,\n vars,\n varsResolver,\n });\n\n const { styleProps, rest } = extractStyleProps(others);\n const uuid = useId(id);\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 <InlineInput\n {...getStyles('root')}\n __staticSelector=\"Checkbox\"\n __stylesApiProps={props}\n id={uuid}\n size={_size}\n labelPosition={labelPosition}\n label={label}\n description={description}\n error={error}\n disabled={disabled}\n classNames={classNames}\n styles={styles}\n unstyled={unstyled}\n data-checked={contextProps.checked || checked || undefined}\n variant={variant}\n ref={rootRef}\n {...styleProps}\n {...wrapperProps}\n >\n <Box {...getStyles('inner')} mod={{ 'data-label-position': labelPosition }}>\n <Box\n component=\"input\"\n id={uuid}\n ref={ref}\n checked={checked}\n disabled={disabled}\n mod={{ error: !!error, indeterminate }}\n {...getStyles('input', { focusable: true })}\n {...rest}\n {...contextProps}\n type=\"checkbox\"\n />\n\n <Icon indeterminate={indeterminate} {...getStyles('icon')} />\n </Box>\n </InlineInput>\n );\n});\n\nCheckbox.classes = { ...classes, ...InlineInputClasses };\nCheckbox.displayName = '@mantine/core/Checkbox';\nCheckbox.Group = CheckboxGroup;\n"],"names":["CheckboxIcon","createVarsResolver","getSize","getRadius","getThemeColor","factory","useProps","useCheckboxGroupContext","useStyles","classes","extractStyleProps","useId","React","InlineInput","Box","InlineInputClasses","CheckboxGroup"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Chip.js","sources":["../../../src/components/Chip/Chip.tsx"],"sourcesContent":["import React from 'react';\nimport { useId, useUncontrolled } from '@mantine/hooks';\nimport {\n Box,\n BoxProps,\n StylesApiProps,\n factory,\n ElementProps,\n useProps,\n useStyles,\n createVarsResolver,\n Factory,\n MantineRadius,\n MantineSize,\n MantineColor,\n extractStyleProps,\n getSize,\n getRadius,\n getFontSize,\n} from '../../core';\nimport { CheckIcon } from '../Checkbox';\nimport { useChipGroupContext } from './ChipGroup.context';\nimport { ChipGroup } from './ChipGroup/ChipGroup';\nimport classes from './Chip.module.css';\n\nexport type ChipStylesNames = 'root' | 'input' | 'iconWrapper' | 'checkIcon' | 'label';\nexport type ChipVariant = 'outline' | 'filled' | 'light';\nexport type ChipCssVariables = {\n root:\n | '--chip-fz'\n | '--chip-size'\n | '--chip-icon-size'\n | '--chip-padding'\n | '--chip-checked-padding'\n | '--chip-radius'\n | '--chip-bg'\n | '--chip-hover'\n | '--chip-color'\n | '--chip-bd'\n | '--chip-spacing';\n};\n\nexport interface ChipProps\n extends BoxProps,\n StylesApiProps<ChipFactory>,\n ElementProps<'input', 'size' | 'onChange'> {\n /** Key of `theme.radius` or any valid CSS value to set `border-radius`, `'xl'` by default */\n radius?: MantineRadius;\n\n /** Controls various properties, `'sm'` by default */\n size?: MantineSize;\n\n /** Chip input type */\n type?: 'radio' | 'checkbox';\n\n /** Chip label */\n children: React.ReactNode;\n\n /** Checked state for controlled component */\n checked?: boolean;\n\n /** Default checked state for uncontrolled component */\n defaultChecked?: boolean;\n\n /** Calls when checked state changes */\n onChange?: (checked: boolean) => void;\n\n /** Key of `theme.colors` or any valid CSS color, `theme.primaryColor` */\n color?: MantineColor;\n\n /** Static id to bind input with label */\n id?: string;\n\n /** Props passed down to the wrapper element */\n wrapperProps?: Record<string, any>;\n\n /** Replaces default icon */\n icon?: React.ReactNode;\n\n /** Assigns ref of the root element, can be used with `Tooltip` and other similar components */\n rootRef?: React.ForwardedRef<HTMLDivElement>;\n}\n\nexport type ChipFactory = Factory<{\n props: ChipProps;\n ref: HTMLInputElement;\n stylesNames: ChipStylesNames;\n vars: ChipCssVariables;\n variant: ChipVariant;\n staticComponents: {\n Group: typeof ChipGroup;\n };\n}>;\n\nconst defaultProps: Partial<ChipProps> = {\n type: 'checkbox',\n};\n\nconst varsResolver = createVarsResolver<ChipFactory>((theme, { size, radius, variant, color }) => {\n const colors = theme.variantColorResolver({\n color: color || theme.primaryColor,\n theme,\n variant: variant!,\n });\n\n return {\n root: {\n '--chip-fz': getFontSize(size),\n '--chip-size': getSize(size, 'chip-size'),\n '--chip-radius': radius === undefined ? undefined : getRadius(radius),\n '--chip-checked-padding': getSize(size, 'chip-checked-padding'),\n '--chip-padding': getSize(size, 'chip-padding'),\n '--chip-icon-size': getSize(size, 'chip-icon-size'),\n '--chip-bg': color || variant ? colors.background : undefined,\n '--chip-hover': color || variant ? colors.hover : undefined,\n '--chip-color': color || variant ? colors.color : undefined,\n '--chip-bd': color || variant ? colors.border : undefined,\n '--chip-spacing': getSize(size, 'chip-spacing'),\n },\n };\n});\n\nexport const Chip = factory<ChipFactory>((_props, ref) => {\n const props = useProps('Chip', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n id,\n checked,\n defaultChecked,\n onChange,\n value,\n wrapperProps,\n type,\n disabled,\n children,\n size,\n variant,\n icon,\n rootRef,\n ...others\n } = props;\n\n const getStyles = useStyles<ChipFactory>({\n name: 'Chip',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n vars,\n varsResolver,\n });\n\n const ctx = useChipGroupContext();\n const uuid = useId(id);\n const { styleProps, rest } = extractStyleProps(others);\n\n const [_value, setValue] = useUncontrolled({\n value: checked,\n defaultValue: defaultChecked,\n finalValue: false,\n onChange,\n });\n\n const contextProps = ctx\n ? {\n checked: ctx.isChipSelected(value as string),\n onChange: ctx.onChange,\n type: ctx.multiple ? 'checkbox' : 'radio',\n }\n : {};\n\n const _checked = contextProps.checked || _value;\n\n return (\n <Box\n size={size}\n variant={variant}\n ref={rootRef}\n {...getStyles('root')}\n {...styleProps}\n {...wrapperProps}\n >\n <input\n type={type}\n {...getStyles('input')}\n checked={_checked}\n onChange={(event) => setValue(event.currentTarget.checked)}\n id={uuid}\n disabled={disabled}\n ref={ref}\n value={value}\n {...contextProps}\n {...rest}\n />\n\n <label\n htmlFor={uuid}\n data-checked={_checked || undefined}\n data-disabled={disabled || undefined}\n {...getStyles('label', { variant: variant || 'filled' })}\n >\n {_checked && (\n <span {...getStyles('iconWrapper')}>\n {icon || <CheckIcon {...getStyles('checkIcon')} />}\n </span>\n )}\n {children}\n </label>\n </Box>\n );\n});\n\nChip.classes = classes;\nChip.displayName = '@mantine/core/Chip';\nChip.Group = ChipGroup;\n"],"names":["createVarsResolver","getFontSize","getSize","getRadius","factory","useProps","useStyles","classes","useChipGroupContext","useId","extractStyleProps","useUncontrolled","React","Box","CheckIcon","ChipGroup"],"mappings":"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"}
1
+ {"version":3,"file":"Chip.js","sources":["../../../src/components/Chip/Chip.tsx"],"sourcesContent":["import React from 'react';\nimport { useId, useUncontrolled } from '@mantine/hooks';\nimport {\n Box,\n BoxProps,\n StylesApiProps,\n factory,\n ElementProps,\n useProps,\n useStyles,\n createVarsResolver,\n Factory,\n MantineRadius,\n MantineSize,\n MantineColor,\n extractStyleProps,\n getSize,\n getRadius,\n getFontSize,\n} from '../../core';\nimport { CheckIcon } from '../Checkbox';\nimport { useChipGroupContext } from './ChipGroup.context';\nimport { ChipGroup } from './ChipGroup/ChipGroup';\nimport classes from './Chip.module.css';\n\nexport type ChipStylesNames = 'root' | 'input' | 'iconWrapper' | 'checkIcon' | 'label';\nexport type ChipVariant = 'outline' | 'filled' | 'light';\nexport type ChipCssVariables = {\n root:\n | '--chip-fz'\n | '--chip-size'\n | '--chip-icon-size'\n | '--chip-padding'\n | '--chip-checked-padding'\n | '--chip-radius'\n | '--chip-bg'\n | '--chip-hover'\n | '--chip-color'\n | '--chip-bd'\n | '--chip-spacing';\n};\n\nexport interface ChipProps\n extends BoxProps,\n StylesApiProps<ChipFactory>,\n ElementProps<'input', 'size' | 'onChange'> {\n /** Key of `theme.radius` or any valid CSS value to set `border-radius`, `'xl'` by default */\n radius?: MantineRadius;\n\n /** Controls various properties related to component size, `'sm'` by default */\n size?: MantineSize;\n\n /** Chip input type, `'checkbox'` by default */\n type?: 'radio' | 'checkbox';\n\n /** Chip label */\n children: React.ReactNode;\n\n /** Checked state for controlled component */\n checked?: boolean;\n\n /** Default checked state for uncontrolled component */\n defaultChecked?: boolean;\n\n /** Calls when checked state changes */\n onChange?: (checked: boolean) => void;\n\n /** Key of `theme.colors` or any valid CSS color, `theme.primaryColor` by default */\n color?: MantineColor;\n\n /** Static id to bind input with label, by default id is randomly generated */\n id?: string;\n\n /** Props passed down to the wrapper element */\n wrapperProps?: Record<string, any>;\n\n /** Replaces default icon */\n icon?: React.ReactNode;\n\n /** Assigns ref of the root element, can be used with `Tooltip` and other similar components */\n rootRef?: React.ForwardedRef<HTMLDivElement>;\n}\n\nexport type ChipFactory = Factory<{\n props: ChipProps;\n ref: HTMLInputElement;\n stylesNames: ChipStylesNames;\n vars: ChipCssVariables;\n variant: ChipVariant;\n staticComponents: {\n Group: typeof ChipGroup;\n };\n}>;\n\nconst defaultProps: Partial<ChipProps> = {\n type: 'checkbox',\n};\n\nconst varsResolver = createVarsResolver<ChipFactory>((theme, { size, radius, variant, color }) => {\n const colors = theme.variantColorResolver({\n color: color || theme.primaryColor,\n theme,\n variant: variant!,\n });\n\n return {\n root: {\n '--chip-fz': getFontSize(size),\n '--chip-size': getSize(size, 'chip-size'),\n '--chip-radius': radius === undefined ? undefined : getRadius(radius),\n '--chip-checked-padding': getSize(size, 'chip-checked-padding'),\n '--chip-padding': getSize(size, 'chip-padding'),\n '--chip-icon-size': getSize(size, 'chip-icon-size'),\n '--chip-bg': color || variant ? colors.background : undefined,\n '--chip-hover': color || variant ? colors.hover : undefined,\n '--chip-color': color || variant ? colors.color : undefined,\n '--chip-bd': color || variant ? colors.border : undefined,\n '--chip-spacing': getSize(size, 'chip-spacing'),\n },\n };\n});\n\nexport const Chip = factory<ChipFactory>((_props, ref) => {\n const props = useProps('Chip', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n id,\n checked,\n defaultChecked,\n onChange,\n value,\n wrapperProps,\n type,\n disabled,\n children,\n size,\n variant,\n icon,\n rootRef,\n ...others\n } = props;\n\n const getStyles = useStyles<ChipFactory>({\n name: 'Chip',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n vars,\n varsResolver,\n });\n\n const ctx = useChipGroupContext();\n const uuid = useId(id);\n const { styleProps, rest } = extractStyleProps(others);\n\n const [_value, setValue] = useUncontrolled({\n value: checked,\n defaultValue: defaultChecked,\n finalValue: false,\n onChange,\n });\n\n const contextProps = ctx\n ? {\n checked: ctx.isChipSelected(value as string),\n onChange: ctx.onChange,\n type: ctx.multiple ? 'checkbox' : 'radio',\n }\n : {};\n\n const _checked = contextProps.checked || _value;\n\n return (\n <Box\n size={size}\n variant={variant}\n ref={rootRef}\n {...getStyles('root')}\n {...styleProps}\n {...wrapperProps}\n >\n <input\n type={type}\n {...getStyles('input')}\n checked={_checked}\n onChange={(event) => setValue(event.currentTarget.checked)}\n id={uuid}\n disabled={disabled}\n ref={ref}\n value={value}\n {...contextProps}\n {...rest}\n />\n\n <label\n htmlFor={uuid}\n data-checked={_checked || undefined}\n data-disabled={disabled || undefined}\n {...getStyles('label', { variant: variant || 'filled' })}\n >\n {_checked && (\n <span {...getStyles('iconWrapper')}>\n {icon || <CheckIcon {...getStyles('checkIcon')} />}\n </span>\n )}\n {children}\n </label>\n </Box>\n );\n});\n\nChip.classes = classes;\nChip.displayName = '@mantine/core/Chip';\nChip.Group = ChipGroup;\n"],"names":["createVarsResolver","getFontSize","getSize","getRadius","factory","useProps","useStyles","classes","useChipGroupContext","useId","extractStyleProps","useUncontrolled","React","Box","CheckIcon","ChipGroup"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ChipGroup.js","sources":["../../../../src/components/Chip/ChipGroup/ChipGroup.tsx"],"sourcesContent":["/* eslint-disable react/no-unused-prop-types */\nimport React from 'react';\nimport { useUncontrolled } from '@mantine/hooks';\nimport { useProps } from '../../../core';\nimport { ChipGroupProvider } from '../ChipGroup.context';\n\nexport interface ChipGroupProps<T extends boolean = false> {\n /** Allow multiple values to be selected at a time */\n multiple?: T;\n\n /** Controlled component value */\n value?: T extends true ? string[] : string | null;\n\n /** Uncontrolled component initial value */\n defaultValue?: T extends true ? string[] : string | null;\n\n /** Called when value changes */\n onChange?: (value: T extends true ? string[] : string) => void;\n\n /** <Chip /> components */\n children?: React.ReactNode;\n}\n\nconst defaultProps: Partial<ChipGroupProps<false>> = {};\n\nexport function ChipGroup<T extends boolean>(props: ChipGroupProps<T>) {\n const { value, defaultValue, onChange, multiple, children } = useProps(\n 'ChipGroup',\n defaultProps as any,\n props\n );\n\n const [_value, setValue] = useUncontrolled<string | null | string[]>({\n value,\n defaultValue,\n finalValue: multiple ? ([] as string[]) : null,\n onChange,\n });\n\n const isChipSelected = (val: string) =>\n Array.isArray(_value) ? _value.includes(val) : val === _value;\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n const val = event.currentTarget.value;\n if (Array.isArray(_value)) {\n setValue(_value.includes(val) ? _value.filter((v) => v !== val) : [..._value, val]);\n } else {\n setValue(val);\n }\n };\n\n return (\n <ChipGroupProvider value={{ isChipSelected, onChange: handleChange, multiple }}>\n {children}\n </ChipGroupProvider>\n );\n}\n\nChipGroup.displayName = '@mantine/core/ChipGroup';\n"],"names":["useProps","useUncontrolled","React","ChipGroupProvider"],"mappings":";;;;;;;;;;;;;;AAIA,MAAM,YAAY,GAAG,EAAE,CAAC;AACjB,SAAS,SAAS,CAAC,KAAK,EAAE;AACjC,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAGA,iBAAQ;AACxE,IAAI,WAAW;AACf,IAAI,YAAY;AAChB,IAAI,KAAK;AACT,GAAG,CAAC;AACJ,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAGC,qBAAe,CAAC;AAC7C,IAAI,KAAK;AACT,IAAI,YAAY;AAChB,IAAI,UAAU,EAAE,QAAQ,GAAG,EAAE,GAAG,IAAI;AACpC,IAAI,QAAQ;AACZ,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,cAAc,GAAG,CAAC,GAAG,KAAK,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,GAAG,KAAK,MAAM,CAAC;AAChG,EAAE,MAAM,YAAY,GAAG,CAAC,KAAK,KAAK;AAClC,IAAI,MAAM,GAAG,GAAG,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC;AAC1C,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;AAC/B,MAAM,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;AAC1F,KAAK,MAAM;AACX,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAC;AACpB,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,uBAAuBC,cAAK,CAAC,aAAa,CAACC,mCAAiB,EAAE,EAAE,KAAK,EAAE,EAAE,cAAc,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;AAC3I,CAAC;AACD,SAAS,CAAC,WAAW,GAAG,yBAAyB;;"}
1
+ {"version":3,"file":"ChipGroup.js","sources":["../../../../src/components/Chip/ChipGroup/ChipGroup.tsx"],"sourcesContent":["/* eslint-disable react/no-unused-prop-types */\nimport React from 'react';\nimport { useUncontrolled } from '@mantine/hooks';\nimport { useProps } from '../../../core';\nimport { ChipGroupProvider } from '../ChipGroup.context';\n\nexport interface ChipGroupProps<T extends boolean = false> {\n /** Determines whether it is allowed to select multiple values, `false` by default */\n multiple?: T;\n\n /** Controlled component value */\n value?: T extends true ? string[] : string | null;\n\n /** Uncontrolled component initial value */\n defaultValue?: T extends true ? string[] : string | null;\n\n /** Called when value changes */\n onChange?: (value: T extends true ? string[] : string) => void;\n\n /** `Chip` components */\n children?: React.ReactNode;\n}\n\nconst defaultProps: Partial<ChipGroupProps<false>> = {};\n\nexport function ChipGroup<T extends boolean>(props: ChipGroupProps<T>) {\n const { value, defaultValue, onChange, multiple, children } = useProps(\n 'ChipGroup',\n defaultProps as any,\n props\n );\n\n const [_value, setValue] = useUncontrolled<string | null | string[]>({\n value,\n defaultValue,\n finalValue: multiple ? ([] as string[]) : null,\n onChange,\n });\n\n const isChipSelected = (val: string) =>\n Array.isArray(_value) ? _value.includes(val) : val === _value;\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n const val = event.currentTarget.value;\n if (Array.isArray(_value)) {\n setValue(_value.includes(val) ? _value.filter((v) => v !== val) : [..._value, val]);\n } else {\n setValue(val);\n }\n };\n\n return (\n <ChipGroupProvider value={{ isChipSelected, onChange: handleChange, multiple }}>\n {children}\n </ChipGroupProvider>\n );\n}\n\nChipGroup.displayName = '@mantine/core/ChipGroup';\n"],"names":["useProps","useUncontrolled","React","ChipGroupProvider"],"mappings":";;;;;;;;;;;;;;AAIA,MAAM,YAAY,GAAG,EAAE,CAAC;AACjB,SAAS,SAAS,CAAC,KAAK,EAAE;AACjC,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAGA,iBAAQ;AACxE,IAAI,WAAW;AACf,IAAI,YAAY;AAChB,IAAI,KAAK;AACT,GAAG,CAAC;AACJ,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAGC,qBAAe,CAAC;AAC7C,IAAI,KAAK;AACT,IAAI,YAAY;AAChB,IAAI,UAAU,EAAE,QAAQ,GAAG,EAAE,GAAG,IAAI;AACpC,IAAI,QAAQ;AACZ,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,cAAc,GAAG,CAAC,GAAG,KAAK,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,GAAG,KAAK,MAAM,CAAC;AAChG,EAAE,MAAM,YAAY,GAAG,CAAC,KAAK,KAAK;AAClC,IAAI,MAAM,GAAG,GAAG,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC;AAC1C,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;AAC/B,MAAM,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;AAC1F,KAAK,MAAM;AACX,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAC;AACpB,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,uBAAuBC,cAAK,CAAC,aAAa,CAACC,mCAAiB,EAAE,EAAE,KAAK,EAAE,EAAE,cAAc,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;AAC3I,CAAC;AACD,SAAS,CAAC,WAAW,GAAG,yBAAyB;;"}
@@ -62,7 +62,7 @@ const defaultProps = {
62
62
  format: "hex",
63
63
  fixOnBlur: true,
64
64
  withPreview: true,
65
- swatchesPerRow: 10,
65
+ swatchesPerRow: 7,
66
66
  withPicker: true,
67
67
  popoverProps: { transitionProps: { transition: "fade", duration: 0 } },
68
68
  withEyeDropper: true
@@ -1 +1 @@
1
- {"version":3,"file":"ColorInput.js","sources":["../../../src/components/ColorInput/ColorInput.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { useDidUpdate, useEyeDropper, useUncontrolled } from '@mantine/hooks';\nimport {\n BoxProps,\n StylesApiProps,\n factory,\n ElementProps,\n Factory,\n useResolvedStylesApi,\n useProps,\n useStyles,\n createVarsResolver,\n getSize,\n} from '../../core';\nimport { InputBase } from '../InputBase';\nimport {\n __ColorPickerProps,\n ColorPickerStylesNames,\n ColorPicker,\n convertHsvaTo,\n isColorValid,\n parseColor,\n} from '../ColorPicker';\nimport { __BaseInputProps, Input, InputVariant, __InputStylesNames, useInputProps } from '../Input';\nimport { Popover, PopoverProps } from '../Popover';\nimport { EyeDropperIcon } from './EyeDropperIcon';\nimport { ActionIcon } from '../ActionIcon';\nimport { ColorSwatch } from '../ColorSwatch';\nimport classes from './ColorInput.module.css';\n\nexport type ColorInputStylesNames =\n | 'dropdown'\n | 'eyeDropperButton'\n | 'eyeDropperIcon'\n | 'colorPreview'\n | ColorPickerStylesNames\n | __InputStylesNames;\n\nexport type ColorInputCssVariables = {\n eyeDropperIcon: '--ci-eye-dropper-icon-size';\n colorPreview: '--ci-preview-size';\n};\n\nexport interface ColorInputProps\n extends BoxProps,\n __BaseInputProps,\n __ColorPickerProps,\n StylesApiProps<ColorInputFactory>,\n ElementProps<'input', 'size' | 'onChange' | 'value' | 'defaultValue'> {\n /** If input is not allowed, the user can only pick value with color picker and swatches, `false` by default */\n disallowInput?: boolean;\n\n /** Determines whether the input value should be reset to the last known valid value when the input loses focus, `true` by default */\n fixOnBlur?: boolean;\n\n /** Props passed down to the Popover component */\n popoverProps?: PopoverProps;\n\n /** Determines whether the preview color swatch should be displayed in the left section of the input, `true` by default */\n withPreview?: boolean;\n\n /** Determines whether eye dropper button should be displayed in the right section, `true` by default */\n withEyeDropper?: boolean;\n\n /** An icon that will replace the default eye dropper icon */\n eyeDropperIcon?: React.ReactNode;\n\n /** Determines whether the dropdown should be closed when one of the color swatches is clicked, `false` by default */\n closeOnColorSwatchClick?: boolean;\n\n /** Props passed down to the eye dropper button */\n eyeDropperButtonProps?: Record<string, any>;\n}\n\nexport type ColorInputFactory = Factory<{\n props: ColorInputProps;\n ref: HTMLInputElement;\n stylesNames: ColorInputStylesNames;\n vars: ColorInputCssVariables;\n variant: InputVariant;\n}>;\n\nconst defaultProps: Partial<ColorInputProps> = {\n format: 'hex',\n fixOnBlur: true,\n withPreview: true,\n swatchesPerRow: 10,\n withPicker: true,\n popoverProps: { transitionProps: { transition: 'fade', duration: 0 } },\n withEyeDropper: true,\n};\n\nconst varsResolver = createVarsResolver<ColorInputFactory>((_, { size }) => ({\n eyeDropperIcon: {\n '--ci-eye-dropper-icon-size': getSize(size, 'ci-eye-dropper-icon-size'),\n },\n\n colorPreview: {\n '--ci-preview-size': getSize(size, 'ci-preview-size'),\n },\n}));\n\nexport const ColorInput = factory<ColorInputFactory>((_props, ref) => {\n const props = useProps('ColorInput', defaultProps, _props);\n const {\n classNames,\n styles,\n unstyled,\n disallowInput,\n fixOnBlur,\n popoverProps,\n withPreview,\n withEyeDropper,\n eyeDropperIcon,\n closeOnColorSwatchClick,\n eyeDropperButtonProps,\n value,\n defaultValue,\n onChange,\n onChangeEnd,\n onClick,\n onFocus,\n onBlur,\n inputProps,\n format,\n wrapperProps,\n readOnly,\n withPicker,\n swatches,\n disabled,\n leftSection,\n rightSection,\n swatchesPerRow,\n ...others\n } = useInputProps('ColorInput', defaultProps, _props);\n\n const getStyles = useStyles<ColorInputFactory>({\n name: 'ColorInput',\n props,\n classes,\n classNames,\n styles,\n unstyled,\n rootSelector: 'wrapper',\n vars: props.vars,\n varsResolver,\n });\n\n const { resolvedClassNames, resolvedStyles } = useResolvedStylesApi<ColorInputFactory>({\n classNames,\n styles,\n props,\n });\n\n const [dropdownOpened, setDropdownOpened] = useState(false);\n const [lastValidValue, setLastValidValue] = useState('');\n const [_value, setValue] = useUncontrolled({\n value,\n defaultValue,\n finalValue: '',\n onChange,\n });\n\n const { supported: eyeDropperSupported, open: openEyeDropper } = useEyeDropper();\n\n const eyeDropper = (\n <ActionIcon\n {...eyeDropperButtonProps}\n {...getStyles('eyeDropperButton', {\n className: eyeDropperButtonProps?.className,\n style: eyeDropperButtonProps?.style,\n })}\n variant=\"subtle\"\n color=\"gray\"\n size={inputProps.size}\n unstyled={unstyled}\n onClick={() =>\n openEyeDropper()\n .then((payload) => {\n if (payload?.sRGBHex) {\n const color = convertHsvaTo(format!, parseColor(payload.sRGBHex));\n setValue(color);\n onChangeEnd?.(color);\n }\n })\n .catch(() => {})\n }\n >\n {eyeDropperIcon || <EyeDropperIcon {...getStyles('eyeDropperIcon')} />}\n </ActionIcon>\n );\n\n const handleInputFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n onFocus?.(event);\n setDropdownOpened(true);\n };\n\n const handleInputBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n fixOnBlur && setValue(lastValidValue);\n onBlur?.(event);\n setDropdownOpened(false);\n };\n\n const handleInputClick = (event: React.MouseEvent<HTMLInputElement>) => {\n onClick?.(event);\n setDropdownOpened(true);\n };\n\n useEffect(() => {\n if (isColorValid(_value) || _value.trim() === '') {\n setLastValidValue(_value);\n }\n }, [_value]);\n\n useDidUpdate(() => {\n if (isColorValid(_value)) {\n setValue(convertHsvaTo(format!, parseColor(_value)));\n }\n }, [format]);\n\n return (\n <Input.Wrapper\n {...wrapperProps}\n classNames={resolvedClassNames}\n styles={resolvedStyles}\n __staticSelector=\"ColorInput\"\n >\n <Popover\n __staticSelector=\"ColorInput\"\n position=\"bottom-start\"\n offset={5}\n {...popoverProps}\n opened={dropdownOpened}\n classNames={resolvedClassNames}\n styles={resolvedStyles}\n unstyled={unstyled}\n withRoles={false}\n disabled={\n readOnly || (withPicker === false && (!Array.isArray(swatches) || swatches.length === 0))\n }\n >\n <Popover.Target>\n <Input<'input'>\n autoComplete=\"off\"\n {...others}\n {...inputProps}\n classNames={resolvedClassNames}\n styles={resolvedStyles}\n disabled={disabled}\n ref={ref}\n __staticSelector=\"ColorInput\"\n onFocus={handleInputFocus}\n onBlur={handleInputBlur}\n onClick={handleInputClick}\n spellCheck={false}\n value={_value}\n onChange={(event) => {\n const inputValue = event.currentTarget.value;\n setValue(inputValue);\n if (isColorValid(inputValue)) {\n onChangeEnd?.(convertHsvaTo(format!, parseColor(inputValue)));\n }\n }}\n leftSection={\n leftSection ||\n (withPreview ? (\n <ColorSwatch\n color={isColorValid(_value) ? _value : '#fff'}\n size=\"var(--ci-preview-size)\"\n {...getStyles('colorPreview')}\n />\n ) : null)\n }\n readOnly={disallowInput || readOnly}\n pointer={disallowInput}\n unstyled={unstyled}\n rightSection={\n rightSection ||\n (withEyeDropper && !disabled && !readOnly && eyeDropperSupported ? eyeDropper : null)\n }\n />\n </Popover.Target>\n\n <Popover.Dropdown onMouseDown={(event) => event.preventDefault()} p={inputProps.size}>\n <ColorPicker\n __staticSelector=\"ColorInput\"\n value={_value}\n onChange={setValue}\n onChangeEnd={onChangeEnd}\n format={format}\n swatches={swatches}\n swatchesPerRow={swatchesPerRow}\n withPicker={withPicker}\n size={inputProps.size}\n focusable={false}\n unstyled={unstyled}\n styles={resolvedStyles}\n classNames={resolvedClassNames}\n onColorSwatchClick={() => closeOnColorSwatchClick && setDropdownOpened(false)}\n />\n </Popover.Dropdown>\n </Popover>\n </Input.Wrapper>\n );\n});\n\nColorInput.classes = InputBase.classes;\nColorInput.displayName = '@mantine/core/ColorInput';\n"],"names":["createVarsResolver","getSize","factory","useProps","useInputProps","useStyles","classes","useResolvedStylesApi","useState","useUncontrolled","useEyeDropper","React","ActionIcon","convertHsvaTo","parseColor","EyeDropperIcon","useEffect","isColorValid","useDidUpdate","Input","Popover","ColorSwatch","ColorPicker","InputBase"],"mappings":"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"}
1
+ {"version":3,"file":"ColorInput.js","sources":["../../../src/components/ColorInput/ColorInput.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { useDidUpdate, useEyeDropper, useUncontrolled } from '@mantine/hooks';\nimport {\n BoxProps,\n StylesApiProps,\n factory,\n ElementProps,\n Factory,\n useResolvedStylesApi,\n useProps,\n useStyles,\n createVarsResolver,\n getSize,\n} from '../../core';\nimport { InputBase } from '../InputBase';\nimport {\n __ColorPickerProps,\n ColorPickerStylesNames,\n ColorPicker,\n convertHsvaTo,\n isColorValid,\n parseColor,\n} from '../ColorPicker';\nimport { __BaseInputProps, Input, InputVariant, __InputStylesNames, useInputProps } from '../Input';\nimport { Popover, PopoverProps } from '../Popover';\nimport { EyeDropperIcon } from './EyeDropperIcon';\nimport { ActionIcon } from '../ActionIcon';\nimport { ColorSwatch } from '../ColorSwatch';\nimport classes from './ColorInput.module.css';\n\nexport type ColorInputStylesNames =\n | 'dropdown'\n | 'eyeDropperButton'\n | 'eyeDropperIcon'\n | 'colorPreview'\n | ColorPickerStylesNames\n | __InputStylesNames;\n\nexport type ColorInputCssVariables = {\n eyeDropperIcon: '--ci-eye-dropper-icon-size';\n colorPreview: '--ci-preview-size';\n};\n\nexport interface ColorInputProps\n extends BoxProps,\n __BaseInputProps,\n __ColorPickerProps,\n StylesApiProps<ColorInputFactory>,\n ElementProps<'input', 'size' | 'onChange' | 'value' | 'defaultValue'> {\n /** If input is not allowed, the user can only pick value with color picker and swatches, `false` by default */\n disallowInput?: boolean;\n\n /** Determines whether the input value should be reset to the last known valid value when the input loses focus, `true` by default */\n fixOnBlur?: boolean;\n\n /** Props passed down to the Popover component */\n popoverProps?: PopoverProps;\n\n /** Determines whether the preview color swatch should be displayed in the left section of the input, `true` by default */\n withPreview?: boolean;\n\n /** Determines whether eye dropper button should be displayed in the right section, `true` by default */\n withEyeDropper?: boolean;\n\n /** An icon that will replace the default eye dropper icon */\n eyeDropperIcon?: React.ReactNode;\n\n /** Determines whether the dropdown should be closed when one of the color swatches is clicked, `false` by default */\n closeOnColorSwatchClick?: boolean;\n\n /** Props passed down to the eye dropper button */\n eyeDropperButtonProps?: Record<string, any>;\n}\n\nexport type ColorInputFactory = Factory<{\n props: ColorInputProps;\n ref: HTMLInputElement;\n stylesNames: ColorInputStylesNames;\n vars: ColorInputCssVariables;\n variant: InputVariant;\n}>;\n\nconst defaultProps: Partial<ColorInputProps> = {\n format: 'hex',\n fixOnBlur: true,\n withPreview: true,\n swatchesPerRow: 7,\n withPicker: true,\n popoverProps: { transitionProps: { transition: 'fade', duration: 0 } },\n withEyeDropper: true,\n};\n\nconst varsResolver = createVarsResolver<ColorInputFactory>((_, { size }) => ({\n eyeDropperIcon: {\n '--ci-eye-dropper-icon-size': getSize(size, 'ci-eye-dropper-icon-size'),\n },\n\n colorPreview: {\n '--ci-preview-size': getSize(size, 'ci-preview-size'),\n },\n}));\n\nexport const ColorInput = factory<ColorInputFactory>((_props, ref) => {\n const props = useProps('ColorInput', defaultProps, _props);\n const {\n classNames,\n styles,\n unstyled,\n disallowInput,\n fixOnBlur,\n popoverProps,\n withPreview,\n withEyeDropper,\n eyeDropperIcon,\n closeOnColorSwatchClick,\n eyeDropperButtonProps,\n value,\n defaultValue,\n onChange,\n onChangeEnd,\n onClick,\n onFocus,\n onBlur,\n inputProps,\n format,\n wrapperProps,\n readOnly,\n withPicker,\n swatches,\n disabled,\n leftSection,\n rightSection,\n swatchesPerRow,\n ...others\n } = useInputProps('ColorInput', defaultProps, _props);\n\n const getStyles = useStyles<ColorInputFactory>({\n name: 'ColorInput',\n props,\n classes,\n classNames,\n styles,\n unstyled,\n rootSelector: 'wrapper',\n vars: props.vars,\n varsResolver,\n });\n\n const { resolvedClassNames, resolvedStyles } = useResolvedStylesApi<ColorInputFactory>({\n classNames,\n styles,\n props,\n });\n\n const [dropdownOpened, setDropdownOpened] = useState(false);\n const [lastValidValue, setLastValidValue] = useState('');\n const [_value, setValue] = useUncontrolled({\n value,\n defaultValue,\n finalValue: '',\n onChange,\n });\n\n const { supported: eyeDropperSupported, open: openEyeDropper } = useEyeDropper();\n\n const eyeDropper = (\n <ActionIcon\n {...eyeDropperButtonProps}\n {...getStyles('eyeDropperButton', {\n className: eyeDropperButtonProps?.className,\n style: eyeDropperButtonProps?.style,\n })}\n variant=\"subtle\"\n color=\"gray\"\n size={inputProps.size}\n unstyled={unstyled}\n onClick={() =>\n openEyeDropper()\n .then((payload) => {\n if (payload?.sRGBHex) {\n const color = convertHsvaTo(format!, parseColor(payload.sRGBHex));\n setValue(color);\n onChangeEnd?.(color);\n }\n })\n .catch(() => {})\n }\n >\n {eyeDropperIcon || <EyeDropperIcon {...getStyles('eyeDropperIcon')} />}\n </ActionIcon>\n );\n\n const handleInputFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n onFocus?.(event);\n setDropdownOpened(true);\n };\n\n const handleInputBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n fixOnBlur && setValue(lastValidValue);\n onBlur?.(event);\n setDropdownOpened(false);\n };\n\n const handleInputClick = (event: React.MouseEvent<HTMLInputElement>) => {\n onClick?.(event);\n setDropdownOpened(true);\n };\n\n useEffect(() => {\n if (isColorValid(_value) || _value.trim() === '') {\n setLastValidValue(_value);\n }\n }, [_value]);\n\n useDidUpdate(() => {\n if (isColorValid(_value)) {\n setValue(convertHsvaTo(format!, parseColor(_value)));\n }\n }, [format]);\n\n return (\n <Input.Wrapper\n {...wrapperProps}\n classNames={resolvedClassNames}\n styles={resolvedStyles}\n __staticSelector=\"ColorInput\"\n >\n <Popover\n __staticSelector=\"ColorInput\"\n position=\"bottom-start\"\n offset={5}\n {...popoverProps}\n opened={dropdownOpened}\n classNames={resolvedClassNames}\n styles={resolvedStyles}\n unstyled={unstyled}\n withRoles={false}\n disabled={\n readOnly || (withPicker === false && (!Array.isArray(swatches) || swatches.length === 0))\n }\n >\n <Popover.Target>\n <Input<'input'>\n autoComplete=\"off\"\n {...others}\n {...inputProps}\n classNames={resolvedClassNames}\n styles={resolvedStyles}\n disabled={disabled}\n ref={ref}\n __staticSelector=\"ColorInput\"\n onFocus={handleInputFocus}\n onBlur={handleInputBlur}\n onClick={handleInputClick}\n spellCheck={false}\n value={_value}\n onChange={(event) => {\n const inputValue = event.currentTarget.value;\n setValue(inputValue);\n if (isColorValid(inputValue)) {\n onChangeEnd?.(convertHsvaTo(format!, parseColor(inputValue)));\n }\n }}\n leftSection={\n leftSection ||\n (withPreview ? (\n <ColorSwatch\n color={isColorValid(_value) ? _value : '#fff'}\n size=\"var(--ci-preview-size)\"\n {...getStyles('colorPreview')}\n />\n ) : null)\n }\n readOnly={disallowInput || readOnly}\n pointer={disallowInput}\n unstyled={unstyled}\n rightSection={\n rightSection ||\n (withEyeDropper && !disabled && !readOnly && eyeDropperSupported ? eyeDropper : null)\n }\n />\n </Popover.Target>\n\n <Popover.Dropdown onMouseDown={(event) => event.preventDefault()} p={inputProps.size}>\n <ColorPicker\n __staticSelector=\"ColorInput\"\n value={_value}\n onChange={setValue}\n onChangeEnd={onChangeEnd}\n format={format}\n swatches={swatches}\n swatchesPerRow={swatchesPerRow}\n withPicker={withPicker}\n size={inputProps.size}\n focusable={false}\n unstyled={unstyled}\n styles={resolvedStyles}\n classNames={resolvedClassNames}\n onColorSwatchClick={() => closeOnColorSwatchClick && setDropdownOpened(false)}\n />\n </Popover.Dropdown>\n </Popover>\n </Input.Wrapper>\n );\n});\n\nColorInput.classes = InputBase.classes;\nColorInput.displayName = '@mantine/core/ColorInput';\n"],"names":["createVarsResolver","getSize","factory","useProps","useInputProps","useStyles","classes","useResolvedStylesApi","useState","useUncontrolled","useEyeDropper","React","ActionIcon","convertHsvaTo","parseColor","EyeDropperIcon","useEffect","isColorValid","useDidUpdate","Input","Popover","ColorSwatch","ColorPicker","InputBase"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"FileInput.js","sources":["../../../src/components/FileInput/FileInput.tsx"],"sourcesContent":["import React, { useEffect, useRef } from 'react';\nimport { useUncontrolled } from '@mantine/hooks';\nimport { factory, ElementProps, useProps, Factory } from '../../core';\nimport { __InputStylesNames, Input, InputVariant } from '../Input';\nimport { InputBase, InputBaseProps } from '../InputBase/InputBase';\nimport { CloseButton } from '../CloseButton';\nimport { FileButton } from '../FileButton';\n\nexport interface FileInputProps<Multiple = false>\n extends InputBaseProps,\n ElementProps<'button', 'value' | 'defaultValue' | 'onChange'> {\n /** Called when value changes */\n onChange?: (payload: Multiple extends true ? File[] : File | null) => void;\n\n /** Controlled component value */\n value?: Multiple extends true ? File[] : File | null;\n\n /** Uncontrolled component default value */\n defaultValue?: Multiple extends true ? File[] : File | null;\n\n /** Determines whether user can pick more than one file, `false` by default */\n multiple?: Multiple;\n\n /** File input accept attribute, for example, \"image/png,image/jpeg\" */\n accept?: string;\n\n /** Input name attribute */\n name?: string;\n\n /** Input form attribute */\n form?: string;\n\n /** Value renderer, by default file name is rendered */\n valueComponent?: React.FC<{ value: null | File | File[] }>;\n\n /** Determines whether clear button should be displayed in the right section, `false` by default */\n clearable?: boolean;\n\n /** Props passed down to the clear button */\n clearButtonProps?: React.ComponentPropsWithoutRef<'button'>;\n\n /** Read only inputs value cannot be changed */\n readOnly?: boolean;\n\n /** Specifies that, optionally, a new file should be captured, and which device should be used to capture that new media of a type defined by the accept attribute. */\n capture?: boolean | 'user' | 'environment';\n\n /** Props passed down to the hidden input element which is used to capture files */\n fileInputProps?: React.ComponentPropsWithoutRef<'input'>;\n}\n\nexport type FileInputFactory = Factory<{\n props: FileInputProps;\n ref: HTMLButtonElement;\n stylesNames: __InputStylesNames;\n variant: InputVariant;\n}>;\n\nconst DefaultValue: FileInputProps['valueComponent'] = ({ value }) => (\n <div style={{ overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap' }}>\n {Array.isArray(value) ? value.map((file) => file.name).join(', ') : value?.name}\n </div>\n);\n\nconst defaultProps: Partial<FileInputProps> = {\n valueComponent: DefaultValue,\n};\n\nconst _FileInput = factory<FileInputFactory>((_props, ref) => {\n const props = useProps('FileInput', defaultProps, _props);\n const {\n unstyled,\n vars,\n onChange,\n value,\n defaultValue,\n multiple,\n accept,\n name,\n form,\n valueComponent,\n clearable,\n clearButtonProps,\n readOnly,\n capture,\n fileInputProps,\n rightSection,\n size,\n placeholder,\n ...others\n } = props;\n\n const resetRef = useRef<() => void>(null);\n\n const [_value, setValue] = useUncontrolled<null | File | File[]>({\n value,\n defaultValue,\n onChange: onChange as any,\n finalValue: multiple ? [] : null,\n });\n\n const hasValue = Array.isArray(_value) ? _value.length !== 0 : _value !== null;\n\n const _rightSection =\n rightSection ||\n (clearable && hasValue && !readOnly ? (\n <CloseButton\n {...clearButtonProps}\n variant=\"subtle\"\n onClick={() => setValue(multiple ? [] : null)}\n size={size}\n unstyled={unstyled}\n />\n ) : null);\n\n useEffect(() => {\n if ((Array.isArray(_value) && _value.length === 0) || _value === null) {\n resetRef.current?.();\n }\n }, [_value]);\n\n const ValueComponent = valueComponent!;\n\n return (\n <FileButton\n onChange={setValue}\n multiple={multiple}\n accept={accept}\n name={name}\n form={form}\n resetRef={resetRef}\n disabled={readOnly}\n capture={capture}\n inputProps={fileInputProps}\n >\n {(fileButtonProps) => (\n <InputBase\n component=\"button\"\n ref={ref}\n rightSection={_rightSection}\n {...fileButtonProps}\n {...others}\n __staticSelector=\"FileInput\"\n multiline\n type=\"button\"\n pointer\n __stylesApiProps={props}\n unstyled={unstyled}\n size={size}\n >\n {!hasValue ? (\n <Input.Placeholder>{placeholder}</Input.Placeholder>\n ) : (\n <ValueComponent value={_value} />\n )}\n </InputBase>\n )}\n </FileButton>\n );\n});\n\n_FileInput.classes = InputBase.classes;\n_FileInput.displayName = '@mantine/core/FileInput';\n\ntype FileInputComponent = <Multiple extends boolean = false>(\n props: FileInputProps<Multiple> & {\n ref?: React.ForwardedRef<HTMLButtonElement>;\n }\n) => JSX.Element;\n\nexport const FileInput: FileInputComponent = _FileInput as any;\n"],"names":["React","factory","useProps","useRef","useUncontrolled","CloseButton","useEffect","FileButton","InputBase","Input"],"mappings":"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"}
1
+ {"version":3,"file":"FileInput.js","sources":["../../../src/components/FileInput/FileInput.tsx"],"sourcesContent":["import React, { useEffect, useRef } from 'react';\nimport { useUncontrolled } from '@mantine/hooks';\nimport { factory, ElementProps, useProps, Factory, BoxProps, StylesApiProps } from '../../core';\nimport { __InputStylesNames, Input, InputVariant, __BaseInputProps } from '../Input';\nimport { InputBase } from '../InputBase/InputBase';\nimport { CloseButton } from '../CloseButton';\nimport { FileButton } from '../FileButton';\n\nexport interface FileInputProps<Multiple = false>\n extends BoxProps,\n __BaseInputProps,\n StylesApiProps<FileInputFactory>,\n ElementProps<'button', 'value' | 'defaultValue' | 'onChange'> {\n /** Called when value changes */\n onChange?: (payload: Multiple extends true ? File[] : File | null) => void;\n\n /** Controlled component value */\n value?: Multiple extends true ? File[] : File | null;\n\n /** Uncontrolled component default value */\n defaultValue?: Multiple extends true ? File[] : File | null;\n\n /** Determines whether user can pick more than one file, `false` by default */\n multiple?: Multiple;\n\n /** File input accept attribute, for example, \"image/png,image/jpeg\" */\n accept?: string;\n\n /** Input name attribute */\n name?: string;\n\n /** Input form attribute */\n form?: string;\n\n /** Value renderer, by default file name is rendered */\n valueComponent?: React.FC<{ value: null | File | File[] }>;\n\n /** Determines whether clear button should be displayed in the right section, `false` by default */\n clearable?: boolean;\n\n /** Props passed down to the clear button */\n clearButtonProps?: React.ComponentPropsWithoutRef<'button'>;\n\n /** Read only inputs value cannot be changed */\n readOnly?: boolean;\n\n /** Specifies that, optionally, a new file should be captured, and which device should be used to capture that new media of a type defined by the accept attribute. */\n capture?: boolean | 'user' | 'environment';\n\n /** Props passed down to the hidden input element which is used to capture files */\n fileInputProps?: React.ComponentPropsWithoutRef<'input'>;\n}\n\nexport type FileInputFactory = Factory<{\n props: FileInputProps;\n ref: HTMLButtonElement;\n stylesNames: __InputStylesNames;\n variant: InputVariant;\n}>;\n\nconst DefaultValue: FileInputProps['valueComponent'] = ({ value }) => (\n <div style={{ overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap' }}>\n {Array.isArray(value) ? value.map((file) => file.name).join(', ') : value?.name}\n </div>\n);\n\nconst defaultProps: Partial<FileInputProps> = {\n valueComponent: DefaultValue,\n};\n\nconst _FileInput = factory<FileInputFactory>((_props, ref) => {\n const props = useProps('FileInput', defaultProps, _props);\n const {\n unstyled,\n vars,\n onChange,\n value,\n defaultValue,\n multiple,\n accept,\n name,\n form,\n valueComponent,\n clearable,\n clearButtonProps,\n readOnly,\n capture,\n fileInputProps,\n rightSection,\n size,\n placeholder,\n ...others\n } = props;\n\n const resetRef = useRef<() => void>(null);\n\n const [_value, setValue] = useUncontrolled<null | File | File[]>({\n value,\n defaultValue,\n onChange: onChange as any,\n finalValue: multiple ? [] : null,\n });\n\n const hasValue = Array.isArray(_value) ? _value.length !== 0 : _value !== null;\n\n const _rightSection =\n rightSection ||\n (clearable && hasValue && !readOnly ? (\n <CloseButton\n {...clearButtonProps}\n variant=\"subtle\"\n onClick={() => setValue(multiple ? [] : null)}\n size={size}\n unstyled={unstyled}\n />\n ) : null);\n\n useEffect(() => {\n if ((Array.isArray(_value) && _value.length === 0) || _value === null) {\n resetRef.current?.();\n }\n }, [_value]);\n\n const ValueComponent = valueComponent!;\n\n return (\n <FileButton\n onChange={setValue}\n multiple={multiple}\n accept={accept}\n name={name}\n form={form}\n resetRef={resetRef}\n disabled={readOnly}\n capture={capture}\n inputProps={fileInputProps}\n >\n {(fileButtonProps) => (\n <InputBase\n component=\"button\"\n ref={ref}\n rightSection={_rightSection}\n {...fileButtonProps}\n {...others}\n __staticSelector=\"FileInput\"\n multiline\n type=\"button\"\n pointer\n __stylesApiProps={props}\n unstyled={unstyled}\n size={size}\n >\n {!hasValue ? (\n <Input.Placeholder>{placeholder}</Input.Placeholder>\n ) : (\n <ValueComponent value={_value} />\n )}\n </InputBase>\n )}\n </FileButton>\n );\n});\n\n_FileInput.classes = InputBase.classes;\n_FileInput.displayName = '@mantine/core/FileInput';\n\ntype FileInputComponent = <Multiple extends boolean = false>(\n props: FileInputProps<Multiple> & {\n ref?: React.ForwardedRef<HTMLButtonElement>;\n }\n) => JSX.Element;\n\nexport const FileInput: FileInputComponent = _FileInput as any;\n"],"names":["React","factory","useProps","useRef","useUncontrolled","CloseButton","useEffect","FileButton","InputBase","Input"],"mappings":"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"}
@@ -10,7 +10,7 @@ var useRandomClassname = require('../../core/Box/use-random-classname/use-random
10
10
  var parseStyleProps = require('../../core/Box/style-props/parse-style-props/parse-style-props.js');
11
11
  var InlineStyles = require('../../core/InlineStyles/InlineStyles.js');
12
12
  var filterProps = require('../../core/utils/filter-props/filter-props.js');
13
- var factory = require('../../core/factory/factory.js');
13
+ var polymorphicFactory = require('../../core/factory/polymorphic-factory.js');
14
14
  var useProps = require('../../core/MantineProvider/use-props/use-props.js');
15
15
  var useStyles = require('../../core/styles-api/use-styles/use-styles.js');
16
16
  var MantineThemeProvider = require('../../core/MantineProvider/MantineThemeProvider/MantineThemeProvider.js');
@@ -49,7 +49,7 @@ var __objRest = (source, exclude) => {
49
49
  return target;
50
50
  };
51
51
  const defaultProps = {};
52
- const Flex = factory.factory((_props, ref) => {
52
+ const Flex = polymorphicFactory.polymorphicFactory((_props, ref) => {
53
53
  const props = useProps.useProps("Flex", defaultProps, _props);
54
54
  const _a = props, {
55
55
  classNames,
@@ -1 +1 @@
1
- {"version":3,"file":"Flex.js","sources":["../../../src/components/Flex/Flex.tsx"],"sourcesContent":["import React from 'react';\nimport {\n Box,\n BoxProps,\n StylesApiProps,\n factory,\n ElementProps,\n useProps,\n useStyles,\n Factory,\n InlineStyles,\n useRandomClassName,\n parseStyleProps,\n StyleProp,\n MantineSize,\n useMantineTheme,\n filterProps,\n} from '../../core';\nimport { FLEX_STYLE_PROPS_DATA } from './flex-props';\nimport classes from './Flex.module.css';\n\nexport type FlexStylesNames = 'root';\n\nexport interface FlexProps extends BoxProps, StylesApiProps<FlexFactory>, ElementProps<'div'> {\n /** `gap` CSS property */\n gap?: StyleProp<MantineSize | (string & {}) | number>;\n\n /** `row-gap` CSS property */\n rowGap?: StyleProp<MantineSize | (string & {}) | number>;\n\n /** `column-gap` CSS property */\n columnGap?: StyleProp<MantineSize | (string & {}) | number>;\n\n /** `align-items` CSS property */\n align?: StyleProp<React.CSSProperties['alignItems']>;\n\n /** justify-content CSS property */\n justify?: StyleProp<React.CSSProperties['justifyContent']>;\n\n /** flex-wrap CSS property */\n wrap?: StyleProp<React.CSSProperties['flexWrap']>;\n\n /** flex-direction CSS property */\n direction?: StyleProp<React.CSSProperties['flexDirection']>;\n}\n\nexport type FlexFactory = Factory<{\n props: FlexProps;\n ref: HTMLDivElement;\n stylesNames: FlexStylesNames;\n}>;\n\nconst defaultProps: Partial<FlexProps> = {};\n\nexport const Flex = factory<FlexFactory>((_props, ref) => {\n const props = useProps('Flex', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n gap,\n rowGap,\n columnGap,\n align,\n justify,\n wrap,\n direction,\n ...others\n } = props;\n\n const getStyles = useStyles<FlexFactory>({\n name: 'Flex',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n vars,\n });\n\n const theme = useMantineTheme();\n const responsiveClassName = useRandomClassName();\n const parsedStyleProps = parseStyleProps({\n styleProps: { gap, rowGap, columnGap, align, justify, wrap, direction },\n theme,\n data: FLEX_STYLE_PROPS_DATA,\n });\n\n return (\n <>\n {parsedStyleProps.hasResponsiveStyles && (\n <InlineStyles\n selector={`.${responsiveClassName}`}\n styles={parsedStyleProps.styles}\n media={parsedStyleProps.media}\n />\n )}\n <Box\n ref={ref}\n {...getStyles('root', {\n className: responsiveClassName,\n style: filterProps(parsedStyleProps.inlineStyles),\n })}\n {...others}\n />\n </>\n );\n});\n\nFlex.classes = classes;\nFlex.displayName = '@mantine/core/Flex';\n"],"names":["factory","useProps","useStyles","classes","useMantineTheme","useRandomClassName","parseStyleProps","FLEX_STYLE_PROPS_DATA","React","InlineStyles","Box","filterProps"],"mappings":"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"}
1
+ {"version":3,"file":"Flex.js","sources":["../../../src/components/Flex/Flex.tsx"],"sourcesContent":["import React from 'react';\nimport {\n Box,\n BoxProps,\n StylesApiProps,\n ElementProps,\n useProps,\n useStyles,\n InlineStyles,\n useRandomClassName,\n parseStyleProps,\n StyleProp,\n MantineSize,\n useMantineTheme,\n filterProps,\n polymorphicFactory,\n PolymorphicFactory,\n} from '../../core';\nimport { FLEX_STYLE_PROPS_DATA } from './flex-props';\nimport classes from './Flex.module.css';\n\nexport type FlexStylesNames = 'root';\n\nexport interface FlexProps extends BoxProps, StylesApiProps<FlexFactory>, ElementProps<'div'> {\n /** `gap` CSS property */\n gap?: StyleProp<MantineSize | (string & {}) | number>;\n\n /** `row-gap` CSS property */\n rowGap?: StyleProp<MantineSize | (string & {}) | number>;\n\n /** `column-gap` CSS property */\n columnGap?: StyleProp<MantineSize | (string & {}) | number>;\n\n /** `align-items` CSS property */\n align?: StyleProp<React.CSSProperties['alignItems']>;\n\n /** `justify-content` CSS property */\n justify?: StyleProp<React.CSSProperties['justifyContent']>;\n\n /** `flex-wrap` CSS property */\n wrap?: StyleProp<React.CSSProperties['flexWrap']>;\n\n /** `flex-direction` CSS property */\n direction?: StyleProp<React.CSSProperties['flexDirection']>;\n}\n\nexport type FlexFactory = PolymorphicFactory<{\n props: FlexProps;\n defaultRef: HTMLDivElement;\n defaultComponent: 'div';\n stylesNames: FlexStylesNames;\n}>;\n\nconst defaultProps: Partial<FlexProps> = {};\n\nexport const Flex = polymorphicFactory<FlexFactory>((_props, ref) => {\n const props = useProps('Flex', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n gap,\n rowGap,\n columnGap,\n align,\n justify,\n wrap,\n direction,\n ...others\n } = props;\n\n const getStyles = useStyles<FlexFactory>({\n name: 'Flex',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n vars,\n });\n\n const theme = useMantineTheme();\n const responsiveClassName = useRandomClassName();\n const parsedStyleProps = parseStyleProps({\n styleProps: { gap, rowGap, columnGap, align, justify, wrap, direction },\n theme,\n data: FLEX_STYLE_PROPS_DATA,\n });\n\n return (\n <>\n {parsedStyleProps.hasResponsiveStyles && (\n <InlineStyles\n selector={`.${responsiveClassName}`}\n styles={parsedStyleProps.styles}\n media={parsedStyleProps.media}\n />\n )}\n <Box\n ref={ref}\n {...getStyles('root', {\n className: responsiveClassName,\n style: filterProps(parsedStyleProps.inlineStyles),\n })}\n {...others}\n />\n </>\n );\n});\n\nFlex.classes = classes;\nFlex.displayName = '@mantine/core/Flex';\n"],"names":["polymorphicFactory","useProps","useStyles","classes","useMantineTheme","useRandomClassName","parseStyleProps","FLEX_STYLE_PROPS_DATA","React","InlineStyles","Box","filterProps"],"mappings":"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"}