@haklex/rich-litexml 0.52.0 → 0.54.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/dist/browser.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { a as createDefaultRegistry, c as LitexmlRegistry, d as registerParseHTML, i as deserializeNodesFromXml, l as registerCustomReaders, n as serializeToXml, o as registerCustomWriters, r as deserializeFromXml, s as registerBuiltinWriters, t as serializeNodesToXml, u as registerBuiltinReaders } from "./src-COIhAhyB.js";
1
+ import { a as createDefaultRegistry, c as LitexmlRegistry, d as registerParseHTML, i as deserializeNodesFromXml, l as registerCustomReaders, n as serializeToXml, o as registerCustomWriters, r as deserializeFromXml, s as registerBuiltinWriters, t as serializeNodesToXml, u as registerBuiltinReaders } from "./src-BcPLrM3G.js";
2
2
  //#region src/index-browser.ts
3
3
  registerParseHTML((html) => new DOMParser().parseFromString(html, "text/html"));
4
4
  //#endregion
package/dist/node.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { a as createDefaultRegistry, c as LitexmlRegistry, d as registerParseHTML, i as deserializeNodesFromXml, l as registerCustomReaders, n as serializeToXml, o as registerCustomWriters, r as deserializeFromXml, s as registerBuiltinWriters, t as serializeNodesToXml, u as registerBuiltinReaders } from "./src-COIhAhyB.js";
1
+ import { a as createDefaultRegistry, c as LitexmlRegistry, d as registerParseHTML, i as deserializeNodesFromXml, l as registerCustomReaders, n as serializeToXml, o as registerCustomWriters, r as deserializeFromXml, s as registerBuiltinWriters, t as serializeNodesToXml, u as registerBuiltinReaders } from "./src-BcPLrM3G.js";
2
2
  import { parseHTML } from "linkedom";
3
3
  //#region src/index-node.ts
4
4
  registerParseHTML((html) => parseHTML(html).document);
@@ -1 +1 @@
1
- {"version":3,"file":"custom.d.ts","sourceRoot":"","sources":["../../src/readers/custom.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AA0FnD,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI,CAwgBrE"}
1
+ {"version":3,"file":"custom.d.ts","sourceRoot":"","sources":["../../src/readers/custom.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AA2FnD,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI,CAmiBrE"}
@@ -151,6 +151,7 @@ var makePollIdSuffix = customAlphabet(idAlphabet, 10);
151
151
  var makeOptionIdSuffix = customAlphabet(idAlphabet, 6);
152
152
  var makeChatParticipantId = customAlphabet(idAlphabet, 6);
153
153
  var makeChatMessageId = customAlphabet(idAlphabet, 8);
154
+ var makeStepId = customAlphabet(idAlphabet, 8);
154
155
  function extractBlockId(el) {
155
156
  const id = el.getAttribute("id");
156
157
  return id ? { $: { blockId: id } } : {};
@@ -518,6 +519,30 @@ function registerCustomReaders(registry) {
518
519
  version: 1
519
520
  };
520
521
  });
522
+ registry.registerReader("steps", (el, ctx) => {
523
+ const steps = [];
524
+ for (const child of el.children) {
525
+ if (child.tagName.toLowerCase() !== "step") continue;
526
+ steps.push({
527
+ id: child.getAttribute("id") || `s_${makeStepId()}`,
528
+ title: child.getAttribute("title") ?? "",
529
+ content: { root: {
530
+ type: "root",
531
+ children: ctx.parseChildren(child),
532
+ direction: "ltr",
533
+ format: "",
534
+ indent: 0,
535
+ version: 1
536
+ } }
537
+ });
538
+ }
539
+ return {
540
+ type: "steps",
541
+ ...extractBlockId(el),
542
+ steps,
543
+ version: 1
544
+ };
545
+ });
521
546
  registry.registerReader("chat", (el) => {
522
547
  const variant = el.getAttribute("variant") === "user-user" ? "user-user" : "user-agent";
523
548
  const participants = [];
@@ -1056,6 +1081,22 @@ function registerCustomWriters(registry) {
1056
1081
  children: files
1057
1082
  };
1058
1083
  });
1084
+ registry.registerWriter("steps", (node, ctx) => {
1085
+ const n = node;
1086
+ const steps = (n.steps ?? []).map((step) => ({
1087
+ tag: "step",
1088
+ attrs: optAttr({
1089
+ id: step.id,
1090
+ title: step.title
1091
+ }),
1092
+ children: ctx.serializeNestedState(step.content)
1093
+ }));
1094
+ return {
1095
+ tag: "steps",
1096
+ attrs: blockId(n),
1097
+ children: steps
1098
+ };
1099
+ });
1059
1100
  registry.registerWriter("chat", (node) => {
1060
1101
  const n = node;
1061
1102
  const participantsEl = {
@@ -1384,6 +1425,8 @@ var BLOCK_TAGS = /* @__PURE__ */ new Set([
1384
1425
  "footnote-section",
1385
1426
  "grid",
1386
1427
  "cell",
1428
+ "steps",
1429
+ "step",
1387
1430
  "excalidraw"
1388
1431
  ]);
1389
1432
  function isBlockContainer(element) {
@@ -1 +1 @@
1
- {"version":3,"file":"custom.d.ts","sourceRoot":"","sources":["../../src/writers/custom.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAenD,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI,CAiYrE"}
1
+ {"version":3,"file":"custom.d.ts","sourceRoot":"","sources":["../../src/writers/custom.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAenD,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI,CA2YrE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@haklex/rich-litexml",
3
- "version": "0.52.0",
3
+ "version": "0.54.0",
4
4
  "description": "Bidirectional Lexical SerializedNode <-> XML conversion with plugin registry",
5
5
  "repository": {
6
6
  "type": "git",