@hackersheet/next-document-content-components 0.1.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 (61) hide show
  1. package/README.md +3 -0
  2. package/dist/cjs/components/code-block/code-block-copy-button.d.ts +8 -0
  3. package/dist/cjs/components/code-block/code-block-copy-button.js +47 -0
  4. package/dist/cjs/components/code-block/code-block-icon.d.ts +8 -0
  5. package/dist/cjs/components/code-block/code-block-icon.js +66 -0
  6. package/dist/cjs/components/code-block/code-block-kifu.d.ts +9 -0
  7. package/dist/cjs/components/code-block/code-block-kifu.js +66 -0
  8. package/dist/cjs/components/code-block/code-block-mermaid.d.ts +8 -0
  9. package/dist/cjs/components/code-block/code-block-mermaid.js +71 -0
  10. package/dist/cjs/components/code-block/code-block.d.ts +6 -0
  11. package/dist/cjs/components/code-block/code-block.js +48 -0
  12. package/dist/cjs/components/code-block/shiki.d.ts +3 -0
  13. package/dist/cjs/components/code-block/shiki.js +52 -0
  14. package/dist/cjs/components/image/image.d.ts +6 -0
  15. package/dist/cjs/components/image/image.js +38 -0
  16. package/dist/cjs/components/index.d.ts +9 -0
  17. package/dist/cjs/components/index.js +56 -0
  18. package/dist/cjs/components/kifu-to/kifu-to.d.ts +6 -0
  19. package/dist/cjs/components/kifu-to/kifu-to.js +41 -0
  20. package/dist/cjs/components/link/link.d.ts +6 -0
  21. package/dist/cjs/components/link/link.js +38 -0
  22. package/dist/cjs/components/link-card/link-card.d.ts +6 -0
  23. package/dist/cjs/components/link-card/link-card.js +47 -0
  24. package/dist/cjs/components/x-post/x-post.d.ts +6 -0
  25. package/dist/cjs/components/x-post/x-post.js +49 -0
  26. package/dist/cjs/components/youtube/youtube.d.ts +6 -0
  27. package/dist/cjs/components/youtube/youtube.js +39 -0
  28. package/dist/cjs/index.d.ts +9 -0
  29. package/dist/cjs/index.js +22 -0
  30. package/dist/esm/components/code-block/code-block-copy-button.d.mts +8 -0
  31. package/dist/esm/components/code-block/code-block-copy-button.mjs +17 -0
  32. package/dist/esm/components/code-block/code-block-icon.d.mts +8 -0
  33. package/dist/esm/components/code-block/code-block-icon.mjs +36 -0
  34. package/dist/esm/components/code-block/code-block-kifu.d.mts +9 -0
  35. package/dist/esm/components/code-block/code-block-kifu.mjs +36 -0
  36. package/dist/esm/components/code-block/code-block-mermaid.d.mts +8 -0
  37. package/dist/esm/components/code-block/code-block-mermaid.mjs +41 -0
  38. package/dist/esm/components/code-block/code-block.d.mts +6 -0
  39. package/dist/esm/components/code-block/code-block.mjs +18 -0
  40. package/dist/esm/components/code-block/shiki.d.mts +3 -0
  41. package/dist/esm/components/code-block/shiki.mjs +28 -0
  42. package/dist/esm/components/image/image.d.mts +6 -0
  43. package/dist/esm/components/image/image.mjs +8 -0
  44. package/dist/esm/components/index.d.mts +9 -0
  45. package/dist/esm/components/index.mjs +16 -0
  46. package/dist/esm/components/kifu-to/kifu-to.d.mts +6 -0
  47. package/dist/esm/components/kifu-to/kifu-to.mjs +11 -0
  48. package/dist/esm/components/link/link.d.mts +6 -0
  49. package/dist/esm/components/link/link.mjs +8 -0
  50. package/dist/esm/components/link-card/link-card.d.mts +6 -0
  51. package/dist/esm/components/link-card/link-card.mjs +17 -0
  52. package/dist/esm/components/x-post/x-post.d.mts +6 -0
  53. package/dist/esm/components/x-post/x-post.mjs +19 -0
  54. package/dist/esm/components/youtube/youtube.d.mts +6 -0
  55. package/dist/esm/components/youtube/youtube.mjs +9 -0
  56. package/dist/esm/index.d.mts +9 -0
  57. package/dist/esm/index.mjs +1 -0
  58. package/dist/style.module.css +279 -0
  59. package/dist/style.module.scss.d.ts +9 -0
  60. package/license.md +21 -0
  61. package/package.json +73 -0
