@mantine/code-highlight 9.0.0-alpha.5 → 9.0.0-alpha.6

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 (74) hide show
  1. package/cjs/CodeHighlight/CodeHighlight.cjs +130 -169
  2. package/cjs/CodeHighlight/CodeHighlight.cjs.map +1 -1
  3. package/cjs/CodeHighlight/CodeHighlight.context.cjs +7 -10
  4. package/cjs/CodeHighlight/CodeHighlight.context.cjs.map +1 -1
  5. package/cjs/CodeHighlight/CodeHighlightControl/CodeHighlightControl.cjs +31 -40
  6. package/cjs/CodeHighlight/CodeHighlightControl/CodeHighlightControl.cjs.map +1 -1
  7. package/cjs/CodeHighlight/CopyCodeButton/CopyCodeButton.cjs +19 -26
  8. package/cjs/CodeHighlight/CopyCodeButton/CopyCodeButton.cjs.map +1 -1
  9. package/cjs/CodeHighlight/CopyCodeButton/CopyIcon.cjs +30 -28
  10. package/cjs/CodeHighlight/CopyCodeButton/CopyIcon.cjs.map +1 -1
  11. package/cjs/CodeHighlight/ExpandCodeButton/ExpandCodeButton.cjs +16 -24
  12. package/cjs/CodeHighlight/ExpandCodeButton/ExpandCodeButton.cjs.map +1 -1
  13. package/cjs/CodeHighlight/ExpandCodeButton/ExpandIcon.cjs +40 -35
  14. package/cjs/CodeHighlight/ExpandCodeButton/ExpandIcon.cjs.map +1 -1
  15. package/cjs/CodeHighlight/InlineCodeHighlight.cjs +38 -37
  16. package/cjs/CodeHighlight/InlineCodeHighlight.cjs.map +1 -1
  17. package/cjs/CodeHighlight.module.cjs +22 -0
  18. package/cjs/CodeHighlight.module.cjs.map +1 -0
  19. package/cjs/CodeHighlightProvider/CodeHighlightProvider.cjs +26 -27
  20. package/cjs/CodeHighlightProvider/CodeHighlightProvider.cjs.map +1 -1
  21. package/cjs/CodeHighlightProvider/adapters/highlight-js-adapter.cjs +12 -14
  22. package/cjs/CodeHighlightProvider/adapters/highlight-js-adapter.cjs.map +1 -1
  23. package/cjs/CodeHighlightProvider/adapters/plain-text-adapter.cjs +8 -7
  24. package/cjs/CodeHighlightProvider/adapters/plain-text-adapter.cjs.map +1 -1
  25. package/cjs/CodeHighlightProvider/adapters/shiki-adapter.cjs +34 -42
  26. package/cjs/CodeHighlightProvider/adapters/shiki-adapter.cjs.map +1 -1
  27. package/cjs/CodeHighlightProvider/adapters/shiki-themes.cjs +1131 -1234
  28. package/cjs/CodeHighlightProvider/adapters/shiki-themes.cjs.map +1 -1
  29. package/cjs/CodeHighlightTabs/CodeHighlightTabs.cjs +103 -134
  30. package/cjs/CodeHighlightTabs/CodeHighlightTabs.cjs.map +1 -1
  31. package/cjs/CodeHighlightTabs/FileIcon.cjs +18 -14
  32. package/cjs/CodeHighlightTabs/FileIcon.cjs.map +1 -1
  33. package/cjs/_virtual/_rolldown/runtime.cjs +24 -0
  34. package/cjs/index.cjs +21 -26
  35. package/esm/CodeHighlight/CodeHighlight.context.mjs +7 -8
  36. package/esm/CodeHighlight/CodeHighlight.context.mjs.map +1 -1
  37. package/esm/CodeHighlight/CodeHighlight.mjs +126 -161
  38. package/esm/CodeHighlight/CodeHighlight.mjs.map +1 -1
  39. package/esm/CodeHighlight/CodeHighlightControl/CodeHighlightControl.mjs +29 -37
  40. package/esm/CodeHighlight/CodeHighlightControl/CodeHighlightControl.mjs.map +1 -1
  41. package/esm/CodeHighlight/CopyCodeButton/CopyCodeButton.mjs +18 -24
  42. package/esm/CodeHighlight/CopyCodeButton/CopyCodeButton.mjs.map +1 -1
  43. package/esm/CodeHighlight/CopyCodeButton/CopyIcon.mjs +29 -26
  44. package/esm/CodeHighlight/CopyCodeButton/CopyIcon.mjs.map +1 -1
  45. package/esm/CodeHighlight/ExpandCodeButton/ExpandCodeButton.mjs +15 -22
  46. package/esm/CodeHighlight/ExpandCodeButton/ExpandCodeButton.mjs.map +1 -1
  47. package/esm/CodeHighlight/ExpandCodeButton/ExpandIcon.mjs +39 -33
  48. package/esm/CodeHighlight/ExpandCodeButton/ExpandIcon.mjs.map +1 -1
  49. package/esm/CodeHighlight/InlineCodeHighlight.mjs +36 -34
  50. package/esm/CodeHighlight/InlineCodeHighlight.mjs.map +1 -1
  51. package/esm/CodeHighlight.module.mjs +22 -0
  52. package/esm/CodeHighlight.module.mjs.map +1 -0
  53. package/esm/CodeHighlightProvider/CodeHighlightProvider.mjs +24 -23
  54. package/esm/CodeHighlightProvider/CodeHighlightProvider.mjs.map +1 -1
  55. package/esm/CodeHighlightProvider/adapters/highlight-js-adapter.mjs +12 -12
  56. package/esm/CodeHighlightProvider/adapters/highlight-js-adapter.mjs.map +1 -1
  57. package/esm/CodeHighlightProvider/adapters/plain-text-adapter.mjs +8 -5
  58. package/esm/CodeHighlightProvider/adapters/plain-text-adapter.mjs.map +1 -1
  59. package/esm/CodeHighlightProvider/adapters/shiki-adapter.mjs +34 -40
  60. package/esm/CodeHighlightProvider/adapters/shiki-adapter.mjs.map +1 -1
  61. package/esm/CodeHighlightProvider/adapters/shiki-themes.mjs +1131 -1232
  62. package/esm/CodeHighlightProvider/adapters/shiki-themes.mjs.map +1 -1
  63. package/esm/CodeHighlightTabs/CodeHighlightTabs.mjs +101 -131
  64. package/esm/CodeHighlightTabs/CodeHighlightTabs.mjs.map +1 -1
  65. package/esm/CodeHighlightTabs/FileIcon.mjs +17 -12
  66. package/esm/CodeHighlightTabs/FileIcon.mjs.map +1 -1
  67. package/esm/index.mjs +10 -10
  68. package/package.json +3 -3
  69. package/cjs/CodeHighlight.module.css.cjs +0 -7
  70. package/cjs/CodeHighlight.module.css.cjs.map +0 -1
  71. package/cjs/index.cjs.map +0 -1
  72. package/esm/CodeHighlight.module.css.mjs +0 -5
  73. package/esm/CodeHighlight.module.css.mjs.map +0 -1
  74. package/esm/index.mjs.map +0 -1
