myst-to-react 0.2.5 → 0.2.7

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.
@@ -133,7 +133,7 @@ function Admonition({ title, kind, color, simple, dropdown, children, hideIcon,
133
133
  'text-green-600': color === 'green',
134
134
  'text-amber-600': color === 'yellow',
135
135
  'text-red-600': color === 'red',
136
- }) })), (0, jsx_runtime_1.jsx)("div", Object.assign({ className: (0, classnames_1.default)('text-neutral-900 dark:text-white grow self-center overflow-hidden break-words', { 'ml-2': hideIcon }) }, { children: title })), dropdown && ((0, jsx_runtime_1.jsx)("div", Object.assign({ className: "font-thin text-sm text-neutral-700 dark:text-neutral-200 self-center flex-none" }, { children: (0, jsx_runtime_1.jsx)(ChevronRightIcon_1.default, { className: (0, classnames_1.default)(iconClass, 'transition-transform details-toggle') }) })))] }))), (0, jsx_runtime_1.jsx)("div", Object.assign({ className: (0, classnames_1.default)('px-4', { 'py-1': !simple, 'details-body': dropdown }) }, { children: children }))] })));
136
+ }) })), (0, jsx_runtime_1.jsx)("div", Object.assign({ className: (0, classnames_1.default)('text-neutral-900 dark:text-white grow self-center overflow-hidden break-words', { 'ml-4': hideIcon }) }, { children: title })), dropdown && ((0, jsx_runtime_1.jsx)("div", Object.assign({ className: "font-thin text-sm text-neutral-700 dark:text-neutral-200 self-center flex-none" }, { children: (0, jsx_runtime_1.jsx)(ChevronRightIcon_1.default, { className: (0, classnames_1.default)(iconClass, 'transition-transform details-toggle') }) })))] }))), (0, jsx_runtime_1.jsx)("div", Object.assign({ className: (0, classnames_1.default)('px-4', { 'py-1': !simple, 'details-body': dropdown }) }, { children: children }))] })));
137
137
  }
138
138
  exports.Admonition = Admonition;