package/README.md ADDED
@@ -0,0 +1,3 @@
1
+ # @hackersheet/next-document-content-components
2
+
3
+ Hacker Sheet document content components for Next.js
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+
3
+ interface CodeBlockCopyButtonProps {
4
+ code: string;
5
+ }
6
+ declare function CodeBlockCopyButton({ code }: CodeBlockCopyButtonProps): React.JSX.Element;
7
+
8
+ export { type CodeBlockCopyButtonProps, CodeBlockCopyButton as default };
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ "use client";
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 __export = (target, all) => {
10
+ for (var name in all)
11
+ __defProp(target, name, { get: all[name], enumerable: true });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from))
16
+ if (!__hasOwnProp.call(to, key) && key !== except)
17
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
18
+ }
19
+ return to;
20
+ };
21
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
+ // If the importer is in node compatibility mode or this is not an ESM
23
+ // file that has been converted to a CommonJS file using a Babel-
24
+ // compatible transform (i.e. "__esModule" has not been set), then set
25
+ // "default" to the CommonJS "module.exports" for node compatibility.
26
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
+ mod
28
+ ));
29
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
30
+ var code_block_copy_button_exports = {};
31
+ __export(code_block_copy_button_exports, {
32
+ default: () => CodeBlockCopyButton
33
+ });
34
+ module.exports = __toCommonJS(code_block_copy_button_exports);
35
+ var import_react = __toESM(require("react"));
36
+ var import_hi2 = require("react-icons/hi2");
37
+ function CodeBlockCopyButton({ code }) {
38
+ const [copied, setCopied] = (0, import_react.useState)(false);
39
+ const removeShikiCode = (code2) => code2.replace(/ *\/\/.*\[!code[^\]]+\]/gm, "").trim();
40
+ const handleClick = () => {
41
+ navigator.clipboard.writeText(removeShikiCode(code)).then(() => {
42
+ setCopied(true);
43
+ setTimeout(() => setCopied(false), 1e3);
44
+ });
45
+ };
46
+ return /* @__PURE__ */ import_react.default.createElement("button", { onClick: handleClick }, copied ? /* @__PURE__ */ import_react.default.createElement(import_hi2.HiCheck, { size: 18 }) : /* @__PURE__ */ import_react.default.createElement(import_hi2.HiOutlineClipboardDocumentList, { size: 18 }));
47
+ }
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+
3
+ interface CodeBlockIconProps {
4
+ language: string;
5
+ }
6
+ declare function CodeBlockIcon({ language }: CodeBlockIconProps): React.JSX.Element;
7
+
8
+ export { type CodeBlockIconProps, CodeBlockIcon as default };
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var code_block_icon_exports = {};
30
+ __export(code_block_icon_exports, {
31
+ default: () => CodeBlockIcon
32
+ });
33
+ module.exports = __toCommonJS(code_block_icon_exports);
34
+ var import_react = __toESM(require("react"));
35
+ var import_fa6 = require("react-icons/fa6");
36
+ var import_hi2 = require("react-icons/hi2");
37
+ var import_si = require("react-icons/si");
38
+ var import_tb = require("react-icons/tb");
39
+ var import_vsc = require("react-icons/vsc");
40
+ function CodeBlockIcon({ language }) {
41
+ switch (language) {
42
+ case "sh":
43
+ case "bash":
44
+ return /* @__PURE__ */ import_react.default.createElement(import_fa6.FaTerminal, null);
45
+ case "hcl":
46
+ return /* @__PURE__ */ import_react.default.createElement(import_si.SiTerraform, null);
47
+ case "typescript":
48
+ return /* @__PURE__ */ import_react.default.createElement(import_si.SiTypescript, null);
49
+ case "tsx":
50
+ return /* @__PURE__ */ import_react.default.createElement(import_fa6.FaReact, null);
51
+ case "markdown":
52
+ return /* @__PURE__ */ import_react.default.createElement(import_si.SiMarkdown, null);
53
+ case "php":
54
+ return /* @__PURE__ */ import_react.default.createElement(import_si.SiPhp, null);
55
+ case "ruby":
56
+ return /* @__PURE__ */ import_react.default.createElement(import_si.SiRuby, null);
57
+ case "yaml":
58
+ return /* @__PURE__ */ import_react.default.createElement(import_si.SiYaml, null);
59
+ case "json":
60
+ return /* @__PURE__ */ import_react.default.createElement(import_vsc.VscJson, null);
61
+ case "text":
62
+ return /* @__PURE__ */ import_react.default.createElement(import_tb.TbTxt, null);
63
+ default:
64
+ return /* @__PURE__ */ import_react.default.createElement(import_hi2.HiCodeBracket, null);
65
+ }
66
+ }
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+
3
+ interface KifuProps {
4
+ kifu: string;
5
+ filename?: string;
6
+ }
7
+ declare function CodeBlockKifu({ kifu, filename }: KifuProps): React.JSX.Element | null;
8
+
9
+ export { type KifuProps, CodeBlockKifu as default };
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ "use client";
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 __export = (target, all) => {
10
+ for (var name in all)
11
+ __defProp(target, name, { get: all[name], enumerable: true });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from))
16
+ if (!__hasOwnProp.call(to, key) && key !== except)
17
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
18
+ }
19
+ return to;
20
+ };
21
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
+ // If the importer is in node compatibility mode or this is not an ESM
23
+ // file that has been converted to a CommonJS file using a Babel-
24
+ // compatible transform (i.e. "__esModule" has not been set), then set
25
+ // "default" to the CommonJS "module.exports" for node compatibility.
26
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
+ mod
28
+ ));
29
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
30
+ var code_block_kifu_exports = {};
31
+ __export(code_block_kifu_exports, {
32
+ default: () => CodeBlockKifu
33
+ });
34
+ module.exports = __toCommonJS(code_block_kifu_exports);
35
+ var import_kifu_for_js = require("kifu-for-js");
36
+ var import_navigation = require("next/navigation");
37
+ var import_react = __toESM(require("react"));
38
+ function CodeBlockKifu({ kifu, filename }) {
39
+ const searchParams = (0, import_navigation.useSearchParams)();
40
+ const id = filename ? `user-content-${filename}` : void 0;
41
+ const [kifuStore] = (0, import_react.useState)(() => new import_kifu_for_js.KifuStore({ kifu }));
42
+ (0, import_react.useEffect)(() => {
43
+ initKifuUserSettings();
44
+ }, []);
45
+ (0, import_react.useEffect)(() => {
46
+ const newPly = Number(searchParams.get("ply") ?? 0);
47
+ const hash = typeof window !== "undefined" ? window.location.hash.replace(/^#!?/, "") : "";
48
+ if (hash === id) {
49
+ kifuStore.player.goto(newPly);
50
+ }
51
+ }, [searchParams, kifuStore, id]);
52
+ if (!kifuStore) {
53
+ return null;
54
+ }
55
+ return /* @__PURE__ */ import_react.default.createElement("div", { className: "my-4 flex justify-center", id }, /* @__PURE__ */ import_react.default.createElement(import_kifu_for_js.KifuLite, { style: { width: "100%" }, kifuStore }));
56
+ }
57
+ function initKifuUserSettings() {
58
+ const LOCALSTORAGE_KEY = "kifuforjs";
59
+ const defaultSettings = {
60
+ hapticFeedback: false
61
+ };
62
+ const settings = localStorage.getItem(LOCALSTORAGE_KEY);
63
+ if (!settings) {
64
+ localStorage.setItem(LOCALSTORAGE_KEY, JSON.stringify(defaultSettings));
65
+ }
66
+ }
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+
3
+ interface CodeBlockMermaidProps {
4
+ code: string;
5
+ }
6
+ declare function CodeBlockMermaid({ code }: CodeBlockMermaidProps): React.JSX.Element;
7
+
8
+ export { type CodeBlockMermaidProps, CodeBlockMermaid as default };
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ "use client";
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 __export = (target, all) => {
10
+ for (var name in all)
11
+ __defProp(target, name, { get: all[name], enumerable: true });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from))
16
+ if (!__hasOwnProp.call(to, key) && key !== except)
17
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
18
+ }
19
+ return to;
20
+ };
21
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
+ // If the importer is in node compatibility mode or this is not an ESM
23
+ // file that has been converted to a CommonJS file using a Babel-
24
+ // compatible transform (i.e. "__esModule" has not been set), then set
25
+ // "default" to the CommonJS "module.exports" for node compatibility.
26
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
+ mod
28
+ ));
29
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
30
+ var code_block_mermaid_exports = {};
31
+ __export(code_block_mermaid_exports, {
32
+ default: () => CodeBlockMermaid
33
+ });
34
+ module.exports = __toCommonJS(code_block_mermaid_exports);
35
+ var import_crypto = require("crypto");
36
+ var import_mermaid = __toESM(require("mermaid"));
37
+ var import_next_themes = require("next-themes");
38
+ var import_react = __toESM(require("react"));
39
+ function createId(code) {
40
+ const hash = (0, import_crypto.createHash)("sha256");
41
+ hash.update(code);
42
+ return "id-" + hash.digest("hex");
43
+ }
44
+ function CodeBlockMermaid({ code }) {
45
+ const ref = (0, import_react.useRef)(null);
46
+ const [mounted, setMounted] = (0, import_react.useState)(false);
47
+ const [svg, setSvg] = (0, import_react.useState)("");
48
+ const { theme, systemTheme } = (0, import_next_themes.useTheme)();
49
+ const id = createId(code);
50
+ (0, import_react.useEffect)(() => {
51
+ const renderMermaid = async () => {
52
+ if (!mounted) {
53
+ setMounted(true);
54
+ }
55
+ const currentTheme = theme === "system" ? systemTheme : theme;
56
+ if (mounted && ref.current) {
57
+ import_mermaid.default.initialize({ theme: currentTheme });
58
+ try {
59
+ const result = await import_mermaid.default.render(id, code, ref.current);
60
+ setSvg(result.svg);
61
+ } catch {
62
+ setSvg("Mermaid Syntax Error");
63
+ }
64
+ }
65
+ };
66
+ renderMermaid();
67
+ }, [mounted, code, id, theme, systemTheme, setSvg, setMounted]);
68
+ if (!mounted)
69
+ return /* @__PURE__ */ import_react.default.createElement("div", null, /* @__PURE__ */ import_react.default.createElement("div", null, "Loading..."));
70
+ return /* @__PURE__ */ import_react.default.createElement("div", null, /* @__PURE__ */ import_react.default.createElement("div", { dangerouslySetInnerHTML: { __html: svg }, ref }));
71
+ }
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ import { CodeBlockComponentProps } from '@hackersheet/react-document-content';
3
+
4
+ declare function CodeBlock({ code, language }: CodeBlockComponentProps): Promise<React.JSX.Element>;
5
+
6
+ export { CodeBlock as default };
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var code_block_exports = {};
30
+ __export(code_block_exports, {
31
+ default: () => CodeBlock
32
+ });
33
+ module.exports = __toCommonJS(code_block_exports);
34
+ var import_react = __toESM(require("react"));
35
+ var import_code_block_copy_button = __toESM(require("./code-block-copy-button"));
36
+ var import_code_block_icon = __toESM(require("./code-block-icon"));
37
+ var import_code_block_kifu = __toESM(require("./code-block-kifu"));
38
+ var import_code_block_mermaid = __toESM(require("./code-block-mermaid"));
39
+ var import_shiki = require("./shiki");
40
+ async function CodeBlock({ code, language }) {
41
+ const [lang, filename] = language.split(":");
42
+ const isMermaid = lang === "mermaid";
43
+ const isKifu = lang === "kifu";
44
+ if (isMermaid) return /* @__PURE__ */ import_react.default.createElement(import_code_block_mermaid.default, { code });
45
+ if (isKifu) return /* @__PURE__ */ import_react.default.createElement(import_code_block_kifu.default, { kifu: code, filename });
46
+ const html = await (0, import_shiki.highlighteCode)(code, lang);
47
+ return /* @__PURE__ */ import_react.default.createElement("div", { className: "code-block" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "code-block-header" }, /* @__PURE__ */ import_react.default.createElement("div", null, /* @__PURE__ */ import_react.default.createElement(import_code_block_icon.default, { language })), /* @__PURE__ */ import_react.default.createElement("div", { className: "code-block-filename" }, filename), /* @__PURE__ */ import_react.default.createElement("div", null, /* @__PURE__ */ import_react.default.createElement(import_code_block_copy_button.default, { code }))), html && /* @__PURE__ */ import_react.default.createElement("div", { dangerouslySetInnerHTML: { __html: html } }), !html && /* @__PURE__ */ import_react.default.createElement("pre", null, code));
48
+ }
@@ -0,0 +1,3 @@
1
+ declare function highlighteCode(code: string, language: string): Promise<string | null>;
2
+
3
+ export { highlighteCode };
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var shiki_exports = {};
20
+ __export(shiki_exports, {
21
+ highlighteCode: () => highlighteCode
22
+ });
23
+ module.exports = __toCommonJS(shiki_exports);
24
+ var import_transformers = require("@shikijs/transformers");
25
+ var import_react = require("react");
26
+ var import_shiki = require("shiki");
27
+ async function highlighteCode(code, language) {
28
+ const highlighter = await getShikiHighlighter();
29
+ const shikiLang = Object.keys(import_shiki.bundledLanguages).find((lang) => lang === language);
30
+ if (shikiLang === void 0 && language !== "text") {
31
+ return null;
32
+ }
33
+ const html = highlighter.codeToHtml(code, {
34
+ lang: shikiLang || "text",
35
+ themes: {
36
+ light: "github-light",
37
+ dark: "github-dark-dimmed"
38
+ },
39
+ transformers: [(0, import_transformers.transformerNotationDiff)(), (0, import_transformers.transformerNotationWordHighlight)()]
40
+ });
41
+ return html;
42
+ }
43
+ const getShikiHighlighter = (0, import_react.cache)(async () => {
44
+ return (0, import_shiki.getSingletonHighlighter)({
45
+ themes: Object.keys(import_shiki.bundledThemes),
46
+ langs: Object.keys(import_shiki.bundledLanguages)
47
+ });
48
+ });
49
+ // Annotate the CommonJS export names for ESM import in node:
50
+ 0 && (module.exports = {
51
+ highlighteCode
52
+ });
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ import { ImageComponentProps } from '@hackersheet/react-document-content';
3
+
4
+ declare function Image({ src, width, height, alt }: ImageComponentProps): React.JSX.Element;
5
+
6
+ export { Image as default };
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var image_exports = {};
30
+ __export(image_exports, {
31
+ default: () => Image
32
+ });
33
+ module.exports = __toCommonJS(image_exports);
34
+ var import_image = __toESM(require("next/image"));
35
+ var import_react = __toESM(require("react"));
36
+ function Image({ src, width, height, alt }) {
37
+ return /* @__PURE__ */ import_react.default.createElement(import_image.default, { src, width, height, alt });
38
+ }
@@ -0,0 +1,9 @@
1
+ export { default as CodeBlock } from './code-block/code-block.js';
2
+ export { default as Image } from './image/image.js';
3
+ export { default as KifuTo } from './kifu-to/kifu-to.js';
4
+ export { default as Link } from './link/link.js';
5
+ export { default as LinkCard } from './link-card/link-card.js';
6
+ export { default as XPost } from './x-post/x-post.js';
7
+ export { default as Youtube } from './youtube/youtube.js';
8
+ import 'react';
9
+ import '@hackersheet/react-document-content';
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var components_exports = {};
30
+ __export(components_exports, {
31
+ CodeBlock: () => import_code_block.default,
32
+ Image: () => import_image.default,
33
+ KifuTo: () => import_kifu_to.default,
34
+ Link: () => import_link.default,
35
+ LinkCard: () => import_link_card.default,
36
+ XPost: () => import_x_post.default,
37
+ Youtube: () => import_youtube.default
38
+ });
39
+ module.exports = __toCommonJS(components_exports);
40
+ var import_code_block = __toESM(require("./code-block/code-block"));
41
+ var import_image = __toESM(require("./image/image"));
42
+ var import_kifu_to = __toESM(require("./kifu-to/kifu-to"));
43
+ var import_link = __toESM(require("./link/link"));
44
+ var import_link_card = __toESM(require("./link-card/link-card"));
45
+ var import_x_post = __toESM(require("./x-post/x-post"));
46
+ var import_youtube = __toESM(require("./youtube/youtube"));
47
+ // Annotate the CommonJS export names for ESM import in node:
48
+ 0 && (module.exports = {
49
+ CodeBlock,
50
+ Image,
51
+ KifuTo,
52
+ Link,
53
+ LinkCard,
54
+ XPost,
55
+ Youtube
56
+ });
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ import { KifuToComponentProps } from '@hackersheet/react-document-content';
3
+
4
+ declare function KifuTo({ id, ply, label: defaultLabel }: KifuToComponentProps): React.JSX.Element;
5
+
6
+ export { KifuTo as default };
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var kifu_to_exports = {};
30
+ __export(kifu_to_exports, {
31
+ default: () => KifuTo
32
+ });
33
+ module.exports = __toCommonJS(kifu_to_exports);
34
+ var import_link = __toESM(require("next/link"));
35
+ var import_react = __toESM(require("react"));
36
+ function KifuTo({ id, ply, label: defaultLabel }) {
37
+ const fullId = `user-content-${id}`;
38
+ const href = `?ply=${ply}#${fullId}`;
39
+ const label = defaultLabel ?? `${ply}\u624B\u76EE`;
40
+ return /* @__PURE__ */ import_react.default.createElement(import_link.default, { href }, label);
41
+ }
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ import { LinkComponentProps } from '@hackersheet/react-document-content';
3
+
4
+ declare function Link({ href, id, children }: LinkComponentProps): React.JSX.Element;
5
+
6
+ export { Link as default };
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var link_exports = {};
30
+ __export(link_exports, {
31
+ default: () => Link
32
+ });
33
+ module.exports = __toCommonJS(link_exports);
34
+ var import_link = __toESM(require("next/link"));
35
+ var import_react = __toESM(require("react"));
36
+ function Link({ href, id, children }) {
37
+ return /* @__PURE__ */ import_react.default.createElement(import_link.default, { href, id }, children);
38
+ }
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ import { LinkCardComponentProps } from '@hackersheet/react-document-content';
3
+
4
+ declare function LinkCard({ domain, url, title, description, imageUrl, imageHeight, imageWidth, }: LinkCardComponentProps): React.JSX.Element;
5
+
6
+ export { LinkCard as default };