@@ -1,17 +1,21 @@
1
- 'use client';
2
- 'use strict';
3
-
4
- var jsxRuntime = require('react/jsx-runtime');
5
-
1
+ "use client";
2
+ require("../_virtual/_rolldown/runtime.cjs");
3
+ let react_jsx_runtime = require("react/jsx-runtime");
4
+ //#region packages/@mantine/code-highlight/src/CodeHighlightTabs/FileIcon.tsx
6
5
  function FileIcon({ fileIcon, fileName, getFileIcon, className, style }) {
7
- if (fileIcon) {
8
- return /* @__PURE__ */ jsxRuntime.jsx("span", { className, style, children: fileIcon });
9
- }
10
- if (getFileIcon && fileName) {
11
- return /* @__PURE__ */ jsxRuntime.jsx("span", { className, style, children: getFileIcon(fileName) });
12
- }
13
- return null;
6
+ if (fileIcon) return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
7
+ className,
8
+ style,
9
+ children: fileIcon
10
+ });
11
+ if (getFileIcon && fileName) return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
12
+ className,
13
+ style,
14
+ children: getFileIcon(fileName)
15
+ });
16
+ return null;
14
17
  }
15
-
18
+ //#endregion
16
19
  exports.FileIcon = FileIcon;
17
- //# sourceMappingURL=FileIcon.cjs.map
20
+
21
+ //# sourceMappingURL=FileIcon.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"FileIcon.cjs","sources":["../../src/CodeHighlightTabs/FileIcon.tsx"],"sourcesContent":["interface FileIconProps {\n fileName: string | undefined;\n getFileIcon?: ((fileName: string) => React.ReactNode) | undefined;\n fileIcon: React.ReactNode | undefined;\n className?: string;\n style?: React.CSSProperties;\n}\n\nexport function FileIcon({ fileIcon, fileName, getFileIcon, className, style }: FileIconProps) {\n if (fileIcon) {\n return (\n <span className={className} style={style}>\n {fileIcon}\n </span>\n );\n }\n\n if (getFileIcon && fileName) {\n return (\n <span className={className} style={style}>\n {getFileIcon(fileName)}\n </span>\n );\n }\n\n return null;\n}\n"],"names":["jsx"],"mappings":";;;;;AAQO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAS,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAW,CAAA,CAAA,CAAA,CAAA,GAAM,CAAA,CAAkB,CAAA;AAC7F,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,QAAA,CAAA,CAAU,CAAA;AACZ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACEA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAsB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACzB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EACH,CAAA,CAAA;AAAA,CAAA,CAEJ,CAAA;AAEA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,KAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA;AAC3B,CAAA,CAAA,CAAA,CAAA,sCACG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAsB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACzB,QAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQ,CAAA,EACvB,CAAA,CAAA;AAAA,CAAA,CAEJ,CAAA;AAEA,CAAA,CAAA,OAAO,CAAA,CAAA,CAAA,CAAA,CAAA;AACT,CAAA;;"}
1
+ {"version":3,"file":"FileIcon.cjs","names":[],"sources":["../../src/CodeHighlightTabs/FileIcon.tsx"],"sourcesContent":["interface FileIconProps {\n fileName: string | undefined;\n getFileIcon?: ((fileName: string) => React.ReactNode) | undefined;\n fileIcon: React.ReactNode | undefined;\n className?: string;\n style?: React.CSSProperties;\n}\n\nexport function FileIcon({ fileIcon, fileName, getFileIcon, className, style }: FileIconProps) {\n if (fileIcon) {\n return (\n <span className={className} style={style}>\n {fileIcon}\n </span>\n );\n }\n\n if (getFileIcon && fileName) {\n return (\n <span className={className} style={style}>\n {getFileIcon(fileName)}\n </span>\n );\n }\n\n return null;\n}\n"],"mappings":";;;;AAQA,SAAgB,SAAS,EAAE,UAAU,UAAU,aAAa,WAAW,SAAwB;AAC7F,KAAI,SACF,QACE,iBAAA,GAAA,kBAAA,KAAC,QAAD;EAAiB;EAAkB;YAChC;EACI,CAAA;AAIX,KAAI,eAAe,SACjB,QACE,iBAAA,GAAA,kBAAA,KAAC,QAAD;EAAiB;EAAkB;YAChC,YAAY,SAAS;EACjB,CAAA;AAIX,QAAO"}
@@ -0,0 +1,24 @@
1
+ "use client";
2
+ //#region \0rolldown/runtime.js
3
+ var __create = Object.create;
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
8
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
11
+ key = keys[i];
12
+ if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
13
+ get: ((k) => from[k]).bind(null, key),
14
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
15
+ });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
20
+ value: mod,
21
+ enumerable: true
22
+ }) : target, mod));
23
+ //#endregion
24
+ exports.__toESM = __toESM;
package/cjs/index.cjs CHANGED
@@ -1,26 +1,21 @@
1
- 'use strict';
2
-
3
- var CodeHighlight = require('./CodeHighlight/CodeHighlight.cjs');
4
- var InlineCodeHighlight = require('./CodeHighlight/InlineCodeHighlight.cjs');
5
- var CodeHighlightTabs = require('./CodeHighlightTabs/CodeHighlightTabs.cjs');
6
- var CodeHighlightControl = require('./CodeHighlight/CodeHighlightControl/CodeHighlightControl.cjs');
7
- var CodeHighlight_context = require('./CodeHighlight/CodeHighlight.context.cjs');
8
- var CodeHighlightProvider = require('./CodeHighlightProvider/CodeHighlightProvider.cjs');
9
- var highlightJsAdapter = require('./CodeHighlightProvider/adapters/highlight-js-adapter.cjs');
10
- var shikiAdapter = require('./CodeHighlightProvider/adapters/shiki-adapter.cjs');
11
- var plainTextAdapter = require('./CodeHighlightProvider/adapters/plain-text-adapter.cjs');
12
-
13
-
14
-
15
- exports.CodeHighlight = CodeHighlight.CodeHighlight;
16
- exports.InlineCodeHighlight = InlineCodeHighlight.InlineCodeHighlight;
17
- exports.CodeHighlightTabs = CodeHighlightTabs.CodeHighlightTabs;
18
- exports.CodeHighlightControl = CodeHighlightControl.CodeHighlightControl;
19
- exports.useCodeHighlightContext = CodeHighlight_context.useCodeHighlightContext;
20
- exports.CodeHighlightAdapterProvider = CodeHighlightProvider.CodeHighlightAdapterProvider;
21
- exports.useHighlight = CodeHighlightProvider.useHighlight;
22
- exports.createHighlightJsAdapter = highlightJsAdapter.createHighlightJsAdapter;
23
- exports.createShikiAdapter = shikiAdapter.createShikiAdapter;
24
- exports.stripShikiCodeBlocks = shikiAdapter.stripShikiCodeBlocks;
25
- exports.plainTextAdapter = plainTextAdapter.plainTextAdapter;
26
- //# sourceMappingURL=index.cjs.map
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_plain_text_adapter = require("./CodeHighlightProvider/adapters/plain-text-adapter.cjs");
3
+ const require_CodeHighlightProvider = require("./CodeHighlightProvider/CodeHighlightProvider.cjs");
4
+ const require_CodeHighlight_context = require("./CodeHighlight/CodeHighlight.context.cjs");
5
+ const require_CodeHighlightControl = require("./CodeHighlight/CodeHighlightControl/CodeHighlightControl.cjs");
6
+ const require_CodeHighlight = require("./CodeHighlight/CodeHighlight.cjs");
7
+ const require_InlineCodeHighlight = require("./CodeHighlight/InlineCodeHighlight.cjs");
8
+ const require_CodeHighlightTabs = require("./CodeHighlightTabs/CodeHighlightTabs.cjs");
9
+ const require_highlight_js_adapter = require("./CodeHighlightProvider/adapters/highlight-js-adapter.cjs");
10
+ const require_shiki_adapter = require("./CodeHighlightProvider/adapters/shiki-adapter.cjs");
11
+ exports.CodeHighlight = require_CodeHighlight.CodeHighlight;
12
+ exports.CodeHighlightAdapterProvider = require_CodeHighlightProvider.CodeHighlightAdapterProvider;
13
+ exports.CodeHighlightControl = require_CodeHighlightControl.CodeHighlightControl;
14
+ exports.CodeHighlightTabs = require_CodeHighlightTabs.CodeHighlightTabs;
15
+ exports.InlineCodeHighlight = require_InlineCodeHighlight.InlineCodeHighlight;
16
+ exports.createHighlightJsAdapter = require_highlight_js_adapter.createHighlightJsAdapter;
17
+ exports.createShikiAdapter = require_shiki_adapter.createShikiAdapter;
18
+ exports.plainTextAdapter = require_plain_text_adapter.plainTextAdapter;
19
+ exports.stripShikiCodeBlocks = require_shiki_adapter.stripShikiCodeBlocks;
20
+ exports.useCodeHighlightContext = require_CodeHighlight_context.useCodeHighlightContext;
21
+ exports.useHighlight = require_CodeHighlightProvider.useHighlight;
@@ -1,9 +1,8 @@
1
- 'use client';
2
- import { createSafeContext } from '@mantine/core';
3
-
4
- const [CodeHighlightContextProvider, useCodeHighlightContext] = createSafeContext(
5
- "CodeHighlightProvider was not found in the component tree"
6
- );
7
-
1
+ "use client";
2
+ import { createSafeContext } from "@mantine/core";
3
+ //#region packages/@mantine/code-highlight/src/CodeHighlight/CodeHighlight.context.ts
4
+ const [CodeHighlightContextProvider, useCodeHighlightContext] = createSafeContext("CodeHighlightProvider was not found in the component tree");
5
+ //#endregion
8
6
  export { CodeHighlightContextProvider, useCodeHighlightContext };