139
139
  const AdmonitionRenderer = (node, children) => {
@@ -1 +1 @@
1
- {"version":3,"file":"cite.d.ts","sourceRoot":"","sources":["../../src/cite.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAS1D,eAAO,MAAM,SAAS,EAAE,YAYvB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,YAmBlB,CAAC;AAEF,QAAA,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAGhD,CAAC;AAEF,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"cite.d.ts","sourceRoot":"","sources":["../../src/cite.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAc1D,eAAO,MAAM,SAAS,EAAE,YAYvB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,YAmBlB,CAAC;AAEF,QAAA,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAGhD,CAAC;AAEF,eAAe,cAAc,CAAC"}
package/dist/cjs/cite.js CHANGED
@@ -11,7 +11,7 @@ const doi_utils_1 = __importDefault(require("doi-utils"));
11
11
  const inlineError_1 = require("./inlineError");
12
12
  const HoverPopover_1 = require("./components/HoverPopover");
13
13
  function CiteChild({ html }) {
14
- return (0, jsx_runtime_1.jsx)("div", { className: "hover-document p-3", dangerouslySetInnerHTML: { __html: html || '' } });
14
+ return ((0, jsx_runtime_1.jsx)("div", { className: "hover-document w-[500px] sm:max-w-[500px] p-3", dangerouslySetInnerHTML: { __html: html || '' } }));
15
15
  }
16
16
  const CiteGroup = (node, children) => {
17
17
  return ((0, jsx_runtime_1.jsx)("span", Object.assign({ className: (0, classnames_1.default)('cite-group', {
@@ -1 +1 @@
1
- {"version":3,"file":"crossReference.d.ts","sourceRoot":"","sources":["../../src/crossReference.tsx"],"names":[],"mappings":";AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAYhD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAuE1D,wBAAgB,mBAAmB,CAAC,EAClC,GAAG,EACH,OAAO,EACP,MAAM,EACN,QAAQ,EACR,UAAU,GACX,EAAE;IACD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,eA4DA;AAED,eAAO,MAAM,kBAAkB,EAAE,YAAY,CAAC,cAAc,CAsB3D,CAAC;AAEF,QAAA,MAAM,yBAAyB;;CAE9B,CAAC;AAEF,eAAe,yBAAyB,CAAC"}
1
+ {"version":3,"file":"crossReference.d.ts","sourceRoot":"","sources":["../../src/crossReference.tsx"],"names":[],"mappings":";AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAYhD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AA+E1D,wBAAgB,mBAAmB,CAAC,EAClC,GAAG,EACH,OAAO,EACP,MAAM,EACN,QAAQ,EACR,UAAU,GACX,EAAE;IACD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,eA8DA;AAED,eAAO,MAAM,kBAAkB,EAAE,YAAY,CAAC,cAAc,CAsB3D,CAAC;AAEF,QAAA,MAAM,yBAAyB;;CAE9B,CAAC;AAEF,eAAe,yBAAyB,CAAC"}
@@ -59,6 +59,14 @@ function XrefChildren({ nodes, loading, error, identifier, }) {
59
59
  }
60
60
  return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: children });
61
61
  }
62
+ function openDetails(el) {
63
+ if (!el)
64
+ return;
65
+ if (el.nodeName === 'DETAILS') {
66
+ el.open = true;
67
+ }
68
+ openDetails(el.parentElement);
69
+ }
62
70
  function CrossReferenceHover({ url, dataUrl, remote, children, identifier, }) {
63
71
  var _a, _b, _c, _d;
64
72
  const Link = (0, providers_1.useLinkProvider)();
@@ -80,9 +88,11 @@ function CrossReferenceHover({ url, dataUrl, remote, children, identifier, }) {
80
88
  const scroll = (e) => {
81
89
  e.preventDefault();
82
90
  const el = document.getElementById(htmlId);
91
+ openDetails(el);
83
92
  el === null || el === void 0 ? void 0 : el.scrollIntoView({ behavior: 'smooth' });
93
+ history.replaceState(undefined, '', `#${htmlId}`);
84
94
  };
85
- return ((0, jsx_runtime_1.jsx)(HoverPopover_1.HoverPopover, Object.assign({ card: (0, jsx_runtime_1.jsx)(providers_1.XRefProvider, Object.assign({ remote: remote, url: url, dataUrl: dataUrl }, { children: (0, jsx_runtime_1.jsx)("div", Object.assign({ className: "hover-document px-3" }, { children: (0, jsx_runtime_1.jsx)(XrefChildren, { nodes: nodes, loading: remote && !data, error: remote && error, identifier: identifier }) })) })) }, { children: (0, jsx_runtime_1.jsxs)("span", { children: [remote && external && ((0, jsx_runtime_1.jsx)("a", Object.assign({ href: link, target: "_blank", className: "hover-link" }, { children: children }))), remote && !external && ((0, jsx_runtime_1.jsx)(Link, Object.assign({ to: `${(0, providers_1.withBaseurl)(url, baseurl)}#${htmlId}`, prefetch: "intent", className: "hover-link" }, { children: children }))), !remote && ((0, jsx_runtime_1.jsx)("a", Object.assign({ href: `#${htmlId}`, onClick: scroll, className: "hover-link" }, { children: children })))] }) })));
95
+ return ((0, jsx_runtime_1.jsx)(HoverPopover_1.HoverPopover, Object.assign({ card: (0, jsx_runtime_1.jsx)(providers_1.XRefProvider, Object.assign({ remote: remote, url: url, dataUrl: dataUrl }, { children: (0, jsx_runtime_1.jsx)("div", Object.assign({ className: "hover-document w-[500px] sm:max-w-[500px] px-3" }, { children: (0, jsx_runtime_1.jsx)(XrefChildren, { nodes: nodes, loading: remote && !data, error: remote && error, identifier: identifier }) })) })) }, { children: (0, jsx_runtime_1.jsxs)("span", { children: [remote && external && ((0, jsx_runtime_1.jsx)("a", Object.assign({ href: link, target: "_blank", className: "hover-link" }, { children: children }))), remote && !external && ((0, jsx_runtime_1.jsx)(Link, Object.assign({ to: `${(0, providers_1.withBaseurl)(url, baseurl)}#${htmlId}`, prefetch: "intent", className: "hover-link" }, { children: children }))), !remote && ((0, jsx_runtime_1.jsx)("a", Object.assign({ href: `#${htmlId}`, onClick: scroll, className: "hover-link" }, { children: children })))] }) })));
86
96
  }
87
97
  exports.CrossReferenceHover = CrossReferenceHover;
88
98
  const CrossReferenceNode = (node, children) => {
@@ -0,0 +1,19 @@
1
+ import type { Admonition as AdmonitionSpec } from 'myst-spec';
2
+ import React from 'react';
3
+ import type { NodeRenderer } from '@myst-theme/providers';
4
+ type Color = 'gray' | 'blue' | 'green' | 'yellow' | 'orange' | 'red' | 'purple';
5
+ export declare function Callout({ title, color, dropdown, children, identifier, }: {
6
+ title?: React.ReactNode;
7
+ color?: Color;
8
+ children: React.ReactNode;
9
+ dropdown?: boolean;
10
+ identifier?: string;
11
+ }): JSX.Element;
12
+ export declare const ExerciseRenderer: NodeRenderer<AdmonitionSpec>;
13
+ export declare const SolutionRenderer: NodeRenderer<AdmonitionSpec>;
14
+ declare const EXERCISE_RENDERERS: {
15
+ exercise: NodeRenderer<AdmonitionSpec>;
16
+ solution: NodeRenderer<AdmonitionSpec>;
17
+ };
18
+ export default EXERCISE_RENDERERS;
19
+ //# sourceMappingURL=exercise.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exercise.d.ts","sourceRoot":"","sources":["../../src/exercise.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,IAAI,cAAc,EAAE,MAAM,WAAW,CAAC;AAC9D,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAK1D,KAAK,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,KAAK,GAAG,QAAQ,CAAC;AAkEhF,wBAAgB,OAAO,CAAC,EACtB,KAAK,EACL,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,UAAU,GACX,EAAE;IACD,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,eA0DA;AAED,eAAO,MAAM,gBAAgB,EAAE,YAAY,CAAC,cAAc,CAmCzD,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,YAAY,CAAC,cAAc,CAkCzD,CAAC;AAEF,QAAA,MAAM,kBAAkB;;;CAGvB,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
@@ -0,0 +1,99 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.SolutionRenderer = exports.ExerciseRenderer = exports.Callout = void 0;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const ChevronRightIcon_1 = __importDefault(require("@heroicons/react/24/solid/ChevronRightIcon"));
9
+ const classnames_1 = __importDefault(require("classnames"));
10
+ const heading_1 = require("./heading");
11
+ function getClasses(className) {
12
+ var _a;
13
+ const classes = (_a = className === null || className === void 0 ? void 0 : className.split(' ').map((s) => s.trim().toLowerCase()).filter((s) => !!s)) !== null && _a !== void 0 ? _a : [];
14
+ return [...new Set(classes)];
15
+ }
16
+ function getColor({ classes = [] }, defaultColor = 'blue') {
17
+ if (classes.includes('gray'))
18
+ return { color: 'gray' };
19
+ if (classes.includes('purple'))
20
+ return { color: 'purple' };
21
+ if (classes.includes('yellow'))
22
+ return { color: 'yellow' };
23
+ if (classes.includes('orange'))
24
+ return { color: 'orange' };
25
+ if (classes.includes('green'))
26
+ return { color: 'green' };
27
+ if (classes.includes('red'))
28
+ return { color: 'red' };
29
+ if (classes.includes('blue'))
30
+ return { color: 'blue' };
31
+ return { color: defaultColor };
32
+ }
33
+ const WrapperElement = ({ id, dropdown, className, children, }) => {
34
+ if (dropdown)
35
+ return ((0, jsx_runtime_1.jsx)("details", Object.assign({ id: id, className: className }, { children: children })));
36
+ return ((0, jsx_runtime_1.jsx)("aside", Object.assign({ id: id, className: className }, { children: children })));
37
+ };
38
+ const HeaderElement = ({ dropdown, className, children, }) => {
39
+ if (dropdown)
40
+ return (0, jsx_runtime_1.jsx)("summary", Object.assign({ className: className }, { children: children }));
41
+ return (0, jsx_runtime_1.jsx)("div", Object.assign({ className: className }, { children: children }));
42
+ };
43
+ const iconClass = 'h-8 w-8 inline-block pl-2 mr-2 self-center flex-none';
44
+ function Callout({ title, color, dropdown, children, identifier, }) {
45
+ return ((0, jsx_runtime_1.jsxs)(WrapperElement, Object.assign({ id: identifier, dropdown: dropdown, className: (0, classnames_1.default)('my-5 shadow dark:bg-stone-800 overflow-hidden', 'dark:border-l-4 border-slate-400', {
46
+ 'dark:border-gray-500/60': !color || color === 'gray',
47
+ 'dark:border-blue-500/60': color === 'blue',
48
+ 'dark:border-green-500/60': color === 'green',
49
+ 'dark:border-amber-500/70': color === 'yellow',
50
+ 'dark:border-orange-500/60': color === 'orange',
51
+ 'dark:border-red-500/60': color === 'red',
52
+ 'dark:border-purple-500/60': color === 'purple',
53
+ }) }, { children: [(0, jsx_runtime_1.jsxs)(HeaderElement, Object.assign({ dropdown: dropdown, className: (0, classnames_1.default)('m-0 font-medium py-2 flex min-w-0', 'text-md', 'border-y dark:border-y-0', {
54
+ 'bg-gray-50/80 dark:bg-slate-900': !color || color === 'gray',
55
+ 'bg-blue-50/80 dark:bg-slate-900': color === 'blue',
56
+ 'bg-green-50/80 dark:bg-slate-900': color === 'green',
57
+ 'bg-amber-50/80 dark:bg-slate-900': color === 'yellow',
58
+ 'bg-orange-50/80 dark:bg-slate-900': color === 'orange',
59
+ 'bg-red-50/80 dark:bg-slate-900': color === 'red',
60
+ 'bg-purple-50/80 dark:bg-slate-900': color === 'purple',
61
+ 'cursor-pointer hover:shadow-[inset_0_0_0px_30px_#00000003] dark:hover:shadow-[inset_0_0_0px_30px_#FFFFFF03]': dropdown,
62
+ }) }, { children: [(0, jsx_runtime_1.jsx)("div", Object.assign({ className: (0, classnames_1.default)('text-neutral-900 dark:text-white grow self-center overflow-hidden break-words', 'ml-4', // No icon!
63
+ 'group') }, { children: title })), dropdown && ((0, jsx_runtime_1.jsx)("div", Object.assign({ className: "font-thin text-sm text-neutral-700 dark:text-neutral-200 self-center flex-none" }, { children: (0, jsx_runtime_1.jsx)(ChevronRightIcon_1.default, { className: (0, classnames_1.default)(iconClass, 'transition-transform details-toggle') }) })))] })), (0, jsx_runtime_1.jsx)("div", Object.assign({ className: (0, classnames_1.default)('px-4', { 'details-body': dropdown }) }, { children: children }))] })));
64
+ }
65
+ exports.Callout = Callout;
66
+ const ExerciseRenderer = (node, children) => {
67
+ var _a, _b, _c;
68
+ if (node.hidden)
69
+ return null;
70
+ const [title, ...rest] = (_a = children) !== null && _a !== void 0 ? _a : [];
71
+ const classes = getClasses(node.class);
72
+ const { color } = getColor({ classes });
73
+ const isDropdown = classes.includes('dropdown');
74
+ const useTitle = ((_c = (_b = node.children) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.type) === 'admonitionTitle';
75
+ const identifier = node.html_id;
76
+ const enumerator = node.enumerator;
77
+ const titleNode = ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)(heading_1.HashLink, Object.assign({ id: identifier, kind: "Exercise" }, { children: [node.gate === 'start' && 'Start of ', node.gate === 'end' && 'End of ', "Exercise", enumerator != null && (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [" ", enumerator] })] })), useTitle && (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [" (", title, ")"] })] }));
78
+ return ((0, jsx_runtime_1.jsxs)(Callout, Object.assign({ identifier: identifier, title: titleNode, color: color, dropdown: isDropdown }, { children: [!useTitle && title, rest] }), node.key));
79
+ };
80
+ exports.ExerciseRenderer = ExerciseRenderer;
81
+ const SolutionRenderer = (node, children) => {
82
+ var _a, _b, _c;
83
+ if (node.hidden)
84
+ return null;
85
+ const [title, ...rest] = (_a = children) !== null && _a !== void 0 ? _a : [];
86
+ const classes = getClasses(node.class);
87
+ const { color } = getColor({ classes }, 'gray');
88
+ const isDropdown = classes.includes('dropdown');
89
+ const useTitle = ((_c = (_b = node.children) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.type) === 'admonitionTitle';
90
+ const identifier = node.html_id;
91
+ const titleNode = ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [node.gate === 'start' && 'Start of ', node.gate === 'end' && 'End of ', title, (0, jsx_runtime_1.jsx)(heading_1.HashLink, Object.assign({ id: identifier, kind: "Solution", hover: true, hideInPopup: true }, { children: ' #' }))] }));
92
+ return ((0, jsx_runtime_1.jsxs)(Callout, Object.assign({ identifier: identifier, title: useTitle ? titleNode : undefined, color: color, dropdown: isDropdown }, { children: [!useTitle && title, rest] }), node.key));
93
+ };
94
+ exports.SolutionRenderer = SolutionRenderer;
95
+ const EXERCISE_RENDERERS = {
96
+ exercise: exports.ExerciseRenderer,
97
+ solution: exports.SolutionRenderer,
98
+ };
99
+ exports.default = EXERCISE_RENDERERS;
@@ -12,7 +12,7 @@ function FootnoteDefinition({ identifier }) {
12
12
  const renderers = (0, providers_1.useNodeRenderers)();
13
13
  const node = (_b = (_a = references === null || references === void 0 ? void 0 : references.footnotes) === null || _a === void 0 ? void 0 : _a[identifier]) !== null && _b !== void 0 ? _b : (0, unist_util_select_1.select)(`footnoteDefinition[identifier=${identifier}]`, references === null || references === void 0 ? void 0 : references.article);
14
14
  const children = (0, _1.useParse)(node, renderers);
15
- return ((0, jsx_runtime_1.jsx)(providers_1.XRefProvider, { children: (0, jsx_runtime_1.jsx)("div", Object.assign({ className: "hover-document px-3" }, { children: children })) }));
15
+ return ((0, jsx_runtime_1.jsx)(providers_1.XRefProvider, { children: (0, jsx_runtime_1.jsx)("div", Object.assign({ className: "hover-document w-[500px] sm:max-w-[500px] px-3" }, { children: children })) }));
16
16
  }
17
17
  const FootnoteReference = (node) => {
18
18
  var _a;
@@ -1 +1 @@
1
- {"version":3,"file":"heading.d.ts","sourceRoot":"","sources":["../../src/heading.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAK1D,wBAAgB,QAAQ,CAAC,EACvB,EAAE,EACF,IAAI,EACJ,KAA8B,EAC9B,QAAc,EACd,KAAK,EACL,SAAyB,EACzB,WAAW,GACZ,EAAE;IACD,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,sBA4BA;AAED,QAAA,MAAM,OAAO,EAAE,YAAY,CAAC,OAAO,CAoBlC,CAAC;AAEF,QAAA,MAAM,iBAAiB;;CAEtB,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"heading.d.ts","sourceRoot":"","sources":["../../src/heading.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAK1D,wBAAgB,QAAQ,CAAC,EACvB,EAAE,EACF,IAAI,EACJ,KAA8B,EAC9B,QAAc,EACd,KAAK,EACL,SAAyB,EACzB,WAAW,GACZ,EAAE;IACD,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,sBA6BA;AAED,QAAA,MAAM,OAAO,EAAE,YAAY,CAAC,OAAO,CAoBlC,CAAC;AAEF,QAAA,MAAM,iBAAiB;;CAEtB,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
@@ -19,8 +19,9 @@ function HashLink({ id, kind, title = `Link to this ${kind}`, children = '¶', h
19
19
  evt.preventDefault();
20
20
  const el = document.getElementById(id);
21
21
  el === null || el === void 0 ? void 0 : el.scrollIntoView({ behavior: 'smooth' });
22
+ history.replaceState(undefined, '', `#${id}`);
22
23
  };
23
- return ((0, jsx_runtime_1.jsx)("a", Object.assign({ className: (0, classnames_1.default)('select-none no-underline', className, {
24
+ return ((0, jsx_runtime_1.jsx)("a", Object.assign({ className: (0, classnames_1.default)('select-none no-underline text-inherit hover:text-inherit', className, {
24
25
  'transition-opacity opacity-0 group-hover:opacity-70': hover,
25
26
  'hover:underline': !hover,
26
27
  }), onClick: scroll, href: `#${id}`, title: title, "aria-label": title }, { children: children })));
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAsBjD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEzC,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAoB1D,CAAC;AAEF,wBAAgB,QAAQ,CACtB,IAAI,EAAE,aAAa,GAAG,IAAI,EAC1B,SAAS,GAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAqB,6BAU5D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAuBjD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEzC,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAqB1D,CAAC;AAEF,wBAAgB,QAAQ,CACtB,IAAI,EAAE,aAAa,GAAG,IAAI,EAC1B,SAAS,GAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAqB,6BAU5D"}
package/dist/cjs/index.js CHANGED
@@ -24,6 +24,7 @@ const tabs_1 = __importDefault(require("./tabs"));
24
24
  const extensions_1 = __importDefault(require("./extensions"));
25
25
  const inlineExpression_1 = __importDefault(require("./inlineExpression"));
26
26
  const proof_1 = __importDefault(require("./proof"));
27
+ const exercise_1 = __importDefault(require("./exercise"));
27
28
  var CopyIcon_1 = require("./components/CopyIcon");
28
29
  Object.defineProperty(exports, "CopyIcon", { enumerable: true, get: function () { return CopyIcon_1.CopyIcon; } });
29
30
  var code_2 = require("./code");
@@ -36,7 +37,7 @@ Object.defineProperty(exports, "Details", { enumerable: true, get: function () {
36
37
  var tabs_2 = require("./tabs");
37
38
  Object.defineProperty(exports, "TabSet", { enumerable: true, get: function () { return tabs_2.TabSet; } });
38
39
  Object.defineProperty(exports, "TabItem", { enumerable: true, get: function () { return tabs_2.TabItem; } });
39
- exports.DEFAULT_RENDERERS = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, basic_1.default), image_1.default), links_1.default), code_1.default), math_1.default), cite_1.default), tabs_1.default), iframe_1.default), footnotes_1.default), admonitions_1.default), reactive_1.default), heading_1.default), crossReference_1.default), dropdown_1.default), card_1.default), grid_1.default), inlineExpression_1.default), extensions_1.default), proof_1.default);
40
+ exports.DEFAULT_RENDERERS = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, basic_1.default), image_1.default), links_1.default), code_1.default), math_1.default), cite_1.default), tabs_1.default), iframe_1.default), footnotes_1.default), admonitions_1.default), reactive_1.default), heading_1.default), crossReference_1.default), dropdown_1.default), card_1.default), grid_1.default), inlineExpression_1.default), extensions_1.default), proof_1.default), exercise_1.default);
40
41
  function useParse(node, renderers = exports.DEFAULT_RENDERERS) {
41
42
  if (!node)
42
43
  return null;
@@ -1,12 +1,14 @@
1
1
  import React from 'react';
2
- export declare function GithubLink({ children, url, org, repo, raw, file, from, to, }: {
2
+ export declare function GithubLink({ kind, children, url, org, repo, raw, file, from, to, issue_number, }: {
3
3
  children: React.ReactNode;
4
+ kind: 'file' | 'issue';
4
5
  url: string;
5
6
  raw: string;
6
7
  org: string;
7
8
  repo: string;
8
9
  file: string;
9
10
  from?: number;
11
+ issue_number?: string | number;
10
12
  to?: number;
11
13
  }): JSX.Element;
12
14
  //# sourceMappingURL=github.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"github.d.ts","sourceRoot":"","sources":["../../../src/links/github.tsx"],"names":[],"mappings":"AAIA,OAAO,KAA8B,MAAM,OAAO,CAAC;AA8GnD,wBAAgB,UAAU,CAAC,EACzB,QAAQ,EACR,GAAG,EACH,GAAG,EACH,IAAI,EACJ,GAAG,EACH,IAAI,EACJ,IAAI,EACJ,EAAE,GACH,EAAE;IACD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;CACb,eAqBA"}
1
+ {"version":3,"file":"github.d.ts","sourceRoot":"","sources":["../../../src/links/github.tsx"],"names":[],"mappings":"AAMA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAoNnD,wBAAgB,UAAU,CAAC,EACzB,IAAI,EACJ,QAAQ,EACR,GAAG,EACH,GAAG,EACH,IAAI,EACJ,GAAG,EACH,IAAI,EACJ,IAAI,EACJ,EAAE,EACF,YAAY,GACb,EAAE;IACD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,EAAE,CAAC,EAAE,MAAM,CAAC;CACb,eAoCA"}
@@ -7,15 +7,23 @@ exports.GithubLink = void 0;
7
7
  const jsx_runtime_1 = require("react/jsx-runtime");
8
8
  const swr_1 = __importDefault(require("swr"));
9
9
  const ArrowTopRightOnSquareIcon_1 = __importDefault(require("@heroicons/react/24/outline/ArrowTopRightOnSquareIcon"));
10
+ const PlusCircleIcon_1 = __importDefault(require("@heroicons/react/24/outline/PlusCircleIcon"));
11
+ const CheckCircleIcon_1 = __importDefault(require("@heroicons/react/24/outline/CheckCircleIcon"));
10
12
  const HoverPopover_1 = require("../components/HoverPopover");
11
13
  const LinkCard_1 = require("../components/LinkCard");
12
14
  const react_1 = require("react");
13
15
  const code_1 = require("../code");
16
+ const classnames_1 = __importDefault(require("classnames"));
14
17
  const fetcher = (...args) => fetch(...args).then((res) => {
15
18
  if (res.status === 200)
16
19
  return res.text();
17
20
  throw new Error(`Content returned with status ${res.status}.`);
18
21
  });
22
+ const jsonFetcher = (...args) => fetch(...args).then((res) => {
23
+ if (res.status === 200)
24
+ return res.json();
25
+ throw new Error(`Content returned with status ${res.status}.`);
26
+ });
19
27
  function extToLanguage(ext) {
20
28
  var _a;
21
29
  return ((_a = {
@@ -23,6 +31,7 @@ function extToLanguage(ext) {
23
31
  js: 'javascript',
24
32
  py: 'python',
25
33
  md: 'markdown',
34
+ yml: 'yaml',
26
35
  }[ext !== null && ext !== void 0 ? ext : '']) !== null && _a !== void 0 ? _a : ext);
27
36
  }
28
37
  function useLoadWhenOpen(open, url, loader) {
@@ -37,7 +46,7 @@ function GithubFilePreview({ url, raw, org, repo, file, from, to, open, }) {
37
46
  const { data, error } = useLoadWhenOpen(open, raw, fetcher);
38
47
  let code = data;
39
48
  if (error) {
40
- return ((0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "hover-document" }, { children: [(0, jsx_runtime_1.jsx)("a", Object.assign({ href: url, className: "block text-inherit hover:text-inherit", target: "_blank", rel: "noreferrer" }, { children: (0, jsx_runtime_1.jsx)(ArrowTopRightOnSquareIcon_1.default, { className: "w-4 h-4 float-right" }) })), (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "mt-2" }, { children: ["Error loading \"", file, "\" from GitHub."] }))] })));
49
+ return ((0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "hover-document w-[500px] sm:max-w-[500px]" }, { children: [(0, jsx_runtime_1.jsx)("a", Object.assign({ href: url, className: "block text-inherit hover:text-inherit", target: "_blank", rel: "noreferrer" }, { children: (0, jsx_runtime_1.jsx)(ArrowTopRightOnSquareIcon_1.default, { className: "w-4 h-4 float-right" }) })), (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "mt-2" }, { children: ["Error loading \"", file, "\" from GitHub."] }))] })));
41
50
  }
