@platecms/delta-cast 0.4.1 → 1.0.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/README.md +60 -0
- package/package.json +2 -2
- package/src/index.d.ts +1 -0
- package/src/index.js +1 -0
- package/src/index.js.map +1 -1
- package/src/lib/normalize-cast.d.ts +9 -0
- package/src/lib/normalize-cast.js +190 -0
- package/src/lib/normalize-cast.js.map +1 -0
- package/src/lib/validate-cast.js +1 -1
- package/src/lib/validate-cast.js.map +1 -1
package/README.md
CHANGED
|
@@ -51,3 +51,63 @@ const castTree = {
|
|
|
51
51
|
const hast = toHast(castTree);
|
|
52
52
|
const htmlString = toHtml(hast);
|
|
53
53
|
```
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
# Normalization
|
|
57
|
+
|
|
58
|
+
A CAST tree can and should be normalized to ensure that it is in a consistent and predictable state. Different trees that represent the same content should be normalized to a single, canonical form.
|
|
59
|
+
|
|
60
|
+
## Usage
|
|
61
|
+
|
|
62
|
+
```typescript
|
|
63
|
+
import { normalizeCast } from '@platecms/delta-cast';
|
|
64
|
+
|
|
65
|
+
const normalizedTree = normalizeCast(castTree);
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
## Normalization Rules
|
|
69
|
+
|
|
70
|
+
The `normalizeCast` function applies the following normalization rules in an iterative process:
|
|
71
|
+
|
|
72
|
+
### 1. Adjacent Node Merging
|
|
73
|
+
- **Text nodes**: Merge adjacent `text` nodes by concatenating their values
|
|
74
|
+
- **Formatting nodes**: Merge adjacent formatting nodes of the same type by combining their children
|
|
75
|
+
- **Mergeable types**: `text`, `bold`, `italic`, `underline`, `strikethrough`, `highlight`
|
|
76
|
+
- **Non-mergeable types**: `contentValue`, `externalLink`, `internalLink`, `inlineCode`
|
|
77
|
+
|
|
78
|
+
### 2. Formatting Node Nesting Order
|
|
79
|
+
Formatting nodes are reordered to follow a consistent hierarchy:
|
|
80
|
+
```
|
|
81
|
+
bold -> italic -> underline -> strikethrough -> highlight
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
### 3. Duplicate Formatting Removal
|
|
85
|
+
- Remove duplicate formatting nodes in a single path (e.g., `bold` containing `bold`)
|
|
86
|
+
- This prevents redundant nesting that doesn't change the visual output
|
|
87
|
+
|
|
88
|
+
### 4. Empty Node Cleanup
|
|
89
|
+
- Remove empty formatting (inline) nodes that contain no children
|
|
90
|
+
- Block-level container nodes (paragraphs, headings, lists, etc.) are preserved even when empty
|
|
91
|
+
|
|
92
|
+
## Special Behavior
|
|
93
|
+
|
|
94
|
+
- **ContentValue nodes**: Completely untouched - their nested CAST trees are never normalized
|
|
95
|
+
- **Property preservation**: All node properties (`url`, `target`, `prn`, `level`, `lang`, etc.) are preserved
|
|
96
|
+
- **Iterative process**: Normalization is an iterative process that continues until no more changes are detected
|
|
97
|
+
- **Immutable**: Returns a new tree without modifying the input
|
|
98
|
+
|
|
99
|
+
## Formatting Priority
|
|
100
|
+
|
|
101
|
+
The `FORMATTING_PRIORITY` constant defines the canonical nesting order for formatting nodes:
|
|
102
|
+
|
|
103
|
+
```typescript
|
|
104
|
+
export const FORMATTING_PRIORITY = {
|
|
105
|
+
'bold': 1, // Highest priority
|
|
106
|
+
'italic': 2,
|
|
107
|
+
'underline': 3,
|
|
108
|
+
'strikethrough': 4,
|
|
109
|
+
'highlight': 5 // Lowest priority
|
|
110
|
+
} as const;
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
This constant should be used across all packages (e.g., `cast-util-to-slate`, `cast-util-from-slate`) to ensure consistent formatting hierarchy throughout the platform.
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@platecms/delta-cast",
|
|
3
3
|
"description": "Package containing the definition of CAST",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "1.0.0",
|
|
5
5
|
"license": "UNLICENSED",
|
|
6
6
|
"publishConfig": {
|
|
7
7
|
"access": "public"
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
"tslib": "2.8.1"
|
|
23
23
|
},
|
|
24
24
|
"peerDependencies": {
|
|
25
|
-
"@platecms/delta-plate-resource-notation": "0.
|
|
25
|
+
"@platecms/delta-plate-resource-notation": "1.0.0"
|
|
26
26
|
},
|
|
27
27
|
"type": "commonjs"
|
|
28
28
|
}
|
package/src/index.d.ts
CHANGED
package/src/index.js
CHANGED
|
@@ -3,4 +3,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
4
|
tslib_1.__exportStar(require("./lib/validate-cast"), exports);
|
|
5
5
|
tslib_1.__exportStar(require("./lib/invalid-cast.error"), exports);
|
|
6
|
+
tslib_1.__exportStar(require("./lib/normalize-cast"), exports);
|
|
6
7
|
//# sourceMappingURL=index.js.map
|
package/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/cast/src/index.ts"],"names":[],"mappings":";;;AACA,8DAAoC;AACpC,mEAAyC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/cast/src/index.ts"],"names":[],"mappings":";;;AACA,8DAAoC;AACpC,mEAAyC;AACzC,+DAAqC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Root } from "./schemas/schema";
|
|
2
|
+
export declare const FORMATTING_PRIORITY: {
|
|
3
|
+
readonly bold: 1;
|
|
4
|
+
readonly italic: 2;
|
|
5
|
+
readonly underline: 3;
|
|
6
|
+
readonly strikethrough: 4;
|
|
7
|
+
readonly highlight: 5;
|
|
8
|
+
};
|
|
9
|
+
export declare function normalizeCast(root: Root): Root;
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FORMATTING_PRIORITY = void 0;
|
|
4
|
+
exports.normalizeCast = normalizeCast;
|
|
5
|
+
exports.FORMATTING_PRIORITY = {
|
|
6
|
+
bold: 1,
|
|
7
|
+
italic: 2,
|
|
8
|
+
underline: 3,
|
|
9
|
+
strikethrough: 4,
|
|
10
|
+
highlight: 5,
|
|
11
|
+
};
|
|
12
|
+
function hasChildren(node) {
|
|
13
|
+
return "children" in node && Array.isArray(node.children);
|
|
14
|
+
}
|
|
15
|
+
function isFormattingNode(node) {
|
|
16
|
+
const formattingTypes = ["bold", "italic", "underline", "strikethrough", "highlight"];
|
|
17
|
+
return formattingTypes.includes(node.type);
|
|
18
|
+
}
|
|
19
|
+
function canMerge(node1, node2) {
|
|
20
|
+
const mergeableTypes = ["bold", "italic", "underline", "strikethrough", "highlight", "text"];
|
|
21
|
+
if (mergeableTypes.includes(node1.type) && node1.type === node2.type) {
|
|
22
|
+
return true;
|
|
23
|
+
}
|
|
24
|
+
return false;
|
|
25
|
+
}
|
|
26
|
+
function mergeNodes(source, target) {
|
|
27
|
+
if (source.type === "text" && target.type === "text") {
|
|
28
|
+
target.value = source.value + target.value;
|
|
29
|
+
}
|
|
30
|
+
else if (source.type === target.type && hasChildren(source) && hasChildren(target)) {
|
|
31
|
+
const sourceWithChildren = source;
|
|
32
|
+
const targetWithChildren = target;
|
|
33
|
+
targetWithChildren.children = [...sourceWithChildren.children, ...targetWithChildren.children];
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
function shouldChildBeAboveParent(childType, parentType) {
|
|
37
|
+
const childPriority = exports.FORMATTING_PRIORITY[childType] || 999;
|
|
38
|
+
const parentPriority = exports.FORMATTING_PRIORITY[parentType] || 999;
|
|
39
|
+
return childPriority < parentPriority;
|
|
40
|
+
}
|
|
41
|
+
function splitParentIntoSeparateNodes(grandParent, parent, child, parentIndexInGrandParent, childIndexInParent) {
|
|
42
|
+
const siblingsBeforeChild = parent.children.slice(0, childIndexInParent);
|
|
43
|
+
const siblingsAfterChild = parent.children.slice(childIndexInParent + 1);
|
|
44
|
+
let insertionOffset = 0;
|
|
45
|
+
if (siblingsBeforeChild.length > 0) {
|
|
46
|
+
const newBeforeParent = { ...parent, children: siblingsBeforeChild };
|
|
47
|
+
grandParent.children.splice(parentIndexInGrandParent, 0, newBeforeParent);
|
|
48
|
+
insertionOffset = 1;
|
|
49
|
+
}
|
|
50
|
+
if (siblingsAfterChild.length > 0) {
|
|
51
|
+
const newAfterParent = { ...parent, children: siblingsAfterChild };
|
|
52
|
+
grandParent.children.splice(parentIndexInGrandParent + 1 + insertionOffset, 0, newAfterParent);
|
|
53
|
+
}
|
|
54
|
+
parent.children = [child];
|
|
55
|
+
return insertionOffset;
|
|
56
|
+
}
|
|
57
|
+
function processFormattingChild(grandParent, parent, child, parentIndexInGrandParent, childIndexInParent) {
|
|
58
|
+
if (!shouldChildBeAboveParent(child.type, parent.type)) {
|
|
59
|
+
return false;
|
|
60
|
+
}
|
|
61
|
+
let parentIndexInGrandParentOffset = 0;
|
|
62
|
+
if (parent.children.length > 1) {
|
|
63
|
+
parentIndexInGrandParentOffset += splitParentIntoSeparateNodes(grandParent, parent, child, parentIndexInGrandParent, childIndexInParent);
|
|
64
|
+
}
|
|
65
|
+
parent.children = child.children;
|
|
66
|
+
child.children = [parent];
|
|
67
|
+
grandParent.children[parentIndexInGrandParent + parentIndexInGrandParentOffset] = child;
|
|
68
|
+
return true;
|
|
69
|
+
}
|
|
70
|
+
function bubbleFormattingNodes(node, parent, nodeIndexInParent) {
|
|
71
|
+
let hasChanges = false;
|
|
72
|
+
if (!hasChildren(node)) {
|
|
73
|
+
return hasChanges;
|
|
74
|
+
}
|
|
75
|
+
for (let i = 0; i < node.children.length; i++) {
|
|
76
|
+
const child = node.children[i];
|
|
77
|
+
if (hasChildren(child)) {
|
|
78
|
+
hasChanges = bubbleFormattingNodes(child, node, i) || hasChanges;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
if (!isFormattingNode(node)) {
|
|
82
|
+
return hasChanges;
|
|
83
|
+
}
|
|
84
|
+
if (!parent || nodeIndexInParent === undefined) {
|
|
85
|
+
return hasChanges;
|
|
86
|
+
}
|
|
87
|
+
for (let i = 0; i < node.children.length; i++) {
|
|
88
|
+
const child = node.children[i];
|
|
89
|
+
if (isFormattingNode(child) && hasChildren(child)) {
|
|
90
|
+
hasChanges = processFormattingChild(parent, node, child, nodeIndexInParent, i) || hasChanges;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
return hasChanges;
|
|
94
|
+
}
|
|
95
|
+
function shouldRemoveEmptyNode(node) {
|
|
96
|
+
if (!isFormattingNode(node)) {
|
|
97
|
+
return false;
|
|
98
|
+
}
|
|
99
|
+
if (!hasChildren(node) || node.children.length === 0) {
|
|
100
|
+
return true;
|
|
101
|
+
}
|
|
102
|
+
return false;
|
|
103
|
+
}
|
|
104
|
+
function mergeAdjacentNodes(node) {
|
|
105
|
+
let hasChanges = false;
|
|
106
|
+
for (let i = 0; i < node.children.length - 1; i++) {
|
|
107
|
+
const current = node.children[i];
|
|
108
|
+
const next = node.children[i + 1];
|
|
109
|
+
if (canMerge(current, next)) {
|
|
110
|
+
mergeNodes(current, next);
|
|
111
|
+
node.children.splice(i, 1);
|
|
112
|
+
hasChanges = true;
|
|
113
|
+
i--;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
for (const child of node.children) {
|
|
117
|
+
if (hasChildren(child)) {
|
|
118
|
+
hasChanges = mergeAdjacentNodes(child) || hasChanges;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
return hasChanges;
|
|
122
|
+
}
|
|
123
|
+
function reorderFormattingNodes(node) {
|
|
124
|
+
let hasChanges = true;
|
|
125
|
+
let anyChanges = false;
|
|
126
|
+
while (hasChanges) {
|
|
127
|
+
hasChanges = false;
|
|
128
|
+
hasChanges = bubbleFormattingNodes(node) || hasChanges;
|
|
129
|
+
if (hasChanges) {
|
|
130
|
+
anyChanges = true;
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
return anyChanges;
|
|
134
|
+
}
|
|
135
|
+
function removeDuplicateFormatting(node, ancestorsFormattingNodeTypes, parent, nodeIndexInParent) {
|
|
136
|
+
let hasChanges = false;
|
|
137
|
+
if (!hasChildren(node)) {
|
|
138
|
+
return hasChanges;
|
|
139
|
+
}
|
|
140
|
+
const newAncestorsFormattingNodeTypes = isFormattingNode(node)
|
|
141
|
+
? [...ancestorsFormattingNodeTypes, node.type]
|
|
142
|
+
: ancestorsFormattingNodeTypes;
|
|
143
|
+
for (let i = 0; i < node.children.length; i++) {
|
|
144
|
+
const child = node.children[i];
|
|
145
|
+
if (hasChildren(child)) {
|
|
146
|
+
hasChanges = removeDuplicateFormatting(child, newAncestorsFormattingNodeTypes, node, i) || hasChanges;
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
if (!parent || nodeIndexInParent === undefined) {
|
|
150
|
+
return hasChanges;
|
|
151
|
+
}
|
|
152
|
+
if (ancestorsFormattingNodeTypes.includes(node.type)) {
|
|
153
|
+
parent.children.splice(nodeIndexInParent, 1, ...node.children);
|
|
154
|
+
hasChanges = true;
|
|
155
|
+
}
|
|
156
|
+
return hasChanges;
|
|
157
|
+
}
|
|
158
|
+
function cleanupEmptyNodes(node) {
|
|
159
|
+
let hasChanges = false;
|
|
160
|
+
if (!hasChildren(node)) {
|
|
161
|
+
return hasChanges;
|
|
162
|
+
}
|
|
163
|
+
for (let i = node.children.length - 1; i >= 0; i--) {
|
|
164
|
+
const child = node.children[i];
|
|
165
|
+
if (hasChildren(child)) {
|
|
166
|
+
hasChanges = cleanupEmptyNodes(child) || hasChanges;
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
for (let i = node.children.length - 1; i >= 0; i--) {
|
|
170
|
+
const child = node.children[i];
|
|
171
|
+
if (shouldRemoveEmptyNode(child)) {
|
|
172
|
+
node.children.splice(i, 1);
|
|
173
|
+
hasChanges = true;
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
return hasChanges;
|
|
177
|
+
}
|
|
178
|
+
function normalizeCast(root) {
|
|
179
|
+
let hasChanges = true;
|
|
180
|
+
const currentRoot = JSON.parse(JSON.stringify(root));
|
|
181
|
+
while (hasChanges) {
|
|
182
|
+
hasChanges = false;
|
|
183
|
+
hasChanges = mergeAdjacentNodes(currentRoot) || hasChanges;
|
|
184
|
+
hasChanges = reorderFormattingNodes(currentRoot) || hasChanges;
|
|
185
|
+
hasChanges = removeDuplicateFormatting(currentRoot, []) || hasChanges;
|
|
186
|
+
hasChanges = cleanupEmptyNodes(currentRoot) || hasChanges;
|
|
187
|
+
}
|
|
188
|
+
return currentRoot;
|
|
189
|
+
}
|
|
190
|
+
//# sourceMappingURL=normalize-cast.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"normalize-cast.js","sourceRoot":"","sources":["../../../../../../packages/cast/src/lib/normalize-cast.ts"],"names":[],"mappings":"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"}
|
package/src/lib/validate-cast.js
CHANGED
|
@@ -132,7 +132,7 @@ function assertValidContent(value) {
|
|
|
132
132
|
assertValidInterpolatedContentValue(content);
|
|
133
133
|
break;
|
|
134
134
|
default:
|
|
135
|
-
throw new invalid_cast_error_1.InvalidCastError(
|
|
135
|
+
throw new invalid_cast_error_1.InvalidCastError(`Invalid Content type '${content.type}'.`);
|
|
136
136
|
}
|
|
137
137
|
}
|
|
138
138
|
function validateCast(value) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate-cast.js","sourceRoot":"","sources":["../../../../../../packages/cast/src/lib/validate-cast.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"validate-cast.js","sourceRoot":"","sources":["../../../../../../packages/cast/src/lib/validate-cast.ts"],"names":[],"mappings":"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"}
|