@jrichman/ink 7.0.0-beta.1 → 7.0.0-beta.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.
Files changed (50) hide show
  1. package/build/components/StaticRender.d.ts +39 -2
  2. package/build/components/StaticRender.js +67 -10
  3. package/build/components/StaticRender.js.map +1 -1
  4. package/build/dom.d.ts +2 -4
  5. package/build/dom.js +20 -24
  6. package/build/dom.js.map +1 -1
  7. package/build/index.d.ts +1 -1
  8. package/build/index.js +1 -1
  9. package/build/index.js.map +1 -1
  10. package/build/ink.js +1 -0
  11. package/build/ink.js.map +1 -1
  12. package/build/output.js +24 -55
  13. package/build/output.js.map +1 -1
  14. package/build/reconciler.js +0 -2
  15. package/build/reconciler.js.map +1 -1
  16. package/build/render-container.d.ts +1 -0
  17. package/build/render-container.js +5 -2
  18. package/build/render-container.js.map +1 -1
  19. package/build/render-node-to-output.d.ts +1 -0
  20. package/build/render-node-to-output.js +27 -59
  21. package/build/render-node-to-output.js.map +1 -1
  22. package/build/render-sticky.d.ts +20 -2
  23. package/build/render-sticky.js +193 -167
  24. package/build/render-sticky.js.map +1 -1
  25. package/build/render-text-node.js +6 -6
  26. package/build/render-text-node.js.map +1 -1
  27. package/build/renderer.d.ts +1 -0
  28. package/build/renderer.js +3 -1
  29. package/build/renderer.js.map +1 -1
  30. package/build/squash-text-nodes.js +6 -15
  31. package/build/squash-text-nodes.js.map +1 -1
  32. package/build/styled-line.d.ts +0 -1
  33. package/build/styled-line.js +9 -31
  34. package/build/styled-line.js.map +1 -1
  35. package/build/terminal-buffer.d.ts +0 -1
  36. package/build/terminal-buffer.js +44 -132
  37. package/build/terminal-buffer.js.map +1 -1
  38. package/build/tokenize.d.ts +0 -18
  39. package/build/tokenize.js +1 -182
  40. package/build/tokenize.js.map +1 -1
  41. package/build/worker/compositor.js +6 -2
  42. package/build/worker/compositor.js.map +1 -1
  43. package/build/worker/render-worker.d.ts +2 -0
  44. package/build/worker/render-worker.js +77 -70
  45. package/build/worker/render-worker.js.map +1 -1
  46. package/build/worker/scroll-optimizer.d.ts +1 -1
  47. package/build/worker/scroll-optimizer.js +1 -2
  48. package/build/worker/scroll-optimizer.js.map +1 -1
  49. package/package.json +2 -2
  50. package/readme.md +8 -27
@@ -8,8 +8,83 @@ import Output from './output.js';
8
8
  import renderNodeToOutput from './render-node-to-output.js';
9
9
  import { getScrollTop } from './scroll.js';
10
10
  import { getRelativeTop, getRelativeLeft } from './measure-element.js';
