@hyperbook/markdown 0.9.3 → 0.9.5

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/Code.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- import { ComponentType } from "react";
2
- export declare const Code: ComponentType<JSX.IntrinsicElements["code"]>;
1
+ import type { Components } from "hast-util-to-jsx-runtime";
2
+ export declare const Code: Components["code"];
@@ -1,3 +1,3 @@
1
- import { ComponentType } from "react";
1
+ import type { Components } from "hast-util-to-jsx-runtime";
2
2
  export declare const makeAnchor: (heading: string) => string;
3
- export declare const Headings: (level: number) => ComponentType<JSX.IntrinsicElements["h1"]>;
3
+ export declare const Headings: (level: number) => Components["h1"];
package/dist/Image.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- import { ComponentType } from "react";
2
- export declare const Image: ComponentType<JSX.IntrinsicElements["img"]>;
1
+ import type { Components } from "hast-util-to-jsx-runtime";
2
+ export declare const Image: Components["img"];
package/dist/Link.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- import { ComponentType } from "react";
2
- export declare const Link: ComponentType<JSX.IntrinsicElements["a"]>;
1
+ import type { Components } from "hast-util-to-jsx-runtime";
2
+ export declare const Link: Components["a"];
package/dist/Table.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { ComponentType } from "react";
2
- export declare const Table: ComponentType<JSX.IntrinsicElements["table"]>;
3
- export declare const Tr: ComponentType<JSX.IntrinsicElements["tr"]>;
4
- export declare const Td: ComponentType<JSX.IntrinsicElements["td"]>;
5
- export declare const Th: ComponentType<JSX.IntrinsicElements["th"]>;
1
+ import type { Components } from "hast-util-to-jsx-runtime";
2
+ export declare const Table: Components["table"];
3
+ export declare const Tr: Components["tr"];
4
+ export declare const Td: Components["td"];
5
+ export declare const Th: Components["th"];
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../src/index.css"],
4
4
  "sourcesContent": [".hyperbook-markdown {\n background: var(--color-background);\n color: var(--color-text);\n font-family: hyperbook-body, sans-serif;\n}\n\n.hyperbook-markdown a {\n color: var(--color-brand);\n}\n\n/**\n * IE 8\u201311 and Prince don\u2019t recognize the `wbr` element,\n * but a pseudo-element can achieve the same effect with IE 9+ and Prince.\n */\n.hyperbook-markdown wbr:before {\n /* Unicode zero width space */\n content: \"\\200B\";\n white-space: normal;\n}\n\n.hyperbook-markdown .copy {\n color: var(--color-text);\n}\n\n.hyperbook-markdown .hljs {\n background: var(--color-nav) !important;\n border-color: var(--color-spacer);\n}\n\n.hyperbook-markdown p > code {\n background: var(--color-nav) !important;\n border-color: var(--color-spacer);\n}\n\n.hyperbook-markdown img {\n max-width: 100%;\n}\n\n.hyperbook-markdown figure.lightbox {\n position: fixed;\n display: flex;\n justify-content: center;\n flex-direction: column;\n align-items: center;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n padding: 1em;\n z-index: 10000;\n margin: 0px;\n background: rgba(0, 0, 0, 0.5);\n}\n\n.hyperbook-markdown figure.lightbox img {\n min-width: 100%;\n min-height: 100%;\n cursor: zoom-out;\n object-fit: contain;\n}\n\n.hyperbook-markdown table {\n border-color: var(--color-spacer);\n}\n\n.hyperbook-markdown table tr {\n background-color: var(--color-nav);\n border-color: var(--color-spacer);\n}\n\n.hyperbook-markdown h2 {\n border-bottom-color: var(--color-spacer);\n}\n\n.hyperbook-markdown ul.bookmarks li {\n border-color: var(--color-spacer);\n}\n\n.hyperbook-markdown ul.bookmarks li:hover {\n background: var(--color-nav);\n}\n\n.hyperbook-markdown ul.bookmarks li:last-of-type {\n border-color: var(--color-spacer);\n}\n\n@media screen and (max-width: 600px) {\n .hyperbook-markdown table td {\n border-bottom-color: var(--color-spacer);\n }\n}\n\n.hyperbook-markdown figure.normal {\n text-align: center;\n margin-top: 10px;\n margin-bottom: 10px;\n}\n\n.hyperbook-markdown figure.normal img {\n cursor: zoom-in;\n}\n\n.hyperbook-markdown figure.normal figcaption {\n font-style: italic;\n font-size: 14px;\n max-width: 400px;\n margin: 0 auto;\n}\n\n.hyperbook-markdown a.heading {\n position: relative;\n text-decoration: none;\n padding-left: 16px;\n margin-left: -16px;\n}\n\n.hyperbook-markdown a.heading:hover::before {\n position: absolute;\n content: \"\uD83D\uDCCE\";\n font-size: 12px;\n top: 50%;\n transform: translateY(-50%);\n left: 0px;\n}\n\n.hyperbook-markdown code {\n font-family: hyperbook-code, monospace;\n font-size: 85%;\n padding: 0.2em 0.4em;\n border-radius: 6px;\n}\n\n.hyperbook-markdown .inline {\n display: inline-flex;\n align-items: center;\n color: var(--color-text);\n border-width: 1px;\n border-style: solid;\n background: var(--color-nav) !important;\n border-color: var(--color-spacer);\n font-family: hyperbook-code, monospace;\n padding: 0em 0.4em 0em 0em;\n border-radius: 6px;\n}\n\n.hyperbook-markdown ul,\n.hyperbook-markdown ol {\n margin-top: 0;\n margin-bottom: 0;\n padding-left: 2em;\n}\n\n.hyperbook-markdown ol ol,\n.hyperbook-markdown ul ol {\n list-style-type: lower-roman;\n}\n\n.hyperbook-markdown ul ul ol,\n.hyperbook-markdown ul ol ol,\n.hyperbook-markdown ol ul ol,\n.hyperbook-markdown ol ol ol {\n list-style-type: lower-alpha;\n}\n\n.hyperbook-markdown ul ul,\n.hyperbook-markdown ul ol,\n.hyperbook-markdown ol ol,\n.hyperbook-markdown ol ul {\n margin-top: 0;\n margin-bottom: 0;\n}\n\n.hyperbook-markdown li + li {\n margin-top: 0.25em;\n}\n\n.hyperbook-markdown li > p {\n margin-top: 16px;\n}\n\n.hyperbook-markdown p,\n.hyperbook-markdown blockquote,\n.hyperbook-markdown ol,\n.hyperbook-markdown ul,\n.hyperbook-markdown table,\n.hyperbook-markdown pre,\n.hyperbook-markdown details {\n margin-top: 0;\n margin-bottom: 10px;\n}\n\n.hyperbook-markdown blockquote {\n width: 90%;\n margin: 20px auto;\n font-style: italic;\n padding: 1.2em 30px 1.2em 75px;\n border-left: 8px solid var(--color-brand);\n line-height: 1.5;\n position: relative;\n background: var(--color-nav);\n}\n\n.hyperbook-markdown blockquote::before {\n content: \"\\201C\";\n color: var(--color-brand);\n font-size: 4em;\n position: absolute;\n left: 10px;\n top: -10px;\n}\n\n.hyperbook-markdown blockquote::after {\n content: \"\";\n}\n\n.hyperbook-markdown table {\n border-width: 1px;\n border-style: solid;\n border-collapse: collapse;\n width: 100%;\n table-layout: fixed;\n}\n\n.hyperbook-markdown table caption {\n font-size: 1.5em;\n margin: 0.5em 0 0.75em;\n}\n\n.hyperbook-markdown table tr {\n border-width: 1px;\n border-style: solid;\n padding: 0.35em;\n}\n\n.hyperbook-markdown table th,\n.hyperbook-markdown table td {\n padding: 0.625em;\n}\n\n.hyperbook-markdown table th {\n font-size: 0.85em;\n letter-spacing: 0.1em;\n text-transform: uppercase;\n}\n\n@media screen and (max-width: 600px) {\n .hyperbook-markdown table {\n border: 0;\n }\n\n .hyperbook-markdown table caption {\n font-size: 1.3em;\n }\n\n .hyperbook-markdown table thead {\n border: none;\n clip: rect(0 0 0 0);\n height: 1px;\n margin: -1px;\n overflow: hidden;\n padding: 0;\n position: absolute;\n width: 1px;\n }\n\n .hyperbook-markdown table tr {\n border-bottom-width: 3px;\n display: block;\n margin-bottom: 0.625em;\n }\n\n .hyperbook-markdown table td {\n border-bottom-width: 1px;\n border-bottom-style: solid;\n display: block;\n font-size: 0.8em;\n text-align: right;\n }\n\n .hyperbook-markdown table td::before {\n /*\n * aria-label has no advantage, it won't be read inside a table\n content: attr(aria-label);\n */\n content: attr(data-label);\n float: left;\n font-weight: bold;\n text-transform: uppercase;\n margin-right: 8px;\n }\n\n .hyperbook-markdown table td:last-child {\n border-bottom: 0;\n }\n}\n\n.hyperbook-markdown h1,\n.hyperbook-markdown h2,\n.hyperbook-markdown h3,\n.hyperbook-markdown h4,\n.hyperbook-markdown h5,\n.hyperbook-markdown h6 {\n font-family: hyperbook-heading, sans-serif;\n margin-top: 24px;\n margin-bottom: 16px;\n font-weight: 600;\n line-height: 1.25;\n}\n\n.hyperbook-markdown h1 {\n font-size: 1.75em;\n font-weight: 700;\n}\n\n.hyperbook-markdown h2 {\n font-weight: 600;\n padding-bottom: 0.3em;\n font-size: 1.5em;\n border-bottom-width: 1px;\n border-bottom-style: solid;\n}\n\n.hyperbook-markdown h3 {\n font-weight: 600;\n font-size: 1.25em;\n}\n\n.hyperbook-markdown h4 {\n font-weight: 600;\n font-size: 1em;\n}\n\n.hyperbook-markdown h5 {\n font-weight: 600;\n font-size: 0.875em;\n}\n\n.hyperbook-markdown h6 {\n font-weight: 600;\n font-size: 0.85em;\n}\n\n.hyperbook-markdown p {\n margin-top: 0;\n margin-bottom: 10px;\n}\n\n.hyperbook-markdown h1,\n.hyperbook-markdown h2,\n.hyperbook-markdown h3,\n.hyperbook-markdown h4,\n.hyperbook-markdown h5,\n.hyperbook-markdown h6 {\n display: flex;\n align-items: center;\n}\n\n.hyperbook-markdown .bookmark {\n margin-left: 10px;\n background: none;\n border: none;\n opacity: 0.5;\n font-size: 16px;\n}\n\n.hyperbook-markdown .bookmark:hover {\n opacity: 1;\n}\n\n.hyperbook-markdown .bookmark.active {\n opacity: 1;\n}\n\n.hyperbook-markdown ul.bookmarks {\n padding-left: 0;\n}\n\n.hyperbook-markdown ul.bookmarks li {\n list-style-type: none;\n}\n\n.hyperbook-markdown pre {\n position: relative;\n}\n\n.hyperbook-markdown pre code.hljs {\n display: block;\n overflow-x: auto;\n padding: 1em;\n}\n\n.hyperbook-markdown pre code {\n display: inline-flex;\n align-items: center;\n color: var(--color-text);\n border-width: 1px;\n border-style: solid;\n}\n\n.hyperbook-markdown button.copy {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n margin-left: 4px;\n background: var(--color-nav);\n border: none;\n padding: 0;\n border-radius: 4px;\n opacity: 0.9;\n}\n\n.hyperbook-markdown button.copy:hover {\n opacity: 1;\n}\n\n.hyperbook-markdown pre > button.copy {\n position: absolute;\n right: 10px;\n top: 10px;\n}\n\n.hyperbook-markdown .toc-toggle > .bar1,\n.hyperbook-markdown .toc-toggle > .bar2,\n.hyperbook-markdown .toc-toggle > .bar3,\n.hyperbook-markdown .toc-toggle > .bar4 {\n background-color: var(--color-text);\n}\n\n.hyperbook-markdown .toc-toggle {\n background: var(--color-background);\n border-color: var(--color-nav-border);\n}\n\n#toc-sidebar {\n display: flex;\n flex-direction: column;\n width: 100%;\n height: calc(var(--app-height) - 80px);\n border-left-width: 1px;\n border-left-style: solid;\n overflow-y: auto;\n}\n\n#toc-sidebar > nav {\n padding: 20px;\n flex: 1;\n}\n\n#toc-sidebar > nav li a {\n display: block;\n}\n\n#toc-sidebar > nav li a:hover {\n text-decoration: underline;\n}\n\n.hyperbook-markdown .toc-toggle {\n position: fixed;\n padding: 4px;\n top: 90px;\n right: 20px;\n border-radius: 50%;\n height: 40px;\n width: 40px;\n border-style: solid;\n border-width: 1px;\n opacity: 0.7;\n z-index: 1000;\n}\n\n.hyperbook-markdown .toc-toggle:hover {\n opacity: 1;\n}\n\n.hyperbook-markdown .toc-toggle > .bar1,\n.hyperbook-markdown .toc-toggle > .bar3 {\n width: 20px;\n height: 2px;\n margin: 2px 3px;\n transition: 0.4s;\n}\n\n.hyperbook-markdown .toc-toggle > .bar2,\n.hyperbook-markdown .toc-toggle > .bar4 {\n width: 25px;\n height: 2px;\n margin: 2px 3px;\n transition: 0.4s;\n}\n\n/*!\n Theme: GitHub\n Description: Light theme as seen on github.com\n Author: github.com\n Maintainer: @Hirse\n Updated: 2021-05-15\n\n Outdated base version: https://github.com/primer/github-syntax-light\n Current colors taken from GitHub's CSS\n*/\n\n.hljs {\n color: #24292e;\n background: #ffffff;\n}\n\n.hljs-doctag,\n.hljs-keyword,\n.hljs-meta .hljs-keyword,\n.hljs-template-tag,\n.hljs-template-variable,\n.hljs-type,\n.hljs-variable.language_ {\n /* prettylights-syntax-keyword */\n color: #d73a49;\n}\n\n.hljs-title,\n.hljs-title.class_,\n.hljs-title.class_.inherited__,\n.hljs-title.function_ {\n /* prettylights-syntax-entity */\n color: #6f42c1;\n}\n\n.hljs-attr,\n.hljs-attribute,\n.hljs-literal,\n.hljs-meta,\n.hljs-number,\n.hljs-operator,\n.hljs-variable,\n.hljs-selector-attr,\n.hljs-selector-class,\n.hljs-selector-id {\n /* prettylights-syntax-constant */\n color: #005cc5;\n}\n\n.hljs-regexp,\n.hljs-string,\n.hljs-meta .hljs-string {\n /* prettylights-syntax-string */\n color: #032f62;\n}\n\n.hljs-built_in,\n.hljs-symbol {\n /* prettylights-syntax-variable */\n color: #e36209;\n}\n\n.hljs-comment,\n.hljs-code,\n.hljs-formula {\n /* prettylights-syntax-comment */\n color: #6a737d;\n}\n\n.hljs-name,\n.hljs-quote,\n.hljs-selector-tag,\n.hljs-selector-pseudo {\n /* prettylights-syntax-entity-tag */\n color: #22863a;\n}\n\n.hljs-subst {\n /* prettylights-syntax-storage-modifier-import */\n color: #24292e;\n}\n\n.hljs-section {\n /* prettylights-syntax-markup-heading */\n color: #005cc5;\n font-weight: bold;\n}\n\n.hljs-bullet {\n /* prettylights-syntax-markup-list */\n color: #735c0f;\n}\n\n.hljs-emphasis {\n /* prettylights-syntax-markup-italic */\n color: #24292e;\n font-style: italic;\n}\n\n.hljs-strong {\n /* prettylights-syntax-markup-bold */\n color: #24292e;\n font-weight: bold;\n}\n\n.hljs-addition {\n /* prettylights-syntax-markup-inserted */\n color: #22863a;\n background-color: #f0fff4;\n}\n\n.hljs-deletion {\n /* prettylights-syntax-markup-deleted */\n color: #b31d28;\n background-color: #ffeef0;\n}\n\n.hljs-char.escape_,\n.hljs-link,\n.hljs-params,\n.hljs-property,\n.hljs-punctuation,\n.hljs-tag {\n /* purposely ignored */\n}\n\n/*!\n Theme: GitHub Dark\n Description: Dark theme as seen on github.com\n Author: github.com\n Maintainer: @Hirse\n Updated: 2021-05-15\n\n Outdated base version: https://github.com/primer/github-syntax-dark\n Current colors taken from GitHub's CSS\n*/\n\n@media (prefers-color-scheme: dark) {\n .hljs {\n color: #c9d1d9;\n background: #0d1117;\n }\n\n .hljs-doctag,\n .hljs-keyword,\n .hljs-meta .hljs-keyword,\n .hljs-template-tag,\n .hljs-template-variable,\n .hljs-type,\n .hljs-variable.language_ {\n /* prettylights-syntax-keyword */\n color: #ff7b72;\n }\n\n .hljs-title,\n .hljs-title.class_,\n .hljs-title.class_.inherited__,\n .hljs-title.function_ {\n /* prettylights-syntax-entity */\n color: #d2a8ff;\n }\n\n .hljs-attr,\n .hljs-attribute,\n .hljs-literal,\n .hljs-meta,\n .hljs-number,\n .hljs-operator,\n .hljs-variable,\n .hljs-selector-attr,\n .hljs-selector-class,\n .hljs-selector-id {\n /* prettylights-syntax-constant */\n color: #79c0ff;\n }\n\n .hljs-regexp,\n .hljs-string,\n .hljs-meta .hljs-string {\n /* prettylights-syntax-string */\n color: #a5d6ff;\n }\n\n .hljs-built_in,\n .hljs-symbol {\n /* prettylights-syntax-variable */\n color: #ffa657;\n }\n\n .hljs-comment,\n .hljs-code,\n .hljs-formula {\n /* prettylights-syntax-comment */\n color: #8b949e;\n }\n\n .hljs-name,\n .hljs-quote,\n .hljs-selector-tag,\n .hljs-selector-pseudo {\n /* prettylights-syntax-entity-tag */\n color: #7ee787;\n }\n\n .hljs-subst {\n /* prettylights-syntax-storage-modifier-import */\n color: #c9d1d9;\n }\n\n .hljs-section {\n /* prettylights-syntax-markup-heading */\n color: #1f6feb;\n font-weight: bold;\n }\n\n .hljs-bullet {\n /* prettylights-syntax-markup-list */\n color: #f2cc60;\n }\n\n .hljs-emphasis {\n /* prettylights-syntax-markup-italic */\n color: #c9d1d9;\n font-style: italic;\n }\n\n .hljs-strong {\n /* prettylights-syntax-markup-bold */\n color: #c9d1d9;\n font-weight: bold;\n }\n\n .hljs-addition {\n /* prettylights-syntax-markup-inserted */\n color: #aff5b4;\n background-color: #033a16;\n }\n\n .hljs-deletion {\n /* prettylights-syntax-markup-deleted */\n color: #ffdcd7;\n background-color: #67060c;\n }\n\n .hljs-char.escape_,\n .hljs-link,\n .hljs-params,\n .hljs-property,\n .hljs-punctuation,\n .hljs-tag {\n /* purposely ignored */\n }\n}\n"],