9
- //# sourceMappingURL=CodeHighlight.context.mjs.map
7
+
8
+ //# sourceMappingURL=CodeHighlight.context.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"CodeHighlight.context.mjs","sources":["../../src/CodeHighlight/CodeHighlight.context.ts"],"sourcesContent":["import { createSafeContext, GetStylesApi } from '@mantine/core';\nimport type { CodeHighlightFactory } from './CodeHighlight';\n\nexport interface CodeHighlightContextValue {\n getStyles: GetStylesApi<CodeHighlightFactory>;\n codeColorScheme: 'light' | 'dark' | (string & {}) | undefined;\n}\n\nexport const [CodeHighlightContextProvider, useCodeHighlightContext] =\n createSafeContext<CodeHighlightContextValue>(\n 'CodeHighlightProvider was not found in the component tree'\n );\n"],"names":[],"mappings":";;;AAQO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA8B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAuB,CAAA,GACjE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CACE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACF,CAAA,CAAA;;"}
1
+ {"version":3,"file":"CodeHighlight.context.mjs","names":[],"sources":["../../src/CodeHighlight/CodeHighlight.context.ts"],"sourcesContent":["import { createSafeContext, GetStylesApi } from '@mantine/core';\nimport type { CodeHighlightFactory } from './CodeHighlight';\n\nexport interface CodeHighlightContextValue {\n getStyles: GetStylesApi<CodeHighlightFactory>;\n codeColorScheme: 'light' | 'dark' | (string & {}) | undefined;\n}\n\nexport const [CodeHighlightContextProvider, useCodeHighlightContext] =\n createSafeContext<CodeHighlightContextValue>(\n 'CodeHighlightProvider was not found in the component tree'\n );\n"],"mappings":";;;AAQA,MAAa,CAAC,8BAA8B,2BAC1C,kBACE,4DACD"}
@@ -1,169 +1,134 @@
1
- 'use client';
2
- import { jsx, jsxs } from 'react/jsx-runtime';
3
- import cx from 'clsx';
4
- import { createVarsResolver, getRadius, getThemeColor, rem, factory, useProps, useStyles, useComputedColorScheme, Box, ScrollArea, UnstyledButton } from '@mantine/core';
5
- import { useUncontrolled } from '@mantine/hooks';
6
- import { useHighlight } from '../CodeHighlightProvider/CodeHighlightProvider.mjs';
7
- import { CodeHighlightContextProvider } from './CodeHighlight.context.mjs';
8
- import { CodeHighlightControl } from './CodeHighlightControl/CodeHighlightControl.mjs';
9
- import { CopyCodeButton } from './CopyCodeButton/CopyCodeButton.mjs';
10
- import { ExpandCodeButton } from './ExpandCodeButton/ExpandCodeButton.mjs';
11
- import classes from '../CodeHighlight.module.css.mjs';
12
-
1
+ "use client";
2
+ import { useHighlight } from "../CodeHighlightProvider/CodeHighlightProvider.mjs";
3
+ import { CodeHighlightContextProvider } from "./CodeHighlight.context.mjs";
4
+ import { CodeHighlightControl } from "./CodeHighlightControl/CodeHighlightControl.mjs";
5
+ import { CopyCodeButton } from "./CopyCodeButton/CopyCodeButton.mjs";
6
+ import { ExpandCodeButton } from "./ExpandCodeButton/ExpandCodeButton.mjs";
7
+ import CodeHighlight_module_default from "../CodeHighlight.module.mjs";
8
+ import cx from "clsx";
9
+ import { Box, ScrollArea, UnstyledButton, createVarsResolver, factory, getRadius, getThemeColor, rem, useComputedColorScheme, useProps, useStyles } from "@mantine/core";
10
+ import { useUncontrolled } from "@mantine/hooks";
11
+ import { jsx, jsxs } from "react/jsx-runtime";
12
+ //#region packages/@mantine/code-highlight/src/CodeHighlight/CodeHighlight.tsx
13
13
  const defaultProps = {
14
- withCopyButton: true,
15
- expandCodeLabel: "Expand code",
16
- collapseCodeLabel: "Collapse code"
14
+ withCopyButton: true,
15
+ expandCodeLabel: "Expand code",
16
+ collapseCodeLabel: "Collapse code"
17
17
  };