11
- export function getStickyDescendants(node) {
12
- const stickyDescendants = [];
11
+ export function resolveStickyHeaderInfo(stickyNodeInfo, node) {
12
+ const { node: stickyNode, cached, anchor } = stickyNodeInfo;
13
+ let stickyNodeTop;
14
+ let stickyNodeHeight;
15
+ let naturalStickyNodeHeight;
16
+ let parentRelativeTop;
17
+ let parentHeight;
18
+ let parentBorderTop;
19
+ let parentBorderBottom;
20
+ let relativeX;
21
+ let relativeY;
22
+ let nodeId;
23
+ const currentBorderTop = node.yogaNode?.getComputedBorder(Yoga.EDGE_TOP) ?? 0;
24
+ const currentBorderLeft = node.yogaNode?.getComputedBorder(Yoga.EDGE_LEFT) ?? 0;
25
+ if (cached && anchor) {
26
+ const staticRenderPosTop = getRelativeTop(anchor, node) ?? 0;
27
+ const staticRenderPosLeft = getRelativeLeft(anchor, node) ?? 0;
28
+ const anchorBorderTop = anchor.yogaNode?.getComputedBorder(Yoga.EDGE_TOP) ?? 0;
29
+ const anchorBorderLeft = anchor.yogaNode?.getComputedBorder(Yoga.EDGE_LEFT) ?? 0;
30
+ stickyNodeTop =
31
+ staticRenderPosTop + anchorBorderTop + (cached.relativeY ?? 0);
32
+ stickyNodeHeight = cached.height;
33
+ naturalStickyNodeHeight = cached.endRow - cached.startRow;
34
+ parentRelativeTop =
35
+ staticRenderPosTop + anchorBorderTop + (cached.parentRelativeTop ?? 0);
36
+ parentHeight = cached.parentHeight;
37
+ parentBorderTop = cached.parentBorderTop ?? 0;
38
+ parentBorderBottom = cached.parentBorderBottom ?? 0;
39
+ relativeX =
40
+ staticRenderPosLeft +
41
+ anchorBorderLeft +
42
+ (cached.relativeX ?? 0) -
43
+ currentBorderLeft;
44
+ relativeY = stickyNodeTop - currentBorderTop;
45
+ nodeId = cached.nodeId;
46
+ }
47
+ else if (stickyNode) {
48
+ stickyNodeTop = getRelativeTop(stickyNode, node) ?? 0;
49
+ naturalStickyNodeHeight = Math.round(stickyNode.yogaNode?.getComputedHeight() ?? 0);
50
+ const alternateStickyNode = stickyNode.childNodes.find(childNode => childNode.internalStickyAlternate);
51
+ const stuckHeight = Math.round(alternateStickyNode?.yogaNode?.getComputedHeight() ?? 0);
52
+ stickyNodeHeight = Math.max(naturalStickyNodeHeight, stuckHeight);
53
+ const parent = stickyNode.parentNode;
54
+ const parentYogaNode = parent?.yogaNode;
55
+ if (parentYogaNode) {
56
+ parentRelativeTop = getRelativeTop(parent, node) ?? 0;
57
+ parentHeight = Math.round(parentYogaNode.getComputedHeight());
58
+ parentBorderTop = parentYogaNode.getComputedBorder(Yoga.EDGE_TOP);
59
+ parentBorderBottom = parentYogaNode.getComputedBorder(Yoga.EDGE_BOTTOM);
60
+ }
61
+ else {
62
+ parentRelativeTop = 0;
63
+ parentHeight = Number.MAX_SAFE_INTEGER;
64
+ parentBorderTop = 0;
65
+ parentBorderBottom = 0;
66
+ }
67
+ relativeX = (getRelativeLeft(stickyNode, node) ?? 0) - currentBorderLeft;
68
+ relativeY = stickyNodeTop - currentBorderTop;
69
+ nodeId = stickyNode.internalId;
70
+ }
71
+ else {
72
+ throw new Error('stickyNodeInfo must have a node if not using cached headers');
73
+ }
74
+ return {
75
+ stickyNodeTop,
76
+ stickyNodeHeight,
77
+ naturalStickyNodeHeight,
78
+ parentRelativeTop,
79
+ parentHeight,
80
+ parentBorderTop,
81
+ parentBorderBottom,
82
+ relativeX,
83
+ relativeY,
84
+ nodeId,
85
+ };
86
+ }
87
+ export function getStickyDescendants(node, stickyDescendants = []) {
13
88
  for (const child of node.childNodes) {
14
89
  if (child.nodeName === '#text') {
15
90
  continue;
@@ -39,8 +114,10 @@ export function getStickyDescendants(node) {
39
114
  const overflowX = domChild.style.overflowX ?? overflow;
40
115
  const overflowY = domChild.style.overflowY ?? overflow;
41
116
  const isScrollable = overflowX === 'scroll' || overflowY === 'scroll';
42
- if (!isScrollable && domChild.childNodes) {
43
- stickyDescendants.push(...getStickyDescendants(domChild));
117
+ if (!isScrollable &&
118
+ domChild.childNodes &&
119
+ domChild.childNodes.length > 0) {
120
+ getStickyDescendants(domChild, stickyDescendants);
44
121
  }
45
122
  }
46
123
  }
@@ -73,148 +150,120 @@ export function renderStickyNode(stickyNode, options) {
73
150
  const stuckLines = alternateStickyNode ? renderHeader(true) : undefined;
74
151
  return { naturalLines, stuckLines, naturalHeight, maxHeaderHeight };
75
152
  }
76
- export function identifyActiveStickyNodes(stickyNodes, node, scrollTop, viewportBottom) {
77
- let activeTopStickyNodeIndex = -1;
78
- let activeTopStickyNode;
79
- let activeBottomStickyNodeIndex = -1;
80
- let activeBottomStickyNode;
153
+ export function identifyActiveStickyNodes(stickyNodes, node, scrollTop, viewportBottom, stickyHeadersInBackbuffer) {
154
+ for (const info of stickyNodes) {
155
+ info.resolvedInfo ||= resolveStickyHeaderInfo(info, node);
156
+ }
157
+ const activeStickyNodes = [];
158
+ let lastActiveTopIndex = -1;
159
+ let lastActiveBottomIndex = -1;
81
160
  for (const [index, stickyNodeInfo] of stickyNodes.entries()) {
82
- const { node: stickyNode, type: stickyType, cached, anchor } = stickyNodeInfo;
83
- let stickyNodeTop;
84
- let stickyNodeHeight;
85
- let parentTop;
86
- let parentHeight;
87
- if (cached && anchor) {
88
- const staticRenderPos = getRelativeTop(anchor, node) ?? 0;
89
- stickyNodeTop = staticRenderPos + cached.relativeY;
90
- stickyNodeHeight = cached.height;
91
- parentTop = staticRenderPos + cached.parentRelativeTop;
92
- parentHeight = cached.parentHeight;
93
- }
94
- else {
95
- if (!stickyNode)
96
- continue;
97
- if (!stickyNode.yogaNode)
98
- continue;
99
- stickyNodeTop = getRelativeTop(stickyNode, node) ?? 0;
100
- stickyNodeHeight = Math.round(stickyNode.yogaNode.getComputedHeight());
101
- const parent = stickyNode.parentNode;
102
- if (parent?.yogaNode) {
103
- parentTop = getRelativeTop(parent, node) ?? 0;
104
- parentHeight = Math.round(parent.yogaNode.getComputedHeight());
105
- }
106
- else {
107
- parentTop = 0;
108
- parentHeight = Number.MAX_SAFE_INTEGER;
109
- }
110
- }
111
- const stickyNodeBottom = stickyNodeTop + stickyNodeHeight;
161
+ const { type: stickyType } = stickyNodeInfo;
162
+ const { stickyNodeTop, naturalStickyNodeHeight, parentRelativeTop, parentHeight, } = stickyNodeInfo.resolvedInfo;
163
+ const stickyNodeBottom = stickyNodeTop + naturalStickyNodeHeight;
112
164
  if (stickyType === 'top' &&
113
- stickyNodeTop < scrollTop &&
114
- parentTop + parentHeight > scrollTop) {
115
- activeTopStickyNode = stickyNodeInfo;
116
- activeTopStickyNodeIndex = index;
165
+ (stickyHeadersInBackbuffer ||
166
+ (stickyNodeTop < scrollTop &&
167
+ parentRelativeTop + parentHeight > scrollTop))) {
168
+ lastActiveTopIndex = index;
169
+ if (stickyHeadersInBackbuffer) {
170
+ // In backbuffer mode, we want to track ALL of them
171
+ activeStickyNodes.push({
172
+ stickyNode: stickyNodeInfo.node,
173
+ type: 'top',
174
+ cached: stickyNodeInfo.cached,
175
+ anchor: stickyNodeInfo.anchor,
176
+ originalIndex: index,
177
+ resolvedInfo: stickyNodeInfo.resolvedInfo,
178
+ });
179
+ }
117
180
  }
118
181
  if (stickyType === 'bottom' &&
119
- Math.floor(stickyNodeBottom) > Math.floor(viewportBottom) &&
120
- parentTop < viewportBottom) {
121
- activeBottomStickyNode = stickyNodeInfo;
122
- activeBottomStickyNodeIndex = index;
182
+ (stickyHeadersInBackbuffer ||
183
+ (Math.floor(stickyNodeBottom) > Math.floor(viewportBottom) &&
184
+ parentRelativeTop < viewportBottom))) {
185
+ lastActiveBottomIndex = index;
186
+ if (stickyHeadersInBackbuffer) {
187
+ activeStickyNodes.push({
188
+ stickyNode: stickyNodeInfo.node,
189
+ type: 'bottom',
190
+ cached: stickyNodeInfo.cached,
191
+ anchor: stickyNodeInfo.anchor,
192
+ originalIndex: index,
193
+ resolvedInfo: stickyNodeInfo.resolvedInfo,
194
+ });
195
+ }
123
196
  }
124
197
  }
125
- const activeStickyNodes = [];
126
- if (activeTopStickyNode) {
127
- let nextStickyNode;
128
- let nextStickyNodeInfo;
129
- for (let i = activeTopStickyNodeIndex + 1; i < stickyNodes.length; i++) {
198
+ const findNextStickyNode = (startIndex, direction) => {
199
+ const step = direction === 'forward' ? 1 : -1;
200
+ const endCondition = direction === 'forward'
201
+ ? (i) => i < stickyNodes.length
202
+ : (i) => i >= 0;
203
+ const targetType = direction === 'forward' ? 'top' : 'bottom';
204
+ for (let i = startIndex + step; endCondition(i); i += step) {
130
205
  const info = stickyNodes[i];
131
- if (info.type !== 'bottom') {
132
- nextStickyNode = info.node;
133
- nextStickyNodeInfo = info;
134
- break;
206
+ // Top sticky headers block other top sticky headers.
207
+ // Bottom sticky headers block other bottom sticky headers.
208
+ if (info.type === targetType) {
209
+ return info;
135
210
  }
136
211
  }
137
- activeStickyNodes.push({
138
- stickyNode: activeTopStickyNode.node,
139
- type: 'top',
140
- nextStickyNode,
141
- nextStickyNodeInfo,
142
- cached: activeTopStickyNode.cached,
143
- anchor: activeTopStickyNode.anchor,
144
- });
145
- }
146
- if (activeBottomStickyNode) {
147
- let nextStickyNode;
148
- let nextStickyNodeInfo;
149
- for (let i = activeBottomStickyNodeIndex - 1; i >= 0; i--) {
150
- const info = stickyNodes[i];
151
- if (info.type === 'bottom') {
152
- nextStickyNode = info.node;
153
- nextStickyNodeInfo = info;
154
- break;
212
+ return undefined;
213
+ };
214
+ if (stickyHeadersInBackbuffer) {
215
+ // When stickyHeadersInBackbuffer is ON, we need to populate nextStickyNodeInfo for ALL of them
216
+ for (const active of activeStickyNodes) {
217
+ const info = findNextStickyNode(active.originalIndex, active.type === 'top' ? 'forward' : 'backward');
218
+ if (info) {
219
+ active.nextStickyNode = info.node;
220
+ active.nextStickyNodeInfo = info;
155
221
  }
156
222
  }
157
- activeStickyNodes.push({
158
- stickyNode: activeBottomStickyNode.node,
159
- type: 'bottom',
160
- nextStickyNode,
161
- nextStickyNodeInfo,
162
- cached: activeBottomStickyNode.cached,
163
- anchor: activeBottomStickyNode.anchor,
164
- });
223
+ }
224
+ else {
225
+ if (lastActiveTopIndex !== -1) {
226
+ const activeTopStickyNode = stickyNodes[lastActiveTopIndex];
227
+ const info = findNextStickyNode(lastActiveTopIndex, 'forward');
228
+ activeStickyNodes.push({
229
+ stickyNode: activeTopStickyNode.node,
230
+ type: 'top',
231
+ nextStickyNode: info?.node,
232
+ nextStickyNodeInfo: info,
233
+ cached: activeTopStickyNode.cached,
234
+ anchor: activeTopStickyNode.anchor,
235
+ originalIndex: lastActiveTopIndex,
236
+ resolvedInfo: activeTopStickyNode.resolvedInfo,
237
+ });
238
+ }
239
+ if (lastActiveBottomIndex !== -1) {
240
+ const activeBottomStickyNode = stickyNodes[lastActiveBottomIndex];
241
+ const info = findNextStickyNode(lastActiveBottomIndex, 'backward');
242
+ activeStickyNodes.push({
243
+ stickyNode: activeBottomStickyNode.node,
244
+ type: 'bottom',
245
+ nextStickyNode: info?.node,
246
+ nextStickyNodeInfo: info,
247
+ cached: activeBottomStickyNode.cached,
248
+ anchor: activeBottomStickyNode.anchor,
249
+ originalIndex: lastActiveBottomIndex,
250
+ resolvedInfo: activeBottomStickyNode.resolvedInfo,
251
+ });
252
+ }
165
253
  }
166
254
  return activeStickyNodes;
167
255
  }
168
256
  export function renderActiveStickyNodes(activeStickyNodes, node, output, options) {
169
- const { x, y, newTransformers, skipStaticElements, selectionMap, selectionStyle, trackSelection, } = options;
257
+ const { y, newTransformers, skipStaticElements, selectionMap, selectionStyle, trackSelection, stickyHeadersInBackbuffer, } = options;
170
258
  const { yogaNode } = node;
171
259
  if (!yogaNode)
172
260
  return;
173
- for (const { stickyNode, type, nextStickyNodeInfo, cached, anchor, } of activeStickyNodes) {
174
- let stickyNodeHeight;
175
- let stickyNodeTop;
176
- let parentTop;
177
- let parentHeight;
178
- let stickyOffsetX;
179
- let stickyNodeId;
261
+ for (const { stickyNode, type, nextStickyNodeInfo, cached, resolvedInfo, } of activeStickyNodes) {
180
262
  const currentBorderTop = yogaNode.getComputedBorder(Yoga.EDGE_TOP);
181
- const currentBorderLeft = yogaNode.getComputedBorder(Yoga.EDGE_LEFT);
182
- if (cached && anchor) {
183
- const staticRenderPosTop = getRelativeTop(anchor, node) ?? 0;
184
- const staticRenderPosLeft = getRelativeLeft(anchor, node) ?? 0;
185
- stickyNodeTop = staticRenderPosTop + cached.relativeY;
186
- stickyNodeHeight = cached.height;
187
- parentTop = staticRenderPosTop + cached.parentRelativeTop;
188
- parentHeight = cached.parentHeight;
189
- stickyOffsetX = x + staticRenderPosLeft + cached.relativeX;
190
- stickyNodeId = cached.nodeId;
191
- }
192
- else {
193
- if (!stickyNode)
194
- continue;
195
- stickyNodeTop = getRelativeTop(stickyNode, node) ?? 0;
196
- const naturalHeight = Math.round(stickyNode.yogaNode.getComputedHeight());
197
- const alternateStickyNode = stickyNode.childNodes.find(childNode => childNode.internalStickyAlternate);
198
- const stuckHeight = Math.round(alternateStickyNode?.yogaNode?.getComputedHeight() ?? 0);
199
- stickyNodeHeight = Math.max(naturalHeight, stuckHeight);
200
- const parent = stickyNode.parentNode;
201
- if (parent?.yogaNode) {
202
- parentTop = getRelativeTop(parent, node) ?? 0;
203
- parentHeight = Math.round(parent.yogaNode.getComputedHeight());
204
- }
205
- else {
206
- parentTop = 0;
207
- parentHeight = Number.MAX_SAFE_INTEGER;
208
- }
209
- stickyOffsetX = x + (getRelativeLeft(stickyNode, node) ?? 0);
210
- stickyNodeId = stickyNode.internalId;
211
- }
263
+ const { stickyNodeTop, stickyNodeHeight, parentRelativeTop, parentHeight, parentBorderTop, parentBorderBottom, relativeX, nodeId: stickyNodeId, } = resolvedInfo;
212
264
  const currentScrollTop = getScrollTop(node);
213
265
  const currentClientHeight = node.internal_scrollState?.clientHeight ?? 0;
214
- const parentBorderBottom = cached
215
- ? (cached.parentBorderBottom ?? 0)
216
- : (stickyNode.parentNode?.yogaNode?.getComputedBorder(Yoga.EDGE_BOTTOM) ?? 0);
217
- const parentBottom = parentTop + parentHeight - parentBorderBottom;
266
+ const parentBottom = parentRelativeTop + parentHeight - parentBorderBottom;
218
267
  let finalStickyY = 0;
219
268
  let maxStuckY;
220
269
  let minStuckY;
@@ -222,56 +271,33 @@ export function renderActiveStickyNodes(activeStickyNodes, node, output, options
222
271
  let maxStickyTop = y - currentScrollTop + parentBottom - stickyNodeHeight;
223
272
  const naturalStickyY = y - currentScrollTop + stickyNodeTop;
224
273
  const stuckStickyY = y + currentBorderTop;
225
- if (nextStickyNodeInfo) {
226
- let nextNodeTop;
227
- if (nextStickyNodeInfo.cached && nextStickyNodeInfo.anchor) {
228
- const staticRenderPosTop = getRelativeTop(nextStickyNodeInfo.anchor, node) ?? 0;
229
- nextNodeTop =
230
- staticRenderPosTop + nextStickyNodeInfo.cached.relativeY;
231
- }
232
- else if (nextStickyNodeInfo.node?.yogaNode) {
233
- nextNodeTop = getRelativeTop(nextStickyNodeInfo.node, node) ?? 0;
234
- }
235
- if (nextNodeTop !== undefined) {
236
- const nextNodeTopInViewport = y - currentScrollTop + nextNodeTop;
237
- const nextNodePushTop = nextNodeTopInViewport - stickyNodeHeight;
238
- if (nextNodePushTop < maxStickyTop) {
239
- maxStickyTop = nextNodePushTop;
240
- }
274
+ if (nextStickyNodeInfo?.resolvedInfo) {
275
+ const nextNodeTopInViewport = y - currentScrollTop + nextStickyNodeInfo.resolvedInfo.stickyNodeTop;
276
+ const nextNodePushTop = nextNodeTopInViewport - stickyNodeHeight;
277
+ if (nextNodePushTop < maxStickyTop) {
278
+ maxStickyTop = nextNodePushTop;
241
279
  }
242
280
  }
243
- finalStickyY = Math.min(Math.max(stuckStickyY, naturalStickyY), maxStickyTop);
281
+ finalStickyY = stickyHeadersInBackbuffer
282
+ ? Math.min(stuckStickyY, maxStickyTop)
283
+ : Math.min(Math.max(stuckStickyY, naturalStickyY), maxStickyTop);
244
284
  maxStuckY = maxStickyTop - (y + currentBorderTop);
245
285
  }
246
286
  else {
247
- const parentBorderTop = cached
248
- ? (cached.parentBorderTop ?? 0)
249
- : (stickyNode.parentNode?.yogaNode?.getComputedBorder(Yoga.EDGE_TOP) ??
250
- 0);
251
- let minStickyTop = y - currentScrollTop + parentTop + parentBorderTop;
287
+ let minStickyTop = y - currentScrollTop + parentRelativeTop + parentBorderTop;
252
288
  const naturalStickyY = y - currentScrollTop + stickyNodeTop;
253
289
  const stuckStickyY = y + currentBorderTop + currentClientHeight - stickyNodeHeight;
254
- if (nextStickyNodeInfo) {
255
- let nextNodeHeight;
256
- let nextNodeTop;
257
- if (nextStickyNodeInfo.cached && nextStickyNodeInfo.anchor) {
258
- nextNodeHeight = nextStickyNodeInfo.cached.height;
259
- const staticRenderPosTop = getRelativeTop(nextStickyNodeInfo.anchor, node) ?? 0;
260
- nextNodeTop =
261
- staticRenderPosTop + nextStickyNodeInfo.cached.relativeY;
262
- }
263
- else if (nextStickyNodeInfo.node?.yogaNode) {
264
- nextNodeHeight = Math.round(nextStickyNodeInfo.node.yogaNode.getComputedHeight());
265
- nextNodeTop = getRelativeTop(nextStickyNodeInfo.node, node) ?? 0;
266
- }
267
- if (nextNodeTop !== undefined && nextNodeHeight !== undefined) {
268
- const nextNodeBottomInViewport = y - currentScrollTop + nextNodeTop + nextNodeHeight;
269
- if (nextNodeBottomInViewport > minStickyTop) {
270
- minStickyTop = nextNodeBottomInViewport;
271
- }
290
+ if (nextStickyNodeInfo?.resolvedInfo) {
291
+ const nextNodeHeight = nextStickyNodeInfo.resolvedInfo.stickyNodeHeight;
292
+ const nextNodeTop = nextStickyNodeInfo.resolvedInfo.stickyNodeTop;
293
+ const nextNodeBottomInViewport = y - currentScrollTop + nextNodeTop + nextNodeHeight;
294
+ if (nextNodeBottomInViewport > minStickyTop) {
295
+ minStickyTop = nextNodeBottomInViewport;
272
296
  }
273
297
  }
274
- finalStickyY = Math.max(Math.min(stuckStickyY, naturalStickyY), minStickyTop);
298
+ finalStickyY = stickyHeadersInBackbuffer
299
+ ? Math.max(stuckStickyY, minStickyTop)
300
+ : Math.max(Math.min(stuckStickyY, naturalStickyY), minStickyTop);
275
301
  minStuckY = minStickyTop - (y + currentBorderTop);
276
302
  }
277
303
  let naturalLines;
@@ -300,7 +326,7 @@ export function renderActiveStickyNodes(activeStickyNodes, node, output, options
300
326
  lines: naturalLines,
301
327
  stuckLines,
302
328
  styledOutput: stuckLines ?? naturalLines,
303
- x: stickyOffsetX - (x + currentBorderLeft),
329
+ x: relativeX,
304
330
  y: finalStickyY - (y + yogaNode.getComputedBorder(Yoga.EDGE_TOP)),
305
331
  naturalRow,
306
332
  startRow: naturalRow,
@@ -1 +1 @@
1
- {"version":3,"file":"render-sticky.js","sourceRoot":"","sources":["../src/render-sticky.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"render-sticky.js","sourceRoot":"","sources":["../src/render-sticky.ts"],"names":[],"mappings":"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"}
@@ -8,8 +8,8 @@ import { StyledLine } from './styled-line.js';
8
8
  export const applyPaddingToStyledChars = (node, lines) => {
9
9
  const yogaNode = node.childNodes[0]?.yogaNode;
10
10
  if (yogaNode) {
11
- const offsetX = yogaNode.getComputedLeft();
12
- const offsetY = yogaNode.getComputedTop();
11
+ const offsetX = Math.round(yogaNode.getComputedLeft());
12
+ const offsetY = Math.round(yogaNode.getComputedTop());
13
13
  if (offsetX > 0 || offsetY > 0) {
14
14
  const paddedLines = [];
15
15
  const paddingLeft = offsetX > 0 ? StyledLine.empty(offsetX) : undefined;
@@ -113,8 +113,8 @@ export function handleTextNode(node, output, options) {
113
113
  // But padding affects the visual cursor index!
114
114
  // If we pad, the cursor shifts. Let's do it after, but we need to shift the cursor position by the padding.
115
115
  const yogaNode = node.childNodes[0]?.yogaNode;
116
- const offsetX = yogaNode?.getComputedLeft() ?? 0;
117
- const offsetY = yogaNode?.getComputedTop() ?? 0;
116
+ const offsetX = Math.round(yogaNode?.getComputedLeft() ?? 0);
117
+ const offsetY = Math.round(yogaNode?.getComputedTop() ?? 0);
118
118
  lines = applyPaddingToStyledChars(node, lines);
119
119
  if (node.internal_terminalCursorFocus &&
120
120
  node.internal_terminalCursorPosition !== undefined) {
@@ -129,8 +129,8 @@ export function handleTextNode(node, output, options) {
129
129
  }
130
130
  else {
131
131
  const yogaNode = node.childNodes[0]?.yogaNode;
132
- const offsetX = yogaNode?.getComputedLeft() ?? 0;
133
- const offsetY = yogaNode?.getComputedTop() ?? 0;
132
+ const offsetX = Math.round(yogaNode?.getComputedLeft() ?? 0);
133
+ const offsetY = Math.round(yogaNode?.getComputedTop() ?? 0);
134
134
  const line = StyledLine.empty(offsetX);
135
135
  lines = [line];
136
136
  for (let i = 0; i < offsetY; i++) {
@@ -1 +1 @@
1
- {"version":3,"file":"render-text-node.js","sourceRoot":"","sources":["../src/render-text-node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"render-text-node.js","sourceRoot":"","sources":["../src/render-text-node.ts"],"names":[],"mappings":"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"}
@@ -21,5 +21,6 @@ declare const renderer: (node: DOMElement, options: {
21
21
  skipScrollbars?: boolean;
22
22
  trackSelection?: boolean;
23
23
  terminalBuffer?: boolean;
24
+ stickyHeadersInBackbuffer?: boolean;
24
25
  }) => Result;
25
26
  export default renderer;
package/build/renderer.js CHANGED
@@ -175,7 +175,7 @@ const calculateSelectionMap = (root, selection) => {
175
175
  return map;
176
176
  };
177
177
  const renderer = (node, options) => {
178
- const { isScreenReaderEnabled, selection, selectionStyle, skipScrollbars, trackSelection, terminalBuffer, } = options;
178
+ const { isScreenReaderEnabled, selection, selectionStyle, skipScrollbars, trackSelection, terminalBuffer, stickyHeadersInBackbuffer, } = options;
179
179
  if (node.yogaNode) {
180
180
  if (isScreenReaderEnabled) {
181
181
  const output = renderNodeToScreenReaderOutput(node, {
@@ -210,6 +210,7 @@ const renderer = (node, options) => {
210
210
  selectionStyle,
211
211
  selectionMap,
212
212
  trackSelection,
213
+ stickyHeadersInBackbuffer,
213
214
  });
214
215
  let staticOutput;
215
216
  if (node.staticNode?.yogaNode) {
@@ -227,6 +228,7 @@ const renderer = (node, options) => {
227
228
  ? calculateSelectionMap(node.staticNode, selection)
228
229
  : undefined,
229
230
  trackSelection,
231
+ stickyHeadersInBackbuffer,
230
232
  });
231
233
  }
232
234
  const rootRegion = output.get();
@@ -1 +1 @@
1
- {"version":3,"file":"renderer.js","sourceRoot":"","sources":["../src/renderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"renderer.js","sourceRoot":"","sources":["../src/renderer.ts"],"names":[],"mappings":"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"}