ugly-app 0.1.609 → 0.1.611

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,2 +1,2 @@
1
- export declare const CLI_VERSION = "0.1.609";
1
+ export declare const CLI_VERSION = "0.1.611";
2
2
  //# sourceMappingURL=version.d.ts.map
@@ -1,3 +1,3 @@
1
1
  // Auto-generated by prebuild — do not edit manually
2
- export const CLI_VERSION = "0.1.609";
2
+ export const CLI_VERSION = "0.1.611";
3
3
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MdastViewer.d.ts","sourceRoot":"","sources":["../../../src/markdown/client/MdastViewer.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAsBH,OAAO,EAUL,sBAAsB,EAKvB,MAAM,yBAAyB,CAAC;AAKjC,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG,SAAS,CAAC;AA6BtD,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,oDAAoD;IACpD,GAAG,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,yGAAyG;IACzG,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACxE,mGAAmG;IACnG,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,+BAoDlD;AAipBD;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM;;;EAMvD"}
1
+ {"version":3,"file":"MdastViewer.d.ts","sourceRoot":"","sources":["../../../src/markdown/client/MdastViewer.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAuBH,OAAO,EAUL,sBAAsB,EAKvB,MAAM,yBAAyB,CAAC;AAKjC,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG,SAAS,CAAC;AA6BtD,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,oDAAoD;IACpD,GAAG,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,yGAAyG;IACzG,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACxE,mGAAmG;IACnG,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,+BAuGlD;AAmpBD;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM;;;EAMvD"}
@@ -45,6 +45,57 @@ export function MdastViewer(props) {
45
45
  return result.ast;
46
46
  // Re-parse when katexReady changes to get proper LaTeX rendering
47
47
  }, [props.ast, markdown, katexReady]);
48
+ // Scroll-to-offset: when the viewer is opened at a specific character offset
49
+ // (e.g. a search-result passage), scroll that position into view once it has
50
+ // rendered. Content can mount in async batches, so retry briefly until the
51
+ // target text node appears. This is independent of the TTS `textIndex` cursor.
52
+ const rootRef = useRef(null);
53
+ const scrollView = useScrollView();
54
+ const { priorityOffset, scrollToView: shouldScroll } = props;
55
+ useEffect(() => {
56
+ if (!isDefined(priorityOffset) || !shouldScroll)
57
+ return undefined;
58
+ let cancelled = false;
59
+ let tries = 0;
60
+ const attempt = () => {
61
+ if (cancelled)
62
+ return;
63
+ const els = rootRef.current?.querySelectorAll('[data-text-index]');
64
+ if (els && els.length > 0) {
65
+ let best = null;
66
+ let bestTi = -1;
67
+ let firstEl = null;
68
+ els.forEach((el) => {
69
+ const ti = Number(el.dataset.textIndex);
70
+ if (Number.isNaN(ti))
71
+ return;
72
+ if (!firstEl)
73
+ firstEl = el;
74
+ if (ti <= priorityOffset && ti > bestTi) {
75
+ best = el;
76
+ bestTi = ti;
77
+ }
78
+ });
79
+ const targetEl = (best ?? firstEl);
80
+ if (targetEl) {
81
+ scrollView.scrollToView({
82
+ viewRef: { current: targetEl },
83
+ animated: true,
84
+ bottomOffset: 40,
85
+ });
86
+ return;
87
+ }
88
+ }
89
+ if (tries++ < 20) {
90
+ setTimeout(attempt, 100);
91
+ }
92
+ };
93
+ const t = setTimeout(attempt, 50);
94
+ return () => {
95
+ cancelled = true;
96
+ clearTimeout(t);
97
+ };
98
+ }, [priorityOffset, shouldScroll, markdown, ast, scrollView]);
48
99
  const themeClass = props.isDark ? 'prosemirror-dark' : 'prosemirror-light';