42
51
  const lang = extToLanguage(file === null || file === void 0 ? void 0 : file.split('.').pop());
43
52
  let startingLineNumber = 1;
@@ -58,7 +67,41 @@ function GithubFilePreview({ url, raw, org, repo, file, from, to, open, }) {
58
67
  const description = code ? ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, jsx_runtime_1.jsx)(code_1.CodeBlock, { value: code, lang: lang, filename: file, showLineNumbers: true, startingLineNumber: startingLineNumber, emphasizeLines: emphasizeLines, showCopy: false }) })) : null;
59
68
  return ((0, jsx_runtime_1.jsx)(LinkCard_1.LinkCard, { loading: !code, url: url, title: `GitHub - ${org}/${repo}`, description: description, className: "hover-document max-w-[80vw]" }));
60
69
  }
61
- function GithubLink({ children, url, org, repo, raw, file, from, to, }) {
62
- return ((0, jsx_runtime_1.jsx)(HoverPopover_1.HoverPopover, Object.assign({ card: ({ load }) => ((0, jsx_runtime_1.jsx)(GithubFilePreview, { url: url, raw: raw, file: file, from: from, to: to, open: load, org: org, repo: repo })) }, { children: (0, jsx_runtime_1.jsx)("a", Object.assign({ href: url, className: "italic", target: "_blank", rel: "noreferrer" }, { children: children })) })));
70
+ // https://stackoverflow.com/questions/3942878/how-to-decide-font-color-in-white-or-black-depending-on-background-color
71
+ function useWhiteTextColor(bgColor) {
72
+ const color = bgColor.charAt(0) === '#' ? bgColor.substring(1, 7) : bgColor;
73
+ const r = parseInt(color.substring(0, 2), 16); // hexToR
74
+ const g = parseInt(color.substring(2, 4), 16); // hexToG
75
+ const b = parseInt(color.substring(4, 6), 16); // hexToB
76
+ return r * 0.299 + g * 0.587 + b * 0.114 <= 186;
77
+ }
78
+ function GithubIssuePreview({ url, org, repo, issue_number, open, }) {
79
+ var _a, _b;
80
+ const { data, error } = useLoadWhenOpen(open, `https://api.github.com/repos/${org}/${repo}/issues/${issue_number}`, jsonFetcher);
81
+ if (!data && !error) {
82
+ return ((0, jsx_runtime_1.jsx)("div", Object.assign({ className: "hover-document w-[500px] sm:max-w-[500px] animate-pulse" }, { children: "Loading..." })));
83
+ }
84
+ const resp = data;
85
+ if (error) {
86
+ return ((0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "hover-document" }, { children: [(0, jsx_runtime_1.jsx)("a", Object.assign({ href: url, className: "block text-inherit hover:text-inherit", target: "_blank", rel: "noreferrer" }, { children: (0, jsx_runtime_1.jsx)(ArrowTopRightOnSquareIcon_1.default, { className: "w-4 h-4 float-right" }) })), (0, jsx_runtime_1.jsx)("div", Object.assign({ className: "mt-2" }, { children: "Error loading from GitHub." }))] })));
87
+ }
88
+ const dateString = new Date(resp.created_at).toLocaleDateString('en-US', {
89
+ year: 'numeric',
90
+ month: 'long',
91
+ day: 'numeric',
92
+ });
93
+ return ((0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "hover-document w-[400px] sm:max-w-[400px] p-3" }, { children: [(0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "text-xs font-light" }, { children: [org, "/", repo] })), (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "text-lg font-bold my-2 dark:text-white" }, { children: [resp.state === 'open' && ((0, jsx_runtime_1.jsx)(PlusCircleIcon_1.default, { className: "w-6 h-6 inline-block text-green-700 dark:text-green-500 mr-2 -translate-y-px" })), resp.state === 'closed' && ((0, jsx_runtime_1.jsx)(CheckCircleIcon_1.default, { className: "w-6 h-6 inline-block text-purple-700 dark:text-purple-500 mr-2 -translate-y-px" })), resp.title] })), (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "text-xs font-light" }, { children: ["#", issue_number, " opened on ", dateString, " by", ' ', (0, jsx_runtime_1.jsxs)("span", Object.assign({ className: "font-normal" }, { children: ["@", resp.user.login] }))] })), (0, jsx_runtime_1.jsx)("p", Object.assign({ className: "text-md max-h-[4rem] overflow-hidden" }, { children: resp.body })), ((_a = resp.labels) === null || _a === void 0 ? void 0 : _a.length) > 0 && ((0, jsx_runtime_1.jsx)("div", Object.assign({ className: "flex flex-wrap" }, { children: (_b = resp.labels) === null || _b === void 0 ? void 0 : _b.map((label) => ((0, jsx_runtime_1.jsx)("span", Object.assign({ className: (0, classnames_1.default)('mr-1 text-xs inline-flex items-center px-2 py-0.5 rounded-full', {
94
+ 'text-white': useWhiteTextColor(label.color),
95
+ }), style: { backgroundColor: `#${label.color}` } }, { children: label.name }), label.id))) })))] })));
96
+ }
97
+ function GithubLink({ kind, children, url, org, repo, raw, file, from, to, issue_number, }) {
98
+ return ((0, jsx_runtime_1.jsx)(HoverPopover_1.HoverPopover, Object.assign({ card: ({ load }) => {
99
+ if (kind === 'file') {
100
+ return ((0, jsx_runtime_1.jsx)(GithubFilePreview, { url: url, raw: raw, file: file, from: from, to: to, open: load, org: org, repo: repo }));
101
+ }
102
+ if (kind === 'issue') {
103
+ return ((0, jsx_runtime_1.jsx)(GithubIssuePreview, { url: url, open: load, org: org, issue_number: issue_number, repo: repo }));
104
+ }
105
+ } }, { children: (0, jsx_runtime_1.jsx)("a", Object.assign({ href: url, className: "italic", target: "_blank", rel: "noreferrer" }, { children: children })) })));
63
106
  }
