@mantine/code-highlight 7.2.2 → 7.3.0-alpha.1

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 (67) hide show
  1. package/cjs/CodeHighlight.cjs +58 -0
  2. package/cjs/CodeHighlight.cjs.map +1 -0
  3. package/cjs/{CodeHighlight.module.css.js → CodeHighlight.module.css.cjs} +2 -4
  4. package/cjs/CodeHighlight.module.css.cjs.map +1 -0
  5. package/cjs/CodeHighlight.theme.module.css.cjs +7 -0
  6. package/cjs/CodeHighlight.theme.module.css.cjs.map +1 -0
  7. package/cjs/CodeHighlightTabs.cjs +142 -0
  8. package/cjs/CodeHighlightTabs.cjs.map +1 -0
  9. package/cjs/CopyIcon.cjs +27 -0
  10. package/cjs/CopyIcon.cjs.map +1 -0
  11. package/cjs/ExpandIcon.cjs +26 -0
  12. package/cjs/ExpandIcon.cjs.map +1 -0
  13. package/cjs/FileIcon.cjs +17 -0
  14. package/cjs/FileIcon.cjs.map +1 -0
  15. package/cjs/InlineCodeHighlight.cjs +44 -0
  16. package/cjs/InlineCodeHighlight.cjs.map +1 -0
  17. package/cjs/index.cjs +12 -0
  18. package/cjs/index.cjs.map +1 -0
  19. package/cjs/index.css +1 -1
  20. package/cjs/{use-highlight.js → use-highlight.cjs} +3 -9
  21. package/cjs/use-highlight.cjs.map +1 -0
  22. package/esm/CodeHighlight.mjs +8 -52
  23. package/esm/CodeHighlight.mjs.map +1 -1
  24. package/esm/{CodeHighlight.module.mjs → CodeHighlight.module.css.mjs} +2 -2
  25. package/esm/CodeHighlight.module.css.mjs.map +1 -0
  26. package/esm/CodeHighlight.theme.module.css.mjs +5 -0
  27. package/esm/CodeHighlight.theme.module.css.mjs.map +1 -0
  28. package/esm/CodeHighlightTabs.mjs +27 -76
  29. package/esm/CodeHighlightTabs.mjs.map +1 -1
  30. package/esm/CopyIcon.mjs +6 -34
  31. package/esm/CopyIcon.mjs.map +1 -1
  32. package/esm/ExpandIcon.mjs +6 -34
  33. package/esm/ExpandIcon.mjs.map +1 -1
  34. package/esm/FileIcon.mjs.map +1 -1
  35. package/esm/InlineCodeHighlight.mjs +9 -39
  36. package/esm/InlineCodeHighlight.mjs.map +1 -1
  37. package/esm/index.css +1 -1
  38. package/esm/index.layer.css +1 -1
  39. package/esm/use-highlight.mjs.map +1 -1
  40. package/package.json +34 -30
  41. package/src/CodeHighlight.test.tsx +1 -1
  42. package/src/CodeHighlightTabs.test.tsx +1 -1
  43. package/src/InlineCodeHighlight.test.tsx +1 -1
  44. package/tsconfig.build.json +4 -14
  45. package/tsconfig.build.tsbuildinfo +1 -1
  46. package/tsconfig.json +4 -14
  47. package/cjs/CodeHighlight.js +0 -109
  48. package/cjs/CodeHighlight.js.map +0 -1
  49. package/cjs/CodeHighlight.module.css.js.map +0 -1
  50. package/cjs/CodeHighlight.theme.module.css.js +0 -9
  51. package/cjs/CodeHighlight.theme.module.css.js.map +0 -1
  52. package/cjs/CodeHighlightTabs.js +0 -199
  53. package/cjs/CodeHighlightTabs.js.map +0 -1
  54. package/cjs/CopyIcon.js +0 -61
  55. package/cjs/CopyIcon.js.map +0 -1
  56. package/cjs/ExpandIcon.js +0 -60
  57. package/cjs/ExpandIcon.js.map +0 -1
  58. package/cjs/FileIcon.js +0 -23
  59. package/cjs/FileIcon.js.map +0 -1
  60. package/cjs/InlineCodeHighlight.js +0 -82
  61. package/cjs/InlineCodeHighlight.js.map +0 -1
  62. package/cjs/index.js +0 -14
  63. package/cjs/index.js.map +0 -1
  64. package/cjs/use-highlight.js.map +0 -1
  65. package/esm/CodeHighlight.module.mjs.map +0 -1
  66. package/esm/CodeHighlight.theme.module.mjs +0 -5
  67. package/esm/CodeHighlight.theme.module.mjs.map +0 -1