49
100
  return (_jsx(MdastViewerContext.Provider, { value: {
50
101
  width: props.width,
@@ -55,7 +106,7 @@ export function MdastViewer(props) {
55
106
  isDark: props.isDark ?? false,
56
107
  onCheckboxToggle: props.onCheckboxToggle,
57
108
  priorityOffset: props.priorityOffset,
58
- }, children: _jsx("div", { className: `ProseMirror ${themeClass}`, style: {
109
+ }, children: _jsx("div", { ref: rootRef, className: `ProseMirror ${themeClass}`, style: {
59
110
  maxWidth: props.width,
60
111
  color: props.color,
61
112
  filter: props.shadow ? 'var(--app-shadow-text)' : undefined,
@@ -269,12 +320,13 @@ function MdastTextRenderer({ node }) {
269
320
  }
270
321
  // Normal text or text after current position (faded)
271
322
  const textOpacity = isDefined(state.textIndex) && state.textIndex < node.textIndex ? 0.5 : 1;
272
- // Render with offset attributes
323
+ // Render with offset attributes. `data-text-index` carries the node's
324
+ // text-offset so scroll-to-offset (priorityOffset) can locate the element.
273
325
  if (isDefined(mdStart) && isDefined(mdEnd)) {
274
326
  if (textOpacity !== 1) {
275
- return (_jsx("span", { "data-md-start": mdStart, "data-md-end": mdEnd, style: { opacity: textOpacity }, children: content }));
327
+ return (_jsx("span", { "data-md-start": mdStart, "data-md-end": mdEnd, "data-text-index": node.textIndex, style: { opacity: textOpacity }, children: content }));
276
328
  }
277
- return (_jsx("span", { "data-md-start": mdStart, "data-md-end": mdEnd, children: content }));
329
+ return (_jsx("span", { "data-md-start": mdStart, "data-md-end": mdEnd, "data-text-index": node.textIndex, children: content }));
278
330
  }
279
331
  if (textOpacity !== 1) {
280
332
  return _jsx("span", { style: { opacity: textOpacity }, children: content });
@@ -1 +1 @@
1
- {"version":3,"file":"MdastViewer.js","sourceRoot":"","sources":["../../../src/markdown/client/MdastViewer.tsx"],"names":[],"mappings":";AAAA;;;;;;GAMG;AAEH,uDAAuD;AACvD,+DAA+D;AAC/D,OAAO,EACL,aAAa,EAGb,UAAU,EACV,SAAS,EACT,OAAO,EACP,MAAM,EACN,QAAQ,GACT,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACrF,OAAO,EACL,cAAc,EACd,YAAY,EACZ,aAAa,EACb,0BAA0B,GAC3B,MAAM,0BAA0B,CAAC;AAiBlC,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAiBtD,kBAAkB;AAElB,MAAM,kBAAkB,GAAG,aAAa,CAAyB;IAC/D,KAAK,EAAE,CAAC;IACR,OAAO,EAAE,UAAU;IACnB,YAAY,EAAE,KAAK;IACnB,MAAM,EAAE,KAAK;IACb,gBAAgB,EAAE,SAAS;CAC5B,CAAC,CAAC;AAEH,SAAS,kBAAkB;IACzB,OAAO,UAAU,CAAC,kBAAkB,CAAC,CAAC;AACxC,CAAC;AAuBD,MAAM,UAAU,WAAW,CAAC,KAAuB;IACjD,2EAA2E;IAC3E,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC;IAC9D,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC;IAEtC,kDAAkD;IAClD,SAAS,CAAC,GAAG,EAAE;QACb,qEAAqE;QACrE,IAAI,CAAC,UAAU,IAAI,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3C,OAAO,aAAa,CAAC,GAAG,EAAE;gBACxB,aAAa,CAAC,IAAI,CAAC,CAAC;YACtB,CAAC,CAAC,CAAC;QACL,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC,EAAE,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;IAE3B,MAAM,GAAG,GAAG,OAAO,CAAC,GAA2B,EAAE;QAC/C,IAAI,KAAK,CAAC,GAAG;YAAE,OAAO,KAAK,CAAC,GAAG,CAAC;QAChC,MAAM,MAAM,GAAG,0BAA0B,CAAC,QAAQ,CAAC,CAAC;QACpD,OAAO,MAAM,CAAC,GAAG,CAAC;QAClB,iEAAiE;IACnE,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;IAEtC,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,mBAAmB,CAAC;IAE3E,OAAO,CACL,KAAC,kBAAkB,CAAC,QAAQ,IAC1B,KAAK,EAAE;YACL,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,SAAS;YACvC,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,UAAU;YACpC,YAAY,EAAE,KAAK,CAAC,YAAY,IAAI,KAAK;YACzC,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,KAAK;YAC7B,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;YACxC,cAAc,EAAE,KAAK,CAAC,cAAc;SACrC,YAED,cACE,SAAS,EAAE,eAAe,UAAU,EAAE,EACtC,KAAK,EAAE;gBACL,QAAQ,EAAE,KAAK,CAAC,KAAK;gBACrB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,SAAS;gBAC3D,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,SAAS;gBAC5D,eAAe,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;aACtD,YAED,KAAC,iBAAiB,IAAC,IAAI,EAAE,GAAG,GAAI,GAC5B,GACsB,CAC/B,CAAC;AACJ,CAAC;AASD,SAAS,iBAAiB,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAqB;IAC9D,MAAM,KAAK,GAAG,kBAAkB,EAAE,CAAC;IAEnC,mCAAmC;IACnC,IACE,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC;QAC1B,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS;QAChC,KAAK,CAAC,OAAO,KAAK,UAAU,EAC5B,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,MAAM;YACT,OAAO,KAAC,SAAS,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC;QACnC,KAAK,WAAW;YACd,OAAO,KAAC,cAAc,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC;QACxC,KAAK,SAAS;YACZ,OAAO,KAAC,oBAAoB,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC;QAC9C,KAAK,MAAM;YACT,OAAO,KAAC,iBAAiB,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC;QAC3C,KAAK,QAAQ;YACX,OAAO,KAAC,WAAW,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC;QACrC,KAAK,UAAU;YACb,OAAO,KAAC,aAAa,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC;QACvC,KAAK,QAAQ;YACX,OAAO,KAAC,WAAW,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC;QACrC,KAAK,MAAM;YACT,OAAO,KAAC,iBAAiB,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC;QAC3C,KAAK,OAAO;YACV,OAAO,KAAC,kBAAkB,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC;QAC5C,KAAK,YAAY;YACf,OAAO,KAAC,eAAe,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC;QACzC,KAAK,MAAM;YACT,OAAO,KAAC,cAAc,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC;QACxC,KAAK,YAAY;YACf,OAAO,KAAC,eAAe,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC;QACzC,KAAK,MAAM;YACT,OAAO,KAAC,iBAAiB,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC;QAC3C,KAAK,UAAU;YACb,OAAO,KAAC,qBAAqB,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC;QAC/C,KAAK,eAAe;YAClB,OAAO,cAAM,CAAC;QAChB,KAAK,OAAO;YACV,OAAO,cAAM,CAAC;QAChB,KAAK,OAAO;YACV,OAAO,KAAC,kBAAkB,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC;QAC5C,KAAK,UAAU;YACb,OAAO,KAAC,qBAAqB,IAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,GAAI,CAAC;QACnE,KAAK,WAAW;YACd,OAAO,KAAC,sBAAsB,IAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,GAAI,CAAC;QACpE,KAAK,OAAO;YACV,OAAO,KAAC,kBAAkB,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC;QAC5C,KAAK,SAAS;YACZ,OAAO,KAAC,oBAAoB,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC;QAC9C,KAAK,MAAM;YACT,OAAO,KAAC,iBAAiB,IAAC,IAAI,EAAE,IAAI,GAAI,CAAC;QAC3C;YACE,6CAA6C;YAC7C,IAAI,UAAU,IAAI,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACvD,OAAO,CACL,4BACG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAC/B,KAAC,iBAAiB,IAAS,IAAI,EAAE,KAAK,IAAd,CAAC,CAAiB,CAC3C,CAAC,GACD,CACJ,CAAC;YACJ,CAAC;YACD,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC;AAED,+BAA+B;AAE/B;;;;GAIG;AACH,MAAM,eAAe,GAAG,EAAE,CAAC;AAE3B,yEAAyE;AACzE,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAE9B,2DAA2D;AAC3D,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAE3B,MAAM,UAAU,GAAkB;IAChC,iBAAiB,EAAE,MAAM;IACzB,oBAAoB,EAAE,YAAY;CACnC,CAAC;AAEF,MAAM,gBAAgB,GAAkB;IACtC,MAAM,EAAE,GAAG;CACZ,CAAC;AAEF,SAAS,SAAS,CAAC,EAAE,IAAI,EAAqB;IAC5C,MAAM,KAAK,GAAG,kBAAkB,EAAE,CAAC;IACnC,IAAI,CAAC,CAAC,UAAU,IAAI,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IAC/B,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAE3B,iEAAiE;IACjE,IAAI,QAAQ,CAAC,MAAM,IAAI,eAAe,GAAG,CAAC,EAAE,CAAC;QAC3C,OAAO,CACL,4BACG,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAC1B,KAAC,iBAAiB,IAAS,IAAI,EAAE,KAA+B,IAAxC,CAAC,CAA2C,CACrE,CAAC,GACD,CACJ,CAAC;IACJ,CAAC;IAED,0DAA0D;IAC1D,6DAA6D;IAC7D,0DAA0D;IAC1D,8BAA8B;IAC9B,OAAO,CACL,KAAC,gBAAgB,IAAC,cAAc,EAAE,KAAK,CAAC,cAAc,YACnD,QAAQ,GACQ,CACpB,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,KAGzB;IACC,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,GAAG,KAAK,CAAC;IAC3C,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,eAAe,CAAC,CAAC;IAClE,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CACpD,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,YAAY,CAAC,CAC5C,CAAC;IAEF,kDAAkD;IAClD,MAAM,kBAAkB,GAAG,OAAO,CAAC,GAAG,EAAE;QACtC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC;YAAE,OAAO,CAAC,CAAC,CAAC;QAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,MAAM,QAAQ,GAAG,CAAC,GAAG,eAAe,CAAC;YACrC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACzE,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;YACnC,MAAM,SAAS,GAAG,SAAS,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,IAAI,CAAC,CAAC;YACxD,IAAI,cAAc,GAAG,SAAS,EAAE,CAAC;gBAC/B,OAAO,CAAC,CAAC;YACX,CAAC;QACH,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;IACZ,CAAC,EAAE,CAAC,cAAc,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC;IAE7C,oDAAoD;IACpD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,YAAY,IAAI,YAAY;YAAE,OAAO;QAEzC,IAAI,KAAa,CAAC;QAClB,MAAM,SAAS,GAAG,GAAG,EAAE;YACrB,eAAe,CAAC,CAAC,IAAI,EAAE,EAAE;gBACvB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,gBAAgB,EAAE,YAAY,CAAC,CAAC;gBAC7D,IAAI,IAAI,GAAG,YAAY,EAAE,CAAC;oBACxB,KAAK,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;gBAC3C,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QACF,KAAK,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;QAEzC,OAAO,GAAG,EAAE;YACV,oBAAoB,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnB,MAAM,OAAO,GAAgB,EAAE,CAAC;IAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,CAAC,GAAG,eAAe,CAAC;QAClC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC/D,gFAAgF;QAChF,MAAM,UAAU,GACd,kBAAkB,IAAI,CAAC;YACvB,CAAC,IAAI,kBAAkB,GAAG,CAAC;YAC3B,CAAC,IAAI,kBAAkB,GAAG,CAAC,CAAC;QAC9B,IAAI,CAAC,GAAG,YAAY,IAAI,UAAU,EAAE,CAAC;YACnC,OAAO,CAAC,IAAI,CACV,cAAiB,KAAK,EAAE,UAAU,YAC/B,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAC5C,KAAC,iBAAiB,IAAiB,IAAI,EAAE,KAAK,IAAtB,KAAK,GAAG,CAAC,CAAiB,CACnD,CAAC,IAHM,KAAK,CAIT,CACP,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,IAAI,CAAC,cAAiB,KAAK,EAAE,gBAAgB,IAA9B,KAAK,CAA6B,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IACD,OAAO,4BAAG,OAAO,GAAI,CAAC;AACxB,CAAC;AAED,SAAS,cAAc,CAAC,EAAE,IAAI,EAAqB;IACjD,IAAI,CAAC,CAAC,UAAU,IAAI,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACvC,OAAO,CACL,sBACG,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAChC,KAAC,iBAAiB,IAAS,IAAI,EAAE,KAAK,IAAd,CAAC,CAAiB,CAC3C,CAAC,GACA,CACL,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,EAAE,IAAI,EAAqB;IACvD,MAAM,WAAW,GAAG,IAA4C,CAAC;IACjE,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,IAAI,CAAC,CAAC;IAErC,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CACvD,KAAC,iBAAiB,IAAS,IAAI,EAAE,KAA+B,IAAxC,CAAC,CAA2C,CACrE,CAAC,CAAC;IAEH,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,CAAC;YACJ,OAAO,uBAAK,QAAQ,GAAM,CAAC;QAC7B,KAAK,CAAC;YACJ,OAAO,uBAAK,QAAQ,GAAM,CAAC;QAC7B,KAAK,CAAC;YACJ,OAAO,uBAAK,QAAQ,GAAM,CAAC;QAC7B,KAAK,CAAC;YACJ,OAAO,uBAAK,QAAQ,GAAM,CAAC;QAC7B,KAAK,CAAC;YACJ,OAAO,uBAAK,QAAQ,GAAM,CAAC;QAC7B,KAAK,CAAC;YACJ,OAAO,uBAAK,QAAQ,GAAM,CAAC;QAC7B;YACE,OAAO,uBAAK,QAAQ,GAAM,CAAC;IAC/B,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,EAAE,IAAI,EAAqB;IACpD,MAAM,KAAK,GAAG,kBAAkB,EAAE,CAAC;IACnC,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,MAAM,OAAO,GAAG,MAAM,CAAkB,IAAI,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,IAAyC,CAAC;IAC3D,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC;IACrC,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC;IACjD,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE,MAAM,CAAC;IAE7C,sCAAsC;IACtC,IACE,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC;QAC1B,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS;QACjC,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,EACjD,CAAC;QACD,MAAM,KAAK,GAAG,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAE/C,IAAI,KAAK,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;YACjC,OAAO,4BAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,KAAK,GAAI,CAAC;QAChD,CAAC;aAAM,CAAC;YACN,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;gBACvB,UAAU,CAAC,YAAY,CAAC;oBACtB,OAAO,EAAE,OAA0C;oBACnD,QAAQ,EAAE,IAAI;oBACd,YAAY,EAAE,EAAE;iBACjB,CAAC,CAAC;YACL,CAAC;YAED,OAAO,CACL,8BACE,eAAM,GAAG,EAAE,OAAO,YAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,GAAQ,EACpD,eAAM,KAAK,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,YAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAQ,IAC3D,CACJ,CAAC;QACJ,CAAC;IACH,CAAC;IAED,qDAAqD;IACrD,MAAM,WAAW,GACf,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAE3E,gCAAgC;IAChC,IAAI,SAAS,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3C,IAAI,WAAW,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,CACL,gCACiB,OAAO,iBACT,KAAK,EAClB,KAAK,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,YAE9B,OAAO,GACH,CACR,CAAC;QACJ,CAAC;QACD,OAAO,CACL,gCAAqB,OAAO,iBAAe,KAAK,YAC7C,OAAO,GACH,CACR,CAAC;IACJ,CAAC;IAED,IAAI,WAAW,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,eAAM,KAAK,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,YAAG,OAAO,GAAQ,CAAC;IACjE,CAAC;IAED,OAAO,4BAAG,OAAO,GAAI,CAAC;AACxB,CAAC;AAED,SAAS,WAAW,CAAC,EAAE,IAAI,EAAqB;IAC9C,OAAO,CACL,2BACG,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAChC,KAAC,iBAAiB,IAAS,IAAI,EAAE,KAAK,IAAd,CAAC,CAAiB,CAC3C,CAAC,GACK,CACV,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,EAAE,IAAI,EAAqB;IAChD,OAAO,CACL,uBACG,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAChC,KAAC,iBAAiB,IAAS,IAAI,EAAE,KAAK,IAAd,CAAC,CAAiB,CAC3C,CAAC,GACC,CACN,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,EAAE,IAAI,EAAqB;IAC9C,OAAO,CACL,sBACG,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAChC,KAAC,iBAAiB,IAAS,IAAI,EAAE,KAAK,IAAd,CAAC,CAAiB,CAC3C,CAAC,GACA,CACL,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,EAAE,IAAI,EAAqB;IACpD,MAAM,KAAK,GAAG,kBAAkB,EAAE,CAAC;IACnC,MAAM,QAAQ,GAAG,IAAyC,CAAC;IAC3D,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC;IAEzB,gDAAgD;IAChD,IAAI,aAAa,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC;QACjD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,0BAA0B;IAC1B,IAAI,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5B,OAAO,CACL,YACE,IAAI,EAAE,GAAG,EACT,SAAS,EAAC,SAAS,EACnB,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBACjB,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,KAAK,CAAC,eAAe,EAAE,CAAC;gBACxB,IAAI,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC7B,KAAK,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAC1B,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;gBAC7B,CAAC;YACH,CAAC,YAEA,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CACpC,KAAC,iBAAiB,IAAS,IAAI,EAAE,KAA+B,IAAxC,CAAC,CAA2C,CACrE,CAAC,GACA,CACL,CAAC;IACJ,CAAC;IAED,OAAO,CACL,YACE,IAAI,EAAE,GAAG,EACT,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACjB,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,KAAK,CAAC,eAAe,EAAE,CAAC;YACxB,IAAI,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC7B,KAAK,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC1B,CAAC;iBAAM,CAAC;gBACN,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAChC,CAAC;QACH,CAAC,YAEA,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CACpC,KAAC,iBAAiB,IAAS,IAAI,EAAE,KAA+B,IAAxC,CAAC,CAA2C,CACrE,CAAC,GACA,CACL,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,EAAE,IAAI,EAAoC;IACpE,MAAM,KAAK,GAAG,kBAAkB,EAAE,CAAC;IACnC,MAAM,SAAS,GAAG,IAA0C,CAAC;IAC7D,MAAM,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC;IAE1B,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;IACnC,MAAM,YAAY,GAAG,MAAM,EAAE,YAAY,IAAI,CAAC,CAAC;IAC/C,MAAM,WAAW,GAAG,MAAM,EAAE,WAAW,IAAI,CAAC,CAAC;IAC7C,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,GAAG,YAAY,CAAC;IAEzC,0CAA0C;IAC1C,IAAI,QAAQ,GAAG,GAAG,CAAC;IACnB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,qBAAqB,CAAC,CAAC;QACnD,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QAC3C,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAC1C,QAAQ,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,oBAAoB;IACtB,CAAC;IAED,qBAAqB;IACrB,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,CACL,gBACE,KAAK,EAAE;gBACL,KAAK,EAAE,KAAK;gBACZ,WAAW,EAAE,WAAW;gBACxB,SAAS,EAAE,SAAS;aACrB,EACD,GAAG,EAAE,QAAQ,EACb,QAAQ,SACR,CACH,CAAC;IACJ,CAAC;IAED,OAAO,CACL,cACE,GAAG,EAAE,QAAQ,EACb,GAAG,EAAE,SAAS,CAAC,GAAG,IAAI,EAAE,EACxB,KAAK,EAAE;YACL,KAAK,EAAE,KAAK;YACZ,MAAM,EAAE,WAAW,GAAG,KAAK;YAC3B,SAAS,EAAE,SAAS;SACrB,GACD,CACH,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,EAAE,IAAI,EAAqB;IAClD,MAAM,QAAQ,GAAG,IAAyC,CAAC;IAC3D,OAAO,yBAAO,QAAQ,CAAC,KAAK,GAAQ,CAAC;AACvC,CAAC;AAED,SAAS,cAAc,CAAC,EAAE,IAAI,EAAqB;IACjD,MAAM,QAAQ,GAAG,IAAyC,CAAC;IAC3D,OAAO,CACL,cAAK,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,YACrE,yBAAO,QAAQ,CAAC,KAAK,GAAQ,GACzB,CACP,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,EAAE,IAAI,EAAqB;IAClD,OAAO,CACL,+BACG,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAChC,KAAC,iBAAiB,IAAS,IAAI,EAAE,KAAK,IAAd,CAAC,CAAiB,CAC3C,CAAC,GACS,CACd,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,EAAE,IAAI,EAAqB;IACpD,MAAM,QAAQ,GAAG,IAAyC,CAAC;IAC3D,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,KAAK,IAAI,CAAC;IAE5C,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,CACL,aAAI,KAAK,EAAE,QAAQ,CAAC,KAAK,IAAI,CAAC,YAC3B,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CACpC,KAAC,iBAAiB,IAAS,IAAI,EAAE,KAA+B,IAAxC,CAAC,CAA2C,CACrE,CAAC,GACC,CACN,CAAC;IACJ,CAAC;IAED,OAAO,CACL,uBACG,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CACpC,KAAC,iBAAiB,IAAS,IAAI,EAAE,KAA+B,IAAxC,CAAC,CAA2C,CACrE,CAAC,GACC,CACN,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,EAAE,IAAI,EAAqB;IACxD,MAAM,KAAK,GAAG,kBAAkB,EAAE,CAAC;IACnC,MAAM,YAAY,GAAG,IAA6C,CAAC;IAEnE,MAAM,MAAM,GACV,YAAY,CAAC,OAAO,KAAK,SAAS,IAAI,YAAY,CAAC,OAAO,KAAK,IAAI,CAAC;IACtE,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,KAAK,IAAI,CAAC;IAEhD,IACE,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC;QAC1B,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS;QAChC,KAAK,CAAC,OAAO,KAAK,UAAU,EAC5B,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC;QAC9C,MAAM,YAAY,GAAG,KAAK,CAAC,gBAAgB;YACzC,CAAC,CAAC,GAAG,EAAE;gBACH,IAAI,QAAQ,EAAE,CAAC;oBACb,KAAK,CAAC,gBAAiB,CAAC;wBACtB,IAAI,EAAE,QAAQ,CAAC,IAAI;wBACnB,MAAM,EAAE,QAAQ,CAAC,MAAM;qBACxB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YACH,CAAC,CAAC,SAAS,CAAC;QAEd,OAAO,CACL,cAAI,SAAS,EAAC,gBAAgB,aAC5B,gBACE,IAAI,EAAC,UAAU,EACf,OAAO,EAAE,SAAS,EAClB,QAAQ,EAAE,CAAC,YAAY,EACvB,QAAQ,EAAE,CAAC,YAAY,EACvB,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,SAAS,GACvD,EACD,YAAY,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CACxC,KAAC,iBAAiB,IAAS,IAAI,EAAE,KAA+B,IAAxC,CAAC,CAA2C,CACrE,CAAC,IACC,CACN,CAAC;IACJ,CAAC;IAED,OAAO,CACL,uBACG,YAAY,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CACxC,KAAC,iBAAiB,IAAS,IAAI,EAAE,KAA+B,IAAxC,CAAC,CAA2C,CACrE,CAAC,GACC,CACN,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,EAAE,IAAI,EAAqB;IACrD,MAAM,SAAS,GAAG,IAA0C,CAAC;IAC7D,OAAO,CACL,0BACE,0BACG,SAAS,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CACrC,KAAC,iBAAiB,IAEhB,IAAI,EAAE,KAA+B,EACrC,QAAQ,EAAE,CAAC,KAAK,CAAC,IAFZ,CAAC,CAGN,CACH,CAAC,GACI,GACF,CACT,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAqB;IAClE,MAAM,OAAO,GAAG,IAA6C,CAAC;IAC9D,OAAO,CACL,uBACG,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CACnC,KAAC,iBAAiB,IAEhB,IAAI,EAAE,KAA+B,EACrC,QAAQ,EAAE,QAAQ,IAFb,CAAC,CAGN,CACH,CAAC,GACC,CACN,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAqB;IACnE,MAAM,QAAQ,GAAG,IAA8C,CAAC;IAEhE,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,CACL,uBACG,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CACpC,KAAC,iBAAiB,IAAS,IAAI,EAAE,KAA+B,IAAxC,CAAC,CAA2C,CACrE,CAAC,GACC,CACN,CAAC;IACJ,CAAC;IAED,OAAO,CACL,uBACG,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CACpC,KAAC,iBAAiB,IAAS,IAAI,EAAE,KAA+B,IAAxC,CAAC,CAA2C,CACrE,CAAC,GACC,CACN,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,EAAE,IAAI,EAAoC;IACpE,MAAM,SAAS,GAAG,IAA0C,CAAC;IAC7D,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC;IAE5B,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,4CAA4C;QAC5C,OAAO,yBAAO,SAAS,CAAC,KAAK,GAAQ,CAAC;IACxC,CAAC;IAED,OAAO,eAAM,uBAAuB,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GAAI,CAAC;AAC7D,CAAC;AAED,SAAS,oBAAoB,CAAC,EAAE,IAAI,EAAoC;IACtE,MAAM,WAAW,GAAG,IAA4C,CAAC;IACjE,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE,CAAC;IACrC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAEpD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,KAAK,CAAC,KAAK,IAAI,EAAE;YACf,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,CAAC,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;gBAClD,OAAO,CAAC,UAAU,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;gBAC7D,MAAM,EAAE,GAAG,kBAAkB,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;gBACtE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;gBAC9C,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACrB,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,oCAAoC;YACtC,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;QACL,OAAO,GAAG,EAAE;YACV,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,IAAI,GAAG,EAAE,CAAC;QACR,OAAO,CACL,cACE,SAAS,EAAC,eAAe,EACzB,uBAAuB,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,GACxC,CACH,CAAC;IACJ,CAAC;IAED,+BAA+B;IAC/B,OAAO,CACL,cAAK,SAAS,EAAC,kBAAkB,YAC/B,yBAAO,IAAI,GAAQ,GACf,CACP,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,EAAE,IAAI,EAAoC;IACnE,MAAM,QAAQ,GAAG,IAAyC,CAAC;IAC3D,OAAO,eAAM,uBAAuB,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,KAAK,IAAI,EAAE,EAAE,GAAI,CAAC;AAC7E,CAAC;AAED,kBAAkB;AAElB;;GAEG;AACH,MAAM,UAAU,uBAAuB,CAAC,QAAgB;IACtD,MAAM,MAAM,GAAG,0BAA0B,CAAC,QAAQ,CAAC,CAAC;IACpD,OAAO;QACL,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,gBAAgB,EAAE,MAAM,CAAC,GAAG;KAC7B,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"MdastViewer.js","sourceRoot":"","sources":["../../../src/markdown/client/MdastViewer.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"PostgresPipeline.d.ts","sourceRoot":"","sources":["../../src/server/PostgresPipeline.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,UAAO,GAAG,MAAM,CAYtE;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,EAAE,OAAO,EAAE,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAQlD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU,CAc5D;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAwBvE;AAED,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EACnC,OAAO,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAC1C;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,EAAE,CAAA;CAAE,CAsHpC"}
1
+ {"version":3,"file":"PostgresPipeline.d.ts","sourceRoot":"","sources":["../../src/server/PostgresPipeline.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,UAAO,GAAG,MAAM,CAYtE;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,EAAE,OAAO,EAAE,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAQlD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU,CAc5D;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAwBvE;AAED,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EACnC,OAAO,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAC1C;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,EAAE,CAAA;CAAE,CAuJpC"}
@@ -167,9 +167,46 @@ export function translatePipeline(collection, pipeline, options) {
167
167
  parts.grouped = true;
168
168
  break;
169
169
  }
170
+ case '$project': {
171
+ // Inclusion/exclusion projection — rebuild a trimmed `data` jsonb so
172
+ // queries don't ship full documents (large `markdown`/`text` bodies)
173
+ // when only a few fields are needed. Without this, a list query over a
174
+ // big corpus can blow past the DB HTTP response cap. `_id`/meta columns
175
+ // are always kept so the row still maps back to a doc via toDoc().
176
+ const proj = (value ?? {});
177
+ const lit = (s) => `'${s.replace(/'/g, "''")}'`;
178
+ const includes = [];
179
+ const excludes = [];
180
+ for (const [field, flag] of Object.entries(proj)) {
181
+ if (flag === 1 || flag === true)
182
+ includes.push(field);
183
+ else if (flag === 0 || flag === false)
184
+ excludes.push(field);
185
+ }
186
+ const meta = '_id, created, updated, version';
187
+ if (includes.length > 0) {
188
+ const dataFields = includes.filter((f) => f !== '_id');
189
+ if (dataFields.length === 0) {
190
+ parts.select = `${meta}, '{}'::jsonb AS data`;
191
+ }
192
+ else {
193
+ const pairs = dataFields
194
+ .map((f) => `${lit(f)}, data->${lit(f)}`)
195
+ .join(', ');
196
+ parts.select = `${meta}, jsonb_build_object(${pairs}) AS data`;
197
+ }
198
+ }
199
+ else if (excludes.length > 0) {
200
+ let dataExpr = 'data';
201
+ for (const f of excludes.filter((f) => f !== '_id')) {
202
+ dataExpr = `(${dataExpr} - ${lit(f)})`;
203
+ }
204
+ parts.select = `${meta}, ${dataExpr} AS data`;
205
+ }
206
+ break;
207
+ }
170
208
  case '$addFields':
171
209
  case '$set':
172
- case '$project':
173
210
  case '$unwind':
174
211
  case '$sample':
175
212
  case '$replaceRoot':
@@ -1 +1 @@
1
- {"version":3,"file":"PostgresPipeline.js","sourceRoot":"","sources":["../../src/server/PostgresPipeline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PostgresPipeline.js","sourceRoot":"","sources":["../../src/server/PostgresPipeline.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ugly-app",
3
- "version": "0.1.609",
3
+ "version": "0.1.611",
4
4
  "type": "module",
5
5
  "comment:files": "Allowlist what ships to npm. dist = runtime; src = sourcemap targets (dist/*.js.map reference ../../src/); templates = CLI scaffold. Everything else at repo root (.pgdata local Postgres, coverage, assets/icons sources, test/, test-results/) is excluded by omission. The !negations strip the scaffold's installed deps + cruft (templates/node_modules is 200MB+ and must never ship). package.json/README/LICENSE ship automatically.",
6
6
  "files": [
@@ -1,2 +1,2 @@
1
1
  // Auto-generated by prebuild — do not edit manually
2
- export const CLI_VERSION = "0.1.609";
2
+ export const CLI_VERSION = "0.1.611";
@@ -12,6 +12,7 @@ import {
12
12
  createContext,
13
13
  CSSProperties,
14
14
  ReactNode,
15
+ RefObject,
15
16
  useContext,
16
17
  useEffect,
17
18
  useMemo,
@@ -117,6 +118,56 @@ export function MdastViewer(props: MdastViewerProps) {
117
118
  // Re-parse when katexReady changes to get proper LaTeX rendering
118
119
  }, [props.ast, markdown, katexReady]);
119
120
 
121
+ // Scroll-to-offset: when the viewer is opened at a specific character offset
122
+ // (e.g. a search-result passage), scroll that position into view once it has
123
+ // rendered. Content can mount in async batches, so retry briefly until the
124
+ // target text node appears. This is independent of the TTS `textIndex` cursor.
125
+ const rootRef = useRef<HTMLDivElement>(null);
126
+ const scrollView = useScrollView();
127
+ const { priorityOffset, scrollToView: shouldScroll } = props;
128
+ useEffect(() => {
129
+ if (!isDefined(priorityOffset) || !shouldScroll) return undefined;
130
+ let cancelled = false;
131
+ let tries = 0;
132
+ const attempt = (): void => {
133
+ if (cancelled) return;
134
+ const els = rootRef.current?.querySelectorAll<HTMLElement>(
135
+ '[data-text-index]',
136
+ );
137
+ if (els && els.length > 0) {
138
+ let best: HTMLElement | null = null;
139
+ let bestTi = -1;
140
+ let firstEl: HTMLElement | null = null;
141
+ els.forEach((el) => {
142
+ const ti = Number(el.dataset.textIndex);
143
+ if (Number.isNaN(ti)) return;
144
+ if (!firstEl) firstEl = el;
145
+ if (ti <= priorityOffset && ti > bestTi) {
146
+ best = el;
147
+ bestTi = ti;
148
+ }
149
+ });
150
+ const targetEl = (best ?? firstEl) as HTMLElement | null;
151
+ if (targetEl) {
152
+ scrollView.scrollToView({
153
+ viewRef: { current: targetEl } as unknown as RefObject<HTMLDivElement>,
154
+ animated: true,
155
+ bottomOffset: 40,
156
+ });
157
+ return;
158
+ }
159
+ }
160
+ if (tries++ < 20) {
161
+ setTimeout(attempt, 100);
162
+ }
163
+ };
164
+ const t = setTimeout(attempt, 50);
165
+ return () => {
166
+ cancelled = true;
167
+ clearTimeout(t);
168
+ };
169
+ }, [priorityOffset, shouldScroll, markdown, ast, scrollView]);
170
+
120
171
  const themeClass = props.isDark ? 'prosemirror-dark' : 'prosemirror-light';
121
172
 
122
173
  return (
@@ -133,6 +184,7 @@ export function MdastViewer(props: MdastViewerProps) {
133
184
  }}
134
185
  >
135
186
  <div
187
+ ref={rootRef}
136
188
  className={`ProseMirror ${themeClass}`}
137
189
  style={{
138
190
  maxWidth: props.width,
@@ -427,13 +479,15 @@ function MdastTextRenderer({ node }: NodeRendererProps) {
427
479
  const textOpacity =
428
480
  isDefined(state.textIndex) && state.textIndex < node.textIndex ? 0.5 : 1;
429
481
 
430
- // Render with offset attributes
482
+ // Render with offset attributes. `data-text-index` carries the node's
483
+ // text-offset so scroll-to-offset (priorityOffset) can locate the element.
431
484
  if (isDefined(mdStart) && isDefined(mdEnd)) {
432
485
  if (textOpacity !== 1) {
433
486
  return (
434
487
  <span
435
488
  data-md-start={mdStart}
436
489
  data-md-end={mdEnd}
490
+ data-text-index={node.textIndex}
437
491
  style={{ opacity: textOpacity }}
438
492
  >
439
493
  {content}
@@ -441,7 +495,7 @@ function MdastTextRenderer({ node }: NodeRendererProps) {
441
495
  );
442
496
  }
443
497
  return (
444
- <span data-md-start={mdStart} data-md-end={mdEnd}>
498
+ <span data-md-start={mdStart} data-md-end={mdEnd} data-text-index={node.textIndex}>
445
499
  {content}
446
500
  </span>
447
501
  );
@@ -191,9 +191,42 @@ export function translatePipeline(
191
191
  parts.grouped = true;
192
192
  break;
193
193
  }
194
+ case '$project': {
195
+ // Inclusion/exclusion projection — rebuild a trimmed `data` jsonb so
196
+ // queries don't ship full documents (large `markdown`/`text` bodies)
197
+ // when only a few fields are needed. Without this, a list query over a
198
+ // big corpus can blow past the DB HTTP response cap. `_id`/meta columns
199
+ // are always kept so the row still maps back to a doc via toDoc().
200
+ const proj = (value ?? {}) as Record<string, unknown>;
201
+ const lit = (s: string): string => `'${s.replace(/'/g, "''")}'`;
202
+ const includes: string[] = [];
203
+ const excludes: string[] = [];
204
+ for (const [field, flag] of Object.entries(proj)) {
205
+ if (flag === 1 || flag === true) includes.push(field);
206
+ else if (flag === 0 || flag === false) excludes.push(field);
207
+ }
208
+ const meta = '_id, created, updated, version';
209
+ if (includes.length > 0) {
210
+ const dataFields = includes.filter((f) => f !== '_id');
211
+ if (dataFields.length === 0) {
212
+ parts.select = `${meta}, '{}'::jsonb AS data`;
213
+ } else {
214
+ const pairs = dataFields
215
+ .map((f) => `${lit(f)}, data->${lit(f)}`)
216
+ .join(', ');
217
+ parts.select = `${meta}, jsonb_build_object(${pairs}) AS data`;
218
+ }
219
+ } else if (excludes.length > 0) {
220
+ let dataExpr = 'data';
221
+ for (const f of excludes.filter((f) => f !== '_id')) {
222
+ dataExpr = `(${dataExpr} - ${lit(f)})`;
223
+ }
224
+ parts.select = `${meta}, ${dataExpr} AS data`;
225
+ }
226
+ break;
227
+ }
194
228
  case '$addFields':
195
229
  case '$set':
196
- case '$project':
197
230
  case '$unwind':
198
231
  case '$sample':
199
232
  case '$replaceRoot':