@mantine/code-highlight 7.0.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 (70) hide show
  1. package/README.md +21 -0
  2. package/cjs/CodeHighlight.js +126 -0
  3. package/cjs/CodeHighlight.js.map +1 -0
  4. package/cjs/CodeHighlight.module.css.js +8 -0
  5. package/cjs/CodeHighlight.module.css.js.map +1 -0
  6. package/cjs/CodeHighlight.theme.module.css.js +8 -0
  7. package/cjs/CodeHighlight.theme.module.css.js.map +1 -0
  8. package/cjs/CodeHighlightTabs.js +196 -0
  9. package/cjs/CodeHighlightTabs.js.map +1 -0
  10. package/cjs/CopyIcon.js +70 -0
  11. package/cjs/CopyIcon.js.map +1 -0
  12. package/cjs/ExpandIcon.js +83 -0
  13. package/cjs/ExpandIcon.js.map +1 -0
  14. package/cjs/FileIcon.js +22 -0
  15. package/cjs/FileIcon.js.map +1 -0
  16. package/cjs/InlineCodeHighlight.js +78 -0
  17. package/cjs/InlineCodeHighlight.js.map +1 -0
  18. package/cjs/index.css +326 -0
  19. package/cjs/index.js +14 -0
  20. package/cjs/index.js.map +1 -0
  21. package/cjs/use-highlight.js +27 -0
  22. package/cjs/use-highlight.js.map +1 -0
  23. package/esm/CodeHighlight.js +117 -0
  24. package/esm/CodeHighlight.js.map +1 -0
  25. package/esm/CodeHighlight.module.css.js +4 -0
  26. package/esm/CodeHighlight.module.css.js.map +1 -0
  27. package/esm/CodeHighlight.theme.module.css.js +4 -0
  28. package/esm/CodeHighlight.theme.module.css.js.map +1 -0
  29. package/esm/CodeHighlightTabs.js +186 -0
  30. package/esm/CodeHighlightTabs.js.map +1 -0
  31. package/esm/CopyIcon.js +62 -0
  32. package/esm/CopyIcon.js.map +1 -0
  33. package/esm/ExpandIcon.js +75 -0
  34. package/esm/ExpandIcon.js.map +1 -0
  35. package/esm/FileIcon.js +14 -0
  36. package/esm/FileIcon.js.map +1 -0
  37. package/esm/InlineCodeHighlight.js +68 -0
  38. package/esm/InlineCodeHighlight.js.map +1 -0
  39. package/esm/index.css +326 -0
  40. package/esm/index.js +4 -0
  41. package/esm/index.js.map +1 -0
  42. package/esm/use-highlight.js +19 -0
  43. package/esm/use-highlight.js.map +1 -0
  44. package/lib/CodeHighlight.d.ts +29 -0
  45. package/lib/CodeHighlightTabs.d.ts +55 -0
  46. package/lib/CopyIcon.d.ts +9 -0
  47. package/lib/ExpandIcon.d.ts +6 -0
  48. package/lib/FileIcon.d.ts +8 -0
  49. package/lib/InlineCodeHighlight.d.ts +19 -0
  50. package/lib/index.d.ts +6 -0
  51. package/lib/use-highlight.d.ts +15 -0
  52. package/package.json +42 -0
  53. package/src/CodeHighlight.module.css +153 -0
  54. package/src/CodeHighlight.story.tsx +218 -0
  55. package/src/CodeHighlight.test.tsx +30 -0
  56. package/src/CodeHighlight.theme.module.css +95 -0
  57. package/src/CodeHighlight.tsx +123 -0
  58. package/src/CodeHighlightTabs.test.tsx +39 -0
  59. package/src/CodeHighlightTabs.tsx +252 -0
  60. package/src/CopyIcon.tsx +37 -0
  61. package/src/ExpandIcon.tsx +42 -0
  62. package/src/FileIcon.tsx +19 -0
  63. package/src/InlineCodeHighlight.test.tsx +25 -0
  64. package/src/InlineCodeHighlight.tsx +72 -0
  65. package/src/index.ts +23 -0
  66. package/src/use-highlight.ts +30 -0
  67. package/styles.css +326 -0
  68. package/tsconfig.build.json +23 -0
  69. package/tsconfig.build.tsbuildinfo +1 -0
  70. package/tsconfig.json +23 -0
