@flyingrobots/bijou-tui 4.4.0 → 5.0.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.
- package/README.md +102 -600
- package/dist/app-frame-actions.d.ts.map +1 -1
- package/dist/app-frame-actions.js +6 -1
- package/dist/app-frame-actions.js.map +1 -1
- package/dist/app-frame-i18n.d.ts.map +1 -1
- package/dist/app-frame-i18n.js +53 -0
- package/dist/app-frame-i18n.js.map +1 -1
- package/dist/app-frame-layers.d.ts +11 -1
- package/dist/app-frame-layers.d.ts.map +1 -1
- package/dist/app-frame-layers.js +19 -0
- package/dist/app-frame-layers.js.map +1 -1
- package/dist/app-frame-overlays.d.ts +82 -0
- package/dist/app-frame-overlays.d.ts.map +1 -0
- package/dist/app-frame-overlays.js +480 -0
- package/dist/app-frame-overlays.js.map +1 -0
- package/dist/app-frame-render.d.ts +8 -8
- package/dist/app-frame-render.d.ts.map +1 -1
- package/dist/app-frame-render.js +84 -25
- package/dist/app-frame-render.js.map +1 -1
- package/dist/app-frame-types.d.ts +122 -5
- package/dist/app-frame-types.d.ts.map +1 -1
- package/dist/app-frame-types.js +17 -1
- package/dist/app-frame-types.js.map +1 -1
- package/dist/app-frame-utils.d.ts.map +1 -1
- package/dist/app-frame-utils.js +6 -5
- package/dist/app-frame-utils.js.map +1 -1
- package/dist/app-frame.d.ts +43 -83
- package/dist/app-frame.d.ts.map +1 -1
- package/dist/app-frame.js +499 -575
- package/dist/app-frame.js.map +1 -1
- package/dist/browsable-list.d.ts +12 -0
- package/dist/browsable-list.d.ts.map +1 -1
- package/dist/browsable-list.js +17 -6
- package/dist/browsable-list.js.map +1 -1
- package/dist/canvas.d.ts.map +1 -1
- package/dist/canvas.js +27 -7
- package/dist/canvas.js.map +1 -1
- package/dist/collection-surface.d.ts +8 -0
- package/dist/collection-surface.d.ts.map +1 -1
- package/dist/collection-surface.js +72 -8
- package/dist/collection-surface.js.map +1 -1
- package/dist/command-palette.d.ts +5 -3
- package/dist/command-palette.d.ts.map +1 -1
- package/dist/command-palette.js +5 -3
- package/dist/command-palette.js.map +1 -1
- package/dist/css/text-style.d.ts +2 -0
- package/dist/css/text-style.d.ts.map +1 -1
- package/dist/css/text-style.js +18 -8
- package/dist/css/text-style.js.map +1 -1
- package/dist/debug-overlay.d.ts +19 -0
- package/dist/debug-overlay.d.ts.map +1 -0
- package/dist/debug-overlay.js +25 -0
- package/dist/debug-overlay.js.map +1 -0
- package/dist/design-language.d.ts.map +1 -1
- package/dist/design-language.js +4 -5
- package/dist/design-language.js.map +1 -1
- package/dist/driver.d.ts +102 -0
- package/dist/driver.d.ts.map +1 -1
- package/dist/driver.js +259 -19
- package/dist/driver.js.map +1 -1
- package/dist/file-picker.d.ts.map +1 -1
- package/dist/file-picker.js +2 -2
- package/dist/file-picker.js.map +1 -1
- package/dist/flex.d.ts.map +1 -1
- package/dist/flex.js +6 -6
- package/dist/flex.js.map +1 -1
- package/dist/focus-area.d.ts +9 -1
- package/dist/focus-area.d.ts.map +1 -1
- package/dist/focus-area.js +69 -40
- package/dist/focus-area.js.map +1 -1
- package/dist/grid.d.ts +2 -2
- package/dist/grid.d.ts.map +1 -1
- package/dist/grid.js +11 -148
- package/dist/grid.js.map +1 -1
- package/dist/help.d.ts +2 -0
- package/dist/help.d.ts.map +1 -1
- package/dist/help.js +6 -4
- package/dist/help.js.map +1 -1
- package/dist/icon-presentation.d.ts +10 -0
- package/dist/icon-presentation.d.ts.map +1 -0
- package/dist/icon-presentation.js +12 -0
- package/dist/icon-presentation.js.map +1 -0
- package/dist/index.d.ts +14 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -5
- package/dist/index.js.map +1 -1
- package/dist/layout-preset.d.ts +1 -1
- package/dist/layout-preset.d.ts.map +1 -1
- package/dist/motion/reconciler.d.ts +6 -2
- package/dist/motion/reconciler.d.ts.map +1 -1
- package/dist/motion/reconciler.js +40 -10
- package/dist/motion/reconciler.js.map +1 -1
- package/dist/motion/types.d.ts +3 -1
- package/dist/motion/types.d.ts.map +1 -1
- package/dist/navigable-table.d.ts +9 -10
- package/dist/navigable-table.d.ts.map +1 -1
- package/dist/navigable-table.js +33 -14
- package/dist/navigable-table.js.map +1 -1
- package/dist/notification.d.ts +15 -0
- package/dist/notification.d.ts.map +1 -1
- package/dist/notification.js +98 -29
- package/dist/notification.js.map +1 -1
- package/dist/overlay.d.ts.map +1 -1
- package/dist/overlay.js +50 -19
- package/dist/overlay.js.map +1 -1
- package/dist/pager.d.ts +3 -1
- package/dist/pager.d.ts.map +1 -1
- package/dist/pager.js +4 -0
- package/dist/pager.js.map +1 -1
- package/dist/pipeline/middleware/grayscale.d.ts.map +1 -1
- package/dist/pipeline/middleware/grayscale.js +5 -5
- package/dist/pipeline/middleware/grayscale.js.map +1 -1
- package/dist/pipeline/middleware/motion.js +2 -2
- package/dist/pipeline/middleware/motion.js.map +1 -1
- package/dist/pipeline/middleware/surface-shaders.d.ts +37 -0
- package/dist/pipeline/middleware/surface-shaders.d.ts.map +1 -0
- package/dist/pipeline/middleware/surface-shaders.js +164 -0
- package/dist/pipeline/middleware/surface-shaders.js.map +1 -0
- package/dist/pipeline/pipeline.d.ts +29 -1
- package/dist/pipeline/pipeline.d.ts.map +1 -1
- package/dist/pipeline/pipeline.js +86 -23
- package/dist/pipeline/pipeline.js.map +1 -1
- package/dist/runtime.d.ts +19 -0
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +183 -30
- package/dist/runtime.js.map +1 -1
- package/dist/shell-quit.d.ts +1 -1
- package/dist/shell-quit.d.ts.map +1 -1
- package/dist/shell-quit.js +14 -3
- package/dist/shell-quit.js.map +1 -1
- package/dist/split-pane.d.ts +2 -2
- package/dist/split-pane.d.ts.map +1 -1
- package/dist/split-pane.js +28 -49
- package/dist/split-pane.js.map +1 -1
- package/dist/subapp/mount.d.ts +17 -0
- package/dist/subapp/mount.d.ts.map +1 -1
- package/dist/subapp/mount.js +13 -0
- package/dist/subapp/mount.js.map +1 -1
- package/dist/surface-layout.d.ts +8 -3
- package/dist/surface-layout.d.ts.map +1 -1
- package/dist/surface-layout.js +27 -12
- package/dist/surface-layout.js.map +1 -1
- package/dist/view-output.js +2 -2
- package/dist/view-output.js.map +1 -1
- package/dist/viewport.d.ts +13 -1
- package/dist/viewport.d.ts.map +1 -1
- package/dist/viewport.js +33 -11
- package/dist/viewport.js.map +1 -1
- package/package.json +3 -3
package/dist/index.d.ts
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
*
|
|
7
7
|
* @module
|
|
8
8
|
*/
|
|
9
|
+
export type { BijouContext, Cell, Surface } from '@flyingrobots/bijou';
|
|
9
10
|
export type { App, Cmd, KeyMsg, ResizeMsg, MouseMsg, MouseButton, MouseAction, QuitSignal, RunOptions, RuntimeIssue, RuntimeIssueLevel, RuntimeIssueSource, } from './types.js';
|
|
10
11
|
export { QUIT, isKeyMsg, isResizeMsg, isMouseMsg } from './types.js';
|
|
11
12
|
export type { ApplyRuntimeCommandBufferResult, ExecuteRuntimeEffectBufferResult, CreateRuntimeComponentContractOptions, CreateRuntimeComponentNodeOptions, RuntimeBuffers, RuntimeComponentAlignment, RuntimeComponentBlockOverflowPolicy, RuntimeComponentContract, RuntimeComponentInputContext, RuntimeComponentInlineOverflowPolicy, RuntimeComponentInteractionContract, RuntimeComponentKeyBindings, RuntimeComponentLayoutNode, RuntimeComponentLayoutRules, RuntimeComponentOverflowRules, RuntimeComponentPointerBindings, RuntimeComponentSizeMode, RuntimeCommandBuffer, RuntimeEffectBuffer, RetainRuntimeLayoutOptions, RuntimeInputEvent, RuntimeInputHandler, RuntimeInputRouteContext, RuntimeInputRouteOutcome, RuntimeInputRouteResult, RuntimeKeyInputEvent, RuntimeLayoutHit, RuntimeLayoutInvalidationCause, RuntimePointerAction, RuntimePointerButton, RuntimePointerInputEvent, RuntimeStateLike, RuntimeStateMachine, RuntimeRetainedLayout, RuntimeRetainedLayouts, RuntimeViewLayer, RuntimeStackLayer, RuntimeViewStack, PopRuntimeViewResult, } from './runtime-engine.js';
|
|
@@ -18,21 +19,26 @@ export { FRAME_I18N_CATALOG, } from './app-frame-i18n.js';
|
|
|
18
19
|
export { run } from './runtime.js';
|
|
19
20
|
export { type BusMsg, type EventBus, createEventBus, } from './eventbus.js';
|
|
20
21
|
export type { ViewOutput } from './view-output.js';
|
|
21
|
-
export type { RenderState, RenderMiddleware, RenderStage, RenderPipeline } from './pipeline/pipeline.js';
|
|
22
|
-
export { createPipeline } from './pipeline/pipeline.js';
|
|
22
|
+
export type { RenderState, RenderMiddleware, RenderStage, RenderPipeline, RenderStageTiming, RenderStageCompleteHandler, RenderStageObserver, CreatePipelineOptions, } from './pipeline/pipeline.js';
|
|
23
|
+
export { createPipeline, getRenderStageTimings, RENDER_STAGE_TIMINGS_KEY } from './pipeline/pipeline.js';
|
|
23
24
|
export { grayscaleFilter } from './pipeline/middleware/grayscale.js';
|
|
24
|
-
export type {
|
|
25
|
-
export {
|
|
25
|
+
export type { SurfaceShader, SurfaceShaderContext, ScanlinesShaderOptions, FlickerShaderOptions, NoiseShaderOptions, VignetteShaderOptions, } from './pipeline/middleware/surface-shaders.js';
|
|
26
|
+
export { surfaceShaderFilter, scanlines, flicker, noise, vignette, } from './pipeline/middleware/surface-shaders.js';
|
|
27
|
+
export type { MountOptions, MountedApp, SubAppAdapterCases } from './subapp/mount.js';
|
|
28
|
+
export { mount, mapCmds, initSubApp, updateSubApp, createSubAppAdapter } from './subapp/mount.js';
|
|
26
29
|
export { motion } from './motion/motion.js';
|
|
27
30
|
export { motionMiddleware } from './pipeline/middleware/motion.js';
|
|
28
31
|
export type { MotionOptions } from './motion/types.js';
|
|
29
32
|
export { vstack, hstack, place } from './layout.js';
|
|
30
|
-
export { vstackSurface, hstackSurface, placeSurface } from './surface-layout.js';
|
|
33
|
+
export { contentSurface, vstackSurface, hstackSurface, placeSurface } from './surface-layout.js';
|
|
31
34
|
export type { HAlign, VAlign, PlaceOptions } from './layout.js';
|
|
35
|
+
export type { SurfaceContent } from './surface-layout.js';
|
|
32
36
|
export type { LayoutRect } from './layout-rect.js';
|
|
37
|
+
export type { DebugOverlayAnchor, DebugOverlayOptions } from './debug-overlay.js';
|
|
38
|
+
export { debugOverlay } from './debug-overlay.js';
|
|
33
39
|
export { type SplitPaneDirection, type SplitPaneFocus, type SplitPaneState, type SplitPaneLayout, type SplitPaneOptions, type SplitPaneSurfaceOptions, createSplitPaneState, splitPaneSetRatio, splitPaneResizeBy, splitPaneFocusNext, splitPaneFocusPrev, splitPaneLayout, splitPane, splitPaneSurface, } from './split-pane.js';
|
|
34
40
|
export { type GridTrack, type GridOptions, type GridSurfaceOptions, type GridLayoutResult, gridLayout, grid, gridSurface, } from './grid.js';
|
|
35
|
-
export { type FrameCommandItem, type FrameInputArea, type FrameLayerHintSource, type FrameLayerKind, type FrameLayerMetadata, type FrameLayerOwner, type FrameLayerDescriptor, type FrameRuntimeLayer, type FrameRuntimeViewStack, type DescribeFrameLayerStackOptions, type FrameHeaderStyle, type FramePage, type FramePageMsg, type FramePageUpdateResult, type FrameLayoutNode, type FrameOverlayContext, type FrameRuntimeNotificationOptions, type CreateFramedAppOptions, type PageTransition, type FramePaneScroll, type FrameModel, type FramedApp, type FramedAppMsg, type FramedAppUpdateResult, type FrameScopedMsg, type PageScopedMsg, activeFrameLayer, describeFrameLayerStack, describeFrameRuntimeViewStack, createFramedApp, underlyingFrameLayer, } from './app-frame.js';
|
|
41
|
+
export { type FrameCommandItem, type FrameInputArea, type FrameLayerHintSource, type FrameLayerKind, type FrameLayerMetadata, type FrameLayerOwner, type FrameLayerDescriptor, type FramePageLayerKind, type FramePageLayerRegistry, type FrameControlProjection, type FrameRuntimeLayer, type FrameRuntimeViewStack, type DescribeFrameLayerStackOptions, type FrameHeaderStyle, type FrameShellTheme, type FrameShellThemeChange, type FramePage, type FramePageMsg, type FramePageUpdateResult, type FrameLayoutNode, type FrameOverlayContext, type FrameRuntimeNotificationOptions, type CreateFramedAppOptions, type PageTransition, type FramePaneScroll, type FrameModel, type FrameAction, type FrameNotificationSpec, type FramedApp, type FramedAppRunOptions, type FramedAppMsg, type FramedAppUpdateResult, type FrameScopedMsg, type PageScopedMsg, activeFrameLayer, describeFrameLayerStack, describeFrameRuntimeViewStack, createFramedApp, emitFrameAction, notify, projectFrameControls, runFramedApp, underlyingFrameLayer, } from './app-frame.js';
|
|
36
42
|
export { type PanelVisibilityState, type PanelMaximizeState, createPanelVisibilityState, createPanelMaximizeState, toggleMinimized, minimizePane, restorePane, isMinimized, toggleMaximize, } from './panel-state.js';
|
|
37
43
|
export { type DockDirection, type PanelDockState, createPanelDockState, movePaneInContainer, resolveChildOrder, findPaneContainer, getNodeId, } from './panel-dock.js';
|
|
38
44
|
export { type SerializedPageLayout, type SerializedLayoutState, type LayoutPreset, serializeLayoutState, restoreLayoutState, presetSideBySide, presetStacked, presetFocused, } from './layout-preset.js';
|
|
@@ -54,10 +60,10 @@ export { type Overlay, type CompositeOptions, type ModalOptions, type ToastVaria
|
|
|
54
60
|
export { type InspectorDrawerOptions, inspectorDrawer, } from './inspector-drawer.js';
|
|
55
61
|
export { type NotificationHistoryFilter, type NotificationVariant, type NotificationTone, type NotificationPlacement, type NotificationAction, type NotificationSpec, type NotificationPhase, type NotificationRecord, type NotificationState, type NotificationMouseTargetKind, type NotificationMouseTarget, type RenderNotificationHistoryOptions, type RenderNotificationStackOptions, countNotificationHistory, createNotificationState, pushNotification, dismissNotification, dismissFocusedNotification, relocateNotifications, cycleNotificationFocus, activateFocusedNotification, trimNotificationsToViewport, tickNotifications, hasNotifications, notificationsNeedTick, hitTestNotificationStack, renderNotificationHistory, renderNotificationHistorySurface, renderNotificationStack, } from './notification.js';
|
|
56
62
|
export { type AccordionState, type InteractiveAccordionOptions, createAccordionState, interactiveAccordion, focusNext, focusPrev, toggleFocused, expandAll, collapseAll, accordionKeyMap, } from './accordion.js';
|
|
57
|
-
export { type NavigableTableState, type NavigableTableOptions, type NavTableRenderOptions, type NavTableSurfaceOptions, createNavigableTableState, navigableTable, navigableTableSurface, navTableFocusNext, navTableFocusPrev, navTablePageDown, navTablePageUp, navTableKeyMap, } from './navigable-table.js';
|
|
63
|
+
export { type NavigableTableState, type NavigableTableInput, type NavigableTableOptions, type NavTableRenderOptions, type NavTableSurfaceOptions, createNavigableTableState, navigableTable, navigableTableSurface, navTableFocusNext, navTableFocusPrev, navTablePageDown, navTablePageUp, navTableKeyMap, } from './navigable-table.js';
|
|
58
64
|
export { type BrowsableListSurfaceOptions, type BrowsableListItem, type BrowsableListState, type BrowsableListOptions, type BrowsableListRenderOptions, createBrowsableListState, browsableList, browsableListSurface, listFocusNext, listFocusPrev, listPageDown, listPageUp, browsableListKeyMap, } from './browsable-list.js';
|
|
59
65
|
export { type FilePickerSurfaceOptions, type FileEntry, type FilePickerState, type FilePickerOptions, type FilePickerRenderOptions, createFilePickerState, filePicker, filePickerSurface, fpFocusNext, fpFocusPrev, fpEnter, fpBack, filePickerKeyMap, } from './file-picker.js';
|
|
60
|
-
export { type ScriptStep, type RunScriptOptions, type RunScriptResult, runScript, } from './driver.js';
|
|
66
|
+
export { type ScriptStep, type RunScriptOptions, type RunScriptResult, type TestRuntimeOptions, type TestRuntimeCommandResolution, type TestRuntimeCommandRecord, type TestRuntimeSnapshot, type TestHarness, runScript, testRuntime, } from './driver.js';
|
|
61
67
|
export { type ShaderFn, type CanvasOptions, canvas, } from './canvas.js';
|
|
62
68
|
export { type CommandPaletteItem, type CommandPaletteState, type CommandPaletteOptions, type CommandPaletteSurfaceOptions, createCommandPaletteState, cpFilter, cpFocusNext, cpFocusPrev, cpPageDown, cpPageUp, cpSelectedItem, commandPalette, commandPaletteSurface, commandPaletteKeyMap, } from './command-palette.js';
|
|
63
69
|
export { type OverflowX, type FocusAreaState, type FocusAreaOptions, type FocusAreaRenderOptions, createFocusAreaState, createFocusAreaStateForSurface, focusArea, focusAreaSurface, focusAreaScrollBy, focusAreaScrollTo, focusAreaScrollToTop, focusAreaScrollToBottom, focusAreaPageDown, focusAreaPageUp, focusAreaScrollByX, focusAreaScrollToX, focusAreaSetContent, focusAreaKeyMap, } from './focus-area.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,YAAY,EACV,GAAG,EACH,GAAG,EACH,MAAM,EACN,SAAS,EACT,QAAQ,EACR,WAAW,EACX,WAAW,EACX,UAAU,EACV,UAAU,EACV,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAGrE,YAAY,EACV,+BAA+B,EAC/B,gCAAgC,EAChC,qCAAqC,EACrC,iCAAiC,EACjC,cAAc,EACd,yBAAyB,EACzB,mCAAmC,EACnC,wBAAwB,EACxB,4BAA4B,EAC5B,oCAAoC,EACpC,mCAAmC,EACnC,2BAA2B,EAC3B,0BAA0B,EAC1B,2BAA2B,EAC3B,6BAA6B,EAC7B,+BAA+B,EAC/B,wBAAwB,EACxB,oBAAoB,EACpB,mBAAmB,EACnB,0BAA0B,EAC1B,iBAAiB,EACjB,mBAAmB,EACnB,wBAAwB,EACxB,wBAAwB,EACxB,uBAAuB,EACvB,oBAAoB,EACpB,gBAAgB,EAChB,8BAA8B,EAC9B,oBAAoB,EACpB,oBAAoB,EACpB,wBAAwB,EACxB,gBAAgB,EAChB,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,4BAA4B,EAC5B,yCAAyC,EACzC,0CAA0C,EAC1C,4BAA4B,EAC5B,kCAAkC,EAClC,uBAAuB,EACvB,uBAAuB,EACvB,iBAAiB,EACjB,qBAAqB,EACrB,oBAAoB,EACpB,yBAAyB,EACzB,wBAAwB,EACxB,uBAAuB,EACvB,8BAA8B,EAC9B,0BAA0B,EAC1B,oBAAoB,EACpB,0BAA0B,EAC1B,yBAAyB,EACzB,yBAAyB,EACzB,4BAA4B,EAC5B,sBAAsB,EACtB,0BAA0B,EAC1B,0BAA0B,EAC1B,wBAAwB,EACxB,2BAA2B,EAC3B,2BAA2B,EAC3B,oBAAoB,EACpB,wBAAwB,EACxB,0BAA0B,EAC1B,cAAc,EACd,eAAe,EACf,+BAA+B,EAC/B,iBAAiB,EACjB,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,4BAA4B,EAC5B,sBAAsB,GACvB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAGjD,OAAO,EACL,WAAW,EACX,UAAU,EACV,YAAY,EACZ,WAAW,EACX,cAAc,EACd,gBAAgB,EAChB,KAAK,WAAW,EAChB,gBAAgB,EAChB,eAAe,EACf,WAAW,EACX,WAAW,EACX,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,UAAU,EACV,IAAI,EACJ,YAAY,EACZ,gBAAgB,EAChB,UAAU,EACV,YAAY,GACb,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EACL,KAAK,eAAe,EACpB,sBAAsB,EACtB,yBAAyB,EACzB,kBAAkB,EAClB,wBAAwB,EACxB,yBAAyB,EACzB,sBAAsB,GACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,kBAAkB,GACnB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAGnC,OAAO,EACL,KAAK,MAAM,EACX,KAAK,QAAQ,EACb,cAAc,GACf,MAAM,eAAe,CAAC;AAGvB,YAAY,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAGnD,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -20,21 +20,23 @@ export { FRAME_I18N_CATALOG, } from './app-frame-i18n.js';
|
|
|
20
20
|
export { run } from './runtime.js';
|
|
21
21
|
// Event bus
|
|
22
22
|
export { createEventBus, } from './eventbus.js';
|
|
23
|
-
export { createPipeline } from './pipeline/pipeline.js';
|
|
23
|
+
export { createPipeline, getRenderStageTimings, RENDER_STAGE_TIMINGS_KEY } from './pipeline/pipeline.js';
|
|
24
24
|
export { grayscaleFilter } from './pipeline/middleware/grayscale.js';
|
|
25
|
-
export {
|
|
25
|
+
export { surfaceShaderFilter, scanlines, flicker, noise, vignette, } from './pipeline/middleware/surface-shaders.js';
|
|
26
|
+
export { mount, mapCmds, initSubApp, updateSubApp, createSubAppAdapter } from './subapp/mount.js';
|
|
26
27
|
// Motion API
|
|
27
28
|
export { motion } from './motion/motion.js';
|
|
28
29
|
export { motionMiddleware } from './pipeline/middleware/motion.js';
|
|
29
30
|
// Layout
|
|
30
31
|
export { vstack, hstack, place } from './layout.js';
|
|
31
|
-
export { vstackSurface, hstackSurface, placeSurface } from './surface-layout.js';
|
|
32
|
+
export { contentSurface, vstackSurface, hstackSurface, placeSurface } from './surface-layout.js';
|
|
33
|
+
export { debugOverlay } from './debug-overlay.js';
|
|
32
34
|
// Split pane layout
|
|
33
35
|
export { createSplitPaneState, splitPaneSetRatio, splitPaneResizeBy, splitPaneFocusNext, splitPaneFocusPrev, splitPaneLayout, splitPane, splitPaneSurface, } from './split-pane.js';
|
|
34
36
|
// Constraint grid layout
|
|
35
37
|
export { gridLayout, grid, gridSurface, } from './grid.js';
|
|
36
38
|
// App frame shell
|
|
37
|
-
export { activeFrameLayer, describeFrameLayerStack, describeFrameRuntimeViewStack, createFramedApp, underlyingFrameLayer, } from './app-frame.js';
|
|
39
|
+
export { activeFrameLayer, describeFrameLayerStack, describeFrameRuntimeViewStack, createFramedApp, emitFrameAction, notify, projectFrameControls, runFramedApp, underlyingFrameLayer, } from './app-frame.js';
|
|
38
40
|
// Panel state (minimize/maximize)
|
|
39
41
|
export { createPanelVisibilityState, createPanelMaximizeState, toggleMinimized, minimizePane, restorePane, isMinimized, toggleMaximize, } from './panel-state.js';
|
|
40
42
|
// Panel dock (reorder panes)
|
|
@@ -90,7 +92,7 @@ export { createBrowsableListState, browsableList, browsableListSurface, listFocu
|
|
|
90
92
|
// File picker
|
|
91
93
|
export { createFilePickerState, filePicker, filePickerSurface, fpFocusNext, fpFocusPrev, fpEnter, fpBack, filePickerKeyMap, } from './file-picker.js';
|
|
92
94
|
// Scripted driver
|
|
93
|
-
export { runScript, } from './driver.js';
|
|
95
|
+
export { runScript, testRuntime, } from './driver.js';
|
|
94
96
|
// Canvas — shader-based character grid
|
|
95
97
|
export { canvas, } from './canvas.js';
|
|
96
98
|
// Command palette
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAoBH,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AA4CrE,OAAO,EACL,4BAA4B,EAC5B,yCAAyC,EACzC,0CAA0C,EAC1C,4BAA4B,EAC5B,kCAAkC,EAClC,uBAAuB,EACvB,uBAAuB,EACvB,iBAAiB,EACjB,qBAAqB,EACrB,oBAAoB,EACpB,yBAAyB,EACzB,wBAAwB,EACxB,uBAAuB,EACvB,8BAA8B,EAC9B,0BAA0B,EAC1B,oBAAoB,EACpB,0BAA0B,EAC1B,yBAAyB,EACzB,yBAAyB,EACzB,4BAA4B,EAC5B,sBAAsB,EACtB,0BAA0B,EAC1B,0BAA0B,EAC1B,wBAAwB,EACxB,2BAA2B,EAC3B,2BAA2B,EAC3B,oBAAoB,EACpB,wBAAwB,EACxB,0BAA0B,EAC1B,cAAc,EACd,eAAe,EACf,+BAA+B,EAC/B,iBAAiB,EACjB,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,4BAA4B,EAC5B,sBAAsB,GACvB,MAAM,qBAAqB,CAAC;AAE7B,cAAc;AACd,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEjD,iBAAiB;AACjB,OAAO,EACL,WAAW,EACX,UAAU,EACV,YAAY,EACZ,WAAW,EACX,cAAc,EACd,gBAAgB,EAEhB,gBAAgB,EAChB,eAAe,EACf,WAAW,EACX,WAAW,EACX,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,UAAU,EACV,IAAI,EACJ,YAAY,EACZ,gBAAgB,EAChB,UAAU,EACV,YAAY,GACb,MAAM,aAAa,CAAC;AAErB,WAAW;AACX,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAEL,sBAAsB,EACtB,yBAAyB,EACzB,kBAAkB,EAClB,wBAAwB,EACxB,yBAAyB,EACzB,sBAAsB,GACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,kBAAkB,GACnB,MAAM,qBAAqB,CAAC;AAE7B,UAAU;AACV,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAEnC,YAAY;AACZ,OAAO,EAGL,cAAc,GACf,MAAM,eAAe,CAAC;AAgBvB,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AACzG,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AASrE,OAAO,EACL,mBAAmB,EACnB,SAAS,EACT,OAAO,EACP,KAAK,EACL,QAAQ,GACT,MAAM,0CAA0C,CAAC;AAIlD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAElG,aAAa;AACb,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAGnE,SAAS;AACT,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAKjG,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,oBAAoB;AACpB,OAAO,EAOL,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EACf,SAAS,EACT,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AAEzB,yBAAyB;AACzB,OAAO,EAKL,UAAU,EACV,IAAI,EACJ,WAAW,GACZ,MAAM,WAAW,CAAC;AAEnB,kBAAkB;AAClB,OAAO,EAmCL,gBAAgB,EAChB,uBAAuB,EACvB,6BAA6B,EAC7B,eAAe,EACf,eAAe,EACf,MAAM,EACN,oBAAoB,EACpB,YAAY,EACZ,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AAExB,kCAAkC;AAClC,OAAO,EAGL,0BAA0B,EAC1B,wBAAwB,EACxB,eAAe,EACf,YAAY,EACZ,WAAW,EACX,WAAW,EACX,cAAc,GACf,MAAM,kBAAkB,CAAC;AAE1B,6BAA6B;AAC7B,OAAO,EAGL,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,SAAS,GACV,MAAM,iBAAiB,CAAC;AAEzB,mCAAmC;AACnC,OAAO,EAIL,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,aAAa,EACb,aAAa,GACd,MAAM,oBAAoB,CAAC;AAE5B,qBAAqB;AACrB,OAAO;AAOL,4BAA4B;AAC5B,UAAU,EACV,cAAc,EACd,UAAU,EACV,UAAU,EACV,UAAU,EACV,YAAY,EACZ,cAAc;AACd,uBAAuB;AACvB,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,YAAY;AACZ,mCAAmC;AACnC,IAAI,EACJ,MAAM,EACN,OAAO,EACP,MAAM,EACN,MAAM,EACN,OAAO,EACP,QAAQ,EACR,UAAU,EACV,MAAM,EACN,QAAQ;AACR,cAAc;AACd,OAAO,EACP,KAAK,EACL,OAAO;AACP,WAAW;AACX,kBAAkB,GACnB,MAAM,yBAAyB,CAAC;AAEjC,aAAa;AACb,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAG9D,sCAAsC;AACtC,OAAO,EAIL,cAAc,EACd,UAAU,EACV,iBAAiB,EACjB,mBAAmB,EAEnB,OAAO,EAGP,SAAS,EACT,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,aAAa,CAAC;AAErB,OAAO,EAIL,OAAO,EACP,QAAQ,GACT,MAAM,cAAc,CAAC;AAEtB,2BAA2B;AAC3B,OAAO,EACL,WAAW,EACX,sBAAsB,EACtB,uBAAuB,EACvB,iBAAiB,EACjB,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,sBAAsB,CAAC;AAE9B,qCAAqC;AACrC,OAAO,EAKL,QAAQ,EACR,eAAe,EACf,iBAAiB,EACjB,2BAA2B,EAC3B,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,cAAc,EACd,QAAQ,EACR,MAAM,EACN,SAAS,EACT,aAAa,EACb,WAAW,EACX,SAAS,EACT,SAAS,EACT,SAAS,GACV,MAAM,eAAe,CAAC;AAEvB,gDAAgD;AAChD,OAAO,EAQL,QAAQ,GACT,MAAM,eAAe,CAAC;AAEvB,iBAAiB;AACjB,OAAO,EAIL,IAAI,EACJ,WAAW,GACZ,MAAM,WAAW,CAAC;AAEnB,qBAAqB;AACrB,OAAO,EAKL,YAAY,EACZ,aAAa,EACb,cAAc,GACf,MAAM,kBAAkB,CAAC;AAE1B,kBAAkB;AAClB,OAAO,EAIL,QAAQ,EACR,eAAe,EACf,SAAS,EACT,gBAAgB,EAChB,OAAO,EACP,cAAc,GACf,MAAM,WAAW,CAAC;AAEnB,cAAc;AACd,OAAO,EAKL,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AAEzB,iCAAiC;AACjC,OAAO,EAIL,gBAAgB,EAChB,0BAA0B,EAC1B,KAAK,EACL,YAAY,EACZ,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,mBAAmB,EACnB,aAAa,EACb,WAAW,EACX,eAAe,EACf,WAAW,GACZ,MAAM,YAAY,CAAC;AAEpB,4CAA4C;AAC5C,OAAO,EAIL,gBAAgB,GACjB,MAAM,aAAa,CAAC;AAErB,sBAAsB;AACtB,OAAO,EAWL,SAAS,EACT,gBAAgB,EAChB,KAAK,EACL,KAAK,EACL,MAAM,EACN,OAAO,GACR,MAAM,cAAc,CAAC;AACtB,OAAO,EAEL,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAE/B,8BAA8B;AAC9B,OAAO,EAcL,wBAAwB,EACxB,uBAAuB,EACvB,gBAAgB,EAChB,mBAAmB,EACnB,0BAA0B,EAC1B,qBAAqB,EACrB,sBAAsB,EACtB,2BAA2B,EAC3B,2BAA2B,EAC3B,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,wBAAwB,EACxB,yBAAyB,EACzB,gCAAgC,EAChC,uBAAuB,GACxB,MAAM,mBAAmB,CAAC;AAE3B,wBAAwB;AACxB,OAAO,EAGL,oBAAoB,EACpB,oBAAoB,EACpB,SAAS,EACT,SAAS,EACT,aAAa,EACb,SAAS,EACT,WAAW,EACX,eAAe,GAChB,MAAM,gBAAgB,CAAC;AAExB,kBAAkB;AAClB,OAAO,EAML,yBAAyB,EACzB,cAAc,EACd,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,cAAc,EACd,cAAc,GACf,MAAM,sBAAsB,CAAC;AAE9B,iBAAiB;AACjB,OAAO,EAML,wBAAwB,EACxB,aAAa,EACb,oBAAoB,EACpB,aAAa,EACb,aAAa,EACb,YAAY,EACZ,UAAU,EACV,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAE7B,cAAc;AACd,OAAO,EAML,qBAAqB,EACrB,UAAU,EACV,iBAAiB,EACjB,WAAW,EACX,WAAW,EACX,OAAO,EACP,MAAM,EACN,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAE1B,kBAAkB;AAClB,OAAO,EASL,SAAS,EACT,WAAW,GACZ,MAAM,aAAa,CAAC;AAErB,uCAAuC;AACvC,OAAO,EAGL,MAAM,GACP,MAAM,aAAa,CAAC;AAErB,kBAAkB;AAClB,OAAO,EAKL,yBAAyB,EACzB,QAAQ,EACR,WAAW,EACX,WAAW,EACX,UAAU,EACV,QAAQ,EACR,cAAc,EACd,cAAc,EACd,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,sBAAsB,CAAC;AAE9B,mDAAmD;AACnD,OAAO,EAKL,oBAAoB,EACpB,8BAA8B,EAC9B,SAAS,EACT,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,EACpB,uBAAuB,EACvB,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,GAChB,MAAM,iBAAiB,CAAC;AAEzB,oCAAoC;AACpC,OAAO,EAKL,kBAAkB,EAClB,OAAO,EACP,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,qBAAqB,EACrB,eAAe,EACf,kBAAkB,EAClB,qBAAqB,EACrB,eAAe,EACf,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,GACd,MAAM,eAAe,CAAC"}
|
package/dist/layout-preset.d.ts
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Pure functions for converting FrameModel layout state to JSON-friendly
|
|
5
5
|
* structures and applying them back.
|
|
6
6
|
*/
|
|
7
|
-
import type { FrameModel } from './app-frame.js';
|
|
7
|
+
import type { FrameModel } from './app-frame-types.js';
|
|
8
8
|
import type { PanelVisibilityState } from './panel-state.js';
|
|
9
9
|
import type { PanelMaximizeState } from './panel-state.js';
|
|
10
10
|
import type { PanelDockState } from './panel-dock.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layout-preset.d.ts","sourceRoot":"","sources":["../src/layout-preset.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"layout-preset.d.ts","sourceRoot":"","sources":["../src/layout-preset.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,19 @@
|
|
|
1
|
-
import type { LayoutNode } from '@flyingrobots/bijou';
|
|
1
|
+
import type { LayoutNode, WritePort } from '@flyingrobots/bijou';
|
|
2
2
|
/**
|
|
3
3
|
* Registry of active motion components across frames.
|
|
4
4
|
*/
|
|
5
5
|
export declare class MotionReconciler {
|
|
6
6
|
private tracked;
|
|
7
|
+
private warnedTransitions;
|
|
7
8
|
/**
|
|
8
9
|
* Reconcile the target layout tree with the last known positions.
|
|
9
10
|
* If a node with a known key has moved, it initiates/continues a transition.
|
|
10
11
|
*/
|
|
11
|
-
reconcile(node: LayoutNode, dt: number): void;
|
|
12
|
+
reconcile(node: LayoutNode, dt: number, io?: Pick<WritePort, 'writeError'>): void;
|
|
13
|
+
private reconcileNode;
|
|
12
14
|
private processNode;
|
|
15
|
+
private warnOnLikelyUnstableKeys;
|
|
16
|
+
private pruneMissingKeys;
|
|
13
17
|
private step;
|
|
14
18
|
}
|
|
15
19
|
//# sourceMappingURL=reconciler.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reconciler.d.ts","sourceRoot":"","sources":["../../src/motion/reconciler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAc,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"reconciler.d.ts","sourceRoot":"","sources":["../../src/motion/reconciler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAc,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAY7E;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,OAAO,CAAoC;IACnD,OAAO,CAAC,iBAAiB,CAAqB;IAE9C;;;OAGG;IACH,SAAS,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,IAAI;IAQjF,OAAO,CAAC,aAAa;IAYrB,OAAO,CAAC,WAAW;IA+DnB,OAAO,CAAC,wBAAwB;IAoBhC,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,IAAI;CAIb"}
|
|
@@ -4,38 +4,48 @@ import { resolveSpringConfig, resolveTweenConfig, springStep, tweenStep, } from
|
|
|
4
4
|
*/
|
|
5
5
|
export class MotionReconciler {
|
|
6
6
|
tracked = new Map();
|
|
7
|
+
warnedTransitions = new Set();
|
|
7
8
|
/**
|
|
8
9
|
* Reconcile the target layout tree with the last known positions.
|
|
9
10
|
* If a node with a known key has moved, it initiates/continues a transition.
|
|
10
11
|
*/
|
|
11
|
-
reconcile(node, dt) {
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
reconcile(node, dt, io) {
|
|
13
|
+
const previousKeys = new Set(this.tracked.keys());
|
|
14
|
+
const seenKeys = new Set();
|
|
15
|
+
this.reconcileNode(node, dt, seenKeys);
|
|
16
|
+
this.warnOnLikelyUnstableKeys(previousKeys, seenKeys, io);
|
|
17
|
+
this.pruneMissingKeys(seenKeys);
|
|
18
|
+
}
|
|
19
|
+
reconcileNode(node, dt, seenKeys) {
|
|
20
|
+
const motionNode = node;
|
|
21
|
+
if (motionNode.motion != null) {
|
|
22
|
+
seenKeys.add(motionNode.motion.key);
|
|
23
|
+
this.processNode(motionNode, dt);
|
|
14
24
|
}
|
|
15
25
|
for (const child of node.children) {
|
|
16
|
-
this.
|
|
26
|
+
this.reconcileNode(child, dt, seenKeys);
|
|
17
27
|
}
|
|
18
28
|
}
|
|
19
29
|
processNode(node, dt) {
|
|
20
|
-
const key = node.id;
|
|
21
30
|
const motion = node.motion;
|
|
31
|
+
const key = motion.key;
|
|
22
32
|
const targetRect = { ...node.rect };
|
|
23
33
|
let state = this.tracked.get(key);
|
|
24
34
|
if (!state) {
|
|
25
|
-
const initialRect = resolveInitialRect(targetRect, motion
|
|
35
|
+
const initialRect = resolveInitialRect(targetRect, motion.initial);
|
|
26
36
|
state = {
|
|
27
37
|
key,
|
|
28
38
|
targetRect,
|
|
29
39
|
currentRect: initialRect,
|
|
30
40
|
velocity: { x: 0, y: 0, w: 0, h: 0 },
|
|
31
|
-
mode: motion
|
|
41
|
+
mode: motion.transition?.type ?? 'spring',
|
|
32
42
|
tweenElapsedMs: 0,
|
|
33
43
|
tweenFromRect: initialRect,
|
|
34
44
|
done: isSameRect(initialRect, targetRect),
|
|
35
45
|
};
|
|
36
46
|
this.tracked.set(key, state);
|
|
37
47
|
}
|
|
38
|
-
const nextMode = motion
|
|
48
|
+
const nextMode = motion.transition?.type ?? state.mode ?? 'spring';
|
|
39
49
|
const targetChanged = !isSameRect(state.targetRect, targetRect) || state.mode !== nextMode;
|
|
40
50
|
if (targetChanged) {
|
|
41
51
|
state.targetRect = targetRect;
|
|
@@ -50,13 +60,13 @@ export class MotionReconciler {
|
|
|
50
60
|
const needsUpdate = !isSameRect(state.currentRect, state.targetRect) || !state.done;
|
|
51
61
|
if (needsUpdate && dt > 0) {
|
|
52
62
|
if (state.mode === 'tween') {
|
|
53
|
-
const tween = tweenStep({ value: state.tweenElapsedMs <= 0 ? 0 : state.tweenElapsedMs, elapsed: state.tweenElapsedMs, done: false }, resolveTweenConfig({ duration: Math.max(1, motion
|
|
63
|
+
const tween = tweenStep({ value: state.tweenElapsedMs <= 0 ? 0 : state.tweenElapsedMs, elapsed: state.tweenElapsedMs, done: false }, resolveTweenConfig({ duration: Math.max(1, motion.transition?.duration ?? 300) }), dt * 1000);
|
|
54
64
|
state.tweenElapsedMs = tween.elapsed;
|
|
55
65
|
state.currentRect = lerpRect(state.tweenFromRect, state.targetRect, tween.value);
|
|
56
66
|
state.done = tween.done;
|
|
57
67
|
}
|
|
58
68
|
else {
|
|
59
|
-
const config = resolveSpringConfig(motion
|
|
69
|
+
const config = resolveSpringConfig(motion.transition?.spring ?? 'gentle');
|
|
60
70
|
const nextX = this.step(state.currentRect.x, state.targetRect.x, state.velocity.x, config, dt);
|
|
61
71
|
const nextY = this.step(state.currentRect.y, state.targetRect.y, state.velocity.y, config, dt);
|
|
62
72
|
const nextW = this.step(state.currentRect.width, state.targetRect.width, state.velocity.w, config, dt);
|
|
@@ -69,6 +79,26 @@ export class MotionReconciler {
|
|
|
69
79
|
// Apply interpolated rect to the layout node for the paint pass
|
|
70
80
|
node.rect = roundRect(state.currentRect);
|
|
71
81
|
}
|
|
82
|
+
warnOnLikelyUnstableKeys(previousKeys, seenKeys, io) {
|
|
83
|
+
const appeared = [...seenKeys].filter((key) => !previousKeys.has(key)).sort();
|
|
84
|
+
const disappeared = [...previousKeys].filter((key) => !seenKeys.has(key)).sort();
|
|
85
|
+
if (appeared.length === 0 || disappeared.length === 0)
|
|
86
|
+
return;
|
|
87
|
+
const signature = `${appeared.join(',')}|${disappeared.join(',')}`;
|
|
88
|
+
if (this.warnedTransitions.has(signature))
|
|
89
|
+
return;
|
|
90
|
+
this.warnedTransitions.add(signature);
|
|
91
|
+
io?.writeError(`[bijou-tui] motion(): keys [${appeared.join(', ')}] appeared on the same frame that `
|
|
92
|
+
+ `[${disappeared.join(', ')}] disappeared. This often means motion keys are unstable `
|
|
93
|
+
+ `across renders; use a stable key instead of a shifting index.\n`);
|
|
94
|
+
}
|
|
95
|
+
pruneMissingKeys(seenKeys) {
|
|
96
|
+
for (const key of this.tracked.keys()) {
|
|
97
|
+
if (!seenKeys.has(key)) {
|
|
98
|
+
this.tracked.delete(key);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
}
|
|
72
102
|
step(curr, target, vel, config, dt) {
|
|
73
103
|
const s = springStep({ value: curr, velocity: vel, done: false }, target, config, dt);
|
|
74
104
|
return { val: s.value, vel: s.velocity, done: s.done };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reconciler.js","sourceRoot":"","sources":["../../src/motion/reconciler.ts"],"names":[],"mappings":"AACA,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,UAAU,EACV,SAAS,GAEV,MAAM,cAAc,CAAC;AAKtB;;GAEG;AACH,MAAM,OAAO,gBAAgB;IACnB,OAAO,GAAG,IAAI,GAAG,EAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"reconciler.js","sourceRoot":"","sources":["../../src/motion/reconciler.ts"],"names":[],"mappings":"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"}
|
package/dist/motion/types.d.ts
CHANGED
|
@@ -6,7 +6,9 @@ import type { SpringConfig, SpringPreset } from '../spring.js';
|
|
|
6
6
|
export interface MotionOptions {
|
|
7
7
|
/**
|
|
8
8
|
* A unique key to track this component across frames.
|
|
9
|
-
*
|
|
9
|
+
* This must stay stable across renders. Index-like keys that appear
|
|
10
|
+
* and disappear together will trigger a runtime warning because they
|
|
11
|
+
* usually prevent interpolation from ever reusing prior motion state.
|
|
10
12
|
*/
|
|
11
13
|
key: string;
|
|
12
14
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/motion/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE/D;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/motion/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE/D;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;;;;OAKG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ;;;OAGG;IACH,UAAU,CAAC,EAAE;QACX,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;QAC1B,MAAM,CAAC,EAAE,YAAY,GAAG,YAAY,CAAC;QACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;IACF;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,6CAA6C;IAC7C,UAAU,EAAE,UAAU,CAAC;IACvB,oDAAoD;IACpD,WAAW,EAAE,UAAU,CAAC;IACxB,mCAAmC;IACnC,QAAQ,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACzD,uDAAuD;IACvD,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC;IACzB,0CAA0C;IAC1C,cAAc,EAAE,MAAM,CAAC;IACvB,0CAA0C;IAC1C,aAAa,EAAE,UAAU,CAAC;IAC1B,sCAAsC;IACtC,IAAI,EAAE,OAAO,CAAC;CACf"}
|
|
@@ -40,6 +40,12 @@ export interface NavigableTableOptions {
|
|
|
40
40
|
/** Maximum number of visible data rows (default: 10). */
|
|
41
41
|
readonly height?: number;
|
|
42
42
|
}
|
|
43
|
+
export interface NavigableTableInput extends NavigableTableOptions {
|
|
44
|
+
/** Optional focused row index for snapshot-style rendering. */
|
|
45
|
+
readonly focusRow?: number;
|
|
46
|
+
/** Optional scroll offset for snapshot-style rendering. */
|
|
47
|
+
readonly scrollY?: number;
|
|
48
|
+
}
|
|
43
49
|
/** Options for rendering the navigable table view. */
|
|
44
50
|
export interface NavTableRenderOptions {
|
|
45
51
|
/** Character(s) prepended to the focused row's first cell (default: `"\u25b8"`). */
|
|
@@ -49,15 +55,8 @@ export interface NavTableRenderOptions {
|
|
|
49
55
|
}
|
|
50
56
|
/** Options for rendering the navigable table into a `Surface`. */
|
|
51
57
|
export type NavTableSurfaceOptions = NavTableRenderOptions;
|
|
52
|
-
/**
|
|
53
|
-
* Create initial navigable table state.
|
|
54
|
-
*
|
|
55
|
-
* `height` defaults to 10 rows when not provided.
|
|
56
|
-
*
|
|
57
|
-
* @param options - Columns, rows, and optional viewport height.
|
|
58
|
-
* @returns Fresh table state with focus on the first row.
|
|
59
|
-
*/
|
|
60
58
|
export declare function createNavigableTableState(options: NavigableTableOptions): NavigableTableState;
|
|
59
|
+
export declare function createNavigableTableState(columns: readonly TableColumn[], rows: readonly (readonly string[])[], height?: number): NavigableTableState;
|
|
61
60
|
/**
|
|
62
61
|
* Move focus to the next row (wraps around).
|
|
63
62
|
*
|
|
@@ -96,7 +95,7 @@ export declare function navTablePageUp(state: NavigableTableState): NavigableTab
|
|
|
96
95
|
* @param options - Rendering options (focus indicator, context).
|
|
97
96
|
* @returns Rendered table string with focus indicator on the active row.
|
|
98
97
|
*/
|
|
99
|
-
export declare function navigableTable(
|
|
98
|
+
export declare function navigableTable(input: NavigableTableInput, options?: NavTableRenderOptions): string;
|
|
100
99
|
/**
|
|
101
100
|
* Render the navigable table directly into a `Surface`.
|
|
102
101
|
*
|
|
@@ -109,7 +108,7 @@ export declare function navigableTable(state: NavigableTableState, options?: Nav
|
|
|
109
108
|
* @param options - Rendering options (focus indicator, context).
|
|
110
109
|
* @returns Rendered table surface with focus indicator on the active row.
|
|
111
110
|
*/
|
|
112
|
-
export declare function navigableTableSurface(state:
|
|
111
|
+
export declare function navigableTableSurface(state: NavigableTableInput, options?: NavTableSurfaceOptions): Surface;
|
|
113
112
|
/**
|
|
114
113
|
* Create a preconfigured KeyMap for navigable table navigation.
|
|
115
114
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigable-table.d.ts","sourceRoot":"","sources":["../src/navigable-table.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"navigable-table.d.ts","sourceRoot":"","sources":["../src/navigable-table.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAKL,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,OAAO,EACb,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAgB,KAAK,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAM7D,sDAAsD;AACtD,MAAM,WAAW,mBAAmB;IAClC,uDAAuD;IACvD,QAAQ,CAAC,OAAO,EAAE,WAAW,EAAE,CAAC;IAChC,+CAA+C;IAC/C,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,CAAC;IAC9C,0CAA0C;IAC1C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,wDAAwD;IACxD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,2CAA2C;IAC3C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,wDAAwD;AACxD,MAAM,WAAW,qBAAqB;IACpC,uDAAuD;IACvD,QAAQ,CAAC,OAAO,EAAE,WAAW,EAAE,CAAC;IAChC,2CAA2C;IAC3C,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,CAAC;IAC9C,yDAAyD;IACzD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,mBAAoB,SAAQ,qBAAqB;IAChE,+DAA+D;IAC/D,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,2DAA2D;IAC3D,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAQD,sDAAsD;AACtD,MAAM,WAAW,qBAAqB;IACpC,oFAAoF;IACpF,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,6CAA6C;IAC7C,QAAQ,CAAC,GAAG,CAAC,EAAE,YAAY,CAAC;CAC7B;AAED,kEAAkE;AAClE,MAAM,MAAM,sBAAsB,GAAG,qBAAqB,CAAC;AA8C3D,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,qBAAqB,GAAG,mBAAmB,CAAC;AAC/F,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,SAAS,WAAW,EAAE,EAC/B,IAAI,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,EACpC,MAAM,CAAC,EAAE,MAAM,GACd,mBAAmB,CAAC;AAavB;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,mBAAmB,GAAG,mBAAmB,CAIjF;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,mBAAmB,GAAG,mBAAmB,CAIjF;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,mBAAmB,GAAG,mBAAmB,CAIhF;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,mBAAmB,CAI9E;AA8BD;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,MAAM,CAyBlG;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,mBAAmB,EAC1B,OAAO,CAAC,EAAE,sBAAsB,GAC/B,OAAO,CAsBT;AAMD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE;IAC3C,SAAS,EAAE,GAAG,CAAC;IACf,SAAS,EAAE,GAAG,CAAC;IACf,QAAQ,EAAE,GAAG,CAAC;IACd,MAAM,EAAE,GAAG,CAAC;IACZ,IAAI,EAAE,GAAG,CAAC;CACX,GAAG,MAAM,CAAC,GAAG,CAAC,CAcd"}
|
package/dist/navigable-table.js
CHANGED
|
@@ -16,8 +16,11 @@
|
|
|
16
16
|
* return [{ ...model, tableState: navTableFocusNext(model.tableState) }, []];
|
|
17
17
|
* ```
|
|
18
18
|
*/
|
|
19
|
-
import { table, tableSurface, } from '@flyingrobots/bijou';
|
|
19
|
+
import { sanitizeNonNegativeInt, sanitizePositiveInt, table, tableSurface, } from '@flyingrobots/bijou';
|
|
20
20
|
import { createKeyMap } from './keybindings.js';
|
|
21
|
+
function isNavigableTableOptions(value) {
|
|
22
|
+
return !Array.isArray(value);
|
|
23
|
+
}
|
|
21
24
|
// ---------------------------------------------------------------------------
|
|
22
25
|
// State creation
|
|
23
26
|
// ---------------------------------------------------------------------------
|
|
@@ -29,16 +32,30 @@ import { createKeyMap } from './keybindings.js';
|
|
|
29
32
|
* @param options - Columns, rows, and optional viewport height.
|
|
30
33
|
* @returns Fresh table state with focus on the first row.
|
|
31
34
|
*/
|
|
32
|
-
|
|
33
|
-
|
|
35
|
+
function resolveNavigableTableOptions(optionsOrColumns, rows, height) {
|
|
36
|
+
if (isNavigableTableOptions(optionsOrColumns)) {
|
|
37
|
+
return optionsOrColumns;
|
|
38
|
+
}
|
|
39
|
+
return { columns: [...optionsOrColumns], rows: rows ?? [], height };
|
|
40
|
+
}
|
|
41
|
+
function resolveNavigableTableState(input) {
|
|
42
|
+
const height = sanitizePositiveInt(input.height, 10);
|
|
43
|
+
const rows = input.rows.map((row) => [...row]);
|
|
44
|
+
const focusRow = rows.length === 0
|
|
45
|
+
? 0
|
|
46
|
+
: Math.min(sanitizeNonNegativeInt(input.focusRow, 0), rows.length - 1);
|
|
47
|
+
const scrollY = adjustScroll(focusRow, sanitizeNonNegativeInt(input.scrollY, 0), height, rows.length);
|
|
34
48
|
return {
|
|
35
|
-
columns: [...
|
|
36
|
-
rows
|
|
37
|
-
focusRow
|
|
38
|
-
scrollY
|
|
49
|
+
columns: [...input.columns],
|
|
50
|
+
rows,
|
|
51
|
+
focusRow,
|
|
52
|
+
scrollY,
|
|
39
53
|
height,
|
|
40
54
|
};
|
|
41
55
|
}
|
|
56
|
+
export function createNavigableTableState(optionsOrColumns, rows, height) {
|
|
57
|
+
return resolveNavigableTableState(resolveNavigableTableOptions(optionsOrColumns, rows, height));
|
|
58
|
+
}
|
|
42
59
|
// ---------------------------------------------------------------------------
|
|
43
60
|
// State transformers
|
|
44
61
|
// ---------------------------------------------------------------------------
|
|
@@ -126,7 +143,8 @@ function adjustScroll(focusRow, scrollY, height, totalRows) {
|
|
|
126
143
|
* @param options - Rendering options (focus indicator, context).
|
|
127
144
|
* @returns Rendered table string with focus indicator on the active row.
|
|
128
145
|
*/
|
|
129
|
-
export function navigableTable(
|
|
146
|
+
export function navigableTable(input, options) {
|
|
147
|
+
const state = resolveNavigableTableState(input);
|
|
130
148
|
if (state.rows.length === 0) {
|
|
131
149
|
return table({ columns: state.columns, rows: [], ctx: options?.ctx });
|
|
132
150
|
}
|
|
@@ -160,20 +178,21 @@ export function navigableTable(state, options) {
|
|
|
160
178
|
* @returns Rendered table surface with focus indicator on the active row.
|
|
161
179
|
*/
|
|
162
180
|
export function navigableTableSurface(state, options) {
|
|
163
|
-
|
|
164
|
-
|
|
181
|
+
const resolvedState = resolveNavigableTableState(state);
|
|
182
|
+
if (resolvedState.rows.length === 0) {
|
|
183
|
+
return tableSurface({ columns: resolvedState.columns, rows: [], ctx: options?.ctx });
|
|
165
184
|
}
|
|
166
185
|
const indicator = options?.focusIndicator ?? '\u25b8';
|
|
167
186
|
const pad = ' '.repeat(indicator.length);
|
|
168
|
-
const visibleRows =
|
|
187
|
+
const visibleRows = resolvedState.rows.slice(resolvedState.scrollY, resolvedState.scrollY + resolvedState.height);
|
|
169
188
|
const decoratedRows = visibleRows.map((row, i) => {
|
|
170
|
-
const globalIndex =
|
|
171
|
-
const prefix = globalIndex ===
|
|
189
|
+
const globalIndex = resolvedState.scrollY + i;
|
|
190
|
+
const prefix = globalIndex === resolvedState.focusRow ? indicator : pad;
|
|
172
191
|
const firstCol = `${prefix} ${row[0] ?? ''}`;
|
|
173
192
|
return [firstCol, ...row.slice(1)];
|
|
174
193
|
});
|
|
175
194
|
return tableSurface({
|
|
176
|
-
columns:
|
|
195
|
+
columns: resolvedState.columns,
|
|
177
196
|
rows: decoratedRows,
|
|
178
197
|
ctx: options?.ctx,
|
|
179
198
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigable-table.js","sourceRoot":"","sources":["../src/navigable-table.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EACL,KAAK,EACL,YAAY,GAIb,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAe,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"navigable-table.js","sourceRoot":"","sources":["../src/navigable-table.ts"],"names":[],"mappings":"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"}
|
package/dist/notification.d.ts
CHANGED
|
@@ -64,11 +64,26 @@ export interface RenderNotificationHistoryOptions {
|
|
|
64
64
|
readonly scroll?: number;
|
|
65
65
|
readonly filter?: NotificationHistoryFilter;
|
|
66
66
|
readonly ctx?: BijouContext;
|
|
67
|
+
readonly labels?: NotificationHistoryLabels;
|
|
67
68
|
}
|
|
68
69
|
export interface RenderNotificationReviewEntrySurfaceOptions {
|
|
69
70
|
readonly width: number;
|
|
70
71
|
readonly ctx?: BijouContext;
|
|
71
72
|
readonly metaLabel?: string;
|
|
73
|
+
readonly actionLabel?: (label: string) => string;
|
|
74
|
+
}
|
|
75
|
+
export interface NotificationHistoryLabels {
|
|
76
|
+
readonly filterLabel?: (filter: NotificationHistoryFilter) => string;
|
|
77
|
+
readonly headerLabel?: (args: {
|
|
78
|
+
readonly filterLabel: string;
|
|
79
|
+
readonly start: number;
|
|
80
|
+
readonly end: number;
|
|
81
|
+
readonly total: number;
|
|
82
|
+
}) => string;
|
|
83
|
+
readonly emptyLabel?: (args: {
|
|
84
|
+
readonly filterLabel: string;
|
|
85
|
+
}) => string;
|
|
86
|
+
readonly actionLabel?: (label: string) => string;
|
|
72
87
|
}
|
|
73
88
|
export type NotificationMouseTargetKind = 'dismiss' | 'action' | 'body';
|
|
74
89
|
export interface NotificationMouseTarget<Msg> {
|