64
107
  exports.GithubLink = GithubLink;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/links/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAKtC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAO1D,KAAK,eAAe,GAAG,IAAI,GAAG;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AA0CxE,eAAO,MAAM,IAAI,EAAE,YAAY,CAAC,eAAe,CA+C9C,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,YAAY,CAAC,eAAe,CAkCnD,CAAC;AAEF,QAAA,MAAM,cAAc;;;CAGnB,CAAC;AAEF,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/links/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAKtC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAO1D,KAAK,eAAe,GAAG,IAAI,GAAG;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AA0CxE,eAAO,MAAM,IAAI,EAAE,YAAY,CAAC,eAAe,CAiD9C,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,YAAY,CAAC,eAAe,CAkCnD,CAAC;AAEF,QAAA,MAAM,cAAc;;;CAGnB,CAAC;AAEF,eAAe,cAAc,CAAC"}
@@ -35,16 +35,16 @@ function InternalLink({ url, children }) {
35
35
  return ((0, jsx_runtime_1.jsx)(HoverPopover_1.HoverPopover, Object.assign({ card: (0, jsx_runtime_1.jsx)(LinkCard_1.LinkCard, { internal: true, url: url, title: page.title, description: page.description, thumbnail: page.thumbnailOptimized || page.thumbnail }) }, { children: (0, jsx_runtime_1.jsx)(Link, Object.assign({ to: (0, providers_1.withBaseurl)(url, baseurl), prefetch: "intent" }, { children: children })) })));
36
36
  }
