@mantine/code-highlight 9.0.0-alpha.4 → 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 +7 -7
  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,50 +1,42 @@
1
- 'use strict';
2
-
3
- var shikiThemes = require('./shiki-themes.cjs');
4
-
1
+ const require_shiki_themes = require("./shiki-themes.cjs");
2
+ //#region packages/@mantine/code-highlight/src/CodeHighlightProvider/adapters/shiki-adapter.ts
5
3
  function stripElement(openTag, data) {
6
- const openIndex = data.indexOf(`<${openTag}`);
7
- let closeIndex = openIndex + openTag.length;
8
- for (let i = openIndex; i < data.length; i++) {
9
- if (data[i] === ">") {
10
- closeIndex = i;
11
- break;
12
- }
13
- }
14
- const striped = data.slice(0, openIndex) + data.slice(closeIndex + 1);
15
- return striped.replace(`</${openTag}>`, "");
4
+ const openIndex = data.indexOf(`<${openTag}`);
5
+ let closeIndex = openIndex + openTag.length;
6
+ for (let i = openIndex; i < data.length; i++) if (data[i] === ">") {
7
+ closeIndex = i;
8
+ break;
9
+ }
10
+ return (data.slice(0, openIndex) + data.slice(closeIndex + 1)).replace(`</${openTag}>`, "");
16
11
  }
17
12
  function stripShikiCodeBlocks(data) {
18
- return stripElement("code", stripElement("pre", data));
13
+ return stripElement("code", stripElement("pre", data));
19
14
  }
20
15
  const createShikiAdapter = (loadShiki, { forceColorScheme } = {}) => {
21
- return {
22
- loadContext: loadShiki,
23
- getHighlighter: (ctx) => {
24
- if (!ctx) {
25
- return ({ code }) => ({ highlightedCode: code, isHighlighted: false });
26
- }
27
- return ({ code, language, colorScheme }) => {
28
- let _colorScheme = colorScheme;
29
- if (colorScheme === "light") {
30
- _colorScheme = shikiThemes.light;
31
- } else if (colorScheme === "dark") {
32
- _colorScheme = shikiThemes.dark;
33
- }
34
- return {
35
- isHighlighted: true,
36
- highlightedCode: stripShikiCodeBlocks(
37
- ctx.codeToHtml(code, {
38
- lang: language,
39
- theme: forceColorScheme || _colorScheme
40
- })
41
- )
42
- };
43
- };
44
- }
45
- };
16
+ return {
17
+ loadContext: loadShiki,
18
+ getHighlighter: (ctx) => {
19
+ if (!ctx) return ({ code }) => ({
20
+ highlightedCode: code,
21
+ isHighlighted: false
22
+ });
23
+ return ({ code, language, colorScheme }) => {
24
+ let _colorScheme = colorScheme;
25
+ if (colorScheme === "light") _colorScheme = require_shiki_themes.light;
26
+ else if (colorScheme === "dark") _colorScheme = require_shiki_themes.dark;
27
+ return {
28
+ isHighlighted: true,
29
+ highlightedCode: stripShikiCodeBlocks(ctx.codeToHtml(code, {
30
+ lang: language,
31
+ theme: forceColorScheme || _colorScheme
32
+ }))
33
+ };
34
+ };
35
+ }
36
+ };
46
37
  };
47
-
38
+ //#endregion
48
39
  exports.createShikiAdapter = createShikiAdapter;
49
40
  exports.stripShikiCodeBlocks = stripShikiCodeBlocks;
