@platecms/delta-cast-util-to-hast 0.6.0 → 0.7.0
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/package.json +4 -5
- package/src/{index.d.ts → index.ts} +1 -0
- package/src/lib/elements/blockquote.ts +13 -0
- package/src/lib/elements/bold.ts +13 -0
- package/src/lib/elements/code.ts +13 -0
- package/src/lib/elements/contentValue.ts +15 -0
- package/src/lib/elements/heading.ts +13 -0
- package/src/lib/elements/{index.d.ts → index.ts} +16 -1
- package/src/lib/elements/italic.ts +13 -0
- package/src/lib/elements/link.ts +20 -0
- package/src/lib/elements/lists.ts +22 -0
- package/src/lib/elements/paragraph.ts +13 -0
- package/src/lib/elements/strikehrough.ts +13 -0
- package/src/lib/elements/text.ts +9 -0
- package/src/lib/elements/underline.ts +13 -0
- package/src/lib/index.spec.ts +404 -0
- package/src/lib/index.ts +78 -0
- package/src/lib/transformers/index.ts +25 -0
- package/src/lib/utils/index.ts +19 -0
- package/src/index.js +0 -9
- package/src/index.js.map +0 -1
- package/src/lib/elements/blockquote.d.ts +0 -4
- package/src/lib/elements/blockquote.js +0 -13
- package/src/lib/elements/blockquote.js.map +0 -1
- package/src/lib/elements/bold.d.ts +0 -4
- package/src/lib/elements/bold.js +0 -13
- package/src/lib/elements/bold.js.map +0 -1
- package/src/lib/elements/code.d.ts +0 -4
- package/src/lib/elements/code.js +0 -13
- package/src/lib/elements/code.js.map +0 -1
- package/src/lib/elements/contentValue.d.ts +0 -4
- package/src/lib/elements/contentValue.js +0 -14
- package/src/lib/elements/contentValue.js.map +0 -1
- package/src/lib/elements/heading.d.ts +0 -4
- package/src/lib/elements/heading.js +0 -13
- package/src/lib/elements/heading.js.map +0 -1
- package/src/lib/elements/index.js +0 -29
- package/src/lib/elements/index.js.map +0 -1
- package/src/lib/elements/italic.d.ts +0 -4
- package/src/lib/elements/italic.js +0 -13
- package/src/lib/elements/italic.js.map +0 -1
- package/src/lib/elements/link.d.ts +0 -4
- package/src/lib/elements/link.js +0 -19
- package/src/lib/elements/link.js.map +0 -1
- package/src/lib/elements/lists.d.ts +0 -5
- package/src/lib/elements/lists.js +0 -22
- package/src/lib/elements/lists.js.map +0 -1
- package/src/lib/elements/paragraph.d.ts +0 -4
- package/src/lib/elements/paragraph.js +0 -13
- package/src/lib/elements/paragraph.js.map +0 -1
- package/src/lib/elements/strikehrough.d.ts +0 -4
- package/src/lib/elements/strikehrough.js +0 -13
- package/src/lib/elements/strikehrough.js.map +0 -1
- package/src/lib/elements/text.d.ts +0 -3
- package/src/lib/elements/text.js +0 -10
- package/src/lib/elements/text.js.map +0 -1
- package/src/lib/elements/underline.d.ts +0 -4
- package/src/lib/elements/underline.js +0 -13
- package/src/lib/elements/underline.js.map +0 -1
- package/src/lib/index.d.ts +0 -5
- package/src/lib/index.js +0 -57
- package/src/lib/index.js.map +0 -1
- package/src/lib/transformers/index.d.ts +0 -5
- package/src/lib/transformers/index.js +0 -22
- package/src/lib/transformers/index.js.map +0 -1
- package/src/lib/utils/index.d.ts +0 -3
- package/src/lib/utils/index.js +0 -18
- package/src/lib/utils/index.js.map +0 -1
package/src/lib/index.ts
ADDED
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { Root as CastRoot, Content } from "@platecms/delta-cast";
|
|
2
|
+
import { Element as HastElement, Root as HastRoot } from "hast";
|
|
3
|
+
import { zwitch } from "zwitch";
|
|
4
|
+
import {
|
|
5
|
+
blockquote,
|
|
6
|
+
bold,
|
|
7
|
+
code,
|
|
8
|
+
contentValue,
|
|
9
|
+
heading,
|
|
10
|
+
italic,
|
|
11
|
+
link,
|
|
12
|
+
list,
|
|
13
|
+
listItem,
|
|
14
|
+
paragraph,
|
|
15
|
+
strikehrough,
|
|
16
|
+
text,
|
|
17
|
+
underline,
|
|
18
|
+
} from "./elements";
|
|
19
|
+
import { NodeTransformers, flattenTextOnlyContentValueNode } from "./transformers";
|
|
20
|
+
|
|
21
|
+
function defaultHandler(node: Content): HastElement {
|
|
22
|
+
return {
|
|
23
|
+
type: "element",
|
|
24
|
+
tagName: "span",
|
|
25
|
+
properties: {},
|
|
26
|
+
children: [
|
|
27
|
+
{
|
|
28
|
+
type: "text",
|
|
29
|
+
value: `Unknown node type (${node.type})`,
|
|
30
|
+
},
|
|
31
|
+
],
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
const one = zwitch("type", {
|
|
36
|
+
handlers: {
|
|
37
|
+
heading,
|
|
38
|
+
list,
|
|
39
|
+
listItem,
|
|
40
|
+
blockquote,
|
|
41
|
+
code,
|
|
42
|
+
paragraph,
|
|
43
|
+
contentValue,
|
|
44
|
+
bold,
|
|
45
|
+
italic,
|
|
46
|
+
underline,
|
|
47
|
+
strikehrough,
|
|
48
|
+
text,
|
|
49
|
+
externalLink: link,
|
|
50
|
+
internalLink: link,
|
|
51
|
+
},
|
|
52
|
+
// Every value supplied to the one function is at least a Content node with a type property
|
|
53
|
+
unknown: (value: unknown, _s: object = {}, _t: object = {}) => defaultHandler(value as Content),
|
|
54
|
+
});
|
|
55
|
+
|
|
56
|
+
export function all(nodes: Content[], state: object = {}, transform: NodeTransformers = {}): HastElement[] {
|
|
57
|
+
let index = -1;
|
|
58
|
+
const results = [];
|
|
59
|
+
|
|
60
|
+
while (++index < nodes.length) {
|
|
61
|
+
const result = one(nodes[index], state, transform);
|
|
62
|
+
results.push(result);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
return results;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
export function toHast(
|
|
69
|
+
value: CastRoot,
|
|
70
|
+
transform: NodeTransformers = {
|
|
71
|
+
contentValue: flattenTextOnlyContentValueNode,
|
|
72
|
+
},
|
|
73
|
+
): HastRoot {
|
|
74
|
+
return {
|
|
75
|
+
type: "root",
|
|
76
|
+
children: all(value.children, {}, transform),
|
|
77
|
+
};
|
|
78
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { InterpolatedContentValue } from "@platecms/delta-cast";
|
|
2
|
+
import { hasChildren, isBlockContent } from "../utils";
|
|
3
|
+
|
|
4
|
+
export interface NodeTransformers {
|
|
5
|
+
contentValue?: (node: InterpolatedContentValue) => InterpolatedContentValue;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export function flattenTextOnlyContentValueNode(node: InterpolatedContentValue): InterpolatedContentValue {
|
|
9
|
+
if (node.value && node.value.children.length === 1 && hasChildren(node.value.children[0])) {
|
|
10
|
+
return {
|
|
11
|
+
prn: node.prn,
|
|
12
|
+
type: "contentValue",
|
|
13
|
+
value: {
|
|
14
|
+
...node.value,
|
|
15
|
+
children: isBlockContent(node.value.children[0]) ? node.value.children[0].children : [],
|
|
16
|
+
},
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
return {
|
|
21
|
+
prn: node.prn,
|
|
22
|
+
type: "contentValue",
|
|
23
|
+
value: node.value,
|
|
24
|
+
};
|
|
25
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { BlockContent, Content } from "@platecms/delta-cast";
|
|
2
|
+
|
|
3
|
+
export function hasChildren(node?: Content): boolean {
|
|
4
|
+
if (!node) {
|
|
5
|
+
return false;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
return "children" in node;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export function isBlockContent(node?: Content): node is BlockContent {
|
|
12
|
+
return (
|
|
13
|
+
node?.type === "paragraph" ||
|
|
14
|
+
node?.type === "heading" ||
|
|
15
|
+
node?.type === "list" ||
|
|
16
|
+
node?.type === "blockquote" ||
|
|
17
|
+
node?.type === "code"
|
|
18
|
+
);
|
|
19
|
+
}
|
package/src/index.js
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.toHast = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
var lib_1 = require("./lib");
|
|
6
|
-
Object.defineProperty(exports, "toHast", { enumerable: true, get: function () { return lib_1.toHast; } });
|
|
7
|
-
tslib_1.__exportStar(require("./lib/utils"), exports);
|
|
8
|
-
tslib_1.__exportStar(require("./lib/transformers"), exports);
|
|
9
|
-
//# sourceMappingURL=index.js.map
|
package/src/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/cast-util-to-hast/src/index.ts"],"names":[],"mappings":";;;;AAAA,6BAA+B;AAAtB,6FAAA,MAAM,OAAA;AAEf,sDAA4B;AAC5B,6DAAmC"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.blockquote = blockquote;
|
|
4
|
-
const __1 = require("..");
|
|
5
|
-
function blockquote(node, state = {}, transform = {}) {
|
|
6
|
-
return {
|
|
7
|
-
type: "element",
|
|
8
|
-
tagName: "blockquote",
|
|
9
|
-
properties: {},
|
|
10
|
-
children: (0, __1.all)(node.children, state, transform),
|
|
11
|
-
};
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=blockquote.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"blockquote.js","sourceRoot":"","sources":["../../../../../../../packages/cast-util-to-hast/src/lib/elements/blockquote.ts"],"names":[],"mappings":";;AAKA,gCAOC;AAVD,0BAAyB;AAGzB,SAAgB,UAAU,CAAC,IAAgB,EAAE,QAAgB,EAAE,EAAE,YAA8B,EAAE;IAC/F,OAAO;QACL,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,YAAY;QACrB,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,IAAA,OAAG,EAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC;KAC/C,CAAC;AACJ,CAAC"}
|
package/src/lib/elements/bold.js
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.bold = bold;
|
|
4
|
-
const __1 = require("..");
|
|
5
|
-
function bold(node, state = {}, transform = {}) {
|
|
6
|
-
return {
|
|
7
|
-
type: "element",
|
|
8
|
-
tagName: "strong",
|
|
9
|
-
properties: {},
|
|
10
|
-
children: (0, __1.all)(node.children, state, transform),
|
|
11
|
-
};
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=bold.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bold.js","sourceRoot":"","sources":["../../../../../../../packages/cast-util-to-hast/src/lib/elements/bold.ts"],"names":[],"mappings":";;AAKA,oBAOC;AAVD,0BAAyB;AAGzB,SAAgB,IAAI,CAAC,IAAU,EAAE,QAAgB,EAAE,EAAE,YAA8B,EAAE;IACnF,OAAO;QACL,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,QAAQ;QACjB,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,IAAA,OAAG,EAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC;KAC/C,CAAC;AACJ,CAAC"}
|
package/src/lib/elements/code.js
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.code = code;
|
|
4
|
-
const __1 = require("..");
|
|
5
|
-
function code(node, state = {}, transform = {}) {
|
|
6
|
-
return {
|
|
7
|
-
type: "element",
|
|
8
|
-
tagName: "code",
|
|
9
|
-
properties: { lang: node.lang },
|
|
10
|
-
children: (0, __1.all)(node.children, state, transform),
|
|
11
|
-
};
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=code.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"code.js","sourceRoot":"","sources":["../../../../../../../packages/cast-util-to-hast/src/lib/elements/code.ts"],"names":[],"mappings":";;AAKA,oBAOC;AAZD,0BAAyB;AAKzB,SAAgB,IAAI,CAAC,IAAU,EAAE,QAAgB,EAAE,EAAE,YAA8B,EAAE;IACnF,OAAO;QACL,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,MAAM;QACf,UAAU,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE;QAC/B,QAAQ,EAAE,IAAA,OAAG,EAAE,IAAoC,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC;KAChF,CAAC;AACJ,CAAC"}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import { InterpolatedContentValue } from "@platecms/delta-cast";
|
|
2
|
-
import { Element as HastElement } from "hast";
|
|
3
|
-
import { NodeTransformers } from "../transformers";
|
|
4
|
-
export declare function contentValue(node: InterpolatedContentValue, state: object, transform: NodeTransformers): HastElement;
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.contentValue = contentValue;
|
|
4
|
-
const __1 = require("..");
|
|
5
|
-
function contentValue(node, state, transform) {
|
|
6
|
-
const transformedNode = transform.contentValue ? transform.contentValue(node) : node;
|
|
7
|
-
return {
|
|
8
|
-
type: "element",
|
|
9
|
-
tagName: "span",
|
|
10
|
-
properties: {},
|
|
11
|
-
children: transformedNode.value ? (0, __1.all)(transformedNode.value.children, state, transform) : [],
|
|
12
|
-
};
|
|
13
|
-
}
|
|
14
|
-
//# sourceMappingURL=contentValue.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"contentValue.js","sourceRoot":"","sources":["../../../../../../../packages/cast-util-to-hast/src/lib/elements/contentValue.ts"],"names":[],"mappings":";;AAKA,oCASC;AAZD,0BAAyB;AAGzB,SAAgB,YAAY,CAAC,IAA8B,EAAE,KAAa,EAAE,SAA2B;IACrG,MAAM,eAAe,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAErF,OAAO;QACL,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,MAAM;QACf,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,IAAA,OAAG,EAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE;KAC7F,CAAC;AACJ,CAAC"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.heading = heading;
|
|
4
|
-
const __1 = require("..");
|
|
5
|
-
function heading(node, state = {}, transform = {}) {
|
|
6
|
-
return {
|
|
7
|
-
type: "element",
|
|
8
|
-
tagName: `h${node.level}`,
|
|
9
|
-
properties: {},
|
|
10
|
-
children: (0, __1.all)(node.children, state, transform),
|
|
11
|
-
};
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=heading.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"heading.js","sourceRoot":"","sources":["../../../../../../../packages/cast-util-to-hast/src/lib/elements/heading.ts"],"names":[],"mappings":";;AAKA,0BAOC;AAXD,0BAAyB;AAIzB,SAAgB,OAAO,CAAC,IAAa,EAAE,QAAgB,EAAE,EAAE,YAA8B,EAAE;IACzF,OAAO;QACL,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,IAAI,IAAI,CAAC,KAAK,EAAE;QACzB,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,IAAA,OAAG,EAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC;KAC/C,CAAC;AACJ,CAAC"}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.blockquote = exports.text = exports.strikehrough = exports.underline = exports.italic = exports.bold = exports.paragraph = exports.contentValue = exports.code = exports.listItem = exports.list = exports.link = exports.heading = void 0;
|
|
4
|
-
const heading_1 = require("./heading");
|
|
5
|
-
Object.defineProperty(exports, "heading", { enumerable: true, get: function () { return heading_1.heading; } });
|
|
6
|
-
const lists_1 = require("./lists");
|
|
7
|
-
Object.defineProperty(exports, "list", { enumerable: true, get: function () { return lists_1.list; } });
|
|
8
|
-
Object.defineProperty(exports, "listItem", { enumerable: true, get: function () { return lists_1.listItem; } });
|
|
9
|
-
const code_1 = require("./code");
|
|
10
|
-
Object.defineProperty(exports, "code", { enumerable: true, get: function () { return code_1.code; } });
|
|
11
|
-
const contentValue_1 = require("./contentValue");
|
|
12
|
-
Object.defineProperty(exports, "contentValue", { enumerable: true, get: function () { return contentValue_1.contentValue; } });
|
|
13
|
-
const paragraph_1 = require("./paragraph");
|
|
14
|
-
Object.defineProperty(exports, "paragraph", { enumerable: true, get: function () { return paragraph_1.paragraph; } });
|
|
15
|
-
const bold_1 = require("./bold");
|
|
16
|
-
Object.defineProperty(exports, "bold", { enumerable: true, get: function () { return bold_1.bold; } });
|
|
17
|
-
const italic_1 = require("./italic");
|
|
18
|
-
Object.defineProperty(exports, "italic", { enumerable: true, get: function () { return italic_1.italic; } });
|
|
19
|
-
const underline_1 = require("./underline");
|
|
20
|
-
Object.defineProperty(exports, "underline", { enumerable: true, get: function () { return underline_1.underline; } });
|
|
21
|
-
const strikehrough_1 = require("./strikehrough");
|
|
22
|
-
Object.defineProperty(exports, "strikehrough", { enumerable: true, get: function () { return strikehrough_1.strikehrough; } });
|
|
23
|
-
const text_1 = require("./text");
|
|
24
|
-
Object.defineProperty(exports, "text", { enumerable: true, get: function () { return text_1.text; } });
|
|
25
|
-
const blockquote_1 = require("./blockquote");
|
|
26
|
-
Object.defineProperty(exports, "blockquote", { enumerable: true, get: function () { return blockquote_1.blockquote; } });
|
|
27
|
-
const link_1 = require("./link");
|
|
28
|
-
Object.defineProperty(exports, "link", { enumerable: true, get: function () { return link_1.link; } });
|
|
29
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/cast-util-to-hast/src/lib/elements/index.ts"],"names":[],"mappings":";;;AAAA,uCAAoC;AAclC,wFAdO,iBAAO,OAcP;AAbT,mCAAyC;AAevC,qFAfO,YAAI,OAeP;AACJ,yFAhBa,gBAAQ,OAgBb;AAfV,iCAA8B;AAgB5B,qFAhBO,WAAI,OAgBP;AAfN,iDAA8C;AAgB5C,6FAhBO,2BAAY,OAgBP;AAfd,2CAAwC;AAgBtC,0FAhBO,qBAAS,OAgBP;AAfX,iCAA8B;AAgB5B,qFAhBO,WAAI,OAgBP;AAfN,qCAAkC;AAgBhC,uFAhBO,eAAM,OAgBP;AAfR,2CAAwC;AAgBtC,0FAhBO,qBAAS,OAgBP;AAfX,iDAA8C;AAgB5C,6FAhBO,2BAAY,OAgBP;AAfd,iCAA8B;AAgB5B,qFAhBO,WAAI,OAgBP;AAfN,6CAA0C;AAgBxC,2FAhBO,uBAAU,OAgBP;AAfZ,iCAA8B;AAI5B,qFAJO,WAAI,OAIP"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.italic = italic;
|
|
4
|
-
const __1 = require("..");
|
|
5
|
-
function italic(node, state = {}, transform = {}) {
|
|
6
|
-
return {
|
|
7
|
-
type: "element",
|
|
8
|
-
tagName: "em",
|
|
9
|
-
properties: {},
|
|
10
|
-
children: (0, __1.all)(node.children, state, transform),
|
|
11
|
-
};
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=italic.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"italic.js","sourceRoot":"","sources":["../../../../../../../packages/cast-util-to-hast/src/lib/elements/italic.ts"],"names":[],"mappings":";;AAKA,wBAOC;AAVD,0BAAyB;AAGzB,SAAgB,MAAM,CAAC,IAAY,EAAE,QAAgB,EAAE,EAAE,YAA8B,EAAE;IACvF,OAAO;QACL,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,IAAA,OAAG,EAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC;KAC/C,CAAC;AACJ,CAAC"}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import { ExternalLink, InternalLink } from "@platecms/delta-cast";
|
|
2
|
-
import { Element as HastElement } from "hast";
|
|
3
|
-
import { NodeTransformers } from "../transformers";
|
|
4
|
-
export declare function link(node: ExternalLink | InternalLink, state: object, transform: NodeTransformers): HastElement;
|
package/src/lib/elements/link.js
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.link = link;
|
|
4
|
-
const __1 = require("..");
|
|
5
|
-
function link(node, state, transform) {
|
|
6
|
-
if (node.url === undefined) {
|
|
7
|
-
throw new Error("Cannot construct a link with an undefined URL.");
|
|
8
|
-
}
|
|
9
|
-
return {
|
|
10
|
-
type: "element",
|
|
11
|
-
tagName: "a",
|
|
12
|
-
properties: {
|
|
13
|
-
href: node.url,
|
|
14
|
-
target: node.target,
|
|
15
|
-
},
|
|
16
|
-
children: (0, __1.all)(node.children, state, transform),
|
|
17
|
-
};
|
|
18
|
-
}
|
|
19
|
-
//# sourceMappingURL=link.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"link.js","sourceRoot":"","sources":["../../../../../../../packages/cast-util-to-hast/src/lib/elements/link.ts"],"names":[],"mappings":";;AAKA,oBAcC;AAjBD,0BAAyB;AAGzB,SAAgB,IAAI,CAAC,IAAiC,EAAE,KAAa,EAAE,SAA2B;IAChG,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IAED,OAAO;QACL,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,GAAG;QACZ,UAAU,EAAE;YACV,IAAI,EAAE,IAAI,CAAC,GAAG;YACd,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB;QACD,QAAQ,EAAE,IAAA,OAAG,EAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC;KAC/C,CAAC;AACJ,CAAC"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { List, ListItem } from "@platecms/delta-cast";
|
|
2
|
-
import { Element as HastElement } from "hast";
|
|
3
|
-
import { NodeTransformers } from "../transformers";
|
|
4
|
-
export declare function list(node: List, state?: object, transform?: NodeTransformers): HastElement;
|
|
5
|
-
export declare function listItem(node: ListItem, state?: object, transform?: NodeTransformers): HastElement;
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.list = list;
|
|
4
|
-
exports.listItem = listItem;
|
|
5
|
-
const __1 = require("..");
|
|
6
|
-
function list(node, state = {}, transform = {}) {
|
|
7
|
-
return {
|
|
8
|
-
type: "element",
|
|
9
|
-
tagName: node.ordered ? "ol" : "ul",
|
|
10
|
-
properties: {},
|
|
11
|
-
children: (0, __1.all)(node.children, state, transform),
|
|
12
|
-
};
|
|
13
|
-
}
|
|
14
|
-
function listItem(node, state = {}, transform = {}) {
|
|
15
|
-
return {
|
|
16
|
-
type: "element",
|
|
17
|
-
tagName: "li",
|
|
18
|
-
properties: {},
|
|
19
|
-
children: (0, __1.all)(node.children, state, transform),
|
|
20
|
-
};
|
|
21
|
-
}
|
|
22
|
-
//# sourceMappingURL=lists.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"lists.js","sourceRoot":"","sources":["../../../../../../../packages/cast-util-to-hast/src/lib/elements/lists.ts"],"names":[],"mappings":";;AAKA,oBAOC;AAED,4BAOC;AAnBD,0BAAyB;AAGzB,SAAgB,IAAI,CAAC,IAAU,EAAE,QAAgB,EAAE,EAAE,YAA8B,EAAE;IACnF,OAAO;QACL,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;QACnC,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,IAAA,OAAG,EAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC;KAC/C,CAAC;AACJ,CAAC;AAED,SAAgB,QAAQ,CAAC,IAAc,EAAE,QAAgB,EAAE,EAAE,YAA8B,EAAE;IAC3F,OAAO;QACL,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,IAAA,OAAG,EAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC;KAC/C,CAAC;AACJ,CAAC"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.paragraph = paragraph;
|
|
4
|
-
const __1 = require("..");
|
|
5
|
-
function paragraph(node, state = {}, transform = {}) {
|
|
6
|
-
return {
|
|
7
|
-
type: "element",
|
|
8
|
-
tagName: "p",
|
|
9
|
-
properties: {},
|
|
10
|
-
children: (0, __1.all)(node.children, state, transform),
|
|
11
|
-
};
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=paragraph.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"paragraph.js","sourceRoot":"","sources":["../../../../../../../packages/cast-util-to-hast/src/lib/elements/paragraph.ts"],"names":[],"mappings":";;AAKA,8BAOC;AAVD,0BAAyB;AAGzB,SAAgB,SAAS,CAAC,IAAe,EAAE,QAAgB,EAAE,EAAE,YAA8B,EAAE;IAC7F,OAAO;QACL,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,GAAG;QACZ,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,IAAA,OAAG,EAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC;KAC/C,CAAC;AACJ,CAAC"}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import { Strikethrough } from "@platecms/delta-cast";
|
|
2
|
-
import { Element as HastElement } from "hast";
|
|
3
|
-
import { NodeTransformers } from "../transformers";
|
|
4
|
-
export declare function strikehrough(node: Strikethrough, state?: object, transform?: NodeTransformers): HastElement;
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.strikehrough = strikehrough;
|
|
4
|
-
const __1 = require("..");
|
|
5
|
-
function strikehrough(node, state = {}, transform = {}) {
|
|
6
|
-
return {
|
|
7
|
-
type: "element",
|
|
8
|
-
tagName: "s",
|
|
9
|
-
properties: {},
|
|
10
|
-
children: (0, __1.all)(node.children, state, transform),
|
|
11
|
-
};
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=strikehrough.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"strikehrough.js","sourceRoot":"","sources":["../../../../../../../packages/cast-util-to-hast/src/lib/elements/strikehrough.ts"],"names":[],"mappings":";;AAKA,oCAOC;AAVD,0BAAyB;AAGzB,SAAgB,YAAY,CAAC,IAAmB,EAAE,QAAgB,EAAE,EAAE,YAA8B,EAAE;IACpG,OAAO;QACL,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,GAAG;QACZ,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,IAAA,OAAG,EAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC;KAC/C,CAAC;AACJ,CAAC"}
|
package/src/lib/elements/text.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"text.js","sourceRoot":"","sources":["../../../../../../../packages/cast-util-to-hast/src/lib/elements/text.ts"],"names":[],"mappings":";;AAGA,oBAKC;AALD,SAAgB,IAAI,CAAC,IAAU;IAC7B,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,IAAI,CAAC,KAAK;KAClB,CAAC;AACJ,CAAC"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.underline = underline;
|
|
4
|
-
const __1 = require("..");
|
|
5
|
-
function underline(node, state = {}, transform = {}) {
|
|
6
|
-
return {
|
|
7
|
-
type: "element",
|
|
8
|
-
tagName: "u",
|
|
9
|
-
properties: {},
|
|
10
|
-
children: (0, __1.all)(node.children, state, transform),
|
|
11
|
-
};
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=underline.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"underline.js","sourceRoot":"","sources":["../../../../../../../packages/cast-util-to-hast/src/lib/elements/underline.ts"],"names":[],"mappings":";;AAKA,8BAOC;AAVD,0BAAyB;AAGzB,SAAgB,SAAS,CAAC,IAAe,EAAE,QAAgB,EAAE,EAAE,YAA8B,EAAE;IAC7F,OAAO;QACL,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,GAAG;QACZ,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,IAAA,OAAG,EAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC;KAC/C,CAAC;AACJ,CAAC"}
|
package/src/lib/index.d.ts
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { Root as CastRoot, Content } from "@platecms/delta-cast";
|
|
2
|
-
import { Element as HastElement, Root as HastRoot } from "hast";
|
|
3
|
-
import { NodeTransformers } from "./transformers";
|
|
4
|
-
export declare function all(nodes: Content[], state?: object, transform?: NodeTransformers): HastElement[];
|
|
5
|
-
export declare function toHast(value: CastRoot, transform?: NodeTransformers): HastRoot;
|
package/src/lib/index.js
DELETED
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.all = all;
|
|
4
|
-
exports.toHast = toHast;
|
|
5
|
-
const zwitch_1 = require("zwitch");
|
|
6
|
-
const elements_1 = require("./elements");
|
|
7
|
-
const transformers_1 = require("./transformers");
|
|
8
|
-
function defaultHandler(node) {
|
|
9
|
-
return {
|
|
10
|
-
type: "element",
|
|
11
|
-
tagName: "span",
|
|
12
|
-
properties: {},
|
|
13
|
-
children: [
|
|
14
|
-
{
|
|
15
|
-
type: "text",
|
|
16
|
-
value: `Unknown node type (${node.type})`,
|
|
17
|
-
},
|
|
18
|
-
],
|
|
19
|
-
};
|
|
20
|
-
}
|
|
21
|
-
const one = (0, zwitch_1.zwitch)("type", {
|
|
22
|
-
handlers: {
|
|
23
|
-
heading: elements_1.heading,
|
|
24
|
-
list: elements_1.list,
|
|
25
|
-
listItem: elements_1.listItem,
|
|
26
|
-
blockquote: elements_1.blockquote,
|
|
27
|
-
code: elements_1.code,
|
|
28
|
-
paragraph: elements_1.paragraph,
|
|
29
|
-
contentValue: elements_1.contentValue,
|
|
30
|
-
bold: elements_1.bold,
|
|
31
|
-
italic: elements_1.italic,
|
|
32
|
-
underline: elements_1.underline,
|
|
33
|
-
strikehrough: elements_1.strikehrough,
|
|
34
|
-
text: elements_1.text,
|
|
35
|
-
externalLink: elements_1.link,
|
|
36
|
-
internalLink: elements_1.link,
|
|
37
|
-
},
|
|
38
|
-
unknown: (value, _s = {}, _t = {}) => defaultHandler(value),
|
|
39
|
-
});
|
|
40
|
-
function all(nodes, state = {}, transform = {}) {
|
|
41
|
-
let index = -1;
|
|
42
|
-
const results = [];
|
|
43
|
-
while (++index < nodes.length) {
|
|
44
|
-
const result = one(nodes[index], state, transform);
|
|
45
|
-
results.push(result);
|
|
46
|
-
}
|
|
47
|
-
return results;
|
|
48
|
-
}
|
|
49
|
-
function toHast(value, transform = {
|
|
50
|
-
contentValue: transformers_1.flattenTextOnlyContentValueNode,
|
|
51
|
-
}) {
|
|
52
|
-
return {
|
|
53
|
-
type: "root",
|
|
54
|
-
children: all(value.children, {}, transform),
|
|
55
|
-
};
|
|
56
|
-
}
|
|
57
|
-
//# sourceMappingURL=index.js.map
|
package/src/lib/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/cast-util-to-hast/src/lib/index.ts"],"names":[],"mappings":";;AAuDA,kBAUC;AAED,wBAUC;AA3ED,mCAAgC;AAChC,yCAcoB;AACpB,iDAAmF;AAEnF,SAAS,cAAc,CAAC,IAAa;IACnC,OAAO;QACL,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,MAAM;QACf,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE;YACR;gBACE,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,sBAAsB,IAAI,CAAC,IAAI,GAAG;aAC1C;SACF;KACF,CAAC;AACJ,CAAC;AAED,MAAM,GAAG,GAAG,IAAA,eAAM,EAAC,MAAM,EAAE;IACzB,QAAQ,EAAE;QACR,OAAO,EAAP,kBAAO;QACP,IAAI,EAAJ,eAAI;QACJ,QAAQ,EAAR,mBAAQ;QACR,UAAU,EAAV,qBAAU;QACV,IAAI,EAAJ,eAAI;QACJ,SAAS,EAAT,oBAAS;QACT,YAAY,EAAZ,uBAAY;QACZ,IAAI,EAAJ,eAAI;QACJ,MAAM,EAAN,iBAAM;QACN,SAAS,EAAT,oBAAS;QACT,YAAY,EAAZ,uBAAY;QACZ,IAAI,EAAJ,eAAI;QACJ,YAAY,EAAE,eAAI;QAClB,YAAY,EAAE,eAAI;KACnB;IAED,OAAO,EAAE,CAAC,KAAc,EAAE,KAAa,EAAE,EAAE,KAAa,EAAE,EAAE,EAAE,CAAC,cAAc,CAAC,KAAgB,CAAC;CAChG,CAAC,CAAC;AAEH,SAAgB,GAAG,CAAC,KAAgB,EAAE,QAAgB,EAAE,EAAE,YAA8B,EAAE;IACxF,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC;IACf,MAAM,OAAO,GAAG,EAAE,CAAC;IAEnB,OAAO,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;QACnD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvB,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAgB,MAAM,CACpB,KAAe,EACf,YAA8B;IAC5B,YAAY,EAAE,8CAA+B;CAC9C;IAED,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,EAAE,SAAS,CAAC;KAC7C,CAAC;AACJ,CAAC"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { InterpolatedContentValue } from "@platecms/delta-cast";
|
|
2
|
-
export interface NodeTransformers {
|
|
3
|
-
contentValue?: (node: InterpolatedContentValue) => InterpolatedContentValue;
|
|
4
|
-
}
|
|
5
|
-
export declare function flattenTextOnlyContentValueNode(node: InterpolatedContentValue): InterpolatedContentValue;
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.flattenTextOnlyContentValueNode = flattenTextOnlyContentValueNode;
|
|
4
|
-
const utils_1 = require("../utils");
|
|
5
|
-
function flattenTextOnlyContentValueNode(node) {
|
|
6
|
-
if (node.value && node.value.children.length === 1 && (0, utils_1.hasChildren)(node.value.children[0])) {
|
|
7
|
-
return {
|
|
8
|
-
prn: node.prn,
|
|
9
|
-
type: "contentValue",
|
|
10
|
-
value: {
|
|
11
|
-
...node.value,
|
|
12
|
-
children: (0, utils_1.isBlockContent)(node.value.children[0]) ? node.value.children[0].children : [],
|
|
13
|
-
},
|
|
14
|
-
};
|
|
15
|
-
}
|
|
16
|
-
return {
|
|
17
|
-
prn: node.prn,
|
|
18
|
-
type: "contentValue",
|
|
19
|
-
value: node.value,
|
|
20
|
-
};
|
|
21
|
-
}
|
|
22
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/cast-util-to-hast/src/lib/transformers/index.ts"],"names":[],"mappings":";;AAOA,0EAiBC;AAvBD,oCAAuD;AAMvD,SAAgB,+BAA+B,CAAC,IAA8B;IAC5E,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,IAAA,mBAAW,EAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1F,OAAO;YACL,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,IAAI,EAAE,cAAc;YACpB,KAAK,EAAE;gBACL,GAAG,IAAI,CAAC,KAAK;gBACb,QAAQ,EAAE,IAAA,sBAAc,EAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;aACxF;SACF,CAAC;IACJ,CAAC;IAED,OAAO;QACL,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,IAAI,EAAE,cAAc;QACpB,KAAK,EAAE,IAAI,CAAC,KAAK;KAClB,CAAC;AACJ,CAAC"}
|
package/src/lib/utils/index.d.ts
DELETED
package/src/lib/utils/index.js
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.hasChildren = hasChildren;
|
|
4
|
-
exports.isBlockContent = isBlockContent;
|
|
5
|
-
function hasChildren(node) {
|
|
6
|
-
if (!node) {
|
|
7
|
-
return false;
|
|
8
|
-
}
|
|
9
|
-
return "children" in node;
|
|
10
|
-
}
|
|
11
|
-
function isBlockContent(node) {
|
|
12
|
-
return (node?.type === "paragraph" ||
|
|
13
|
-
node?.type === "heading" ||
|
|
14
|
-
node?.type === "list" ||
|
|
15
|
-
node?.type === "blockquote" ||
|
|
16
|
-
node?.type === "code");
|
|
17
|
-
}
|
|
18
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/cast-util-to-hast/src/lib/utils/index.ts"],"names":[],"mappings":";;AAEA,kCAMC;AAED,wCAQC;AAhBD,SAAgB,WAAW,CAAC,IAAc;IACxC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,UAAU,IAAI,IAAI,CAAC;AAC5B,CAAC;AAED,SAAgB,cAAc,CAAC,IAAc;IAC3C,OAAO,CACL,IAAI,EAAE,IAAI,KAAK,WAAW;QAC1B,IAAI,EAAE,IAAI,KAAK,SAAS;QACxB,IAAI,EAAE,IAAI,KAAK,MAAM;QACrB,IAAI,EAAE,IAAI,KAAK,YAAY;QAC3B,IAAI,EAAE,IAAI,KAAK,MAAM,CACtB,CAAC;AACJ,CAAC"}
|