@@ -0,0 +1,78 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var cx = require('clsx');
7
+ var core = require('@mantine/core');
8
+ var hljs = require('highlight.js');
9
+ var CodeHighlight_module = require('./CodeHighlight.module.css.js');
10
+ var CodeHighlight_theme_module = require('./CodeHighlight.theme.module.css.js');
11
+
12
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e['default'] : e; }
13
+
14
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
15
+ var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
16
+ var hljs__default = /*#__PURE__*/_interopDefaultLegacy(hljs);
17
+
18
+ var __defProp = Object.defineProperty;
19
+ var __defProps = Object.defineProperties;
20
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
21
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
22
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
23
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
24
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
25
+ var __spreadValues = (a, b) => {
26
+ for (var prop in b || (b = {}))
27
+ if (__hasOwnProp.call(b, prop))
28
+ __defNormalProp(a, prop, b[prop]);
29
+ if (__getOwnPropSymbols)
30
+ for (var prop of __getOwnPropSymbols(b)) {
31
+ if (__propIsEnum.call(b, prop))
32
+ __defNormalProp(a, prop, b[prop]);
33
+ }
34
+ return a;
35
+ };
36
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
37
+ var __objRest = (source, exclude) => {
38
+ var target = {};
39
+ for (var prop in source)
40
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
41
+ target[prop] = source[prop];
42
+ if (source != null && __getOwnPropSymbols)
43
+ for (var prop of __getOwnPropSymbols(source)) {
44
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
45
+ target[prop] = source[prop];
46
+ }
47
+ return target;
48
+ };
49
+ const classes = __spreadProps(__spreadValues({}, CodeHighlight_module['default']), { code: cx__default(CodeHighlight_module['default'].code, CodeHighlight_theme_module['default'].theme) });
50
+ const defaultProps = {
51
+ language: "tsx"
52
+ };
53
+ const InlineCodeHighlight = core.factory((_props, ref) => {
54
+ const props = core.useProps("InlineCodeHighlight", defaultProps, _props);
55
+ const _a = props, { classNames, className, style, styles, unstyled, vars, code, language } = _a, others = __objRest(_a, ["classNames", "className", "style", "styles", "unstyled", "vars", "code", "language"]);
56
+ const getStyles = core.useStyles({
57
+ name: "InlineCodeHighlight",
58
+ props,
59
+ classes,
60
+ className,
61
+ style,
62
+ classNames,
63
+ styles,
64
+ unstyled,
65
+ rootSelector: "code"
66
+ });
67
+ const highlighted = hljs__default.highlight(code.trim(), { language }).value;
68
+ return /* @__PURE__ */ React__default.createElement(core.Box, __spreadProps(__spreadValues(__spreadProps(__spreadValues({}, getStyles("code")), {
69
+ component: "code",
70
+ ref
71
+ }), others), {
72
+ dangerouslySetInnerHTML: { __html: highlighted }
73
+ }));
74
+ });
75
+ InlineCodeHighlight.displayName = "@mantine/core/InlineCodeHighlight";
76
+
77
+ exports.InlineCodeHighlight = InlineCodeHighlight;
78
+ //# sourceMappingURL=InlineCodeHighlight.js.map
@@ -0,0 +1 @@
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';\nexport type InlineCodeHighlightVariant = string;\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.css ADDED
@@ -0,0 +1,326 @@
1
+ .mantine-XIBJZDt {
2
+ display: inline-block;
3
+ padding: 0.0625rem 0.1875rem;
4
+ font-size: 0.8125rem;
5
+ border-radius: var(--mantine-radius-xs);
6
+ line-height: var(--_code-line-height, var(--mantine-line-height));
7
+ font-family: var(--mantine-font-family-monospace);
8
+ }
9
+
10
+ .mantine-RDvBcjB {
11
+ display: block;
12
+ padding: var(--mantine-spacing-xs) var(--mantine-spacing-md);
13
+ margin: 0;
14
+ --_code-line-height: 1.7;
15
+ }
16
+
17
+ .mantine-cmEtjrV {
18
+ display: flex;
19
+ align-items: flex-start;
20
+ justify-content: space-between;
21
+ }
22
+
23
+ .mantine-059sM-t {
24
+ display: flex;
25
+ margin-top: 0.4375rem;
26
+ margin-right: 0.4375rem;
27
+ }
28
+
29
+ .mantine-tB-P5PD,
30
+ .mantine-NTm-nGn {
31
+ background-color: transparent;
32
+ opacity: 0.8;
33
+ margin: 0;
34
+ }
35
+
36
+ @media (hover: hover) {
37
+
38
+ .mantine-tB-P5PD:hover, .mantine-NTm-nGn:hover {
39
+ opacity: 1;
40
+ }
41
+ }
42
+
43
+ @media (hover: none) {
44
+
45
+ .mantine-tB-P5PD:active, .mantine-NTm-nGn:active {
46
+ opacity: 1;
47
+ }
48
+ }
49
+
50
+ @media (max-width: 40em) {
51
+
52
+ .mantine-tB-P5PD,
53
+ .mantine-NTm-nGn {
54
+ display: none
55
+ }
56
+ }
57
+
58
+ .mantine-tB-P5PD {
59
+ position: absolute;
60
+ top: 0.3125rem;
61
+ right: 0.3125rem;
62
+ z-index: 1;
63
+ }
64
+
65
+ .mantine-PBrPXnu {
66
+ display: flex;
67
+ align-items: center;
68
+ justify-content: center;
69
+ font-size: var(--mantine-font-size-xs);
70
+ gap: 0.4375rem;
71
+ padding: 0.4375rem 0.75rem;
72
+ font-family: var(--mantine-font-family-monospace);
73
+ font-weight: 700;
74
+ line-height: 1;
75
+ user-select: none;
76
+ cursor: var(--_file-cursor);
77
+ border: 0.0625rem solid var(--_file-bd);
78
+ border-top: 0;
79
+ border-left: 0;
80
+ color: var(--_file-color);
81
+ opacity: var(--_file-opacity);
82
+ background-color: var(--_file-bg);
83
+ }
84
+
85
+ @media (hover: hover) {
86
+
87
+ .mantine-PBrPXnu:hover {
88
+ --_file-opacity: 1;
89
+ }
90
+ }
91
+
92
+ @media (hover: none) {
93
+
94
+ .mantine-PBrPXnu:active {
95
+ --_file-opacity: 1;
96
+ }
97
+ }
98
+
99
+ .mantine-PBrPXnu:last-of-type {
100
+ border-bottom-right-radius: var(--mantine-radius-sm);
101
+ }
102
+
103
+ .mantine-PBrPXnu:only-child {
104
+ --_file-cursor: default;
105
+ }
106
+
107
+ .mantine-PBrPXnu[data-active] {
108
+ --_file-opacity: 1;
109
+ --_file-color: var(--_file-active-color) !important;
110
+ --_file-bg: var(--_file-active-bg);
111
+ }
112
+
113
+ .mantine-PBrPXnu {
114
+
115
+ --_file-opacity: 0.8;
116
+ --_file-cursor: pointer;
117
+ }
118
+
119
+ [data-mantine-color-scheme='light'] .mantine-PBrPXnu {
120
+ --_file-color: var(--mantine-color-gray-8);
121
+ --_file-bd: var(--mantine-color-gray-2);
122
+ --_file-active-bg: var(--mantine-color-white);
123
+ --_file-active-color: var(--mantine-color-black);
124
+ }
125
+
126
+ @media (prefers-color-scheme: light) {
127
+
128
+ .mantine-PBrPXnu {
129
+ --_file-color: var(--mantine-color-gray-8);
130
+ --_file-bd: var(--mantine-color-gray-2);
131
+ --_file-active-bg: var(--mantine-color-white);
132
+ --_file-active-color: var(--mantine-color-black);
133
+ }
134
+ }
135
+
136
+ [data-mantine-color-scheme='dark'] .mantine-PBrPXnu {
137
+ --_file-color: var(--mantine-color-dark-0);
138
+ --_file-bd: var(--mantine-color-dark-4);
139
+ --_file-active-bg: var(--mantine-color-dark-6);
140
+ --_file-active-color: var(--mantine-color-white);
141
+ }
142
+
143
+ @media (prefers-color-scheme: dark) {
144
+
145
+ .mantine-PBrPXnu {
146
+ --_file-color: var(--mantine-color-dark-0);
147
+ --_file-bd: var(--mantine-color-dark-4);
148
+ --_file-active-bg: var(--mantine-color-dark-6);
149
+ --_file-active-color: var(--mantine-color-white);
150
+ }
151
+ }
152
+
153
+ .mantine-IvOddiX {
154
+ display: flex;
155
+ }
156
+
157
+ .mantine-YfYyOiA {
158
+ max-height: var(--ch-max-collapsed-height);
159
+ overflow: hidden;
160
+ position: relative;
161
+ }
162
+
163
+ .mantine-YfYyOiA::before {
164
+ content: '';
165
+ position: absolute;
166
+ inset: 0;
167
+ pointer-events: none;
168
+ background-image: linear-gradient(0deg, var(--_background) 16%, rgba(0, 0, 0, 0) 100%);
169
+ border-radius: calc(var(--mantine-radius-md) - 0.0625rem);
170
+ }
171
+
172
+ .mantine-YfYyOiA[data-expanded] {
173
+ max-height: none;
174
+ }
175
+
176
+ .mantine-YfYyOiA[data-expanded]::before {
177
+ display: none;
178
+ }
179
+
180
+ .mantine-haNyFRC {
181
+ position: absolute;
182
+ bottom: 0;
183
+ left: 50%;
184
+ transform: translateX(-50%);
185
+ font-size: var(--mantine-font-size-sm);
186
+ color: var(--mantine-color-anchor);
187
+ width: 100%;
188
+ text-align: center;
189
+ padding-top: var(--mantine-spacing-xs);
190
+ padding-bottom: var(--mantine-spacing-xs);
191
+ }
192
+
193
+ .mantine-haNyFRC[data-hidden] {
194
+ display: none;
195
+ }
196
+
197
+ .mantine-k6OJW8l {
198
+ margin-top: 0;
199
+ position: relative;
200
+ }
201
+
202
+ .mantine-h-DP-Yw {
203
+ color: var(--_color);
204
+ background: var(--_background);
205
+ }
206
+
207
+ [data-mantine-color-scheme='light'] .mantine-h-DP-Yw {
208
+ --_color: var(--mantine-color-gray-7);
209
+ --_background: var(--mantine-color-gray-0);
210
+ --code-comment-color: var(--mantine-color-gray-6);
211
+ --code-keyword-color: var(--mantine-color-violet-8);
212
+ --code-tag-color: var(--mantine-color-red-9);
213
+ --code-literal-color: var(--mantine-color-blue-6);
214
+ --code-string-color: var(--mantine-color-blue-9);
215
+ --code-variable-color: var(--mantine-color-lime-9);
216
+ --code-class-color: var(--mantine-color-orange-9);
217
+ }
218
+
219
+ @media (prefers-color-scheme: light) {
220
+
221
+ .mantine-h-DP-Yw {
222
+ --_color: var(--mantine-color-gray-7);
223
+ --_background: var(--mantine-color-gray-0);
224
+ --code-comment-color: var(--mantine-color-gray-6);
225
+ --code-keyword-color: var(--mantine-color-violet-8);
226
+ --code-tag-color: var(--mantine-color-red-9);
227
+ --code-literal-color: var(--mantine-color-blue-6);
228
+ --code-string-color: var(--mantine-color-blue-9);
229
+ --code-variable-color: var(--mantine-color-lime-9);
230
+ --code-class-color: var(--mantine-color-orange-9);
231
+ }
232
+ }
233
+
234
+ [data-mantine-color-scheme='dark'] .mantine-h-DP-Yw {
235
+ --_color: var(--mantine-color-dark-1);
236
+ --_background: var(--mantine-color-dark-8);
237
+ --code-comment-color: var(--mantine-color-dark-3);
238
+ --code-keyword-color: var(--mantine-color-violet-3);
239
+ --code-tag-color: var(--mantine-color-yellow-4);
240
+ --code-literal-color: var(--mantine-color-blue-4);
241
+ --code-string-color: var(--mantine-color-green-6);
242
+ --code-variable-color: var(--mantine-color-blue-2);
243
+ --code-class-color: var(--mantine-color-orange-5);
244
+ }
245
+
246
+ @media (prefers-color-scheme: dark) {
247
+
248
+ .mantine-h-DP-Yw {
249
+ --_color: var(--mantine-color-dark-1);
250
+ --_background: var(--mantine-color-dark-8);
251
+ --code-comment-color: var(--mantine-color-dark-3);
252
+ --code-keyword-color: var(--mantine-color-violet-3);
253
+ --code-tag-color: var(--mantine-color-yellow-4);
254
+ --code-literal-color: var(--mantine-color-blue-4);
255
+ --code-string-color: var(--mantine-color-green-6);
256
+ --code-variable-color: var(--mantine-color-blue-2);
257
+ --code-class-color: var(--mantine-color-orange-5);
258
+ }
259
+ }
260
+
261
+ .mantine-h-DP-Yw .hljs-comment,
262
+ .mantine-h-DP-Yw .hljs-quote {
263
+ font-style: italic;
264
+ color: var(--code-comment-color);
265
+ }
266
+
267
+ .mantine-h-DP-Yw .hljs-doctag,
268
+ .mantine-h-DP-Yw .hljs-formula,
269
+ .mantine-h-DP-Yw .hljs-keyword {
270
+ color: var(--code-keyword-color);
271
+ }
272
+
273
+ .mantine-h-DP-Yw .hljs-deletion,
274
+ .mantine-h-DP-Yw .hljs-name,
275
+ .mantine-h-DP-Yw .hljs-section,
276
+ .mantine-h-DP-Yw .hljs-selector-tag,
277
+ .mantine-h-DP-Yw .hljs-subst {
278
+ color: var(--code-tag-color);
279
+ }
280
+
281
+ .mantine-h-DP-Yw .hljs-literal {
282
+ color: var(--code-literal-color);
283
+ }
284
+
285
+ .mantine-h-DP-Yw .hljs-addition,
286
+ .mantine-h-DP-Yw .hljs-attribute,
287
+ .mantine-h-DP-Yw .hljs-meta .hljs-string,
288
+ .mantine-h-DP-Yw .hljs-regexp,
289
+ .mantine-h-DP-Yw .hljs-string {
290
+ color: var(--code-string-color);
291
+ }
292
+
293
+ .mantine-h-DP-Yw .hljs-attr,
294
+ .mantine-h-DP-Yw .hljs-number,
295
+ .mantine-h-DP-Yw .hljs-selector-attr,
296
+ .mantine-h-DP-Yw .hljs-selector-class,
297
+ .mantine-h-DP-Yw .hljs-selector-pseudo,
298
+ .mantine-h-DP-Yw .hljs-template-variable,
299
+ .mantine-h-DP-Yw .hljs-type,
300
+ .mantine-h-DP-Yw .hljs-variable {
301
+ color: var(--code-variable-color);
302
+ }
303
+
304
+ .mantine-h-DP-Yw .hljs-bullet,
305
+ .mantine-h-DP-Yw .hljs-link,
306
+ .mantine-h-DP-Yw .hljs-meta,
307
+ .mantine-h-DP-Yw .hljs-selector-id,
308
+ .mantine-h-DP-Yw .hljs-symbol,
309
+ .mantine-h-DP-Yw .hljs-title,
310
+ .mantine-h-DP-Yw .hljs-built_in,
311
+ .mantine-h-DP-Yw .hljs-class .hljs-title,
312
+ .mantine-h-DP-Yw .hljs-title.class_ {
313
+ color: var(--code-class-color);
314
+ }
315
+
316
+ .mantine-h-DP-Yw .hljs-emphasis {
317
+ font-style: italic;
318
+ }
319
+
320
+ .mantine-h-DP-Yw .hljs-strong {
321
+ font-weight: 700;
322
+ }
323
+
324
+ .mantine-h-DP-Yw .hljs-link {
325
+ text-decoration: underline;
326
+ }
package/cjs/index.js ADDED
@@ -0,0 +1,14 @@
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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
@@ -0,0 +1,27 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var hljs = require('highlight.js');
7
+
8
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e['default'] : e; }
9
+
10
+ var hljs__default = /*#__PURE__*/_interopDefaultLegacy(hljs);
11
+
12
+ function useHighlight({ code, language, highlightOnClient }) {
13
+ const getHighlightedCode = () => hljs__default.highlight(code.trim(), { language }).value;
14
+ const [highlighted, setHighlighted] = React.useState(!highlightOnClient);
15
+ const [highlightedCode, setHighlightedCode] = React.useState(highlightOnClient ? code : getHighlightedCode());
16
+ const getCodeProps = () => highlighted ? { dangerouslySetInnerHTML: { __html: highlightedCode } } : { children: code.trim() };
17
+ React.useEffect(() => {
18
+ if (highlightOnClient) {
19
+ setHighlightedCode(getHighlightedCode());
20
+ setHighlighted(true);
21
+ }
22
+ }, []);
23
+ return getCodeProps;
24
+ }
25
+
26
+ exports.useHighlight = useHighlight;
27
+ //# sourceMappingURL=use-highlight.js.map
@@ -0,0 +1 @@
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 getHighlightedCode = () => hljs.highlight(code.trim(), { language: language! }).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 return getCodeProps;\n}\n"],"names":["hljs","useState","useEffect"],"mappings":";;;;;;;;;;;AAEO,SAAS,YAAY,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,iBAAiB,EAAE,EAAE;AACpE,EAAE,MAAM,kBAAkB,GAAG,MAAMA,aAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC;AACnF,EAAE,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAGC,cAAQ,CAAC,CAAC,iBAAiB,CAAC,CAAC;AACrE,EAAE,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAGA,cAAQ,CAAC,iBAAiB,GAAG,IAAI,GAAG,kBAAkB,EAAE,CAAC,CAAC;AAC1G,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,EAAE,OAAO,YAAY,CAAC;AACtB;;;;"}
@@ -0,0 +1,117 @@
1
+ import React from 'react';
2
+ import cx from 'clsx';
3
+ import { factory, useProps, useStyles, Box, CopyButton, Tooltip, ActionIcon, ScrollArea } from '@mantine/core';
4
+ import { useHighlight } from './use-highlight.js';
5
+ import { CopyIcon } from './CopyIcon.js';
6
+ import _classes from './CodeHighlight.module.css.js';
7
+ import themeClasses from './CodeHighlight.theme.module.css.js';
8
+
9
+ var __defProp = Object.defineProperty;
10
+ var __defProps = Object.defineProperties;
11
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
12
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
13
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
14
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
15
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
16
+ var __spreadValues = (a, b) => {
17
+ for (var prop in b || (b = {}))
18
+ if (__hasOwnProp.call(b, prop))
19
+ __defNormalProp(a, prop, b[prop]);
20
+ if (__getOwnPropSymbols)
21
+ for (var prop of __getOwnPropSymbols(b)) {
22
+ if (__propIsEnum.call(b, prop))
23
+ __defNormalProp(a, prop, b[prop]);
24
+ }
25
+ return a;
26
+ };
27
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
28
+ var __objRest = (source, exclude) => {
29
+ var target = {};
30
+ for (var prop in source)
31
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
32
+ target[prop] = source[prop];
33
+ if (source != null && __getOwnPropSymbols)
34
+ for (var prop of __getOwnPropSymbols(source)) {
35
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
36
+ target[prop] = source[prop];
37
+ }
38
+ return target;
39
+ };
40
+ const classes = __spreadProps(__spreadValues({}, _classes), { root: cx(_classes.root, themeClasses.theme) });
41
+ const defaultProps = {
42
+ copyLabel: "Copy code",
43
+ copiedLabel: "Copied",
44
+ language: "tsx",
45
+ withCopyButton: true
46
+ };
47
+ const CodeHighlight = factory((_props, ref) => {
48
+ const props = useProps("CodeHighlight", defaultProps, _props);
49
+ const _a = props, {
50
+ classNames,
51
+ className,
52
+ style,
53
+ styles,
54
+ unstyled,
55
+ vars,
56
+ children,
57
+ code,
58
+ copiedLabel,
59
+ copyLabel,
60
+ language,
61
+ withCopyButton,
62
+ highlightOnClient
63
+ } = _a, others = __objRest(_a, [
64
+ "classNames",
65
+ "className",
66
+ "style",
67
+ "styles",
68
+ "unstyled",
69
+ "vars",
70
+ "children",
71
+ "code",
72
+ "copiedLabel",
73
+ "copyLabel",
74
+ "language",
75
+ "withCopyButton",
76
+ "highlightOnClient"
77
+ ]);
78
+ const getStyles = useStyles({
79
+ name: "CodeHighlight",
80
+ props,
81
+ classes,
82
+ className,
83
+ style,
84
+ classNames,
85
+ styles,
86
+ unstyled
87
+ });
88
+ const getCodeProps = useHighlight({
89
+ code,
90
+ language,
91
+ highlightOnClient
92
+ });
93
+ return /* @__PURE__ */ React.createElement(Box, __spreadProps(__spreadValues(__spreadProps(__spreadValues({}, getStyles("root")), {
94
+ ref
95
+ }), others), {
96
+ dir: "ltr"
97
+ }), withCopyButton && /* @__PURE__ */ React.createElement(CopyButton, {
98
+ value: code.trim()
99
+ }, ({ copied, copy }) => /* @__PURE__ */ React.createElement(Tooltip, {
100
+ label: copied ? copiedLabel : copyLabel,
101
+ fz: "sm",
102
+ position: "left"
103
+ }, /* @__PURE__ */ React.createElement(ActionIcon, __spreadValues({
104
+ onClick: copy,
105
+ variant: "none"
106
+ }, getStyles("copy")), /* @__PURE__ */ React.createElement(CopyIcon, {
107
+ copied
108
+ })))), /* @__PURE__ */ React.createElement(ScrollArea, {
109
+ type: "auto",
110
+ dir: "ltr",
111
+ offsetScrollbars: false
112
+ }, /* @__PURE__ */ React.createElement("pre", __spreadValues({}, getStyles("pre")), /* @__PURE__ */ React.createElement("code", __spreadValues(__spreadValues({}, getStyles("code")), getCodeProps())))));
113
+ });
114
+ CodeHighlight.displayName = "@mantine/core/CodeHighlight";
115
+
116
+ export { CodeHighlight };
117
+ //# sourceMappingURL=CodeHighlight.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CodeHighlight.js","sources":["../src/CodeHighlight.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 CopyButton,\n Tooltip,\n ActionIcon,\n ScrollArea,\n Factory,\n} from '@mantine/core';\nimport { useHighlight } from './use-highlight';\nimport { CopyIcon } from './CopyIcon';\nimport _classes from './CodeHighlight.module.css';\nimport themeClasses from './CodeHighlight.theme.module.css';\n\nconst classes = { ..._classes, root: cx(_classes.root, themeClasses.theme) };\n\nexport type CodeHighlightStylesNames = 'root' | 'code' | 'pre' | 'copy';\nexport type CodeHighlightVariant = string;\n\nexport interface CodeHighlightProps\n extends BoxProps,\n StylesApiProps<CodeHighlightFactory>,\n ElementProps<'div'> {\n /** Code to highlight */\n code: string;\n\n /** Code language, `'tsx'` by default */\n language?: string;\n\n /** Determines whether copy button should be displayed, `true` by default */\n withCopyButton?: boolean;\n\n /** Copy tooltip label, `'Copy code'` by default */\n copyLabel?: string;\n\n /** Copied tooltip label, `'Copied'` by default */\n copiedLabel?: string;\n\n /** Determines whether code should be highlighted only after component is mounted to the dom (disables code highlight on server), `false` by default */\n highlightOnClient?: boolean;\n}\n\nexport type CodeHighlightFactory = Factory<{\n props: CodeHighlightProps;\n ref: HTMLDivElement;\n stylesNames: CodeHighlightStylesNames;\n variant: CodeHighlightVariant;\n}>;\n\nconst defaultProps: Partial<CodeHighlightProps> = {\n copyLabel: 'Copy code',\n copiedLabel: 'Copied',\n language: 'tsx',\n withCopyButton: true,\n};\n\nexport const CodeHighlight = factory<CodeHighlightFactory>((_props, ref) => {\n const props = useProps('CodeHighlight', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n children,\n code,\n copiedLabel,\n copyLabel,\n language,\n withCopyButton,\n highlightOnClient,\n ...others\n } = props;\n\n const getStyles = useStyles<CodeHighlightFactory>({\n name: 'CodeHighlight',\n props,\n classes,\n className,\n style,\n classNames,\n styles,\n unstyled,\n });\n\n const getCodeProps = useHighlight({\n code,\n language: language!,\n highlightOnClient,\n });\n\n return (\n <Box {...getStyles('root')} ref={ref} {...others} dir=\"ltr\">\n {withCopyButton && (\n <CopyButton value={code.trim()}>\n {({ copied, copy }) => (\n <Tooltip label={copied ? copiedLabel : copyLabel} fz=\"sm\" position=\"left\">\n <ActionIcon onClick={copy} variant=\"none\" {...getStyles('copy')}>\n <CopyIcon copied={copied} />\n </ActionIcon>\n </Tooltip>\n )}\n </CopyButton>\n )}\n\n <ScrollArea type=\"auto\" dir=\"ltr\" offsetScrollbars={false}>\n <pre {...getStyles('pre')}>\n <code {...getStyles('code')} {...getCodeProps()} />\n </pre>\n </ScrollArea>\n </Box>\n );\n});\n\nCodeHighlight.displayName = '@mantine/core/CodeHighlight';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ var _classes = {"code":"mantine-XIBJZDt","pre":"mantine-RDvBcjB","header":"mantine-cmEtjrV","controls":"mantine-059sM-t","copy":"mantine-tB-P5PD","control":"mantine-NTm-nGn","file":"mantine-PBrPXnu","files":"mantine-IvOddiX","codeWrapper":"mantine-YfYyOiA","showCodeButton":"mantine-haNyFRC","root":"mantine-k6OJW8l"};
2
+
3
+ export default _classes;
4
+ //# sourceMappingURL=CodeHighlight.module.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CodeHighlight.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1,4 @@
1
+ var themeClasses = {"theme":"mantine-h-DP-Yw"};
2
+
3
+ export default themeClasses;
4
+ //# sourceMappingURL=CodeHighlight.theme.module.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CodeHighlight.theme.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}