@mantine/core 9.0.1 → 9.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/components/Blockquote/Blockquote.cjs +5 -6
- package/cjs/components/Blockquote/Blockquote.cjs.map +1 -1
- package/cjs/components/Flex/Flex.cjs +7 -2
- package/cjs/components/Flex/Flex.cjs.map +1 -1
- package/cjs/components/FloatingIndicator/FloatingIndicator.cjs +1 -2
- package/cjs/components/FloatingIndicator/FloatingIndicator.cjs.map +1 -1
- package/cjs/components/MaskInput/MaskInput.cjs +24 -0
- package/cjs/components/MaskInput/MaskInput.cjs.map +1 -0
- package/cjs/components/MaskInput/use-mask-input-props.cjs +29 -0
- package/cjs/components/MaskInput/use-mask-input-props.cjs.map +1 -0
- package/cjs/components/Rating/Rating.cjs +1 -2
- package/cjs/components/Rating/Rating.cjs.map +1 -1
- package/cjs/components/SemiCircleProgress/SemiCircleProgress.cjs +2 -0
- package/cjs/components/SemiCircleProgress/SemiCircleProgress.cjs.map +1 -1
- package/cjs/components/Slider/Marks/Marks.cjs +3 -2
- package/cjs/components/Slider/Marks/Marks.cjs.map +1 -1
- package/cjs/components/Slider/Marks/is-mark-filled.cjs +2 -1
- package/cjs/components/Slider/Marks/is-mark-filled.cjs.map +1 -1
- package/cjs/components/Slider/Slider/Slider.cjs +12 -3
- package/cjs/components/Slider/Slider/Slider.cjs.map +1 -1
- package/cjs/components/Slider/Track/Track.cjs +3 -2
- package/cjs/components/Slider/Track/Track.cjs.map +1 -1
- package/cjs/components/Tabs/Tabs.cjs +3 -1
- package/cjs/components/Tabs/Tabs.cjs.map +1 -1
- package/cjs/components/Tabs/Tabs.context.cjs.map +1 -1
- package/cjs/components/Tabs/TabsPanel/TabsPanel.cjs +2 -1
- package/cjs/components/Tabs/TabsPanel/TabsPanel.cjs.map +1 -1
- package/cjs/components/Textarea/Autosize.cjs +1 -0
- package/cjs/components/Textarea/Autosize.cjs.map +1 -1
- package/cjs/components/Tree/FlatTreeNode.cjs +102 -0
- package/cjs/components/Tree/FlatTreeNode.cjs.map +1 -0
- package/cjs/components/Tree/Tree.cjs +10 -2
- package/cjs/components/Tree/Tree.cjs.map +1 -1
- package/cjs/components/Tree/Tree.module.cjs.map +1 -1
- package/cjs/components/Tree/TreeNode.cjs +65 -27
- package/cjs/components/Tree/TreeNode.cjs.map +1 -1
- package/cjs/components/Tree/filter-tree-data/filter-tree-data.cjs +23 -0
- package/cjs/components/Tree/filter-tree-data/filter-tree-data.cjs.map +1 -0
- package/cjs/components/Tree/flatten-tree-data/flatten-tree-data.cjs +28 -0
- package/cjs/components/Tree/flatten-tree-data/flatten-tree-data.cjs.map +1 -0
- package/cjs/components/Tree/get-children-nodes-values/get-children-nodes-values.cjs +1 -0
- package/cjs/components/Tree/merge-async-children/merge-async-children.cjs +32 -0
- package/cjs/components/Tree/merge-async-children/merge-async-children.cjs.map +1 -0
- package/cjs/components/Tree/move-tree-node/move-tree-node.cjs +78 -0
- package/cjs/components/Tree/move-tree-node/move-tree-node.cjs.map +1 -0
- package/cjs/components/Tree/use-tree-node-drag-drop.cjs +96 -0
- package/cjs/components/Tree/use-tree-node-drag-drop.cjs.map +1 -0
- package/cjs/components/Tree/use-tree.cjs +176 -26
- package/cjs/components/Tree/use-tree.cjs.map +1 -1
- package/cjs/core/Box/Box.cjs +6 -2
- package/cjs/core/Box/Box.cjs.map +1 -1
- package/cjs/core/InlineStyles/InlineStyles.cjs +14 -2
- package/cjs/core/InlineStyles/InlineStyles.cjs.map +1 -1
- package/cjs/core/InlineStyles/hash-styles.cjs +15 -0
- package/cjs/core/InlineStyles/hash-styles.cjs.map +1 -0
- package/cjs/core/MantineProvider/Mantine.context.cjs +4 -0
- package/cjs/core/MantineProvider/Mantine.context.cjs.map +1 -1
- package/cjs/core/MantineProvider/MantineProvider.cjs +3 -2
- package/cjs/core/MantineProvider/MantineProvider.cjs.map +1 -1
- package/cjs/core/MantineProvider/color-functions/default-variant-colors-resolver/default-variant-colors-resolver.cjs +3 -4
- package/cjs/core/MantineProvider/color-functions/default-variant-colors-resolver/default-variant-colors-resolver.cjs.map +1 -1
- package/cjs/index.cjs +16 -0
- package/esm/components/Blockquote/Blockquote.mjs +5 -6
- package/esm/components/Blockquote/Blockquote.mjs.map +1 -1
- package/esm/components/Flex/Flex.mjs +7 -2
- package/esm/components/Flex/Flex.mjs.map +1 -1
- package/esm/components/FloatingIndicator/FloatingIndicator.mjs +1 -2
- package/esm/components/FloatingIndicator/FloatingIndicator.mjs.map +1 -1
- package/esm/components/MaskInput/MaskInput.mjs +23 -0
- package/esm/components/MaskInput/MaskInput.mjs.map +1 -0
- package/esm/components/MaskInput/use-mask-input-props.mjs +28 -0
- package/esm/components/MaskInput/use-mask-input-props.mjs.map +1 -0
- package/esm/components/Rating/Rating.mjs +1 -2
- package/esm/components/Rating/Rating.mjs.map +1 -1
- package/esm/components/SemiCircleProgress/SemiCircleProgress.mjs +2 -0
- package/esm/components/SemiCircleProgress/SemiCircleProgress.mjs.map +1 -1
- package/esm/components/Slider/Marks/Marks.mjs +3 -2
- package/esm/components/Slider/Marks/Marks.mjs.map +1 -1
- package/esm/components/Slider/Marks/is-mark-filled.mjs +2 -1
- package/esm/components/Slider/Marks/is-mark-filled.mjs.map +1 -1
- package/esm/components/Slider/Slider/Slider.mjs +12 -3
- package/esm/components/Slider/Slider/Slider.mjs.map +1 -1
- package/esm/components/Slider/Track/Track.mjs +3 -2
- package/esm/components/Slider/Track/Track.mjs.map +1 -1
- package/esm/components/Tabs/Tabs.context.mjs.map +1 -1
- package/esm/components/Tabs/Tabs.mjs +3 -1
- package/esm/components/Tabs/Tabs.mjs.map +1 -1
- package/esm/components/Tabs/TabsPanel/TabsPanel.mjs +2 -1
- package/esm/components/Tabs/TabsPanel/TabsPanel.mjs.map +1 -1
- package/esm/components/Textarea/Autosize.mjs +1 -0
- package/esm/components/Textarea/Autosize.mjs.map +1 -1
- package/esm/components/Tree/FlatTreeNode.mjs +101 -0
- package/esm/components/Tree/FlatTreeNode.mjs.map +1 -0
- package/esm/components/Tree/Tree.mjs +11 -3
- package/esm/components/Tree/Tree.mjs.map +1 -1
- package/esm/components/Tree/Tree.module.mjs.map +1 -1
- package/esm/components/Tree/TreeNode.mjs +65 -27
- package/esm/components/Tree/TreeNode.mjs.map +1 -1
- package/esm/components/Tree/filter-tree-data/filter-tree-data.mjs +22 -0
- package/esm/components/Tree/filter-tree-data/filter-tree-data.mjs.map +1 -0
- package/esm/components/Tree/flatten-tree-data/flatten-tree-data.mjs +28 -0
- package/esm/components/Tree/flatten-tree-data/flatten-tree-data.mjs.map +1 -0
- package/esm/components/Tree/get-children-nodes-values/get-children-nodes-values.mjs +1 -1
- package/esm/components/Tree/merge-async-children/merge-async-children.mjs +32 -0
- package/esm/components/Tree/merge-async-children/merge-async-children.mjs.map +1 -0
- package/esm/components/Tree/move-tree-node/move-tree-node.mjs +78 -0
- package/esm/components/Tree/move-tree-node/move-tree-node.mjs.map +1 -0
- package/esm/components/Tree/use-tree-node-drag-drop.mjs +96 -0
- package/esm/components/Tree/use-tree-node-drag-drop.mjs.map +1 -0
- package/esm/components/Tree/use-tree.mjs +177 -27
- package/esm/components/Tree/use-tree.mjs.map +1 -1
- package/esm/core/Box/Box.mjs +7 -3
- package/esm/core/Box/Box.mjs.map +1 -1
- package/esm/core/InlineStyles/InlineStyles.mjs +14 -2
- package/esm/core/InlineStyles/InlineStyles.mjs.map +1 -1
- package/esm/core/InlineStyles/hash-styles.mjs +15 -0
- package/esm/core/InlineStyles/hash-styles.mjs.map +1 -0
- package/esm/core/MantineProvider/Mantine.context.mjs +4 -1
- package/esm/core/MantineProvider/Mantine.context.mjs.map +1 -1
- package/esm/core/MantineProvider/MantineProvider.mjs +3 -2
- package/esm/core/MantineProvider/MantineProvider.mjs.map +1 -1
- package/esm/core/MantineProvider/color-functions/default-variant-colors-resolver/default-variant-colors-resolver.mjs +3 -4
- package/esm/core/MantineProvider/color-functions/default-variant-colors-resolver/default-variant-colors-resolver.mjs.map +1 -1
- package/esm/index.mjs +9 -2
- package/lib/components/MaskInput/MaskInput.d.ts +68 -0
- package/lib/components/MaskInput/index.d.ts +7 -0
- package/lib/components/MaskInput/use-mask-input-props.d.ts +428 -0
- package/lib/components/Slider/Marks/Marks.d.ts +2 -1
- package/lib/components/Slider/Marks/is-mark-filled.d.ts +2 -1
- package/lib/components/Slider/Slider/Slider.d.ts +2 -0
- package/lib/components/Slider/Track/Track.d.ts +2 -1
- package/lib/components/Tabs/Tabs.context.d.ts +1 -0
- package/lib/components/Tabs/Tabs.d.ts +2 -0
- package/lib/components/Tree/FlatTreeNode.d.ts +31 -0
- package/lib/components/Tree/Tree.d.ts +21 -1
- package/lib/components/Tree/TreeNode.d.ts +6 -2
- package/lib/components/Tree/filter-tree-data/filter-tree-data.d.ts +4 -0
- package/lib/components/Tree/flatten-tree-data/flatten-tree-data.d.ts +15 -0
- package/lib/components/Tree/index.d.ts +9 -0
- package/lib/components/Tree/merge-async-children/merge-async-children.d.ts +2 -0
- package/lib/components/Tree/move-tree-node/move-tree-node.d.ts +11 -0
- package/lib/components/Tree/use-tree-node-drag-drop.d.ts +18 -0
- package/lib/components/Tree/use-tree.d.ts +19 -1
- package/lib/components/index.d.ts +1 -0
- package/lib/core/InlineStyles/InlineStyles.d.ts +2 -1
- package/lib/core/InlineStyles/hash-styles.d.ts +2 -0
- package/lib/core/InlineStyles/index.d.ts +1 -0
- package/lib/core/MantineProvider/Mantine.context.d.ts +2 -0
- package/lib/core/MantineProvider/MantineProvider.d.ts +3 -1
- package/lib/core/MantineProvider/index.d.ts +1 -1
- package/package.json +5 -5
- package/styles/Tree.css +66 -0
- package/styles/Tree.layer.css +66 -0
- package/styles.css +66 -0
- package/styles.layer.css +66 -0
|
@@ -3,12 +3,24 @@ import { useMantineStyleNonce } from "../MantineProvider/Mantine.context.mjs";
|
|
|
3
3
|
import { stylesToString } from "./styles-to-string/styles-to-string.mjs";
|
|
4
4
|
import { jsx } from "react/jsx-runtime";
|
|
5
5
|
//#region packages/@mantine/core/src/core/InlineStyles/InlineStyles.tsx
|
|
6
|
-
function
|
|
6
|
+
function simpleHash(str) {
|
|
7
|
+
let hash = 5381;
|
|
8
|
+
for (let i = 0; i < str.length; i++) hash = (hash << 5) + hash + str.charCodeAt(i) & 4294967295;
|
|
9
|
+
return (hash >>> 0).toString(36);
|
|
10
|
+
}
|
|
11
|
+
function InlineStyles({ deduplicate, ...props }) {
|
|
7
12
|
const nonce = useMantineStyleNonce();
|
|
13
|
+
const css = stylesToString(props);
|
|
14
|
+
if (deduplicate) return /* @__PURE__ */ jsx("style", {
|
|
15
|
+
href: `mantine-${simpleHash(css)}`,
|
|
16
|
+
precedence: "mantine",
|
|
17
|
+
nonce: nonce?.(),
|
|
18
|
+
children: css
|
|
19
|
+
});
|
|
8
20
|
return /* @__PURE__ */ jsx("style", {
|
|
9
21
|
"data-mantine-styles": "inline",
|
|
10
22
|
nonce: nonce?.(),
|
|
11
|
-
dangerouslySetInnerHTML: { __html:
|
|
23
|
+
dangerouslySetInnerHTML: { __html: css }
|
|
12
24
|
});
|
|
13
25
|
}
|
|
14
26
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InlineStyles.mjs","names":[],"sources":["../../../src/core/InlineStyles/InlineStyles.tsx"],"sourcesContent":["import { useMantineStyleNonce } from '../MantineProvider';\nimport { InlineStylesInput, stylesToString } from './styles-to-string/styles-to-string';\n\nexport interface InlineStylesProps\n extends InlineStylesInput, Omit<React.ComponentProps<'style'>, keyof InlineStylesInput> {}\n\nexport function InlineStyles(props:
|
|
1
|
+
{"version":3,"file":"InlineStyles.mjs","names":[],"sources":["../../../src/core/InlineStyles/InlineStyles.tsx"],"sourcesContent":["import { useMantineStyleNonce } from '../MantineProvider';\nimport { InlineStylesInput, stylesToString } from './styles-to-string/styles-to-string';\n\nexport interface InlineStylesProps\n extends InlineStylesInput, Omit<React.ComponentProps<'style'>, keyof InlineStylesInput> {\n deduplicate?: boolean;\n}\n\nfunction simpleHash(str: string): string {\n let hash = 5381;\n for (let i = 0; i < str.length; i++) {\n hash = ((hash << 5) + hash + str.charCodeAt(i)) & 0xffffffff;\n }\n return (hash >>> 0).toString(36);\n}\n\nexport function InlineStyles({ deduplicate, ...props }: InlineStylesProps) {\n const nonce = useMantineStyleNonce();\n const css = stylesToString(props);\n\n if (deduplicate) {\n return (\n <style href={`mantine-${simpleHash(css)}`} precedence=\"mantine\" nonce={nonce?.()}>\n {css}\n </style>\n );\n }\n\n return (\n <style\n data-mantine-styles=\"inline\"\n nonce={nonce?.()}\n dangerouslySetInnerHTML={{ __html: css }}\n />\n );\n}\n"],"mappings":";;;;;AAQA,SAAS,WAAW,KAAqB;CACvC,IAAI,OAAO;AACX,MAAK,IAAI,IAAI,GAAG,IAAI,IAAI,QAAQ,IAC9B,SAAS,QAAQ,KAAK,OAAO,IAAI,WAAW,EAAE,GAAI;AAEpD,SAAQ,SAAS,GAAG,SAAS,GAAG;;AAGlC,SAAgB,aAAa,EAAE,aAAa,GAAG,SAA4B;CACzE,MAAM,QAAQ,sBAAsB;CACpC,MAAM,MAAM,eAAe,MAAM;AAEjC,KAAI,YACF,QACE,oBAAC,SAAD;EAAO,MAAM,WAAW,WAAW,IAAI;EAAI,YAAW;EAAU,OAAO,SAAS;YAC7E;EACK,CAAA;AAIZ,QACE,oBAAC,SAAD;EACE,uBAAoB;EACpB,OAAO,SAAS;EAChB,yBAAyB,EAAE,QAAQ,KAAK;EACxC,CAAA"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { cssObjectToString } from "./css-object-to-string/css-object-to-string.mjs";
|
|
3
|
+
//#region packages/@mantine/core/src/core/InlineStyles/hash-styles.ts
|
|
4
|
+
function djb2Hash(str) {
|
|
5
|
+
let hash = 5381;
|
|
6
|
+
for (let i = 0; i < str.length; i++) hash = (hash << 5) + hash + str.charCodeAt(i) & 4294967295;
|
|
7
|
+
return (hash >>> 0).toString(36);
|
|
8
|
+
}
|
|
9
|
+
function hashStyleProps(styles, media) {
|
|
10
|
+
return `__mdi__-${djb2Hash(`${styles ? cssObjectToString(styles) : ""}|${Array.isArray(media) ? media.map((m) => `${m.query}:${cssObjectToString(m.styles)}`).join("|") : ""}`)}`;
|
|
11
|
+
}
|
|
12
|
+
//#endregion
|
|
13
|
+
export { hashStyleProps };
|
|
14
|
+
|
|
15
|
+
//# sourceMappingURL=hash-styles.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hash-styles.mjs","names":[],"sources":["../../../src/core/InlineStyles/hash-styles.ts"],"sourcesContent":["import { cssObjectToString } from './css-object-to-string/css-object-to-string';\nimport type { InlineStylesMediaQuery } from './styles-to-string/styles-to-string';\n\nfunction djb2Hash(str: string): string {\n let hash = 5381;\n for (let i = 0; i < str.length; i++) {\n hash = ((hash << 5) + hash + str.charCodeAt(i)) & 0xffffffff;\n }\n return (hash >>> 0).toString(36);\n}\n\nexport function hashStyleProps(\n styles: React.CSSProperties | undefined,\n media: InlineStylesMediaQuery[] | undefined\n): string {\n const stylesStr = styles ? cssObjectToString(styles) : '';\n const mediaStr = Array.isArray(media)\n ? media.map((m) => `${m.query}:${cssObjectToString(m.styles)}`).join('|')\n : '';\n return `__mdi__-${djb2Hash(`${stylesStr}|${mediaStr}`)}`;\n}\n"],"mappings":";;;AAGA,SAAS,SAAS,KAAqB;CACrC,IAAI,OAAO;AACX,MAAK,IAAI,IAAI,GAAG,IAAI,IAAI,QAAQ,IAC9B,SAAS,QAAQ,KAAK,OAAO,IAAI,WAAW,EAAE,GAAI;AAEpD,SAAQ,SAAS,GAAG,SAAS,GAAG;;AAGlC,SAAgB,eACd,QACA,OACQ;AAKR,QAAO,WAAW,SAAS,GAJT,SAAS,kBAAkB,OAAO,GAAG,GAIf,GAHvB,MAAM,QAAQ,MAAM,GACjC,MAAM,KAAK,MAAM,GAAG,EAAE,MAAM,GAAG,kBAAkB,EAAE,OAAO,GAAG,CAAC,KAAK,IAAI,GACvE,KACkD"}
|
|
@@ -31,7 +31,10 @@ function useMantineStylesTransform() {
|
|
|
31
31
|
function useMantineEnv() {
|
|
32
32
|
return useMantineContext().env || "default";
|
|
33
33
|
}
|
|
34
|
+
function useMantineDeduplicateInlineStyles() {
|
|
35
|
+
return useMantineContext().deduplicateInlineStyles;
|
|
36
|
+
}
|
|
34
37
|
//#endregion
|
|
35
|
-
export { MantineContext, useMantineClassNamesPrefix, useMantineContext, useMantineCssVariablesResolver, useMantineEnv, useMantineIsHeadless, useMantineStyleNonce, useMantineStylesTransform, useMantineSxTransform, useMantineWithStaticClasses };
|
|
38
|
+
export { MantineContext, useMantineClassNamesPrefix, useMantineContext, useMantineCssVariablesResolver, useMantineDeduplicateInlineStyles, useMantineEnv, useMantineIsHeadless, useMantineStyleNonce, useMantineStylesTransform, useMantineSxTransform, useMantineWithStaticClasses };
|
|
36
39
|
|
|
37
40
|
//# sourceMappingURL=Mantine.context.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Mantine.context.mjs","names":[],"sources":["../../../src/core/MantineProvider/Mantine.context.ts"],"sourcesContent":["import { createContext, use } from 'react';\nimport { ConvertCSSVariablesInput } from './convert-css-variables';\nimport type { MantineColorScheme, MantineTheme } from './theme.types';\n\nexport interface MantineStylesTransform {\n sx?: () => (sx: any) => string;\n styles?: () => (styles: any, payload: any) => Record<string, string>;\n}\n\ninterface MantineContextValue {\n colorScheme: MantineColorScheme;\n setColorScheme: (colorScheme: MantineColorScheme) => void;\n clearColorScheme: () => void;\n getRootElement: () => HTMLElement | undefined;\n classNamesPrefix: string;\n getStyleNonce?: () => string | undefined;\n cssVariablesResolver?: (theme: MantineTheme) => ConvertCSSVariablesInput;\n cssVariablesSelector: string;\n withStaticClasses: boolean;\n headless?: boolean;\n stylesTransform?: MantineStylesTransform;\n env?: 'default' | 'test';\n}\n\nexport const MantineContext = createContext<MantineContextValue | null>(null);\n\nexport function useMantineContext() {\n const ctx = use(MantineContext);\n\n if (!ctx) {\n throw new Error('[@mantine/core] MantineProvider was not found in tree');\n }\n\n return ctx;\n}\n\nexport function useMantineCssVariablesResolver() {\n return useMantineContext().cssVariablesResolver;\n}\n\nexport function useMantineClassNamesPrefix() {\n return useMantineContext().classNamesPrefix;\n}\n\nexport function useMantineStyleNonce() {\n return useMantineContext().getStyleNonce;\n}\n\nexport function useMantineWithStaticClasses() {\n return useMantineContext().withStaticClasses;\n}\n\nexport function useMantineIsHeadless() {\n return useMantineContext().headless;\n}\n\nexport function useMantineSxTransform() {\n return useMantineContext().stylesTransform?.sx;\n}\n\nexport function useMantineStylesTransform() {\n return useMantineContext().stylesTransform?.styles;\n}\n\nexport function useMantineEnv() {\n return useMantineContext().env || 'default';\n}\n"],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"Mantine.context.mjs","names":[],"sources":["../../../src/core/MantineProvider/Mantine.context.ts"],"sourcesContent":["import { createContext, use } from 'react';\nimport { ConvertCSSVariablesInput } from './convert-css-variables';\nimport type { MantineColorScheme, MantineTheme } from './theme.types';\n\nexport interface MantineStylesTransform {\n sx?: () => (sx: any) => string;\n styles?: () => (styles: any, payload: any) => Record<string, string>;\n}\n\ninterface MantineContextValue {\n colorScheme: MantineColorScheme;\n setColorScheme: (colorScheme: MantineColorScheme) => void;\n clearColorScheme: () => void;\n getRootElement: () => HTMLElement | undefined;\n classNamesPrefix: string;\n getStyleNonce?: () => string | undefined;\n cssVariablesResolver?: (theme: MantineTheme) => ConvertCSSVariablesInput;\n cssVariablesSelector: string;\n withStaticClasses: boolean;\n headless?: boolean;\n stylesTransform?: MantineStylesTransform;\n env?: 'default' | 'test';\n deduplicateInlineStyles?: boolean;\n}\n\nexport const MantineContext = createContext<MantineContextValue | null>(null);\n\nexport function useMantineContext() {\n const ctx = use(MantineContext);\n\n if (!ctx) {\n throw new Error('[@mantine/core] MantineProvider was not found in tree');\n }\n\n return ctx;\n}\n\nexport function useMantineCssVariablesResolver() {\n return useMantineContext().cssVariablesResolver;\n}\n\nexport function useMantineClassNamesPrefix() {\n return useMantineContext().classNamesPrefix;\n}\n\nexport function useMantineStyleNonce() {\n return useMantineContext().getStyleNonce;\n}\n\nexport function useMantineWithStaticClasses() {\n return useMantineContext().withStaticClasses;\n}\n\nexport function useMantineIsHeadless() {\n return useMantineContext().headless;\n}\n\nexport function useMantineSxTransform() {\n return useMantineContext().stylesTransform?.sx;\n}\n\nexport function useMantineStylesTransform() {\n return useMantineContext().stylesTransform?.styles;\n}\n\nexport function useMantineEnv() {\n return useMantineContext().env || 'default';\n}\n\nexport function useMantineDeduplicateInlineStyles() {\n return useMantineContext().deduplicateInlineStyles;\n}\n"],"mappings":";;;AAyBA,MAAa,iBAAiB,cAA0C,KAAK;AAE7E,SAAgB,oBAAoB;CAClC,MAAM,MAAM,IAAI,eAAe;AAE/B,KAAI,CAAC,IACH,OAAM,IAAI,MAAM,wDAAwD;AAG1E,QAAO;;AAGT,SAAgB,iCAAiC;AAC/C,QAAO,mBAAmB,CAAC;;AAG7B,SAAgB,6BAA6B;AAC3C,QAAO,mBAAmB,CAAC;;AAG7B,SAAgB,uBAAuB;AACrC,QAAO,mBAAmB,CAAC;;AAG7B,SAAgB,8BAA8B;AAC5C,QAAO,mBAAmB,CAAC;;AAG7B,SAAgB,uBAAuB;AACrC,QAAO,mBAAmB,CAAC;;AAG7B,SAAgB,wBAAwB;AACtC,QAAO,mBAAmB,CAAC,iBAAiB;;AAG9C,SAAgB,4BAA4B;AAC1C,QAAO,mBAAmB,CAAC,iBAAiB;;AAG9C,SAAgB,gBAAgB;AAC9B,QAAO,mBAAmB,CAAC,OAAO;;AAGpC,SAAgB,oCAAoC;AAClD,QAAO,mBAAmB,CAAC"}
|
|
@@ -11,7 +11,7 @@ import { MantineCssVariables } from "./MantineCssVariables/MantineCssVariables.m
|
|
|
11
11
|
import { useRespectReduceMotion } from "./use-respect-reduce-motion/use-respect-reduce-motion.mjs";
|
|
12
12
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
13
13
|
//#region packages/@mantine/core/src/core/MantineProvider/MantineProvider.tsx
|
|
14
|
-
function MantineProvider({ theme, children, getStyleNonce, withStaticClasses = true, withGlobalClasses = true, deduplicateCssVariables = true, withCssVariables = true, cssVariablesSelector, classNamesPrefix = "mantine", colorSchemeManager = localStorageColorSchemeManager(), defaultColorScheme = "light", getRootElement = () => document.documentElement, cssVariablesResolver, forceColorScheme, stylesTransform, env }) {
|
|
14
|
+
function MantineProvider({ theme, children, getStyleNonce, withStaticClasses = true, withGlobalClasses = true, deduplicateCssVariables = true, withCssVariables = true, cssVariablesSelector, classNamesPrefix = "mantine", colorSchemeManager = localStorageColorSchemeManager(), defaultColorScheme = "light", getRootElement = () => document.documentElement, cssVariablesResolver, forceColorScheme, stylesTransform, env, deduplicateInlineStyles = false }) {
|
|
15
15
|
const { colorScheme, setColorScheme, clearColorScheme } = useProviderColorScheme({
|
|
16
16
|
defaultColorScheme,
|
|
17
17
|
forceColorScheme,
|
|
@@ -34,7 +34,8 @@ function MantineProvider({ theme, children, getStyleNonce, withStaticClasses = t
|
|
|
34
34
|
cssVariablesSelector: cssVariablesSelector ?? ":root",
|
|
35
35
|
withStaticClasses,
|
|
36
36
|
stylesTransform,
|
|
37
|
-
env
|
|
37
|
+
env,
|
|
38
|
+
deduplicateInlineStyles
|
|
38
39
|
},
|
|
39
40
|
children: /* @__PURE__ */ jsxs(MantineThemeProvider, {
|
|
40
41
|
theme,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MantineProvider.mjs","names":[],"sources":["../../../src/core/MantineProvider/MantineProvider.tsx"],"sourcesContent":["import './baseline.css';\nimport './global.css';\nimport './default-css-variables.css';\n\nimport { localStorageColorSchemeManager, MantineColorSchemeManager } from './color-scheme-managers';\nimport { MantineContext, MantineStylesTransform } from './Mantine.context';\nimport { MantineClasses } from './MantineClasses';\nimport { CSSVariablesResolver, MantineCssVariables } from './MantineCssVariables';\nimport { MantineThemeProvider } from './MantineThemeProvider';\nimport type { MantineColorScheme, MantineThemeOverride } from './theme.types';\nimport { useProviderColorScheme } from './use-mantine-color-scheme';\nimport { useRespectReduceMotion } from './use-respect-reduce-motion';\n\nexport interface MantineProviderProps {\n /** Theme override object */\n theme?: MantineThemeOverride;\n\n /** Used to retrieve/set color scheme value in external storage, by default uses `window.localStorage` */\n colorSchemeManager?: MantineColorSchemeManager;\n\n /** Default color scheme value used when `colorSchemeManager` cannot retrieve value from external storage, `light` by default */\n defaultColorScheme?: MantineColorScheme;\n\n /** Forces color scheme value, if set, MantineProvider ignores `colorSchemeManager` and `defaultColorScheme` */\n forceColorScheme?: 'light' | 'dark';\n\n /** CSS selector to which CSS variables should be added, by default variables are applied to `:root` and `:host` */\n cssVariablesSelector?: string;\n\n /** Determines whether theme CSS variables should be added to given `cssVariablesSelector` @default true */\n withCssVariables?: boolean;\n\n /** Determines whether CSS variables should be deduplicated: if CSS variable has the same value as in default theme, it is not added in the runtime. @default true. */\n deduplicateCssVariables?: boolean;\n\n /** Function to resolve root element to set `data-mantine-color-scheme` attribute, must return undefined on server, `() => document.documentElement` by default */\n getRootElement?: () => HTMLElement | undefined;\n\n /** A prefix for components static classes (for example {selector}-Text-root), `mantine` by default */\n classNamesPrefix?: string;\n\n /** Function to generate nonce attribute added to all generated `style` tags */\n getStyleNonce?: () => string;\n\n /** Function to generate CSS variables based on theme object */\n cssVariablesResolver?: CSSVariablesResolver;\n\n /** Determines whether components should have static classes, for example, `mantine-Button-root`. @default true */\n withStaticClasses?: boolean;\n\n /** Determines whether global classes should be added with `<style />` tag. Global classes are required for `hiddenFrom`/`visibleFrom` and `lightHidden`/`darkHidden` props to work. @default true. */\n withGlobalClasses?: boolean;\n\n /** An object to transform `styles` and `sx` props into css classes, can be used with CSS-in-JS libraries */\n stylesTransform?: MantineStylesTransform;\n\n /** Your application */\n children?: React.ReactNode;\n\n /** Environment at which the provider is used, `'test'` environment disables all transitions and portals */\n env?: 'default' | 'test';\n}\n\nexport function MantineProvider({\n theme,\n children,\n getStyleNonce,\n withStaticClasses = true,\n withGlobalClasses = true,\n deduplicateCssVariables = true,\n withCssVariables = true,\n cssVariablesSelector,\n classNamesPrefix = 'mantine',\n colorSchemeManager = localStorageColorSchemeManager(),\n defaultColorScheme = 'light',\n getRootElement = () => document.documentElement,\n cssVariablesResolver,\n forceColorScheme,\n stylesTransform,\n env,\n}: MantineProviderProps) {\n const { colorScheme, setColorScheme, clearColorScheme } = useProviderColorScheme({\n defaultColorScheme,\n forceColorScheme,\n manager: colorSchemeManager,\n getRootElement,\n });\n\n useRespectReduceMotion({\n respectReducedMotion: theme?.respectReducedMotion || false,\n getRootElement,\n });\n\n return (\n <MantineContext\n value={{\n colorScheme,\n setColorScheme,\n clearColorScheme,\n getRootElement,\n classNamesPrefix,\n getStyleNonce,\n cssVariablesResolver,\n cssVariablesSelector: cssVariablesSelector ?? ':root',\n withStaticClasses,\n stylesTransform,\n env,\n }}\n >\n <MantineThemeProvider theme={theme}>\n {withCssVariables && (\n <MantineCssVariables\n cssVariablesSelector={cssVariablesSelector}\n deduplicateCssVariables={deduplicateCssVariables}\n />\n )}\n {withGlobalClasses && <MantineClasses />}\n {children}\n </MantineThemeProvider>\n </MantineContext>\n );\n}\n\nMantineProvider.displayName = '@mantine/core/MantineProvider';\n\nexport interface HeadlessMantineProviderProps {\n /** Theme override object */\n theme?: MantineThemeOverride;\n\n /** Your application */\n children?: React.ReactNode;\n\n /** Environment at which the provider is used, `'test'` environment disables all transitions and portals */\n env?: 'default' | 'test';\n}\n\nexport function HeadlessMantineProvider({ children, theme, env }: HeadlessMantineProviderProps) {\n return (\n <MantineContext\n value={{\n colorScheme: 'auto',\n setColorScheme: () => {},\n clearColorScheme: () => {},\n getRootElement: () => document.documentElement,\n classNamesPrefix: 'mantine',\n cssVariablesSelector: ':root',\n withStaticClasses: false,\n headless: true,\n env,\n }}\n >\n <MantineThemeProvider theme={theme}>{children}</MantineThemeProvider>\n </MantineContext>\n );\n}\n\nHeadlessMantineProvider.displayName = '@mantine/core/HeadlessMantineProvider';\n"],"mappings":";;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"MantineProvider.mjs","names":[],"sources":["../../../src/core/MantineProvider/MantineProvider.tsx"],"sourcesContent":["import './baseline.css';\nimport './global.css';\nimport './default-css-variables.css';\n\nimport { localStorageColorSchemeManager, MantineColorSchemeManager } from './color-scheme-managers';\nimport { MantineContext, MantineStylesTransform } from './Mantine.context';\nimport { MantineClasses } from './MantineClasses';\nimport { CSSVariablesResolver, MantineCssVariables } from './MantineCssVariables';\nimport { MantineThemeProvider } from './MantineThemeProvider';\nimport type { MantineColorScheme, MantineThemeOverride } from './theme.types';\nimport { useProviderColorScheme } from './use-mantine-color-scheme';\nimport { useRespectReduceMotion } from './use-respect-reduce-motion';\n\nexport interface MantineProviderProps {\n /** Theme override object */\n theme?: MantineThemeOverride;\n\n /** Used to retrieve/set color scheme value in external storage, by default uses `window.localStorage` */\n colorSchemeManager?: MantineColorSchemeManager;\n\n /** Default color scheme value used when `colorSchemeManager` cannot retrieve value from external storage, `light` by default */\n defaultColorScheme?: MantineColorScheme;\n\n /** Forces color scheme value, if set, MantineProvider ignores `colorSchemeManager` and `defaultColorScheme` */\n forceColorScheme?: 'light' | 'dark';\n\n /** CSS selector to which CSS variables should be added, by default variables are applied to `:root` and `:host` */\n cssVariablesSelector?: string;\n\n /** Determines whether theme CSS variables should be added to given `cssVariablesSelector` @default true */\n withCssVariables?: boolean;\n\n /** Determines whether CSS variables should be deduplicated: if CSS variable has the same value as in default theme, it is not added in the runtime. @default true. */\n deduplicateCssVariables?: boolean;\n\n /** Function to resolve root element to set `data-mantine-color-scheme` attribute, must return undefined on server, `() => document.documentElement` by default */\n getRootElement?: () => HTMLElement | undefined;\n\n /** A prefix for components static classes (for example {selector}-Text-root), `mantine` by default */\n classNamesPrefix?: string;\n\n /** Function to generate nonce attribute added to all generated `style` tags */\n getStyleNonce?: () => string;\n\n /** Function to generate CSS variables based on theme object */\n cssVariablesResolver?: CSSVariablesResolver;\n\n /** Determines whether components should have static classes, for example, `mantine-Button-root`. @default true */\n withStaticClasses?: boolean;\n\n /** Determines whether global classes should be added with `<style />` tag. Global classes are required for `hiddenFrom`/`visibleFrom` and `lightHidden`/`darkHidden` props to work. @default true. */\n withGlobalClasses?: boolean;\n\n /** An object to transform `styles` and `sx` props into css classes, can be used with CSS-in-JS libraries */\n stylesTransform?: MantineStylesTransform;\n\n /** Determines whether inline styles with identical content should be deduplicated using React 19 style hoisting. When enabled, components with the same responsive style props share a single `<style />` tag instead of each generating their own. @default false */\n deduplicateInlineStyles?: boolean;\n\n /** Your application */\n children?: React.ReactNode;\n\n /** Environment at which the provider is used, `'test'` environment disables all transitions and portals */\n env?: 'default' | 'test';\n}\n\nexport function MantineProvider({\n theme,\n children,\n getStyleNonce,\n withStaticClasses = true,\n withGlobalClasses = true,\n deduplicateCssVariables = true,\n withCssVariables = true,\n cssVariablesSelector,\n classNamesPrefix = 'mantine',\n colorSchemeManager = localStorageColorSchemeManager(),\n defaultColorScheme = 'light',\n getRootElement = () => document.documentElement,\n cssVariablesResolver,\n forceColorScheme,\n stylesTransform,\n env,\n deduplicateInlineStyles = false,\n}: MantineProviderProps) {\n const { colorScheme, setColorScheme, clearColorScheme } = useProviderColorScheme({\n defaultColorScheme,\n forceColorScheme,\n manager: colorSchemeManager,\n getRootElement,\n });\n\n useRespectReduceMotion({\n respectReducedMotion: theme?.respectReducedMotion || false,\n getRootElement,\n });\n\n return (\n <MantineContext\n value={{\n colorScheme,\n setColorScheme,\n clearColorScheme,\n getRootElement,\n classNamesPrefix,\n getStyleNonce,\n cssVariablesResolver,\n cssVariablesSelector: cssVariablesSelector ?? ':root',\n withStaticClasses,\n stylesTransform,\n env,\n deduplicateInlineStyles,\n }}\n >\n <MantineThemeProvider theme={theme}>\n {withCssVariables && (\n <MantineCssVariables\n cssVariablesSelector={cssVariablesSelector}\n deduplicateCssVariables={deduplicateCssVariables}\n />\n )}\n {withGlobalClasses && <MantineClasses />}\n {children}\n </MantineThemeProvider>\n </MantineContext>\n );\n}\n\nMantineProvider.displayName = '@mantine/core/MantineProvider';\n\nexport interface HeadlessMantineProviderProps {\n /** Theme override object */\n theme?: MantineThemeOverride;\n\n /** Your application */\n children?: React.ReactNode;\n\n /** Environment at which the provider is used, `'test'` environment disables all transitions and portals */\n env?: 'default' | 'test';\n}\n\nexport function HeadlessMantineProvider({ children, theme, env }: HeadlessMantineProviderProps) {\n return (\n <MantineContext\n value={{\n colorScheme: 'auto',\n setColorScheme: () => {},\n clearColorScheme: () => {},\n getRootElement: () => document.documentElement,\n classNamesPrefix: 'mantine',\n cssVariablesSelector: ':root',\n withStaticClasses: false,\n headless: true,\n env,\n }}\n >\n <MantineThemeProvider theme={theme}>{children}</MantineThemeProvider>\n </MantineContext>\n );\n}\n\nHeadlessMantineProvider.displayName = '@mantine/core/HeadlessMantineProvider';\n"],"mappings":";;;;;;;;;;;;;AAkEA,SAAgB,gBAAgB,EAC9B,OACA,UACA,eACA,oBAAoB,MACpB,oBAAoB,MACpB,0BAA0B,MAC1B,mBAAmB,MACnB,sBACA,mBAAmB,WACnB,qBAAqB,gCAAgC,EACrD,qBAAqB,SACrB,uBAAuB,SAAS,iBAChC,sBACA,kBACA,iBACA,KACA,0BAA0B,SACH;CACvB,MAAM,EAAE,aAAa,gBAAgB,qBAAqB,uBAAuB;EAC/E;EACA;EACA,SAAS;EACT;EACD,CAAC;AAEF,wBAAuB;EACrB,sBAAsB,OAAO,wBAAwB;EACrD;EACD,CAAC;AAEF,QACE,oBAAC,gBAAD;EACE,OAAO;GACL;GACA;GACA;GACA;GACA;GACA;GACA;GACA,sBAAsB,wBAAwB;GAC9C;GACA;GACA;GACA;GACD;YAED,qBAAC,sBAAD;GAA6B;aAA7B;IACG,oBACC,oBAAC,qBAAD;KACwB;KACG;KACzB,CAAA;IAEH,qBAAqB,oBAAC,gBAAD,EAAkB,CAAA;IACvC;IACoB;;EACR,CAAA;;AAIrB,gBAAgB,cAAc;AAa9B,SAAgB,wBAAwB,EAAE,UAAU,OAAO,OAAqC;AAC9F,QACE,oBAAC,gBAAD;EACE,OAAO;GACL,aAAa;GACb,sBAAsB;GACtB,wBAAwB;GACxB,sBAAsB,SAAS;GAC/B,kBAAkB;GAClB,sBAAsB;GACtB,mBAAmB;GACnB,UAAU;GACV;GACD;YAED,oBAAC,sBAAD;GAA6B;GAAQ;GAAgC,CAAA;EACtD,CAAA;;AAIrB,wBAAwB,cAAc"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { rem } from "../../../utils/units-converters/rem.mjs";
|
|
3
|
-
import { isLightColor } from "../luminance/luminance.mjs";
|
|
4
3
|
import { parseThemeColor } from "../parse-theme-color/parse-theme-color.mjs";
|
|
5
4
|
import { darken } from "../darken/darken.mjs";
|
|
6
5
|
import { getGradient } from "../get-gradient/get-gradient.mjs";
|
|
@@ -58,9 +57,9 @@ const defaultVariantColorsResolver = ({ color, theme, variant, gradient, autoCon
|
|
|
58
57
|
};
|
|
59
58
|
}
|
|
60
59
|
return {
|
|
61
|
-
background: color,
|
|
62
|
-
hover:
|
|
63
|
-
color
|
|
60
|
+
background: rgba(color, .1),
|
|
61
|
+
hover: rgba(color, .12),
|
|
62
|
+
color,
|
|
64
63
|
border: `${rem(1)} solid transparent`
|
|
65
64
|
};
|
|
66
65
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default-variant-colors-resolver.mjs","names":[],"sources":["../../../../../src/core/MantineProvider/color-functions/default-variant-colors-resolver/default-variant-colors-resolver.ts"],"sourcesContent":["import { rem } from '../../../utils';\nimport { MantineColor, MantineGradient, MantineTheme } from '../../theme.types';\nimport { darken } from '../darken/darken';\nimport { getGradient } from '../get-gradient/get-gradient';\nimport { isLightColor } from '../luminance/luminance';\nimport { parseThemeColor } from '../parse-theme-color/parse-theme-color';\nimport { rgba } from '../rgba/rgba';\n\nexport interface VariantColorsResolverInput {\n color: MantineColor | undefined;\n theme: MantineTheme;\n variant: string;\n gradient?: MantineGradient;\n autoContrast?: boolean;\n}\n\nexport interface VariantColorResolverResult {\n background: string;\n hover: string;\n color: string;\n border: string;\n hoverColor?: string;\n}\n\nexport type VariantColorsResolver = (\n input: VariantColorsResolverInput\n) => VariantColorResolverResult;\n\nexport const defaultVariantColorsResolver: VariantColorsResolver = ({\n color,\n theme,\n variant,\n gradient,\n autoContrast,\n}) => {\n const parsed = parseThemeColor({ color, theme });\n\n const _autoContrast = typeof autoContrast === 'boolean' ? autoContrast : theme.autoContrast;\n\n if (variant === 'none') {\n return {\n background: 'transparent',\n hover: 'transparent',\n color: 'inherit',\n border: 'none',\n };\n }\n\n if (variant === 'filled') {\n const textColor = _autoContrast\n ? parsed.isLight\n ? 'var(--mantine-color-black)'\n : 'var(--mantine-color-white)'\n : 'var(--mantine-color-white)';\n if (parsed.isThemeColor) {\n if (parsed.shade === undefined) {\n return {\n background: `var(--mantine-color-${color}-filled)`,\n hover: `var(--mantine-color-${color}-filled-hover)`,\n color: textColor,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n return {\n background: `var(--mantine-color-${parsed.color}-${parsed.shade})`,\n hover: `var(--mantine-color-${parsed.color}-${parsed.shade === 9 ? 8 : parsed.shade + 1})`,\n color: textColor,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n return {\n background: color!,\n hover: darken(color!, 0.1),\n color: textColor,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n if (variant === 'light') {\n if (parsed.isThemeColor) {\n if (parsed.shade === undefined) {\n return {\n background: `var(--mantine-color-${color}-light)`,\n hover: `var(--mantine-color-${color}-light-hover)`,\n color: `var(--mantine-color-${color}-light-color)`,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n const parsedColor = theme.colors[parsed.color][parsed.shade];\n\n return {\n background: parsedColor,\n hover: darken(parsedColor, 0.1),\n color: `var(--mantine-color-${parsed.color}-light-color)`,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n return {\n background: color!,\n hover: darken(color!, 0.1),\n color: isLightColor(color!) ? 'var(--mantine-color-black)' : 'var(--mantine-color-white)',\n border: `${rem(1)} solid transparent`,\n };\n }\n\n if (variant === 'outline') {\n if (parsed.isThemeColor) {\n if (parsed.shade === undefined) {\n return {\n background: 'transparent',\n hover: `var(--mantine-color-${color}-outline-hover)`,\n color: `var(--mantine-color-${color}-outline)`,\n border: `${rem(1)} solid var(--mantine-color-${color}-outline)`,\n };\n }\n\n return {\n background: 'transparent',\n hover: rgba(theme.colors[parsed.color][parsed.shade], 0.05),\n color: `var(--mantine-color-${parsed.color}-${parsed.shade})`,\n border: `${rem(1)} solid var(--mantine-color-${parsed.color}-${parsed.shade})`,\n };\n }\n\n return {\n background: 'transparent',\n hover: rgba(color!, 0.05),\n color: color!,\n border: `${rem(1)} solid ${color}`,\n };\n }\n\n if (variant === 'subtle') {\n if (parsed.isThemeColor) {\n if (parsed.shade === undefined) {\n return {\n background: 'transparent',\n hover: `var(--mantine-color-${color}-light-hover)`,\n color: `var(--mantine-color-${color}-light-color)`,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n const parsedColor = theme.colors[parsed.color][parsed.shade];\n\n return {\n background: 'transparent',\n hover: rgba(parsedColor, 0.12),\n color: `var(--mantine-color-${parsed.color}-${Math.min(parsed.shade, 6)})`,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n return {\n background: 'transparent',\n hover: rgba(color!, 0.12),\n color: color!,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n if (variant === 'transparent') {\n if (parsed.isThemeColor) {\n if (parsed.shade === undefined) {\n return {\n background: 'transparent',\n hover: 'transparent',\n color: `var(--mantine-color-${color}-light-color)`,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n return {\n background: 'transparent',\n hover: 'transparent',\n color: `var(--mantine-color-${parsed.color}-${Math.min(parsed.shade, 6)})`,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n return {\n background: 'transparent',\n hover: 'transparent',\n color: color!,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n if (variant === 'white') {\n if (parsed.isThemeColor) {\n if (parsed.shade === undefined) {\n return {\n background: 'var(--mantine-color-white)',\n hover: darken(theme.white, 0.01),\n color: `var(--mantine-color-${color}-filled)`,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n return {\n background: 'var(--mantine-color-white)',\n hover: darken(theme.white, 0.01),\n color: `var(--mantine-color-${parsed.color}-${parsed.shade})`,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n return {\n background: 'var(--mantine-color-white)',\n hover: darken(theme.white, 0.01),\n color: color!,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n if (variant === 'gradient') {\n return {\n background: getGradient(gradient, theme),\n hover: getGradient(gradient, theme),\n color: 'var(--mantine-color-white)',\n border: 'none',\n };\n }\n\n if (variant === 'default') {\n return {\n background: 'var(--mantine-color-default)',\n hover: 'var(--mantine-color-default-hover)',\n color: 'var(--mantine-color-default-color)',\n border: `${rem(1)} solid var(--mantine-color-default-border)`,\n };\n }\n\n return {} as VariantColorResolverResult;\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"default-variant-colors-resolver.mjs","names":[],"sources":["../../../../../src/core/MantineProvider/color-functions/default-variant-colors-resolver/default-variant-colors-resolver.ts"],"sourcesContent":["import { rem } from '../../../utils';\nimport { MantineColor, MantineGradient, MantineTheme } from '../../theme.types';\nimport { darken } from '../darken/darken';\nimport { getGradient } from '../get-gradient/get-gradient';\nimport { parseThemeColor } from '../parse-theme-color/parse-theme-color';\nimport { rgba } from '../rgba/rgba';\n\nexport interface VariantColorsResolverInput {\n color: MantineColor | undefined;\n theme: MantineTheme;\n variant: string;\n gradient?: MantineGradient;\n autoContrast?: boolean;\n}\n\nexport interface VariantColorResolverResult {\n background: string;\n hover: string;\n color: string;\n border: string;\n hoverColor?: string;\n}\n\nexport type VariantColorsResolver = (\n input: VariantColorsResolverInput\n) => VariantColorResolverResult;\n\nexport const defaultVariantColorsResolver: VariantColorsResolver = ({\n color,\n theme,\n variant,\n gradient,\n autoContrast,\n}) => {\n const parsed = parseThemeColor({ color, theme });\n\n const _autoContrast = typeof autoContrast === 'boolean' ? autoContrast : theme.autoContrast;\n\n if (variant === 'none') {\n return {\n background: 'transparent',\n hover: 'transparent',\n color: 'inherit',\n border: 'none',\n };\n }\n\n if (variant === 'filled') {\n const textColor = _autoContrast\n ? parsed.isLight\n ? 'var(--mantine-color-black)'\n : 'var(--mantine-color-white)'\n : 'var(--mantine-color-white)';\n if (parsed.isThemeColor) {\n if (parsed.shade === undefined) {\n return {\n background: `var(--mantine-color-${color}-filled)`,\n hover: `var(--mantine-color-${color}-filled-hover)`,\n color: textColor,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n return {\n background: `var(--mantine-color-${parsed.color}-${parsed.shade})`,\n hover: `var(--mantine-color-${parsed.color}-${parsed.shade === 9 ? 8 : parsed.shade + 1})`,\n color: textColor,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n return {\n background: color!,\n hover: darken(color!, 0.1),\n color: textColor,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n if (variant === 'light') {\n if (parsed.isThemeColor) {\n if (parsed.shade === undefined) {\n return {\n background: `var(--mantine-color-${color}-light)`,\n hover: `var(--mantine-color-${color}-light-hover)`,\n color: `var(--mantine-color-${color}-light-color)`,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n const parsedColor = theme.colors[parsed.color][parsed.shade];\n\n return {\n background: parsedColor,\n hover: darken(parsedColor, 0.1),\n color: `var(--mantine-color-${parsed.color}-light-color)`,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n return {\n background: rgba(color!, 0.1),\n hover: rgba(color!, 0.12),\n color: color!,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n if (variant === 'outline') {\n if (parsed.isThemeColor) {\n if (parsed.shade === undefined) {\n return {\n background: 'transparent',\n hover: `var(--mantine-color-${color}-outline-hover)`,\n color: `var(--mantine-color-${color}-outline)`,\n border: `${rem(1)} solid var(--mantine-color-${color}-outline)`,\n };\n }\n\n return {\n background: 'transparent',\n hover: rgba(theme.colors[parsed.color][parsed.shade], 0.05),\n color: `var(--mantine-color-${parsed.color}-${parsed.shade})`,\n border: `${rem(1)} solid var(--mantine-color-${parsed.color}-${parsed.shade})`,\n };\n }\n\n return {\n background: 'transparent',\n hover: rgba(color!, 0.05),\n color: color!,\n border: `${rem(1)} solid ${color}`,\n };\n }\n\n if (variant === 'subtle') {\n if (parsed.isThemeColor) {\n if (parsed.shade === undefined) {\n return {\n background: 'transparent',\n hover: `var(--mantine-color-${color}-light-hover)`,\n color: `var(--mantine-color-${color}-light-color)`,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n const parsedColor = theme.colors[parsed.color][parsed.shade];\n\n return {\n background: 'transparent',\n hover: rgba(parsedColor, 0.12),\n color: `var(--mantine-color-${parsed.color}-${Math.min(parsed.shade, 6)})`,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n return {\n background: 'transparent',\n hover: rgba(color!, 0.12),\n color: color!,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n if (variant === 'transparent') {\n if (parsed.isThemeColor) {\n if (parsed.shade === undefined) {\n return {\n background: 'transparent',\n hover: 'transparent',\n color: `var(--mantine-color-${color}-light-color)`,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n return {\n background: 'transparent',\n hover: 'transparent',\n color: `var(--mantine-color-${parsed.color}-${Math.min(parsed.shade, 6)})`,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n return {\n background: 'transparent',\n hover: 'transparent',\n color: color!,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n if (variant === 'white') {\n if (parsed.isThemeColor) {\n if (parsed.shade === undefined) {\n return {\n background: 'var(--mantine-color-white)',\n hover: darken(theme.white, 0.01),\n color: `var(--mantine-color-${color}-filled)`,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n return {\n background: 'var(--mantine-color-white)',\n hover: darken(theme.white, 0.01),\n color: `var(--mantine-color-${parsed.color}-${parsed.shade})`,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n return {\n background: 'var(--mantine-color-white)',\n hover: darken(theme.white, 0.01),\n color: color!,\n border: `${rem(1)} solid transparent`,\n };\n }\n\n if (variant === 'gradient') {\n return {\n background: getGradient(gradient, theme),\n hover: getGradient(gradient, theme),\n color: 'var(--mantine-color-white)',\n border: 'none',\n };\n }\n\n if (variant === 'default') {\n return {\n background: 'var(--mantine-color-default)',\n hover: 'var(--mantine-color-default-hover)',\n color: 'var(--mantine-color-default-color)',\n border: `${rem(1)} solid var(--mantine-color-default-border)`,\n };\n }\n\n return {} as VariantColorResolverResult;\n};\n"],"mappings":";;;;;;;AA2BA,MAAa,gCAAuD,EAClE,OACA,OACA,SACA,UACA,mBACI;CACJ,MAAM,SAAS,gBAAgB;EAAE;EAAO;EAAO,CAAC;CAEhD,MAAM,gBAAgB,OAAO,iBAAiB,YAAY,eAAe,MAAM;AAE/E,KAAI,YAAY,OACd,QAAO;EACL,YAAY;EACZ,OAAO;EACP,OAAO;EACP,QAAQ;EACT;AAGH,KAAI,YAAY,UAAU;EACxB,MAAM,YAAY,gBACd,OAAO,UACL,+BACA,+BACF;AACJ,MAAI,OAAO,cAAc;AACvB,OAAI,OAAO,UAAU,KAAA,EACnB,QAAO;IACL,YAAY,uBAAuB,MAAM;IACzC,OAAO,uBAAuB,MAAM;IACpC,OAAO;IACP,QAAQ,GAAG,IAAI,EAAE,CAAC;IACnB;AAGH,UAAO;IACL,YAAY,uBAAuB,OAAO,MAAM,GAAG,OAAO,MAAM;IAChE,OAAO,uBAAuB,OAAO,MAAM,GAAG,OAAO,UAAU,IAAI,IAAI,OAAO,QAAQ,EAAE;IACxF,OAAO;IACP,QAAQ,GAAG,IAAI,EAAE,CAAC;IACnB;;AAGH,SAAO;GACL,YAAY;GACZ,OAAO,OAAO,OAAQ,GAAI;GAC1B,OAAO;GACP,QAAQ,GAAG,IAAI,EAAE,CAAC;GACnB;;AAGH,KAAI,YAAY,SAAS;AACvB,MAAI,OAAO,cAAc;AACvB,OAAI,OAAO,UAAU,KAAA,EACnB,QAAO;IACL,YAAY,uBAAuB,MAAM;IACzC,OAAO,uBAAuB,MAAM;IACpC,OAAO,uBAAuB,MAAM;IACpC,QAAQ,GAAG,IAAI,EAAE,CAAC;IACnB;GAGH,MAAM,cAAc,MAAM,OAAO,OAAO,OAAO,OAAO;AAEtD,UAAO;IACL,YAAY;IACZ,OAAO,OAAO,aAAa,GAAI;IAC/B,OAAO,uBAAuB,OAAO,MAAM;IAC3C,QAAQ,GAAG,IAAI,EAAE,CAAC;IACnB;;AAGH,SAAO;GACL,YAAY,KAAK,OAAQ,GAAI;GAC7B,OAAO,KAAK,OAAQ,IAAK;GAClB;GACP,QAAQ,GAAG,IAAI,EAAE,CAAC;GACnB;;AAGH,KAAI,YAAY,WAAW;AACzB,MAAI,OAAO,cAAc;AACvB,OAAI,OAAO,UAAU,KAAA,EACnB,QAAO;IACL,YAAY;IACZ,OAAO,uBAAuB,MAAM;IACpC,OAAO,uBAAuB,MAAM;IACpC,QAAQ,GAAG,IAAI,EAAE,CAAC,6BAA6B,MAAM;IACtD;AAGH,UAAO;IACL,YAAY;IACZ,OAAO,KAAK,MAAM,OAAO,OAAO,OAAO,OAAO,QAAQ,IAAK;IAC3D,OAAO,uBAAuB,OAAO,MAAM,GAAG,OAAO,MAAM;IAC3D,QAAQ,GAAG,IAAI,EAAE,CAAC,6BAA6B,OAAO,MAAM,GAAG,OAAO,MAAM;IAC7E;;AAGH,SAAO;GACL,YAAY;GACZ,OAAO,KAAK,OAAQ,IAAK;GAClB;GACP,QAAQ,GAAG,IAAI,EAAE,CAAC,SAAS;GAC5B;;AAGH,KAAI,YAAY,UAAU;AACxB,MAAI,OAAO,cAAc;AACvB,OAAI,OAAO,UAAU,KAAA,EACnB,QAAO;IACL,YAAY;IACZ,OAAO,uBAAuB,MAAM;IACpC,OAAO,uBAAuB,MAAM;IACpC,QAAQ,GAAG,IAAI,EAAE,CAAC;IACnB;GAGH,MAAM,cAAc,MAAM,OAAO,OAAO,OAAO,OAAO;AAEtD,UAAO;IACL,YAAY;IACZ,OAAO,KAAK,aAAa,IAAK;IAC9B,OAAO,uBAAuB,OAAO,MAAM,GAAG,KAAK,IAAI,OAAO,OAAO,EAAE,CAAC;IACxE,QAAQ,GAAG,IAAI,EAAE,CAAC;IACnB;;AAGH,SAAO;GACL,YAAY;GACZ,OAAO,KAAK,OAAQ,IAAK;GAClB;GACP,QAAQ,GAAG,IAAI,EAAE,CAAC;GACnB;;AAGH,KAAI,YAAY,eAAe;AAC7B,MAAI,OAAO,cAAc;AACvB,OAAI,OAAO,UAAU,KAAA,EACnB,QAAO;IACL,YAAY;IACZ,OAAO;IACP,OAAO,uBAAuB,MAAM;IACpC,QAAQ,GAAG,IAAI,EAAE,CAAC;IACnB;AAGH,UAAO;IACL,YAAY;IACZ,OAAO;IACP,OAAO,uBAAuB,OAAO,MAAM,GAAG,KAAK,IAAI,OAAO,OAAO,EAAE,CAAC;IACxE,QAAQ,GAAG,IAAI,EAAE,CAAC;IACnB;;AAGH,SAAO;GACL,YAAY;GACZ,OAAO;GACA;GACP,QAAQ,GAAG,IAAI,EAAE,CAAC;GACnB;;AAGH,KAAI,YAAY,SAAS;AACvB,MAAI,OAAO,cAAc;AACvB,OAAI,OAAO,UAAU,KAAA,EACnB,QAAO;IACL,YAAY;IACZ,OAAO,OAAO,MAAM,OAAO,IAAK;IAChC,OAAO,uBAAuB,MAAM;IACpC,QAAQ,GAAG,IAAI,EAAE,CAAC;IACnB;AAGH,UAAO;IACL,YAAY;IACZ,OAAO,OAAO,MAAM,OAAO,IAAK;IAChC,OAAO,uBAAuB,OAAO,MAAM,GAAG,OAAO,MAAM;IAC3D,QAAQ,GAAG,IAAI,EAAE,CAAC;IACnB;;AAGH,SAAO;GACL,YAAY;GACZ,OAAO,OAAO,MAAM,OAAO,IAAK;GACzB;GACP,QAAQ,GAAG,IAAI,EAAE,CAAC;GACnB;;AAGH,KAAI,YAAY,WACd,QAAO;EACL,YAAY,YAAY,UAAU,MAAM;EACxC,OAAO,YAAY,UAAU,MAAM;EACnC,OAAO;EACP,QAAQ;EACT;AAGH,KAAI,YAAY,UACd,QAAO;EACL,YAAY;EACZ,OAAO;EACP,OAAO;EACP,QAAQ,GAAG,IAAI,EAAE,CAAC;EACnB;AAGH,QAAO,EAAE"}
|
package/esm/index.mjs
CHANGED
|
@@ -46,7 +46,7 @@ import { lighten } from "./core/MantineProvider/color-functions/lighten/lighten.
|
|
|
46
46
|
import { getContrastColor, getPrimaryContrastColor } from "./core/MantineProvider/color-functions/get-contrast-color/get-contrast-color.mjs";
|
|
47
47
|
import { getAutoContrastValue } from "./core/MantineProvider/color-functions/get-auto-contrast-value/get-auto-contrast-value.mjs";
|
|
48
48
|
import { colorsTuple } from "./core/MantineProvider/color-functions/colors-tuple/colors-tuple.mjs";
|
|
49
|
-
import { MantineContext, useMantineClassNamesPrefix, useMantineContext, useMantineCssVariablesResolver, useMantineEnv, useMantineIsHeadless, useMantineStyleNonce, useMantineStylesTransform, useMantineSxTransform, useMantineWithStaticClasses } from "./core/MantineProvider/Mantine.context.mjs";
|
|
49
|
+
import { MantineContext, useMantineClassNamesPrefix, useMantineContext, useMantineCssVariablesResolver, useMantineDeduplicateInlineStyles, useMantineEnv, useMantineIsHeadless, useMantineStyleNonce, useMantineStylesTransform, useMantineSxTransform, useMantineWithStaticClasses } from "./core/MantineProvider/Mantine.context.mjs";
|
|
50
50
|
import { useMantineColorScheme } from "./core/MantineProvider/use-mantine-color-scheme/use-mantine-color-scheme.mjs";
|
|
51
51
|
import { useProviderColorScheme } from "./core/MantineProvider/use-mantine-color-scheme/use-provider-color-scheme.mjs";
|
|
52
52
|
import { useComputedColorScheme } from "./core/MantineProvider/use-mantine-color-scheme/use-computed-color-scheme.mjs";
|
|
@@ -70,6 +70,7 @@ import { FOCUS_CLASS_NAMES } from "./core/styles-api/use-styles/get-class-name/g
|
|
|
70
70
|
import { useStyles } from "./core/styles-api/use-styles/use-styles.mjs";
|
|
71
71
|
import { stylesToString } from "./core/InlineStyles/styles-to-string/styles-to-string.mjs";
|
|
72
72
|
import { InlineStyles } from "./core/InlineStyles/InlineStyles.mjs";
|
|
73
|
+
import { hashStyleProps } from "./core/InlineStyles/hash-styles.mjs";
|
|
73
74
|
import { extractStyleProps } from "./core/Box/style-props/extract-style-props/extract-style-props.mjs";
|
|
74
75
|
import { STYlE_PROPS_DATA } from "./core/Box/style-props/style-props-data.mjs";
|
|
75
76
|
import { parseStyleProps } from "./core/Box/style-props/parse-style-props/parse-style-props.mjs";
|
|
@@ -241,6 +242,7 @@ import { ListItem } from "./components/List/ListItem/ListItem.mjs";
|
|
|
241
242
|
import { List } from "./components/List/List.mjs";
|
|
242
243
|
import { LoadingOverlay } from "./components/LoadingOverlay/LoadingOverlay.mjs";
|
|
243
244
|
import { Marquee } from "./components/Marquee/Marquee.mjs";
|
|
245
|
+
import { MaskInput } from "./components/MaskInput/MaskInput.mjs";
|
|
244
246
|
import { useMenuContext } from "./components/Menu/Menu.context.mjs";
|
|
245
247
|
import { MenuDivider } from "./components/Menu/MenuDivider/MenuDivider.mjs";
|
|
246
248
|
import { MenuDropdown } from "./components/Menu/MenuDropdown/MenuDropdown.mjs";
|
|
@@ -334,6 +336,11 @@ import { Timeline } from "./components/Timeline/Timeline.mjs";
|
|
|
334
336
|
import { Title } from "./components/Title/Title.mjs";
|
|
335
337
|
import { getTreeExpandedState, useTree } from "./components/Tree/use-tree.mjs";
|
|
336
338
|
import { Tree } from "./components/Tree/Tree.mjs";
|
|
339
|
+
import { mergeAsyncChildren } from "./components/Tree/merge-async-children/merge-async-children.mjs";
|
|
340
|
+
import { moveTreeNode } from "./components/Tree/move-tree-node/move-tree-node.mjs";
|
|
341
|
+
import { defaultTreeNodeFilter, filterTreeData } from "./components/Tree/filter-tree-data/filter-tree-data.mjs";
|
|
342
|
+
import { flattenTreeData } from "./components/Tree/flatten-tree-data/flatten-tree-data.mjs";
|
|
343
|
+
import { FlatTreeNode } from "./components/Tree/FlatTreeNode.mjs";
|
|
337
344
|
import { Typography } from "./components/Typography/Typography.mjs";
|
|
338
345
|
import { RemoveScroll } from "react-remove-scroll";
|
|
339
|
-
export { Accordion, AccordionChevron, AccordionControl, AccordionItem, AccordionPanel, 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, 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, ComboboxSearch, ComboboxTarget, Container, CopyButton, DEFAULT_THEME, Dialog, DirectionContext, DirectionProvider, Divider, Drawer, DrawerBody, DrawerCloseButton, DrawerContent, DrawerHeader, DrawerOverlay, DrawerRoot, DrawerStack, DrawerStackContext, DrawerTitle, FLEX_STYLE_PROPS_DATA, FOCUS_CLASS_NAMES, Fieldset, FileButton, FileInput, 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, InputWrapper, InputWrapperContext, JsonInput, Kbd, List, ListItem, Loader, LoadingOverlay, transitions as MANTINE_TRANSITIONS, MantineContext, MantineProvider, MantineThemeContext, MantineThemeProvider, Mark, Marquee, Menu, MenuDivider, MenuDropdown, MenuItem, MenuLabel, MenuSub, MenuSubDropdown, MenuSubItem, MenuSubTarget, MenuTarget, 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, PaginationLast, PaginationNext, PaginationPrevious, PaginationRoot, Paper, PasswordInput, Pill, PillGroup, PillsInput, PillsInputContext, PillsInputField, PinInput, Popover, PopoverDropdown, PopoverTarget, Portal, Progress, ProgressLabel, ProgressRoot, ProgressSection, Radio, RadioCard, RadioCardContext, RadioGroup, RadioGroupContext, RadioIcon, RadioIndicator, RangeSlider, Rating, RemoveScroll, RingProgress, STYlE_PROPS_DATA, ScrollArea, ScrollAreaAutosize, Scroller, SegmentedControl, Select, SemiCircleProgress, SimpleGrid, Skeleton, Slider, Space, 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, Typography, UnstyledButton, VisuallyHidden, alpha, camelToKebabCase, closeOnEscape, colorsTuple, convertCssVariables, convertHsvaTo, createEventHandler, createPolymorphicComponent, createSafeContext, createScopedKeydownHandler, createTheme, createUseExternalEvents, createVarsResolver, darken, deepMerge, defaultCssVariablesResolver, defaultLoaders, defaultOptionsFilter, defaultVariantColorsResolver, em, extractStyleProps, factory, filterProps, findClosestNumber, findElementAncestor, findElementBySelector, findElementsBySelector, genericFactory, getAutoContrastValue, getBaseValue, getBreakpointValue, getCSSColorVariables, 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, isColorValid, isElement, isLightColor, isMantineColorScheme, isNumberLike, isOptionsGroup, isPrimitive, isVirtualColor, keys, lighten, localStorageColorSchemeManager, luminance, mantineHtmlProps, memoize, mergeMantineTheme, mergeThemeOverrides, noop, parseColor, parseStyleProps, parseThemeColor, polymorphic, polymorphicFactory, px, rem, resolveClassNames, resolveStyles, rgba, stylesToString, toRgba, useAccordionContext, useAccordionItemContext, useAppShellContext, useCombobox, useComboboxContext, useComboboxTargetProps, useComputedColorScheme, useDelayedHover, useDirection, useDrawerContext, useDrawersStack, useGridContext, useHoverCardContext, useHovered, useInputProps, useListContext, useMantineClassNamesPrefix, useMantineColorScheme, useMantineContext, useMantineCssVariablesResolver, useMantineEnv, useMantineIsHeadless, useMantineStyleNonce, useMantineStylesTransform, useMantineSxTransform, useMantineTheme, useMantineWithStaticClasses, useMatches, useMenuContext, useModalContext, useModalsStack, usePaginationContext, usePopoverContext, useProgressContext, useProps, useProviderColorScheme, useRandomClassName, useResolvedStylesApi, useSafeMantineTheme, useScrollAreaContext, useStepperContext, useStyles, useTableContext, useTabsContext, useTree, useVirtualizedCombobox, v8CssVariablesResolver, validateMantineTheme, virtualColor };
|
|
346
|
+
export { Accordion, AccordionChevron, AccordionControl, AccordionItem, AccordionPanel, 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, 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, ComboboxSearch, ComboboxTarget, Container, CopyButton, DEFAULT_THEME, Dialog, DirectionContext, DirectionProvider, Divider, Drawer, DrawerBody, DrawerCloseButton, DrawerContent, DrawerHeader, DrawerOverlay, DrawerRoot, DrawerStack, DrawerStackContext, DrawerTitle, 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, InputWrapper, InputWrapperContext, JsonInput, Kbd, List, ListItem, Loader, LoadingOverlay, transitions as MANTINE_TRANSITIONS, MantineContext, MantineProvider, MantineThemeContext, MantineThemeProvider, Mark, Marquee, MaskInput, Menu, MenuDivider, MenuDropdown, MenuItem, MenuLabel, MenuSub, MenuSubDropdown, MenuSubItem, MenuSubTarget, MenuTarget, 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, PaginationLast, PaginationNext, PaginationPrevious, PaginationRoot, Paper, PasswordInput, Pill, PillGroup, PillsInput, PillsInputContext, PillsInputField, PinInput, Popover, PopoverDropdown, PopoverTarget, Portal, Progress, ProgressLabel, ProgressRoot, ProgressSection, Radio, RadioCard, RadioCardContext, RadioGroup, RadioGroupContext, RadioIcon, RadioIndicator, RangeSlider, Rating, RemoveScroll, RingProgress, STYlE_PROPS_DATA, ScrollArea, ScrollAreaAutosize, Scroller, SegmentedControl, Select, SemiCircleProgress, SimpleGrid, Skeleton, Slider, Space, 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, 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, flattenTreeData, genericFactory, getAutoContrastValue, getBaseValue, getBreakpointValue, getCSSColorVariables, 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, 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, useDelayedHover, useDirection, useDrawerContext, useDrawersStack, useGridContext, useHoverCardContext, useHovered, useInputProps, useListContext, useMantineClassNamesPrefix, useMantineColorScheme, useMantineContext, useMantineCssVariablesResolver, useMantineDeduplicateInlineStyles, useMantineEnv, useMantineIsHeadless, useMantineStyleNonce, useMantineStylesTransform, useMantineSxTransform, useMantineTheme, useMantineWithStaticClasses, useMatches, useMenuContext, useModalContext, useModalsStack, usePaginationContext, usePopoverContext, useProgressContext, useProps, useProviderColorScheme, useRandomClassName, useResolvedStylesApi, useSafeMantineTheme, useScrollAreaContext, useStepperContext, useStyles, useTableContext, useTabsContext, useTree, useVirtualizedCombobox, v8CssVariablesResolver, validateMantineTheme, virtualColor };
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { BoxProps, ElementProps, Factory, StylesApiProps } from '../../core';
|
|
2
|
+
import { __BaseInputProps, __InputStylesNames, InputVariant } from '../Input';
|
|
3
|
+
export interface MaskInputProps extends BoxProps, __BaseInputProps, StylesApiProps<MaskInputFactory>, ElementProps<'input', 'size'> {
|
|
4
|
+
/** Mask pattern string or array of string literals and RegExp objects */
|
|
5
|
+
mask: string | Array<string | RegExp>;
|
|
6
|
+
/** Override or extend the default token map */
|
|
7
|
+
tokens?: Record<string, RegExp>;
|
|
8
|
+
/** Called before masking on each keystroke, can return overrides for mask options */
|
|
9
|
+
modify?: (value: string) => Partial<Pick<MaskInputProps, 'mask' | 'tokens' | 'slotChar' | 'separate'>> | undefined;
|
|
10
|
+
/** When true, raw and display values are decoupled */
|
|
11
|
+
separate?: boolean;
|
|
12
|
+
/** Character displayed in unfilled slots, `"_"` by default */
|
|
13
|
+
slotChar?: string | null;
|
|
14
|
+
/** Show mask pattern even when field is empty and unfocused */
|
|
15
|
+
alwaysShowMask?: boolean;
|
|
16
|
+
/** Show mask placeholder on focus, `true` by default */
|
|
17
|
+
showMaskOnFocus?: boolean;
|
|
18
|
+
/** Transform each character before validation and insertion */
|
|
19
|
+
transform?: (char: string) => string;
|
|
20
|
+
/** Clear value on blur when mask is incomplete, `false` by default */
|
|
21
|
+
autoClear?: boolean;
|
|
22
|
+
/** Called on every change with raw and masked values */
|
|
23
|
+
onChangeRaw?: (rawValue: string, maskedValue: string) => void;
|
|
24
|
+
/** Called when all required mask slots are filled */
|
|
25
|
+
onComplete?: (maskedValue: string, rawValue: string) => void;
|
|
26
|
+
/** Escape hatch for advanced cursor/value manipulation */
|
|
27
|
+
beforeMaskedStateChange?: (states: {
|
|
28
|
+
previousState: {
|
|
29
|
+
value: string;
|
|
30
|
+
selection: {
|
|
31
|
+
start: number;
|
|
32
|
+
end: number;
|
|
33
|
+
} | null;
|
|
34
|
+
};
|
|
35
|
+
currentState: {
|
|
36
|
+
value: string;
|
|
37
|
+
selection: {
|
|
38
|
+
start: number;
|
|
39
|
+
end: number;
|
|
40
|
+
} | null;
|
|
41
|
+
};
|
|
42
|
+
nextState: {
|
|
43
|
+
value: string;
|
|
44
|
+
selection: {
|
|
45
|
+
start: number;
|
|
46
|
+
end: number;
|
|
47
|
+
} | null;
|
|
48
|
+
};
|
|
49
|
+
}) => {
|
|
50
|
+
value: string;
|
|
51
|
+
selection: {
|
|
52
|
+
start: number;
|
|
53
|
+
end: number;
|
|
54
|
+
} | null;
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
export type MaskInputFactory = Factory<{
|
|
58
|
+
props: MaskInputProps;
|
|
59
|
+
variant: InputVariant;
|
|
60
|
+
ref: HTMLInputElement;
|
|
61
|
+
stylesNames: __InputStylesNames;
|
|
62
|
+
}>;
|
|
63
|
+
export declare const MaskInput: import("../..").MantineComponent<{
|
|
64
|
+
props: MaskInputProps;
|
|
65
|
+
variant: InputVariant;
|
|
66
|
+
ref: HTMLInputElement;
|
|
67
|
+
stylesNames: __InputStylesNames;
|
|
68
|
+
}>;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { MaskInputFactory, MaskInputProps } from './MaskInput';
|
|
2
|
+
export { MaskInput } from './MaskInput';
|
|
3
|
+
export type { MaskInputProps, MaskInputFactory };
|
|
4
|
+
export declare namespace MaskInput {
|
|
5
|
+
type Props = MaskInputProps;
|
|
6
|
+
type Factory = MaskInputFactory;
|
|
7
|
+
}
|