18
- const varsResolver = createVarsResolver(
19
- (theme, { maxCollapsedHeight, background, radius }) => ({
20
- codeHighlight: {
21
- "--ch-max-height": rem(maxCollapsedHeight),
22
- "--ch-background": background ? getThemeColor(background, theme) : void 0,
23
- "--ch-radius": typeof radius !== "undefined" ? getRadius(radius) : void 0
24
- }
25
- })
26
- );
18
+ const varsResolver = createVarsResolver((theme, { maxCollapsedHeight, background, radius }) => ({ codeHighlight: {
19
+ "--ch-max-height": rem(maxCollapsedHeight),
20
+ "--ch-background": background ? getThemeColor(background, theme) : void 0,
21
+ "--ch-radius": typeof radius !== "undefined" ? getRadius(radius) : void 0
22
+ } }));
27
23
  const CodeHighlight = factory((_props) => {
28
- const props = useProps("CodeHighlight", defaultProps, _props);
29
- const {
30
- classNames,
31
- className,
32
- style,
33
- styles,
34
- unstyled,
35
- vars,
36
- code,
37
- copiedLabel,
38
- copyLabel,
39
- defaultExpanded,
40
- expanded,
41
- onExpandedChange,
42
- maxCollapsedHeight,
43
- withCopyButton,
44
- withExpandButton,
45
- expandCodeLabel,
46
- collapseCodeLabel,
47
- radius,
48
- background,
49
- withBorder,
50
- controls,
51
- language,
52
- codeColorScheme,
53
- __withOffset,
54
- __inline,
55
- __staticSelector,
56
- attributes,
57
- ...others
58
- } = props;
59
- const getStyles = useStyles({
60
- name: __staticSelector || "CodeHighlight",
61
- classes,
62
- props,
63
- className,
64
- style,
65
- classNames,
66
- styles,
67
- unstyled,
68
- attributes,
69
- vars,
70
- varsResolver,
71
- rootSelector: "codeHighlight"
72
- });
73
- const [_expanded, setExpanded] = useUncontrolled({
74
- value: expanded,
75
- defaultValue: defaultExpanded,
76
- finalValue: true,
77
- onChange: onExpandedChange
78
- });
79
- const shouldDisplayControls = controls && controls.length > 0 || withExpandButton || withCopyButton;
80
- const colorScheme = useComputedColorScheme();
81
- const highlight = useHighlight();
82
- const highlightedCode = highlight({
83
- code: code.trim(),
84
- language,
85
- colorScheme: codeColorScheme ?? colorScheme
86
- });
87
- const codeContent = highlightedCode.isHighlighted ? { dangerouslySetInnerHTML: { __html: highlightedCode.highlightedCode } } : { children: code.trim() };
88
- if (__inline) {
89
- return /* @__PURE__ */ jsx(
90
- Box,
91
- {
92
- component: "code",
93
- ...others,
94
- ...highlightedCode.codeElementProps,
95
- ...getStyles("codeHighlight", {
96
- className: cx(highlightedCode.codeElementProps?.className, className),
97
- style: [{ ...highlightedCode.codeElementProps?.style }, style]
98
- }),
99
- "data-with-border": withBorder || void 0,
100
- ...codeContent
101
- }
102
- );
103
- }
104
- return /* @__PURE__ */ jsx(CodeHighlightContextProvider, { value: { getStyles, codeColorScheme }, children: /* @__PURE__ */ jsxs(
105
- Box,
106
- {
107
- ...getStyles("codeHighlight"),
108
- ...others,
109
- dir: "ltr",
110
- "data-code-color-scheme": codeColorScheme,
111
- "data-with-border": withBorder || void 0,
112
- children: [
113
- shouldDisplayControls && /* @__PURE__ */ jsxs("div", { ...getStyles("controls"), "data-with-offset": __withOffset || void 0, children: [
114
- controls,
115
- withExpandButton && /* @__PURE__ */ jsx(
116
- ExpandCodeButton,
117
- {
118
- expanded: _expanded,
119
- onExpand: setExpanded,
120
- expandCodeLabel,
121
- collapseCodeLabel
122
- }
123
- ),
124
- withCopyButton && /* @__PURE__ */ jsx(CopyCodeButton, { code, copiedLabel, copyLabel })
125
- ] }),
126
- /* @__PURE__ */ jsx(
127
- ScrollArea,
128
- {
129
- type: "hover",
130
- scrollbarSize: 4,
131
- dir: "ltr",
132
- offsetScrollbars: false,
133
- "data-collapsed": !_expanded || void 0,
134
- styles: { viewport: { overscrollBehaviorInline: "none" } },
135
- ...getStyles("scrollarea"),
136
- children: /* @__PURE__ */ jsx("pre", { ...getStyles("pre"), "data-with-offset": __withOffset || void 0, children: /* @__PURE__ */ jsx(
137
- "code",
138
- {
139
- ...highlightedCode.codeElementProps,
140
- ...getStyles("code", {
141
- className: highlightedCode.codeElementProps?.className,
142
- style: highlightedCode.codeElementProps?.style
143
- }),
144
- ...codeContent
145
- }
146
- ) })
147
- }
148
- ),
149
- /* @__PURE__ */ jsx(
150
- UnstyledButton,
151
- {
152
- ...getStyles("showCodeButton"),
153
- mod: { hidden: _expanded },
154
- onClick: () => setExpanded(true),
155
- "data-code-color-scheme": codeColorScheme,
156
- children: expandCodeLabel
157
- }
158
- )
159
- ]
160
- }
161
- ) });
24
+ const props = useProps("CodeHighlight", defaultProps, _props);
25
+ const { classNames, className, style, styles, unstyled, vars, code, copiedLabel, copyLabel, defaultExpanded, expanded, onExpandedChange, maxCollapsedHeight, withCopyButton, withExpandButton, expandCodeLabel, collapseCodeLabel, radius, background, withBorder, controls, language, codeColorScheme, __withOffset, __inline, __staticSelector, attributes, ...others } = props;
26
+ const getStyles = useStyles({
27
+ name: __staticSelector || "CodeHighlight",
28
+ classes: CodeHighlight_module_default,
29
+ props,
30
+ className,
31
+ style,
32
+ classNames,
33
+ styles,
34
+ unstyled,
35
+ attributes,
36
+ vars,
37
+ varsResolver,
38
+ rootSelector: "codeHighlight"
39
+ });
40
+ const [_expanded, setExpanded] = useUncontrolled({
41
+ value: expanded,
42
+ defaultValue: defaultExpanded,
43
+ finalValue: true,
44
+ onChange: onExpandedChange
45
+ });
46
+ const shouldDisplayControls = controls && controls.length > 0 || withExpandButton || withCopyButton;
47
+ const colorScheme = useComputedColorScheme();
48
+ const highlightedCode = useHighlight()({
49
+ code: code.trim(),
50
+ language,
51
+ colorScheme: codeColorScheme ?? colorScheme
52
+ });
53
+ const codeContent = highlightedCode.isHighlighted ? { dangerouslySetInnerHTML: { __html: highlightedCode.highlightedCode } } : { children: code.trim() };
54
+ if (__inline) return /* @__PURE__ */ jsx(Box, {
55
+ component: "code",
56
+ ...others,
57
+ ...highlightedCode.codeElementProps,
58
+ ...getStyles("codeHighlight", {
59
+ className: cx(highlightedCode.codeElementProps?.className, className),
60
+ style: [{ ...highlightedCode.codeElementProps?.style }, style]
61
+ }),
62
+ "data-with-border": withBorder || void 0,
63
+ ...codeContent
64
+ });
65
+ return /* @__PURE__ */ jsx(CodeHighlightContextProvider, {
66
+ value: {
67
+ getStyles,
68
+ codeColorScheme
69
+ },
70
+ children: /* @__PURE__ */ jsxs(Box, {
71
+ ...getStyles("codeHighlight"),
72
+ ...others,
73
+ dir: "ltr",
74
+ "data-code-color-scheme": codeColorScheme,
75
+ "data-with-border": withBorder || void 0,
76
+ children: [
77
+ shouldDisplayControls && /* @__PURE__ */ jsxs("div", {
78
+ ...getStyles("controls"),
79
+ "data-with-offset": __withOffset || void 0,
80
+ children: [
81
+ controls,
82
+ withExpandButton && /* @__PURE__ */ jsx(ExpandCodeButton, {
83
+ expanded: _expanded,
84
+ onExpand: setExpanded,
85
+ expandCodeLabel,
86
+ collapseCodeLabel
87
+ }),
88
+ withCopyButton && /* @__PURE__ */ jsx(CopyCodeButton, {
89
+ code,
90
+ copiedLabel,
91
+ copyLabel
92
+ })
93
+ ]
94
+ }),
95
+ /* @__PURE__ */ jsx(ScrollArea, {
96
+ type: "hover",
97
+ scrollbarSize: 4,
98
+ dir: "ltr",
99
+ offsetScrollbars: false,
100
+ "data-collapsed": !_expanded || void 0,
101
+ styles: { viewport: { overscrollBehaviorInline: "none" } },
102
+ ...getStyles("scrollarea"),
103
+ children: /* @__PURE__ */ jsx("pre", {
104
+ ...getStyles("pre"),
105
+ "data-with-offset": __withOffset || void 0,
106
+ children: /* @__PURE__ */ jsx("code", {
107
+ ...highlightedCode.codeElementProps,
108
+ ...getStyles("code", {
109
+ className: highlightedCode.codeElementProps?.className,
110
+ style: highlightedCode.codeElementProps?.style
111
+ }),
112
+ ...codeContent
113
+ })
114
+ })
115
+ }),
116
+ /* @__PURE__ */ jsx(UnstyledButton, {
117
+ ...getStyles("showCodeButton"),
118
+ mod: { hidden: _expanded },
119
+ onClick: () => setExpanded(true),
120
+ "data-code-color-scheme": codeColorScheme,
121
+ children: expandCodeLabel
122
+ })
123
+ ]
124
+ })
125
+ });
162
126
  });
