@mantine/core 9.6.1 → 9.6.3

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 (91) hide show
  1. package/cjs/components/Combobox/use-combobox/use-combobox.cjs +1 -4
  2. package/cjs/components/Combobox/use-combobox/use-combobox.cjs.map +1 -1
  3. package/cjs/components/ComboboxPopover/ComboboxPopover.cjs +1 -1
  4. package/cjs/components/ComboboxPopover/ComboboxPopover.cjs.map +1 -1
  5. package/cjs/components/Input/InputWrapper/InputWrapper.cjs +1 -1
  6. package/cjs/components/Input/InputWrapper/InputWrapper.cjs.map +1 -1
  7. package/cjs/components/Marquee/Marquee.cjs.map +1 -1
  8. package/cjs/components/Marquee/Marquee.module.cjs.map +1 -1
  9. package/cjs/components/NumberInput/NumberInput.cjs +32 -22
  10. package/cjs/components/NumberInput/NumberInput.cjs.map +1 -1
  11. package/cjs/components/NumberInput/get-caret-position-after-paste/get-caret-position-after-paste.cjs +19 -0
  12. package/cjs/components/NumberInput/get-caret-position-after-paste/get-caret-position-after-paste.cjs.map +1 -0
  13. package/cjs/components/NumberInput/normalize-pasted-value/normalize-pasted-value.cjs +35 -0
  14. package/cjs/components/NumberInput/normalize-pasted-value/normalize-pasted-value.cjs.map +1 -0
  15. package/cjs/components/PasswordInput/PasswordInput.cjs +10 -5
  16. package/cjs/components/PasswordInput/PasswordInput.cjs.map +1 -1
  17. package/cjs/components/PinInput/PinInput.cjs.map +1 -1
  18. package/cjs/components/Portal/Portal.cjs +10 -1
  19. package/cjs/components/Portal/Portal.cjs.map +1 -1
  20. package/cjs/components/Rating/Rating.cjs +35 -12
  21. package/cjs/components/Rating/Rating.cjs.map +1 -1
  22. package/cjs/components/Select/Select.cjs +1 -1
  23. package/cjs/components/Select/Select.cjs.map +1 -1
  24. package/cjs/components/Slider/Thumb/Thumb.cjs +7 -2
  25. package/cjs/components/Slider/Thumb/Thumb.cjs.map +1 -1
  26. package/cjs/components/Table/Table.cjs +23 -10
  27. package/cjs/components/Table/Table.cjs.map +1 -1
  28. package/cjs/components/Tooltip/Tooltip.cjs.map +1 -1
  29. package/cjs/core/Box/Box.cjs +1 -1
  30. package/cjs/core/Box/Box.cjs.map +1 -1
  31. package/cjs/core/Box/style-props/style-props-data.cjs +2 -2
  32. package/cjs/core/Box/style-props/style-props-data.cjs.map +1 -1
  33. package/cjs/core/styles-api/use-styles/use-styles.cjs +32 -2
  34. package/cjs/core/styles-api/use-styles/use-styles.cjs.map +1 -1
  35. package/cjs/core/utils/shallow-equal/shallow-equal.cjs +19 -0
  36. package/cjs/core/utils/shallow-equal/shallow-equal.cjs.map +1 -0
  37. package/cjs/index.cjs +1 -1
  38. package/esm/components/Combobox/use-combobox/use-combobox.mjs +1 -4
  39. package/esm/components/Combobox/use-combobox/use-combobox.mjs.map +1 -1
  40. package/esm/components/ComboboxPopover/ComboboxPopover.mjs +1 -1
  41. package/esm/components/ComboboxPopover/ComboboxPopover.mjs.map +1 -1
  42. package/esm/components/Input/InputWrapper/InputWrapper.mjs +1 -1
  43. package/esm/components/Input/InputWrapper/InputWrapper.mjs.map +1 -1
  44. package/esm/components/Marquee/Marquee.mjs.map +1 -1
  45. package/esm/components/Marquee/Marquee.module.mjs.map +1 -1
  46. package/esm/components/NumberInput/NumberInput.mjs +32 -22
  47. package/esm/components/NumberInput/NumberInput.mjs.map +1 -1
  48. package/esm/components/NumberInput/get-caret-position-after-paste/get-caret-position-after-paste.mjs +19 -0
  49. package/esm/components/NumberInput/get-caret-position-after-paste/get-caret-position-after-paste.mjs.map +1 -0
  50. package/esm/components/NumberInput/normalize-pasted-value/normalize-pasted-value.mjs +35 -0
  51. package/esm/components/NumberInput/normalize-pasted-value/normalize-pasted-value.mjs.map +1 -0
  52. package/esm/components/PasswordInput/PasswordInput.mjs +12 -7
  53. package/esm/components/PasswordInput/PasswordInput.mjs.map +1 -1
  54. package/esm/components/PinInput/PinInput.mjs.map +1 -1
  55. package/esm/components/Portal/Portal.mjs +10 -1
  56. package/esm/components/Portal/Portal.mjs.map +1 -1
  57. package/esm/components/Rating/Rating.mjs +35 -12
  58. package/esm/components/Rating/Rating.mjs.map +1 -1
  59. package/esm/components/Select/Select.mjs +1 -1
  60. package/esm/components/Select/Select.mjs.map +1 -1
  61. package/esm/components/Slider/Thumb/Thumb.mjs +7 -2
  62. package/esm/components/Slider/Thumb/Thumb.mjs.map +1 -1
  63. package/esm/components/Table/Table.mjs +23 -10
  64. package/esm/components/Table/Table.mjs.map +1 -1
  65. package/esm/components/Tooltip/Tooltip.mjs.map +1 -1
  66. package/esm/core/Box/Box.mjs +2 -2
  67. package/esm/core/Box/Box.mjs.map +1 -1
  68. package/esm/core/Box/style-props/style-props-data.mjs +2 -2
  69. package/esm/core/Box/style-props/style-props-data.mjs.map +1 -1
  70. package/esm/core/styles-api/use-styles/use-styles.mjs +32 -2
  71. package/esm/core/styles-api/use-styles/use-styles.mjs.map +1 -1
  72. package/esm/core/utils/shallow-equal/shallow-equal.mjs +19 -0
  73. package/esm/core/utils/shallow-equal/shallow-equal.mjs.map +1 -0
  74. package/esm/index.mjs +2 -2
  75. package/lib/components/Combobox/Combobox.types.d.ts +1 -1
  76. package/lib/components/ComboboxPopover/ComboboxPopover.d.ts +1 -1
  77. package/lib/components/Marquee/Marquee.d.ts +1 -1
  78. package/lib/components/NumberInput/get-caret-position-after-paste/get-caret-position-after-paste.d.ts +1 -0
  79. package/lib/components/NumberInput/normalize-pasted-value/normalize-pasted-value.d.ts +7 -0
  80. package/lib/components/PinInput/PinInput.d.ts +1 -1
  81. package/lib/components/Slider/Thumb/Thumb.d.ts +1 -1
  82. package/lib/components/Tooltip/Tooltip.d.ts +1 -1
  83. package/lib/core/Box/style-props/index.d.ts +1 -1
  84. package/lib/core/Box/style-props/style-props-data.d.ts +1 -1
  85. package/lib/core/styles-api/use-styles/use-styles.d.ts +2 -1
  86. package/lib/core/utils/shallow-equal/shallow-equal.d.ts +1 -0
  87. package/package.json +2 -2
  88. package/styles/Marquee.css +1 -1
  89. package/styles/Marquee.layer.css +1 -1
  90. package/styles.css +1 -1
  91. package/styles.layer.css +1 -1