37
37
  const link = (node, children) => {
38
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
38
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
39
39
  const internal = (_a = node.internal) !== null && _a !== void 0 ? _a : false;
40
40
  const protocol = node.protocol;
41
41
  switch (protocol) {
42
42
  case 'wiki':
43
43
  return ((0, jsx_runtime_1.jsx)(wiki_1.WikiLink, Object.assign({ url: node.url, page: (_b = node.data) === null || _b === void 0 ? void 0 : _b.page, wiki: (_c = node.data) === null || _c === void 0 ? void 0 : _c.wiki }, { children: children }), node.key));
44
44
  case 'github':
45
- return ((0, jsx_runtime_1.jsx)(github_1.GithubLink, Object.assign({ url: node.url, org: (_d = node.data) === null || _d === void 0 ? void 0 : _d.org, repo: (_e = node.data) === null || _e === void 0 ? void 0 : _e.repo, raw: (_f = node.data) === null || _f === void 0 ? void 0 : _f.raw, file: (_g = node.data) === null || _g === void 0 ? void 0 : _g.file, from: (_h = node.data) === null || _h === void 0 ? void 0 : _h.from, to: (_j = node.data) === null || _j === void 0 ? void 0 : _j.to }, { children: children }), node.key));
45
+ return ((0, jsx_runtime_1.jsx)(github_1.GithubLink, Object.assign({ kind: (_d = node.data) === null || _d === void 0 ? void 0 : _d.kind, url: node.url, org: (_e = node.data) === null || _e === void 0 ? void 0 : _e.org, repo: (_f = node.data) === null || _f === void 0 ? void 0 : _f.repo, raw: (_g = node.data) === null || _g === void 0 ? void 0 : _g.raw, file: (_h = node.data) === null || _h === void 0 ? void 0 : _h.file, from: (_j = node.data) === null || _j === void 0 ? void 0 : _j.from, to: (_k = node.data) === null || _k === void 0 ? void 0 : _k.to, issue_number: (_l = node.data) === null || _l === void 0 ? void 0 : _l.issue_number }, { children: children }), node.key));
46
46
  case 'rrid':
47
- return (0, jsx_runtime_1.jsx)(rrid_1.RRIDLink, { rrid: (_k = node.data) === null || _k === void 0 ? void 0 : _k.rrid }, node.key);
47
+ return (0, jsx_runtime_1.jsx)(rrid_1.RRIDLink, { rrid: (_m = node.data) === null || _m === void 0 ? void 0 : _m.rrid }, node.key);
48
48
  default:
49
49
  if (internal) {
50
50
  return ((0, jsx_runtime_1.jsx)(InternalLink, Object.assign({ url: node.url }, { children: children }), node.key));
@@ -1 +1 @@
1
- {"version":3,"file":"rrid.d.ts","sourceRoot":"","sources":["../../../src/links/rrid.tsx"],"names":[],"mappings":";AAgEA,wBAAgB,QAAQ,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,eAQlD"}
1
+ {"version":3,"file":"rrid.d.ts","sourceRoot":"","sources":["../../../src/links/rrid.tsx"],"names":[],"mappings":";AAkEA,wBAAgB,QAAQ,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,eAQlD"}
@@ -16,17 +16,17 @@ function RRIDChild({ rrid }) {
16
16
  var _a, _b, _c, _d, _e, _f, _g;
17
17
  const { data, error } = (0, swr_1.default)(`https://scicrunch.org/resolver/${rrid}.json`, fetcher);
18
18
  if (!data && !error) {
19
- return (0, jsx_runtime_1.jsx)("div", Object.assign({ className: "hover-document animate-pulse" }, { children: "Loading..." }));
19
+ return ((0, jsx_runtime_1.jsx)("div", Object.assign({ className: "hover-document w-[500px] sm:max-w-[500px] animate-pulse" }, { children: "Loading..." })));
20
20
  }
21
21
  const hit = (_b = (_a = data === null || data === void 0 ? void 0 : data.hits) === null || _a === void 0 ? void 0 : _a.hits) === null || _b === void 0 ? void 0 : _b[0];
22
22
  if (error || !hit) {
23
- return (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "hover-document" }, { children: ["Error loading ", rrid, "."] }));
23
+ return (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "hover-document w-[500px] sm:max-w-[500px]" }, { children: ["Error loading ", rrid, "."] }));
24
24
  }
25
25
  const { name: title, curie, description, supercategory, keywords, types: categories, } = (_d = (_c = hit === null || hit === void 0 ? void 0 : hit._source) === null || _c === void 0 ? void 0 : _c.item) !== null && _d !== void 0 ? _d : {};
