@estiva-app/ui 0.65.2 → 0.65.3
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/RichText.d.ts +2 -0
- package/dist/RichText.d.ts.map +1 -1
- package/dist/index.js +21 -2
- package/dist/index.js.map +2 -2
- package/package.json +1 -1
- package/registry.json +1 -1
- package/src/RichText.stories.tsx +27 -0
- package/src/RichText.test.tsx +35 -0
- package/src/RichText.tsx +40 -8
package/dist/RichText.d.ts
CHANGED
|
@@ -43,6 +43,8 @@ export interface RichTextBlock {
|
|
|
43
43
|
language?: string;
|
|
44
44
|
/** A numbered list's first number. */
|
|
45
45
|
start?: number;
|
|
46
|
+
/** How far a list item is indented under the items above it. A list's items stay flat; this draws them nested. */
|
|
47
|
+
indent?: number;
|
|
46
48
|
attrs?: Record<string, unknown>;
|
|
47
49
|
inline?: readonly RichTextRun[];
|
|
48
50
|
children?: readonly RichTextBlock[];
|
package/dist/RichText.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RichText.d.ts","sourceRoot":"","sources":["../src/RichText.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,SAAS,EAAE,MAAM,OAAO,CAAA;AAKlD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,yEAAyE;AACzE,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,SAAS,MAAM,EAAE,CAAA;IACxB,4EAA4E;IAC5E,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,0DAA0D;AAC1D,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,sEAAsE;IACtE,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,sCAAsC;IACtC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC/B,MAAM,CAAC,EAAE,SAAS,WAAW,EAAE,CAAA;IAC/B,QAAQ,CAAC,EAAE,SAAS,aAAa,EAAE,CAAA;CACpC;AAED,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,OAAO,CAAA;AAE9C,MAAM,WAAW,aAAa;IAC5B,gCAAgC;IAChC,MAAM,EAAE,SAAS,aAAa,EAAE,CAAA;IAChC;;;;OAIG;IACH,IAAI,CAAC,EAAE,YAAY,CAAA;IACnB;;;OAGG;IACH,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,SAAS,CAAA;IACxC,mEAAmE;IACnE,eAAe,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,KAAK,SAAS,CAAA;IACpE;;;OAGG;IACH,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,SAAS,GAAG,SAAS,CAAA;CAC9D;AAqCD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,GAAE,YAAwB,EAAE,SAAS,CAAC,EAAE,MAAM,UAGnF;
|
|
1
|
+
{"version":3,"file":"RichText.d.ts","sourceRoot":"","sources":["../src/RichText.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,SAAS,EAAE,MAAM,OAAO,CAAA;AAKlD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,yEAAyE;AACzE,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,SAAS,MAAM,EAAE,CAAA;IACxB,4EAA4E;IAC5E,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,0DAA0D;AAC1D,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,sEAAsE;IACtE,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,sCAAsC;IACtC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kHAAkH;IAClH,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC/B,MAAM,CAAC,EAAE,SAAS,WAAW,EAAE,CAAA;IAC/B,QAAQ,CAAC,EAAE,SAAS,aAAa,EAAE,CAAA;CACpC;AAED,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,OAAO,CAAA;AAE9C,MAAM,WAAW,aAAa;IAC5B,gCAAgC;IAChC,MAAM,EAAE,SAAS,aAAa,EAAE,CAAA;IAChC;;;;OAIG;IACH,IAAI,CAAC,EAAE,YAAY,CAAA;IACnB;;;OAGG;IACH,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,SAAS,CAAA;IACxC,mEAAmE;IACnE,eAAe,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,KAAK,SAAS,CAAA;IACpE;;;OAGG;IACH,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,SAAS,GAAG,SAAS,CAAA;CAC9D;AAqCD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,GAAE,YAAwB,EAAE,SAAS,CAAC,EAAE,MAAM,UAGnF;AAwMD,wBAAgB,QAAQ,CAAC,EACvB,MAAM,EACN,IAAgB,EAChB,UAA2B,EAC3B,eAA+C,EAC/C,WAAW,GACZ,EAAE,aAAa,sCAQf"}
|
package/dist/index.js
CHANGED
|
@@ -2541,6 +2541,20 @@ function Table({ block, draw: draw2 }) {
|
|
|
2541
2541
|
/* @__PURE__ */ jsx34("tbody", { children: (headerRow ? rows.slice(1) : rows).map((row, i) => /* @__PURE__ */ jsx34("tr", { "data-block-id": row.id, children: cells(row) }, row.id ?? i)) })
|
|
2542
2542
|
] });
|
|
2543
2543
|
}
|
|
2544
|
+
var MAX_DEPTH = 8;
|
|
2545
|
+
function nestItems(items) {
|
|
2546
|
+
const top = [];
|
|
2547
|
+
const path = [];
|
|
2548
|
+
items.forEach((item, key) => {
|
|
2549
|
+
const asked = Number.isInteger(item.indent) && item.indent > 0 ? item.indent : 0;
|
|
2550
|
+
const depth = Math.min(asked, path.length, MAX_DEPTH);
|
|
2551
|
+
path.length = depth;
|
|
2552
|
+
const node = { item, key, below: [] };
|
|
2553
|
+
(depth === 0 ? top : path[depth - 1].below).push(node);
|
|
2554
|
+
path.push(node);
|
|
2555
|
+
});
|
|
2556
|
+
return top;
|
|
2557
|
+
}
|
|
2544
2558
|
function Block({ block, draw: draw2 }) {
|
|
2545
2559
|
const own = draw2.renderBlock?.(block);
|
|
2546
2560
|
if (own !== void 0) return own;
|
|
@@ -2555,8 +2569,13 @@ function Block({ block, draw: draw2 }) {
|
|
|
2555
2569
|
return /* @__PURE__ */ jsx34("p", { "data-block-id": block.id, children: runs });
|
|
2556
2570
|
case "bulletList":
|
|
2557
2571
|
case "orderedList": {
|
|
2558
|
-
const
|
|
2559
|
-
|
|
2572
|
+
const ordered = block.type === "orderedList";
|
|
2573
|
+
const items = (nodes) => nodes.map(({ item, key, below }) => /* @__PURE__ */ jsxs25("li", { "data-block-id": item.id, children: [
|
|
2574
|
+
/* @__PURE__ */ jsx34(Runs, { runs: item.inline, draw: draw2 }),
|
|
2575
|
+
below.length > 0 && (ordered ? /* @__PURE__ */ jsx34("ol", { children: items(below) }) : /* @__PURE__ */ jsx34("ul", { children: items(below) }))
|
|
2576
|
+
] }, item.id ?? key));
|
|
2577
|
+
const top = items(nestItems(block.children ?? []));
|
|
2578
|
+
return ordered ? /* @__PURE__ */ jsx34("ol", { "data-block-id": block.id, start: block.start, children: top }) : /* @__PURE__ */ jsx34("ul", { "data-block-id": block.id, children: top });
|
|
2560
2579
|
}
|
|
2561
2580
|
case "blockquote":
|
|
2562
2581
|
return /* @__PURE__ */ jsx34("blockquote", { "data-block-id": block.id, children: runs });
|