@@ -3,13 +3,15 @@ import { resolveClassNames } from "./get-class-name/resolve-class-names/resolve-
3
3
  import { resolveStyles } from "./get-style/resolve-styles/resolve-styles.mjs";
4
4
  import { useMantineClassNamesPrefix, useMantineIsHeadless, useMantineWithStaticClasses } from "../../MantineProvider/Mantine.context.mjs";
5
5
  import { useMantineTheme } from "../../MantineProvider/MantineThemeProvider/MantineThemeProvider.mjs";
6
+ import { shallowEqual } from "../../utils/shallow-equal/shallow-equal.mjs";
6
7
  import { getClassName } from "./get-class-name/get-class-name.mjs";
7
8
  import { resolveStyle } from "./get-style/resolve-style/resolve-style.mjs";
8
9
  import { getStyle } from "./get-style/get-style.mjs";
9
10
  import { mergeVars } from "./get-style/resolve-vars/merge-vars.mjs";
10
11
  import { useStylesTransform } from "./use-transformed-styles.mjs";
12
+ import { useRef } from "react";
11
13
  //#region packages/@mantine/core/src/core/styles-api/use-styles/use-styles.ts
12
- function useStyles({ name, classes, props, stylesCtx, className, style, rootSelector = "root", unstyled, classNames, styles, vars, varsResolver, attributes }) {
14
+ function useStyles({ name, classes, props, stylesCtx, className, style, rootSelector = "root", unstyled, classNames, styles, vars, varsResolver, attributes, stable }) {
13
15
  const theme = useMantineTheme();
14
16
  const classNamesPrefix = useMantineClassNamesPrefix();
15
17
  const withStaticClasses = useMantineWithStaticClasses();
@@ -61,7 +63,7 @@ function useStyles({ name, classes, props, stylesCtx, className, style, rootSele
61
63
  style,
62
64
  theme
63
65
  });
64
- return (selector, options) => ({
66
+ const getStyles = (selector, options) => ({
65
67
  ...attributes?.[selector],
66
68
  className: getClassName({
67
69
  theme,
@@ -95,6 +97,34 @@ function useStyles({ name, classes, props, stylesCtx, className, style, rootSele
95
97
  resolvedRootStyle
96
98
  })
97
99
  });
100
+ return useStableGetStyles(getStyles, !!stable, [
101
+ theme,
102
+ classNamesPrefix,
103
+ withStaticClasses,
104
+ headless,
105
+ withStylesTransform ? props : null,
106
+ classes,
107
+ unstyled,
108
+ className,
109
+ rootSelector,
110
+ attributes,
111
+ stylesCtx,
112
+ resolvedClassNames,
113
+ resolvedThemeClassNames,
114
+ resolvedComponentStyles,
115
+ resolvedThemeStyles,
116
+ resolvedVars,
117
+ resolvedRootStyle
118
+ ]);
119
+ }
120
+ function useStableGetStyles(getStyles, stable, deps) {
121
+ const cache = useRef(null);
122
+ if (!stable) return getStyles;
123
+ if (!cache.current || !shallowEqual(cache.current.deps, deps, 3)) cache.current = {
124
+ deps,
125
+ getStyles
126
+ };
127
+ return cache.current.getStyles;
98
128
  }
99
129
  //#endregion
100
130
  export { useStyles };
@@ -1 +1 @@
1
- {"version":3,"file":"use-styles.mjs","names":[],"sources":["../../../../src/core/styles-api/use-styles/use-styles.ts"],"sourcesContent":["import { CSSProperties } from 'react';\nimport type { MantineStyleProp } from '../../Box';\nimport { FactoryPayload } from '../../factory';\nimport {\n useMantineClassNamesPrefix,\n useMantineIsHeadless,\n useMantineTheme,\n useMantineWithStaticClasses,\n} from '../../MantineProvider';\nimport { PartialVarsResolver, VarsResolver } from '../create-vars-resolver/create-vars-resolver';\nimport {\n Attributes,\n ClassNames,\n ClassNamesArray,\n GetStylesApiOptions,\n Styles,\n} from '../styles-api.types';\nimport { getClassName } from './get-class-name/get-class-name';\nimport { resolveClassNames } from './get-class-name/resolve-class-names/resolve-class-names';\nimport { getStyle } from './get-style/get-style';\nimport { resolveStyle } from './get-style/resolve-style/resolve-style';\nimport { resolveStyles } from './get-style/resolve-styles/resolve-styles';\nimport { mergeVars } from './get-style/resolve-vars/merge-vars';\nimport { useStylesTransform } from './use-transformed-styles';\n\nexport interface UseStylesInput<Payload extends FactoryPayload> {\n name: string | (string | undefined)[];\n classes: Payload['stylesNames'] extends string ? Record<string, string> : never;\n props: Payload['props'];\n stylesCtx?: Payload['ctx'];\n className?: string | undefined;\n style?: MantineStyleProp;\n rootSelector?: Payload['stylesNames'];\n unstyled?: boolean;\n classNames?: ClassNames<Payload> | ClassNamesArray<Payload>;\n styles?: Styles<Payload>;\n vars?: PartialVarsResolver<Payload>;\n varsResolver?: VarsResolver<Payload>;\n attributes?: Attributes<Payload>;\n}\n\nexport type GetStylesApi<Payload extends FactoryPayload> = (\n selector: NonNullable<Payload['stylesNames']>,\n options?: GetStylesApiOptions\n) => {\n className: string;\n style: CSSProperties;\n};\n\nexport function useStyles<Payload extends FactoryPayload>({\n name,\n classes,\n props,\n stylesCtx,\n className,\n style,\n rootSelector = 'root' as NonNullable<Payload['stylesNames']>,\n unstyled,\n classNames,\n styles,\n vars,\n varsResolver,\n attributes,\n}: UseStylesInput<Payload>): GetStylesApi<Payload> {\n const theme = useMantineTheme();\n const classNamesPrefix = useMantineClassNamesPrefix();\n const withStaticClasses = useMantineWithStaticClasses();\n const headless = useMantineIsHeadless();\n const themeName = (Array.isArray(name) ? name : [name]).filter((n) => n) as string[];\n const { withStylesTransform, getTransformedStyles } = useStylesTransform({\n props,\n stylesCtx,\n themeName,\n theme,\n });\n\n const resolvedClassNames = resolveClassNames({ theme, classNames, props, stylesCtx });\n const resolvedThemeClassNames = themeName.map((n) =>\n resolveClassNames({ theme, classNames: theme.components[n]?.classNames, props, stylesCtx })\n );\n\n const resolvedComponentStyles = withStylesTransform\n ? {}\n : resolveStyles({ theme, styles, props, stylesCtx });\n\n const resolvedThemeStyles: Record<string, any> = {};\n\n if (!withStylesTransform) {\n for (const n of themeName) {\n const resolved = resolveStyles({\n theme,\n styles: theme.components[n]?.styles,\n props,\n stylesCtx,\n });\n\n for (const key of Object.keys(resolved)) {\n resolvedThemeStyles[key] = { ...resolvedThemeStyles[key], ...resolved[key] };\n }\n }\n }\n\n const resolvedVars = mergeVars([\n headless ? {} : varsResolver?.(theme, props, stylesCtx),\n ...themeName.map((n) => theme.components?.[n]?.vars?.(theme, props, stylesCtx)),\n vars?.(theme, props, stylesCtx),\n ]);\n\n const resolvedRootStyle = resolveStyle({ style, theme });\n\n return (selector, options) => ({\n ...attributes?.[selector],\n\n className: getClassName({\n theme,\n options,\n themeName,\n selector,\n classNamesPrefix,\n resolvedClassNames,\n resolvedThemeClassNames,\n classes,\n unstyled,\n className,\n rootSelector,\n props,\n stylesCtx,\n withStaticClasses,\n headless,\n transformedStyles: getTransformedStyles([options?.styles, styles]),\n }),\n\n style: getStyle({\n theme,\n selector,\n options,\n props,\n stylesCtx,\n rootSelector,\n withStylesTransform,\n resolvedStyles: resolvedComponentStyles,\n resolvedThemeStyles,\n resolvedVars,\n resolvedRootStyle,\n }),\n });\n}\n"],"mappings":";;;;;;;;;;;AAiDA,SAAgB,UAA0C,EACxD,MACA,SACA,OACA,WACA,WACA,OACA,eAAe,QACf,UACA,YACA,QACA,MACA,cACA,cACiD;CACjD,MAAM,QAAQ,gBAAgB;CAC9B,MAAM,mBAAmB,2BAA2B;CACpD,MAAM,oBAAoB,4BAA4B;CACtD,MAAM,WAAW,qBAAqB;CACtC,MAAM,aAAa,MAAM,QAAQ,IAAI,IAAI,OAAO,CAAC,IAAI,EAAA,CAAG,QAAQ,MAAM,CAAC;CACvE,MAAM,EAAE,qBAAqB,yBAAyB,mBAAmB;EACvE;EACA;EACA;EACA;CACF,CAAC;CAED,MAAM,qBAAqB,kBAAkB;EAAE;EAAO;EAAY;EAAO;CAAU,CAAC;CACpF,MAAM,0BAA0B,UAAU,KAAK,MAC7C,kBAAkB;EAAE;EAAO,YAAY,MAAM,WAAW,EAAE,EAAE;EAAY;EAAO;CAAU,CAAC,CAC5F;CAEA,MAAM,0BAA0B,sBAC5B,CAAC,IACD,cAAc;EAAE;EAAO;EAAQ;EAAO;CAAU,CAAC;CAErD,MAAM,sBAA2C,CAAC;CAElD,IAAI,CAAC,qBACH,KAAK,MAAM,KAAK,WAAW;EACzB,MAAM,WAAW,cAAc;GAC7B;GACA,QAAQ,MAAM,WAAW,EAAE,EAAE;GAC7B;GACA;EACF,CAAC;EAED,KAAK,MAAM,OAAO,OAAO,KAAK,QAAQ,GACpC,oBAAoB,OAAO;GAAE,GAAG,oBAAoB;GAAM,GAAG,SAAS;EAAK;CAE/E;CAGF,MAAM,eAAe,UAAU;EAC7B,WAAW,CAAC,IAAI,eAAe,OAAO,OAAO,SAAS;EACtD,GAAG,UAAU,KAAK,MAAM,MAAM,aAAa,EAAE,EAAE,OAAO,OAAO,OAAO,SAAS,CAAC;EAC9E,OAAO,OAAO,OAAO,SAAS;CAChC,CAAC;CAED,MAAM,oBAAoB,aAAa;EAAE;EAAO;CAAM,CAAC;CAEvD,QAAQ,UAAU,aAAa;EAC7B,GAAG,aAAa;EAEhB,WAAW,aAAa;GACtB;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA,mBAAmB,qBAAqB,CAAC,SAAS,QAAQ,MAAM,CAAC;EACnE,CAAC;EAED,OAAO,SAAS;GACd;GACA;GACA;GACA;GACA;GACA;GACA;GACA,gBAAgB;GAChB;GACA;GACA;EACF,CAAC;CACH;AACF"}
1
+ {"version":3,"file":"use-styles.mjs","names":[],"sources":["../../../../src/core/styles-api/use-styles/use-styles.ts"],"sourcesContent":["import { CSSProperties, useRef } from 'react';\nimport type { MantineStyleProp } from '../../Box';\nimport { FactoryPayload } from '../../factory';\nimport {\n useMantineClassNamesPrefix,\n useMantineIsHeadless,\n useMantineTheme,\n useMantineWithStaticClasses,\n} from '../../MantineProvider';\nimport { shallowEqual } from '../../utils/shallow-equal/shallow-equal';\nimport { PartialVarsResolver, VarsResolver } from '../create-vars-resolver/create-vars-resolver';\nimport {\n Attributes,\n ClassNames,\n ClassNamesArray,\n GetStylesApiOptions,\n Styles,\n} from '../styles-api.types';\nimport { getClassName } from './get-class-name/get-class-name';\nimport { resolveClassNames } from './get-class-name/resolve-class-names/resolve-class-names';\nimport { getStyle } from './get-style/get-style';\nimport { resolveStyle } from './get-style/resolve-style/resolve-style';\nimport { resolveStyles } from './get-style/resolve-styles/resolve-styles';\nimport { mergeVars } from './get-style/resolve-vars/merge-vars';\nimport { useStylesTransform } from './use-transformed-styles';\n\nexport interface UseStylesInput<Payload extends FactoryPayload> {\n name: string | (string | undefined)[];\n classes: Payload['stylesNames'] extends string ? Record<string, string> : never;\n props: Payload['props'];\n stylesCtx?: Payload['ctx'];\n className?: string | undefined;\n style?: MantineStyleProp;\n rootSelector?: Payload['stylesNames'];\n unstyled?: boolean;\n classNames?: ClassNames<Payload> | ClassNamesArray<Payload>;\n styles?: Styles<Payload>;\n vars?: PartialVarsResolver<Payload>;\n varsResolver?: VarsResolver<Payload>;\n attributes?: Attributes<Payload>;\n stable?: boolean;\n}\n\nexport type GetStylesApi<Payload extends FactoryPayload> = (\n selector: NonNullable<Payload['stylesNames']>,\n options?: GetStylesApiOptions\n) => {\n className: string;\n style: CSSProperties;\n};\n\nexport function useStyles<Payload extends FactoryPayload>({\n name,\n classes,\n props,\n stylesCtx,\n className,\n style,\n rootSelector = 'root' as NonNullable<Payload['stylesNames']>,\n unstyled,\n classNames,\n styles,\n vars,\n varsResolver,\n attributes,\n stable,\n}: UseStylesInput<Payload>): GetStylesApi<Payload> {\n const theme = useMantineTheme();\n const classNamesPrefix = useMantineClassNamesPrefix();\n const withStaticClasses = useMantineWithStaticClasses();\n const headless = useMantineIsHeadless();\n const themeName = (Array.isArray(name) ? name : [name]).filter((n) => n) as string[];\n const { withStylesTransform, getTransformedStyles } = useStylesTransform({\n props,\n stylesCtx,\n themeName,\n theme,\n });\n\n const resolvedClassNames = resolveClassNames({ theme, classNames, props, stylesCtx });\n const resolvedThemeClassNames = themeName.map((n) =>\n resolveClassNames({ theme, classNames: theme.components[n]?.classNames, props, stylesCtx })\n );\n\n const resolvedComponentStyles = withStylesTransform\n ? {}\n : resolveStyles({ theme, styles, props, stylesCtx });\n\n const resolvedThemeStyles: Record<string, any> = {};\n\n if (!withStylesTransform) {\n for (const n of themeName) {\n const resolved = resolveStyles({\n theme,\n styles: theme.components[n]?.styles,\n props,\n stylesCtx,\n });\n\n for (const key of Object.keys(resolved)) {\n resolvedThemeStyles[key] = { ...resolvedThemeStyles[key], ...resolved[key] };\n }\n }\n }\n\n const resolvedVars = mergeVars([\n headless ? {} : varsResolver?.(theme, props, stylesCtx),\n ...themeName.map((n) => theme.components?.[n]?.vars?.(theme, props, stylesCtx)),\n vars?.(theme, props, stylesCtx),\n ]);\n\n const resolvedRootStyle = resolveStyle({ style, theme });\n\n const getStyles: GetStylesApi<Payload> = (selector, options) => ({\n ...attributes?.[selector],\n\n className: getClassName({\n theme,\n options,\n themeName,\n selector,\n classNamesPrefix,\n resolvedClassNames,\n resolvedThemeClassNames,\n classes,\n unstyled,\n className,\n rootSelector,\n props,\n stylesCtx,\n withStaticClasses,\n headless,\n transformedStyles: getTransformedStyles([options?.styles, styles]),\n }),\n\n style: getStyle({\n theme,\n selector,\n options,\n props,\n stylesCtx,\n rootSelector,\n withStylesTransform,\n resolvedStyles: resolvedComponentStyles,\n resolvedThemeStyles,\n resolvedVars,\n resolvedRootStyle,\n }),\n });\n\n return useStableGetStyles(getStyles, !!stable, [\n theme,\n classNamesPrefix,\n withStaticClasses,\n headless,\n withStylesTransform ? props : null,\n classes,\n unstyled,\n className,\n rootSelector,\n attributes,\n stylesCtx,\n resolvedClassNames,\n resolvedThemeClassNames,\n resolvedComponentStyles,\n resolvedThemeStyles,\n resolvedVars,\n resolvedRootStyle,\n ]);\n}\n\nfunction useStableGetStyles<Payload extends FactoryPayload>(\n getStyles: GetStylesApi<Payload>,\n stable: boolean,\n deps: unknown[]\n): GetStylesApi<Payload> {\n const cache = useRef<{ deps: unknown[]; getStyles: GetStylesApi<Payload> }>(null);\n\n if (!stable) {\n return getStyles;\n }\n\n if (!cache.current || !shallowEqual(cache.current.deps, deps, 3)) {\n cache.current = { deps, getStyles };\n }\n\n return cache.current.getStyles;\n}\n"],"mappings":";;;;;;;;;;;;;AAmDA,SAAgB,UAA0C,EACxD,MACA,SACA,OACA,WACA,WACA,OACA,eAAe,QACf,UACA,YACA,QACA,MACA,cACA,YACA,UACiD;CACjD,MAAM,QAAQ,gBAAgB;CAC9B,MAAM,mBAAmB,2BAA2B;CACpD,MAAM,oBAAoB,4BAA4B;CACtD,MAAM,WAAW,qBAAqB;CACtC,MAAM,aAAa,MAAM,QAAQ,IAAI,IAAI,OAAO,CAAC,IAAI,EAAA,CAAG,QAAQ,MAAM,CAAC;CACvE,MAAM,EAAE,qBAAqB,yBAAyB,mBAAmB;EACvE;EACA;EACA;EACA;CACF,CAAC;CAED,MAAM,qBAAqB,kBAAkB;EAAE;EAAO;EAAY;EAAO;CAAU,CAAC;CACpF,MAAM,0BAA0B,UAAU,KAAK,MAC7C,kBAAkB;EAAE;EAAO,YAAY,MAAM,WAAW,EAAE,EAAE;EAAY;EAAO;CAAU,CAAC,CAC5F;CAEA,MAAM,0BAA0B,sBAC5B,CAAC,IACD,cAAc;EAAE;EAAO;EAAQ;EAAO;CAAU,CAAC;CAErD,MAAM,sBAA2C,CAAC;CAElD,IAAI,CAAC,qBACH,KAAK,MAAM,KAAK,WAAW;EACzB,MAAM,WAAW,cAAc;GAC7B;GACA,QAAQ,MAAM,WAAW,EAAE,EAAE;GAC7B;GACA;EACF,CAAC;EAED,KAAK,MAAM,OAAO,OAAO,KAAK,QAAQ,GACpC,oBAAoB,OAAO;GAAE,GAAG,oBAAoB;GAAM,GAAG,SAAS;EAAK;CAE/E;CAGF,MAAM,eAAe,UAAU;EAC7B,WAAW,CAAC,IAAI,eAAe,OAAO,OAAO,SAAS;EACtD,GAAG,UAAU,KAAK,MAAM,MAAM,aAAa,EAAE,EAAE,OAAO,OAAO,OAAO,SAAS,CAAC;EAC9E,OAAO,OAAO,OAAO,SAAS;CAChC,CAAC;CAED,MAAM,oBAAoB,aAAa;EAAE;EAAO;CAAM,CAAC;CAEvD,MAAM,aAAoC,UAAU,aAAa;EAC/D,GAAG,aAAa;EAEhB,WAAW,aAAa;GACtB;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA,mBAAmB,qBAAqB,CAAC,SAAS,QAAQ,MAAM,CAAC;EACnE,CAAC;EAED,OAAO,SAAS;GACd;GACA;GACA;GACA;GACA;GACA;GACA;GACA,gBAAgB;GAChB;GACA;GACA;EACF,CAAC;CACH;CAEA,OAAO,mBAAmB,WAAW,CAAC,CAAC,QAAQ;EAC7C;EACA;EACA;EACA;EACA,sBAAsB,QAAQ;EAC9B;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF,CAAC;AACH;AAEA,SAAS,mBACP,WACA,QACA,MACuB;CACvB,MAAM,QAAQ,OAA8D,IAAI;CAEhF,IAAI,CAAC,QACH,OAAO;CAGT,IAAI,CAAC,MAAM,WAAW,CAAC,aAAa,MAAM,QAAQ,MAAM,MAAM,CAAC,GAC7D,MAAM,UAAU;EAAE;EAAM;CAAU;CAGpC,OAAO,MAAM,QAAQ;AACvB"}
@@ -0,0 +1,19 @@
1
+ "use client";
2
+ //#region packages/@mantine/core/src/core/utils/shallow-equal/shallow-equal.ts
3
+ function shallowEqual(a, b, depth = 1) {
4
+ if (Object.is(a, b)) return true;
5
+ if (depth === 0 || typeof a !== "object" || typeof b !== "object" || a === null || b === null) return false;
6
+ if (Array.isArray(a) || Array.isArray(b)) {
7
+ if (!Array.isArray(a) || !Array.isArray(b) || a.length !== b.length) return false;
8
+ for (let i = 0; i < a.length; i += 1) if (!shallowEqual(a[i], b[i], depth - 1)) return false;
9
+ return true;
10
+ }
11
+ const aKeys = Object.keys(a);
12
+ if (aKeys.length !== Object.keys(b).length) return false;
13
+ for (const key of aKeys) if (!Object.hasOwn(b, key) || !shallowEqual(a[key], b[key], depth - 1)) return false;
14
+ return true;
15
+ }
16
+ //#endregion
17
+ export { shallowEqual };
18
+
19
+ //# sourceMappingURL=shallow-equal.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shallow-equal.mjs","names":[],"sources":["../../../../src/core/utils/shallow-equal/shallow-equal.ts"],"sourcesContent":["export function shallowEqual(a: unknown, b: unknown, depth = 1): boolean {\n if (Object.is(a, b)) {\n return true;\n }\n\n if (depth === 0 || typeof a !== 'object' || typeof b !== 'object' || a === null || b === null) {\n return false;\n }\n\n if (Array.isArray(a) || Array.isArray(b)) {\n if (!Array.isArray(a) || !Array.isArray(b) || a.length !== b.length) {\n return false;\n }\n\n for (let i = 0; i < a.length; i += 1) {\n if (!shallowEqual(a[i], b[i], depth - 1)) {\n return false;\n }\n }\n\n return true;\n }\n\n const aKeys = Object.keys(a);\n\n if (aKeys.length !== Object.keys(b).length) {\n return false;\n }\n\n for (const key of aKeys) {\n if (!Object.hasOwn(b, key) || !shallowEqual((a as any)[key], (b as any)[key], depth - 1)) {\n return false;\n }\n }\n\n return true;\n}\n"],"mappings":";;AAAA,SAAgB,aAAa,GAAY,GAAY,QAAQ,GAAY;CACvE,IAAI,OAAO,GAAG,GAAG,CAAC,GAChB,OAAO;CAGT,IAAI,UAAU,KAAK,OAAO,MAAM,YAAY,OAAO,MAAM,YAAY,MAAM,QAAQ,MAAM,MACvF,OAAO;CAGT,IAAI,MAAM,QAAQ,CAAC,KAAK,MAAM,QAAQ,CAAC,GAAG;EACxC,IAAI,CAAC,MAAM,QAAQ,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,KAAK,EAAE,WAAW,EAAE,QAC3D,OAAO;EAGT,KAAK,IAAI,IAAI,GAAG,IAAI,EAAE,QAAQ,KAAK,GACjC,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,QAAQ,CAAC,GACrC,OAAO;EAIX,OAAO;CACT;CAEA,MAAM,QAAQ,OAAO,KAAK,CAAC;CAE3B,IAAI,MAAM,WAAW,OAAO,KAAK,CAAC,CAAC,CAAC,QAClC,OAAO;CAGT,KAAK,MAAM,OAAO,OAChB,IAAI,CAAC,OAAO,OAAO,GAAG,GAAG,KAAK,CAAC,aAAc,EAAU,MAAO,EAAU,MAAM,QAAQ,CAAC,GACrF,OAAO;CAIX,OAAO;AACT"}
package/esm/index.mjs CHANGED
@@ -72,7 +72,7 @@ import { stylesToString } from "./core/InlineStyles/styles-to-string/styles-to-s
72
72
  import { InlineStyles } from "./core/InlineStyles/InlineStyles.mjs";
73
73
  import { hashStyleProps } from "./core/InlineStyles/hash-styles.mjs";
74
74
  import { extractStyleProps } from "./core/Box/style-props/extract-style-props/extract-style-props.mjs";
75
- import { STYlE_PROPS_DATA } from "./core/Box/style-props/style-props-data.mjs";
75
+ import { STYLE_PROPS_DATA } from "./core/Box/style-props/style-props-data.mjs";
76
76
  import { parseStyleProps } from "./core/Box/style-props/parse-style-props/parse-style-props.mjs";
77
77
  import { useRandomClassName } from "./core/Box/use-random-classname/use-random-classname.mjs";
78
78
  import { getStyleObject } from "./core/Box/get-style-object/get-style-object.mjs";
@@ -384,4 +384,4 @@ import { TreeSelectOption } from "./components/TreeSelect/TreeSelectOption.mjs";
384
384
  import { TreeSelect } from "./components/TreeSelect/TreeSelect.mjs";
385
385
  import { Typography } from "./components/Typography/Typography.mjs";
386
386
  import { RemoveScroll } from "react-remove-scroll";
387
- export { Accordion, AccordionChevron, AccordionControl, AccordionItem, AccordionPanel, ActionBar, ActionBarCloseButton, ActionBarDivider, ActionIcon, ActionIconGroup, ActionIconGroupSection, Affix, Alert, AlphaSlider, Anchor, AngleSlider, AppShell, AppShellAside, AppShellFooter, AppShellHeader, AppShellMain, AppShellNavbar, AppShellSection, AspectRatio, Autocomplete, Avatar, AvatarGroup, AvatarGroupContext, BackgroundImage, Badge, Blockquote, Box, Breadcrumbs, Burger, Button, ButtonGroup, ButtonGroupSection, Card, CardSection, Cascader, Center, CheckIcon, Checkbox, CheckboxCard, CheckboxCardContext, CheckboxGroup, CheckboxGroupContext, CheckboxIndicator, Chip, ChipGroup, ChipGroupContext, CloseButton, CloseIcon, Code, Collapse, ColorInput, ColorPicker, ColorSchemeScript, ColorSwatch, Combobox, ComboboxChevron, ComboboxClearButton, ComboboxDropdown, ComboboxDropdownTarget, ComboboxEmpty, ComboboxEventsTarget, ComboboxFooter, ComboboxGroup, ComboboxHeader, ComboboxHiddenInput, ComboboxOption, ComboboxOptions, ComboboxPopover, ComboboxPopoverTarget, ComboboxSearch, ComboboxTarget, Container, CopyButton, DEFAULT_THEME, DataList, DataListItem, DataListItemLabel, DataListItemValue, Dialog, DirectionContext, DirectionProvider, Divider, Drawer, DrawerBody, DrawerCloseButton, DrawerContent, DrawerHeader, DrawerOverlay, DrawerRoot, DrawerStack, DrawerStackContext, DrawerTitle, EmptyState, EmptyStateActions, EmptyStateDescription, EmptyStateIndicator, EmptyStateTitle, FLEX_STYLE_PROPS_DATA, FOCUS_CLASS_NAMES, Fieldset, FileButton, FileInput, FlatTreeNode, Flex, FloatingArrow, FloatingIndicator, FloatingWindow, FocusTrap, FocusTrapInitialFocus, Grid, GridCol, Group, HeadlessMantineProvider, Highlight, HoverCard, HoverCardDropdown, HoverCardGroup, HoverCardGroupContext, HoverCardTarget, HueSlider, Image, Indicator, InlineStyles, Input, InputBase, InputClearButton, InputClearSection, InputDescription, InputError, InputLabel, InputPlaceholder, InputSuccess, InputWrapper, InputWrapperContext, JsonInput, Kbd, List, ListItem, Loader, LoadingOverlay, transitions as MANTINE_TRANSITIONS, MantineContext, MantineProvider, MantineThemeContext, MantineThemeProvider, Mark, Marquee, MaskInput, Menu, MenuCheckboxGroup, MenuCheckboxItem, MenuContextMenu, MenuDivider, MenuDropdown, MenuItem, MenuLabel, MenuRadioGroup, MenuRadioItem, MenuSearch, MenuSub, MenuSubDropdown, MenuSubItem, MenuSubTarget, MenuTarget, Menubar, MenubarDropdown, MenubarMenu, MenubarTarget, Modal, ModalBase, ModalBaseBody, ModalBaseCloseButton, ModalBaseContent, ModalBaseHeader, ModalBaseOverlay, ModalBaseTitle, ModalBody, ModalCloseButton, ModalContent, ModalHeader, ModalOverlay, ModalRoot, ModalStack, ModalStackContext, ModalTitle, MultiSelect, NativeScrollArea, NativeSelect, NavLink, Notification, NumberFormatter, NumberInput, OptionalPortal, OptionsDropdown, OverflowList, Overlay, Pagination, PaginationControl, PaginationDots, PaginationFirst, PaginationItems, PaginationLabel, PaginationLast, PaginationNext, PaginationPrevious, PaginationRoot, Paper, PasswordInput, Pill, PillGroup, PillsInput, PillsInputContext, PillsInputField, PinInput, Popover, PopoverContextMenu, PopoverDropdown, PopoverTarget, Portal, Progress, ProgressLabel, ProgressRoot, ProgressSection, Radio, RadioCard, RadioCardContext, RadioGroup, RadioGroupContext, RadioIcon, RadioIndicator, RangeSlider, Rating, RemoveScroll, RingProgress, RollingNumber, STYlE_PROPS_DATA, ScrollArea, ScrollAreaAutosize, Scroller, SegmentedControl, Select, SemiCircleProgress, SimpleGrid, Skeleton, Slider, Space, Splitter, SplitterPane, Spoiler, Stack, Stepper, StepperCompleted, StepperStep, Switch, SwitchGroup, SwitchGroupContext, Table, TableCaption, TableOfContents, TableScrollContainer, TableTbody, TableTd, TableTfoot, TableTh, TableThead, TableTr, Tabs, TabsList, TabsPanel, TabsTab, TagsInput, Text, TextInput, Textarea, ThemeIcon, Timeline, TimelineItem, Title, Tooltip, TooltipFloating, TooltipGroup, TooltipGroupContext, Transition, Tree, TreeSelect, TreeSelectOption, Typography, UnstyledButton, VisuallyHidden, alpha, camelToKebabCase, closeOnEscape, colorsTuple, convertCssVariables, convertHsvaTo, createEventHandler, createPolymorphicComponent, createSafeContext, createScopedKeydownHandler, createTheme, createUseExternalEvents, createVarsResolver, darken, deepMerge, defaultCssVariablesResolver, defaultLoaders, defaultOptionsFilter, defaultTreeNodeFilter, defaultVariantColorsResolver, em, extractStyleProps, factory, filterProps, filterTreeData, findClosestNumber, findElementAncestor, findElementBySelector, findElementsBySelector, flattenCascaderPaths, flattenTreeData, genericFactory, getArrowMergeDropdownStyles, getAutoContrastValue, getBaseValue, getBreakpointValue, getCSSColorVariables, getCascaderPathOptions, getContextItemIndex, getContrastColor, getDefaultZIndex, getEnv, getFloatingPosition, getFontSize, getGradient, getLineHeight, getOptionsLockup, getParsedComboboxData, getPrimaryContrastColor, getPrimaryShade, getRadius, getRefProp, getRootElement, getSafeId, getShadow, getSingleElementChild, getSize, getSortedBreakpoints, getSpacing, getStyleObject, getThemeColor, getTransitionProps, getTreeExpandedState, getVirtualColorContrast, hashStyleProps, isColorValid, isElement, isLightColor, isMantineColorScheme, isNumberLike, isOptionsGroup, isPrimitive, isVirtualColor, keys, lighten, localStorageColorSchemeManager, luminance, mantineHtmlProps, memoize, mergeAsyncChildren, mergeMantineTheme, mergeThemeOverrides, moveTreeNode, noop, parseColor, parseStyleProps, parseThemeColor, polymorphic, polymorphicFactory, px, rem, resolveClassNames, resolveStyles, rgba, stylesToString, toRgba, useAccordionContext, useAccordionItemContext, useAppShellContext, useCombobox, useComboboxContext, useComboboxTargetProps, useComputedColorScheme, useDataListContext, useDelayedHover, useDirection, useDrawerContext, useDrawersStack, useEmptyStateContext, useGridContext, useHoverCardContext, useHovered, useInputProps, useListContext, useMantineClassNamesPrefix, useMantineColorScheme, useMantineContext, useMantineCssVariablesResolver, useMantineDeduplicateInlineStyles, useMantineEnv, useMantineIsHeadless, useMantineStyleNonce, useMantineStylesTransform, useMantineSxTransform, useMantineTheme, useMantineWithStaticClasses, useMatches, useMenuContext, useMenubarContext, useMenubarMenuContext, useModalContext, useModalsStack, usePaginationContext, usePillsReorder, usePopoverContext, useProgressContext, useProps, useProviderColorScheme, useRandomClassName, useResolvedStylesApi, useSafeMantineTheme, useScrollAreaContext, useSplitterContext, useStepperContext, useStyles, useTableContext, useTabsContext, useTree, useVirtualizedCombobox, v8CssVariablesResolver, validateMantineTheme, virtualColor };
387
+ export { Accordion, AccordionChevron, AccordionControl, AccordionItem, AccordionPanel, ActionBar, ActionBarCloseButton, ActionBarDivider, ActionIcon, ActionIconGroup, ActionIconGroupSection, Affix, Alert, AlphaSlider, Anchor, AngleSlider, AppShell, AppShellAside, AppShellFooter, AppShellHeader, AppShellMain, AppShellNavbar, AppShellSection, AspectRatio, Autocomplete, Avatar, AvatarGroup, AvatarGroupContext, BackgroundImage, Badge, Blockquote, Box, Breadcrumbs, Burger, Button, ButtonGroup, ButtonGroupSection, Card, CardSection, Cascader, Center, CheckIcon, Checkbox, CheckboxCard, CheckboxCardContext, CheckboxGroup, CheckboxGroupContext, CheckboxIndicator, Chip, ChipGroup, ChipGroupContext, CloseButton, CloseIcon, Code, Collapse, ColorInput, ColorPicker, ColorSchemeScript, ColorSwatch, Combobox, ComboboxChevron, ComboboxClearButton, ComboboxDropdown, ComboboxDropdownTarget, ComboboxEmpty, ComboboxEventsTarget, ComboboxFooter, ComboboxGroup, ComboboxHeader, ComboboxHiddenInput, ComboboxOption, ComboboxOptions, ComboboxPopover, ComboboxPopoverTarget, ComboboxSearch, ComboboxTarget, Container, CopyButton, DEFAULT_THEME, DataList, DataListItem, DataListItemLabel, DataListItemValue, Dialog, DirectionContext, DirectionProvider, Divider, Drawer, DrawerBody, DrawerCloseButton, DrawerContent, DrawerHeader, DrawerOverlay, DrawerRoot, DrawerStack, DrawerStackContext, DrawerTitle, EmptyState, EmptyStateActions, EmptyStateDescription, EmptyStateIndicator, EmptyStateTitle, FLEX_STYLE_PROPS_DATA, FOCUS_CLASS_NAMES, Fieldset, FileButton, FileInput, FlatTreeNode, Flex, FloatingArrow, FloatingIndicator, FloatingWindow, FocusTrap, FocusTrapInitialFocus, Grid, GridCol, Group, HeadlessMantineProvider, Highlight, HoverCard, HoverCardDropdown, HoverCardGroup, HoverCardGroupContext, HoverCardTarget, HueSlider, Image, Indicator, InlineStyles, Input, InputBase, InputClearButton, InputClearSection, InputDescription, InputError, InputLabel, InputPlaceholder, InputSuccess, InputWrapper, InputWrapperContext, JsonInput, Kbd, List, ListItem, Loader, LoadingOverlay, transitions as MANTINE_TRANSITIONS, MantineContext, MantineProvider, MantineThemeContext, MantineThemeProvider, Mark, Marquee, MaskInput, Menu, MenuCheckboxGroup, MenuCheckboxItem, MenuContextMenu, MenuDivider, MenuDropdown, MenuItem, MenuLabel, MenuRadioGroup, MenuRadioItem, MenuSearch, MenuSub, MenuSubDropdown, MenuSubItem, MenuSubTarget, MenuTarget, Menubar, MenubarDropdown, MenubarMenu, MenubarTarget, Modal, ModalBase, ModalBaseBody, ModalBaseCloseButton, ModalBaseContent, ModalBaseHeader, ModalBaseOverlay, ModalBaseTitle, ModalBody, ModalCloseButton, ModalContent, ModalHeader, ModalOverlay, ModalRoot, ModalStack, ModalStackContext, ModalTitle, MultiSelect, NativeScrollArea, NativeSelect, NavLink, Notification, NumberFormatter, NumberInput, OptionalPortal, OptionsDropdown, OverflowList, Overlay, Pagination, PaginationControl, PaginationDots, PaginationFirst, PaginationItems, PaginationLabel, PaginationLast, PaginationNext, PaginationPrevious, PaginationRoot, Paper, PasswordInput, Pill, PillGroup, PillsInput, PillsInputContext, PillsInputField, PinInput, Popover, PopoverContextMenu, PopoverDropdown, PopoverTarget, Portal, Progress, ProgressLabel, ProgressRoot, ProgressSection, Radio, RadioCard, RadioCardContext, RadioGroup, RadioGroupContext, RadioIcon, RadioIndicator, RangeSlider, Rating, RemoveScroll, RingProgress, RollingNumber, STYLE_PROPS_DATA, ScrollArea, ScrollAreaAutosize, Scroller, SegmentedControl, Select, SemiCircleProgress, SimpleGrid, Skeleton, Slider, Space, Splitter, SplitterPane, Spoiler, Stack, Stepper, StepperCompleted, StepperStep, Switch, SwitchGroup, SwitchGroupContext, Table, TableCaption, TableOfContents, TableScrollContainer, TableTbody, TableTd, TableTfoot, TableTh, TableThead, TableTr, Tabs, TabsList, TabsPanel, TabsTab, TagsInput, Text, TextInput, Textarea, ThemeIcon, Timeline, TimelineItem, Title, Tooltip, TooltipFloating, TooltipGroup, TooltipGroupContext, Transition, Tree, TreeSelect, TreeSelectOption, Typography, UnstyledButton, VisuallyHidden, alpha, camelToKebabCase, closeOnEscape, colorsTuple, convertCssVariables, convertHsvaTo, createEventHandler, createPolymorphicComponent, createSafeContext, createScopedKeydownHandler, createTheme, createUseExternalEvents, createVarsResolver, darken, deepMerge, defaultCssVariablesResolver, defaultLoaders, defaultOptionsFilter, defaultTreeNodeFilter, defaultVariantColorsResolver, em, extractStyleProps, factory, filterProps, filterTreeData, findClosestNumber, findElementAncestor, findElementBySelector, findElementsBySelector, flattenCascaderPaths, flattenTreeData, genericFactory, getArrowMergeDropdownStyles, getAutoContrastValue, getBaseValue, getBreakpointValue, getCSSColorVariables, getCascaderPathOptions, getContextItemIndex, getContrastColor, getDefaultZIndex, getEnv, getFloatingPosition, getFontSize, getGradient, getLineHeight, getOptionsLockup, getParsedComboboxData, getPrimaryContrastColor, getPrimaryShade, getRadius, getRefProp, getRootElement, getSafeId, getShadow, getSingleElementChild, getSize, getSortedBreakpoints, getSpacing, getStyleObject, getThemeColor, getTransitionProps, getTreeExpandedState, getVirtualColorContrast, hashStyleProps, isColorValid, isElement, isLightColor, isMantineColorScheme, isNumberLike, isOptionsGroup, isPrimitive, isVirtualColor, keys, lighten, localStorageColorSchemeManager, luminance, mantineHtmlProps, memoize, mergeAsyncChildren, mergeMantineTheme, mergeThemeOverrides, moveTreeNode, noop, parseColor, parseStyleProps, parseThemeColor, polymorphic, polymorphicFactory, px, rem, resolveClassNames, resolveStyles, rgba, stylesToString, toRgba, useAccordionContext, useAccordionItemContext, useAppShellContext, useCombobox, useComboboxContext, useComboboxTargetProps, useComputedColorScheme, useDataListContext, useDelayedHover, useDirection, useDrawerContext, useDrawersStack, useEmptyStateContext, useGridContext, useHoverCardContext, useHovered, useInputProps, useListContext, useMantineClassNamesPrefix, useMantineColorScheme, useMantineContext, useMantineCssVariablesResolver, useMantineDeduplicateInlineStyles, useMantineEnv, useMantineIsHeadless, useMantineStyleNonce, useMantineStylesTransform, useMantineSxTransform, useMantineTheme, useMantineWithStaticClasses, useMatches, useMenuContext, useMenubarContext, useMenubarMenuContext, useModalContext, useModalsStack, usePaginationContext, usePillsReorder, usePopoverContext, useProgressContext, useProps, useProviderColorScheme, useRandomClassName, useResolvedStylesApi, useSafeMantineTheme, useScrollAreaContext, useSplitterContext, useStepperContext, useStyles, useTableContext, useTabsContext, useTree, useVirtualizedCombobox, v8CssVariablesResolver, validateMantineTheme, virtualColor };
@@ -47,7 +47,7 @@ export interface ComboboxLikeProps<Value extends Primitive = string> {
47
47
  limit?: number;
48
48
  /** Determines whether the options should be wrapped with `ScrollArea.AutoSize`, `true` by default */
49
49
  withScrollArea?: boolean;
50
- /** `max-height` of the dropdown, only applicable when `withScrollArea` prop is `true`, `250` by default */
50
+ /** `max-height` of the dropdown, only applicable when `withScrollArea` prop is `true`, `220` by default */
51
51
  maxDropdownHeight?: number | string;
52
52
  /** If set to `'viewport'`, the dropdown grows to fill the available vertical space in the viewport. Disables the `flip` middleware. */
53
53
  floatingHeight?: 'viewport';
@@ -33,7 +33,7 @@ export interface ComboboxPopoverProps<Multiple extends boolean = false, Value ex
33
33
  limit?: number;
34
34
  /** Determines whether the options should be wrapped with ScrollArea.AutoSize @default true */
35
35
  withScrollArea?: boolean;
36
- /** max-height of the dropdown @default 250 */
36
+ /** max-height of the dropdown @default 220 */
37
37
  maxDropdownHeight?: number | string;
38
38
  /** If set, the first option is selected when dropdown opens @default false */
39
39
  selectFirstOptionOnDropdownOpen?: boolean;
@@ -14,7 +14,7 @@ export interface MarqueeProps extends BoxProps, StylesApiProps<MarqueeFactory>,
14
14
  orientation?: 'horizontal' | 'vertical';
15
15
  /** Number of times children are repeated inline for seamless scrolling @default 4 */
16
16
  repeat?: number;
17
- /** Animation duration in ms @default 40000 */
17
+ /** Animation duration in ms @default 100000 */
18
18
  duration?: number;
19
19
  /** Gap between repeated children, key of `theme.spacing` or any valid CSS value @default 'md' */
20
20
  gap?: MantineSpacing;
@@ -0,0 +1 @@
1
+ export declare function getCaretPositionAfterPaste(rawValue: string, rawCaret: number, formattedValue: string, decimalSeparator: string): number;
@@ -0,0 +1,7 @@
1
+ export interface NormalizePastedValueOptions {
2
+ decimalSeparator: string;
3
+ thousandSeparator?: string;
4
+ allowedDecimalSeparators: string[];
5
+ thousandsGroupStyle?: 'thousand' | 'lakh' | 'wan' | 'none';
6
+ }
7
+ export declare function normalizePastedValue(value: string, { decimalSeparator, thousandSeparator, allowedDecimalSeparators, thousandsGroupStyle, }: NormalizePastedValueOptions): string;
@@ -10,7 +10,7 @@ export interface PinInputProps extends BoxProps, StylesApiProps<PinInputFactory>
10
10
  name?: string;
11
11
  /** Hidden input `form` attribute */
12
12
  form?: string;
13
- /** Key of `theme.spacing` or any valid CSS value to set `gap` between inputs, numbers are converted to rem @default 'md' */
13
+ /** Key of `theme.spacing` or any valid CSS value to set `gap` between inputs, numbers are converted to rem @default 'sm' */
14
14
  gap?: MantineSpacing;
15
15
  /** Key of `theme.radius` or any valid CSS value to set `border-radius`, numbers are converted to rem @default theme.defaultRadius */
16
16
  radius?: MantineRadius;
@@ -20,7 +20,7 @@ export interface ThumbProps extends Omit<React.ComponentProps<'div'>, 'value'> {
20
20
  className?: string | undefined;
21
21
  style?: React.CSSProperties;
22
22
  }
23
- export declare function Thumb({ max, min, value, position, label, dragging, onMouseDown, onKeyDownCapture, labelTransitionProps, labelAlwaysOn, thumbLabel, thumbValueText, onFocus, onBlur, showLabelOnHover, isHovered, children, disabled, orientation, ref, }: ThumbProps): import("react").JSX.Element;
23
+ export declare function Thumb({ max, min, value, position, label, dragging, onMouseDown, onKeyDownCapture, labelTransitionProps, labelAlwaysOn, thumbLabel, thumbValueText, onFocus, onBlur, showLabelOnHover, isHovered, children, disabled, orientation, className, style, ref, ...others }: ThumbProps): import("react").JSX.Element;
24
24
  export declare namespace Thumb {
25
25
  var displayName: string;
26
26
  }
@@ -35,7 +35,7 @@ export interface TooltipProps extends TooltipBaseProps {
35
35
  focus: boolean;
36
36
  touch: boolean;
37
37
  };
38
- /** If set, the tooltip stays open while the pointer moves from the target to the tooltip and remains over it. Required by [WCAG 1.4.13](https://www.w3.org/WAI/WCAG21/Understanding/content-on-hover-or-focus.html) if the tooltip contains interactive content. Note that an interactive tooltip intercepts pointer events of the content it overlaps @default false */
38
+ /** If set, the tooltip stays open while the pointer is over it @default false */
39
39
  interactive?: boolean;
40
40
  /** Must be set if the tooltip target is an inline element */
41
41
  inline?: boolean;
@@ -1,5 +1,5 @@
1
1
  export * from './style-props.types';
2
2
  export { extractStyleProps } from './extract-style-props/extract-style-props';
3
- export { STYlE_PROPS_DATA } from './style-props-data';
3
+ export { STYLE_PROPS_DATA } from './style-props-data';
4
4
  export { parseStyleProps } from './parse-style-props/parse-style-props';
5
5
  export type { SystemPropData } from './style-props-data';
@@ -4,4 +4,4 @@ export interface SystemPropData {
4
4
  type: StylePropType;
5
5
  property: string | string[];
6
6
  }
7
- export declare const STYlE_PROPS_DATA: Record<keyof MantineStyleProps, SystemPropData>;
7
+ export declare const STYLE_PROPS_DATA: Record<keyof MantineStyleProps, SystemPropData>;
@@ -17,9 +17,10 @@ export interface UseStylesInput<Payload extends FactoryPayload> {
17
17
  vars?: PartialVarsResolver<Payload>;
18
18
  varsResolver?: VarsResolver<Payload>;
19
19
  attributes?: Attributes<Payload>;
20
+ stable?: boolean;
20
21
  }
21
22
  export type GetStylesApi<Payload extends FactoryPayload> = (selector: NonNullable<Payload['stylesNames']>, options?: GetStylesApiOptions) => {
22
23
  className: string;
23
24
  style: CSSProperties;
24
25
  };
25
- export declare function useStyles<Payload extends FactoryPayload>({ name, classes, props, stylesCtx, className, style, rootSelector, unstyled, classNames, styles, vars, varsResolver, attributes, }: UseStylesInput<Payload>): GetStylesApi<Payload>;
26
+ export declare function useStyles<Payload extends FactoryPayload>({ name, classes, props, stylesCtx, className, style, rootSelector, unstyled, classNames, styles, vars, varsResolver, attributes, stable, }: UseStylesInput<Payload>): GetStylesApi<Payload>;
@@ -0,0 +1 @@
1
+ export declare function shallowEqual(a: unknown, b: unknown, depth?: number): boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mantine/core",
3
- "version": "9.6.1",
3
+ "version": "9.6.3",
4
4
  "description": "React components library focused on usability, accessibility and developer experience",
5
5
  "homepage": "https://mantine.dev/",
6
6
  "license": "MIT",
@@ -43,7 +43,7 @@
43
43
  "directory": "packages/@mantine/core"
44
44
  },
45
45
  "peerDependencies": {
46
- "@mantine/hooks": "9.6.1",
46
+ "@mantine/hooks": "9.6.3",
47
47
  "react": "^19.2.0",
48
48
  "react-dom": "^19.2.0"
49
49
  },
@@ -98,7 +98,7 @@
98
98
  .m_1f9675ae {
99
99
  display: flex;
100
100
  gap: var(--marquee-gap, var(--mantine-spacing-md));
101
- animation-duration: var(--marquee-duration, 40000ms);
101
+ animation-duration: var(--marquee-duration, 100000ms);
102
102
  animation-timing-function: linear;
103
103
  animation-iteration-count: infinite;
104
104
  }
@@ -98,7 +98,7 @@
98
98
  .m_1f9675ae {
99
99
  display: flex;
100
100
  gap: var(--marquee-gap, var(--mantine-spacing-md));
101
- animation-duration: var(--marquee-duration, 40000ms);
101
+ animation-duration: var(--marquee-duration, 100000ms);
102
102
  animation-timing-function: linear;
103
103
  animation-iteration-count: infinite;
104
104
  }
package/styles.css CHANGED
@@ -5186,7 +5186,7 @@ fieldset:disabled .m_8ee546b8,
5186
5186
  .m_1f9675ae {
5187
5187
  display: flex;
5188
5188
  gap: var(--marquee-gap, var(--mantine-spacing-md));
5189
- animation-duration: var(--marquee-duration, 40000ms);
5189
+ animation-duration: var(--marquee-duration, 100000ms);
5190
5190
  animation-timing-function: linear;
5191
5191
  animation-iteration-count: infinite;
5192
5192
  }
package/styles.layer.css CHANGED
@@ -5186,7 +5186,7 @@ fieldset:disabled .m_8ee546b8,
5186
5186
  .m_1f9675ae {
5187
5187
  display: flex;
5188
5188
  gap: var(--marquee-gap, var(--mantine-spacing-md));
5189
- animation-duration: var(--marquee-duration, 40000ms);
5189
+ animation-duration: var(--marquee-duration, 100000ms);
5190
5190
  animation-timing-function: linear;
5191
5191
  animation-iteration-count: infinite;
5192
5192
  }