sleev 0.0.13 → 0.1.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.
Files changed (133) hide show
  1. package/README.md +9 -8
  2. package/bin/sleev.js +84 -0
  3. package/package.json +36 -55
  4. package/postinstall.mjs +66 -0
  5. package/dist/auth/browser.d.ts +0 -12
  6. package/dist/auth/browser.js +0 -89
  7. package/dist/auth/browser.js.map +0 -1
  8. package/dist/auth/firebase-tokens.d.ts +0 -39
  9. package/dist/auth/firebase-tokens.js +0 -173
  10. package/dist/auth/firebase-tokens.js.map +0 -1
  11. package/dist/auth/firebase.d.ts +0 -17
  12. package/dist/auth/firebase.js +0 -55
  13. package/dist/auth/firebase.js.map +0 -1
  14. package/dist/auth/login.d.ts +0 -22
  15. package/dist/auth/login.js +0 -58
  16. package/dist/auth/login.js.map +0 -1
  17. package/dist/auth/loopback.d.ts +0 -19
  18. package/dist/auth/loopback.js +0 -204
  19. package/dist/auth/loopback.js.map +0 -1
  20. package/dist/auth/schema.d.ts +0 -26
  21. package/dist/auth/schema.js +0 -88
  22. package/dist/auth/schema.js.map +0 -1
  23. package/dist/auth/token.d.ts +0 -19
  24. package/dist/auth/token.js +0 -53
  25. package/dist/auth/token.js.map +0 -1
  26. package/dist/auth/verify.d.ts +0 -6
  27. package/dist/auth/verify.js +0 -22
  28. package/dist/auth/verify.js.map +0 -1
  29. package/dist/cli.d.ts +0 -8
  30. package/dist/cli.js +0 -255
  31. package/dist/cli.js.map +0 -1
  32. package/dist/config/paths.d.ts +0 -12
  33. package/dist/config/paths.js +0 -34
  34. package/dist/config/paths.js.map +0 -1
  35. package/dist/config/store.d.ts +0 -63
  36. package/dist/config/store.js +0 -270
  37. package/dist/config/store.js.map +0 -1
  38. package/dist/control/local-installations.d.ts +0 -13
  39. package/dist/control/local-installations.js +0 -37
  40. package/dist/control/local-installations.js.map +0 -1
  41. package/dist/daemon/config.d.ts +0 -10
  42. package/dist/daemon/config.js +0 -52
  43. package/dist/daemon/config.js.map +0 -1
  44. package/dist/daemon/controller.d.ts +0 -29
  45. package/dist/daemon/controller.js +0 -34
  46. package/dist/daemon/controller.js.map +0 -1
  47. package/dist/daemon/health.d.ts +0 -8
  48. package/dist/daemon/health.js +0 -47
  49. package/dist/daemon/health.js.map +0 -1
  50. package/dist/daemon/start.d.ts +0 -5
  51. package/dist/daemon/start.js +0 -24
  52. package/dist/daemon/start.js.map +0 -1
  53. package/dist/daemon/systemd.d.ts +0 -35
  54. package/dist/daemon/systemd.js +0 -181
  55. package/dist/daemon/systemd.js.map +0 -1
  56. package/dist/gateway/acquire.d.ts +0 -14
  57. package/dist/gateway/acquire.js +0 -112
  58. package/dist/gateway/acquire.js.map +0 -1
  59. package/dist/gateway/manifest.d.ts +0 -26
  60. package/dist/gateway/manifest.js +0 -98
  61. package/dist/gateway/manifest.js.map +0 -1
  62. package/dist/gateway/platform.d.ts +0 -5
  63. package/dist/gateway/platform.js +0 -27
  64. package/dist/gateway/platform.js.map +0 -1
  65. package/dist/harness/claude.d.ts +0 -8
  66. package/dist/harness/claude.js +0 -151
  67. package/dist/harness/claude.js.map +0 -1
  68. package/dist/harness/codex.d.ts +0 -10
  69. package/dist/harness/codex.js +0 -213
  70. package/dist/harness/codex.js.map +0 -1
  71. package/dist/harness/index.d.ts +0 -13
  72. package/dist/harness/index.js +0 -63
  73. package/dist/harness/index.js.map +0 -1
  74. package/dist/harness/opencode-config.d.ts +0 -8
  75. package/dist/harness/opencode-config.js +0 -301
  76. package/dist/harness/opencode-config.js.map +0 -1
  77. package/dist/harness/opencode.d.ts +0 -14
  78. package/dist/harness/opencode.js +0 -50
  79. package/dist/harness/opencode.js.map +0 -1
  80. package/dist/harness/providers.d.ts +0 -8
  81. package/dist/harness/providers.js +0 -30
  82. package/dist/harness/providers.js.map +0 -1
  83. package/dist/harness/types.d.ts +0 -14
  84. package/dist/harness/types.js +0 -2
  85. package/dist/harness/types.js.map +0 -1
  86. package/dist/product.d.ts +0 -12
  87. package/dist/product.js +0 -70
  88. package/dist/product.js.map +0 -1
  89. package/dist/tui/clipboard.d.ts +0 -1
  90. package/dist/tui/clipboard.js +0 -48
  91. package/dist/tui/clipboard.js.map +0 -1
  92. package/dist/tui/openTuiApp.d.ts +0 -1
  93. package/dist/tui/openTuiApp.js +0 -1436
  94. package/dist/tui/openTuiApp.js.map +0 -1
  95. package/dist/tui/pages/flow-screen.d.ts +0 -50
  96. package/dist/tui/pages/flow-screen.js +0 -435
  97. package/dist/tui/pages/flow-screen.js.map +0 -1
  98. package/dist/tui/pages/footer.d.ts +0 -7
  99. package/dist/tui/pages/footer.js +0 -14
  100. package/dist/tui/pages/footer.js.map +0 -1
  101. package/dist/tui/pages/home-screen.d.ts +0 -19
  102. package/dist/tui/pages/home-screen.js +0 -89
  103. package/dist/tui/pages/home-screen.js.map +0 -1
  104. package/dist/tui/pages/index.d.ts +0 -17
  105. package/dist/tui/pages/index.js +0 -11
  106. package/dist/tui/pages/index.js.map +0 -1
  107. package/dist/tui/pages/local-setup-screen.d.ts +0 -23
  108. package/dist/tui/pages/local-setup-screen.js +0 -134
  109. package/dist/tui/pages/local-setup-screen.js.map +0 -1
  110. package/dist/tui/pages/location-card.d.ts +0 -19
  111. package/dist/tui/pages/location-card.js +0 -116
  112. package/dist/tui/pages/location-card.js.map +0 -1
  113. package/dist/tui/pages/menu-screen.d.ts +0 -24
  114. package/dist/tui/pages/menu-screen.js +0 -117
  115. package/dist/tui/pages/menu-screen.js.map +0 -1
  116. package/dist/tui/pages/session-grid.d.ts +0 -23
  117. package/dist/tui/pages/session-grid.js +0 -552
  118. package/dist/tui/pages/session-grid.js.map +0 -1
  119. package/dist/tui/pages/setup-screen.d.ts +0 -15
  120. package/dist/tui/pages/setup-screen.js +0 -80
  121. package/dist/tui/pages/setup-screen.js.map +0 -1
  122. package/dist/tui/pages/terminal-log.d.ts +0 -14
  123. package/dist/tui/pages/terminal-log.js +0 -104
  124. package/dist/tui/pages/terminal-log.js.map +0 -1
  125. package/dist/tui/pages/welcome-screen.d.ts +0 -16
  126. package/dist/tui/pages/welcome-screen.js +0 -80
  127. package/dist/tui/pages/welcome-screen.js.map +0 -1
  128. package/dist/tui/saved-tokens.d.ts +0 -10
  129. package/dist/tui/saved-tokens.js +0 -104
  130. package/dist/tui/saved-tokens.js.map +0 -1
  131. package/dist/tui/theme.d.ts +0 -25
  132. package/dist/tui/theme.js +0 -27
  133. package/dist/tui/theme.js.map +0 -1