26
26
  const category = (_e = supercategory === null || supercategory === void 0 ? void 0 : supercategory[0]) === null || _e === void 0 ? void 0 : _e.name;
27
27
  const types = (_f = categories === null || categories === void 0 ? void 0 : categories.map(({ name }) => name)) !== null && _f !== void 0 ? _f : [];
28
28
  const tags = (_g = keywords === null || keywords === void 0 ? void 0 : keywords.map(({ keyword }) => keyword)) !== null && _g !== void 0 ? _g : [];
29
- return ((0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "hover-document p-3" }, { children: [(0, jsx_runtime_1.jsxs)("p", Object.assign({ className: "text-sm font-light" }, { children: ["RRID: ", category] })), (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "text-xl font-bold mb-4" }, { children: [title, " ", (0, jsx_runtime_1.jsx)("code", { children: curie })] })), (0, jsx_runtime_1.jsx)("p", Object.assign({ className: "text-md" }, { children: description })), types.length > 0 && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("div", Object.assign({ className: "text-xs font-thin my-2" }, { children: "Categories" })), (0, jsx_runtime_1.jsx)("div", Object.assign({ className: "flex flex-wrap ml-1" }, { children: types === null || types === void 0 ? void 0 : types.map((tag) => ((0, jsx_runtime_1.jsx)("span", Object.assign({ className: "ml-1 text-xs inline-flex items-center uppercase px-3 py-1 rounded-full border" }, { children: tag })))) }))] })), tags.length > 0 && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("div", Object.assign({ className: "text-xs font-thin my-2" }, { children: "Tags" })), (0, jsx_runtime_1.jsx)("div", Object.assign({ className: "flex flex-wrap ml-1" }, { children: tags === null || tags === void 0 ? void 0 : tags.map((tag) => ((0, jsx_runtime_1.jsx)("span", Object.assign({ className: "ml-1 text-xs inline-flex items-center uppercase px-3 py-1 rounded-full border" }, { children: tag })))) }))] }))] })));
29
+ return ((0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "hover-document w-[500px] sm:max-w-[500px] p-3" }, { children: [(0, jsx_runtime_1.jsxs)("p", Object.assign({ className: "text-sm font-light" }, { children: ["RRID: ", category] })), (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "text-xl font-bold mb-4" }, { children: [title, " ", (0, jsx_runtime_1.jsx)("code", { children: curie })] })), (0, jsx_runtime_1.jsx)("p", Object.assign({ className: "text-md" }, { children: description })), types.length > 0 && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("div", Object.assign({ className: "text-xs font-thin my-2" }, { children: "Categories" })), (0, jsx_runtime_1.jsx)("div", Object.assign({ className: "flex flex-wrap ml-1" }, { children: types === null || types === void 0 ? void 0 : types.map((tag) => ((0, jsx_runtime_1.jsx)("span", Object.assign({ className: "ml-1 text-xs inline-flex items-center uppercase px-3 py-1 rounded-full border" }, { children: tag })))) }))] })), tags.length > 0 && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("div", Object.assign({ className: "text-xs font-thin my-2" }, { children: "Tags" })), (0, jsx_runtime_1.jsx)("div", Object.assign({ className: "flex flex-wrap ml-1" }, { children: tags === null || tags === void 0 ? void 0 : tags.map((tag) => ((0, jsx_runtime_1.jsx)("span", Object.assign({ className: "ml-1 text-xs inline-flex items-center uppercase px-3 py-1 rounded-full border" }, { children: tag })))) }))] }))] })));
30
30
  }
31
31
  function RRIDLink({ rrid }) {
32
32
  return ((0, jsx_runtime_1.jsx)(HoverPopover_1.HoverPopover, Object.assign({ card: (0, jsx_runtime_1.jsx)(RRIDChild, { rrid: rrid }) }, { children: (0, jsx_runtime_1.jsxs)("a", Object.assign({ href: `https://scicrunch.org/resolver/${rrid}`, target: "_blank", rel: "noopener noreferrer" }, { children: ["RRID: ", (0, jsx_runtime_1.jsx)("cite", Object.assign({ className: "italic" }, { children: rrid }))] })) })));
package/dist/cjs/math.js CHANGED
@@ -13,7 +13,7 @@ const mathRenderer = (node) => {
13
13
  return ((0, jsx_runtime_1.jsxs)("pre", Object.assign({ title: node.message }, { children: [(0, jsx_runtime_1.jsxs)("span", Object.assign({ className: "text-red-500" }, { children: [(0, jsx_runtime_1.jsx)(ExclamationCircleIcon_1.default, { className: "inline h-[1em] mr-1" }), node.message, '\n\n'] })), node.value] }), node.key));
14
14
  }
15
15
  const id = node.html_id || node.identifier || node.key;
16
- return ((0, jsx_runtime_1.jsxs)("div", Object.assign({ id: id, className: "flex group my-5" }, { children: [(0, jsx_runtime_1.jsx)("div", { dangerouslySetInnerHTML: { __html: node.html }, className: "overflow-x-auto flex-grow" }), node.enumerator && ((0, jsx_runtime_1.jsx)("div", Object.assign({ className: "flex-none text-right m-0 pl-2 self-center relative select-none" }, { children: (0, jsx_runtime_1.jsxs)(heading_1.HashLink, Object.assign({ id: id, kind: "Equation", className: "text-inherit hover:text-inherit" }, { children: ["(", node.enumerator, ")"] })) })))] }), node.key));
16
+ return ((0, jsx_runtime_1.jsxs)("div", Object.assign({ id: id, className: "flex group my-5" }, { children: [(0, jsx_runtime_1.jsx)("div", { dangerouslySetInnerHTML: { __html: node.html }, className: "overflow-x-auto overflow-y-hidden flex-grow" }), node.enumerator && ((0, jsx_runtime_1.jsx)("div", Object.assign({ className: "flex-none text-right m-0 pl-2 self-center relative select-none" }, { children: (0, jsx_runtime_1.jsxs)(heading_1.HashLink, Object.assign({ id: id, kind: "Equation", className: "text-inherit hover:text-inherit" }, { children: ["(", node.enumerator, ")"] })) })))] }), node.key));
17
17
  }