@@ -1,82 +0,0 @@
1
- 'use client';
2
- 'use strict';
3
-
4
- Object.defineProperty(exports, '__esModule', { value: true });
5
-
6
- var React = require('react');
7
- var cx = require('clsx');
8
- var core = require('@mantine/core');
9
- var hljs = require('highlight.js');
10
- var CodeHighlight_module = require('./CodeHighlight.module.css.js');
11
- var CodeHighlight_theme_module = require('./CodeHighlight.theme.module.css.js');
12
-
13
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e['default'] : e; }
14
-
15
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
16
- var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
17
- var hljs__default = /*#__PURE__*/_interopDefaultLegacy(hljs);
18
-
19
- var __defProp = Object.defineProperty;
20
- var __defProps = Object.defineProperties;
21
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
22
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
23
- var __hasOwnProp = Object.prototype.hasOwnProperty;
24
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
25
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
26
- var __spreadValues = (a, b) => {
27
- for (var prop in b || (b = {}))
28
- if (__hasOwnProp.call(b, prop))
29
- __defNormalProp(a, prop, b[prop]);
30
- if (__getOwnPropSymbols)
31
- for (var prop of __getOwnPropSymbols(b)) {
32
- if (__propIsEnum.call(b, prop))
33
- __defNormalProp(a, prop, b[prop]);
34
- }
35
- return a;
36
- };
37
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
38
- var __objRest = (source, exclude) => {
39
- var target = {};
40
- for (var prop in source)
41
- if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
42
- target[prop] = source[prop];
43
- if (source != null && __getOwnPropSymbols)
44
- for (var prop of __getOwnPropSymbols(source)) {
45
- if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
46
- target[prop] = source[prop];
47
- }
48
- return target;
49
- };
50
- const classes = __spreadProps(__spreadValues({}, CodeHighlight_module['default']), { code: cx__default(CodeHighlight_module['default'].code, CodeHighlight_theme_module['default'].theme) });
51
- const defaultProps = {
52
- language: "tsx"
53
- };
54
- const InlineCodeHighlight = core.factory((_props, ref) => {
55
- const props = core.useProps("InlineCodeHighlight", defaultProps, _props);
56
- const _a = props, { classNames, className, style, styles, unstyled, vars, code, language } = _a, others = __objRest(_a, ["classNames", "className", "style", "styles", "unstyled", "vars", "code", "language"]);
57
- const getStyles = core.useStyles({
58
- name: "InlineCodeHighlight",
59
- props,
60
- classes,
61
- className,
62
- style,
63
- classNames,
64
- styles,
65
- unstyled,
66
- rootSelector: "code"
67
- });
68
- const highlighted = hljs__default.highlight(code.trim(), { language }).value;
69
- return /* @__PURE__ */ React__default.createElement(
70
- core.Box,
71
- __spreadProps(__spreadValues(__spreadProps(__spreadValues({}, getStyles("code")), {
72
- component: "code",
73
- ref
74
- }), others), {
75
- dangerouslySetInnerHTML: { __html: highlighted }
76
- })
77
- );
78
- });
79
- InlineCodeHighlight.displayName = "@mantine/core/InlineCodeHighlight";
80
-
81
- exports.InlineCodeHighlight = InlineCodeHighlight;
82
- //# sourceMappingURL=InlineCodeHighlight.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"InlineCodeHighlight.js","sources":["../src/InlineCodeHighlight.tsx"],"sourcesContent":["import React from 'react';\nimport cx from 'clsx';\nimport {\n Box,\n BoxProps,\n StylesApiProps,\n factory,\n ElementProps,\n useProps,\n useStyles,\n Factory,\n} from '@mantine/core';\nimport hljs from 'highlight.js';\nimport _classes from './CodeHighlight.module.css';\nimport themeClasses from './CodeHighlight.theme.module.css';\n\nconst classes = { ..._classes, code: cx(_classes.code, themeClasses.theme) };\n\nexport type InlineCodeHighlightStylesNames = 'code';\n\nexport interface InlineCodeHighlightProps\n extends BoxProps,\n StylesApiProps<InlineCodeHighlightFactory>,\n ElementProps<'div'> {\n /** Code to highlight */\n code: string;\n\n /** Code language, `'tsx'` by default */\n language?: string;\n}\n\nexport type InlineCodeHighlightFactory = Factory<{\n props: InlineCodeHighlightProps;\n ref: HTMLElement;\n stylesNames: InlineCodeHighlightStylesNames;\n}>;\n\nconst defaultProps: Partial<InlineCodeHighlightProps> = {\n language: 'tsx',\n};\n\nexport const InlineCodeHighlight = factory<InlineCodeHighlightFactory>((_props, ref) => {\n const props = useProps('InlineCodeHighlight', defaultProps, _props);\n const { classNames, className, style, styles, unstyled, vars, code, language, ...others } = props;\n\n const getStyles = useStyles<InlineCodeHighlightFactory>({\n name: 'InlineCodeHighlight',\n props,\n classes,\n className,\n style,\n classNames,\n styles,\n unstyled,\n rootSelector: 'code',\n });\n\n const highlighted = hljs.highlight(code.trim(), { language: language! }).value;\n\n return (\n <Box\n {...getStyles('code')}\n component=\"code\"\n ref={ref}\n {...others}\n dangerouslySetInnerHTML={{ __html: highlighted }}\n />\n );\n});\n\nInlineCodeHighlight.displayName = '@mantine/core/InlineCodeHighlight';\n"],"names":["_classes","cx","themeClasses","factory","useProps","useStyles","hljs","React","Box"],"mappings":"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"}
package/cjs/index.js DELETED
@@ -1,14 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var CodeHighlightTabs = require('./CodeHighlightTabs.js');
6
- var CodeHighlight = require('./CodeHighlight.js');
7
- var InlineCodeHighlight = require('./InlineCodeHighlight.js');
8
-
9
-
10
-
11
- exports.CodeHighlightTabs = CodeHighlightTabs.CodeHighlightTabs;
12
- exports.CodeHighlight = CodeHighlight.CodeHighlight;
13
- exports.InlineCodeHighlight = InlineCodeHighlight.InlineCodeHighlight;
14
- //# sourceMappingURL=index.js.map
package/cjs/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"use-highlight.js","sources":["../src/use-highlight.ts"],"sourcesContent":["import { useState, useEffect } from 'react';\nimport hljs from 'highlight.js';\n\ninterface UseHighlightInput {\n code: string;\n language: string;\n highlightOnClient: boolean | undefined;\n}\n\nexport function useHighlight({ code, language, highlightOnClient }: UseHighlightInput) {\n const lang = hljs.getLanguage(language) ? language : 'plaintext';\n const getHighlightedCode = () => hljs.highlight(code.trim(), { language: lang }).value;\n const [highlighted, setHighlighted] = useState(!highlightOnClient);\n const [highlightedCode, setHighlightedCode] = useState(\n highlightOnClient ? code : getHighlightedCode()\n );\n\n const getCodeProps = () =>\n highlighted\n ? { dangerouslySetInnerHTML: { __html: highlightedCode } }\n : { children: code.trim() };\n\n useEffect(() => {\n if (highlightOnClient) {\n setHighlightedCode(getHighlightedCode());\n setHighlighted(true);\n }\n }, []);\n\n useEffect(() => {\n setHighlightedCode(getHighlightedCode());\n }, [code]);\n\n return getCodeProps;\n}\n"],"names":["hljs","useState","useEffect"],"mappings":";;;;;;;;;;;;AAEO,SAAS,YAAY,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,iBAAiB,EAAE,EAAE;AACpE,EAAE,MAAM,IAAI,GAAGA,aAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,QAAQ,GAAG,WAAW,CAAC;AACnE,EAAE,MAAM,kBAAkB,GAAG,MAAMA,aAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC;AACzF,EAAE,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAGC,cAAQ,CAAC,CAAC,iBAAiB,CAAC,CAAC;AACrE,EAAE,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAGA,cAAQ;AACxD,IAAI,iBAAiB,GAAG,IAAI,GAAG,kBAAkB,EAAE;AACnD,GAAG,CAAC;AACJ,EAAE,MAAM,YAAY,GAAG,MAAM,WAAW,GAAG,EAAE,uBAAuB,EAAE,EAAE,MAAM,EAAE,eAAe,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;AAChI,EAAEC,eAAS,CAAC,MAAM;AAClB,IAAI,IAAI,iBAAiB,EAAE;AAC3B,MAAM,kBAAkB,CAAC,kBAAkB,EAAE,CAAC,CAAC;AAC/C,MAAM,cAAc,CAAC,IAAI,CAAC,CAAC;AAC3B,KAAK;AACL,GAAG,EAAE,EAAE,CAAC,CAAC;AACT,EAAEA,eAAS,CAAC,MAAM;AAClB,IAAI,kBAAkB,CAAC,kBAAkB,EAAE,CAAC,CAAC;AAC7C,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;AACb,EAAE,OAAO,YAAY,CAAC;AACtB;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"CodeHighlight.module.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
@@ -1,5 +0,0 @@
1
- 'use client';
2
- var themeClasses = {"theme":"m-1f5e827e"};
3
-
4
- export default themeClasses;
5
- //# sourceMappingURL=CodeHighlight.theme.module.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CodeHighlight.theme.module.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}