@@ -1,552 +0,0 @@
1
- // Ports the landing-page CTA session grid into OpenTUI cells for the home screen.
2
- import { theme } from "../theme.js";
3
- const cols = 14;
4
- const rows = 14;
5
- const gap = 14;
6
- const tokens = 808;
7
- const fill = 900;
8
- const shutdownDuration = 500;
9
- const shutdownSpan = 500;
10
- const appendDuration = 260;
11
- const appendSpan = 1240;
12
- const resetPause = 500;
13
- const resetDelay = shutdownSpan + shutdownDuration + resetPause;
14
- const cellGap = 2;
15
- const gridWidth = (cols - 1) * cellGap + 1;
16
- const recapHeight = 3;
17
- const gridChrome = 2;
18
- export const SESSION_GRID_WIDTH = gridWidth + 4;
19
- export const SESSION_GRID_MAX_HEIGHT = recapHeight + gridChrome + rows;
20
- export function createSessionGridAnimation(start = Date.now()) {
21
- const rng = seeded(42);
22
- const first = makeView(seeded(99));
23
- const events = [];
24
- let view = hiddenView(first);
25
- let side = "noise";
26
- let transition = baseTransition(start, view, side);
27
- function later(run, delay, anchor) {
28
- events.push({ at: anchor + delay, run });
29
- }
30
- function process(now) {
31
- events.sort((a, b) => a.at - b.at);
32
- const next = events[0];
33
- if (!next || next.at > now)
34
- return;
35
- events.shift();
36
- next.run(next.at);
37
- process(now);
38
- }
39
- function draw(next, nextSide, at) {
40
- transition = {
41
- start: at,
42
- from: currentDots(transition, at),
43
- to: dotsFor(next, nextSide),
44
- fromRows: currentRows(transition, at),
45
- toRows: rowsFor(next, nextSide),
46
- fromStats: currentStats(transition, at),
47
- toStats: statsFor(next, nextSide),
48
- };
49
- view = next;
50
- side = nextSide;
51
- }
52
- function layer(delay, anchor) {
53
- later((at) => {
54
- const current = view;
55
- const next = makeLayerView(current, rng);
56
- draw({
57
- ...view,
58
- noise: {
59
- ...next.noise,
60
- dots: hideAddedDots(current.clean.dots, next.noise.dots),
61
- },
62
- clean: next.clean,
63
- bar: next.bar,
64
- }, "noise", at);
65
- later((appendAt) => draw({
66
- ...view,
67
- noise: {
68
- ...next.noise,
69
- dots: appendAddedDots(current.clean.dots, next.noise.dots),
70
- },
71
- clean: next.clean,
72
- bar: next.bar,
73
- }, "noise", appendAt), 50, at);
74
- }, delay, anchor);
75
- }
76
- function prune(delay, anchor, clean) {
77
- later((at) => {
78
- draw(clean ? { ...view, clean } : view, "clean", at);
79
- }, delay + 110, anchor);
80
- }
81
- function cycle(fresh, anchor) {
82
- const next = fresh ? makeView(rng) : null;
83
- const base = fresh ? 1000 : 0;
84
- if (next) {
85
- const seed = Math.floor(rng() * 100000);
86
- later((at) => draw(shutdownView(view, seed), "clean", at), 0, anchor);
87
- later((at) => draw(hiddenView(next), "noise", at), 1000, anchor);
88
- later((at) => draw(appendView(next), "noise", at), resetDelay, anchor);
89
- }
90
- prune(base + 2000, anchor, next?.clean);
91
- layer(base + 4110, anchor);
92
- prune(base + 6110, anchor);
93
- layer(base + 8220, anchor);
94
- prune(base + 10220, anchor);
95
- later((at) => cycle(true, at), base + 12330, anchor);
96
- }
97
- later((at) => draw(appendView(first), "noise", at), 50, start);
98
- cycle(false, start);
99
- return {
100
- snapshot(now = Date.now()) {
101
- process(now);
102
- const stats = currentStats(transition, now);
103
- return {
104
- dots: terminalDots(currentDots(transition, now), currentRows(transition, now)),
105
- rows: Math.max(1, Math.min(rows, Math.ceil(currentRows(transition, now)))),
106
- rawWidth: stats.rawWidth,
107
- currentWidth: stats.currentWidth,
108
- currentTokens: stats.currentTokens,
109
- savedTokens: stats.savedTokens,
110
- };
111
- },
112
- };
113
- }
114
- export function SessionGrid(core, snapshot) {
115
- return core.Box({
116
- width: SESSION_GRID_WIDTH,
117
- flexDirection: "column",
118
- }, recapCard(core, snapshot), gridCard(core, snapshot));
119
- }
120
- export function sessionGridHeight(snapshot) {
121
- return recapHeight + gridChrome + snapshot.rows;
122
- }
123
- function recapCard(core, snapshot) {
124
- const inner = SESSION_GRID_WIDTH - 4;
125
- const raw = Math.round((snapshot.rawWidth / 100) * inner);
126
- const current = Math.round((snapshot.currentWidth / 100) * inner);
127
- return core.Box({
128
- width: SESSION_GRID_WIDTH,
129
- height: recapHeight,
130
- backgroundColor: theme.color.card,
131
- paddingLeft: 1,
132
- paddingRight: 1,
133
- flexDirection: "column",
134
- }, core.Text({
135
- content: splitLine(inner, "SESSION", "SAVED"),
136
- fg: theme.color.quiet,
137
- attributes: core.TextAttributes.DIM,
138
- selectable: false,
139
- }), core.Text({
140
- content: splitLine(inner, `${format(snapshot.currentTokens)} tokens`, format(snapshot.savedTokens)),
141
- fg: theme.color.text,
142
- selectable: false,
143
- }), core.Box({
144
- position: "relative",
145
- width: inner,
146
- height: 1,
147
- backgroundColor: theme.color.footer,
148
- }, ...bar(raw, theme.color.accentDim).map((layer) => core.Box(layer)), ...bar(current, theme.color.accent).map((layer) => core.Box(layer))));
149
- }
150
- function gridCard(core, snapshot) {
151
- return core.Box({
152
- width: SESSION_GRID_WIDTH,
153
- height: snapshot.rows + gridChrome,
154
- backgroundColor: theme.color.card,
155
- paddingLeft: 2,
156
- paddingRight: 2,
157
- paddingTop: 1,
158
- paddingBottom: 1,
159
- }, core.Box({
160
- position: "relative",
161
- width: gridWidth,
162
- height: snapshot.rows,
163
- }, ...snapshot.dots.map((dot) => core.Text({
164
- content: "■",
165
- position: "absolute",
166
- left: dot.x,
167
- top: dot.y,
168
- fg: dotColor(dot.opacity),
169
- selectable: false,
170
- }))));
171
- }
172
- function bar(width, color) {
173
- if (width <= 0)
174
- return [];
175
- return [
176
- {
177
- position: "absolute",
178
- left: 0,
179
- top: 0,
180
- width,
181
- height: 1,
182
- backgroundColor: color,
183
- },
184
- ];
185
- }
186
- function terminalDots(dots, visible) {
187
- return dots.flatMap((d) => {
188
- const opacity = Math.min(d.o * 1.18, 1);
189
- const y = Math.round(d.ty / gap);
190
- if (opacity <= 0.03 || y >= visible)
191
- return [];
192
- return {
193
- x: Math.round((d.tx / gap) * cellGap),
194
- y,
195
- opacity,
196
- };
197
- });
198
- }
199
- function dotColor(opacity) {
200
- if (opacity < 0.12)
201
- return theme.color.ghost;
202
- if (opacity < 0.28)
203
- return theme.color.accentDim;
204
- if (opacity < 0.55)
205
- return theme.color.quiet;
206
- if (opacity < 0.82)
207
- return theme.color.muted;
208
- return theme.color.text;
209
- }
210
- function splitLine(width, left, right) {
211
- const gap = Math.max(1, width - left.length - right.length);
212
- return `${left}${" ".repeat(gap)}${right}`.slice(0, width);
213
- }
214
- function format(value) {
215
- return Math.round(value).toLocaleString();
216
- }
217
- function baseTransition(start, view, side) {
218
- const dots = dotsFor(view, side);
219
- const stats = statsFor(view, side);
220
- const active = rowsFor(view, side);
221
- return {
222
- start,
223
- from: dots,
224
- to: dots,
225
- fromRows: active,
226
- toRows: active,
227
- fromStats: stats,
228
- toStats: stats,
229
- };
230
- }
231
- function currentDots(transition, now) {
232
- return transition.to.map((to, i) => {
233
- const from = transition.from[i] ?? { ...to, o: 0 };
234
- const delay = to.delay ?? (Math.floor(i / cols) + (i % cols)) * 24;
235
- const duration = to.duration ?? fill;
236
- const amount = duration === 0
237
- ? 1
238
- : ease((now - transition.start - delay) / duration);
239
- return {
240
- tx: lerp(from.tx, to.tx, amount),
241
- ty: lerp(from.ty, to.ty, amount),
242
- o: lerp(from.o, to.o, amount),
243
- };
244
- });
245
- }
246
- function currentRows(transition, now) {
247
- return lerp(transition.fromRows, transition.toRows, ease((now - transition.start) / fill));
248
- }
249
- function currentStats(transition, now) {
250
- const amount = ease((now - transition.start) / fill);
251
- return {
252
- rawWidth: lerp(transition.fromStats.rawWidth, transition.toStats.rawWidth, amount),
253
- currentWidth: lerp(transition.fromStats.currentWidth, transition.toStats.currentWidth, amount),
254
- currentTokens: lerp(transition.fromStats.currentTokens, transition.toStats.currentTokens, amount),
255
- savedTokens: lerp(transition.fromStats.savedTokens, transition.toStats.savedTokens, amount),
256
- };
257
- }
258
- function dotsFor(view, side) {
259
- return side === "noise" ? view.noise.dots : view.clean.dots;
260
- }
261
- function rowsFor(view, side) {
262
- return side === "noise" ? view.noise.rows : view.clean.rows;
263
- }
264
- function statsFor(view, side) {
265
- const rawDots = view.bar.raw;
266
- const currentDots = side === "clean" ? view.bar.clean : view.bar.current;
267
- const deletedDots = Math.max(0, rawDots - currentDots);
268
- const maxDots = rows * cols + cols * 8;
269
- const currentTokens = currentDots === 0 ? 0 : currentDots * tokens + view.clean.rows * 137;
270
- return {
271
- rawWidth: (rawDots / maxDots) * 100,
272
- currentWidth: (currentDots / maxDots) * 100,
273
- currentTokens,
274
- savedTokens: deletedDots * tokens,
275
- };
276
- }
277
- function seeded(seed) {
278
- return () => {
279
- seed = (seed * 16807 + 0) % 2147483647;
280
- return seed / 2147483647;
281
- };
282
- }
283
- function dotOpacity(rng) {
284
- const dim = rng() < 0.6;
285
- return dim ? 0.05 + rng() * 0.15 : 0.6 + rng() * 0.4;
286
- }
287
- function visibleRows(dots) {
288
- const last = dots.reduce((max, d) => {
289
- if (d.o <= 0)
290
- return max;
291
- return Math.max(max, Math.round(d.ty / gap));
292
- }, -1);
293
- return Math.max(1, last + 1);
294
- }
295
- function buildGrid(seed, active) {
296
- const rng = seeded(seed);
297
- const dots = [];
298
- for (let r = 0; r < rows; r += 1) {
299
- for (let c = 0; c < cols; c += 1) {
300
- if (r >= active) {
301
- dots.push({ tx: c * gap, ty: r * gap, o: 0 });
302
- continue;
303
- }
304
- dots.push({
305
- tx: c * gap,
306
- ty: r * gap,
307
- o: dotOpacity(rng),
308
- });
309
- }
310
- }
311
- const pool = [];
312
- for (let i = 0; i < dots.length; i += 1) {
313
- if (Math.floor(i / cols) < active)
314
- pool.push(i);
315
- }
316
- const swaps = Math.floor(pool.length * (0.025 + rng() * 0.05));
317
- for (let i = 0; i < swaps; i += 1) {
318
- const a = pool[Math.floor(rng() * pool.length)];
319
- const b = pool[Math.floor(rng() * pool.length)];
320
- if (a === undefined || b === undefined || a === b)
321
- continue;
322
- const tmp = { tx: dots[a].tx, ty: dots[a].ty };
323
- dots[a].tx = dots[b].tx;
324
- dots[a].ty = dots[b].ty;
325
- dots[b].tx = tmp.tx;
326
- dots[b].ty = tmp.ty;
327
- }
328
- return dots;
329
- }
330
- function cleanGrid(dots, active, preserve = 0) {
331
- const previous = new Set(dots
332
- .map((d, i) => ({ i, d }))
333
- .filter((entry) => entry.d.o > 0 && entry.d.ty < active * gap)
334
- .sort((a, b) => a.d.ty - b.d.ty || a.d.tx - b.d.tx)
335
- .slice(0, preserve)
336
- .map((entry) => entry.i));
337
- const scored = dots
338
- .map((d, i) => ({ i, score: d.o }))
339
- .filter((d) => dots[d.i].o > 0 &&
340
- dots[d.i].ty < active * gap &&
341
- !previous.has(d.i));
342
- const kept = new Set([
343
- ...previous,
344
- ...scored.filter((d) => d.score >= 0.4).map((d) => d.i),
345
- ]);
346
- const packed = dots
347
- .map((d, i) => ({ i, d }))
348
- .filter((entry) => entry.d.o > 0 && entry.d.ty < active * gap && kept.has(entry.i))
349
- .sort((a, b) => a.d.ty - b.d.ty || a.d.tx - b.d.tx);
350
- const slots = new Map(packed.map((entry, i) => [
351
- entry.i,
352
- {
353
- tx: (i % cols) * gap,
354
- ty: Math.floor(i / cols) * gap,
355
- },
356
- ]));
357
- return dots.map((d, i) => {
358
- if (d.o > 0 && d.ty < active * gap && !kept.has(i)) {
359
- return { ...d, delay: scanDelay(d, active), o: 0 };
360
- }
361
- const slot = slots.get(i);
362
- return {
363
- tx: slot?.tx ?? d.tx,
364
- ty: slot?.ty ?? d.ty,
365
- delay: scanDelay(d, active),
366
- o: d.o,
367
- };
368
- });
369
- }
370
- function layerGrid(base, active, seed) {
371
- const rng = seeded(seed);
372
- let layer = 0;
373
- const start = base.dots.filter((d) => d.o > 0).length;
374
- return base.dots.map((d) => {
375
- if (d.o > 0)
376
- return { ...d, delay: undefined };
377
- if (layer >= (active - base.rows) * cols)
378
- return { ...d, o: 0 };
379
- const slot = start + layer;
380
- const r = Math.floor(slot / cols);
381
- const c = slot % cols;
382
- layer += 1;
383
- return {
384
- tx: c * gap,
385
- ty: r * gap,
386
- o: dotOpacity(rng),
387
- };
388
- });
389
- }
390
- function scanDelay(d, active) {
391
- const r = Math.round(d.ty / gap);
392
- const c = Math.round(d.tx / gap);
393
- return (active - 1 - r + c * 0.18) * 42;
394
- }
395
- function orderDelay(d, active, span) {
396
- const r = Math.round(d.ty / gap);
397
- const c = Math.round(d.tx / gap);
398
- const max = Math.max(1, active * cols - 1);
399
- const order = Math.min(max, Math.max(0, r * cols + c));
400
- return Math.round((order / max) * span);
401
- }
402
- function randomDelay(seed, index, span) {
403
- const x = Math.sin(seed + index * 78.233) * 43758.5453;
404
- return Math.round((x - Math.floor(x)) * span);
405
- }
406
- function shutdownDots(dots, seed) {
407
- return dots.map((d, i) => ({
408
- ...d,
409
- delay: randomDelay(seed, i, shutdownSpan),
410
- duration: shutdownDuration,
411
- o: 0,
412
- }));
413
- }
414
- function hiddenDots(dots) {
415
- return dots.map((d) => ({ ...d, delay: 0, duration: 0, o: 0 }));
416
- }
417
- function appendDots(dots, active) {
418
- return dots.map((d) => ({
419
- ...d,
420
- delay: orderDelay(d, active, appendSpan),
421
- duration: appendDuration,
422
- }));
423
- }
424
- function hideAddedDots(base, next) {
425
- return next.map((d, i) => {
426
- if ((base[i]?.o ?? 0) > 0 || d.o <= 0) {
427
- return { ...d, delay: undefined, duration: undefined };
428
- }
429
- return { ...d, delay: 0, duration: 0, o: 0 };
430
- });
431
- }
432
- function appendAddedDots(base, next) {
433
- const added = next
434
- .map((d, i) => ({ i, d }))
435
- .filter((entry) => (base[entry.i]?.o ?? 0) <= 0 && entry.d.o > 0)
436
- .sort((a, b) => a.d.ty - b.d.ty || a.d.tx - b.d.tx);
437
- const max = Math.max(1, added.length - 1);
438
- const delays = new Map(added.map((entry, i) => [entry.i, Math.round((i / max) * appendSpan)]));
439
- return next.map((d, i) => {
440
- const delay = delays.get(i);
441
- if (delay === undefined)
442
- return { ...d, delay: undefined, duration: undefined };
443
- return { ...d, delay, duration: appendDuration };
444
- });
445
- }
446
- function shutdownView(view, seed) {
447
- return {
448
- ...view,
449
- noise: { ...view.noise, dots: shutdownDots(view.noise.dots, seed) },
450
- clean: {
451
- ...view.clean,
452
- dots: shutdownDots(view.clean.dots, seed + 10000),
453
- },
454
- bar: { raw: 0, current: 0, clean: 0 },
455
- };
456
- }
457
- function hiddenView(view) {
458
- return {
459
- ...view,
460
- noise: { ...view.noise, dots: hiddenDots(view.noise.dots) },
461
- bar: { raw: 0, current: 0, clean: 0 },
462
- };
463
- }
464
- function appendView(view) {
465
- return {
466
- ...view,
467
- noise: {
468
- ...view.noise,
469
- dots: appendDots(view.noise.dots, view.noise.rows),
470
- },
471
- };
472
- }
473
- function makeScene(rng) {
474
- const noiseRows = 5 + Math.floor(rng() * 2);
475
- const noiseSeed = Math.floor(rng() * 100000);
476
- const rawNoiseDots = buildGrid(noiseSeed, noiseRows);
477
- const cleanDots = cleanGrid(rawNoiseDots, noiseRows);
478
- const cleanRows = visibleRows(cleanDots);
479
- const cut = Math.round((1 -
480
- activeDots(cleanDots, cleanRows) /
481
- activeDots(rawNoiseDots, noiseRows)) *
482
- 100);
483
- const saved = Math.round((cut * (1.7 + rng() * 0.8)) / 5) * 5;
484
- return {
485
- noiseRows,
486
- cleanRows,
487
- cut,
488
- saved,
489
- noiseDots: rawNoiseDots,
490
- cleanDots,
491
- };
492
- }
493
- function activeDots(dots, active) {
494
- return dots.filter((d) => d.o > 0 && d.ty < active * gap).length;
495
- }
496
- function makeView(rng) {
497
- const scene = makeScene(rng);
498
- return {
499
- noise: {
500
- rows: scene.noiseRows,
501
- dots: scene.noiseDots,
502
- cut: scene.cut,
503
- saved: scene.saved,
504
- },
505
- clean: { rows: scene.cleanRows, dots: scene.cleanDots, cut: scene.cut },
506
- bar: {
507
- raw: activeDots(scene.noiseDots, scene.noiseRows),
508
- current: activeDots(scene.noiseDots, scene.noiseRows),
509
- clean: activeDots(scene.cleanDots, scene.cleanRows),
510
- },
511
- };
512
- }
513
- function makeLayerView(view, rng) {
514
- const add = 6 + Math.floor(rng() * 2);
515
- const preserve = view.clean.dots.filter((d) => d.o > 0).length;
516
- const noiseRows = Math.min(rows, view.clean.rows + add);
517
- const rawNoiseDots = layerGrid(view.clean, noiseRows, Math.floor(rng() * 100000));
518
- const cleanDots = cleanGrid(rawNoiseDots, noiseRows, preserve);
519
- const cleanRows = visibleRows(cleanDots);
520
- const added = rawNoiseDots.filter((d, i) => d.o > 0 && (view.clean.dots[i]?.o ?? 0) <= 0).length;
521
- const cut = Math.round((1 -
522
- activeDots(cleanDots, cleanRows) /
523
- activeDots(rawNoiseDots, noiseRows)) *
524
- 100);
525
- const cleaned = activeDots(cleanDots, cleanRows);
526
- return {
527
- noise: {
528
- rows: noiseRows,
529
- dots: rawNoiseDots,
530
- cut,
531
- saved: view.noise.saved,
532
- },
533
- clean: {
534
- rows: cleanRows,
535
- dots: cleanDots,
536
- cut,
537
- },
538
- bar: {
539
- raw: view.bar.raw + added,
540
- current: view.bar.clean + added,
541
- clean: cleaned,
542
- },
543
- };
544
- }
545
- function lerp(from, to, amount) {
546
- return from + (to - from) * amount;
547
- }
548
- function ease(value) {
549
- const progress = Math.min(Math.max(value, 0), 1);
550
- return 1 - (1 - progress) ** 3;
551
- }
552
- //# sourceMappingURL=session-grid.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"session-grid.js","sourceRoot":"","sources":["../../../src/tui/pages/session-grid.ts"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- import type { LocationAction } from "./location-card.js";
2
- type OpenTuiCore = typeof import("@opentui/core");
3
- type SetupCore = Pick<OpenTuiCore, "Box" | "Text" | "TextAttributes">;
4
- export type SetupScreenProps = {
5
- mode: LocationAction;
6
- columns: number;
7
- rows: number;
8
- logs: string[];
9
- logOffset: number;
10
- logNotice: string | null;
11
- onLogScroll: (delta: number) => void;
12
- onLogLink: (url: string) => void;
13
- };
14
- export declare function SetupScreen(core: SetupCore, props: SetupScreenProps): import("@opentui/core").ProxiedVNode<typeof import("@opentui/core").BoxRenderable>;
15
- export {};