18
18
  if (node.error || !node.html) {
19
19
  return (0, jsx_runtime_1.jsx)(inlineError_1.InlineError, { value: node.value, message: node.message }, node.key);
@@ -1 +1 @@
1
- {"version":3,"file":"proof.d.ts","sourceRoot":"","sources":["../../src/proof.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,IAAI,cAAc,EAAE,MAAM,WAAW,CAAC;AAC9D,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAK1D,oBAAY,SAAS;IACnB,KAAK,UAAU;IACf,KAAK,UAAU;IACf,KAAK,UAAU;IACf,UAAU,eAAe;IACzB,SAAS,cAAc;IACvB,MAAM,WAAW;IACjB,UAAU,eAAe;IACzB,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;IAC3B,UAAU,eAAe;IACzB,OAAO,YAAY;CACpB;AAED,KAAK,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,KAAK,GAAG,QAAQ,CAAC;AAqFhF,wBAAgB,KAAK,CAAC,EACpB,KAAK,EACL,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,UAAU,GACX,EAAE;IACD,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,eAwDA;AAED,eAAO,MAAM,aAAa,EAAE,YAAY,CAAC,cAAc,CAsBtD,CAAC;AAEF,QAAA,MAAM,eAAe;;CAEpB,CAAC;AAEF,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"proof.d.ts","sourceRoot":"","sources":["../../src/proof.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,IAAI,cAAc,EAAE,MAAM,WAAW,CAAC;AAC9D,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAK1D,oBAAY,SAAS;IACnB,KAAK,UAAU;IACf,KAAK,UAAU;IACf,KAAK,UAAU;IACf,UAAU,eAAe;IACzB,SAAS,cAAc;IACvB,MAAM,WAAW;IACjB,UAAU,eAAe;IACzB,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;IAC3B,UAAU,eAAe;IACzB,OAAO,YAAY;CACpB;AAED,KAAK,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,KAAK,GAAG,QAAQ,CAAC;AAqFhF,wBAAgB,KAAK,CAAC,EACpB,KAAK,EACL,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,UAAU,GACX,EAAE;IACD,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,eA4DA;AAED,eAAO,MAAM,aAAa,EAAE,YAAY,CAAC,cAAc,CAsBtD,CAAC;AAEF,QAAA,MAAM,eAAe;;CAEpB,CAAC;AAEF,eAAe,eAAe,CAAC"}
package/dist/cjs/proof.js CHANGED
@@ -75,21 +75,22 @@ const HeaderElement = ({ dropdown, className, children, }) => {
75
75
  };
76
76
  const iconClass = 'h-8 w-8 inline-block pl-2 mr-2 self-center flex-none';
77
77
  function Proof({ title, kind, color, dropdown, children, identifier, enumerator, }) {
78
- return ((0, jsx_runtime_1.jsxs)(WrapperElement, Object.assign({ id: identifier, dropdown: dropdown, className: (0, classnames_1.default)('my-5 shadow', 'dark:bg-stone-800', 'overflow-hidden', {
79
- // 'shadow-lg': !color || color === 'gray',
80
- // 'border-l-2 border-blue-500': color === 'blue',
81
- // 'border-l-2 border-green-500': color === 'green',
82
- // 'border-l-2 border-amber-500': color === 'yellow',
83
- // 'border-l-2 border-orange-500': color === 'orange',
84
- // 'border-l-2 border-red-500': color === 'red',
85
- }) }, { children: [(0, jsx_runtime_1.jsxs)(HeaderElement, Object.assign({ dropdown: dropdown, className: (0, classnames_1.default)('m-0 font-medium py-2 flex min-w-0', 'text-md', '', 'border-y dark:border-y-0 dark:border-l-4 border-slate-400', {
86
- 'bg-gray-50/80 dark:bg-slate-900 dark:border-gray-500': !color || color === 'gray',
87
- 'bg-blue-50/80 dark:bg-slate-900 dark:border-blue-500': color === 'blue',
88
- 'bg-green-50/80 dark:bg-slate-900 dark:border-green-500': color === 'green',
89
- 'bg-amber-50/80 dark:bg-slate-900 dark:border-amber-500': color === 'yellow',
90
- 'bg-orange-50/80 dark:bg-slate-900 dark:border-orange-500': color === 'orange',
91
- 'bg-red-50/80 dark:bg-slate-900 dark:border-red-500': color === 'red',
92
- 'bg-purple-50/80 dark:bg-slate-900 dark:border-purple-500': color === 'purple',
78
+ return ((0, jsx_runtime_1.jsxs)(WrapperElement, Object.assign({ id: identifier, dropdown: dropdown, className: (0, classnames_1.default)('my-5 shadow dark:bg-stone-800 overflow-hidden', 'dark:border-l-4 border-slate-400', {
79
+ 'dark:border-gray-500/60': !color || color === 'gray',
80
+ 'dark:border-blue-500/60': color === 'blue',
81
+ 'dark:border-green-500/60': color === 'green',
82
+ 'dark:border-amber-500/70': color === 'yellow',
83
+ 'dark:border-orange-500/60': color === 'orange',
84
+ 'dark:border-red-500/60': color === 'red',
85
+ 'dark:border-purple-500/60': color === 'purple',
86
+ }) }, { children: [(0, jsx_runtime_1.jsxs)(HeaderElement, Object.assign({ dropdown: dropdown, className: (0, classnames_1.default)('m-0 font-medium py-2 flex min-w-0', 'text-md', 'border-y dark:border-y-0', {
87
+ 'bg-gray-50/80 dark:bg-slate-900': !color || color === 'gray',
88
+ 'bg-blue-50/80 dark:bg-slate-900': color === 'blue',
89
+ 'bg-green-50/80 dark:bg-slate-900': color === 'green',
90
+ 'bg-amber-50/80 dark:bg-slate-900': color === 'yellow',
91
+ 'bg-orange-50/80 dark:bg-slate-900': color === 'orange',
92
+ 'bg-red-50/80 dark:bg-slate-900': color === 'red',
93
+ 'bg-purple-50/80 dark:bg-slate-900': color === 'purple',
93
94
  'cursor-pointer hover:shadow-[inset_0_0_0px_30px_#00000003] dark:hover:shadow-[inset_0_0_0px_30px_#FFFFFF03]': dropdown,
94
95
  }) }, { children: [(0, jsx_runtime_1.jsxs)("div", Object.assign({ className: (0, classnames_1.default)('text-neutral-900 dark:text-white grow self-center overflow-hidden break-words', 'ml-4') }, { children: [(0, jsx_runtime_1.jsxs)(heading_1.HashLink, Object.assign({ id: identifier, kind: capitalize(kind) }, { children: [capitalize(kind), " ", enumerator] })), ' ', title && (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: ["(", title, ")"] })] })), dropdown && ((0, jsx_runtime_1.jsx)("div", Object.assign({ className: "font-thin text-sm text-neutral-700 dark:text-neutral-200 self-center flex-none" }, { children: (0, jsx_runtime_1.jsx)(ChevronRightIcon_1.default, { className: (0, classnames_1.default)(iconClass, 'transition-transform details-toggle') }) })))] })), (0, jsx_runtime_1.jsx)("div", Object.assign({ className: (0, classnames_1.default)('px-4', { 'details-body': dropdown }) }, { children: children }))] })));
95
96
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cite.d.ts","sourceRoot":"","sources":["../../src/cite.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAS1D,eAAO,MAAM,SAAS,EAAE,YAYvB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,YAmBlB,CAAC;AAEF,QAAA,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAGhD,CAAC;AAEF,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"cite.d.ts","sourceRoot":"","sources":["../../src/cite.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAc1D,eAAO,MAAM,SAAS,EAAE,YAYvB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,YAmBlB,CAAC;AAEF,QAAA,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAGhD,CAAC;AAEF,eAAe,cAAc,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"crossReference.d.ts","sourceRoot":"","sources":["../../src/crossReference.tsx"],"names":[],"mappings":";AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAYhD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAuE1D,wBAAgB,mBAAmB,CAAC,EAClC,GAAG,EACH,OAAO,EACP,MAAM,EACN,QAAQ,EACR,UAAU,GACX,EAAE;IACD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,eA4DA;AAED,eAAO,MAAM,kBAAkB,EAAE,YAAY,CAAC,cAAc,CAsB3D,CAAC;AAEF,QAAA,MAAM,yBAAyB;;CAE9B,CAAC;AAEF,eAAe,yBAAyB,CAAC"}
1
+ {"version":3,"file":"crossReference.d.ts","sourceRoot":"","sources":["../../src/crossReference.tsx"],"names":[],"mappings":";AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAYhD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AA+E1D,wBAAgB,mBAAmB,CAAC,EAClC,GAAG,EACH,OAAO,EACP,MAAM,EACN,QAAQ,EACR,UAAU,GACX,EAAE;IACD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,eA8DA;AAED,eAAO,MAAM,kBAAkB,EAAE,YAAY,CAAC,cAAc,CAsB3D,CAAC;AAEF,QAAA,MAAM,yBAAyB;;CAE9B,CAAC;AAEF,eAAe,yBAAyB,CAAC"}
@@ -0,0 +1,19 @@
1
+ import type { Admonition as AdmonitionSpec } from 'myst-spec';
2
+ import React from 'react';
3
+ import type { NodeRenderer } from '@myst-theme/providers';
4
+ type Color = 'gray' | 'blue' | 'green' | 'yellow' | 'orange' | 'red' | 'purple';
5
+ export declare function Callout({ title, color, dropdown, children, identifier, }: {
6
+ title?: React.ReactNode;
7
+ color?: Color;
8
+ children: React.ReactNode;
9
+ dropdown?: boolean;
10
+ identifier?: string;
11
+ }): JSX.Element;
12
+ export declare const ExerciseRenderer: NodeRenderer<AdmonitionSpec>;
13
+ export declare const SolutionRenderer: NodeRenderer<AdmonitionSpec>;
14
+ declare const EXERCISE_RENDERERS: {
15
+ exercise: NodeRenderer<AdmonitionSpec>;
16
+ solution: NodeRenderer<AdmonitionSpec>;
17
+ };
18
+ export default EXERCISE_RENDERERS;
19
+ //# sourceMappingURL=exercise.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exercise.d.ts","sourceRoot":"","sources":["../../src/exercise.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,IAAI,cAAc,EAAE,MAAM,WAAW,CAAC;AAC9D,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAK1D,KAAK,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,KAAK,GAAG,QAAQ,CAAC;AAkEhF,wBAAgB,OAAO,CAAC,EACtB,KAAK,EACL,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,UAAU,GACX,EAAE;IACD,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,eA0DA;AAED,eAAO,MAAM,gBAAgB,EAAE,YAAY,CAAC,cAAc,CAmCzD,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,YAAY,CAAC,cAAc,CAkCzD,CAAC;AAEF,QAAA,MAAM,kBAAkB;;;CAGvB,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"heading.d.ts","sourceRoot":"","sources":["../../src/heading.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAK1D,wBAAgB,QAAQ,CAAC,EACvB,EAAE,EACF,IAAI,EACJ,KAA8B,EAC9B,QAAc,EACd,KAAK,EACL,SAAyB,EACzB,WAAW,GACZ,EAAE;IACD,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,sBA4BA;AAED,QAAA,MAAM,OAAO,EAAE,YAAY,CAAC,OAAO,CAoBlC,CAAC;AAEF,QAAA,MAAM,iBAAiB;;CAEtB,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"heading.d.ts","sourceRoot":"","sources":["../../src/heading.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAK1D,wBAAgB,QAAQ,CAAC,EACvB,EAAE,EACF,IAAI,EACJ,KAA8B,EAC9B,QAAc,EACd,KAAK,EACL,SAAyB,EACzB,WAAW,GACZ,EAAE;IACD,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,sBA6BA;AAED,QAAA,MAAM,OAAO,EAAE,YAAY,CAAC,OAAO,CAoBlC,CAAC;AAEF,QAAA,MAAM,iBAAiB;;CAEtB,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAsBjD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEzC,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAoB1D,CAAC;AAEF,wBAAgB,QAAQ,CACtB,IAAI,EAAE,aAAa,GAAG,IAAI,EAC1B,SAAS,GAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAqB,6BAU5D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAuBjD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEzC,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAqB1D,CAAC;AAEF,wBAAgB,QAAQ,CACtB,IAAI,EAAE,aAAa,GAAG,IAAI,EAC1B,SAAS,GAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAqB,6BAU5D"}
@@ -1,12 +1,14 @@
1
1
  import React from 'react';
2
- export declare function GithubLink({ children, url, org, repo, raw, file, from, to, }: {
2
+ export declare function GithubLink({ kind, children, url, org, repo, raw, file, from, to, issue_number, }: {
3
3
  children: React.ReactNode;
4
+ kind: 'file' | 'issue';
4
5
  url: string;
5
6
  raw: string;
6
7
  org: string;
7
8
  repo: string;
8
9
  file: string;
9
10
  from?: number;
11
+ issue_number?: string | number;
10
12
  to?: number;
11
13
  }): JSX.Element;
12
14
  //# sourceMappingURL=github.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"github.d.ts","sourceRoot":"","sources":["../../../src/links/github.tsx"],"names":[],"mappings":"AAIA,OAAO,KAA8B,MAAM,OAAO,CAAC;AA8GnD,wBAAgB,UAAU,CAAC,EACzB,QAAQ,EACR,GAAG,EACH,GAAG,EACH,IAAI,EACJ,GAAG,EACH,IAAI,EACJ,IAAI,EACJ,EAAE,GACH,EAAE;IACD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;CACb,eAqBA"}
1
+ {"version":3,"file":"github.d.ts","sourceRoot":"","sources":["../../../src/links/github.tsx"],"names":[],"mappings":"AAMA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAoNnD,wBAAgB,UAAU,CAAC,EACzB,IAAI,EACJ,QAAQ,EACR,GAAG,EACH,GAAG,EACH,IAAI,EACJ,GAAG,EACH,IAAI,EACJ,IAAI,EACJ,EAAE,EACF,YAAY,GACb,EAAE;IACD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,EAAE,CAAC,EAAE,MAAM,CAAC;CACb,eAoCA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/links/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAKtC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAO1D,KAAK,eAAe,GAAG,IAAI,GAAG;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AA0CxE,eAAO,MAAM,IAAI,EAAE,YAAY,CAAC,eAAe,CA+C9C,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,YAAY,CAAC,eAAe,CAkCnD,CAAC;AAEF,QAAA,MAAM,cAAc;;;CAGnB,CAAC;AAEF,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/links/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAKtC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAO1D,KAAK,eAAe,GAAG,IAAI,GAAG;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AA0CxE,eAAO,MAAM,IAAI,EAAE,YAAY,CAAC,eAAe,CAiD9C,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,YAAY,CAAC,eAAe,CAkCnD,CAAC;AAEF,QAAA,MAAM,cAAc;;;CAGnB,CAAC;AAEF,eAAe,cAAc,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"rrid.d.ts","sourceRoot":"","sources":["../../../src/links/rrid.tsx"],"names":[],"mappings":";AAgEA,wBAAgB,QAAQ,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,eAQlD"}
1
+ {"version":3,"file":"rrid.d.ts","sourceRoot":"","sources":["../../../src/links/rrid.tsx"],"names":[],"mappings":";AAkEA,wBAAgB,QAAQ,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,eAQlD"}
@@ -1 +1 @@
1
- {"version":3,"file":"proof.d.ts","sourceRoot":"","sources":["../../src/proof.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,IAAI,cAAc,EAAE,MAAM,WAAW,CAAC;AAC9D,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAK1D,oBAAY,SAAS;IACnB,KAAK,UAAU;IACf,KAAK,UAAU;IACf,KAAK,UAAU;IACf,UAAU,eAAe;IACzB,SAAS,cAAc;IACvB,MAAM,WAAW;IACjB,UAAU,eAAe;IACzB,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;IAC3B,UAAU,eAAe;IACzB,OAAO,YAAY;CACpB;AAED,KAAK,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,KAAK,GAAG,QAAQ,CAAC;AAqFhF,wBAAgB,KAAK,CAAC,EACpB,KAAK,EACL,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,UAAU,GACX,EAAE;IACD,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,eAwDA;AAED,eAAO,MAAM,aAAa,EAAE,YAAY,CAAC,cAAc,CAsBtD,CAAC;AAEF,QAAA,MAAM,eAAe;;CAEpB,CAAC;AAEF,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"proof.d.ts","sourceRoot":"","sources":["../../src/proof.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,IAAI,cAAc,EAAE,MAAM,WAAW,CAAC;AAC9D,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAK1D,oBAAY,SAAS;IACnB,KAAK,UAAU;IACf,KAAK,UAAU;IACf,KAAK,UAAU;IACf,UAAU,eAAe;IACzB,SAAS,cAAc;IACvB,MAAM,WAAW;IACjB,UAAU,eAAe;IACzB,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;IAC3B,UAAU,eAAe;IACzB,OAAO,YAAY;CACpB;AAED,KAAK,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,KAAK,GAAG,QAAQ,CAAC;AAqFhF,wBAAgB,KAAK,CAAC,EACpB,KAAK,EACL,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,UAAU,GACX,EAAE;IACD,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,eA4DA;AAED,eAAO,MAAM,aAAa,EAAE,YAAY,CAAC,cAAc,CAsBtD,CAAC;AAEF,QAAA,MAAM,eAAe;;CAEpB,CAAC;AAEF,eAAe,eAAe,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "myst-to-react",
3
- "version": "0.2.5",
3
+ "version": "0.2.7",
4
4
  "main": "dist/cjs/index.js",
5
5
  "types": "dist/types/index.d.ts",
6
6
  "files": [
@@ -18,7 +18,7 @@
18
18
  },
19
19
  "dependencies": {
20
20
  "@heroicons/react": "^2.0.13",
21
- "@myst-theme/providers": "^0.2.5",
21
+ "@myst-theme/providers": "^0.2.7",
22
22
  "@radix-ui/react-hover-card": "^1.0.5",
23
23
  "buffer": "^6.0.3",
24
24
  "classnames": "^2.3.2",