163
127
  CodeHighlight.displayName = "@mantine/code-highlight/CodeHighlight";
164
- CodeHighlight.classes = classes;
128
+ CodeHighlight.classes = CodeHighlight_module_default;
165
129
  CodeHighlight.varsResolver = varsResolver;
166
130
  CodeHighlight.Control = CodeHighlightControl;
167
-
131
+ //#endregion
168
132
  export { CodeHighlight };
169
- //# sourceMappingURL=CodeHighlight.mjs.map
133
+
134
+ //# sourceMappingURL=CodeHighlight.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"CodeHighlight.mjs","sources":["../../src/CodeHighlight/CodeHighlight.tsx"],"sourcesContent":["import cx from 'clsx';\nimport {\n Box,\n BoxProps,\n createVarsResolver,\n ElementProps,\n factory,\n Factory,\n getRadius,\n getThemeColor,\n MantineColor,\n MantineRadius,\n rem,\n ScrollArea,\n StylesApiProps,\n UnstyledButton,\n useComputedColorScheme,\n useProps,\n useStyles,\n} from '@mantine/core';\nimport { useUncontrolled } from '@mantine/hooks';\nimport { useHighlight } from '../CodeHighlightProvider/CodeHighlightProvider';\nimport { CodeHighlightContextProvider } from './CodeHighlight.context';\nimport { CodeHighlightControl } from './CodeHighlightControl/CodeHighlightControl';\nimport { CopyCodeButton } from './CopyCodeButton/CopyCodeButton';\nimport { ExpandCodeButton } from './ExpandCodeButton/ExpandCodeButton';\nimport classes from '../CodeHighlight.module.css';\n\nexport type CodeHighlightStylesNames =\n | 'codeHighlight'\n | 'pre'\n | 'code'\n | 'control'\n | 'controlTooltip'\n | 'controls'\n | 'scrollarea'\n | 'showCodeButton';\n\nexport type CodeHighlightCssVariables = {\n codeHighlight: '--ch-max-height' | '--ch-background' | '--ch-radius';\n};\n\nexport interface CodeHighlightSettings {\n /** Label for copy button in default state @default 'Copy' */\n copyLabel?: string;\n\n /** Label for copy button in copied state @default 'Copied' */\n copiedLabel?: string;\n\n /** Uncontrolled expanded default state */\n defaultExpanded?: boolean;\n\n /** Controlled expanded state */\n expanded?: boolean;\n\n /** Called when expanded state changes */\n onExpandedChange?: (expanded: boolean) => void;\n\n /** Max height of collapsed state @default 180px */\n maxCollapsedHeight?: number | string;\n\n /** Determines whether the copy button should be displayed @default true */\n withCopyButton?: boolean;\n\n /** Determines whether the expand/collapse button should be displayed @default false */\n withExpandButton?: boolean;\n\n /** Label for expand button @default 'Expand code' */\n expandCodeLabel?: string;\n\n /** Label for collapse button @default 'Collapse code' */\n collapseCodeLabel?: string;\n\n /** Controls background color of the code. By default, the value depends on color scheme. */\n background?: MantineColor;\n\n /** Key of `theme.radius` or any valid CSS value to set border-radius @default 0 */\n radius?: MantineRadius;\n\n /** Adds border to the root element @default false */\n withBorder?: boolean;\n\n /** Extra controls to display in the controls list */\n controls?: React.ReactNode[];\n\n /** Set to use dark or light color scheme. When using shiki adapter, you can use loaded themes here */\n codeColorScheme?: 'dark' | 'light' | (string & {});\n}\n\nexport interface CodeHighlightProps\n extends\n CodeHighlightSettings,\n BoxProps,\n StylesApiProps<CodeHighlightFactory>,\n ElementProps<'div'> {\n __withOffset?: boolean;\n __staticSelector?: string;\n\n /** If set, the code will be rendered as inline element without `<pre>` @default false */\n __inline?: boolean;\n\n /** Code to highlight */\n code: string;\n\n /** Language of the code, used for syntax highlighting */\n language?: string;\n}\n\nexport type CodeHighlightFactory = Factory<{\n props: CodeHighlightProps;\n ref: HTMLDivElement;\n stylesNames: CodeHighlightStylesNames;\n vars: CodeHighlightCssVariables;\n staticComponents: {\n Control: typeof CodeHighlightControl;\n };\n}>;\n\nconst defaultProps = {\n withCopyButton: true,\n expandCodeLabel: 'Expand code',\n collapseCodeLabel: 'Collapse code',\n} satisfies Partial<CodeHighlightProps>;\n\nconst varsResolver = createVarsResolver<CodeHighlightFactory>(\n (theme, { maxCollapsedHeight, background, radius }) => ({\n codeHighlight: {\n '--ch-max-height': rem(maxCollapsedHeight),\n '--ch-background': background ? getThemeColor(background, theme) : undefined,\n '--ch-radius': typeof radius !== 'undefined' ? getRadius(radius) : undefined,\n },\n })\n);\n\nexport const CodeHighlight = factory<CodeHighlightFactory>((_props) => {\n const props = useProps('CodeHighlight', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n code,\n copiedLabel,\n copyLabel,\n defaultExpanded,\n expanded,\n onExpandedChange,\n maxCollapsedHeight,\n withCopyButton,\n withExpandButton,\n expandCodeLabel,\n collapseCodeLabel,\n radius,\n background,\n withBorder,\n controls,\n language,\n codeColorScheme,\n __withOffset,\n __inline,\n __staticSelector,\n attributes,\n ...others\n } = props;\n\n const getStyles = useStyles<CodeHighlightFactory>({\n name: __staticSelector || 'CodeHighlight',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n rootSelector: 'codeHighlight',\n });\n\n const [_expanded, setExpanded] = useUncontrolled({\n value: expanded,\n defaultValue: defaultExpanded,\n finalValue: true,\n onChange: onExpandedChange,\n });\n\n const shouldDisplayControls =\n (controls && controls.length > 0) || withExpandButton || withCopyButton;\n\n const colorScheme = useComputedColorScheme();\n const highlight = useHighlight();\n const highlightedCode = highlight({\n code: code.trim(),\n language,\n colorScheme: codeColorScheme ?? colorScheme,\n });\n\n const codeContent = highlightedCode.isHighlighted\n ? { dangerouslySetInnerHTML: { __html: highlightedCode.highlightedCode } }\n : { children: code.trim() };\n\n if (__inline) {\n return (\n <Box\n component=\"code\"\n {...others}\n {...highlightedCode.codeElementProps}\n {...getStyles('codeHighlight', {\n className: cx(highlightedCode.codeElementProps?.className, className),\n style: [{ ...highlightedCode.codeElementProps?.style }, style],\n })}\n data-with-border={withBorder || undefined}\n {...codeContent}\n />\n );\n }\n\n return (\n <CodeHighlightContextProvider value={{ getStyles, codeColorScheme }}>\n <Box\n {...getStyles('codeHighlight')}\n {...others}\n dir=\"ltr\"\n data-code-color-scheme={codeColorScheme}\n data-with-border={withBorder || undefined}\n >\n {shouldDisplayControls && (\n <div {...getStyles('controls')} data-with-offset={__withOffset || undefined}>\n {controls}\n\n {withExpandButton && (\n <ExpandCodeButton\n expanded={_expanded}\n onExpand={setExpanded}\n expandCodeLabel={expandCodeLabel}\n collapseCodeLabel={collapseCodeLabel}\n />\n )}\n {withCopyButton && (\n <CopyCodeButton code={code} copiedLabel={copiedLabel} copyLabel={copyLabel} />\n )}\n </div>\n )}\n\n <ScrollArea\n type=\"hover\"\n scrollbarSize={4}\n dir=\"ltr\"\n offsetScrollbars={false}\n data-collapsed={!_expanded || undefined}\n styles={{ viewport: { overscrollBehaviorInline: 'none' } }}\n {...getStyles('scrollarea')}\n >\n <pre {...getStyles('pre')} data-with-offset={__withOffset || undefined}>\n <code\n {...highlightedCode.codeElementProps}\n {...getStyles('code', {\n className: highlightedCode.codeElementProps?.className,\n style: highlightedCode.codeElementProps?.style,\n })}\n {...codeContent}\n />\n </pre>\n </ScrollArea>\n\n <UnstyledButton\n {...getStyles('showCodeButton')}\n mod={{ hidden: _expanded }}\n onClick={() => setExpanded(true)}\n data-code-color-scheme={codeColorScheme}\n >\n {expandCodeLabel}\n </UnstyledButton>\n </Box>\n </CodeHighlightContextProvider>\n );\n});\n\nCodeHighlight.displayName = '@mantine/code-highlight/CodeHighlight';\nCodeHighlight.classes = classes;\nCodeHighlight.varsResolver = varsResolver;\nCodeHighlight.Control = CodeHighlightControl;\n"],"names":[],"mappings":"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CAAA,CAAA,CAAA,CAAA,CAAM,CAAA,CAAA;AAC5D,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAM,CAAA;AAAA,CAAA,CAAA,CAAA,CACJ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA,CAAA,CACA,CAAA,CAAA,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA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AAA;AAC5B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACxB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAC7B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;;"}
1
+ {"version":3,"file":"CodeHighlight.mjs","names":["classes"],"sources":["../../src/CodeHighlight/CodeHighlight.tsx"],"sourcesContent":["import cx from 'clsx';\nimport {\n Box,\n BoxProps,\n createVarsResolver,\n ElementProps,\n factory,\n Factory,\n getRadius,\n getThemeColor,\n MantineColor,\n MantineRadius,\n rem,\n ScrollArea,\n StylesApiProps,\n UnstyledButton,\n useComputedColorScheme,\n useProps,\n useStyles,\n} from '@mantine/core';\nimport { useUncontrolled } from '@mantine/hooks';\nimport { useHighlight } from '../CodeHighlightProvider/CodeHighlightProvider';\nimport { CodeHighlightContextProvider } from './CodeHighlight.context';\nimport { CodeHighlightControl } from './CodeHighlightControl/CodeHighlightControl';\nimport { CopyCodeButton } from './CopyCodeButton/CopyCodeButton';\nimport { ExpandCodeButton } from './ExpandCodeButton/ExpandCodeButton';\nimport classes from '../CodeHighlight.module.css';\n\nexport type CodeHighlightStylesNames =\n | 'codeHighlight'\n | 'pre'\n | 'code'\n | 'control'\n | 'controlTooltip'\n | 'controls'\n | 'scrollarea'\n | 'showCodeButton';\n\nexport type CodeHighlightCssVariables = {\n codeHighlight: '--ch-max-height' | '--ch-background' | '--ch-radius';\n};\n\nexport interface CodeHighlightSettings {\n /** Label for copy button in default state @default 'Copy' */\n copyLabel?: string;\n\n /** Label for copy button in copied state @default 'Copied' */\n copiedLabel?: string;\n\n /** Uncontrolled expanded default state */\n defaultExpanded?: boolean;\n\n /** Controlled expanded state */\n expanded?: boolean;\n\n /** Called when expanded state changes */\n onExpandedChange?: (expanded: boolean) => void;\n\n /** Max height of collapsed state @default 180px */\n maxCollapsedHeight?: number | string;\n\n /** Determines whether the copy button should be displayed @default true */\n withCopyButton?: boolean;\n\n /** Determines whether the expand/collapse button should be displayed @default false */\n withExpandButton?: boolean;\n\n /** Label for expand button @default 'Expand code' */\n expandCodeLabel?: string;\n\n /** Label for collapse button @default 'Collapse code' */\n collapseCodeLabel?: string;\n\n /** Controls background color of the code. By default, the value depends on color scheme. */\n background?: MantineColor;\n\n /** Key of `theme.radius` or any valid CSS value to set border-radius @default 0 */\n radius?: MantineRadius;\n\n /** Adds border to the root element @default false */\n withBorder?: boolean;\n\n /** Extra controls to display in the controls list */\n controls?: React.ReactNode[];\n\n /** Set to use dark or light color scheme. When using shiki adapter, you can use loaded themes here */\n codeColorScheme?: 'dark' | 'light' | (string & {});\n}\n\nexport interface CodeHighlightProps\n extends\n CodeHighlightSettings,\n BoxProps,\n StylesApiProps<CodeHighlightFactory>,\n ElementProps<'div'> {\n __withOffset?: boolean;\n __staticSelector?: string;\n\n /** If set, the code will be rendered as inline element without `<pre>` @default false */\n __inline?: boolean;\n\n /** Code to highlight */\n code: string;\n\n /** Language of the code, used for syntax highlighting */\n language?: string;\n}\n\nexport type CodeHighlightFactory = Factory<{\n props: CodeHighlightProps;\n ref: HTMLDivElement;\n stylesNames: CodeHighlightStylesNames;\n vars: CodeHighlightCssVariables;\n staticComponents: {\n Control: typeof CodeHighlightControl;\n };\n}>;\n\nconst defaultProps = {\n withCopyButton: true,\n expandCodeLabel: 'Expand code',\n collapseCodeLabel: 'Collapse code',\n} satisfies Partial<CodeHighlightProps>;\n\nconst varsResolver = createVarsResolver<CodeHighlightFactory>(\n (theme, { maxCollapsedHeight, background, radius }) => ({\n codeHighlight: {\n '--ch-max-height': rem(maxCollapsedHeight),\n '--ch-background': background ? getThemeColor(background, theme) : undefined,\n '--ch-radius': typeof radius !== 'undefined' ? getRadius(radius) : undefined,\n },\n })\n);\n\nexport const CodeHighlight = factory<CodeHighlightFactory>((_props) => {\n const props = useProps('CodeHighlight', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n code,\n copiedLabel,\n copyLabel,\n defaultExpanded,\n expanded,\n onExpandedChange,\n maxCollapsedHeight,\n withCopyButton,\n withExpandButton,\n expandCodeLabel,\n collapseCodeLabel,\n radius,\n background,\n withBorder,\n controls,\n language,\n codeColorScheme,\n __withOffset,\n __inline,\n __staticSelector,\n attributes,\n ...others\n } = props;\n\n const getStyles = useStyles<CodeHighlightFactory>({\n name: __staticSelector || 'CodeHighlight',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n rootSelector: 'codeHighlight',\n });\n\n const [_expanded, setExpanded] = useUncontrolled({\n value: expanded,\n defaultValue: defaultExpanded,\n finalValue: true,\n onChange: onExpandedChange,\n });\n\n const shouldDisplayControls =\n (controls && controls.length > 0) || withExpandButton || withCopyButton;\n\n const colorScheme = useComputedColorScheme();\n const highlight = useHighlight();\n const highlightedCode = highlight({\n code: code.trim(),\n language,\n colorScheme: codeColorScheme ?? colorScheme,\n });\n\n const codeContent = highlightedCode.isHighlighted\n ? { dangerouslySetInnerHTML: { __html: highlightedCode.highlightedCode } }\n : { children: code.trim() };\n\n if (__inline) {\n return (\n <Box\n component=\"code\"\n {...others}\n {...highlightedCode.codeElementProps}\n {...getStyles('codeHighlight', {\n className: cx(highlightedCode.codeElementProps?.className, className),\n style: [{ ...highlightedCode.codeElementProps?.style }, style],\n })}\n data-with-border={withBorder || undefined}\n {...codeContent}\n />\n );\n }\n\n return (\n <CodeHighlightContextProvider value={{ getStyles, codeColorScheme }}>\n <Box\n {...getStyles('codeHighlight')}\n {...others}\n dir=\"ltr\"\n data-code-color-scheme={codeColorScheme}\n data-with-border={withBorder || undefined}\n >\n {shouldDisplayControls && (\n <div {...getStyles('controls')} data-with-offset={__withOffset || undefined}>\n {controls}\n\n {withExpandButton && (\n <ExpandCodeButton\n expanded={_expanded}\n onExpand={setExpanded}\n expandCodeLabel={expandCodeLabel}\n collapseCodeLabel={collapseCodeLabel}\n />\n )}\n {withCopyButton && (\n <CopyCodeButton code={code} copiedLabel={copiedLabel} copyLabel={copyLabel} />\n )}\n </div>\n )}\n\n <ScrollArea\n type=\"hover\"\n scrollbarSize={4}\n dir=\"ltr\"\n offsetScrollbars={false}\n data-collapsed={!_expanded || undefined}\n styles={{ viewport: { overscrollBehaviorInline: 'none' } }}\n {...getStyles('scrollarea')}\n >\n <pre {...getStyles('pre')} data-with-offset={__withOffset || undefined}>\n <code\n {...highlightedCode.codeElementProps}\n {...getStyles('code', {\n className: highlightedCode.codeElementProps?.className,\n style: highlightedCode.codeElementProps?.style,\n })}\n {...codeContent}\n />\n </pre>\n </ScrollArea>\n\n <UnstyledButton\n {...getStyles('showCodeButton')}\n mod={{ hidden: _expanded }}\n onClick={() => setExpanded(true)}\n data-code-color-scheme={codeColorScheme}\n >\n {expandCodeLabel}\n </UnstyledButton>\n </Box>\n </CodeHighlightContextProvider>\n );\n});\n\nCodeHighlight.displayName = '@mantine/code-highlight/CodeHighlight';\nCodeHighlight.classes = classes;\nCodeHighlight.varsResolver = varsResolver;\nCodeHighlight.Control = CodeHighlightControl;\n"],"mappings":"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"}
@@ -1,41 +1,33 @@
1
- 'use client';
2
- import { jsx } from 'react/jsx-runtime';
3
- import { polymorphicFactory, useProps, ActionIcon, Tooltip } from '@mantine/core';
4
- import { useCodeHighlightContext } from '../CodeHighlight.context.mjs';
5
-
1
+ "use client";
2
+ import { useCodeHighlightContext } from "../CodeHighlight.context.mjs";
3
+ import { ActionIcon, Tooltip, polymorphicFactory, useProps } from "@mantine/core";
4
+ import { jsx } from "react/jsx-runtime";
5
+ //#region packages/@mantine/code-highlight/src/CodeHighlight/CodeHighlightControl/CodeHighlightControl.tsx
6
6
  const CodeHighlightControl = polymorphicFactory((_props) => {
7
- const props = useProps("CodeHighlightControl", null, _props);
8
- const { children, vars, tooltipLabel, ...others } = props;
9
- const ctx = useCodeHighlightContext();
10
- const tooltipStyles = ctx.getStyles("controlTooltip");
11
- const control = /* @__PURE__ */ jsx(
12
- ActionIcon,
13
- {
14
- ...ctx.getStyles("control"),
15
- ...others,
16
- variant: "none",
17
- "data-code-color-scheme": ctx.codeColorScheme,
18
- children
19
- }
20
- );
21
- if (tooltipLabel) {
22
- return /* @__PURE__ */ jsx(
23
- Tooltip,
24
- {
25
- label: tooltipLabel,
26
- fz: "sm",
27
- position: "bottom",
28
- classNames: { tooltip: tooltipStyles.className },
29
- styles: { tooltip: tooltipStyles.style },
30
- "data-code-color-scheme": ctx.codeColorScheme,
31
- transitionProps: { duration: 0 },
32
- children: control
33
- }
34
- );
35
- }
36
- return control;
7
+ const { children, vars, tooltipLabel, ...others } = useProps("CodeHighlightControl", null, _props);
8
+ const ctx = useCodeHighlightContext();
9
+ const tooltipStyles = ctx.getStyles("controlTooltip");
10
+ const control = /* @__PURE__ */ jsx(ActionIcon, {
11
+ ...ctx.getStyles("control"),
12
+ ...others,
13
+ variant: "none",
14
+ "data-code-color-scheme": ctx.codeColorScheme,
15
+ children
16
+ });
17
+ if (tooltipLabel) return /* @__PURE__ */ jsx(Tooltip, {
18
+ label: tooltipLabel,
19
+ fz: "sm",
20
+ position: "bottom",
21
+ classNames: { tooltip: tooltipStyles.className },
22
+ styles: { tooltip: tooltipStyles.style },
23
+ "data-code-color-scheme": ctx.codeColorScheme,
24
+ transitionProps: { duration: 0 },
25
+ children: control
26
+ });
27
+ return control;
37
28
  });
38
29
  CodeHighlightControl.displayName = "@mantine/code-highlight/CodeHighlightControl";
39
-
30
+ //#endregion
40
31
  export { CodeHighlightControl };
41
- //# sourceMappingURL=CodeHighlightControl.mjs.map
32
+
33
+ //# sourceMappingURL=CodeHighlightControl.mjs.map