gesso-framework 0.1.0 → 0.2.1
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/CHANGELOG.md +45 -0
- package/README.md +1 -1
- package/dist/{index-BkYPVXSJ.d.ts → index-C8yYHFKz.d.ts} +191 -8
- package/dist/index.d.ts +2 -2
- package/dist/index.js +479 -17
- package/dist/index.js.map +1 -1
- package/dist/worker/index.d.ts +1 -1
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,50 @@
|
|
|
1
1
|
# gesso-framework
|
|
2
2
|
|
|
3
|
+
## 0.2.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- gesso-core@0.2.1
|
|
8
|
+
|
|
9
|
+
## 0.2.0
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- be07839: **Sound a picture can follow, and a screen it can fill.** Two things
|
|
14
|
+
the render thread cannot do for itself.
|
|
15
|
+
|
|
16
|
+
`audioClock` reads where `AudioService` has got to and hands it to
|
|
17
|
+
`videoSource` as a `VideoClock`, so a clip's picture follows the sound
|
|
18
|
+
rather than a tween of its own. `AudioContext` does not exist on a
|
|
19
|
+
worker, so the sound is the shell's to play and this is the adapter
|
|
20
|
+
between them. The source is checked on every read, because one
|
|
21
|
+
`AudioService` serves the whole application and a screen that starts a
|
|
22
|
+
podcast while a clip is mounted would otherwise drive the picture from
|
|
23
|
+
the podcast's position.
|
|
24
|
+
|
|
25
|
+
`ShellService.requestFullscreen` asks whichever shell is in front to
|
|
26
|
+
fill the screen with the canvas, and `ShellService.fullscreen` reports
|
|
27
|
+
what actually happened, because a browser only grants fullscreen during
|
|
28
|
+
a gesture and can refuse, and the person can leave with Escape, which
|
|
29
|
+
no request hears about.
|
|
30
|
+
|
|
31
|
+
The part that took measuring is the size. A `ResizeObserver` watches
|
|
32
|
+
the host, and the host does not change when the canvas is lifted out of
|
|
33
|
+
it; it reflows _because_ the canvas left. The runtime kept laying out
|
|
34
|
+
at the old size and the browser stretched the result: a canvas whose
|
|
35
|
+
CSS box was 800x600 still had a 768x448 backing store, and every
|
|
36
|
+
coordinate was wrong by the ratio between the two, so a press near the
|
|
37
|
+
bottom of a fullscreen clip landed near the middle of the layout. The
|
|
38
|
+
size now comes from the canvas while it is fullscreen and from the host
|
|
39
|
+
when it is not, read a frame late, because `fullscreenchange` fires
|
|
40
|
+
before the new geometry is in the layout.
|
|
41
|
+
|
|
42
|
+
- Updated dependencies [be07839]
|
|
43
|
+
- Updated dependencies [be07839]
|
|
44
|
+
- Updated dependencies [be07839]
|
|
45
|
+
- Updated dependencies [be07839]
|
|
46
|
+
- gesso-core@0.2.0
|
|
47
|
+
|
|
3
48
|
## 0.1.0
|
|
4
49
|
|
|
5
50
|
First public release.
|
package/README.md
CHANGED
|
@@ -81,6 +81,6 @@ Single-thread mode exists for tests, headless rendering and environments without
|
|
|
81
81
|
|
|
82
82
|
## Documentation
|
|
83
83
|
|
|
84
|
-
[Your first component](https://
|
|
84
|
+
[Your first component](https://gesso-docs.vercel.app/guide/counter) | [Components run once](https://gesso-docs.vercel.app/guide/components-run-once) | [Cells and bindings](https://gesso-docs.vercel.app/guide/cells-and-bindings) | [Channels and the barrier](https://gesso-docs.vercel.app/structure/channels-and-the-barrier) | [Routing](https://gesso-docs.vercel.app/structure/routing)
|
|
85
85
|
|
|
86
86
|
MIT (c) Kevin Baker
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { C as CommandMap, I as ReadableCell, N as InputCell, P as OutputCell, S as Command, U as Component, V as InternalState, a as ComponentType, f as ChannelPort, h as Patch, i as ComponentProps, l as ChannelReplica, n as ComponentArgs, r as ComponentContext, s as Inputs, x as ChannelToken } from "./FunctionComponent-DAyf5HQ6.js";
|
|
2
2
|
import { Observable, Subscription } from "rxjs";
|
|
3
|
-
import { AnimatedCell, AnimationDriver, CanvasHost, ComponentLikeElement, ComponentResolver, EditingState, EditingState as EditingState$1, IconRasterizer, ImageResolver, LayoutExplanation, LayoutInspector, MARK_PREFIX, MotionStateInput, MotionTiming, RendererBackend, TextMeasurer, UI_ROLES, UI_SEMANTIC_STATES, UiAnimation, UiChild, UiDurationToken, UiEasing, UiEasingToken, UiEditingController, UiElement, UiFindController, UiFocusManager, UiFrameClockFactory, UiInputDispatcher, UiInsets, UiKeyModifiers, UiKeyboardController, UiLength, UiModifier, UiMotion, UiNode, UiPlatformAdapter, UiPointerController, UiPointerDevice, UiReducedMotionPolicy, UiRole, UiScrollability, UiSelectionController, UiSemanticState, UiSemanticsAction, UiSemanticsMap, UiSemanticsMap as UiSemanticsMap$1, UiSemanticsPatch, UiSemanticsRecord, UiSemanticsRecord as UiSemanticsRecord$1, UiSemanticsUpdate, UiShortcutRegistry, UiSpringSpec, UiSpringToken, UiThemeExtension, UiTouchScroller, UiWheelController, VideoResolver, markInstant, markNow, measureSpan, performanceMarksEnabled, setPerformanceMarks as setPerformanceMarks$1 } from "gesso-core";
|
|
3
|
+
import { AnimatedCell, AnimationDriver, CanvasHost, ComponentLikeElement, ComponentResolver, EditingState, EditingState as EditingState$1, IconRasterizer, ImageResolver, LayoutExplanation, LayoutInspector, MARK_PREFIX, MotionStateInput, MotionTiming, RendererBackend, TextMeasurer, UI_ROLES, UI_SEMANTIC_STATES, UiAnimation, UiChild, UiDurationToken, UiEasing, UiEasingToken, UiEditingController, UiElement, UiFindController, UiFocusManager, UiFrameClockFactory, UiInputDispatcher, UiInsets, UiKeyModifiers, UiKeyboardController, UiLength, UiModifier, UiMotion, UiNode, UiPlatformAdapter, UiPointerController, UiPointerDevice, UiReducedMotionPolicy, UiRole, UiScrollability, UiSelectionController, UiSemanticState, UiSemanticsAction, UiSemanticsMap, UiSemanticsMap as UiSemanticsMap$1, UiSemanticsPatch, UiSemanticsRecord, UiSemanticsRecord as UiSemanticsRecord$1, UiSemanticsUpdate, UiShortcutRegistry, UiSpringSpec, UiSpringToken, UiThemeExtension, UiTouchScroller, UiWheelController, VideoClock, VideoResolver, markInstant, markNow, measureSpan, performanceMarksEnabled, setPerformanceMarks as setPerformanceMarks$1 } from "gesso-core";
|
|
4
4
|
//#region src/service/ServiceRegistry.d.ts
|
|
5
5
|
/**
|
|
6
6
|
* The runtime services a component may inject.
|
|
@@ -2484,6 +2484,9 @@ type ShellRequest = {
|
|
|
2484
2484
|
} | {
|
|
2485
2485
|
type: 'openUrl';
|
|
2486
2486
|
url: string;
|
|
2487
|
+
} | {
|
|
2488
|
+
type: 'fullscreen';
|
|
2489
|
+
enter: boolean;
|
|
2487
2490
|
} | {
|
|
2488
2491
|
type: 'popup';
|
|
2489
2492
|
id: number;
|
|
@@ -2538,6 +2541,7 @@ declare class ShellService {
|
|
|
2538
2541
|
private handler;
|
|
2539
2542
|
private readonly scheme;
|
|
2540
2543
|
private readonly insets;
|
|
2544
|
+
private readonly isFullscreen;
|
|
2541
2545
|
/** Popups asked for and not yet answered, by the id sent with each. */
|
|
2542
2546
|
private readonly popups;
|
|
2543
2547
|
private nextPopupId;
|
|
@@ -2616,6 +2620,28 @@ declare class ShellService {
|
|
|
2616
2620
|
copyText(text: string): void;
|
|
2617
2621
|
/** Opens a URL in the user's browser, in a new tab or window. */
|
|
2618
2622
|
openUrl(url: string): void;
|
|
2623
|
+
/**
|
|
2624
|
+
* Whether the application's surface is filling the screen.
|
|
2625
|
+
*
|
|
2626
|
+
* Read rather than assumed: the person can leave fullscreen with
|
|
2627
|
+
* Escape, which no request here hears about, and a button that
|
|
2628
|
+
* tracked its own last press would then point the wrong way. The
|
|
2629
|
+
* shell reports the real state and this follows it.
|
|
2630
|
+
*/
|
|
2631
|
+
readonly fullscreen: ReadableCell<boolean>;
|
|
2632
|
+
/**
|
|
2633
|
+
* Asks the shell to fill the screen, or to stop.
|
|
2634
|
+
*
|
|
2635
|
+
* A request rather than a call, for the reason the clipboard is one:
|
|
2636
|
+
* the Fullscreen API is the document's, and the thread this runs on
|
|
2637
|
+
* may not have a document. It can also be refused outright, because
|
|
2638
|
+
* browsers only grant it during a gesture, which is why nothing here
|
|
2639
|
+
* returns a promise pretending otherwise. Watch `fullscreen` for what
|
|
2640
|
+
* actually happened.
|
|
2641
|
+
*/
|
|
2642
|
+
requestFullscreen(enter: boolean): void;
|
|
2643
|
+
/** Called by the runtime when the shell reports the state. Not for applications. */
|
|
2644
|
+
applyFullscreen(active: boolean): void;
|
|
2619
2645
|
/**
|
|
2620
2646
|
* Opens a sized window and answers whether the browser allowed it.
|
|
2621
2647
|
*
|
|
@@ -2854,6 +2880,11 @@ type ShellToRuntimeMessage = {
|
|
|
2854
2880
|
type: 'visibility';
|
|
2855
2881
|
visible: boolean;
|
|
2856
2882
|
} |
|
|
2883
|
+
/** The surface entered or left fullscreen, however that happened. */
|
|
2884
|
+
{
|
|
2885
|
+
type: 'fullscreenChanged';
|
|
2886
|
+
active: boolean;
|
|
2887
|
+
} |
|
|
2857
2888
|
/**
|
|
2858
2889
|
* The person's motion preference (`prefers-reduced-motion`), sent
|
|
2859
2890
|
* once at start-up and again whenever it changes.
|
|
@@ -3106,6 +3137,9 @@ type RuntimeToShellMessage = {
|
|
|
3106
3137
|
{
|
|
3107
3138
|
type: 'openUrl';
|
|
3108
3139
|
url: string;
|
|
3140
|
+
} | {
|
|
3141
|
+
type: 'fullscreen';
|
|
3142
|
+
enter: boolean;
|
|
3109
3143
|
} |
|
|
3110
3144
|
/**
|
|
3111
3145
|
* Open a sized, named window and report back whether the browser
|
|
@@ -3968,6 +4002,12 @@ declare class GessoRuntime {
|
|
|
3968
4002
|
private replicas;
|
|
3969
4003
|
private phaseTimings;
|
|
3970
4004
|
private started;
|
|
4005
|
+
/**
|
|
4006
|
+
* Whether the engine holds a laid-out tree, so `resize` knows which
|
|
4007
|
+
* path it is on. Set by the first resize and by the first frame that
|
|
4008
|
+
* lays out, whichever comes first; see `resize`.
|
|
4009
|
+
*/
|
|
4010
|
+
private laidOutOnce;
|
|
3971
4011
|
constructor(options: GessoRuntimeOptions);
|
|
3972
4012
|
/**
|
|
3973
4013
|
* Aligns patch delivery from worker-owned channels to the frame.
|
|
@@ -4187,6 +4227,15 @@ declare class GessoRuntime {
|
|
|
4187
4227
|
* `AnimationDriver.setHidden` for why an entrance frozen at its
|
|
4188
4228
|
* first value is a hole in the page rather than a paused animation.
|
|
4189
4229
|
*/
|
|
4230
|
+
/**
|
|
4231
|
+
* The shell says the surface entered or left fullscreen.
|
|
4232
|
+
*
|
|
4233
|
+
* Reported rather than inferred from the request that asked for it,
|
|
4234
|
+
* because the person can leave with Escape and a browser can refuse
|
|
4235
|
+
* to enter at all; a control that tracked its own last press would
|
|
4236
|
+
* then point the wrong way.
|
|
4237
|
+
*/
|
|
4238
|
+
setFullscreen(active: boolean): void;
|
|
4190
4239
|
setVisible(visible: boolean): void;
|
|
4191
4240
|
/**
|
|
4192
4241
|
* The person has asked for less motion, or stopped asking.
|
|
@@ -4489,16 +4538,97 @@ declare class GessoRuntime {
|
|
|
4489
4538
|
* anyway.
|
|
4490
4539
|
*/
|
|
4491
4540
|
private updateSemantics;
|
|
4492
|
-
/**
|
|
4493
|
-
|
|
4541
|
+
/** Walks the whole tree and diffs it against the last one. */
|
|
4542
|
+
private rebuildSemantics;
|
|
4543
|
+
/**
|
|
4544
|
+
* The patches for a frame that changed what some nodes *mean*
|
|
4545
|
+
* without changing which nodes there are — or null when that cannot
|
|
4546
|
+
* be established cheaply, and the whole tree has to be walked.
|
|
4547
|
+
*
|
|
4548
|
+
* This is the common case and it used to cost the uncommon one. A
|
|
4549
|
+
* bound label is `text`, `text` marks semantics dirty, and the phase
|
|
4550
|
+
* answered every one of them by rebuilding the tree from the root
|
|
4551
|
+
* and diffing two maps: on the benchmark list, 2 ms on any frame a
|
|
4552
|
+
* clock ticked, next to 0.03 ms for the layout of the same change.
|
|
4553
|
+
*
|
|
4554
|
+
* So the walk is rooted at what actually changed. For each dirty
|
|
4555
|
+
* node the nearest ancestor *carrying a record* is found — a
|
|
4556
|
+
* `Button`'s label lives on the button, not on the `Text` inside it
|
|
4557
|
+
* that a parent claimed — and only that node's subtree is walked.
|
|
4558
|
+
* `buildSemanticsSubtree` explains why the owner has to be a record
|
|
4559
|
+
* holder for the indices to come out the same.
|
|
4560
|
+
*
|
|
4561
|
+
* It gives up, and says so with null, whenever the *shape* of the
|
|
4562
|
+
* tree could have moved:
|
|
4563
|
+
*
|
|
4564
|
+
* - a frame that changed the tree's children, which is a structural
|
|
4565
|
+
* change by definition;
|
|
4566
|
+
* - a dirty node with no record-holding ancestor, whose records sit
|
|
4567
|
+
* at the top level and are numbered among everything else there;
|
|
4568
|
+
* - an owner that is no longer describable, whose children would
|
|
4569
|
+
* reattach further up;
|
|
4570
|
+
* - a subtree that gained or lost a record, because `this.semantics`
|
|
4571
|
+
* is insertion-ordered and the diff promises adds in document
|
|
4572
|
+
* order — splicing one into the middle of a Map cannot preserve
|
|
4573
|
+
* that, and a mirror appending a child before its parent is a
|
|
4574
|
+
* worse bug than a slow frame.
|
|
4575
|
+
*
|
|
4576
|
+
* Each of those falls back to the full rebuild, which is correct by
|
|
4577
|
+
* construction. Nothing here decides what a record says; it only
|
|
4578
|
+
* decides how much of the tree has to be asked.
|
|
4579
|
+
*/
|
|
4580
|
+
private rescopeSemantics;
|
|
4581
|
+
/**
|
|
4582
|
+
* The nearest node at or above `node` that holds a semantics record,
|
|
4583
|
+
* or null when nothing above it does.
|
|
4584
|
+
*/
|
|
4585
|
+
private semanticsOwnerOf;
|
|
4586
|
+
/**
|
|
4587
|
+
* The ids in the current tree that belong to `node`'s subtree.
|
|
4588
|
+
*
|
|
4589
|
+
* Read off the graph rather than remembered, which is sound here
|
|
4590
|
+
* precisely because the caller has established that no node's
|
|
4591
|
+
* children changed this frame.
|
|
4592
|
+
*
|
|
4593
|
+
* A text run is not a node and has no id of its own: it borrows its
|
|
4594
|
+
* paragraph's and adds its position, numbered from zero without
|
|
4595
|
+
* gaps. So the runs of a node are found by counting up until one is
|
|
4596
|
+
* missing, rather than by scanning every key for the prefix.
|
|
4597
|
+
*/
|
|
4598
|
+
private semanticIdsUnder;
|
|
4599
|
+
/**
|
|
4600
|
+
* The mirrored nodes whose box differs from the one last sent, and
|
|
4601
|
+
* which are on screen.
|
|
4602
|
+
*
|
|
4603
|
+
* This runs on every frame that laid out, and `frameNeedsLayout`
|
|
4604
|
+
* counts a transform — so it runs on every scrolled frame, where
|
|
4605
|
+
* every box beneath the scroll container has moved. Whatever it
|
|
4606
|
+
* returns crosses to the shell and is written as four inline styles
|
|
4607
|
+
* per element, on the main thread, before the next paint. That is
|
|
4608
|
+
* the one per-frame cost this architecture puts back on the thread
|
|
4609
|
+
* it exists to keep free, and it was proportional to the whole
|
|
4610
|
+
* mounted tree.
|
|
4611
|
+
*
|
|
4612
|
+
* So it is bounded by the viewport instead. A node scrolled out of
|
|
4613
|
+
* sight keeps the last box the mirror was told about; there is
|
|
4614
|
+
* nothing on screen for it to be wrong about, and the sweep picks it
|
|
4615
|
+
* up again on the frame it comes back, because the box it is
|
|
4616
|
+
* compared against is still the stale one. The focused node is
|
|
4617
|
+
* always included whether or not it is on screen: the focus ring is
|
|
4618
|
+
* drawn from its rectangle, and focus moving to something off screen
|
|
4619
|
+
* is answered by `scrollIntoView`, whose own frame reports it.
|
|
4494
4620
|
*
|
|
4495
|
-
* Bounded by the semantics tree, which is bounded by the *mounted*
|
|
4496
|
-
* nodes — so a 100k-row list costs the fifteen rows it has mounted,
|
|
4497
|
-
* the same bound the semantics tree walk has.
|
|
4498
4621
|
* Ids that have left the tree are dropped here rather than tracked,
|
|
4499
4622
|
* since a removal patch has already told the mirror about them.
|
|
4500
4623
|
*/
|
|
4501
4624
|
private collectSemanticsBoxes;
|
|
4625
|
+
/**
|
|
4626
|
+
* Whether a box in viewport coordinates overlaps the canvas at all.
|
|
4627
|
+
*
|
|
4628
|
+
* Generous by a margin, so that something a scroll is about to bring
|
|
4629
|
+
* in has its rectangle before it arrives rather than one frame after.
|
|
4630
|
+
*/
|
|
4631
|
+
private onScreen;
|
|
4502
4632
|
/** Scrolls every scroll container above `node` so a node-local box is visible. */
|
|
4503
4633
|
private revealBox;
|
|
4504
4634
|
/**
|
|
@@ -5060,6 +5190,8 @@ declare class WorkerApp {
|
|
|
5060
5190
|
* what the cache costs.
|
|
5061
5191
|
*/
|
|
5062
5192
|
private canvasOrigin;
|
|
5193
|
+
/** Whether the canvas is filling the screen; see the resize observer. */
|
|
5194
|
+
private fullscreen;
|
|
5063
5195
|
/**
|
|
5064
5196
|
* The hover move being held for this frame, and the frame holding
|
|
5065
5197
|
* it. See `flushPendingMove`.
|
|
@@ -5428,6 +5560,8 @@ declare class GessoApp {
|
|
|
5428
5560
|
private mirror;
|
|
5429
5561
|
private history;
|
|
5430
5562
|
private detachVisibility;
|
|
5563
|
+
private detachFullscreen;
|
|
5564
|
+
private fullscreen;
|
|
5431
5565
|
private detachReducedMotion;
|
|
5432
5566
|
/** Stops watching `prefers-color-scheme`; null while overridden. */
|
|
5433
5567
|
private detachColorScheme;
|
|
@@ -6309,6 +6443,55 @@ declare class FrameService {
|
|
|
6309
6443
|
publish(metrics: FrameMetrics): void;
|
|
6310
6444
|
}
|
|
6311
6445
|
//#endregion
|
|
6446
|
+
//#region src/app/videoClock.d.ts
|
|
6447
|
+
/**
|
|
6448
|
+
* A clip's position, taken from the sound playing beside it.
|
|
6449
|
+
*
|
|
6450
|
+
* **This is the clock inversion, and it is worth being explicit about
|
|
6451
|
+
* why it exists.** Everywhere else in this framework the animation
|
|
6452
|
+
* driver owns time: a video is a pure function of a position and the
|
|
6453
|
+
* position comes from a tween, which is what lets a clip be scheduled,
|
|
6454
|
+
* paced and stopped by exactly the machinery every other animated
|
|
6455
|
+
* thing uses. That arrangement is correct right up until the clip has
|
|
6456
|
+
* sound, and then it is exactly backwards.
|
|
6457
|
+
*
|
|
6458
|
+
* The asymmetry is in what the two media can survive. Video drops
|
|
6459
|
+
* frames: an application that stalled for 50ms shows the picture it
|
|
6460
|
+
* should be showing now and throws away the ones it missed, and nobody
|
|
6461
|
+
* can tell. Audio cannot do either — a gap is audible, and resampling
|
|
6462
|
+
* to catch up changes the pitch — so the sound plays at its own rate
|
|
6463
|
+
* whatever else is happening, and anything that must agree with it has
|
|
6464
|
+
* to follow. Which means the picture follows the sound, and a tween
|
|
6465
|
+
* driving the picture independently would drift against it within
|
|
6466
|
+
* seconds. There is no arrangement in which both lead.
|
|
6467
|
+
*
|
|
6468
|
+
* **And the sound cannot be played here.** `AudioContext` does not
|
|
6469
|
+
* exist on a worker, which is where this framework decodes and draws.
|
|
6470
|
+
* So the sound is the shell's to play — `AudioService` already does
|
|
6471
|
+
* exactly that, reporting where it has got to about once a second and
|
|
6472
|
+
* extrapolating in between on the animation driver — and what crosses
|
|
6473
|
+
* the thread boundary is one number. That is the whole of this file:
|
|
6474
|
+
* `AudioService` is already the right shape, and this is the adapter
|
|
6475
|
+
* that lets `videoSource` read it.
|
|
6476
|
+
*
|
|
6477
|
+
* ```ts
|
|
6478
|
+
* // The same file, played twice: the shell for its sound, the worker
|
|
6479
|
+
* // for its pictures. A `<video>` element does this internally and
|
|
6480
|
+
* // calls it one thing.
|
|
6481
|
+
* audio.load('clip.mp4', { autoplay: false });
|
|
6482
|
+
* Video({ src: 'clip.mp4', clock: audioClock(audio, 'clip.mp4') });
|
|
6483
|
+
* ```
|
|
6484
|
+
*
|
|
6485
|
+
* `source` is checked on every read, and that check is not
|
|
6486
|
+
* decoration: `AudioService` is one playback for the whole
|
|
6487
|
+
* application, so a screen that starts a podcast while this clip is
|
|
6488
|
+
* still mounted would otherwise drive the picture from the podcast's
|
|
6489
|
+
* position. A clock whose source is no longer loaded reports that it
|
|
6490
|
+
* is not running and holds the position it last had, which shows a
|
|
6491
|
+
* still frame rather than a clip that has jumped somewhere absurd.
|
|
6492
|
+
*/
|
|
6493
|
+
declare function audioClock(audio: AudioService, source: string): VideoClock;
|
|
6494
|
+
//#endregion
|
|
6312
6495
|
//#region src/app/AudioSink.d.ts
|
|
6313
6496
|
/**
|
|
6314
6497
|
* The part of `HTMLAudioElement` the sink drives. Narrow so a spec can
|
|
@@ -7268,5 +7451,5 @@ declare class RenderWorkerApp {
|
|
|
7268
7451
|
private initialize;
|
|
7269
7452
|
}
|
|
7270
7453
|
//#endregion
|
|
7271
|
-
export {
|
|
7272
|
-
//# sourceMappingURL=index-
|
|
7454
|
+
export { classifyStorageError as $, observeColorScheme as $n, each as $r, ShellService as $t, AudioElementLike as A, ShellHistoryMode as An, findUnplainPath as Ar, FontFaceLike as At, ShellStorage as B, RouteContext as Bn, Output as Br, CommandEntry as Bt, FocusService as C, describeStream as Cn, WorkerHandle as Cr, GessoRuntime as Ct, Presence as D, formatStream as Dn, portHandle as Dr, UI_FRAME_PHASES as Dt, observeReducedMotion as E, formatNodeReport as En, isPortHandshake as Er, RuntimeInput as Et, audioClock as F, RouterHistorySink as Fn, provide as Fr, MediaOptions as Ft, OpfsFileHandle as G, route as Gn, themeTokenCell as Gr, PatchEntry as Gt, IndexedDbStorage as H, RouteGuard as Hn, ControlledValue as Hr, DevtoolsEvent as Ht, FrameService as I, RouterRoutes as In, Channel as Ir, MediaService as It, OpfsWritable as J, buildPath as Jn, ShowProps as Jr, treeText as Jt, OpfsStorage as K, to as Kn, bind as Kr, UiTreeNode as Kt, PersistedOptions as L, RouterService as Ln, Define as Lr, ActionCause as Lt, AudioSinkOptions as M, createShellHistory as Mn, ChannelRegistry as Mr, FontFamilyStatus as Mt, AudioSinkOutput as N, RouteAnswer as Nn, ChannelSource as Nr, FontHost as Nt, PresenceProps as O, printPropValue as On, servePorts as Or, UiFramePhase as Ot, MediaSessionLike as P, RouteMatch as Pn, ProvidedChannel as Pr, FontService as Pt, StorageRead as Q, ColorSchemePreference as Qn, EachProps as Qr, ShellRequest as Qt, PersistedState as R, RouteState as Rn, Inject as Rr, ActionEntry as Rt, writeClipboard as S, UiStreamReport as Sn, PortHost as Sr, FramePhaseTimings as St, observeMediaQuery as T, formatNodePath as Tn, isPortErrorMessage as Tr, RendererChoice as Tt, IndexedDbStorageOptions as U, RouteOptions as Un, controlled as Ur, DevtoolsRequest as Ut, ShellStorageOptions as V, RouteDefinition as Vn, ControlledOptions as Vr, ConsoleEntry as Vt, OpfsDirectory as W, RouteTarget as Wn, ThemeTokenCell as Wr, FrameEntry as Wt, StorageAdapter as X, parseUrl as Xn, Each as Xr, RuntimeToShellMessage as Xt, MemoryStorage as Y, formatUrl as Yn, show as Yr, RuntimeErrorSource as Yt, StorageOutcome as Z, ColorScheme as Zn, EachKey as Zr, ShellToRuntimeMessage as Zt, EditingMirrorTarget as _, Equality as _i, UiNodeReport as _n, ChannelRegistryHandle as _r, AppLogicEndpoint as _t, UiRole as a, Resource as ai, AudioSample as an, OverlayService as ar, UndoableOptions as at, EditingProxy as b, UiPropReport as bn, MessageEndpoint as br, GessoAppBuilder as bt, UiSemanticsPatch as c, ResourceStatus as ci, AudioStatus as cn, FrameworkChild as cr, UndoStackOptions as ct, markNow as d, select as di, SpringOptions as dn, pick as dr, performShellStorage as dt, debounced as ei, ShellStorageOp as en, ComponentHostResolver as er, storageErrorMessage as et, measureSpan as f, ComputedCell as fi, UiDuration as fn, pickKeys as fr, shellStorageDenied as ft, renderRoot as g, DeriveOptions as gi, UiEnvironmentReport as gn, ChannelRegistration as gr, createApp as gt, RenderWorkerApp as h, computed as hi, NodePathTarget as hn, serveChannels as hr, CreateAppOptions as ht, UI_SEMANTIC_STATES as i, mutate as ii, AudioRequest as in, OverlayPlacement as ir, registerUndoShortcuts as it, AudioSink as j, ShellHistoryOptions as jn, requirePlainData as jr, FontFamilyDeclaration as jt, RouterOutlet as k, ShellHistory as kn, workerHandle as kr, FontFaceDeclaration as kt, UiSemanticsRecord$1 as l, resource as li, AnimateOptions as ln, isComponentElement as lr, UndoTransaction as lt, setPerformanceMarks$1 as m, ReadSource as mi, BoundStream as mn, serve as mr, GessoAppOptions as mt, MARK_PREFIX as n, MutateOptions as ni, AudioAction as nn, OverlayLayer as nr, storageReadValue as nt, UiSemanticState as o, ResourceOptions as oi, AudioService as on, createComponent as or, undoable as ot, performanceMarksEnabled as p, ComputedOptions as pi, UiEasingChoice as pn, ServedChannel as pr, GessoApp as pt, OpfsStorageOptions as q, RouteParams as qn, Show as qr, UiTreeSnapshot as qt, UI_ROLES as r, Mutation as ri, AudioMetadata as rn, OverlayEntry as rr, UndoShortcutOptions as rt, UiSemanticsMap$1 as s, ResourceState as si, AudioState as sn, ComponentElement as sr, UndoStack as st, EditingState$1 as t, throttled as ti, ShellStorageResult as tn, ComponentHost as tr, storageReadFailure as tt, markInstant as u, SelectOptions as ui, AnimationService as un, structurallyEqual as ur, ShellLocalStore as ut, SemanticsMirror as v, derive as vi, UiOwnerReport as vn, createChannelRegistry as vr, WorkerApp as vt, FindService as w, formatAge as wn, isHubMessage as wr, GessoRuntimeOptions as wt, EditingProxySink as x, UiSemanticsReport as xn, PortHandshake as xr, FrameMetrics as xt, SemanticsMirrorSink as y, ServiceRegistry as yi, UiPropOrigin as yn, APPLICATION_WORKER as yr, WorkerAppOptions as yt, persisted as z, OutletProps as zn, Input as zr, ChannelErrorEntry as zt };
|
|
7455
|
+
//# sourceMappingURL=index-C8yYHFKz.d.ts.map
|
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { A as bounds, B as output, C as CommandMap, D as defineChannel, E as channel, F as OutputTarget, H as internalState, I as ReadableCell, L as input, M as EmitValue, N as InputCell, O as viewKeys, P as OutputCell, R as into, S as Command, T as ViewOf, U as Component, V as InternalState, _ as applyPatch, a as ComponentType, b as ChannelSpec, c as isClassComponent, d as ChannelHostMessage, f as ChannelPort, g as PatchPath, h as Patch, i as ComponentProps, j as EmitArgs, k as BoundsCell, l as ChannelReplica, m as isChannelHostMessage, o as FunctionComponent, p as isChannelClientMessage, r as ComponentContext, s as Inputs, t as ClassComponent, u as ChannelClientMessage, v as applyPatches, w as CommandsOf, x as ChannelToken, y as diffProjection, z as isOutputTarget } from "./FunctionComponent-DAyf5HQ6.js";
|
|
2
|
-
import { $ as
|
|
3
|
-
export { APPLICATION_WORKER, type ActionCause, type ActionEntry, type AnimateOptions, AnimationService, type AppLogicEndpoint, type AudioAction, type AudioElementLike, type AudioMetadata, type AudioRequest, type AudioSample, AudioService, AudioSink, type AudioSinkOptions, type AudioSinkOutput, type AudioState, type AudioStatus, type BoundStream, BoundsCell, Channel, type ChannelClientMessage, type ChannelErrorEntry, type ChannelHostMessage, type ChannelPort, type ChannelRegistration, ChannelRegistry, type ChannelRegistryHandle, ChannelReplica, type ChannelSource, type ChannelSpec, type ChannelToken, type ClassComponent, type ColorScheme, type ColorSchemePreference, type Command, type CommandEntry, type CommandMap, type CommandsOf, Component, type ComponentContext, type ComponentElement, ComponentHost, ComponentHostResolver, type ComponentProps, type ComponentType, ComputedCell, type ComputedOptions, type ConsoleEntry, type ControlledOptions, type ControlledValue, type CreateAppOptions, Define, type DeriveOptions, type DevtoolsEvent, type DevtoolsRequest, Each, type EachKey, type EachProps, type EditingMirrorTarget, EditingProxy, type EditingProxySink, type EditingState, type EmitArgs, type EmitValue, type Equality, FindService, FocusService, type FontFaceDeclaration, type FontFaceLike, type FontFamilyDeclaration, type FontFamilyStatus, type FontHost, FontService, type FrameEntry, type FrameMetrics, type FramePhaseTimings, FrameService, type FrameworkChild, type FunctionComponent, GessoApp, GessoAppBuilder, type GessoAppOptions, GessoRuntime, type GessoRuntimeOptions, IndexedDbStorage, type IndexedDbStorageOptions, Inject, Input, InputCell, type Inputs, InternalState, MARK_PREFIX, type MediaOptions, MediaService, type MediaSessionLike, MemoryStorage, type MessageEndpoint, type MutateOptions, type Mutation, type NodePathTarget, type OpfsDirectory, type OpfsFileHandle, OpfsStorage, type OpfsStorageOptions, type OpfsWritable, type OutletProps, Output, type OutputCell, type OutputTarget, type OverlayEntry, OverlayLayer, type OverlayPlacement, OverlayService, type Patch, type PatchEntry, type PatchPath, type PersistedOptions, PersistedState, type PortHandshake, type PortHost, Presence, type PresenceProps, ProvidedChannel, type ReadSource, type ReadableCell, RenderWorkerApp, type RendererChoice, Resource, type ResourceOptions, type ResourceState, type ResourceStatus, type RouteAnswer, type RouteContext, type RouteDefinition, type RouteGuard, type RouteMatch, type RouteOptions, type RouteParams, RouteState, type RouteTarget, type RouterHistorySink, RouterOutlet, type RouterRoutes, RouterService, type RuntimeErrorSource, type RuntimeInput, type RuntimeToShellMessage, type SelectOptions, SemanticsMirror, type SemanticsMirrorSink, type ServedChannel, ServiceRegistry, type ShellHistory, type ShellHistoryMode, type ShellHistoryOptions, type ShellLocalStore, type ShellRequest, ShellService, ShellStorage, type ShellStorageOp, type ShellStorageOptions, type ShellStorageResult, type ShellToRuntimeMessage, Show, type ShowProps, type SpringOptions, type StorageAdapter, type StorageOutcome, type StorageRead, ThemeTokenCell, UI_FRAME_PHASES, UI_ROLES, UI_SEMANTIC_STATES, type UiDuration, type UiEasingChoice, type UiEnvironmentReport, type UiFramePhase, type UiNodeReport, type UiOwnerReport, type UiPropOrigin, type UiPropReport, type UiRole, type UiSemanticState, type UiSemanticsMap, type UiSemanticsPatch, type UiSemanticsRecord, type UiSemanticsReport, type UiStreamReport, type UiTreeNode, type UiTreeSnapshot, type UndoShortcutOptions, UndoStack, type UndoStackOptions, type UndoTransaction, type UndoableOptions, type ViewOf, WorkerApp, type WorkerAppOptions, type WorkerHandle, applyPatch, applyPatches, bind, bounds, buildPath, channel, classifyStorageError, computed, controlled, createApp, createChannelRegistry, createComponent, createShellHistory, debounced, defineChannel, derive, describeStream, diffProjection, each, findUnplainPath, formatAge, formatNodePath, formatNodeReport, formatStream, formatUrl, input, internalState, into, isChannelClientMessage, isChannelHostMessage, isClassComponent, isComponentElement, isHubMessage, isOutputTarget, isPortErrorMessage, isPortHandshake, markInstant, markNow, measureSpan, mutate, observeColorScheme, observeMediaQuery, observeReducedMotion, output, parseUrl, performShellStorage, performanceMarksEnabled, persisted, pick, pickKeys, portHandle, printPropValue, provide, registerUndoShortcuts, renderRoot, requirePlainData, resource, route, select, serve, serveChannels, servePorts, setPerformanceMarks, shellStorageDenied, show, storageErrorMessage, storageReadFailure, storageReadValue, structurallyEqual, themeTokenCell, throttled, to, treeText, undoable, viewKeys, workerHandle, writeClipboard };
|
|
2
|
+
import { $ as classifyStorageError, $n as observeColorScheme, $r as each, $t as ShellService, A as AudioElementLike, An as ShellHistoryMode, Ar as findUnplainPath, At as FontFaceLike, B as ShellStorage, Bn as RouteContext, Br as Output, Bt as CommandEntry, C as FocusService, Cn as describeStream, Cr as WorkerHandle, Ct as GessoRuntime, D as Presence, Dn as formatStream, Dr as portHandle, Dt as UI_FRAME_PHASES, E as observeReducedMotion, En as formatNodeReport, Er as isPortHandshake, Et as RuntimeInput, F as audioClock, Fn as RouterHistorySink, Fr as provide, Ft as MediaOptions, G as OpfsFileHandle, Gn as route, Gr as themeTokenCell, Gt as PatchEntry, H as IndexedDbStorage, Hn as RouteGuard, Hr as ControlledValue, Ht as DevtoolsEvent, I as FrameService, In as RouterRoutes, Ir as Channel, It as MediaService, J as OpfsWritable, Jn as buildPath, Jr as ShowProps, Jt as treeText, K as OpfsStorage, Kn as to, Kr as bind, Kt as UiTreeNode, L as PersistedOptions, Ln as RouterService, Lr as Define, Lt as ActionCause, M as AudioSinkOptions, Mn as createShellHistory, Mr as ChannelRegistry, Mt as FontFamilyStatus, N as AudioSinkOutput, Nn as RouteAnswer, Nr as ChannelSource, Nt as FontHost, O as PresenceProps, On as printPropValue, Or as servePorts, Ot as UiFramePhase, P as MediaSessionLike, Pn as RouteMatch, Pr as ProvidedChannel, Pt as FontService, Q as StorageRead, Qn as ColorSchemePreference, Qr as EachProps, Qt as ShellRequest, R as PersistedState, Rn as RouteState, Rr as Inject, Rt as ActionEntry, S as writeClipboard, Sn as UiStreamReport, Sr as PortHost, St as FramePhaseTimings, T as observeMediaQuery, Tn as formatNodePath, Tr as isPortErrorMessage, Tt as RendererChoice, U as IndexedDbStorageOptions, Un as RouteOptions, Ur as controlled, Ut as DevtoolsRequest, V as ShellStorageOptions, Vn as RouteDefinition, Vr as ControlledOptions, Vt as ConsoleEntry, W as OpfsDirectory, Wn as RouteTarget, Wr as ThemeTokenCell, Wt as FrameEntry, X as StorageAdapter, Xn as parseUrl, Xr as Each, Xt as RuntimeToShellMessage, Y as MemoryStorage, Yn as formatUrl, Yr as show, Yt as RuntimeErrorSource, Z as StorageOutcome, Zn as ColorScheme, Zr as EachKey, Zt as ShellToRuntimeMessage, _ as EditingMirrorTarget, _i as Equality, _n as UiNodeReport, _r as ChannelRegistryHandle, _t as AppLogicEndpoint, a as UiRole, ai as Resource, an as AudioSample, ar as OverlayService, at as UndoableOptions, b as EditingProxy, bn as UiPropReport, br as MessageEndpoint, bt as GessoAppBuilder, c as UiSemanticsPatch, ci as ResourceStatus, cn as AudioStatus, cr as FrameworkChild, ct as UndoStackOptions, d as markNow, di as select, dn as SpringOptions, dr as pick, dt as performShellStorage, ei as debounced, en as ShellStorageOp, er as ComponentHostResolver, et as storageErrorMessage, f as measureSpan, fi as ComputedCell, fn as UiDuration, fr as pickKeys, ft as shellStorageDenied, g as renderRoot, gi as DeriveOptions, gn as UiEnvironmentReport, gr as ChannelRegistration, gt as createApp, h as RenderWorkerApp, hi as computed, hn as NodePathTarget, hr as serveChannels, ht as CreateAppOptions, i as UI_SEMANTIC_STATES, ii as mutate, in as AudioRequest, ir as OverlayPlacement, it as registerUndoShortcuts, j as AudioSink, jn as ShellHistoryOptions, jr as requirePlainData, jt as FontFamilyDeclaration, k as RouterOutlet, kn as ShellHistory, kr as workerHandle, kt as FontFaceDeclaration, l as UiSemanticsRecord, li as resource, ln as AnimateOptions, lr as isComponentElement, lt as UndoTransaction, m as setPerformanceMarks, mi as ReadSource, mn as BoundStream, mr as serve, mt as GessoAppOptions, n as MARK_PREFIX, ni as MutateOptions, nn as AudioAction, nr as OverlayLayer, nt as storageReadValue, o as UiSemanticState, oi as ResourceOptions, on as AudioService, or as createComponent, ot as undoable, p as performanceMarksEnabled, pi as ComputedOptions, pn as UiEasingChoice, pr as ServedChannel, pt as GessoApp, q as OpfsStorageOptions, qn as RouteParams, qr as Show, qt as UiTreeSnapshot, r as UI_ROLES, ri as Mutation, rn as AudioMetadata, rr as OverlayEntry, rt as UndoShortcutOptions, s as UiSemanticsMap, si as ResourceState, sn as AudioState, sr as ComponentElement, st as UndoStack, t as EditingState, ti as throttled, tn as ShellStorageResult, tr as ComponentHost, tt as storageReadFailure, u as markInstant, ui as SelectOptions, un as AnimationService, ur as structurallyEqual, ut as ShellLocalStore, v as SemanticsMirror, vi as derive, vn as UiOwnerReport, vr as createChannelRegistry, vt as WorkerApp, w as FindService, wn as formatAge, wr as isHubMessage, wt as GessoRuntimeOptions, x as EditingProxySink, xn as UiSemanticsReport, xr as PortHandshake, xt as FrameMetrics, y as SemanticsMirrorSink, yi as ServiceRegistry, yn as UiPropOrigin, yr as APPLICATION_WORKER, yt as WorkerAppOptions, z as persisted, zn as OutletProps, zr as Input, zt as ChannelErrorEntry } from "./index-C8yYHFKz.js";
|
|
3
|
+
export { APPLICATION_WORKER, type ActionCause, type ActionEntry, type AnimateOptions, AnimationService, type AppLogicEndpoint, type AudioAction, type AudioElementLike, type AudioMetadata, type AudioRequest, type AudioSample, AudioService, AudioSink, type AudioSinkOptions, type AudioSinkOutput, type AudioState, type AudioStatus, type BoundStream, BoundsCell, Channel, type ChannelClientMessage, type ChannelErrorEntry, type ChannelHostMessage, type ChannelPort, type ChannelRegistration, ChannelRegistry, type ChannelRegistryHandle, ChannelReplica, type ChannelSource, type ChannelSpec, type ChannelToken, type ClassComponent, type ColorScheme, type ColorSchemePreference, type Command, type CommandEntry, type CommandMap, type CommandsOf, Component, type ComponentContext, type ComponentElement, ComponentHost, ComponentHostResolver, type ComponentProps, type ComponentType, ComputedCell, type ComputedOptions, type ConsoleEntry, type ControlledOptions, type ControlledValue, type CreateAppOptions, Define, type DeriveOptions, type DevtoolsEvent, type DevtoolsRequest, Each, type EachKey, type EachProps, type EditingMirrorTarget, EditingProxy, type EditingProxySink, type EditingState, type EmitArgs, type EmitValue, type Equality, FindService, FocusService, type FontFaceDeclaration, type FontFaceLike, type FontFamilyDeclaration, type FontFamilyStatus, type FontHost, FontService, type FrameEntry, type FrameMetrics, type FramePhaseTimings, FrameService, type FrameworkChild, type FunctionComponent, GessoApp, GessoAppBuilder, type GessoAppOptions, GessoRuntime, type GessoRuntimeOptions, IndexedDbStorage, type IndexedDbStorageOptions, Inject, Input, InputCell, type Inputs, InternalState, MARK_PREFIX, type MediaOptions, MediaService, type MediaSessionLike, MemoryStorage, type MessageEndpoint, type MutateOptions, type Mutation, type NodePathTarget, type OpfsDirectory, type OpfsFileHandle, OpfsStorage, type OpfsStorageOptions, type OpfsWritable, type OutletProps, Output, type OutputCell, type OutputTarget, type OverlayEntry, OverlayLayer, type OverlayPlacement, OverlayService, type Patch, type PatchEntry, type PatchPath, type PersistedOptions, PersistedState, type PortHandshake, type PortHost, Presence, type PresenceProps, ProvidedChannel, type ReadSource, type ReadableCell, RenderWorkerApp, type RendererChoice, Resource, type ResourceOptions, type ResourceState, type ResourceStatus, type RouteAnswer, type RouteContext, type RouteDefinition, type RouteGuard, type RouteMatch, type RouteOptions, type RouteParams, RouteState, type RouteTarget, type RouterHistorySink, RouterOutlet, type RouterRoutes, RouterService, type RuntimeErrorSource, type RuntimeInput, type RuntimeToShellMessage, type SelectOptions, SemanticsMirror, type SemanticsMirrorSink, type ServedChannel, ServiceRegistry, type ShellHistory, type ShellHistoryMode, type ShellHistoryOptions, type ShellLocalStore, type ShellRequest, ShellService, ShellStorage, type ShellStorageOp, type ShellStorageOptions, type ShellStorageResult, type ShellToRuntimeMessage, Show, type ShowProps, type SpringOptions, type StorageAdapter, type StorageOutcome, type StorageRead, ThemeTokenCell, UI_FRAME_PHASES, UI_ROLES, UI_SEMANTIC_STATES, type UiDuration, type UiEasingChoice, type UiEnvironmentReport, type UiFramePhase, type UiNodeReport, type UiOwnerReport, type UiPropOrigin, type UiPropReport, type UiRole, type UiSemanticState, type UiSemanticsMap, type UiSemanticsPatch, type UiSemanticsRecord, type UiSemanticsReport, type UiStreamReport, type UiTreeNode, type UiTreeSnapshot, type UndoShortcutOptions, UndoStack, type UndoStackOptions, type UndoTransaction, type UndoableOptions, type ViewOf, WorkerApp, type WorkerAppOptions, type WorkerHandle, applyPatch, applyPatches, audioClock, bind, bounds, buildPath, channel, classifyStorageError, computed, controlled, createApp, createChannelRegistry, createComponent, createShellHistory, debounced, defineChannel, derive, describeStream, diffProjection, each, findUnplainPath, formatAge, formatNodePath, formatNodeReport, formatStream, formatUrl, input, internalState, into, isChannelClientMessage, isChannelHostMessage, isClassComponent, isComponentElement, isHubMessage, isOutputTarget, isPortErrorMessage, isPortHandshake, markInstant, markNow, measureSpan, mutate, observeColorScheme, observeMediaQuery, observeReducedMotion, output, parseUrl, performShellStorage, performanceMarksEnabled, persisted, pick, pickKeys, portHandle, printPropValue, provide, registerUndoShortcuts, renderRoot, requirePlainData, resource, route, select, serve, serveChannels, servePorts, setPerformanceMarks, shellStorageDenied, show, storageErrorMessage, storageReadFailure, storageReadValue, structurallyEqual, themeTokenCell, throttled, to, treeText, undoable, viewKeys, workerHandle, writeClipboard };
|