5
- "mappings": "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",
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
package/dist/index.js CHANGED
@@ -73,7 +73,9 @@ var copyNoNavigator = (text) => {
73
73
  };
74
74
  var Code = ({
75
75
  children,
76
- className
76
+ className,
77
+ node,
78
+ ...props
77
79
  }) => {
78
80
  const directives = useDirectives();
79
81
  if (className === "language-mermaid" && directives["mermaid"]) {
@@ -101,7 +103,7 @@ var Code = ({
101
103
  }
102
104
  }
103
105
  };
104
- return !className ? /* @__PURE__ */ jsxs("span", { className: "inline", children: [
106
+ return className === void 0 ? /* @__PURE__ */ jsxs("span", { className: "inline", children: [
105
107
  /* @__PURE__ */ jsx("code", { ref, className, children }),
106
108
  /* @__PURE__ */ jsx("button", { className: "copy", onClick: copyCode, "aria-label": "Copy Code", children: copied ? /* @__PURE__ */ jsx(MdDone, {}) : /* @__PURE__ */ jsx(MdContentCopy, {}) })
107
109
  ] }) : /* @__PURE__ */ jsxs(Fragment, { children: [
@@ -128,11 +130,7 @@ function formatUrl(url) {
128
130
  ).join("//<wbr>");
129
131
  return formatted;
130
132
  }
131
- var Link = ({
132
- href,
133
- title,
134
- children
135
- }) => {
133
+ var Link = ({ href, title, children }) => {
136
134
  const L = useLink();
137
135
  const config = useConfig();
138
136
  const [isExternal, setIsExternal] = useState2(false);
@@ -159,30 +157,18 @@ var Link = ({
159
157
  import { jsx as jsx3 } from "react/jsx-runtime";
160
158
  var tableHeaders = [];
161
159
  var tdIndex = 0;
162
- var Table = ({
163
- children,
164
- style
165
- }) => {
160
+ var Table = ({ children, style }) => {
166
161
  tableHeaders = [];
167
162
  return /* @__PURE__ */ jsx3("table", { style, children });
168
163
  };
169
- var Tr = ({
170
- children,
171
- style
172
- }) => {
164
+ var Tr = ({ children, style }) => {
173
165
  tdIndex = 0;
174
166
  return /* @__PURE__ */ jsx3("tr", { style, children });
175
167
  };
176
- var Td = ({
177
- children,
178
- style
179
- }) => {
168
+ var Td = ({ children, style }) => {
180
169
  return /* @__PURE__ */ jsx3("td", { "data-label": tableHeaders[tdIndex++], style, children });
181
170
  };
182
- var Th = ({
183
- children,
184
- style
185
- }) => {
171
+ var Th = ({ children, style }) => {
186
172
  tableHeaders.push(children);
187
173
  return /* @__PURE__ */ jsx3("th", { style, children });
188
174
  };
@@ -235,11 +221,7 @@ var Headings = (level) => ({ children, id }) => {
235
221
  import { useMakeUrl } from "@hyperbook/provider";
236
222
  import { useState as useState3 } from "react";
237
223
  import { Fragment as Fragment3, jsx as jsx5, jsxs as jsxs3 } from "react/jsx-runtime";
238
- var Image = ({
239
- src,
240
- title,
241
- alt
242
- }) => {
224
+ var Image = ({ src, title, alt }) => {
243
225
  const makeUrl = useMakeUrl();
244
226
  const [full, setFull] = useState3(false);
245
227
  src = makeUrl(src, "public");
@@ -299,7 +281,7 @@ var remarkCustomHeadingIds = () => {
299
281
  };
300
282
 
301
283
  // src/useRemarkSync.ts
302
- import { Fragment as Fragment4, createElement } from "react";
284
+ import * as prod from "react/jsx-runtime";
303
285
  import { unified } from "unified";
304
286
  import remarkParse from "remark-parse";
305
287
  import remarkToRehype from "remark-rehype";
@@ -310,8 +292,9 @@ var useRemarkSync = (source, {
310
292
  remarkPlugins = [],
311
293
  rehypePlugins = []
312
294
  } = {}) => unified().use(remarkParse).use(remarkPlugins).use(remarkToRehype, remarkToRehypeOptions).use(rehypePlugins).use(rehypeReact, {
313
- createElement,
314
- Fragment: Fragment4,
295
+ Fragment: prod.Fragment,
296
+ jsx: prod.jsx,
297
+ jsxs: prod.jsxs,
315
298
  ...rehypeReactOptions
316
299
  }).processSync(source).result;
317
300
 
@@ -357,7 +340,7 @@ var useToc = (markdown) => {
357
340
 
358
341
  // src/Markdown.tsx
359
342
  import { Fragment as Fragment5, useState as useState4 } from "react";
360
- import { jsx as jsx6, jsxs as jsxs4 } from "react/jsx-runtime";
343
+ import { jsx as jsx7, jsxs as jsxs5 } from "react/jsx-runtime";
361
344
  var Markdown = ({ children, showToc = true }) => {
362
345
  const directives = useDirectives2();
363
346
  const toc = useToc(children);
@@ -394,32 +377,35 @@ var Markdown = ({ children, showToc = true }) => {
394
377
  ],
395
378
  rehypePlugins: [
396
379
  rehypeKatex,
397
- [rehypeHighlight, { ignoreMissing: true, plainText: ["mermaid"] }]
380
+ [
381
+ rehypeHighlight,
382
+ { ignoreMissing: true, plainText: ["mermaid"], detect: true }
383
+ ]
398
384
  ]
399
385
  });
400
- return /* @__PURE__ */ jsxs4("div", { className: "hyperbook-markdown", children: [
401
- showToc && /* @__PURE__ */ jsxs4(Fragment5, { children: [
402
- /* @__PURE__ */ jsxs4(
386
+ return /* @__PURE__ */ jsxs5("div", { className: "hyperbook-markdown", children: [
387
+ showToc && /* @__PURE__ */ jsxs5(Fragment5, { children: [
388
+ /* @__PURE__ */ jsxs5(
403
389
  "button",
404
390
  {
405
391
  className: isTocOpen ? "toc-toggle open" : "toc-toggle",
406
392
  onClick: () => setIsTocOpen(!isTocOpen),
407
393
  title: "Table of Contents",
408
394
  children: [
409
- /* @__PURE__ */ jsx6("div", { className: "bar1" }),
410
- /* @__PURE__ */ jsx6("div", { className: "bar2" }),
411
- /* @__PURE__ */ jsx6("div", { className: "bar3" }),
412
- /* @__PURE__ */ jsx6("div", { className: "bar4" })
395
+ /* @__PURE__ */ jsx7("div", { className: "bar1" }),
396
+ /* @__PURE__ */ jsx7("div", { className: "bar2" }),
397
+ /* @__PURE__ */ jsx7("div", { className: "bar3" }),
398
+ /* @__PURE__ */ jsx7("div", { className: "bar4" })
413
399
  ]
414
400
  }
415
401
  ),
416
- /* @__PURE__ */ jsx6(
402
+ /* @__PURE__ */ jsx7(
417
403
  Drawer,
418
404
  {
419
405
  isOpen: isTocOpen,
420
406
  onClose: () => setIsTocOpen(false),
421
407
  position: "right",
422
- children: /* @__PURE__ */ jsx6("div", { id: "toc-sidebar", children: /* @__PURE__ */ jsx6("nav", { className: "toc", children: /* @__PURE__ */ jsx6("ul", { children: toc.map((h, i) => /* @__PURE__ */ jsx6("li", { className: `level-${h.level}`, children: /* @__PURE__ */ jsx6("a", { href: `#${h.anchor}`, children: h.label }) }, i)) }) }) })
408
+ children: /* @__PURE__ */ jsx7("div", { id: "toc-sidebar", children: /* @__PURE__ */ jsx7("nav", { className: "toc", children: /* @__PURE__ */ jsx7("ul", { children: toc.map((h, i) => /* @__PURE__ */ jsx7("li", { className: `level-${h.level}`, children: /* @__PURE__ */ jsx7("a", { href: `#${h.anchor}`, children: h.label }) }, i)) }) }) })
423
409
  }
424
410
  )
425
411
  ] }),
package/dist/index.js.map CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/Markdown.tsx", "../src/Code.tsx", "../src/Link.tsx", "../src/Table.tsx", "../src/Headings.tsx", "../src/Image.tsx", "../src/remarkRemoveComments.ts", "../src/remarkCustomHeadingIds.ts", "../src/useRemarkSync.ts", "../src/useToc.ts", "../src/remarkHeadings.ts"],
4
- "sourcesContent": ["import remarkDirective from \"remark-directive\";\nimport remarkDirectiveRehype from \"remark-directive-rehype\";\nimport remarkGfm from \"remark-gfm\";\nimport remarkMath from \"remark-math\";\nimport remarkGemoji from \"remark-gemoji\";\nimport remarkUnwrapImages from \"remark-unwrap-images\";\nimport rehypeKatex from \"rehype-katex\";\nimport rehypeHighlight from \"rehype-highlight\";\nimport { useDirectives } from \"@hyperbook/provider\";\nimport { Drawer } from \"@hyperbook/drawer\";\nimport { Code } from \"./Code\";\nimport { Link } from \"./Link\";\nimport { Table, Td, Th, Tr } from \"./Table\";\nimport { Headings } from \"./Headings\";\nimport { Image } from \"./Image\";\n\nimport \"./index.css\";\nimport { remarkRemoveComments } from \"./remarkRemoveComments\";\nimport { remarkCustomHeadingIds } from \"./remarkCustomHeadingIds\";\nimport { useRemarkSync } from \"./useRemarkSync\";\nimport { useToc } from \"./useToc\";\nimport { Fragment, useState } from \"react\";\n\nexport type MarkdownProps = {\n children: string;\n showToc?: boolean;\n};\n\nexport const Markdown = ({ children, showToc = true }: MarkdownProps) => {\n const directives = useDirectives();\n\n const toc = useToc(children);\n const [isTocOpen, setIsTocOpen] = useState(false);\n const reactContent = useRemarkSync(children, {\n rehypeReactOptions: {\n passNode: true,\n components: {\n ...directives,\n a: Link,\n code: Code,\n td: Td,\n th: Th,\n table: Table,\n tr: Tr,\n h1: Headings(1),\n h2: Headings(2),\n h3: Headings(3),\n h4: Headings(4),\n h5: Headings(5),\n h6: Headings(6),\n img: Image,\n },\n },\n remarkPlugins: [\n remarkRemoveComments,\n remarkCustomHeadingIds,\n remarkGfm,\n remarkDirective,\n remarkDirectiveRehype,\n remarkMath,\n remarkGemoji,\n remarkUnwrapImages,\n ],\n rehypePlugins: [\n rehypeKatex,\n [rehypeHighlight, { ignoreMissing: true, plainText: [\"mermaid\"] }],\n ],\n });\n\n return (\n <div className=\"hyperbook-markdown\">\n {showToc && (\n <Fragment>\n <button\n className={isTocOpen ? \"toc-toggle open\" : \"toc-toggle\"}\n onClick={() => setIsTocOpen(!isTocOpen)}\n title=\"Table of Contents\"\n >\n <div className=\"bar1\"></div>\n <div className=\"bar2\"></div>\n <div className=\"bar3\"></div>\n <div className=\"bar4\"></div>\n </button>\n <Drawer\n isOpen={isTocOpen}\n onClose={() => setIsTocOpen(false)}\n position=\"right\"\n >\n <div id=\"toc-sidebar\">\n <nav className=\"toc\">\n <ul>\n {toc.map((h, i) => (\n <li key={i} className={`level-${h.level}`}>\n <a href={`#${h.anchor}`}>{h.label}</a>\n </li>\n ))}\n </ul>\n </nav>\n </div>\n </Drawer>\n </Fragment>\n )}\n {reactContent}\n </div>\n );\n};\n", "import { useDirectives } from \"@hyperbook/provider\";\nimport { ComponentType, Fragment, useRef, useState } from \"react\";\n\nconst MdContentCopy = () => {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n stroke=\"currentColor\"\n fill=\"currentColor\"\n strokeWidth=\"0\"\n height=\"1em\"\n width=\"1em\"\n viewBox=\"0 0 24 24\"\n >\n <path d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z\" />\n </svg>\n );\n};\n\nconst MdDone = () => {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n stroke=\"currentColor\"\n fill=\"currentColor\"\n strokeWidth=\"0\"\n height=\"1em\"\n width=\"1em\"\n viewBox=\"0 0 24 24\"\n >\n <path d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M9 16.2L4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4L9 16.2z\" />\n </svg>\n );\n};\n\nconst copyNoNavigator = (text: string) => {\n const isIos = navigator.userAgent.match(/ipad|iphone/i);\n const textarea = document.createElement(\"textarea\");\n\n // create textarea\n textarea.value = text;\n\n // ios will zoom in on the input if the font-size is < 16px\n textarea.style.fontSize = \"20px\";\n document.body.appendChild(textarea);\n\n // select text\n if (isIos) {\n const range = document.createRange();\n range.selectNodeContents(textarea);\n\n const selection = window.getSelection();\n if (selection) {\n selection.removeAllRanges();\n selection.addRange(range);\n }\n textarea.setSelectionRange(0, 999999);\n } else {\n textarea.select();\n }\n\n // copy selection\n document.execCommand(\"copy\");\n\n // cleanup\n document.body.removeChild(textarea);\n};\n\nexport const Code: ComponentType<JSX.IntrinsicElements[\"code\"]> = ({\n children,\n className,\n}) => {\n const directives = useDirectives();\n if (className === \"language-mermaid\" && directives[\"mermaid\"]) {\n const Mermaid = directives[\"mermaid\"];\n return <Mermaid children={children} />;\n }\n\n const ref = useRef<HTMLElement>(null);\n const [copied, setCopied] = useState(false);\n const copyCode = () => {\n if (ref.current) {\n const text = ref.current.innerText;\n if (navigator.clipboard) {\n navigator.clipboard\n .writeText(text)\n .then(() => {\n setCopied(true);\n setTimeout(() => setCopied(false), 2000);\n })\n .catch(() => {\n copyNoNavigator(text);\n setCopied(true);\n setTimeout(() => setCopied(false), 2000);\n });\n } else {\n copyNoNavigator(text);\n setCopied(true);\n setTimeout(() => setCopied(false), 2000);\n }\n }\n };\n\n return !className ? (\n <span className=\"inline\">\n <code ref={ref} className={className}>\n {children}\n </code>\n <button className=\"copy\" onClick={copyCode} aria-label=\"Copy Code\">\n {copied ? <MdDone /> : <MdContentCopy />}\n </button>\n </span>\n ) : (\n <Fragment>\n <code ref={ref} className={className}>\n {children}\n </code>\n <button className=\"copy\" onClick={copyCode} aria-label=\"Copy Code\">\n {copied ? <MdDone /> : <MdContentCopy />}\n </button>\n </Fragment>\n );\n};\n", "import { useConfig, useLink } from \"@hyperbook/provider\";\nimport { ComponentType, ReactNode, useEffect, useState } from \"react\";\n\n// see: https://css-tricks.com/better-line-breaks-for-long-urls/\nfunction formatUrl(url: ReactNode) {\n if (typeof url !== \"string\") {\n return url;\n }\n // Split the URL into an array to distinguish double slashes from single slashes\n var doubleSlash = url.split(\"//\");\n\n // Format the strings on either side of double slashes separately\n var formatted = doubleSlash\n .map(\n (str) =>\n // Insert a word break opportunity after a colon\n str\n .replace(/(?<after>:)/giu, \"$1<wbr>\")\n // Before a single slash, tilde, period, comma, hyphen, underline, question mark, number sign, or percent symbol\n .replace(/(?<before>[/~.,\\-_?#%])/giu, \"<wbr>$1\")\n // Before and after an equals sign or ampersand\n .replace(/(?<beforeAndAfter>[=&])/giu, \"<wbr>$1<wbr>\")\n // Reconnect the strings with word break opportunities after double slashes\n )\n .join(\"//<wbr>\");\n\n return formatted;\n}\n\nexport const Link: ComponentType<JSX.IntrinsicElements[\"a\"]> = ({\n href,\n title,\n children,\n}) => {\n const L = useLink();\n const config = useConfig();\n const [isExternal, setIsExternal] = useState(false);\n\n useEffect(() => {\n if (href) {\n const tmp = document.createElement(\"a\");\n tmp.href = href;\n if (tmp.host !== window.location.host) {\n setIsExternal(true);\n } else if (\n config.basePath &&\n !window.location.pathname?.startsWith(config.basePath)\n ) {\n setIsExternal(true);\n } else {\n setIsExternal(false);\n }\n }\n }, [href, config]);\n\n if (isExternal) {\n <L href={href} title={title} target=\"_blank\">\n {formatUrl(children)}\n </L>;\n }\n\n return (\n <L href={href} title={title}>\n {formatUrl(children)}\n </L>\n );\n};\n", "import { ComponentType, ReactNode } from \"react\";\n\nlet tableHeaders: ReactNode[] = [];\nlet tdIndex = 0;\n\nexport const Table: ComponentType<JSX.IntrinsicElements[\"table\"]> = ({\n children,\n style,\n}) => {\n tableHeaders = [];\n return <table style={style}>{children}</table>;\n};\n\nexport const Tr: ComponentType<JSX.IntrinsicElements[\"tr\"]> = ({\n children,\n style,\n}) => {\n tdIndex = 0;\n return <tr style={style}>{children}</tr>;\n};\n\nexport const Td: ComponentType<JSX.IntrinsicElements[\"td\"]> = ({\n children,\n style,\n}) => {\n return (\n <td data-label={tableHeaders[tdIndex++]} style={style}>\n {children}\n </td>\n );\n};\n\nexport const Th: ComponentType<JSX.IntrinsicElements[\"th\"]> = ({\n children,\n style,\n}) => {\n tableHeaders.push(children);\n return <th style={style}>{children}</th>;\n};\n", "import { useBookmark, useConfig } from \"@hyperbook/provider\";\nimport { ComponentType } from \"react\";\n\nexport const makeAnchor = (heading: string) => {\n // If we have a heading, make it lower case\n let anchor = heading.toLowerCase();\n\n // Clean anchor (replace special characters whitespaces).\n // Alternatively, use encodeURIComponent() if you don't care about\n // pretty anchor links\n anchor = anchor.replace(/[^a-zA-Z0-9 ]/g, \"\");\n anchor = anchor.replace(/ /g, \"-\");\n\n return anchor;\n};\n\nexport const Headings =\n (level: number): ComponentType<JSX.IntrinsicElements[\"h1\"]> =>\n ({ children, id }) => {\n const config = useConfig();\n const bookmarksConfig = config?.elements?.bookmarks;\n // Access actual (string) value of heading\n const heading = (children as any)?.[0] || \"\";\n\n // If we have a heading, make it lower case\n let anchor = typeof heading === \"string\" ? makeAnchor(heading) : \"\";\n\n const label = typeof heading === \"string\" ? heading : anchor;\n\n const [bookmark, toggleBookmark] = useBookmark(anchor, label);\n\n // Utility\n const container = (children: React.ReactNode): JSX.Element => (\n <>\n <a className=\"heading\" id={id ?? anchor} href={`#${id ?? anchor}`}>\n <span>{children}</span>\n </a>\n {bookmarksConfig !== false && (\n <button\n className={bookmark ? \"bookmark active\" : \"bookmark\"}\n onClick={() => toggleBookmark()}\n title=\"Bookmark\"\n >\n \uD83D\uDD16\n </button>\n )}\n </>\n );\n\n switch (level) {\n case 1:\n return <h1>{container(children)}</h1>;\n case 2:\n return <h2>{container(children)}</h2>;\n case 3:\n return <h3>{container(children)}</h3>;\n case 4:\n return <h4>{container(children)}</h4>;\n case 5:\n return <h5>{container(children)}</h5>;\n\n default:\n return <h6>{container(children)}</h6>;\n }\n };\n", "import { useMakeUrl } from \"@hyperbook/provider\";\nimport { ComponentType, useState } from \"react\";\n\nexport const Image: ComponentType<JSX.IntrinsicElements[\"img\"]> = ({\n src,\n title,\n alt,\n}) => {\n const makeUrl = useMakeUrl();\n const [full, setFull] = useState(false);\n src = makeUrl(src, \"public\");\n\n return (\n <>\n {full && (\n <figure className={\"lightbox\"}>\n <img src={src} alt={alt} onClick={() => setFull((f) => !f)} />\n {title && <figcaption>{title}</figcaption>}\n </figure>\n )}\n <figure className={\"normal\"}>\n <img src={src} alt={alt} onClick={() => setFull((f) => !f)} />\n {title && <figcaption>{title}</figcaption>}\n </figure>\n </>\n );\n};\n", "//@ts-nocheck\nimport { visit, SKIP } from \"unist-util-visit\";\nimport { Transformer } from \"unified\";\nimport { BuildVisitor } from \"unist-util-visit/complex-types\";\n\nexport const remarkRemoveComments: () => Transformer = () => (tree) => {\n const htmlCommentRegex = /<!--([\\s\\S]*?)-->/g;\n\n const handler: BuildVisitor = (node, index, parent) => {\n const isComment = node.value.match(htmlCommentRegex);\n\n if (isComment) {\n // remove node\n parent.children.splice(index, 1);\n // Do not traverse `node`, continue at the node *now* at `index`. http://unifiedjs.com/learn/recipe/remove-node/\n return [SKIP, index];\n }\n };\n\n visit(tree, \"html\", handler);\n\n visit(tree, \"jsx\", handler);\n};\n", "import { visit } from \"unist-util-visit\";\nimport { Transformer } from \"unified\";\nimport { Heading } from \"mdast\";\n\nexport const remarkCustomHeadingIds: () => Transformer = () => {\n return function (node) {\n visit(node, \"heading\", (node: Heading) => {\n let lastChild = node.children[node.children.length - 1];\n if (lastChild && lastChild.type === \"text\") {\n let string = lastChild.value.replace(/ +$/, \"\");\n let matched = string.match(/ {#([^]+?)}$/);\n\n if (matched) {\n let id = matched[1];\n if (!!id.length) {\n if (!node.data) {\n node.data = {};\n }\n if (!node.data.hProperties) {\n node.data.hProperties = {};\n }\n node.data.id = node.data.hProperties.id = id;\n\n string = string.substring(0, matched.index);\n lastChild.value = string;\n }\n }\n }\n });\n };\n};\n", "import { Fragment, ReactElement, createElement } from \"react\";\nimport { PluggableList, unified } from \"unified\";\nimport remarkParse from \"remark-parse\";\nimport { Options as RemarkRehypeOptions } from \"mdast-util-to-hast\";\nimport remarkToRehype from \"remark-rehype\";\nimport rehypeReact, { Options as RehypeReactOptions } from \"rehype-react\";\n\ntype PartialBy<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;\n\nexport interface UseRemarkSyncOptions {\n remarkToRehypeOptions?: RemarkRehypeOptions;\n rehypeReactOptions?: PartialBy<RehypeReactOptions, \"createElement\">;\n remarkPlugins?: PluggableList;\n rehypePlugins?: PluggableList;\n}\n\nexport const useRemarkSync = (\n source: string,\n {\n remarkToRehypeOptions,\n rehypeReactOptions,\n remarkPlugins = [],\n rehypePlugins = [],\n }: UseRemarkSyncOptions = {}\n): ReactElement =>\n unified()\n .use(remarkParse)\n .use(remarkPlugins)\n .use(remarkToRehype, remarkToRehypeOptions)\n .use(rehypePlugins)\n .use(rehypeReact, {\n createElement,\n Fragment,\n ...rehypeReactOptions,\n } as RehypeReactOptions)\n .processSync(source).result as ReactElement;\n", "import remarkParse from \"remark-parse\";\nimport remarkStringify from \"remark-stringify\";\nimport { unified } from \"unified\";\nimport { remarkCustomHeadingIds } from \"./remarkCustomHeadingIds\";\nimport { Heading, remarkHeadings } from \"./remarkHeadings\";\n\nexport const useToc = (markdown: string): Heading[] => {\n return unified()\n .use(remarkParse)\n .use(remarkCustomHeadingIds)\n .use(remarkHeadings)\n .use(remarkStringify)\n .processSync(markdown).data.headings;\n};\n", "import { Plugin } from \"unified\";\nimport { Root as MdastRoot, Heading as AstHeading } from \"mdast\";\nimport { Root as HastRoot } from \"hast\";\nimport { visit } from \"unist-util-visit\";\nimport { toString } from \"mdast-util-to-string\";\n\nexport interface Heading {\n level: number;\n label: string;\n anchor: string;\n}\n\nconst getAnchor = (heading: AstHeading): string => {\n // If we have a heading, make it lower case\n if (heading?.data?.id) {\n return heading.data.id as string;\n }\n\n let anchor = toString(heading, { includeImageAlt: false }).toLowerCase();\n\n // Clean anchor (replace special characters whitespaces).\n // Alternatively, use encodeURIComponent() if you don't care about\n // pretty anchor links\n anchor = anchor.replace(/[^a-zA-Z0-9 ]/g, \"\");\n anchor = anchor.replace(/ /g, \"-\");\n\n return anchor;\n};\n\nconst headings = (root: MdastRoot) => {\n const headingList: Heading[] = [];\n\n visit(root, \"heading\", (node: AstHeading) => {\n const heading: Heading = {\n level: node.depth,\n label: toString(node, { includeImageAlt: false }),\n anchor: getAnchor(node),\n };\n\n headingList.push(heading);\n });\n\n return headingList;\n};\n\nexport const remarkHeadings: Plugin<[], MdastRoot, HastRoot> = () => {\n return (tree, file) => {\n file.data.headings = headings(tree);\n };\n};\n"],
5
- "mappings": "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",
6
- "names": ["useDirectives", "useState", "jsx", "jsx", "useConfig", "Fragment", "jsx", "jsxs", "children", "useState", "Fragment", "jsx", "jsxs", "visit", "node", "Fragment", "remarkParse", "unified", "visit", "unified", "remarkParse", "Fragment", "useState", "jsx", "jsxs", "useDirectives"]
4
+ "sourcesContent": ["import remarkDirective from \"remark-directive\";\nimport remarkDirectiveRehype from \"remark-directive-rehype\";\nimport remarkGfm from \"remark-gfm\";\nimport remarkMath from \"remark-math\";\nimport remarkGemoji from \"remark-gemoji\";\nimport remarkUnwrapImages from \"remark-unwrap-images\";\nimport rehypeKatex from \"rehype-katex\";\nimport rehypeHighlight from \"rehype-highlight\";\nimport { useDirectives } from \"@hyperbook/provider\";\nimport { Drawer } from \"@hyperbook/drawer\";\nimport { Code } from \"./Code\";\nimport { Link } from \"./Link\";\nimport { Table, Td, Th, Tr } from \"./Table\";\nimport { Headings } from \"./Headings\";\nimport { Image } from \"./Image\";\n\nimport \"./index.css\";\nimport { remarkRemoveComments } from \"./remarkRemoveComments\";\nimport { remarkCustomHeadingIds } from \"./remarkCustomHeadingIds\";\nimport { useRemarkSync } from \"./useRemarkSync\";\nimport { useToc } from \"./useToc\";\nimport { Fragment, useState } from \"react\";\n\nexport type MarkdownProps = {\n children: string;\n showToc?: boolean;\n};\n\nexport const Markdown = ({ children, showToc = true }: MarkdownProps) => {\n const directives = useDirectives();\n\n const toc = useToc(children);\n const [isTocOpen, setIsTocOpen] = useState(false);\n const reactContent = useRemarkSync(children, {\n rehypeReactOptions: {\n passNode: true,\n components: {\n ...directives,\n a: Link,\n code: Code,\n td: Td,\n th: Th,\n table: Table,\n tr: Tr,\n h1: Headings(1),\n h2: Headings(2),\n h3: Headings(3),\n h4: Headings(4),\n h5: Headings(5),\n h6: Headings(6),\n img: Image,\n },\n },\n remarkPlugins: [\n remarkRemoveComments,\n remarkCustomHeadingIds,\n remarkGfm,\n remarkDirective,\n remarkDirectiveRehype,\n remarkMath,\n remarkGemoji,\n remarkUnwrapImages,\n ],\n rehypePlugins: [\n rehypeKatex,\n [\n rehypeHighlight,\n { ignoreMissing: true, plainText: [\"mermaid\"], detect: true },\n ],\n ],\n });\n\n return (\n <div className=\"hyperbook-markdown\">\n {showToc && (\n <Fragment>\n <button\n className={isTocOpen ? \"toc-toggle open\" : \"toc-toggle\"}\n onClick={() => setIsTocOpen(!isTocOpen)}\n title=\"Table of Contents\"\n >\n <div className=\"bar1\"></div>\n <div className=\"bar2\"></div>\n <div className=\"bar3\"></div>\n <div className=\"bar4\"></div>\n </button>\n <Drawer\n isOpen={isTocOpen}\n onClose={() => setIsTocOpen(false)}\n position=\"right\"\n >\n <div id=\"toc-sidebar\">\n <nav className=\"toc\">\n <ul>\n {toc.map((h, i) => (\n <li key={i} className={`level-${h.level}`}>\n <a href={`#${h.anchor}`}>{h.label}</a>\n </li>\n ))}\n </ul>\n </nav>\n </div>\n </Drawer>\n </Fragment>\n )}\n {reactContent}\n </div>\n );\n};\n", "import { useDirectives } from \"@hyperbook/provider\";\nimport { Fragment, useRef, useState } from \"react\";\nimport type { Components } from \"hast-util-to-jsx-runtime\";\n\nconst MdContentCopy = () => {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n stroke=\"currentColor\"\n fill=\"currentColor\"\n strokeWidth=\"0\"\n height=\"1em\"\n width=\"1em\"\n viewBox=\"0 0 24 24\"\n >\n <path d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z\" />\n </svg>\n );\n};\n\nconst MdDone = () => {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n stroke=\"currentColor\"\n fill=\"currentColor\"\n strokeWidth=\"0\"\n height=\"1em\"\n width=\"1em\"\n viewBox=\"0 0 24 24\"\n >\n <path d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M9 16.2L4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4L9 16.2z\" />\n </svg>\n );\n};\n\nconst copyNoNavigator = (text: string) => {\n const isIos = navigator.userAgent.match(/ipad|iphone/i);\n const textarea = document.createElement(\"textarea\");\n\n // create textarea\n textarea.value = text;\n\n // ios will zoom in on the input if the font-size is < 16px\n textarea.style.fontSize = \"20px\";\n document.body.appendChild(textarea);\n\n // select text\n if (isIos) {\n const range = document.createRange();\n range.selectNodeContents(textarea);\n\n const selection = window.getSelection();\n if (selection) {\n selection.removeAllRanges();\n selection.addRange(range);\n }\n textarea.setSelectionRange(0, 999999);\n } else {\n textarea.select();\n }\n\n // copy selection\n document.execCommand(\"copy\");\n\n // cleanup\n document.body.removeChild(textarea);\n};\n\nexport const Code: Components[\"code\"] = ({\n children,\n className,\n node,\n ...props\n}) => {\n const directives = useDirectives();\n if (className === \"language-mermaid\" && directives[\"mermaid\"]) {\n const Mermaid = directives[\"mermaid\"];\n return <Mermaid children={children} />;\n }\n\n const ref = useRef<HTMLElement>(null);\n const [copied, setCopied] = useState(false);\n const copyCode = () => {\n if (ref.current) {\n const text = ref.current.innerText;\n if (navigator.clipboard) {\n navigator.clipboard\n .writeText(text)\n .then(() => {\n setCopied(true);\n setTimeout(() => setCopied(false), 2000);\n })\n .catch(() => {\n copyNoNavigator(text);\n setCopied(true);\n setTimeout(() => setCopied(false), 2000);\n });\n } else {\n copyNoNavigator(text);\n setCopied(true);\n setTimeout(() => setCopied(false), 2000);\n }\n }\n };\n\n return className === undefined ? (\n <span className=\"inline\">\n <code ref={ref} className={className}>\n {children}\n </code>\n <button className=\"copy\" onClick={copyCode} aria-label=\"Copy Code\">\n {copied ? <MdDone /> : <MdContentCopy />}\n </button>\n </span>\n ) : (\n <Fragment>\n <code ref={ref} className={className}>\n {children}\n </code>\n <button className=\"copy\" onClick={copyCode} aria-label=\"Copy Code\">\n {copied ? <MdDone /> : <MdContentCopy />}\n </button>\n </Fragment>\n );\n};\n", "import { useConfig, useLink } from \"@hyperbook/provider\";\nimport type { Components } from \"hast-util-to-jsx-runtime\";\nimport { ReactNode, useEffect, useState } from \"react\";\n\n// see: https://css-tricks.com/better-line-breaks-for-long-urls/\nfunction formatUrl(url: ReactNode) {\n if (typeof url !== \"string\") {\n return url;\n }\n // Split the URL into an array to distinguish double slashes from single slashes\n var doubleSlash = url.split(\"//\");\n\n // Format the strings on either side of double slashes separately\n var formatted = doubleSlash\n .map(\n (str) =>\n // Insert a word break opportunity after a colon\n str\n .replace(/(?<after>:)/giu, \"$1<wbr>\")\n // Before a single slash, tilde, period, comma, hyphen, underline, question mark, number sign, or percent symbol\n .replace(/(?<before>[/~.,\\-_?#%])/giu, \"<wbr>$1\")\n // Before and after an equals sign or ampersand\n .replace(/(?<beforeAndAfter>[=&])/giu, \"<wbr>$1<wbr>\")\n // Reconnect the strings with word break opportunities after double slashes\n )\n .join(\"//<wbr>\");\n\n return formatted;\n}\n\nexport const Link: Components[\"a\"] = ({ href, title, children }) => {\n const L = useLink();\n const config = useConfig();\n const [isExternal, setIsExternal] = useState(false);\n\n useEffect(() => {\n if (href) {\n const tmp = document.createElement(\"a\");\n tmp.href = href;\n if (tmp.host !== window.location.host) {\n setIsExternal(true);\n } else if (\n config.basePath &&\n !window.location.pathname?.startsWith(config.basePath)\n ) {\n setIsExternal(true);\n } else {\n setIsExternal(false);\n }\n }\n }, [href, config]);\n\n if (isExternal) {\n <L href={href} title={title} target=\"_blank\">\n {formatUrl(children)}\n </L>;\n }\n\n return (\n <L href={href} title={title}>\n {formatUrl(children)}\n </L>\n );\n};\n", "import { ReactNode } from \"react\";\nimport type { Components } from \"hast-util-to-jsx-runtime\";\n\nlet tableHeaders: ReactNode[] = [];\nlet tdIndex = 0;\n\nexport const Table: Components[\"table\"] = ({ children, style }) => {\n tableHeaders = [];\n return <table style={style}>{children}</table>;\n};\n\nexport const Tr: Components[\"tr\"] = ({ children, style }) => {\n tdIndex = 0;\n return <tr style={style}>{children}</tr>;\n};\n\nexport const Td: Components[\"td\"] = ({ children, style }) => {\n return (\n <td data-label={tableHeaders[tdIndex++]} style={style}>\n {children}\n </td>\n );\n};\n\nexport const Th: Components[\"th\"] = ({ children, style }) => {\n tableHeaders.push(children);\n return <th style={style}>{children}</th>;\n};\n", "import { useBookmark, useConfig } from \"@hyperbook/provider\";\nimport type { Components } from \"hast-util-to-jsx-runtime\";\n\nexport const makeAnchor = (heading: string) => {\n // If we have a heading, make it lower case\n let anchor = heading.toLowerCase();\n\n // Clean anchor (replace special characters whitespaces).\n // Alternatively, use encodeURIComponent() if you don't care about\n // pretty anchor links\n anchor = anchor.replace(/[^a-zA-Z0-9 ]/g, \"\");\n anchor = anchor.replace(/ /g, \"-\");\n\n return anchor;\n};\n\nexport const Headings =\n (level: number): Components[\"h1\"] =>\n ({ children, id }) => {\n const config = useConfig();\n const bookmarksConfig = config?.elements?.bookmarks;\n // Access actual (string) value of heading\n const heading = (children as any)?.[0] || \"\";\n\n // If we have a heading, make it lower case\n let anchor = typeof heading === \"string\" ? makeAnchor(heading) : \"\";\n\n const label = typeof heading === \"string\" ? heading : anchor;\n\n const [bookmark, toggleBookmark] = useBookmark(anchor, label);\n\n // Utility\n const container = (children: React.ReactNode): JSX.Element => (\n <>\n <a className=\"heading\" id={id ?? anchor} href={`#${id ?? anchor}`}>\n <span>{children}</span>\n </a>\n {bookmarksConfig !== false && (\n <button\n className={bookmark ? \"bookmark active\" : \"bookmark\"}\n onClick={() => toggleBookmark()}\n title=\"Bookmark\"\n >\n \uD83D\uDD16\n </button>\n )}\n </>\n );\n\n switch (level) {\n case 1:\n return <h1>{container(children)}</h1>;\n case 2:\n return <h2>{container(children)}</h2>;\n case 3:\n return <h3>{container(children)}</h3>;\n case 4:\n return <h4>{container(children)}</h4>;\n case 5:\n return <h5>{container(children)}</h5>;\n\n default:\n return <h6>{container(children)}</h6>;\n }\n };\n", "import { useMakeUrl } from \"@hyperbook/provider\";\nimport { useState } from \"react\";\nimport type { Components } from \"hast-util-to-jsx-runtime\";\n\nexport const Image: Components[\"img\"] = ({ src, title, alt }) => {\n const makeUrl = useMakeUrl();\n const [full, setFull] = useState(false);\n src = makeUrl(src, \"public\");\n\n return (\n <>\n {full && (\n <figure className={\"lightbox\"}>\n <img src={src} alt={alt} onClick={() => setFull((f) => !f)} />\n {title && <figcaption>{title}</figcaption>}\n </figure>\n )}\n <figure className={\"normal\"}>\n <img src={src} alt={alt} onClick={() => setFull((f) => !f)} />\n {title && <figcaption>{title}</figcaption>}\n </figure>\n </>\n );\n};\n", "//@ts-nocheck\nimport { visit, SKIP } from \"unist-util-visit\";\nimport { Transformer } from \"unified\";\nimport { BuildVisitor } from \"unist-util-visit/complex-types\";\n\nexport const remarkRemoveComments: () => Transformer = () => (tree) => {\n const htmlCommentRegex = /<!--([\\s\\S]*?)-->/g;\n\n const handler: BuildVisitor = (node, index, parent) => {\n const isComment = node.value.match(htmlCommentRegex);\n\n if (isComment) {\n // remove node\n parent.children.splice(index, 1);\n // Do not traverse `node`, continue at the node *now* at `index`. http://unifiedjs.com/learn/recipe/remove-node/\n return [SKIP, index];\n }\n };\n\n visit(tree, \"html\", handler);\n\n visit(tree, \"jsx\", handler);\n};\n", "import { visit } from \"unist-util-visit\";\nimport { Transformer } from \"unified\";\nimport { Heading } from \"mdast\";\n\nexport const remarkCustomHeadingIds: () => Transformer = () => {\n return function (node) {\n visit(node, \"heading\", (node: Heading) => {\n let lastChild = node.children[node.children.length - 1];\n if (lastChild && lastChild.type === \"text\") {\n let string = lastChild.value.replace(/ +$/, \"\");\n let matched = string.match(/ {#([^]+?)}$/);\n\n if (matched) {\n let id = matched[1];\n if (!!id.length) {\n if (!node.data) {\n node.data = {};\n }\n if (!node.data.hProperties) {\n node.data.hProperties = {};\n }\n (node.data as any).id = node.data.hProperties.id = id;\n\n string = string.substring(0, matched.index);\n lastChild.value = string;\n }\n }\n }\n });\n };\n};\n", "import * as prod from \"react/jsx-runtime\";\nimport { ReactElement, createElement } from \"react\";\nimport { PluggableList, unified } from \"unified\";\nimport remarkParse from \"remark-parse\";\nimport { Options as RemarkRehypeOptions } from \"mdast-util-to-hast\";\nimport remarkToRehype from \"remark-rehype\";\nimport rehypeReact, { Options as RehypeReactOptions } from \"rehype-react\";\n\ntype PartialBy<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;\n\nexport interface UseRemarkSyncOptions {\n remarkToRehypeOptions?: RemarkRehypeOptions;\n rehypeReactOptions?: PartialBy<\n RehypeReactOptions,\n \"Fragment\" | \"jsx\" | \"jsxs\"\n >;\n remarkPlugins?: PluggableList;\n rehypePlugins?: PluggableList;\n}\n\nexport const useRemarkSync = (\n source: string,\n {\n remarkToRehypeOptions,\n rehypeReactOptions,\n remarkPlugins = [],\n rehypePlugins = [],\n }: UseRemarkSyncOptions = {}\n): ReactElement =>\n unified()\n .use(remarkParse)\n .use(remarkPlugins)\n .use(remarkToRehype, remarkToRehypeOptions)\n .use(rehypePlugins)\n .use(rehypeReact, {\n Fragment: prod.Fragment,\n jsx: prod.jsx,\n jsxs: prod.jsxs,\n ...rehypeReactOptions,\n } as RehypeReactOptions)\n .processSync(source).result;\n", "import remarkParse from \"remark-parse\";\nimport remarkStringify from \"remark-stringify\";\nimport { unified } from \"unified\";\nimport { remarkCustomHeadingIds } from \"./remarkCustomHeadingIds\";\nimport { Heading, remarkHeadings } from \"./remarkHeadings\";\n\nexport const useToc = (markdown: string): Heading[] => {\n return unified()\n .use(remarkParse)\n .use(remarkCustomHeadingIds)\n .use(remarkHeadings)\n .use(remarkStringify)\n .processSync(markdown).data.headings;\n};\n", "import { Plugin } from \"unified\";\nimport { Root as MdastRoot, Heading as AstHeading } from \"mdast\";\nimport { Root as HastRoot } from \"hast\";\nimport { visit } from \"unist-util-visit\";\nimport { toString } from \"mdast-util-to-string\";\n\nexport interface Heading {\n level: number;\n label: string;\n anchor: string;\n}\n\nconst getAnchor = (heading: AstHeading): string => {\n // If we have a heading, make it lower case\n if ((heading?.data as any)?.id) {\n return (heading.data as any).id as string;\n }\n\n let anchor = toString(heading, { includeImageAlt: false }).toLowerCase();\n\n // Clean anchor (replace special characters whitespaces).\n // Alternatively, use encodeURIComponent() if you don't care about\n // pretty anchor links\n anchor = anchor.replace(/[^a-zA-Z0-9 ]/g, \"\");\n anchor = anchor.replace(/ /g, \"-\");\n\n return anchor;\n};\n\nconst headings = (root: MdastRoot) => {\n const headingList: Heading[] = [];\n\n visit(root, \"heading\", (node: AstHeading) => {\n const heading: Heading = {\n level: node.depth,\n label: toString(node, { includeImageAlt: false }),\n anchor: getAnchor(node),\n };\n\n headingList.push(heading);\n });\n\n return headingList;\n};\n\nexport const remarkHeadings: Plugin<[], MdastRoot, HastRoot> = () => {\n return (tree, file) => {\n file.data.headings = headings(tree);\n };\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["useDirectives", "useState", "jsx", "jsx", "useConfig", "Fragment", "jsx", "jsxs", "children", "useState", "Fragment", "jsx", "jsxs", "visit", "node", "remarkParse", "unified", "visit", "unified", "remarkParse", "Fragment", "useState", "jsx", "jsxs", "useDirectives"]
7
7
  }
@@ -5,7 +5,7 @@ import { Options as RehypeReactOptions } from "rehype-react";
5
5
  type PartialBy<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;
6
6
  export interface UseRemarkSyncOptions {
7
7
  remarkToRehypeOptions?: RemarkRehypeOptions;
8
- rehypeReactOptions?: PartialBy<RehypeReactOptions, "createElement">;
8
+ rehypeReactOptions?: PartialBy<RehypeReactOptions, "Fragment" | "jsx" | "jsxs">;
9
9
  remarkPlugins?: PluggableList;
10
10
  rehypePlugins?: PluggableList;
11
11
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hyperbook/markdown",
3
- "version": "0.9.3",
3
+ "version": "0.9.5",
4
4
  "author": "Mike Barkmin",
5
5
  "homepage": "https://github.com/openpatch/hyperbook#readme",
6
6
  "license": "MIT",
@@ -28,42 +28,43 @@
28
28
  "url": "https://github.com/openpatch/hyperbook/issues"
29
29
  },
30
30
  "dependencies": {
31
- "rehype-highlight": "5.0.2",
32
- "rehype-katex": "6.0.3",
33
- "rehype-parse": "^8.0.4",
34
- "rehype-raw": "^6.1.1",
35
- "rehype-react": "^7.2.0",
36
- "rehype-stringify": "^9.0.3",
37
- "remark-directive": "2.0.1",
31
+ "rehype-highlight": "7.0.0",
32
+ "rehype-katex": "7.0.0",
33
+ "rehype-parse": "^9.0.0",
34
+ "rehype-raw": "^7.0.0",
35
+ "rehype-react": "^8.0.0",
36
+ "rehype-stringify": "^10.0.0",
37
+ "remark-directive": "3.0.0",
38
38
  "remark-directive-rehype": "0.4.2",
39
- "remark-gemoji": "7.0.1",
40
- "remark-gfm": "3.0.1",
41
- "remark-math": "5.1.1",
42
- "remark-parse": "^10.0.2",
43
- "remark-rehype": "^10.1.0",
44
- "remark-stringify": "^10.0.3",
45
- "remark-unwrap-images": "3.0.1",
46
- "unified": "^10.1.2",
39
+ "remark-gemoji": "8.0.0",
40
+ "remark-gfm": "4.0.0",
41
+ "remark-math": "6.0.0",
42
+ "remark-parse": "^11.0.0",
43
+ "remark-rehype": "^11.1.0",
44
+ "remark-stringify": "^11.0.0",
45
+ "remark-unwrap-images": "4.0.0",
46
+ "unified": "^11.0.4",
47
47
  "unist-util-visit": "^5.0.0",
48
- "@hyperbook/drawer": "0.1.1",
49
- "@hyperbook/provider": "0.4.0"
48
+ "@hyperbook/drawer": "0.1.2",
49
+ "@hyperbook/provider": "0.4.2"
50
50
  },
51
51
  "peerDependencies": {
52
52
  "react": "18.x",
53
53
  "react-dom": "18.x"
54
54
  },
55
55
  "devDependencies": {
56
- "@types/hast": "3.0.0",
57
- "@types/mdast": "^4.0.0",
58
- "@types/react": "18.2.12",
59
- "@types/react-dom": "18.2.5",
60
- "@types/unist": "2.0.6",
61
- "mdast-util-to-hast": "^13.0.0",
56
+ "@types/hast": "3.0.4",
57
+ "@types/mdast": "^4.0.4",
58
+ "@types/react": "18.3.2",
59
+ "@types/react-dom": "18.3.0",
60
+ "@types/unist": "3.0.2",
61
+ "hast-util-to-jsx-runtime": "^2.3.0",
62
+ "mdast-util-to-hast": "^13.1.0",
62
63
  "mdast-util-to-string": "^4.0.0",
63
64
  "ncp": "^2.0.0",
64
- "react": "18.2.0",
65
- "react-dom": "18.2.0",
66
- "vitest": "^0.30.0"
65
+ "react": "18.3.1",
66
+ "react-dom": "18.3.1",
67
+ "vitest": "^1.6.0"
67
68
  },
68
69
  "scripts": {
69
70
  "version": "pnpm build",