myst-to-react 0.1.36 → 0.1.38

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.
@@ -1,9 +1,10 @@
1
1
  /// <reference types="react" />
2
- import type { Code, InlineCode } from 'myst-spec';
2
+ import type { InlineCode } from 'myst-spec';
3
3
  import type { NodeRenderer } from '@myst-theme/providers';
4
4
  type Props = {
5
5
  value: string;
6
6
  lang?: string;
7
+ executable?: boolean;
7
8
  showCopy?: boolean;
8
9
  showLineNumbers?: boolean;
9
10
  startingLineNumber?: number;
@@ -14,7 +15,45 @@ type Props = {
14
15
  };
15
16
  export declare function CodeBlock(props: Props): JSX.Element;
16
17
  declare const CODE_RENDERERS: {
17
- code: NodeRenderer<Code>;
18
+ code: NodeRenderer<{
19
+ type?: "code" | undefined;
20
+ lang?: string | undefined;
21
+ meta?: string | undefined;
22
+ class?: string | undefined;
23
+ showLineNumbers?: boolean | undefined;
24
+ startingLineNumber?: number | undefined;
25
+ emphasizeLines?: number[] | undefined;
26
+ identifier?: unknown;
27
+ label?: unknown;
28
+ value?: unknown;
29
+ position?: unknown;
30
+ data?: unknown;
31
+ } & {
32
+ identifier?: string | undefined;
33
+ label?: string | undefined;
34
+ } & {
35
+ value: string;
36
+ } & {
37
+ type: string;
38
+ data?: {
39
+ [k: string]: unknown;
40
+ } | undefined;
41
+ position?: {
42
+ start: {
43
+ line: number;
44
+ column: number;
45
+ offset?: number | undefined;
46
+ };
47
+ end: {
48
+ line: number;
49
+ column: number;
50
+ offset?: number | undefined;
51
+ };
52
+ indent?: number[] | undefined;
53
+ } | undefined;
54
+ } & {
55
+ executable: boolean;
56
+ }>;
18
57
  inlineCode: NodeRenderer<InlineCode>;
19
58
  };
20
59
  export default CODE_RENDERERS;
@@ -1 +1 @@
1
- {"version":3,"file":"code.d.ts","sourceRoot":"","sources":["../../src/code.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAQ1D,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,wBAAgB,SAAS,CAAC,KAAK,EAAE,KAAK,eA2DrC;AA2CD,QAAA,MAAM,cAAc;;;CAGnB,CAAC;AAEF,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"code.d.ts","sourceRoot":"","sources":["../../src/code.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAQ,UAAU,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAQ1D,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,wBAAgB,SAAS,CAAC,KAAK,EAAE,KAAK,eA4DrC;AA+CD,QAAA,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBA7C0B,OAAO;;;CAgDpD,CAAC;AAEF,eAAe,cAAc,CAAC"}
package/dist/cjs/code.js CHANGED
@@ -13,7 +13,7 @@ const classnames_1 = __importDefault(require("classnames"));
13
13
  const CopyIcon_1 = require("./components/CopyIcon");
14
14
  function CodeBlock(props) {
15
15
  const { isLight } = (0, providers_1.useTheme)();
16
- const { value, lang, emphasizeLines, showLineNumbers, className, showCopy = true, startingLineNumber = 1, filename, border, } = props;
16
+ const { value, lang, executable, emphasizeLines, showLineNumbers, className, showCopy = true, startingLineNumber = 1, filename, border, } = props;
17
17
  const highlightLines = new Set(emphasizeLines);
18
18
  const borderClass = 'rounded shadow-md dark:shadow-2xl dark:shadow-neutral-900 my-4 text-sm border border-l-4 border-l-blue-400 border-gray-200 dark:border-l-blue-400 dark:border-gray-800';
19
19
  return ((0, jsx_runtime_1.jsxs)("div", Object.assign({ className: (0, classnames_1.default)('relative group not-prose overflow-auto', className, {
@@ -40,7 +40,7 @@ function CodeBlock(props) {
40
40
  }
41
41
  exports.CodeBlock = CodeBlock;
42
42
  const code = (node) => {
43
- return ((0, jsx_runtime_1.jsx)(CodeBlock, { value: node.value || '', lang: node.lang, emphasizeLines: node.emphasizeLines, showLineNumbers: node.showLineNumbers, startingLineNumber: node.startingLineNumber, border: true }, node.key));
43
+ return ((0, jsx_runtime_1.jsx)(CodeBlock, { "data-mdast-node-type": node.type, "data-mdast-node-id": node.key, value: node.value || '', lang: node.lang, executable: node.executable, emphasizeLines: node.emphasizeLines, showLineNumbers: node.showLineNumbers, startingLineNumber: node.startingLineNumber, border: true }, node.key));
44
44
  };
45
45
  function isColor(maybeColorHash) {
46
46
  if (!maybeColorHash || maybeColorHash.length > 9)
@@ -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;AAoBjD,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,CAkB1D,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;AAqBjD,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,CAmB1D,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
@@ -22,6 +22,7 @@ const heading_1 = __importDefault(require("./heading"));
22
22
  const crossReference_1 = __importDefault(require("./crossReference"));
23
23
  const tabs_1 = __importDefault(require("./tabs"));
24
24
  const extensions_1 = __importDefault(require("./extensions"));
25
+ const inlineExpression_1 = __importDefault(require("./inlineExpression"));
25
26
  var CopyIcon_1 = require("./components/CopyIcon");
26
27
  Object.defineProperty(exports, "CopyIcon", { enumerable: true, get: function () { return CopyIcon_1.CopyIcon; } });
27
28
  var code_2 = require("./code");
@@ -34,7 +35,7 @@ Object.defineProperty(exports, "Details", { enumerable: true, get: function () {
34
35
  var tabs_2 = require("./tabs");
35
36
  Object.defineProperty(exports, "TabSet", { enumerable: true, get: function () { return tabs_2.TabSet; } });
36
37
  Object.defineProperty(exports, "TabItem", { enumerable: true, get: function () { return tabs_2.TabItem; } });
37
- 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({}, 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), extensions_1.default);
38
+ 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({}, 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);
38
39
  function useParse(node, renderers = exports.DEFAULT_RENDERERS) {
39
40
  if (!node)
40
41
  return null;
@@ -0,0 +1,7 @@
1
+ import type { NodeRenderer } from '@myst-theme/providers';
2
+ export declare const InlineExpression: NodeRenderer;
3
+ declare const INLINE_EXPRESSION_RENDERERS: {
4
+ inlineExpression: NodeRenderer<any>;
5
+ };
6
+ export default INLINE_EXPRESSION_RENDERERS;
7
+ //# sourceMappingURL=inlineExpression.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inlineExpression.d.ts","sourceRoot":"","sources":["../../src/inlineExpression.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAG1D,eAAO,MAAM,gBAAgB,EAAE,YAa9B,CAAC;AAEF,QAAA,MAAM,2BAA2B;;CAEhC,CAAC;AAEF,eAAe,2BAA2B,CAAC"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InlineExpression = void 0;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const inlineError_1 = require("./inlineError");
6
+ const InlineExpression = (node, children) => {
7
+ var _a, _b, _c;
8
+ if (!node.result) {
9
+ return (0, jsx_runtime_1.jsx)(inlineError_1.InlineError, { value: `Unexecuted inline expression for: ${node.value}` });
10
+ }
11
+ if (((_a = node.result) === null || _a === void 0 ? void 0 : _a.status) !== 'ok') {
12
+ return (0, jsx_runtime_1.jsx)(inlineError_1.InlineError, { value: `${(_b = node.result) === null || _b === void 0 ? void 0 : _b.ename}: ${(_c = node.result) === null || _c === void 0 ? void 0 : _c.evalue}` });
13
+ }
14
+ // TODO: something with Thebe in the future!
15
+ return ((0, jsx_runtime_1.jsx)("span", Object.assign({ title: `Evaluated from: "${node.value}"` }, { children: children }), node.key));
16
+ };
17
+ exports.InlineExpression = InlineExpression;
18
+ const INLINE_EXPRESSION_RENDERERS = {
19
+ inlineExpression: exports.InlineExpression,
20
+ };
21
+ exports.default = INLINE_EXPRESSION_RENDERERS;
@@ -1,9 +1,10 @@
1
1
  /// <reference types="react" />
2
- import type { Code, InlineCode } from 'myst-spec';
2
+ import type { InlineCode } from 'myst-spec';
3
3
  import type { NodeRenderer } from '@myst-theme/providers';
4
4
  type Props = {
5
5
  value: string;
6
6
  lang?: string;
7
+ executable?: boolean;
7
8
  showCopy?: boolean;
8
9
  showLineNumbers?: boolean;
9
10
  startingLineNumber?: number;
@@ -14,7 +15,45 @@ type Props = {
14
15
  };
15
16
  export declare function CodeBlock(props: Props): JSX.Element;
16
17
  declare const CODE_RENDERERS: {
17
- code: NodeRenderer<Code>;
18
+ code: NodeRenderer<{
19
+ type?: "code" | undefined;
20
+ lang?: string | undefined;
21
+ meta?: string | undefined;
22
+ class?: string | undefined;
23
+ showLineNumbers?: boolean | undefined;
24
+ startingLineNumber?: number | undefined;
25
+ emphasizeLines?: number[] | undefined;
26
+ identifier?: unknown;
27
+ label?: unknown;
28
+ value?: unknown;
29
+ position?: unknown;
30
+ data?: unknown;
31
+ } & {
32
+ identifier?: string | undefined;
33
+ label?: string | undefined;
34
+ } & {
35
+ value: string;
36
+ } & {
37
+ type: string;
38
+ data?: {
39
+ [k: string]: unknown;
40
+ } | undefined;
41
+ position?: {
42
+ start: {
43
+ line: number;
44
+ column: number;
45
+ offset?: number | undefined;
46
+ };
47
+ end: {
48
+ line: number;
49
+ column: number;
50
+ offset?: number | undefined;
51
+ };
52
+ indent?: number[] | undefined;
53
+ } | undefined;
54
+ } & {
55
+ executable: boolean;
56
+ }>;
18
57
  inlineCode: NodeRenderer<InlineCode>;
19
58
  };
20
59
  export default CODE_RENDERERS;
@@ -1 +1 @@
1
- {"version":3,"file":"code.d.ts","sourceRoot":"","sources":["../../src/code.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAQ1D,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,wBAAgB,SAAS,CAAC,KAAK,EAAE,KAAK,eA2DrC;AA2CD,QAAA,MAAM,cAAc;;;CAGnB,CAAC;AAEF,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"code.d.ts","sourceRoot":"","sources":["../../src/code.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAQ,UAAU,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAQ1D,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,wBAAgB,SAAS,CAAC,KAAK,EAAE,KAAK,eA4DrC;AA+CD,QAAA,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBA7C0B,OAAO;;;CAgDpD,CAAC;AAEF,eAAe,cAAc,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;AAoBjD,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,CAkB1D,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;AAqBjD,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,CAmB1D,CAAC;AAEF,wBAAgB,QAAQ,CACtB,IAAI,EAAE,aAAa,GAAG,IAAI,EAC1B,SAAS,GAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAqB,6BAU5D"}
@@ -0,0 +1,7 @@
1
+ import type { NodeRenderer } from '@myst-theme/providers';
2
+ export declare const InlineExpression: NodeRenderer;
3
+ declare const INLINE_EXPRESSION_RENDERERS: {
4
+ inlineExpression: NodeRenderer<any>;
5
+ };
6
+ export default INLINE_EXPRESSION_RENDERERS;
7
+ //# sourceMappingURL=inlineExpression.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inlineExpression.d.ts","sourceRoot":"","sources":["../../src/inlineExpression.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAG1D,eAAO,MAAM,gBAAgB,EAAE,YAa9B,CAAC;AAEF,QAAA,MAAM,2BAA2B;;CAEhC,CAAC;AAEF,eAAe,2BAA2B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "myst-to-react",
3
- "version": "0.1.36",
3
+ "version": "0.1.38",
4
4
  "main": "dist/cjs/index.js",
5
5
  "types": "dist/types/index.d.ts",
6
6
  "files": [
@@ -17,14 +17,14 @@
17
17
  "build": "npm-run-all -l clean -p build:cjs build:types"
18
18
  },
19
19
  "dependencies": {
20
- "@myst-theme/providers": "^0.1.36",
20
+ "@myst-theme/providers": "^0.1.38",
21
21
  "@headlessui/react": "^1.7.13",
22
22
  "@heroicons/react": "^2.0.13",
23
23
  "@popperjs/core": "^2.11.6",
24
24
  "buffer": "^6.0.3",
25
25
  "classnames": "^2.3.2",
26
26
  "myst-common": "^0.0.16",
27
- "myst-config": "^0.0.12",
27
+ "myst-config": "^0.0.14",
28
28
  "myst-spec": "^0.0.4",
29
29
  "nanoid": "^4.0.0",
30
30
  "react-popper": "^2.3.0",