@hackersheet/next-document-content-components 0.1.0-alpha.35 → 0.1.0-alpha.37
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/code-block/code-block-header.js.map +1 -1
- package/dist/cjs/components/code-block/shiki.js +1 -1
- package/dist/cjs/components/code-block/shiki.js.map +1 -1
- package/dist/esm/components/code-block/code-block-header.mjs.map +1 -1
- package/dist/esm/components/code-block/shiki.mjs +1 -1
- package/dist/esm/components/code-block/shiki.mjs.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/code-block/code-block-header.tsx"],"sourcesContent":["'use client';\n\nimport React from 'react';\n\nimport CodeBlockCopyButton from './code-block-copy-button';\n\nimport type { ReactNode } from 'react';\n\n
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/code-block/code-block-header.tsx"],"sourcesContent":["'use client';\n\nimport React from 'react';\n\nimport CodeBlockCopyButton from './code-block-copy-button';\n\nimport type { ReactNode } from 'react';\n\n/**\n * Props for the CodeBlockHeader component.\n */\nexport type CodeBlockHeaderProps = {\n /** Icon element to display on the left side of the header. */\n icon: ReactNode;\n\n /** Optional filename to display in the center of the header. */\n filename?: string;\n\n /** Code string to be copied when the copy button is clicked. */\n code: string;\n\n /** Optional additional actions to display before the copy button. */\n actions?: ReactNode;\n};\n\n/**\n * A shared header component for code blocks and directory trees.\n *\n * Displays an icon, an optional filename, and a copy-to-clipboard button\n * in a consistent layout used across different code block variants.\n *\n * @param props - The component props\n * @param props.icon - Icon element to display on the left\n * @param props.filename - Optional filename to display in the center\n * @param props.code - Code string for the copy button\n * @param props.actions - Optional additional actions to display before copy button\n * @returns The rendered header element\n */\nexport default function CodeBlockHeader({ icon, filename, code, actions }: CodeBlockHeaderProps) {\n return (\n <div className=\"code-block-header\">\n <div>{icon}</div>\n <div className=\"code-block-filename\">{filename}</div>\n {actions && <div className=\"code-block-actions\">{actions}</div>}\n <div>\n <CodeBlockCopyButton code={code} />\n </div>\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,mBAAkB;AAElB,oCAAgC;AAkCjB,SAAR,gBAAiC,EAAE,MAAM,UAAU,MAAM,QAAQ,GAAyB;AAC/F,SACE,6BAAAA,QAAA,cAAC,SAAI,WAAU,uBACb,6BAAAA,QAAA,cAAC,aAAK,IAAK,GACX,6BAAAA,QAAA,cAAC,SAAI,WAAU,yBAAuB,QAAS,GAC9C,WAAW,6BAAAA,QAAA,cAAC,SAAI,WAAU,wBAAsB,OAAQ,GACzD,6BAAAA,QAAA,cAAC,aACC,6BAAAA,QAAA,cAAC,8BAAAC,SAAA,EAAoB,MAAY,CACnC,CACF;AAEJ;","names":["React","CodeBlockCopyButton"]}
|
|
@@ -57,7 +57,7 @@ async function highlighteCode(code, language) {
|
|
|
57
57
|
});
|
|
58
58
|
return html;
|
|
59
59
|
}
|
|
60
|
-
const additionalLanguages = [import("shiki/langs/mermaid.mjs")];
|
|
60
|
+
const additionalLanguages = [import("shiki/langs/mermaid.mjs"), import("shiki/langs/ruby.mjs")];
|
|
61
61
|
const getShikiHighlighter = (0, import_react.cache)(async () => {
|
|
62
62
|
return (0, import_web.getSingletonHighlighterCore)({
|
|
63
63
|
themes: [import("@shikijs/themes/github-light"), import("@shikijs/themes/github-dark-dimmed")],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/code-block/shiki.ts"],"sourcesContent":["import {\n transformerNotationDiff,\n transformerNotationWordHighlight,\n transformerRemoveNotationEscape,\n transformerNotationHighlight,\n} from '@shikijs/transformers';\nimport { cache } from 'react';\nimport { bundledLanguages, getSingletonHighlighterCore } from 'shiki/bundle/web';\nimport { createJavaScriptRegexEngine } from 'shiki/engine/javascript';\n\nexport async function highlighteCode(code: string, language: string) {\n const highlighter = await getShikiHighlighter();\n const shikiLangs = highlighter.getLoadedLanguages();\n const shikiLang = shikiLangs.find((lang) => lang === language);\n\n if (shikiLang === undefined && language !== 'text') {\n return null;\n }\n\n const html = highlighter.codeToHtml(code.trim(), {\n lang: shikiLang || 'text',\n themes: {\n light: 'github-light',\n dark: 'github-dark-dimmed',\n },\n transformers: [\n transformerNotationDiff(),\n transformerNotationHighlight(),\n transformerNotationWordHighlight(),\n transformerRemoveNotationEscape(),\n ],\n });\n\n return html;\n}\n\n/**\n * Additional languages not included in the web bundle.\n * These are loaded dynamically to keep the initial bundle size small.\n */\nconst additionalLanguages = [import('shiki/langs/mermaid.mjs')];\n\nconst getShikiHighlighter = cache(async () => {\n return getSingletonHighlighterCore({\n themes: [import('@shikijs/themes/github-light'), import('@shikijs/themes/github-dark-dimmed')],\n langs: [...Object.values(bundledLanguages), ...additionalLanguages],\n engine: createJavaScriptRegexEngine(),\n });\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,0BAKO;AACP,mBAAsB;AACtB,iBAA8D;AAC9D,wBAA4C;AAE5C,eAAsB,eAAe,MAAc,UAAkB;AACnE,QAAM,cAAc,MAAM,oBAAoB;AAC9C,QAAM,aAAa,YAAY,mBAAmB;AAClD,QAAM,YAAY,WAAW,KAAK,CAAC,SAAS,SAAS,QAAQ;AAE7D,MAAI,cAAc,UAAa,aAAa,QAAQ;AAClD,WAAO;AAAA,EACT;AAEA,QAAM,OAAO,YAAY,WAAW,KAAK,KAAK,GAAG;AAAA,IAC/C,MAAM,aAAa;AAAA,IACnB,QAAQ;AAAA,MACN,OAAO;AAAA,MACP,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,UACZ,6CAAwB;AAAA,UACxB,kDAA6B;AAAA,UAC7B,sDAAiC;AAAA,UACjC,qDAAgC;AAAA,IAClC;AAAA,EACF,CAAC;AAED,SAAO;AACT;AAMA,MAAM,sBAAsB,CAAC,OAAO,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/code-block/shiki.ts"],"sourcesContent":["import {\n transformerNotationDiff,\n transformerNotationWordHighlight,\n transformerRemoveNotationEscape,\n transformerNotationHighlight,\n} from '@shikijs/transformers';\nimport { cache } from 'react';\nimport { bundledLanguages, getSingletonHighlighterCore } from 'shiki/bundle/web';\nimport { createJavaScriptRegexEngine } from 'shiki/engine/javascript';\n\nexport async function highlighteCode(code: string, language: string) {\n const highlighter = await getShikiHighlighter();\n const shikiLangs = highlighter.getLoadedLanguages();\n const shikiLang = shikiLangs.find((lang) => lang === language);\n\n if (shikiLang === undefined && language !== 'text') {\n return null;\n }\n\n const html = highlighter.codeToHtml(code.trim(), {\n lang: shikiLang || 'text',\n themes: {\n light: 'github-light',\n dark: 'github-dark-dimmed',\n },\n transformers: [\n transformerNotationDiff(),\n transformerNotationHighlight(),\n transformerNotationWordHighlight(),\n transformerRemoveNotationEscape(),\n ],\n });\n\n return html;\n}\n\n/**\n * Additional languages not included in the web bundle.\n * These are loaded dynamically to keep the initial bundle size small.\n */\nconst additionalLanguages = [import('shiki/langs/mermaid.mjs'), import('shiki/langs/ruby.mjs')];\n\nconst getShikiHighlighter = cache(async () => {\n return getSingletonHighlighterCore({\n themes: [import('@shikijs/themes/github-light'), import('@shikijs/themes/github-dark-dimmed')],\n langs: [...Object.values(bundledLanguages), ...additionalLanguages],\n engine: createJavaScriptRegexEngine(),\n });\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,0BAKO;AACP,mBAAsB;AACtB,iBAA8D;AAC9D,wBAA4C;AAE5C,eAAsB,eAAe,MAAc,UAAkB;AACnE,QAAM,cAAc,MAAM,oBAAoB;AAC9C,QAAM,aAAa,YAAY,mBAAmB;AAClD,QAAM,YAAY,WAAW,KAAK,CAAC,SAAS,SAAS,QAAQ;AAE7D,MAAI,cAAc,UAAa,aAAa,QAAQ;AAClD,WAAO;AAAA,EACT;AAEA,QAAM,OAAO,YAAY,WAAW,KAAK,KAAK,GAAG;AAAA,IAC/C,MAAM,aAAa;AAAA,IACnB,QAAQ;AAAA,MACN,OAAO;AAAA,MACP,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,UACZ,6CAAwB;AAAA,UACxB,kDAA6B;AAAA,UAC7B,sDAAiC;AAAA,UACjC,qDAAgC;AAAA,IAClC;AAAA,EACF,CAAC;AAED,SAAO;AACT;AAMA,MAAM,sBAAsB,CAAC,OAAO,yBAAyB,GAAG,OAAO,sBAAsB,CAAC;AAE9F,MAAM,0BAAsB,oBAAM,YAAY;AAC5C,aAAO,wCAA4B;AAAA,IACjC,QAAQ,CAAC,OAAO,8BAA8B,GAAG,OAAO,oCAAoC,CAAC;AAAA,IAC7F,OAAO,CAAC,GAAG,OAAO,OAAO,2BAAgB,GAAG,GAAG,mBAAmB;AAAA,IAClE,YAAQ,+CAA4B;AAAA,EACtC,CAAC;AACH,CAAC;","names":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/code-block/code-block-header.tsx"],"sourcesContent":["'use client';\n\nimport React from 'react';\n\nimport CodeBlockCopyButton from \"./code-block-copy-button.mjs\";\n\nimport type { ReactNode } from 'react';\n\n
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/code-block/code-block-header.tsx"],"sourcesContent":["'use client';\n\nimport React from 'react';\n\nimport CodeBlockCopyButton from \"./code-block-copy-button.mjs\";\n\nimport type { ReactNode } from 'react';\n\n/**\n * Props for the CodeBlockHeader component.\n */\nexport type CodeBlockHeaderProps = {\n /** Icon element to display on the left side of the header. */\n icon: ReactNode;\n\n /** Optional filename to display in the center of the header. */\n filename?: string;\n\n /** Code string to be copied when the copy button is clicked. */\n code: string;\n\n /** Optional additional actions to display before the copy button. */\n actions?: ReactNode;\n};\n\n/**\n * A shared header component for code blocks and directory trees.\n *\n * Displays an icon, an optional filename, and a copy-to-clipboard button\n * in a consistent layout used across different code block variants.\n *\n * @param props - The component props\n * @param props.icon - Icon element to display on the left\n * @param props.filename - Optional filename to display in the center\n * @param props.code - Code string for the copy button\n * @param props.actions - Optional additional actions to display before copy button\n * @returns The rendered header element\n */\nexport default function CodeBlockHeader({ icon, filename, code, actions }: CodeBlockHeaderProps) {\n return (\n <div className=\"code-block-header\">\n <div>{icon}</div>\n <div className=\"code-block-filename\">{filename}</div>\n {actions && <div className=\"code-block-actions\">{actions}</div>}\n <div>\n <CodeBlockCopyButton code={code} />\n </div>\n </div>\n );\n}\n"],"mappings":";AAEA,OAAO,WAAW;AAElB,OAAO,yBAAyB;AAkCjB,SAAR,gBAAiC,EAAE,MAAM,UAAU,MAAM,QAAQ,GAAyB;AAC/F,SACE,oCAAC,SAAI,WAAU,uBACb,oCAAC,aAAK,IAAK,GACX,oCAAC,SAAI,WAAU,yBAAuB,QAAS,GAC9C,WAAW,oCAAC,SAAI,WAAU,wBAAsB,OAAQ,GACzD,oCAAC,aACC,oCAAC,uBAAoB,MAAY,CACnC,CACF;AAEJ;","names":[]}
|
|
@@ -29,7 +29,7 @@ async function highlighteCode(code, language) {
|
|
|
29
29
|
});
|
|
30
30
|
return html;
|
|
31
31
|
}
|
|
32
|
-
const additionalLanguages = [import("shiki/langs/mermaid.mjs")];
|
|
32
|
+
const additionalLanguages = [import("shiki/langs/mermaid.mjs"), import("shiki/langs/ruby.mjs")];
|
|
33
33
|
const getShikiHighlighter = cache(async () => {
|
|
34
34
|
return getSingletonHighlighterCore({
|
|
35
35
|
themes: [import("@shikijs/themes/github-light"), import("@shikijs/themes/github-dark-dimmed")],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/code-block/shiki.ts"],"sourcesContent":["import {\n transformerNotationDiff,\n transformerNotationWordHighlight,\n transformerRemoveNotationEscape,\n transformerNotationHighlight,\n} from '@shikijs/transformers';\nimport { cache } from 'react';\nimport { bundledLanguages, getSingletonHighlighterCore } from 'shiki/bundle/web';\nimport { createJavaScriptRegexEngine } from 'shiki/engine/javascript';\n\nexport async function highlighteCode(code: string, language: string) {\n const highlighter = await getShikiHighlighter();\n const shikiLangs = highlighter.getLoadedLanguages();\n const shikiLang = shikiLangs.find((lang) => lang === language);\n\n if (shikiLang === undefined && language !== 'text') {\n return null;\n }\n\n const html = highlighter.codeToHtml(code.trim(), {\n lang: shikiLang || 'text',\n themes: {\n light: 'github-light',\n dark: 'github-dark-dimmed',\n },\n transformers: [\n transformerNotationDiff(),\n transformerNotationHighlight(),\n transformerNotationWordHighlight(),\n transformerRemoveNotationEscape(),\n ],\n });\n\n return html;\n}\n\n/**\n * Additional languages not included in the web bundle.\n * These are loaded dynamically to keep the initial bundle size small.\n */\nconst additionalLanguages = [import('shiki/langs/mermaid.mjs')];\n\nconst getShikiHighlighter = cache(async () => {\n return getSingletonHighlighterCore({\n themes: [import('@shikijs/themes/github-light'), import('@shikijs/themes/github-dark-dimmed')],\n langs: [...Object.values(bundledLanguages), ...additionalLanguages],\n engine: createJavaScriptRegexEngine(),\n });\n});\n"],"mappings":"AAAA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,aAAa;AACtB,SAAS,kBAAkB,mCAAmC;AAC9D,SAAS,mCAAmC;AAE5C,eAAsB,eAAe,MAAc,UAAkB;AACnE,QAAM,cAAc,MAAM,oBAAoB;AAC9C,QAAM,aAAa,YAAY,mBAAmB;AAClD,QAAM,YAAY,WAAW,KAAK,CAAC,SAAS,SAAS,QAAQ;AAE7D,MAAI,cAAc,UAAa,aAAa,QAAQ;AAClD,WAAO;AAAA,EACT;AAEA,QAAM,OAAO,YAAY,WAAW,KAAK,KAAK,GAAG;AAAA,IAC/C,MAAM,aAAa;AAAA,IACnB,QAAQ;AAAA,MACN,OAAO;AAAA,MACP,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,wBAAwB;AAAA,MACxB,6BAA6B;AAAA,MAC7B,iCAAiC;AAAA,MACjC,gCAAgC;AAAA,IAClC;AAAA,EACF,CAAC;AAED,SAAO;AACT;AAMA,MAAM,sBAAsB,CAAC,OAAO,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/code-block/shiki.ts"],"sourcesContent":["import {\n transformerNotationDiff,\n transformerNotationWordHighlight,\n transformerRemoveNotationEscape,\n transformerNotationHighlight,\n} from '@shikijs/transformers';\nimport { cache } from 'react';\nimport { bundledLanguages, getSingletonHighlighterCore } from 'shiki/bundle/web';\nimport { createJavaScriptRegexEngine } from 'shiki/engine/javascript';\n\nexport async function highlighteCode(code: string, language: string) {\n const highlighter = await getShikiHighlighter();\n const shikiLangs = highlighter.getLoadedLanguages();\n const shikiLang = shikiLangs.find((lang) => lang === language);\n\n if (shikiLang === undefined && language !== 'text') {\n return null;\n }\n\n const html = highlighter.codeToHtml(code.trim(), {\n lang: shikiLang || 'text',\n themes: {\n light: 'github-light',\n dark: 'github-dark-dimmed',\n },\n transformers: [\n transformerNotationDiff(),\n transformerNotationHighlight(),\n transformerNotationWordHighlight(),\n transformerRemoveNotationEscape(),\n ],\n });\n\n return html;\n}\n\n/**\n * Additional languages not included in the web bundle.\n * These are loaded dynamically to keep the initial bundle size small.\n */\nconst additionalLanguages = [import('shiki/langs/mermaid.mjs'), import('shiki/langs/ruby.mjs')];\n\nconst getShikiHighlighter = cache(async () => {\n return getSingletonHighlighterCore({\n themes: [import('@shikijs/themes/github-light'), import('@shikijs/themes/github-dark-dimmed')],\n langs: [...Object.values(bundledLanguages), ...additionalLanguages],\n engine: createJavaScriptRegexEngine(),\n });\n});\n"],"mappings":"AAAA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,aAAa;AACtB,SAAS,kBAAkB,mCAAmC;AAC9D,SAAS,mCAAmC;AAE5C,eAAsB,eAAe,MAAc,UAAkB;AACnE,QAAM,cAAc,MAAM,oBAAoB;AAC9C,QAAM,aAAa,YAAY,mBAAmB;AAClD,QAAM,YAAY,WAAW,KAAK,CAAC,SAAS,SAAS,QAAQ;AAE7D,MAAI,cAAc,UAAa,aAAa,QAAQ;AAClD,WAAO;AAAA,EACT;AAEA,QAAM,OAAO,YAAY,WAAW,KAAK,KAAK,GAAG;AAAA,IAC/C,MAAM,aAAa;AAAA,IACnB,QAAQ;AAAA,MACN,OAAO;AAAA,MACP,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,wBAAwB;AAAA,MACxB,6BAA6B;AAAA,MAC7B,iCAAiC;AAAA,MACjC,gCAAgC;AAAA,IAClC;AAAA,EACF,CAAC;AAED,SAAO;AACT;AAMA,MAAM,sBAAsB,CAAC,OAAO,yBAAyB,GAAG,OAAO,sBAAsB,CAAC;AAE9F,MAAM,sBAAsB,MAAM,YAAY;AAC5C,SAAO,4BAA4B;AAAA,IACjC,QAAQ,CAAC,OAAO,8BAA8B,GAAG,OAAO,oCAAoC,CAAC;AAAA,IAC7F,OAAO,CAAC,GAAG,OAAO,OAAO,gBAAgB,GAAG,GAAG,mBAAmB;AAAA,IAClE,QAAQ,4BAA4B;AAAA,EACtC,CAAC;AACH,CAAC;","names":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hackersheet/next-document-content-components",
|
|
3
|
-
"version": "0.1.0-alpha.
|
|
3
|
+
"version": "0.1.0-alpha.37",
|
|
4
4
|
"description": "Hacker Sheet document content components for Next.js",
|
|
5
5
|
"keywords": [],
|
|
6
6
|
"repository": {
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"react-tweet": "^3.3.0",
|
|
34
34
|
"shiki": "^3.22.0",
|
|
35
35
|
"@hackersheet/core": "0.1.0-alpha.13",
|
|
36
|
-
"@hackersheet/react-document-content": "0.1.0-alpha.
|
|
36
|
+
"@hackersheet/react-document-content": "0.1.0-alpha.18"
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
39
|
"@types/react": "^19.2.10",
|