50
- //# sourceMappingURL=shiki-adapter.cjs.map
41
+
42
+ //# sourceMappingURL=shiki-adapter.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"shiki-adapter.cjs","sources":["../../../src/CodeHighlightProvider/adapters/shiki-adapter.ts"],"sourcesContent":["import type { CodeHighlightAdapter } from '../CodeHighlightProvider';\nimport { dark, light } from './shiki-themes';\n\nfunction stripElement(openTag: string, data: string) {\n const openIndex = data.indexOf(`<${openTag}`);\n let closeIndex = openIndex + openTag.length;\n\n for (let i = openIndex; i < data.length; i++) {\n if (data[i] === '>') {\n closeIndex = i;\n break;\n }\n }\n\n const striped = data.slice(0, openIndex) + data.slice(closeIndex + 1);\n return striped.replace(`</${openTag}>`, '');\n}\n\nexport function stripShikiCodeBlocks(data: string) {\n return stripElement('code', stripElement('pre', data));\n}\n\ninterface CreateShikiAdapterOptions {\n forceColorScheme?: 'dark' | 'light' | (string & {});\n}\n\nexport const createShikiAdapter = (\n loadShiki: () => Promise<any>,\n { forceColorScheme }: CreateShikiAdapterOptions = {}\n): CodeHighlightAdapter => {\n return {\n loadContext: loadShiki,\n getHighlighter: (ctx) => {\n if (!ctx) {\n return ({ code }) => ({ highlightedCode: code, isHighlighted: false });\n }\n\n return ({ code, language, colorScheme }) => {\n let _colorScheme: any = colorScheme;\n\n if (colorScheme === 'light') {\n _colorScheme = light;\n } else if (colorScheme === 'dark') {\n _colorScheme = dark;\n }\n\n return {\n isHighlighted: true,\n highlightedCode: stripShikiCodeBlocks(\n ctx.codeToHtml(code, {\n lang: language,\n theme: forceColorScheme || _colorScheme,\n })\n ),\n };\n };\n },\n };\n};\n"],"names":["light","dark"],"mappings":";;;;AAGA,SAAS,YAAA,CAAa,SAAiB,IAAA,EAAc;AACnD,EAAA,MAAM,SAAA,GAAY,IAAA,CAAK,OAAA,CAAQ,CAAA,CAAA,EAAI,OAAO,CAAA,CAAE,CAAA;AAC5C,EAAA,IAAI,UAAA,GAAa,YAAY,OAAA,CAAQ,MAAA;AAErC,EAAA,KAAA,IAAS,CAAA,GAAI,SAAA,EAAW,CAAA,GAAI,IAAA,CAAK,QAAQ,CAAA,EAAA,EAAK;AAC5C,IAAA,IAAI,IAAA,CAAK,CAAC,CAAA,KAAM,GAAA,EAAK;AACnB,MAAA,UAAA,GAAa,CAAA;AACb,MAAA;AAAA,IACF;AAAA,EACF;AAEA,EAAA,MAAM,OAAA,GAAU,KAAK,KAAA,CAAM,CAAA,EAAG,SAAS,CAAA,GAAI,IAAA,CAAK,KAAA,CAAM,UAAA,GAAa,CAAC,CAAA;AACpE,EAAA,OAAO,OAAA,CAAQ,OAAA,CAAQ,CAAA,EAAA,EAAK,OAAO,KAAK,EAAE,CAAA;AAC5C;AAEO,SAAS,qBAAqB,IAAA,EAAc;AACjD,EAAA,OAAO,YAAA,CAAa,MAAA,EAAQ,YAAA,CAAa,KAAA,EAAO,IAAI,CAAC,CAAA;AACvD;AAMO,MAAM,qBAAqB,CAChC,SAAA,EACA,EAAE,gBAAA,EAAiB,GAA+B,EAAC,KAC1B;AACzB,EAAA,OAAO;AAAA,IACL,WAAA,EAAa,SAAA;AAAA,IACb,cAAA,EAAgB,CAAC,GAAA,KAAQ;AACvB,MAAA,IAAI,CAAC,GAAA,EAAK;AACR,QAAA,OAAO,CAAC,EAAE,IAAA,EAAK,MAAO,EAAE,eAAA,EAAiB,IAAA,EAAM,eAAe,KAAA,EAAM,CAAA;AAAA,MACtE;AAEA,MAAA,OAAO,CAAC,EAAE,IAAA,EAAM,QAAA,EAAU,aAAY,KAAM;AAC1C,QAAA,IAAI,YAAA,GAAoB,WAAA;AAExB,QAAA,IAAI,gBAAgB,OAAA,EAAS;AAC3B,UAAA,YAAA,GAAeA,iBAAA;AAAA,QACjB,CAAA,MAAA,IAAW,gBAAgB,MAAA,EAAQ;AACjC,UAAA,YAAA,GAAeC,gBAAA;AAAA,QACjB;AAEA,QAAA,OAAO;AAAA,UACL,aAAA,EAAe,IAAA;AAAA,UACf,eAAA,EAAiB,oBAAA;AAAA,YACf,GAAA,CAAI,WAAW,IAAA,EAAM;AAAA,cACnB,IAAA,EAAM,QAAA;AAAA,cACN,OAAO,gBAAA,IAAoB;AAAA,aAC5B;AAAA;AACH,SACF;AAAA,MACF,CAAA;AAAA,IACF;AAAA,GACF;AACF;;;;;"}
1
+ {"version":3,"file":"shiki-adapter.cjs","names":["light","dark"],"sources":["../../../src/CodeHighlightProvider/adapters/shiki-adapter.ts"],"sourcesContent":["import type { CodeHighlightAdapter } from '../CodeHighlightProvider';\nimport { dark, light } from './shiki-themes';\n\nfunction stripElement(openTag: string, data: string) {\n const openIndex = data.indexOf(`<${openTag}`);\n let closeIndex = openIndex + openTag.length;\n\n for (let i = openIndex; i < data.length; i++) {\n if (data[i] === '>') {\n closeIndex = i;\n break;\n }\n }\n\n const striped = data.slice(0, openIndex) + data.slice(closeIndex + 1);\n return striped.replace(`</${openTag}>`, '');\n}\n\nexport function stripShikiCodeBlocks(data: string) {\n return stripElement('code', stripElement('pre', data));\n}\n\ninterface CreateShikiAdapterOptions {\n forceColorScheme?: 'dark' | 'light' | (string & {});\n}\n\nexport const createShikiAdapter = (\n loadShiki: () => Promise<any>,\n { forceColorScheme }: CreateShikiAdapterOptions = {}\n): CodeHighlightAdapter => {\n return {\n loadContext: loadShiki,\n getHighlighter: (ctx) => {\n if (!ctx) {\n return ({ code }) => ({ highlightedCode: code, isHighlighted: false });\n }\n\n return ({ code, language, colorScheme }) => {\n let _colorScheme: any = colorScheme;\n\n if (colorScheme === 'light') {\n _colorScheme = light;\n } else if (colorScheme === 'dark') {\n _colorScheme = dark;\n }\n\n return {\n isHighlighted: true,\n highlightedCode: stripShikiCodeBlocks(\n ctx.codeToHtml(code, {\n lang: language,\n theme: forceColorScheme || _colorScheme,\n })\n ),\n };\n };\n },\n };\n};\n"],"mappings":";;AAGA,SAAS,aAAa,SAAiB,MAAc;CACnD,MAAM,YAAY,KAAK,QAAQ,IAAI,UAAU;CAC7C,IAAI,aAAa,YAAY,QAAQ;AAErC,MAAK,IAAI,IAAI,WAAW,IAAI,KAAK,QAAQ,IACvC,KAAI,KAAK,OAAO,KAAK;AACnB,eAAa;AACb;;AAKJ,SADgB,KAAK,MAAM,GAAG,UAAU,GAAG,KAAK,MAAM,aAAa,EAAE,EACtD,QAAQ,KAAK,QAAQ,IAAI,GAAG;;AAG7C,SAAgB,qBAAqB,MAAc;AACjD,QAAO,aAAa,QAAQ,aAAa,OAAO,KAAK,CAAC;;AAOxD,MAAa,sBACX,WACA,EAAE,qBAAgD,EAAE,KAC3B;AACzB,QAAO;EACL,aAAa;EACb,iBAAiB,QAAQ;AACvB,OAAI,CAAC,IACH,SAAQ,EAAE,YAAY;IAAE,iBAAiB;IAAM,eAAe;IAAO;AAGvE,WAAQ,EAAE,MAAM,UAAU,kBAAkB;IAC1C,IAAI,eAAoB;AAExB,QAAI,gBAAgB,QAClB,gBAAeA,qBAAAA;aACN,gBAAgB,OACzB,gBAAeC,qBAAAA;AAGjB,WAAO;KACL,eAAe;KACf,iBAAiB,qBACf,IAAI,WAAW,MAAM;MACnB,MAAM;MACN,OAAO,oBAAoB;MAC5B,CAAC,CACH;KACF;;;EAGN"}