@effect-tui/core 0.1.1 → 0.1.5
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/README.md +31 -11
- package/dist/ansi.d.ts +127 -32
- package/dist/ansi.d.ts.map +1 -1
- package/dist/ansi.js +159 -37
- package/dist/ansi.js.map +1 -1
- package/dist/colors.d.ts +139 -0
- package/dist/colors.d.ts.map +1 -0
- package/dist/colors.js +339 -0
- package/dist/colors.js.map +1 -0
- package/dist/index.d.ts +6 -10
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +13 -11
- package/dist/index.js.map +1 -1
- package/dist/keys.d.ts +21 -0
- package/dist/keys.d.ts.map +1 -1
- package/dist/keys.js +199 -58
- package/dist/keys.js.map +1 -1
- package/dist/layout/axis-helpers.d.ts +19 -0
- package/dist/layout/axis-helpers.d.ts.map +1 -0
- package/dist/layout/axis-helpers.js +19 -0
- package/dist/layout/axis-helpers.js.map +1 -0
- package/dist/output.d.ts +59 -0
- package/dist/output.d.ts.map +1 -0
- package/dist/output.js +142 -0
- package/dist/output.js.map +1 -0
- package/dist/render/buffer.d.ts.map +1 -1
- package/dist/render/buffer.js +6 -25
- package/dist/render/buffer.js.map +1 -1
- package/dist/render/graphemes.d.ts +15 -0
- package/dist/render/graphemes.d.ts.map +1 -0
- package/dist/render/graphemes.js +28 -0
- package/dist/render/graphemes.js.map +1 -0
- package/dist/render/measure.d.ts +1 -0
- package/dist/render/measure.d.ts.map +1 -1
- package/dist/render/measure.js +14 -36
- package/dist/render/measure.js.map +1 -1
- package/dist/render/palette.d.ts.map +1 -1
- package/dist/render/palette.js +26 -1
- package/dist/render/palette.js.map +1 -1
- package/dist/render/segmenter.d.ts +8 -0
- package/dist/render/segmenter.d.ts.map +1 -0
- package/dist/render/segmenter.js +23 -0
- package/dist/render/segmenter.js.map +1 -0
- package/dist/render/surface.d.ts +6 -32
- package/dist/render/surface.d.ts.map +1 -1
- package/dist/render/surface.js +11 -80
- package/dist/render/surface.js.map +1 -1
- package/dist/runtime/backend_node.d.ts.map +1 -1
- package/dist/runtime/backend_node.js.map +1 -1
- package/dist/tailwind-colors.d.ts +291 -0
- package/dist/tailwind-colors.d.ts.map +1 -0
- package/dist/tailwind-colors.js +291 -0
- package/dist/tailwind-colors.js.map +1 -0
- package/dist/types.d.ts +15 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -0
- package/package.json +55 -55
- package/src/ansi.ts +201 -73
- package/src/colors.ts +468 -0
- package/src/index.ts +28 -14
- package/src/keys.ts +467 -287
- package/src/layout/axis-helpers.ts +33 -0
- package/src/output.ts +175 -0
- package/src/render/buffer.ts +161 -184
- package/src/render/graphemes.ts +34 -0
- package/src/render/measure.ts +15 -38
- package/src/render/palette.ts +98 -77
- package/src/render/segmenter.ts +27 -0
- package/src/render/surface.ts +139 -225
- package/src/runtime/backend_node.ts +71 -71
- package/src/tailwind-colors.ts +295 -0
- package/src/types.ts +18 -0
- package/dist/anim.d.ts +0 -4
- package/dist/anim.d.ts.map +0 -1
- package/dist/anim.js +0 -5
- package/dist/anim.js.map +0 -1
- package/dist/layout/linearStack.d.ts +0 -17
- package/dist/layout/linearStack.d.ts.map +0 -1
- package/dist/layout/linearStack.js +0 -86
- package/dist/layout/linearStack.js.map +0 -1
- package/dist/motion-value.d.ts +0 -58
- package/dist/motion-value.d.ts.map +0 -1
- package/dist/motion-value.js +0 -250
- package/dist/motion-value.js.map +0 -1
- package/dist/present/display.d.ts +0 -58
- package/dist/present/display.d.ts.map +0 -1
- package/dist/present/display.js +0 -168
- package/dist/present/display.js.map +0 -1
- package/dist/present/writers/fullscreen.d.ts +0 -19
- package/dist/present/writers/fullscreen.d.ts.map +0 -1
- package/dist/present/writers/fullscreen.js +0 -55
- package/dist/present/writers/fullscreen.js.map +0 -1
- package/dist/present/writers/inline.d.ts +0 -20
- package/dist/present/writers/inline.d.ts.map +0 -1
- package/dist/present/writers/inline.js +0 -92
- package/dist/present/writers/inline.js.map +0 -1
- package/dist/render/color-utils.d.ts +0 -18
- package/dist/render/color-utils.d.ts.map +0 -1
- package/dist/render/color-utils.js +0 -58
- package/dist/render/color-utils.js.map +0 -1
- package/dist/render/diff.d.ts +0 -30
- package/dist/render/diff.d.ts.map +0 -1
- package/dist/render/diff.js +0 -83
- package/dist/render/diff.js.map +0 -1
- package/dist/spring-physics.d.ts +0 -36
- package/dist/spring-physics.d.ts.map +0 -1
- package/dist/spring-physics.js +0 -113
- package/dist/spring-physics.js.map +0 -1
- package/dist/spring.d.ts +0 -73
- package/dist/spring.d.ts.map +0 -1
- package/dist/spring.js +0 -136
- package/dist/spring.js.map +0 -1
- package/dist/ui/containers/canvas.d.ts +0 -13
- package/dist/ui/containers/canvas.d.ts.map +0 -1
- package/dist/ui/containers/canvas.js +0 -16
- package/dist/ui/containers/canvas.js.map +0 -1
- package/dist/ui/containers/geometry-reader.d.ts +0 -17
- package/dist/ui/containers/geometry-reader.d.ts.map +0 -1
- package/dist/ui/containers/geometry-reader.js +0 -24
- package/dist/ui/containers/geometry-reader.js.map +0 -1
- package/dist/ui/containers/hstack.d.ts +0 -12
- package/dist/ui/containers/hstack.d.ts.map +0 -1
- package/dist/ui/containers/hstack.js +0 -28
- package/dist/ui/containers/hstack.js.map +0 -1
- package/dist/ui/containers/scroll.d.ts +0 -28
- package/dist/ui/containers/scroll.d.ts.map +0 -1
- package/dist/ui/containers/scroll.js +0 -97
- package/dist/ui/containers/scroll.js.map +0 -1
- package/dist/ui/containers/shared.d.ts +0 -12
- package/dist/ui/containers/shared.d.ts.map +0 -1
- package/dist/ui/containers/shared.js +0 -19
- package/dist/ui/containers/shared.js.map +0 -1
- package/dist/ui/containers/vstack.d.ts +0 -12
- package/dist/ui/containers/vstack.d.ts.map +0 -1
- package/dist/ui/containers/vstack.js +0 -28
- package/dist/ui/containers/vstack.js.map +0 -1
- package/dist/ui/containers/zstack.d.ts +0 -14
- package/dist/ui/containers/zstack.d.ts.map +0 -1
- package/dist/ui/containers/zstack.js +0 -36
- package/dist/ui/containers/zstack.js.map +0 -1
- package/dist/ui/core/geometry-store.d.ts +0 -22
- package/dist/ui/core/geometry-store.d.ts.map +0 -1
- package/dist/ui/core/geometry-store.js +0 -29
- package/dist/ui/core/geometry-store.js.map +0 -1
- package/dist/ui/core/geometry.d.ts +0 -34
- package/dist/ui/core/geometry.d.ts.map +0 -1
- package/dist/ui/core/geometry.js +0 -14
- package/dist/ui/core/geometry.js.map +0 -1
- package/dist/ui/core/view.d.ts +0 -25
- package/dist/ui/core/view.d.ts.map +0 -1
- package/dist/ui/core/view.js +0 -34
- package/dist/ui/core/view.js.map +0 -1
- package/dist/ui/index.d.ts +0 -44
- package/dist/ui/index.d.ts.map +0 -1
- package/dist/ui/index.js +0 -39
- package/dist/ui/index.js.map +0 -1
- package/dist/ui/inlinetext.d.ts +0 -24
- package/dist/ui/inlinetext.d.ts.map +0 -1
- package/dist/ui/inlinetext.js +0 -131
- package/dist/ui/inlinetext.js.map +0 -1
- package/dist/ui/install.d.ts +0 -22
- package/dist/ui/install.d.ts.map +0 -1
- package/dist/ui/install.js +0 -66
- package/dist/ui/install.js.map +0 -1
- package/dist/ui/markdown.d.ts +0 -40
- package/dist/ui/markdown.d.ts.map +0 -1
- package/dist/ui/markdown.js +0 -351
- package/dist/ui/markdown.js.map +0 -1
- package/dist/ui/modifiers/border.d.ts +0 -33
- package/dist/ui/modifiers/border.d.ts.map +0 -1
- package/dist/ui/modifiers/border.js +0 -82
- package/dist/ui/modifiers/border.js.map +0 -1
- package/dist/ui/modifiers/fill.d.ts +0 -14
- package/dist/ui/modifiers/fill.d.ts.map +0 -1
- package/dist/ui/modifiers/fill.js +0 -25
- package/dist/ui/modifiers/fill.js.map +0 -1
- package/dist/ui/modifiers/frame.d.ts +0 -23
- package/dist/ui/modifiers/frame.d.ts.map +0 -1
- package/dist/ui/modifiers/frame.js +0 -54
- package/dist/ui/modifiers/frame.js.map +0 -1
- package/dist/ui/modifiers/offset.d.ts +0 -15
- package/dist/ui/modifiers/offset.d.ts.map +0 -1
- package/dist/ui/modifiers/offset.js +0 -21
- package/dist/ui/modifiers/offset.js.map +0 -1
- package/dist/ui/modifiers/opacity.d.ts +0 -15
- package/dist/ui/modifiers/opacity.d.ts.map +0 -1
- package/dist/ui/modifiers/opacity.js +0 -95
- package/dist/ui/modifiers/opacity.js.map +0 -1
- package/dist/ui/modifiers/padding.d.ts +0 -20
- package/dist/ui/modifiers/padding.d.ts.map +0 -1
- package/dist/ui/modifiers/padding.js +0 -36
- package/dist/ui/modifiers/padding.js.map +0 -1
- package/dist/ui/modifiers/styled.d.ts +0 -14
- package/dist/ui/modifiers/styled.d.ts.map +0 -1
- package/dist/ui/modifiers/styled.js +0 -26
- package/dist/ui/modifiers/styled.js.map +0 -1
- package/dist/ui/primitives/rectangle.d.ts +0 -15
- package/dist/ui/primitives/rectangle.d.ts.map +0 -1
- package/dist/ui/primitives/rectangle.js +0 -23
- package/dist/ui/primitives/rectangle.js.map +0 -1
- package/dist/ui/primitives/spacer.d.ts +0 -13
- package/dist/ui/primitives/spacer.d.ts.map +0 -1
- package/dist/ui/primitives/spacer.js +0 -16
- package/dist/ui/primitives/spacer.js.map +0 -1
- package/dist/ui/primitives/text.d.ts +0 -15
- package/dist/ui/primitives/text.d.ts.map +0 -1
- package/dist/ui/primitives/text.js +0 -79
- package/dist/ui/primitives/text.js.map +0 -1
- package/dist/ui/primitives/wrapped-text.d.ts +0 -30
- package/dist/ui/primitives/wrapped-text.d.ts.map +0 -1
- package/dist/ui/primitives/wrapped-text.js +0 -117
- package/dist/ui/primitives/wrapped-text.js.map +0 -1
- package/dist/ui/shinytext.d.ts +0 -66
- package/dist/ui/shinytext.d.ts.map +0 -1
- package/dist/ui/shinytext.js +0 -99
- package/dist/ui/shinytext.js.map +0 -1
- package/dist/ui/text/layout.d.ts +0 -35
- package/dist/ui/text/layout.d.ts.map +0 -1
- package/dist/ui/text/layout.js +0 -102
- package/dist/ui/text/layout.js.map +0 -1
- package/dist/ui/textinput.d.ts +0 -140
- package/dist/ui/textinput.d.ts.map +0 -1
- package/dist/ui/textinput.js +0 -402
- package/dist/ui/textinput.js.map +0 -1
- package/dist/ui/view-constructors.d.ts +0 -72
- package/dist/ui/view-constructors.d.ts.map +0 -1
- package/dist/ui/view-constructors.js +0 -74
- package/dist/ui/view-constructors.js.map +0 -1
- package/src/anim.ts +0 -5
- package/src/layout/linearStack.ts +0 -115
- package/src/motion-value.ts +0 -335
- package/src/present/display.ts +0 -206
- package/src/present/writers/fullscreen.ts +0 -58
- package/src/present/writers/inline.ts +0 -101
- package/src/render/color-utils.ts +0 -60
- package/src/render/diff.ts +0 -95
- package/src/spring-physics.ts +0 -151
- package/src/spring.ts +0 -234
- package/src/ui/__snapshots__/wrappedtext.test.ts.snap +0 -57
- package/src/ui/containers/canvas.ts +0 -18
- package/src/ui/containers/geometry-reader.ts +0 -32
- package/src/ui/containers/hstack.ts +0 -33
- package/src/ui/containers/scroll.ts +0 -106
- package/src/ui/containers/shared.ts +0 -27
- package/src/ui/containers/vstack.ts +0 -34
- package/src/ui/containers/zstack.ts +0 -37
- package/src/ui/core/geometry-store.ts +0 -42
- package/src/ui/core/geometry.ts +0 -30
- package/src/ui/core/view.ts +0 -49
- package/src/ui/index.ts +0 -84
- package/src/ui/inlinetext.ts +0 -135
- package/src/ui/install.ts +0 -110
- package/src/ui/markdown.test.ts +0 -74
- package/src/ui/markdown.ts +0 -388
- package/src/ui/modifiers/border.ts +0 -100
- package/src/ui/modifiers/fill.ts +0 -28
- package/src/ui/modifiers/frame.ts +0 -74
- package/src/ui/modifiers/offset.ts +0 -23
- package/src/ui/modifiers/opacity.ts +0 -93
- package/src/ui/modifiers/padding.ts +0 -53
- package/src/ui/modifiers/styled.ts +0 -31
- package/src/ui/primitives/rectangle.ts +0 -25
- package/src/ui/primitives/spacer.ts +0 -18
- package/src/ui/primitives/text.ts +0 -85
- package/src/ui/primitives/wrapped-text.ts +0 -131
- package/src/ui/shinytext.ts +0 -159
- package/src/ui/text/layout.ts +0 -119
- package/src/ui/textinput.ts +0 -496
- package/src/ui/view-constructors.ts +0 -96
- package/src/ui/wrappedtext.test.ts +0 -138
package/dist/spring.js
DELETED
|
@@ -1,136 +0,0 @@
|
|
|
1
|
-
// spring.ts - Higher-level spring API for number and color values
|
|
2
|
-
import { parseColor } from "./render/surface.js";
|
|
3
|
-
import { idxToRGB } from "./render/color-utils.js";
|
|
4
|
-
import { advanceSpring, DEFAULTS } from "./spring-physics.js";
|
|
5
|
-
// ---- Helpers ----
|
|
6
|
-
export function colorLikeToRGB(c) {
|
|
7
|
-
const v = parseColor(c);
|
|
8
|
-
if (typeof v === "number")
|
|
9
|
-
return idxToRGB(v);
|
|
10
|
-
return { r: v.r | 0, g: v.g | 0, b: v.b | 0 };
|
|
11
|
-
}
|
|
12
|
-
function isColorSpring(s) {
|
|
13
|
-
return typeof s.x === "object";
|
|
14
|
-
}
|
|
15
|
-
// ---- Number spring primitives ----
|
|
16
|
-
function initNumber(initial, cfg) {
|
|
17
|
-
return {
|
|
18
|
-
x: initial,
|
|
19
|
-
v: 0,
|
|
20
|
-
target: initial,
|
|
21
|
-
...(cfg && { _config: cfg }),
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
function tickNumber(s, nowMs, cfg) {
|
|
25
|
-
const last = s._last ?? nowMs;
|
|
26
|
-
const dt = Math.max(0, Math.min(0.1, (nowMs - last) / 1000));
|
|
27
|
-
const stepped = advanceSpring(s, dt, cfg ?? s._config);
|
|
28
|
-
return {
|
|
29
|
-
...s,
|
|
30
|
-
x: stepped.x,
|
|
31
|
-
v: stepped.v,
|
|
32
|
-
target: stepped.target,
|
|
33
|
-
_last: nowMs,
|
|
34
|
-
...(cfg || s._config ? { _config: cfg ?? s._config } : {}),
|
|
35
|
-
};
|
|
36
|
-
}
|
|
37
|
-
function toNumber(s, target) {
|
|
38
|
-
return { ...s, target };
|
|
39
|
-
}
|
|
40
|
-
function valueNumber(s) {
|
|
41
|
-
return s.x;
|
|
42
|
-
}
|
|
43
|
-
function settledNumber(s, eps = DEFAULTS.epsilon) {
|
|
44
|
-
return Math.abs(s.x - s.target) < eps && Math.abs(s.v) < eps;
|
|
45
|
-
}
|
|
46
|
-
// ---- Color spring primitives ----
|
|
47
|
-
const SpringColor = {
|
|
48
|
-
init(initial, cfg) {
|
|
49
|
-
const rgb = colorLikeToRGB(initial);
|
|
50
|
-
return {
|
|
51
|
-
x: { ...rgb },
|
|
52
|
-
v: { r: 0, g: 0, b: 0 },
|
|
53
|
-
target: { ...rgb },
|
|
54
|
-
...(cfg && { _config: cfg }),
|
|
55
|
-
};
|
|
56
|
-
},
|
|
57
|
-
to(s, target) {
|
|
58
|
-
const rgb = colorLikeToRGB(target);
|
|
59
|
-
return { ...s, target: { ...rgb } };
|
|
60
|
-
},
|
|
61
|
-
tick(s, nowMs, cfg) {
|
|
62
|
-
const last = s._last ?? nowMs;
|
|
63
|
-
const dt = Math.max(0, Math.min(0.1, (nowMs - last) / 1000));
|
|
64
|
-
const rx = advanceSpring({ x: s.x.r, v: s.v.r, target: s.target.r }, dt, cfg ?? s._config);
|
|
65
|
-
const gx = advanceSpring({ x: s.x.g, v: s.v.g, target: s.target.g }, dt, cfg ?? s._config);
|
|
66
|
-
const bx = advanceSpring({ x: s.x.b, v: s.v.b, target: s.target.b }, dt, cfg ?? s._config);
|
|
67
|
-
return {
|
|
68
|
-
x: { r: rx.x, g: gx.x, b: bx.x },
|
|
69
|
-
v: { r: rx.v, g: gx.v, b: bx.v },
|
|
70
|
-
target: { r: s.target.r, g: s.target.g, b: s.target.b },
|
|
71
|
-
_last: nowMs,
|
|
72
|
-
...(cfg || s._config ? { _config: cfg ?? s._config } : {}),
|
|
73
|
-
};
|
|
74
|
-
},
|
|
75
|
-
value(s) {
|
|
76
|
-
const clamp = (n) => (n < 0 ? 0 : n > 255 ? 255 : n | 0);
|
|
77
|
-
return { r: clamp(s.x.r), g: clamp(s.x.g), b: clamp(s.x.b) };
|
|
78
|
-
},
|
|
79
|
-
settled(s, eps = DEFAULTS.epsilon) {
|
|
80
|
-
const dx = Math.abs(s.x.r - s.target.r) + Math.abs(s.x.g - s.target.g) + Math.abs(s.x.b - s.target.b);
|
|
81
|
-
const dv = Math.abs(s.v.r) + Math.abs(s.v.g) + Math.abs(s.v.b);
|
|
82
|
-
return dx < eps * 3 && dv < eps * 3;
|
|
83
|
-
},
|
|
84
|
-
};
|
|
85
|
-
function create(initial, cfg) {
|
|
86
|
-
const as = cfg?.as ?? (typeof initial === "number" ? "number" : "color");
|
|
87
|
-
return as === "number" ? initNumber(initial, cfg) : SpringColor.init(initial, cfg);
|
|
88
|
-
}
|
|
89
|
-
function to(s, target) {
|
|
90
|
-
return isColorSpring(s) ? SpringColor.to(s, target) : toNumber(s, target);
|
|
91
|
-
}
|
|
92
|
-
function tick(s, nowMs, cfg) {
|
|
93
|
-
return isColorSpring(s) ? SpringColor.tick(s, nowMs, cfg) : tickNumber(s, nowMs, cfg);
|
|
94
|
-
}
|
|
95
|
-
function read(s) {
|
|
96
|
-
return isColorSpring(s) ? SpringColor.value(s) : valueNumber(s);
|
|
97
|
-
}
|
|
98
|
-
function isSettled(s, eps = DEFAULTS.epsilon) {
|
|
99
|
-
return isColorSpring(s) ? SpringColor.settled(s, eps) : settledNumber(s, eps);
|
|
100
|
-
}
|
|
101
|
-
export const Spring = {
|
|
102
|
-
// number
|
|
103
|
-
init: initNumber,
|
|
104
|
-
to,
|
|
105
|
-
tick,
|
|
106
|
-
value: valueNumber,
|
|
107
|
-
settled: settledNumber,
|
|
108
|
-
// color (explicit path)
|
|
109
|
-
color: SpringColor,
|
|
110
|
-
// unified ergonomic API
|
|
111
|
-
create,
|
|
112
|
-
advance: tick,
|
|
113
|
-
read,
|
|
114
|
-
isSettled,
|
|
115
|
-
};
|
|
116
|
-
export const Step = {
|
|
117
|
-
init(length, intervalMs, startIndex = 0) {
|
|
118
|
-
return {
|
|
119
|
-
index: ((startIndex % length) + length) % length,
|
|
120
|
-
length: Math.max(1, length | 0),
|
|
121
|
-
intervalMs: Math.max(1, intervalMs | 0),
|
|
122
|
-
_accumMs: 0,
|
|
123
|
-
};
|
|
124
|
-
},
|
|
125
|
-
tick(s, nowMs) {
|
|
126
|
-
const last = s._last ?? nowMs;
|
|
127
|
-
let accum = s._accumMs + Math.max(0, nowMs - last);
|
|
128
|
-
let idx = s.index;
|
|
129
|
-
while (accum >= s.intervalMs) {
|
|
130
|
-
accum -= s.intervalMs;
|
|
131
|
-
idx = (idx + 1) % s.length;
|
|
132
|
-
}
|
|
133
|
-
return { ...s, index: idx, _accumMs: accum, _last: nowMs };
|
|
134
|
-
},
|
|
135
|
-
};
|
|
136
|
-
//# sourceMappingURL=spring.js.map
|
package/dist/spring.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"spring.js","sourceRoot":"","sources":["../src/spring.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import type { Palette, Surface } from "../../render/surface.js";
|
|
2
|
-
import { View } from "../core/view.js";
|
|
3
|
-
import type { Rect } from "../core/geometry.js";
|
|
4
|
-
export declare class Canvas extends View {
|
|
5
|
-
readonly paint: (s: Surface, pal: Palette, rect: Rect) => void;
|
|
6
|
-
constructor(paint: (s: Surface, pal: Palette, rect: Rect) => void);
|
|
7
|
-
protected measureContent(maxW: number, maxH: number): {
|
|
8
|
-
w: number;
|
|
9
|
-
h: number;
|
|
10
|
-
};
|
|
11
|
-
protected renderContent(s: Surface, pal: Palette, rect: Rect): void;
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=canvas.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"canvas.d.ts","sourceRoot":"","sources":["../../../src/ui/containers/canvas.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AACtC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAE/C,qBAAa,MAAO,SAAQ,IAAI;IAClB,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,KAAK,IAAI;gBAArD,KAAK,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,KAAK,IAAI;IAI1E,SAAS,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;;;;IAKnD,SAAS,CAAC,aAAa,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI;CAG7D"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { View } from "../core/view.js";
|
|
2
|
-
export class Canvas extends View {
|
|
3
|
-
paint;
|
|
4
|
-
constructor(paint) {
|
|
5
|
-
super();
|
|
6
|
-
this.paint = paint;
|
|
7
|
-
}
|
|
8
|
-
measureContent(maxW, maxH) {
|
|
9
|
-
// Greedy: occupy the full available area (caller can constrain via frame())
|
|
10
|
-
return { w: Math.max(0, maxW), h: Math.max(0, maxH) };
|
|
11
|
-
}
|
|
12
|
-
renderContent(s, pal, rect) {
|
|
13
|
-
this.paint(s, pal, rect);
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=canvas.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"canvas.js","sourceRoot":"","sources":["../../../src/ui/containers/canvas.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAGtC,MAAM,OAAO,MAAO,SAAQ,IAAI;IACT;IAArB,YAAqB,KAAqD;QACxE,KAAK,EAAE,CAAA;QADY,UAAK,GAAL,KAAK,CAAgD;IAE1E,CAAC;IAES,cAAc,CAAC,IAAY,EAAE,IAAY;QACjD,4EAA4E;QAC5E,OAAO,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAA;IACvD,CAAC;IAES,aAAa,CAAC,CAAU,EAAE,GAAY,EAAE,IAAU;QAC1D,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;IAC1B,CAAC;CACF"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import type { Palette, Surface } from "../../render/surface.js";
|
|
2
|
-
import { View } from "../core/view.js";
|
|
3
|
-
import type { Rect } from "../core/geometry.js";
|
|
4
|
-
export type GeometryProxy = {
|
|
5
|
-
width: number;
|
|
6
|
-
height: number;
|
|
7
|
-
};
|
|
8
|
-
export declare class GeometryReader extends View {
|
|
9
|
-
readonly reader: (proxy: GeometryProxy) => View;
|
|
10
|
-
constructor(reader: (proxy: GeometryProxy) => View);
|
|
11
|
-
protected measureContent(maxW: number, maxH: number): {
|
|
12
|
-
w: number;
|
|
13
|
-
h: number;
|
|
14
|
-
};
|
|
15
|
-
protected renderContent(s: Surface, pal: Palette, rect: Rect): void;
|
|
16
|
-
}
|
|
17
|
-
//# sourceMappingURL=geometry-reader.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"geometry-reader.d.ts","sourceRoot":"","sources":["../../../src/ui/containers/geometry-reader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AACtC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAG/C,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf,CAAA;AAED,qBAAa,cAAe,SAAQ,IAAI;IAC1B,QAAQ,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI;gBAAtC,MAAM,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI;IAI3D,SAAS,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;;;;IAKnD,SAAS,CAAC,aAAa,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI;CAW7D"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { View } from "../core/view.js";
|
|
2
|
-
export class GeometryReader extends View {
|
|
3
|
-
reader;
|
|
4
|
-
constructor(reader) {
|
|
5
|
-
super();
|
|
6
|
-
this.reader = reader;
|
|
7
|
-
}
|
|
8
|
-
measureContent(maxW, maxH) {
|
|
9
|
-
// GeometryReader is greedy - takes all available space
|
|
10
|
-
return { w: maxW, h: maxH };
|
|
11
|
-
}
|
|
12
|
-
renderContent(s, pal, rect) {
|
|
13
|
-
// Create the child with the actual geometry
|
|
14
|
-
const proxy = {
|
|
15
|
-
width: rect.w,
|
|
16
|
-
height: rect.h,
|
|
17
|
-
};
|
|
18
|
-
const child = this.reader(proxy);
|
|
19
|
-
// Measure the child first, then render
|
|
20
|
-
child.measure(rect.w, rect.h);
|
|
21
|
-
child.render(s, pal, rect);
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
//# sourceMappingURL=geometry-reader.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"geometry-reader.js","sourceRoot":"","sources":["../../../src/ui/containers/geometry-reader.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAStC,MAAM,OAAO,cAAe,SAAQ,IAAI;IACjB;IAArB,YAAqB,MAAsC;QACzD,KAAK,EAAE,CAAA;QADY,WAAM,GAAN,MAAM,CAAgC;IAE3D,CAAC;IAES,cAAc,CAAC,IAAY,EAAE,IAAY;QACjD,uDAAuD;QACvD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAA;IAC7B,CAAC;IAES,aAAa,CAAC,CAAU,EAAE,GAAY,EAAE,IAAU;QAC1D,4CAA4C;QAC5C,MAAM,KAAK,GAAkB;YAC3B,KAAK,EAAE,IAAI,CAAC,CAAC;YACb,MAAM,EAAE,IAAI,CAAC,CAAC;SACf,CAAA;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAChC,uCAAuC;QACvC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;QAC7B,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;IAC5B,CAAC;CACF"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import type { Palette, Surface } from "../../render/surface.js";
|
|
2
|
-
import { View } from "../core/view.js";
|
|
3
|
-
import type { Rect, VAlign } from "../core/geometry.js";
|
|
4
|
-
export declare class HStack extends View {
|
|
5
|
-
readonly children: View[];
|
|
6
|
-
readonly spacing: number;
|
|
7
|
-
readonly align: VAlign;
|
|
8
|
-
constructor(children: View[], spacing?: number, align?: VAlign);
|
|
9
|
-
protected measureContent(maxW: number, maxH: number): import("../../layout/linearStack.js").Size;
|
|
10
|
-
protected renderContent(s: Surface, pal: Palette, rect: Rect): void;
|
|
11
|
-
}
|
|
12
|
-
//# sourceMappingURL=hstack.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hstack.d.ts","sourceRoot":"","sources":["../../../src/ui/containers/hstack.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AACtC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAKvD,qBAAa,MAAO,SAAQ,IAAI;IAE5B,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE;IACzB,QAAQ,CAAC,OAAO;IAChB,QAAQ,CAAC,KAAK,EAAE,MAAM;gBAFb,QAAQ,EAAE,IAAI,EAAE,EAChB,OAAO,SAAI,EACX,KAAK,GAAE,MAAiB;IAKnC,SAAS,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAQnD,SAAS,CAAC,aAAa,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI;CAQ7D"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { View } from "../core/view.js";
|
|
2
|
-
import { measureLinear, layoutLinear } from "../../layout/linearStack.js";
|
|
3
|
-
import { Spacer } from "../primitives/spacer.js";
|
|
4
|
-
import { flexBaseForAxis } from "./shared.js";
|
|
5
|
-
export class HStack extends View {
|
|
6
|
-
children;
|
|
7
|
-
spacing;
|
|
8
|
-
align;
|
|
9
|
-
constructor(children, spacing = 1, align = "center") {
|
|
10
|
-
super();
|
|
11
|
-
this.children = children;
|
|
12
|
-
this.spacing = spacing;
|
|
13
|
-
this.align = align;
|
|
14
|
-
}
|
|
15
|
-
measureContent(maxW, maxH) {
|
|
16
|
-
const sizes = this.children.map((c) => c.measure(maxW, maxH));
|
|
17
|
-
const flexBase = this.children.map((c, i) => c instanceof Spacer ? c.minLength | 0 : flexBaseForAxis(c, "horizontal", sizes[i]));
|
|
18
|
-
return measureLinear("horizontal", maxW, maxH, this.spacing, sizes, flexBase);
|
|
19
|
-
}
|
|
20
|
-
renderContent(s, pal, rect) {
|
|
21
|
-
const sizes = this.children.map((c) => c.measure(rect.w, rect.h));
|
|
22
|
-
const flexBase = this.children.map((c, i) => c instanceof Spacer ? c.minLength | 0 : flexBaseForAxis(c, "horizontal", sizes[i]));
|
|
23
|
-
const rects = layoutLinear("horizontal", rect, this.spacing, this.align, sizes, flexBase);
|
|
24
|
-
for (let i = 0; i < this.children.length; i++)
|
|
25
|
-
this.children[i].render(s, pal, rects[i]);
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
//# sourceMappingURL=hstack.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hstack.js","sourceRoot":"","sources":["../../../src/ui/containers/hstack.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAEtC,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAE7C,MAAM,OAAO,MAAO,SAAQ,IAAI;IAEnB;IACA;IACA;IAHX,YACW,QAAgB,EAChB,UAAU,CAAC,EACX,QAAgB,QAAQ;QAEjC,KAAK,EAAE,CAAA;QAJE,aAAQ,GAAR,QAAQ,CAAQ;QAChB,YAAO,GAAP,OAAO,CAAI;QACX,UAAK,GAAL,KAAK,CAAmB;IAGnC,CAAC;IAES,cAAc,CAAC,IAAY,EAAE,IAAY;QACjD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;QAC7D,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAC1C,CAAC,YAAY,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CACnF,CAAA;QACD,OAAO,aAAa,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAA;IAC/E,CAAC;IAES,aAAa,CAAC,CAAU,EAAE,GAAY,EAAE,IAAU;QAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;QACjE,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAC1C,CAAC,YAAY,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CACnF,CAAA;QACD,MAAM,KAAK,GAAG,YAAY,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAA;QACzF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE;YAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IAC1F,CAAC;CACF"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import type { Palette, Surface } from "../../render/surface.js";
|
|
2
|
-
import { View } from "../core/view.js";
|
|
3
|
-
import type { Rect, VAlign, HAlign } from "../core/geometry.js";
|
|
4
|
-
export declare class Scroll extends View {
|
|
5
|
-
readonly child: View;
|
|
6
|
-
readonly opts: {
|
|
7
|
-
axis?: "vertical" | "horizontal";
|
|
8
|
-
offset?: number;
|
|
9
|
-
align?: VAlign | HAlign;
|
|
10
|
-
};
|
|
11
|
-
/** Duck-typed brand so helpers can detect Scroll without imports/cycles */
|
|
12
|
-
readonly __isScroll = true;
|
|
13
|
-
private _fullW;
|
|
14
|
-
private _fullH;
|
|
15
|
-
constructor(child: View, opts?: {
|
|
16
|
-
axis?: "vertical" | "horizontal";
|
|
17
|
-
offset?: number;
|
|
18
|
-
align?: VAlign | HAlign;
|
|
19
|
-
});
|
|
20
|
-
/** Get the maximum valid scroll offset for this content */
|
|
21
|
-
getMaxOffset(viewportW: number, viewportH: number): number;
|
|
22
|
-
protected measureContent(maxW: number, maxH: number): {
|
|
23
|
-
w: number;
|
|
24
|
-
h: number;
|
|
25
|
-
};
|
|
26
|
-
protected renderContent(s: Surface, pal: Palette, rect: Rect): void;
|
|
27
|
-
}
|
|
28
|
-
//# sourceMappingURL=scroll.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scroll.d.ts","sourceRoot":"","sources":["../../../src/ui/containers/scroll.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AACtC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAG/D,qBAAa,MAAO,SAAQ,IAAI;IAQ5B,QAAQ,CAAC,KAAK,EAAE,IAAI;IACpB,QAAQ,CAAC,IAAI,EAAE;QACb,IAAI,CAAC,EAAE,UAAU,GAAG,YAAY,CAAA;QAChC,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;KACxB;IAZH,2EAA2E;IAC3E,SAAgB,UAAU,QAAO;IAEjC,OAAO,CAAC,MAAM,CAAI;IAClB,OAAO,CAAC,MAAM,CAAI;gBAGP,KAAK,EAAE,IAAI,EACX,IAAI,GAAE;QACb,IAAI,CAAC,EAAE,UAAU,GAAG,YAAY,CAAA;QAChC,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;KACnB;IAKR,2DAA2D;IAC3D,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM;IAW1D,SAAS,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;;;;IAgBnD,SAAS,CAAC,aAAa,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI;CAsD7D"}
|
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
import { View } from "../core/view.js";
|
|
2
|
-
// Scroll wrapper: viewport with clean SwiftUI-like semantics
|
|
3
|
-
export class Scroll extends View {
|
|
4
|
-
child;
|
|
5
|
-
opts;
|
|
6
|
-
/** Duck-typed brand so helpers can detect Scroll without imports/cycles */
|
|
7
|
-
__isScroll = true;
|
|
8
|
-
_fullW = 0;
|
|
9
|
-
_fullH = 0;
|
|
10
|
-
constructor(child, opts = {}) {
|
|
11
|
-
super();
|
|
12
|
-
this.child = child;
|
|
13
|
-
this.opts = opts;
|
|
14
|
-
}
|
|
15
|
-
/** Get the maximum valid scroll offset for this content */
|
|
16
|
-
getMaxOffset(viewportW, viewportH) {
|
|
17
|
-
const axis = this.opts.axis ?? "vertical";
|
|
18
|
-
if (axis === "vertical") {
|
|
19
|
-
const full = this.child.measure(viewportW, Number.MAX_SAFE_INTEGER);
|
|
20
|
-
return Math.max(0, full.h - viewportH);
|
|
21
|
-
}
|
|
22
|
-
else {
|
|
23
|
-
const full = this.child.measure(Number.MAX_SAFE_INTEGER, viewportH);
|
|
24
|
-
return Math.max(0, full.w - viewportW);
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
measureContent(maxW, maxH) {
|
|
28
|
-
const axis = this.opts.axis ?? "vertical";
|
|
29
|
-
if (axis === "vertical") {
|
|
30
|
-
const full = this.child.measure(maxW, Number.MAX_SAFE_INTEGER);
|
|
31
|
-
this._fullW = full.w;
|
|
32
|
-
this._fullH = full.h;
|
|
33
|
-
// Greedy: take all available space (viewport semantics)
|
|
34
|
-
return { w: Math.min(maxW, full.w), h: maxH };
|
|
35
|
-
}
|
|
36
|
-
else {
|
|
37
|
-
const full = this.child.measure(Number.MAX_SAFE_INTEGER, maxH);
|
|
38
|
-
this._fullW = full.w;
|
|
39
|
-
this._fullH = full.h;
|
|
40
|
-
return { w: maxW, h: Math.min(maxH, full.h) };
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
renderContent(s, pal, rect) {
|
|
44
|
-
const axis = this.opts.axis ?? "vertical";
|
|
45
|
-
const align = this.opts.align ?? "top";
|
|
46
|
-
const rawOffset = this.opts.offset ?? 0;
|
|
47
|
-
// Ensure we have measured the child content
|
|
48
|
-
if (this._fullH === 0 && this._fullW === 0) {
|
|
49
|
-
this.measureContent(rect.w, rect.h);
|
|
50
|
-
// measureContent sets _fullH and _fullW as side effects
|
|
51
|
-
}
|
|
52
|
-
if (axis === "vertical") {
|
|
53
|
-
const overflow = Math.max(0, this._fullH - rect.h);
|
|
54
|
-
// Clamp offset to valid range [0, overflow]
|
|
55
|
-
const offset = Math.max(0, Math.min(overflow, rawOffset));
|
|
56
|
-
let start;
|
|
57
|
-
if (align === "bottom") {
|
|
58
|
-
// Bottom-pinned: offset 0 shows last lines, positive offset scrolls up from bottom
|
|
59
|
-
if (overflow === 0) {
|
|
60
|
-
// Content fits: bottom-align by pushing content down
|
|
61
|
-
start = -(rect.h - this._fullH);
|
|
62
|
-
}
|
|
63
|
-
else {
|
|
64
|
-
// Content overflows: start from bottom minus offset
|
|
65
|
-
start = overflow - offset;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
else {
|
|
69
|
-
// Top-aligned: traditional scrolling
|
|
70
|
-
start = offset;
|
|
71
|
-
}
|
|
72
|
-
const childRect = { x: rect.x, y: rect.y - start, w: rect.w, h: this._fullH };
|
|
73
|
-
s.withClip(rect.x, rect.y, rect.w, rect.h, () => this.child.render(s, pal, childRect));
|
|
74
|
-
}
|
|
75
|
-
else {
|
|
76
|
-
const overflow = Math.max(0, this._fullW - rect.w);
|
|
77
|
-
// Clamp offset to valid range [0, overflow]
|
|
78
|
-
const offset = Math.max(0, Math.min(overflow, rawOffset));
|
|
79
|
-
let start;
|
|
80
|
-
if (align === "trailing") {
|
|
81
|
-
// Right-pinned: similar logic for horizontal
|
|
82
|
-
if (overflow === 0) {
|
|
83
|
-
start = -(rect.w - this._fullW);
|
|
84
|
-
}
|
|
85
|
-
else {
|
|
86
|
-
start = overflow - offset;
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
else {
|
|
90
|
-
start = offset;
|
|
91
|
-
}
|
|
92
|
-
const childRect = { x: rect.x - start, y: rect.y, w: this._fullW, h: rect.h };
|
|
93
|
-
s.withClip(rect.x, rect.y, rect.w, rect.h, () => this.child.render(s, pal, childRect));
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
//# sourceMappingURL=scroll.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scroll.js","sourceRoot":"","sources":["../../../src/ui/containers/scroll.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import type { View } from "../core/view.js";
|
|
2
|
-
export declare function isFillForAxis(node: View, axis: "horizontal" | "vertical"): boolean;
|
|
3
|
-
export declare function mainSize(axis: "horizontal" | "vertical", size: {
|
|
4
|
-
w: number;
|
|
5
|
-
h: number;
|
|
6
|
-
}): number;
|
|
7
|
-
/** Return the flex base size for a node on an axis, or null if fixed. */
|
|
8
|
-
export declare function flexBaseForAxis(node: View, axis: "horizontal" | "vertical", measured: {
|
|
9
|
-
w: number;
|
|
10
|
-
h: number;
|
|
11
|
-
}): number | null;
|
|
12
|
-
//# sourceMappingURL=shared.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/ui/containers/shared.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAG3C,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,GAAG,UAAU,GAAG,OAAO,CAElF;AAGD,wBAAgB,QAAQ,CAAC,IAAI,EAAE,YAAY,GAAG,UAAU,EAAE,IAAI,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAEhG;AAED,yEAAyE;AACzE,wBAAgB,eAAe,CAC7B,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,YAAY,GAAG,UAAU,EAC/B,QAAQ,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,GACjC,MAAM,GAAG,IAAI,CAQf"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
// Check if a node is a Fill wrapper for a given axis
|
|
2
|
-
export function isFillForAxis(node, axis) {
|
|
3
|
-
return node.constructor.name === "Fill" && node.axis === axis;
|
|
4
|
-
}
|
|
5
|
-
// Get the main-axis size from a measured size
|
|
6
|
-
export function mainSize(axis, size) {
|
|
7
|
-
return axis === "horizontal" ? size.w : size.h;
|
|
8
|
-
}
|
|
9
|
-
/** Return the flex base size for a node on an axis, or null if fixed. */
|
|
10
|
-
export function flexBaseForAxis(node, axis, measured) {
|
|
11
|
-
// Scroll should be flexible but with a *zero* base so siblings get their fixed space first.
|
|
12
|
-
if (node.__isScroll)
|
|
13
|
-
return 0;
|
|
14
|
-
// Fill is flexible with intrinsic base equal to its measured main size.
|
|
15
|
-
if (isFillForAxis(node, axis))
|
|
16
|
-
return mainSize(axis, measured);
|
|
17
|
-
return null;
|
|
18
|
-
}
|
|
19
|
-
//# sourceMappingURL=shared.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/ui/containers/shared.ts"],"names":[],"mappings":"AAGA,qDAAqD;AACrD,MAAM,UAAU,aAAa,CAAC,IAAU,EAAE,IAA+B;IACvE,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,MAAM,IAAK,IAAY,CAAC,IAAI,KAAK,IAAI,CAAA;AACxE,CAAC;AAED,8CAA8C;AAC9C,MAAM,UAAU,QAAQ,CAAC,IAA+B,EAAE,IAA8B;IACtF,OAAO,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;AAChD,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,eAAe,CAC7B,IAAU,EACV,IAA+B,EAC/B,QAAkC;IAElC,4FAA4F;IAC5F,IAAK,IAAY,CAAC,UAAU;QAAE,OAAO,CAAC,CAAA;IAEtC,wEAAwE;IACxE,IAAI,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC;QAAE,OAAO,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;IAE9D,OAAO,IAAI,CAAA;AACb,CAAC"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import type { Palette, Surface } from "../../render/surface.js";
|
|
2
|
-
import { View } from "../core/view.js";
|
|
3
|
-
import type { Rect, HAlign } from "../core/geometry.js";
|
|
4
|
-
export declare class VStack extends View {
|
|
5
|
-
readonly children: View[];
|
|
6
|
-
readonly spacing: number;
|
|
7
|
-
readonly align: HAlign;
|
|
8
|
-
constructor(children: View[], spacing?: number, align?: HAlign);
|
|
9
|
-
protected measureContent(maxW: number, maxH: number): import("../../layout/linearStack.js").Size;
|
|
10
|
-
protected renderContent(s: Surface, pal: Palette, rect: Rect): void;
|
|
11
|
-
}
|
|
12
|
-
//# sourceMappingURL=vstack.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"vstack.d.ts","sourceRoot":"","sources":["../../../src/ui/containers/vstack.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AACtC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAKvD,qBAAa,MAAO,SAAQ,IAAI;IAE5B,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE;IACzB,QAAQ,CAAC,OAAO;IAChB,QAAQ,CAAC,KAAK,EAAE,MAAM;gBAFb,QAAQ,EAAE,IAAI,EAAE,EAChB,OAAO,SAAI,EACX,KAAK,GAAE,MAAkB;IAKpC,SAAS,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAQnD,SAAS,CAAC,aAAa,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI;CAS7D"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { View } from "../core/view.js";
|
|
2
|
-
import { measureLinear, layoutLinear } from "../../layout/linearStack.js";
|
|
3
|
-
import { Spacer } from "../primitives/spacer.js";
|
|
4
|
-
import { flexBaseForAxis } from "./shared.js";
|
|
5
|
-
export class VStack extends View {
|
|
6
|
-
children;
|
|
7
|
-
spacing;
|
|
8
|
-
align;
|
|
9
|
-
constructor(children, spacing = 0, align = "leading") {
|
|
10
|
-
super();
|
|
11
|
-
this.children = children;
|
|
12
|
-
this.spacing = spacing;
|
|
13
|
-
this.align = align;
|
|
14
|
-
}
|
|
15
|
-
measureContent(maxW, maxH) {
|
|
16
|
-
const sizes = this.children.map((c) => c.measure(maxW, maxH));
|
|
17
|
-
const flexBase = this.children.map((c, i) => c instanceof Spacer ? c.minLength | 0 : flexBaseForAxis(c, "vertical", sizes[i]));
|
|
18
|
-
return measureLinear("vertical", maxW, maxH, this.spacing, sizes, flexBase);
|
|
19
|
-
}
|
|
20
|
-
renderContent(s, pal, rect) {
|
|
21
|
-
const sizes = this.children.map((c) => c.measure(rect.w, rect.h));
|
|
22
|
-
const flexBase = this.children.map((c, i) => c instanceof Spacer ? c.minLength | 0 : flexBaseForAxis(c, "vertical", sizes[i]));
|
|
23
|
-
const rects = layoutLinear("vertical", rect, this.spacing, this.align, sizes, flexBase);
|
|
24
|
-
for (let i = 0; i < this.children.length; i++)
|
|
25
|
-
this.children[i].render(s, pal, rects[i]);
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
//# sourceMappingURL=vstack.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"vstack.js","sourceRoot":"","sources":["../../../src/ui/containers/vstack.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAEtC,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAE7C,MAAM,OAAO,MAAO,SAAQ,IAAI;IAEnB;IACA;IACA;IAHX,YACW,QAAgB,EAChB,UAAU,CAAC,EACX,QAAgB,SAAS;QAElC,KAAK,EAAE,CAAA;QAJE,aAAQ,GAAR,QAAQ,CAAQ;QAChB,YAAO,GAAP,OAAO,CAAI;QACX,UAAK,GAAL,KAAK,CAAoB;IAGpC,CAAC;IAES,cAAc,CAAC,IAAY,EAAE,IAAY;QACjD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;QAC7D,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAC1C,CAAC,YAAY,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CACjF,CAAA;QACD,OAAO,aAAa,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAA;IAC7E,CAAC;IAES,aAAa,CAAC,CAAU,EAAE,GAAY,EAAE,IAAU;QAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;QACjE,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAC1C,CAAC,YAAY,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CACjF,CAAA;QACD,MAAM,KAAK,GAAG,YAAY,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAA;QAEvF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE;YAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IAC1F,CAAC;CACF"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import type { Palette, Surface } from "../../render/surface.js";
|
|
2
|
-
import { View } from "../core/view.js";
|
|
3
|
-
import type { Rect, Align2D } from "../core/geometry.js";
|
|
4
|
-
export declare class ZStack extends View {
|
|
5
|
-
readonly children: View[];
|
|
6
|
-
readonly alignment: Align2D;
|
|
7
|
-
constructor(children: View[], alignment?: Align2D);
|
|
8
|
-
protected measureContent(maxW: number, maxH: number): {
|
|
9
|
-
w: number;
|
|
10
|
-
h: number;
|
|
11
|
-
};
|
|
12
|
-
protected renderContent(s: Surface, pal: Palette, rect: Rect): void;
|
|
13
|
-
}
|
|
14
|
-
//# sourceMappingURL=zstack.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"zstack.d.ts","sourceRoot":"","sources":["../../../src/ui/containers/zstack.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AACtC,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAGxD,qBAAa,MAAO,SAAQ,IAAI;IAE5B,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE;IACzB,QAAQ,CAAC,SAAS,EAAE,OAAO;gBADlB,QAAQ,EAAE,IAAI,EAAE,EAChB,SAAS,GAAE,OAAsC;IAK5D,SAAS,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;;;;IAWnD,SAAS,CAAC,aAAa,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI;CAY7D"}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { View } from "../core/view.js";
|
|
2
|
-
// ZStack (overlay)
|
|
3
|
-
export class ZStack extends View {
|
|
4
|
-
children;
|
|
5
|
-
alignment;
|
|
6
|
-
constructor(children, alignment = { h: "center", v: "center" }) {
|
|
7
|
-
super();
|
|
8
|
-
this.children = children;
|
|
9
|
-
this.alignment = alignment;
|
|
10
|
-
}
|
|
11
|
-
measureContent(maxW, maxH) {
|
|
12
|
-
let w = 0, h = 0;
|
|
13
|
-
for (const c of this.children) {
|
|
14
|
-
const m = c.measure(maxW, maxH);
|
|
15
|
-
w = Math.max(w, m.w);
|
|
16
|
-
h = Math.max(h, m.h);
|
|
17
|
-
}
|
|
18
|
-
return { w: Math.min(maxW, w), h: Math.min(maxH, h) };
|
|
19
|
-
}
|
|
20
|
-
renderContent(s, pal, rect) {
|
|
21
|
-
for (const c of this.children) {
|
|
22
|
-
const m = c.measure(rect.w, rect.h);
|
|
23
|
-
let x = rect.x, y = rect.y;
|
|
24
|
-
if (this.alignment.h === "center")
|
|
25
|
-
x += Math.floor((rect.w - m.w) / 2);
|
|
26
|
-
else if (this.alignment.h === "trailing")
|
|
27
|
-
x += Math.max(0, rect.w - m.w);
|
|
28
|
-
if (this.alignment.v === "center")
|
|
29
|
-
y += Math.floor((rect.h - m.h) / 2);
|
|
30
|
-
else if (this.alignment.v === "bottom")
|
|
31
|
-
y += Math.max(0, rect.h - m.h);
|
|
32
|
-
c.render(s, pal, { x, y, w: Math.min(rect.w, m.w), h: Math.min(rect.h, m.h) });
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
//# sourceMappingURL=zstack.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"zstack.js","sourceRoot":"","sources":["../../../src/ui/containers/zstack.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAGtC,mBAAmB;AACnB,MAAM,OAAO,MAAO,SAAQ,IAAI;IAEnB;IACA;IAFX,YACW,QAAgB,EAChB,YAAqB,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE;QAE1D,KAAK,EAAE,CAAA;QAHE,aAAQ,GAAR,QAAQ,CAAQ;QAChB,cAAS,GAAT,SAAS,CAAwC;IAG5D,CAAC;IAES,cAAc,CAAC,IAAY,EAAE,IAAY;QACjD,IAAI,CAAC,GAAG,CAAC,EACP,CAAC,GAAG,CAAC,CAAA;QACP,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC9B,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YAC/B,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;YACpB,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;QACtB,CAAC;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAA;IACvD,CAAC;IAES,aAAa,CAAC,CAAU,EAAE,GAAY,EAAE,IAAU;QAC1D,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC9B,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;YACnC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,EACZ,CAAC,GAAG,IAAI,CAAC,CAAC,CAAA;YACZ,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,QAAQ;gBAAE,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;iBACjE,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,UAAU;gBAAE,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;YACxE,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,QAAQ;gBAAE,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;iBACjE,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,QAAQ;gBAAE,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;YACtE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QAChF,CAAC;IACH,CAAC;CACF"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import type { Rect } from "./geometry.js";
|
|
2
|
-
export type ViewId = string;
|
|
3
|
-
export type { Rect };
|
|
4
|
-
export type InputGeom = {
|
|
5
|
-
firstW: number;
|
|
6
|
-
wrapW: number;
|
|
7
|
-
xFirst: number;
|
|
8
|
-
xOther: number;
|
|
9
|
-
};
|
|
10
|
-
declare class GeometryStoreImpl {
|
|
11
|
-
private frameNo;
|
|
12
|
-
private rects;
|
|
13
|
-
private inputs;
|
|
14
|
-
beginFrame(frameNo?: number): void;
|
|
15
|
-
endFrame(): void;
|
|
16
|
-
setRect(id: ViewId, rect: Rect): void;
|
|
17
|
-
setInputGeom(id: ViewId, g: InputGeom): void;
|
|
18
|
-
getRect(id: ViewId): Rect | undefined;
|
|
19
|
-
getInputGeom(id: ViewId): InputGeom | undefined;
|
|
20
|
-
}
|
|
21
|
-
export declare const geometryStore: GeometryStoreImpl;
|
|
22
|
-
//# sourceMappingURL=geometry-store.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"geometry-store.d.ts","sourceRoot":"","sources":["../../../src/ui/core/geometry-store.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AAEzC,MAAM,MAAM,MAAM,GAAG,MAAM,CAAA;AAC3B,YAAY,EAAE,IAAI,EAAE,CAAA;AACpB,MAAM,MAAM,SAAS,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAA;AAEzF,cAAM,iBAAiB;IACrB,OAAO,CAAC,OAAO,CAAI;IACnB,OAAO,CAAC,KAAK,CAA0B;IACvC,OAAO,CAAC,MAAM,CAA+B;IAE7C,UAAU,CAAC,OAAO,CAAC,EAAE,MAAM;IAO3B,QAAQ;IAIR,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI;IAI9B,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS;IAIrC,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS;IAIrC,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;CAGhD;AAED,eAAO,MAAM,aAAa,mBAA0B,CAAA"}
|