@inhuman.tools/quickdraw 0.0.0-stage → 0.2.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/LICENSE.md +7 -0
- package/README.md +101 -2
- package/aurora.vert +168 -0
- package/dist/bench/host.d.ts +62 -0
- package/dist/bench/host.d.ts.map +1 -0
- package/dist/bench/host.js +77 -0
- package/dist/bench/host.js.map +1 -0
- package/dist/bench/main.d.ts +6 -0
- package/dist/bench/main.d.ts.map +1 -0
- package/dist/bench/main.js +118 -0
- package/dist/bench/main.js.map +1 -0
- package/dist/bench/model.d.ts +36 -0
- package/dist/bench/model.d.ts.map +1 -0
- package/dist/bench/model.js +112 -0
- package/dist/bench/model.js.map +1 -0
- package/dist/bench/tea.d.ts +14 -0
- package/dist/bench/tea.d.ts.map +1 -0
- package/dist/bench/tea.js +6 -0
- package/dist/bench/tea.js.map +1 -0
- package/dist/bench/view.d.ts +9 -0
- package/dist/bench/view.d.ts.map +1 -0
- package/dist/bench/view.js +88 -0
- package/dist/bench/view.js.map +1 -0
- package/dist/bench/worker.d.ts +6 -0
- package/dist/bench/worker.d.ts.map +1 -0
- package/dist/bench/worker.js +46 -0
- package/dist/bench/worker.js.map +1 -0
- package/dist/buffer/bgfx-mark.d.ts +32 -0
- package/dist/buffer/bgfx-mark.d.ts.map +1 -0
- package/dist/buffer/bgfx-mark.js +43 -0
- package/dist/buffer/bgfx-mark.js.map +1 -0
- package/dist/buffer/index.d.ts +191 -0
- package/dist/buffer/index.d.ts.map +1 -0
- package/dist/buffer/index.js +353 -0
- package/dist/buffer/index.js.map +1 -0
- package/dist/capabilities/env.d.ts +23 -0
- package/dist/capabilities/env.d.ts.map +1 -0
- package/dist/capabilities/env.js +35 -0
- package/dist/capabilities/env.js.map +1 -0
- package/dist/capabilities/index.d.ts +13 -0
- package/dist/capabilities/index.d.ts.map +1 -0
- package/dist/capabilities/index.js +13 -0
- package/dist/capabilities/index.js.map +1 -0
- package/dist/capabilities/parse.d.ts +41 -0
- package/dist/capabilities/parse.d.ts.map +1 -0
- package/dist/capabilities/parse.js +86 -0
- package/dist/capabilities/parse.js.map +1 -0
- package/dist/capabilities/probe.d.ts +37 -0
- package/dist/capabilities/probe.d.ts.map +1 -0
- package/dist/capabilities/probe.js +75 -0
- package/dist/capabilities/probe.js.map +1 -0
- package/dist/capabilities/sequences.d.ts +33 -0
- package/dist/capabilities/sequences.d.ts.map +1 -0
- package/dist/capabilities/sequences.js +36 -0
- package/dist/capabilities/sequences.js.map +1 -0
- package/dist/capabilities/types.d.ts +25 -0
- package/dist/capabilities/types.d.ts.map +1 -0
- package/dist/capabilities/types.js +5 -0
- package/dist/capabilities/types.js.map +1 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +11 -0
- package/dist/index.js.map +1 -0
- package/dist/input/decode.d.ts +167 -0
- package/dist/input/decode.d.ts.map +1 -0
- package/dist/input/decode.js +825 -0
- package/dist/input/decode.js.map +1 -0
- package/dist/input/draft.d.ts +85 -0
- package/dist/input/draft.d.ts.map +1 -0
- package/dist/input/draft.js +276 -0
- package/dist/input/draft.js.map +1 -0
- package/dist/input/index.d.ts +3 -0
- package/dist/input/index.d.ts.map +1 -0
- package/dist/input/index.js +3 -0
- package/dist/input/index.js.map +1 -0
- package/dist/input/prompt-blocks.d.ts +58 -0
- package/dist/input/prompt-blocks.d.ts.map +1 -0
- package/dist/input/prompt-blocks.js +48 -0
- package/dist/input/prompt-blocks.js.map +1 -0
- package/dist/input/rich-draft.d.ts +46 -0
- package/dist/input/rich-draft.d.ts.map +1 -0
- package/dist/input/rich-draft.js +391 -0
- package/dist/input/rich-draft.js.map +1 -0
- package/dist/input/rich-hit.d.ts +17 -0
- package/dist/input/rich-hit.d.ts.map +1 -0
- package/dist/input/rich-hit.js +89 -0
- package/dist/input/rich-hit.js.map +1 -0
- package/dist/input/rich-intake.d.ts +16 -0
- package/dist/input/rich-intake.d.ts.map +1 -0
- package/dist/input/rich-intake.js +22 -0
- package/dist/input/rich-intake.js.map +1 -0
- package/dist/input/rich-paint.d.ts +13 -0
- package/dist/input/rich-paint.d.ts.map +1 -0
- package/dist/input/rich-paint.js +18 -0
- package/dist/input/rich-paint.js.map +1 -0
- package/dist/internals/bgfx/index.d.ts +17 -0
- package/dist/internals/bgfx/index.d.ts.map +1 -0
- package/dist/internals/bgfx/index.js +17 -0
- package/dist/internals/bgfx/index.js.map +1 -0
- package/dist/internals/bgfx/materialize.d.ts +31 -0
- package/dist/internals/bgfx/materialize.d.ts.map +1 -0
- package/dist/internals/bgfx/materialize.js +117 -0
- package/dist/internals/bgfx/materialize.js.map +1 -0
- package/dist/internals/bgfx/opacity.d.ts +37 -0
- package/dist/internals/bgfx/opacity.d.ts.map +1 -0
- package/dist/internals/bgfx/opacity.js +76 -0
- package/dist/internals/bgfx/opacity.js.map +1 -0
- package/dist/internals/bgfx/registry.d.ts +13 -0
- package/dist/internals/bgfx/registry.d.ts.map +1 -0
- package/dist/internals/bgfx/registry.js +24 -0
- package/dist/internals/bgfx/registry.js.map +1 -0
- package/dist/internals/bgfx/sab-layout.d.ts +61 -0
- package/dist/internals/bgfx/sab-layout.d.ts.map +1 -0
- package/dist/internals/bgfx/sab-layout.js +107 -0
- package/dist/internals/bgfx/sab-layout.js.map +1 -0
- package/dist/internals/bgfx/shader-frame-host.d.ts +22 -0
- package/dist/internals/bgfx/shader-frame-host.d.ts.map +1 -0
- package/dist/internals/bgfx/shader-frame-host.js +165 -0
- package/dist/internals/bgfx/shader-frame-host.js.map +1 -0
- package/dist/internals/bgfx/shadertoy-catalog.d.ts +41 -0
- package/dist/internals/bgfx/shadertoy-catalog.d.ts.map +1 -0
- package/dist/internals/bgfx/shadertoy-catalog.js +200 -0
- package/dist/internals/bgfx/shadertoy-catalog.js.map +1 -0
- package/dist/internals/bgfx/shadertoy-gl.d.ts +38 -0
- package/dist/internals/bgfx/shadertoy-gl.d.ts.map +1 -0
- package/dist/internals/bgfx/shadertoy-gl.js +283 -0
- package/dist/internals/bgfx/shadertoy-gl.js.map +1 -0
- package/dist/internals/bgfx/types.d.ts +51 -0
- package/dist/internals/bgfx/types.d.ts.map +1 -0
- package/dist/internals/bgfx/types.js +14 -0
- package/dist/internals/bgfx/types.js.map +1 -0
- package/dist/internals/bgfx-worker.d.ts +6 -0
- package/dist/internals/bgfx-worker.d.ts.map +1 -0
- package/dist/internals/bgfx-worker.js +131 -0
- package/dist/internals/bgfx-worker.js.map +1 -0
- package/dist/layout/birth.d.ts +77 -0
- package/dist/layout/birth.d.ts.map +1 -0
- package/dist/layout/birth.js +148 -0
- package/dist/layout/birth.js.map +1 -0
- package/dist/layout/children.d.ts +5 -0
- package/dist/layout/children.d.ts.map +1 -0
- package/dist/layout/children.js +19 -0
- package/dist/layout/children.js.map +1 -0
- package/dist/layout/chrome_frame.d.ts +254 -0
- package/dist/layout/chrome_frame.d.ts.map +1 -0
- package/dist/layout/chrome_frame.js +1080 -0
- package/dist/layout/chrome_frame.js.map +1 -0
- package/dist/layout/chrome_mask.d.ts +40 -0
- package/dist/layout/chrome_mask.d.ts.map +1 -0
- package/dist/layout/chrome_mask.js +150 -0
- package/dist/layout/chrome_mask.js.map +1 -0
- package/dist/layout/engine.d.ts +49 -0
- package/dist/layout/engine.d.ts.map +1 -0
- package/dist/layout/engine.js +1269 -0
- package/dist/layout/engine.js.map +1 -0
- package/dist/layout/flex.d.ts +36 -0
- package/dist/layout/flex.d.ts.map +1 -0
- package/dist/layout/flex.js +111 -0
- package/dist/layout/flex.js.map +1 -0
- package/dist/layout/grid.d.ts +36 -0
- package/dist/layout/grid.d.ts.map +1 -0
- package/dist/layout/grid.js +126 -0
- package/dist/layout/grid.js.map +1 -0
- package/dist/layout/index.d.ts +30 -0
- package/dist/layout/index.d.ts.map +1 -0
- package/dist/layout/index.js +30 -0
- package/dist/layout/index.js.map +1 -0
- package/dist/layout/indication.d.ts +34 -0
- package/dist/layout/indication.d.ts.map +1 -0
- package/dist/layout/indication.js +68 -0
- package/dist/layout/indication.js.map +1 -0
- package/dist/layout/length.d.ts +18 -0
- package/dist/layout/length.d.ts.map +1 -0
- package/dist/layout/length.js +24 -0
- package/dist/layout/length.js.map +1 -0
- package/dist/layout/live_paint.d.ts +145 -0
- package/dist/layout/live_paint.d.ts.map +1 -0
- package/dist/layout/live_paint.js +255 -0
- package/dist/layout/live_paint.js.map +1 -0
- package/dist/layout/markdown.d.ts +22 -0
- package/dist/layout/markdown.d.ts.map +1 -0
- package/dist/layout/markdown.js +167 -0
- package/dist/layout/markdown.js.map +1 -0
- package/dist/layout/measure.d.ts +46 -0
- package/dist/layout/measure.d.ts.map +1 -0
- package/dist/layout/measure.js +307 -0
- package/dist/layout/measure.js.map +1 -0
- package/dist/layout/paint-hotkey.d.ts +45 -0
- package/dist/layout/paint-hotkey.d.ts.map +1 -0
- package/dist/layout/paint-hotkey.js +152 -0
- package/dist/layout/paint-hotkey.js.map +1 -0
- package/dist/layout/paint.d.ts +25 -0
- package/dist/layout/paint.d.ts.map +1 -0
- package/dist/layout/paint.js +189 -0
- package/dist/layout/paint.js.map +1 -0
- package/dist/layout/paint_theme.d.ts +85 -0
- package/dist/layout/paint_theme.d.ts.map +1 -0
- package/dist/layout/paint_theme.js +76 -0
- package/dist/layout/paint_theme.js.map +1 -0
- package/dist/layout/progress.d.ts +31 -0
- package/dist/layout/progress.d.ts.map +1 -0
- package/dist/layout/progress.js +83 -0
- package/dist/layout/progress.js.map +1 -0
- package/dist/layout/selection.d.ts +136 -0
- package/dist/layout/selection.d.ts.map +1 -0
- package/dist/layout/selection.js +312 -0
- package/dist/layout/selection.js.map +1 -0
- package/dist/layout/selection_gesture.d.ts +88 -0
- package/dist/layout/selection_gesture.d.ts.map +1 -0
- package/dist/layout/selection_gesture.js +239 -0
- package/dist/layout/selection_gesture.js.map +1 -0
- package/dist/layout/selection_paint.d.ts +47 -0
- package/dist/layout/selection_paint.d.ts.map +1 -0
- package/dist/layout/selection_paint.js +320 -0
- package/dist/layout/selection_paint.js.map +1 -0
- package/dist/layout/serialize.d.ts +49 -0
- package/dist/layout/serialize.d.ts.map +1 -0
- package/dist/layout/serialize.js +437 -0
- package/dist/layout/serialize.js.map +1 -0
- package/dist/layout/squeeze.d.ts +58 -0
- package/dist/layout/squeeze.d.ts.map +1 -0
- package/dist/layout/squeeze.js +239 -0
- package/dist/layout/squeeze.js.map +1 -0
- package/dist/layout/text.d.ts +44 -0
- package/dist/layout/text.d.ts.map +1 -0
- package/dist/layout/text.js +230 -0
- package/dist/layout/text.js.map +1 -0
- package/dist/layout/theme_store.d.ts +21 -0
- package/dist/layout/theme_store.d.ts.map +1 -0
- package/dist/layout/theme_store.js +133 -0
- package/dist/layout/theme_store.js.map +1 -0
- package/dist/layout/types.d.ts +564 -0
- package/dist/layout/types.d.ts.map +1 -0
- package/dist/layout/types.js +2 -0
- package/dist/layout/types.js.map +1 -0
- package/dist/layout/visual_draft.d.ts +60 -0
- package/dist/layout/visual_draft.d.ts.map +1 -0
- package/dist/layout/visual_draft.js +199 -0
- package/dist/layout/visual_draft.js.map +1 -0
- package/dist/lexicon/color.d.ts +22 -0
- package/dist/lexicon/color.d.ts.map +1 -0
- package/dist/lexicon/color.js +6 -0
- package/dist/lexicon/color.js.map +1 -0
- package/dist/lexicon/index.d.ts +15 -0
- package/dist/lexicon/index.d.ts.map +1 -0
- package/dist/lexicon/index.js +15 -0
- package/dist/lexicon/index.js.map +1 -0
- package/dist/lexicon/prominence.d.ts +46 -0
- package/dist/lexicon/prominence.d.ts.map +1 -0
- package/dist/lexicon/prominence.js +73 -0
- package/dist/lexicon/prominence.js.map +1 -0
- package/dist/lexicon/quarantine.d.ts +21 -0
- package/dist/lexicon/quarantine.d.ts.map +1 -0
- package/dist/lexicon/quarantine.js +15 -0
- package/dist/lexicon/quarantine.js.map +1 -0
- package/dist/lexicon/roles.d.ts +37 -0
- package/dist/lexicon/roles.d.ts.map +1 -0
- package/dist/lexicon/roles.js +52 -0
- package/dist/lexicon/roles.js.map +1 -0
- package/dist/lexicon/tiers.d.ts +18 -0
- package/dist/lexicon/tiers.d.ts.map +1 -0
- package/dist/lexicon/tiers.js +17 -0
- package/dist/lexicon/tiers.js.map +1 -0
- package/dist/measure/index.d.ts +43 -0
- package/dist/measure/index.d.ts.map +1 -0
- package/dist/measure/index.js +120 -0
- package/dist/measure/index.js.map +1 -0
- package/dist/render.d.ts +72 -0
- package/dist/render.d.ts.map +1 -0
- package/dist/render.js +164 -0
- package/dist/render.js.map +1 -0
- package/dist/runtime/agents_keys.d.ts +8 -0
- package/dist/runtime/agents_keys.d.ts.map +1 -0
- package/dist/runtime/agents_keys.js +24 -0
- package/dist/runtime/agents_keys.js.map +1 -0
- package/dist/runtime/agents_peek.d.ts +44 -0
- package/dist/runtime/agents_peek.d.ts.map +1 -0
- package/dist/runtime/agents_peek.js +96 -0
- package/dist/runtime/agents_peek.js.map +1 -0
- package/dist/runtime/agents_preview.d.ts +27 -0
- package/dist/runtime/agents_preview.d.ts.map +1 -0
- package/dist/runtime/agents_preview.js +122 -0
- package/dist/runtime/agents_preview.js.map +1 -0
- package/dist/runtime/box_bus.d.ts +144 -0
- package/dist/runtime/box_bus.d.ts.map +1 -0
- package/dist/runtime/box_bus.js +74 -0
- package/dist/runtime/box_bus.js.map +1 -0
- package/dist/runtime/clipboard-image.d.ts +20 -0
- package/dist/runtime/clipboard-image.d.ts.map +1 -0
- package/dist/runtime/clipboard-image.js +62 -0
- package/dist/runtime/clipboard-image.js.map +1 -0
- package/dist/runtime/copy_toast.d.ts +46 -0
- package/dist/runtime/copy_toast.d.ts.map +1 -0
- package/dist/runtime/copy_toast.js +117 -0
- package/dist/runtime/copy_toast.js.map +1 -0
- package/dist/runtime/echo.d.ts +41 -0
- package/dist/runtime/echo.d.ts.map +1 -0
- package/dist/runtime/echo.js +112 -0
- package/dist/runtime/echo.js.map +1 -0
- package/dist/runtime/frame.d.ts +79 -0
- package/dist/runtime/frame.d.ts.map +1 -0
- package/dist/runtime/frame.js +258 -0
- package/dist/runtime/frame.js.map +1 -0
- package/dist/runtime/index.d.ts +16 -0
- package/dist/runtime/index.d.ts.map +1 -0
- package/dist/runtime/index.js +16 -0
- package/dist/runtime/index.js.map +1 -0
- package/dist/runtime/key_buffer.d.ts +19 -0
- package/dist/runtime/key_buffer.d.ts.map +1 -0
- package/dist/runtime/key_buffer.js +24 -0
- package/dist/runtime/key_buffer.js.map +1 -0
- package/dist/runtime/keys.d.ts +66 -0
- package/dist/runtime/keys.d.ts.map +1 -0
- package/dist/runtime/keys.js +220 -0
- package/dist/runtime/keys.js.map +1 -0
- package/dist/runtime/paint_snapshot.d.ts +9 -0
- package/dist/runtime/paint_snapshot.d.ts.map +1 -0
- package/dist/runtime/paint_snapshot.js +8 -0
- package/dist/runtime/paint_snapshot.js.map +1 -0
- package/dist/runtime/paint_source.d.ts +266 -0
- package/dist/runtime/paint_source.d.ts.map +1 -0
- package/dist/runtime/paint_source.js +532 -0
- package/dist/runtime/paint_source.js.map +1 -0
- package/dist/runtime/present_loop.d.ts +11 -0
- package/dist/runtime/present_loop.d.ts.map +1 -0
- package/dist/runtime/present_loop.js +46 -0
- package/dist/runtime/present_loop.js.map +1 -0
- package/dist/runtime/present_profile.d.ts +58 -0
- package/dist/runtime/present_profile.d.ts.map +1 -0
- package/dist/runtime/present_profile.js +130 -0
- package/dist/runtime/present_profile.js.map +1 -0
- package/dist/runtime/raster.d.ts +24 -0
- package/dist/runtime/raster.d.ts.map +1 -0
- package/dist/runtime/raster.js +43 -0
- package/dist/runtime/raster.js.map +1 -0
- package/dist/runtime/renderer.d.ts +151 -0
- package/dist/runtime/renderer.d.ts.map +1 -0
- package/dist/runtime/renderer.js +1607 -0
- package/dist/runtime/renderer.js.map +1 -0
- package/dist/runtime/screenshot.d.ts +9 -0
- package/dist/runtime/screenshot.d.ts.map +1 -0
- package/dist/runtime/screenshot.js +111 -0
- package/dist/runtime/screenshot.js.map +1 -0
- package/dist/runtime/selection_host.d.ts +41 -0
- package/dist/runtime/selection_host.d.ts.map +1 -0
- package/dist/runtime/selection_host.js +190 -0
- package/dist/runtime/selection_host.js.map +1 -0
- package/dist/runtime/stderr_hold.d.ts +16 -0
- package/dist/runtime/stderr_hold.d.ts.map +1 -0
- package/dist/runtime/stderr_hold.js +23 -0
- package/dist/runtime/stderr_hold.js.map +1 -0
- package/dist/runtime/thought_birth.d.ts +25 -0
- package/dist/runtime/thought_birth.d.ts.map +1 -0
- package/dist/runtime/thought_birth.js +122 -0
- package/dist/runtime/thought_birth.js.map +1 -0
- package/dist/runtime/thought_collapsed.d.ts +35 -0
- package/dist/runtime/thought_collapsed.d.ts.map +1 -0
- package/dist/runtime/thought_collapsed.js +94 -0
- package/dist/runtime/thought_collapsed.js.map +1 -0
- package/dist/runtime/tty.d.ts +58 -0
- package/dist/runtime/tty.d.ts.map +1 -0
- package/dist/runtime/tty.js +130 -0
- package/dist/runtime/tty.js.map +1 -0
- package/dist/theme/ansi16.d.ts +34 -0
- package/dist/theme/ansi16.d.ts.map +1 -0
- package/dist/theme/ansi16.js +181 -0
- package/dist/theme/ansi16.js.map +1 -0
- package/dist/theme/ansi256.d.ts +15 -0
- package/dist/theme/ansi256.d.ts.map +1 -0
- package/dist/theme/ansi256.js +94 -0
- package/dist/theme/ansi256.js.map +1 -0
- package/dist/theme/ground.d.ts +8 -0
- package/dist/theme/ground.d.ts.map +1 -0
- package/dist/theme/ground.js +11 -0
- package/dist/theme/ground.js.map +1 -0
- package/dist/theme/index.d.ts +10 -0
- package/dist/theme/index.d.ts.map +1 -0
- package/dist/theme/index.js +10 -0
- package/dist/theme/index.js.map +1 -0
- package/dist/theme/region.d.ts +42 -0
- package/dist/theme/region.d.ts.map +1 -0
- package/dist/theme/region.js +105 -0
- package/dist/theme/region.js.map +1 -0
- package/dist/theme/resolver.d.ts +126 -0
- package/dist/theme/resolver.d.ts.map +1 -0
- package/dist/theme/resolver.js +366 -0
- package/dist/theme/resolver.js.map +1 -0
- package/dist/theme/salience.d.ts +90 -0
- package/dist/theme/salience.d.ts.map +1 -0
- package/dist/theme/salience.js +208 -0
- package/dist/theme/salience.js.map +1 -0
- package/dist/theme/seeds.d.ts +113 -0
- package/dist/theme/seeds.d.ts.map +1 -0
- package/dist/theme/seeds.js +52 -0
- package/dist/theme/seeds.js.map +1 -0
- package/dist/theme/selection.d.ts +94 -0
- package/dist/theme/selection.d.ts.map +1 -0
- package/dist/theme/selection.js +135 -0
- package/dist/theme/selection.js.map +1 -0
- package/dist/theme/theme.d.ts +41 -0
- package/dist/theme/theme.d.ts.map +1 -0
- package/dist/theme/theme.js +34 -0
- package/dist/theme/theme.js.map +1 -0
- package/dist/widgets/composer-caret.d.ts +47 -0
- package/dist/widgets/composer-caret.d.ts.map +1 -0
- package/dist/widgets/composer-caret.js +90 -0
- package/dist/widgets/composer-caret.js.map +1 -0
- package/dist/widgets/composer-click.d.ts +30 -0
- package/dist/widgets/composer-click.d.ts.map +1 -0
- package/dist/widgets/composer-click.js +89 -0
- package/dist/widgets/composer-click.js.map +1 -0
- package/dist/widgets/composer-command.d.ts +64 -0
- package/dist/widgets/composer-command.d.ts.map +1 -0
- package/dist/widgets/composer-command.js +127 -0
- package/dist/widgets/composer-command.js.map +1 -0
- package/dist/widgets/composer-frame.d.ts +74 -0
- package/dist/widgets/composer-frame.d.ts.map +1 -0
- package/dist/widgets/composer-frame.js +284 -0
- package/dist/widgets/composer-frame.js.map +1 -0
- package/dist/widgets/composer-picker.d.ts +89 -0
- package/dist/widgets/composer-picker.d.ts.map +1 -0
- package/dist/widgets/composer-picker.js +240 -0
- package/dist/widgets/composer-picker.js.map +1 -0
- package/dist/widgets/diff.d.ts +11 -0
- package/dist/widgets/diff.d.ts.map +1 -0
- package/dist/widgets/diff.js +19 -0
- package/dist/widgets/diff.js.map +1 -0
- package/dist/widgets/expand.d.ts +28 -0
- package/dist/widgets/expand.d.ts.map +1 -0
- package/dist/widgets/expand.js +94 -0
- package/dist/widgets/expand.js.map +1 -0
- package/dist/widgets/index.d.ts +126 -0
- package/dist/widgets/index.d.ts.map +1 -0
- package/dist/widgets/index.js +455 -0
- package/dist/widgets/index.js.map +1 -0
- package/dist/widgets/internals/arrival-lang.d.ts +88 -0
- package/dist/widgets/internals/arrival-lang.d.ts.map +1 -0
- package/dist/widgets/internals/arrival-lang.js +211 -0
- package/dist/widgets/internals/arrival-lang.js.map +1 -0
- package/dist/widgets/internals/diff-expand.d.ts +93 -0
- package/dist/widgets/internals/diff-expand.d.ts.map +1 -0
- package/dist/widgets/internals/diff-expand.js +1106 -0
- package/dist/widgets/internals/diff-expand.js.map +1 -0
- package/dist/widgets/internals/embedded-syntax.d.ts +62 -0
- package/dist/widgets/internals/embedded-syntax.d.ts.map +1 -0
- package/dist/widgets/internals/embedded-syntax.js +465 -0
- package/dist/widgets/internals/embedded-syntax.js.map +1 -0
- package/dist/widgets/internals/markdown-expand.d.ts +57 -0
- package/dist/widgets/internals/markdown-expand.d.ts.map +1 -0
- package/dist/widgets/internals/markdown-expand.js +980 -0
- package/dist/widgets/internals/markdown-expand.js.map +1 -0
- package/dist/widgets/internals/overlay-syntax.d.ts +24 -0
- package/dist/widgets/internals/overlay-syntax.d.ts.map +1 -0
- package/dist/widgets/internals/overlay-syntax.js +90 -0
- package/dist/widgets/internals/overlay-syntax.js.map +1 -0
- package/dist/widgets/internals/pierre-parse/cleanLastNewline.d.ts +6 -0
- package/dist/widgets/internals/pierre-parse/cleanLastNewline.d.ts.map +1 -0
- package/dist/widgets/internals/pierre-parse/cleanLastNewline.js +8 -0
- package/dist/widgets/internals/pierre-parse/cleanLastNewline.js.map +1 -0
- package/dist/widgets/internals/pierre-parse/constants.d.ts +13 -0
- package/dist/widgets/internals/pierre-parse/constants.d.ts.map +1 -0
- package/dist/widgets/internals/pierre-parse/constants.js +13 -0
- package/dist/widgets/internals/pierre-parse/constants.js.map +1 -0
- package/dist/widgets/internals/pierre-parse/detachString.d.ts +3 -0
- package/dist/widgets/internals/pierre-parse/detachString.d.ts.map +1 -0
- package/dist/widgets/internals/pierre-parse/detachString.js +24 -0
- package/dist/widgets/internals/pierre-parse/detachString.js.map +1 -0
- package/dist/widgets/internals/pierre-parse/index.d.ts +8 -0
- package/dist/widgets/internals/pierre-parse/index.d.ts.map +1 -0
- package/dist/widgets/internals/pierre-parse/index.js +8 -0
- package/dist/widgets/internals/pierre-parse/index.js.map +1 -0
- package/dist/widgets/internals/pierre-parse/parseDiffFromFile.d.ts +15 -0
- package/dist/widgets/internals/pierre-parse/parseDiffFromFile.d.ts.map +1 -0
- package/dist/widgets/internals/pierre-parse/parseDiffFromFile.js +39 -0
- package/dist/widgets/internals/pierre-parse/parseDiffFromFile.js.map +1 -0
- package/dist/widgets/internals/pierre-parse/parsePatchFiles.d.ts +11 -0
- package/dist/widgets/internals/pierre-parse/parsePatchFiles.d.ts.map +1 -0
- package/dist/widgets/internals/pierre-parse/parsePatchFiles.js +621 -0
- package/dist/widgets/internals/pierre-parse/parsePatchFiles.js.map +1 -0
- package/dist/widgets/internals/pierre-parse/types.d.ts +73 -0
- package/dist/widgets/internals/pierre-parse/types.d.ts.map +1 -0
- package/dist/widgets/internals/pierre-parse/types.js +7 -0
- package/dist/widgets/internals/pierre-parse/types.js.map +1 -0
- package/dist/widgets/internals/syntax.d.ts +55 -0
- package/dist/widgets/internals/syntax.d.ts.map +1 -0
- package/dist/widgets/internals/syntax.js +261 -0
- package/dist/widgets/internals/syntax.js.map +1 -0
- package/dist/widgets/markdown.d.ts +14 -0
- package/dist/widgets/markdown.d.ts.map +1 -0
- package/dist/widgets/markdown.js +9 -0
- package/dist/widgets/markdown.js.map +1 -0
- package/dist/widgets/shadow-stream.d.ts +88 -0
- package/dist/widgets/shadow-stream.d.ts.map +1 -0
- package/dist/widgets/shadow-stream.js +359 -0
- package/dist/widgets/shadow-stream.js.map +1 -0
- package/dist/widgets/speech.d.ts +36 -0
- package/dist/widgets/speech.d.ts.map +1 -0
- package/dist/widgets/speech.js +238 -0
- package/dist/widgets/speech.js.map +1 -0
- package/dist/widgets/stream-birth.d.ts +13 -0
- package/dist/widgets/stream-birth.d.ts.map +1 -0
- package/dist/widgets/stream-birth.js +70 -0
- package/dist/widgets/stream-birth.js.map +1 -0
- package/dist/widgets/syntax-boot.d.ts +25 -0
- package/dist/widgets/syntax-boot.d.ts.map +1 -0
- package/dist/widgets/syntax-boot.js +181 -0
- package/dist/widgets/syntax-boot.js.map +1 -0
- package/dist/widgets/text.d.ts +16 -0
- package/dist/widgets/text.d.ts.map +1 -0
- package/dist/widgets/text.js +14 -0
- package/dist/widgets/text.js.map +1 -0
- package/dist/widgets/transcript.d.ts +44 -0
- package/dist/widgets/transcript.d.ts.map +1 -0
- package/dist/widgets/transcript.js +106 -0
- package/dist/widgets/transcript.js.map +1 -0
- package/doom.vert +1840 -0
- package/fonts/DejaVuSans.ttf +0 -0
- package/fonts/DejaVuSansMono.ttf +0 -0
- package/fonts/LICENSE-DejaVu.txt +187 -0
- package/fonts/README.md +6 -0
- package/gradient.vert +75 -0
- package/package.json +147 -3
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Decoder events → Seam C key events (spec §3, protocol §4).
|
|
3
|
+
*
|
|
4
|
+
* Kill chords must NOT lower to letter keys (`u`/`k`): if `ctrl` were dropped
|
|
5
|
+
* on the wire, isPrintable would inject those glyphs (obscure-symbols bug).
|
|
6
|
+
* Tab is autocomplete (worker), never a draft insert — isPrintable would
|
|
7
|
+
* otherwise type a tab. Shift+Enter is a worker-intent soft newline
|
|
8
|
+
* (`insert "\n"`), not submit.
|
|
9
|
+
* Wire keys → DraftOp is the app adapter; draft algebra lives in quickdraw-input.
|
|
10
|
+
*/
|
|
11
|
+
import type { DecodedKeyEvent } from "./box_bus.js";
|
|
12
|
+
import type { DraftOp, InputEvent } from "../input/index.js";
|
|
13
|
+
export declare const KEY_KILL_LINE_START = "KillLineStart";
|
|
14
|
+
export declare const KEY_KILL_LINE_END = "KillLineEnd";
|
|
15
|
+
export declare const KEY_UNDO = "Undo";
|
|
16
|
+
export declare const KEY_REDO = "Redo";
|
|
17
|
+
export declare const KEY_SELECT_ALL = "SelectAll";
|
|
18
|
+
/** Atomic paste: `Paste:` + JSON.stringify(text). */
|
|
19
|
+
export declare const KEY_PASTE_PREFIX = "Paste:";
|
|
20
|
+
export declare const KEY_COMPOSER_CARET = "ComposerCaret";
|
|
21
|
+
/**
|
|
22
|
+
* Wire key → DraftOp. null = not a draft mutation; "clear" = drop prediction
|
|
23
|
+
* (undo/redo). Soft-wrap spatial motion stays hard-line `move` here; echo may
|
|
24
|
+
* rewrite to setCaret when composerOuterWidth is available.
|
|
25
|
+
*/
|
|
26
|
+
export type DraftKeyMapResult = DraftOp | "clear" | null;
|
|
27
|
+
export declare function keyEventToDraftOp(key: {
|
|
28
|
+
readonly key: string;
|
|
29
|
+
readonly ctrl?: boolean;
|
|
30
|
+
readonly meta?: boolean;
|
|
31
|
+
readonly alt?: boolean;
|
|
32
|
+
readonly shift?: boolean;
|
|
33
|
+
}): DraftKeyMapResult;
|
|
34
|
+
/**
|
|
35
|
+
* Wire key is a draft mutation. Single source: agree with keyEventToDraftOp —
|
|
36
|
+
* DraftOp and not undo-clear. Do not hand-maintain a second subset.
|
|
37
|
+
*/
|
|
38
|
+
export declare function isDraftEditKey(event: {
|
|
39
|
+
readonly key: string;
|
|
40
|
+
readonly ctrl?: boolean;
|
|
41
|
+
readonly meta?: boolean;
|
|
42
|
+
readonly alt?: boolean;
|
|
43
|
+
readonly shift?: boolean;
|
|
44
|
+
}): boolean;
|
|
45
|
+
/**
|
|
46
|
+
* Insert / backspace / delete / kill — the selected range is the entity to
|
|
47
|
+
* replace. Motion and setCaret collapse or extend the mark themselves.
|
|
48
|
+
*/
|
|
49
|
+
export declare function isRangeEditKey(event: {
|
|
50
|
+
readonly key: string;
|
|
51
|
+
readonly ctrl?: boolean;
|
|
52
|
+
readonly meta?: boolean;
|
|
53
|
+
readonly alt?: boolean;
|
|
54
|
+
readonly shift?: boolean;
|
|
55
|
+
}): boolean;
|
|
56
|
+
export declare function toKeyEvents(event: InputEvent): readonly DecodedKeyEvent[];
|
|
57
|
+
export declare function pasteKeyEvent(text: string): DecodedKeyEvent;
|
|
58
|
+
export declare function parsePasteKeyEvent(event: DecodedKeyEvent): string | null;
|
|
59
|
+
export declare function toKeyEventBatch(events: readonly InputEvent[]): readonly DecodedKeyEvent[];
|
|
60
|
+
/** Wire format: `ComposerCaret:${cursor}:${mark ?? "n"}` (DecodedKeyEvent has no numeric fields). */
|
|
61
|
+
export declare function composerCaretEvent(cursor: number, mark: number | null): DecodedKeyEvent;
|
|
62
|
+
export declare function parseComposerCaretEvent(event: DecodedKeyEvent): {
|
|
63
|
+
cursor: number;
|
|
64
|
+
mark: number | null;
|
|
65
|
+
} | null;
|
|
66
|
+
//# sourceMappingURL=keys.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../src/runtime/keys.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE7D,eAAO,MAAM,mBAAmB,kBAAkB,CAAC;AACnD,eAAO,MAAM,iBAAiB,gBAAgB,CAAC;AAC/C,eAAO,MAAM,QAAQ,SAAS,CAAC;AAC/B,eAAO,MAAM,QAAQ,SAAS,CAAC;AAC/B,eAAO,MAAM,cAAc,cAAc,CAAC;AAC1C,qDAAqD;AACrD,eAAO,MAAM,gBAAgB,WAAW,CAAC;AACzC,eAAO,MAAM,kBAAkB,kBAAkB,CAAC;AAElD;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,OAAO,GAAG,OAAO,GAAG,IAAI,CAAC;AAEzD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE;IACrC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B,GAAG,iBAAiB,CAiEpB;AAQD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE;IACpC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B,GAAG,OAAO,CAGV;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE;IACpC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B,GAAG,OAAO,CAQV;AAeD,wBAAgB,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,SAAS,eAAe,EAAE,CAuEzE;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,CAE3D;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM,GAAG,IAAI,CAQxE;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,UAAU,EAAE,GAAG,SAAS,eAAe,EAAE,CAEzF;AAED,qGAAqG;AACrG,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,eAAe,CAIvF;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,eAAe,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG,IAAI,CAU9G"}
|
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
export const KEY_KILL_LINE_START = "KillLineStart";
|
|
2
|
+
export const KEY_KILL_LINE_END = "KillLineEnd";
|
|
3
|
+
export const KEY_UNDO = "Undo";
|
|
4
|
+
export const KEY_REDO = "Redo";
|
|
5
|
+
export const KEY_SELECT_ALL = "SelectAll";
|
|
6
|
+
/** Atomic paste: `Paste:` + JSON.stringify(text). */
|
|
7
|
+
export const KEY_PASTE_PREFIX = "Paste:";
|
|
8
|
+
export const KEY_COMPOSER_CARET = "ComposerCaret";
|
|
9
|
+
export function keyEventToDraftOp(key) {
|
|
10
|
+
if (key.meta === true)
|
|
11
|
+
return null;
|
|
12
|
+
if (key.key === KEY_UNDO || key.key === KEY_REDO)
|
|
13
|
+
return "clear";
|
|
14
|
+
if (key.key === KEY_SELECT_ALL)
|
|
15
|
+
return { type: "selectAll" };
|
|
16
|
+
const pasteText = parsePasteKeyEvent({ key: key.key });
|
|
17
|
+
if (pasteText !== null) {
|
|
18
|
+
if (pasteText.length === 0)
|
|
19
|
+
return null;
|
|
20
|
+
return { type: "insert", text: pasteText };
|
|
21
|
+
}
|
|
22
|
+
const caret = parseComposerCaretEvent({ key: key.key });
|
|
23
|
+
if (caret !== null) {
|
|
24
|
+
return { type: "setCaret", cursor: caret.cursor, mark: caret.mark };
|
|
25
|
+
}
|
|
26
|
+
if (key.key === "Backspace" && key.alt) {
|
|
27
|
+
return { type: "kill", mode: "word" };
|
|
28
|
+
}
|
|
29
|
+
if (key.key === KEY_KILL_LINE_START || (key.ctrl && key.key === "u")) {
|
|
30
|
+
return { type: "kill", mode: "to_start" };
|
|
31
|
+
}
|
|
32
|
+
if (key.key === KEY_KILL_LINE_END || (key.ctrl && key.key === "k")) {
|
|
33
|
+
return { type: "kill", mode: "to_end" };
|
|
34
|
+
}
|
|
35
|
+
if (key.key === "Backspace" && !key.ctrl) {
|
|
36
|
+
return { type: "backspace" };
|
|
37
|
+
}
|
|
38
|
+
if (key.key === "Delete" && !key.ctrl) {
|
|
39
|
+
return { type: "delete" };
|
|
40
|
+
}
|
|
41
|
+
const select = key.shift === true;
|
|
42
|
+
if (key.key === "ArrowLeft") {
|
|
43
|
+
const to = key.alt || key.ctrl ? "word_left" : "left";
|
|
44
|
+
return { type: "move", to, select };
|
|
45
|
+
}
|
|
46
|
+
if (key.key === "ArrowRight") {
|
|
47
|
+
const to = key.alt || key.ctrl ? "word_right" : "right";
|
|
48
|
+
return { type: "move", to, select };
|
|
49
|
+
}
|
|
50
|
+
if (key.key === "ArrowUp") {
|
|
51
|
+
return { type: "move", to: "line_up", select };
|
|
52
|
+
}
|
|
53
|
+
if (key.key === "ArrowDown") {
|
|
54
|
+
return { type: "move", to: "line_down", select };
|
|
55
|
+
}
|
|
56
|
+
if (key.key === "Home" && !key.ctrl) {
|
|
57
|
+
return { type: "move", to: "home", select };
|
|
58
|
+
}
|
|
59
|
+
if (key.key === "End" && !key.ctrl) {
|
|
60
|
+
return { type: "move", to: "end", select };
|
|
61
|
+
}
|
|
62
|
+
if (key.key === "Enter" && key.shift && !key.ctrl && !key.meta) {
|
|
63
|
+
return { type: "insert", text: "\n" };
|
|
64
|
+
}
|
|
65
|
+
if (key.ctrl)
|
|
66
|
+
return null;
|
|
67
|
+
if (key.key === "Tab")
|
|
68
|
+
return null;
|
|
69
|
+
if (isPrintableKey(key.key, key)) {
|
|
70
|
+
return { type: "insert", text: key.key };
|
|
71
|
+
}
|
|
72
|
+
return null;
|
|
73
|
+
}
|
|
74
|
+
function isPrintableKey(key, mods) {
|
|
75
|
+
if (mods.ctrl || mods.meta || mods.alt)
|
|
76
|
+
return false;
|
|
77
|
+
if ([...key].length !== 1)
|
|
78
|
+
return false;
|
|
79
|
+
return key >= " ";
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Wire key is a draft mutation. Single source: agree with keyEventToDraftOp —
|
|
83
|
+
* DraftOp and not undo-clear. Do not hand-maintain a second subset.
|
|
84
|
+
*/
|
|
85
|
+
export function isDraftEditKey(event) {
|
|
86
|
+
const op = keyEventToDraftOp(event);
|
|
87
|
+
return op !== null && op !== "clear";
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Insert / backspace / delete / kill — the selected range is the entity to
|
|
91
|
+
* replace. Motion and setCaret collapse or extend the mark themselves.
|
|
92
|
+
*/
|
|
93
|
+
export function isRangeEditKey(event) {
|
|
94
|
+
if (!isDraftEditKey(event))
|
|
95
|
+
return false;
|
|
96
|
+
const op = keyEventToDraftOp(event);
|
|
97
|
+
return (op !== null &&
|
|
98
|
+
op !== "clear" &&
|
|
99
|
+
(op.type === "insert" || op.type === "backspace" || op.type === "delete" || op.type === "kill"));
|
|
100
|
+
}
|
|
101
|
+
function withKeyMods(key, mods) {
|
|
102
|
+
return {
|
|
103
|
+
key,
|
|
104
|
+
...(mods.shift === true ? { shift: true } : {}),
|
|
105
|
+
...(mods.alt === true ? { alt: true } : {}),
|
|
106
|
+
...(mods.ctrl === true ? { ctrl: true } : {}),
|
|
107
|
+
...(mods.meta === true ? { meta: true } : {}),
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
export function toKeyEvents(event) {
|
|
111
|
+
switch (event.type) {
|
|
112
|
+
case "char":
|
|
113
|
+
return [{ key: event.ch }];
|
|
114
|
+
case "enter":
|
|
115
|
+
return [withKeyMods("Enter", event)];
|
|
116
|
+
case "shift_enter":
|
|
117
|
+
return [withKeyMods("Enter", { shift: true })];
|
|
118
|
+
case "tab":
|
|
119
|
+
return [{ key: "Tab" }];
|
|
120
|
+
case "shift_tab":
|
|
121
|
+
return [{ key: "Tab", shift: true }];
|
|
122
|
+
case "esc":
|
|
123
|
+
return [withKeyMods("Escape", event)];
|
|
124
|
+
case "backspace":
|
|
125
|
+
return [{ key: "Backspace" }];
|
|
126
|
+
case "delete":
|
|
127
|
+
return [{ key: "Delete" }];
|
|
128
|
+
case "up":
|
|
129
|
+
return [{ key: "ArrowUp", shift: event.select }];
|
|
130
|
+
case "down":
|
|
131
|
+
return [{ key: "ArrowDown", shift: event.select }];
|
|
132
|
+
case "left":
|
|
133
|
+
return [{ key: "ArrowLeft", shift: event.select }];
|
|
134
|
+
case "right":
|
|
135
|
+
return [{ key: "ArrowRight", shift: event.select }];
|
|
136
|
+
case "home":
|
|
137
|
+
return [{ key: "Home", shift: event.select }];
|
|
138
|
+
case "end":
|
|
139
|
+
return [{ key: "End", shift: event.select }];
|
|
140
|
+
case "word_left":
|
|
141
|
+
return [{ key: "ArrowLeft", alt: true, shift: event.select }];
|
|
142
|
+
case "word_right":
|
|
143
|
+
return [{ key: "ArrowRight", alt: true, shift: event.select }];
|
|
144
|
+
case "word_backspace":
|
|
145
|
+
return [{ key: "Backspace", alt: true }];
|
|
146
|
+
case "kill_to_start":
|
|
147
|
+
return [{ key: KEY_KILL_LINE_START }];
|
|
148
|
+
case "kill_to_end":
|
|
149
|
+
return [{ key: KEY_KILL_LINE_END }];
|
|
150
|
+
case "page_up":
|
|
151
|
+
return [{ key: "PageUp" }];
|
|
152
|
+
case "page_down":
|
|
153
|
+
return [{ key: "PageDown" }];
|
|
154
|
+
case "ctrl_c":
|
|
155
|
+
return [{ key: "c", ctrl: true }];
|
|
156
|
+
case "ctrl_x":
|
|
157
|
+
return [{ key: "x", ctrl: true }];
|
|
158
|
+
case "ctrl_o":
|
|
159
|
+
return [{ key: "o", ctrl: true }];
|
|
160
|
+
case "ctrl_v":
|
|
161
|
+
// Host lowers this to `paste` with a clipboard body. Bare chord is not a glyph.
|
|
162
|
+
return [];
|
|
163
|
+
case "undo":
|
|
164
|
+
return [{ key: KEY_UNDO }];
|
|
165
|
+
case "redo":
|
|
166
|
+
return [{ key: KEY_REDO }];
|
|
167
|
+
case "select_all":
|
|
168
|
+
return [{ key: KEY_SELECT_ALL }];
|
|
169
|
+
case "paste":
|
|
170
|
+
// One event for the whole body so undo treats paste as a single unit.
|
|
171
|
+
return [pasteKeyEvent(event.text)];
|
|
172
|
+
case "focus_in":
|
|
173
|
+
case "focus_out":
|
|
174
|
+
case "mouse":
|
|
175
|
+
case "mod":
|
|
176
|
+
case "osc_ground":
|
|
177
|
+
case "theme_changed":
|
|
178
|
+
case "unknown":
|
|
179
|
+
return [];
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
export function pasteKeyEvent(text) {
|
|
183
|
+
return { key: `${KEY_PASTE_PREFIX}${JSON.stringify(text)}` };
|
|
184
|
+
}
|
|
185
|
+
export function parsePasteKeyEvent(event) {
|
|
186
|
+
if (!event.key.startsWith(KEY_PASTE_PREFIX))
|
|
187
|
+
return null;
|
|
188
|
+
try {
|
|
189
|
+
const text = JSON.parse(event.key.slice(KEY_PASTE_PREFIX.length));
|
|
190
|
+
return typeof text === "string" ? text : null;
|
|
191
|
+
}
|
|
192
|
+
catch {
|
|
193
|
+
return null;
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
export function toKeyEventBatch(events) {
|
|
197
|
+
return events.flatMap(toKeyEvents);
|
|
198
|
+
}
|
|
199
|
+
/** Wire format: `ComposerCaret:${cursor}:${mark ?? "n"}` (DecodedKeyEvent has no numeric fields). */
|
|
200
|
+
export function composerCaretEvent(cursor, mark) {
|
|
201
|
+
return {
|
|
202
|
+
key: `${KEY_COMPOSER_CARET}:${cursor}:${mark === null ? "n" : mark}`,
|
|
203
|
+
};
|
|
204
|
+
}
|
|
205
|
+
export function parseComposerCaretEvent(event) {
|
|
206
|
+
if (!event.key.startsWith(`${KEY_COMPOSER_CARET}:`))
|
|
207
|
+
return null;
|
|
208
|
+
const parts = event.key.split(":");
|
|
209
|
+
if (parts.length !== 3)
|
|
210
|
+
return null;
|
|
211
|
+
const cursor = Number(parts[1]);
|
|
212
|
+
if (!Number.isFinite(cursor))
|
|
213
|
+
return null;
|
|
214
|
+
const markRaw = parts[2];
|
|
215
|
+
const mark = markRaw === "n" ? null : Number(markRaw);
|
|
216
|
+
if (mark !== null && !Number.isFinite(mark))
|
|
217
|
+
return null;
|
|
218
|
+
return { cursor, mark };
|
|
219
|
+
}
|
|
220
|
+
//# sourceMappingURL=keys.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keys.js","sourceRoot":"","sources":["../../src/runtime/keys.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* BoxMailbox → PaintSnapshot adapter.
|
|
3
|
+
* Outside frame.ts so the pure frame module never imports box-bus vocabulary.
|
|
4
|
+
*/
|
|
5
|
+
import type { BoxMailbox } from "./box_bus.js";
|
|
6
|
+
import type { PaintSnapshot } from "./frame.js";
|
|
7
|
+
/** Project Seam C mailbox into the paint port. Pure; no capture of gen. */
|
|
8
|
+
export declare function paintSnapshotFromMailbox(mailbox: BoxMailbox): PaintSnapshot;
|
|
9
|
+
//# sourceMappingURL=paint_snapshot.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paint_snapshot.d.ts","sourceRoot":"","sources":["../../src/runtime/paint_snapshot.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,2EAA2E;AAC3E,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,UAAU,GAAG,aAAa,CAK3E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paint_snapshot.js","sourceRoot":"","sources":["../../src/runtime/paint_snapshot.ts"],"names":[],"mappings":"AAOA,2EAA2E;AAC3E,MAAM,UAAU,wBAAwB,CAAC,OAAmB;IAC1D,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;KACtC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,266 @@
|
|
|
1
|
+
import type { BirthSite } from "./thought_birth.js";
|
|
2
|
+
import type { DraftState } from "../input/index.js";
|
|
3
|
+
import type { ProgressSite } from "../layout/progress.js";
|
|
4
|
+
import type { LayoutNode } from "../layout/types.js";
|
|
5
|
+
export interface PaintSink {
|
|
6
|
+
requestPaint(): void;
|
|
7
|
+
}
|
|
8
|
+
export interface EchoFace {
|
|
9
|
+
predicted: DraftState | null;
|
|
10
|
+
misaligned: boolean;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* One instance per TUI process. Cadence writes cols/rows. The harness
|
|
14
|
+
* composer-echo reaction writes echo. Collapse/selection live on MountLocal.
|
|
15
|
+
*/
|
|
16
|
+
export interface PaintLocal {
|
|
17
|
+
cols: number;
|
|
18
|
+
rows: number;
|
|
19
|
+
echo: EchoFace;
|
|
20
|
+
/** Cmd/Ctrl is down — chrome hint shows the modifier layer. */
|
|
21
|
+
modHeld: boolean;
|
|
22
|
+
/** First visible transcript row when not following the tail. */
|
|
23
|
+
tapeScroll: number;
|
|
24
|
+
/**
|
|
25
|
+
* Follow new tape rows iff true. Default true. Present-side flag —
|
|
26
|
+
* the engine viewport stays `overflowAnchor: "none"`.
|
|
27
|
+
*/
|
|
28
|
+
tapeAtBottom: boolean;
|
|
29
|
+
/**
|
|
30
|
+
* Compact (default): tool/scheme rows omitted (live included — a
|
|
31
|
+
* one-frame live row that then seals is a flash). Loop pulse stays.
|
|
32
|
+
* Expanded: identity rows sit after the glued thought span.
|
|
33
|
+
*/
|
|
34
|
+
tapeExpanded: boolean;
|
|
35
|
+
/** First visible sneak-peek tape row when not following the tail. */
|
|
36
|
+
previewScroll: number;
|
|
37
|
+
/** Follow new sneak-peek tape rows iff true. Default true. */
|
|
38
|
+
previewAtBottom: boolean;
|
|
39
|
+
}
|
|
40
|
+
export declare function createPaintLocal(cols?: number, rows?: number): PaintLocal;
|
|
41
|
+
export declare function writePaintEcho(local: PaintLocal, echo: EchoFace): void;
|
|
42
|
+
export declare function writePaintModHeld(local: PaintLocal, modHeld: boolean): void;
|
|
43
|
+
export declare function writePaintTapeExpanded(local: PaintLocal, tapeExpanded: boolean): void;
|
|
44
|
+
export declare function writePaintTapeScroll(local: PaintLocal, tapeScroll: number, tapeAtBottom: boolean): void;
|
|
45
|
+
export declare function writePaintPreviewScroll(local: PaintLocal, previewScroll: number, previewAtBottom: boolean): void;
|
|
46
|
+
/** Mailbox / retained tape site. Structure refers to this key; cadence substitutes. */
|
|
47
|
+
export declare const APP_TAPE_KEY = "transcript";
|
|
48
|
+
/** Product column viewport around {@link APP_TAPE_KEY}. */
|
|
49
|
+
export declare const APP_TAPE_VIEWPORT_KEY = "transcript:viewport";
|
|
50
|
+
/** Ask Diff seated as the viewport's last child (not `ask:pin`). */
|
|
51
|
+
export declare const APP_ASK_DIFF_KEY = "ask:diff";
|
|
52
|
+
/** Occupancy wait — outside the viewport, immediately above the omnibox. */
|
|
53
|
+
export declare const APP_WAIT_PIN_KEY = "wait:pin";
|
|
54
|
+
/** Mailbox / retained composer site. */
|
|
55
|
+
export declare const APP_COMPOSER_KEY = "composer";
|
|
56
|
+
/** Product statusline above the tape. Room identity, not “now.” */
|
|
57
|
+
export declare const APP_STATUSLINE_KEY = "statusline";
|
|
58
|
+
/** Outer stacking box around the product column. Overlay siblings sit here. */
|
|
59
|
+
export declare const APP_FRAME_KEY = "frame";
|
|
60
|
+
/** Agents drawer viewport id — not {@link APP_TAPE_KEY}. */
|
|
61
|
+
export declare const APP_AGENTS_KEY = "agents";
|
|
62
|
+
/** Hit key for the agents drawer viewport. */
|
|
63
|
+
export declare const APP_AGENTS_VIEWPORT_KEY = "agents:viewport";
|
|
64
|
+
/** Overlay sibling; backdrop hit is `${key}:backdrop`. */
|
|
65
|
+
export declare const APP_AGENTS_OVERLAY_KEY = "agents:overlay";
|
|
66
|
+
/** Compact live-agent meter, composer-adjacent. */
|
|
67
|
+
export declare const APP_AGENTS_METER_KEY = "agents:meter";
|
|
68
|
+
/** Floor under the composer. */
|
|
69
|
+
export declare const ROOT_PAD_B = 0;
|
|
70
|
+
/** Empty row between the statusline and the tape. */
|
|
71
|
+
export declare const STATUSLINE_GAP = 1;
|
|
72
|
+
/**
|
|
73
|
+
* Draft-column inset inside the omnibox chrome: `│` + mark + gap on the left,
|
|
74
|
+
* trailing `│` on the right.
|
|
75
|
+
*/
|
|
76
|
+
export declare const STATUSLINE_PAD_L = 3;
|
|
77
|
+
export declare const STATUSLINE_PAD_R = 1;
|
|
78
|
+
/** Product column left/right inset — omnibox and tape both squeeze. */
|
|
79
|
+
export declare const ROOT_PAD_X = 1;
|
|
80
|
+
/** Crown above the column. */
|
|
81
|
+
export declare const ROOT_PAD_T = 1;
|
|
82
|
+
/** Extra left/right on `transcript:frame` (on top of {@link ROOT_PAD_X}). */
|
|
83
|
+
export declare const TAPE_PAD_X = 0;
|
|
84
|
+
/** Empty row between the tape viewport and the rim. */
|
|
85
|
+
export declare const TAPE_PAD_B = 1;
|
|
86
|
+
/** Width offered to the omnibox (and identity ask pin). */
|
|
87
|
+
export declare function rootInnerWidth(cols: number): number;
|
|
88
|
+
/** Width offered to the tape (and Diff ask). */
|
|
89
|
+
export declare function tapeInnerWidth(cols: number): number;
|
|
90
|
+
/** Bench slack: at bottom iff within 1 row of maxScroll. */
|
|
91
|
+
export declare function tapeFollowsTail(scroll: number, maxScroll: number): boolean;
|
|
92
|
+
export declare function nextTapeScroll(scroll: number, delta: number, maxScroll: number): {
|
|
93
|
+
scroll: number;
|
|
94
|
+
atBottom: boolean;
|
|
95
|
+
};
|
|
96
|
+
export declare function tapeViewportMetrics(byKey: ReadonlyMap<string, {
|
|
97
|
+
readonly hitRect: {
|
|
98
|
+
x: number;
|
|
99
|
+
y: number;
|
|
100
|
+
w: number;
|
|
101
|
+
h: number;
|
|
102
|
+
};
|
|
103
|
+
readonly element?: {
|
|
104
|
+
kind?: string;
|
|
105
|
+
scrollY?: number;
|
|
106
|
+
maxScroll?: number;
|
|
107
|
+
};
|
|
108
|
+
}>): {
|
|
109
|
+
scrollY: number;
|
|
110
|
+
maxScroll: number;
|
|
111
|
+
h: number;
|
|
112
|
+
hitRect: {
|
|
113
|
+
x: number;
|
|
114
|
+
y: number;
|
|
115
|
+
w: number;
|
|
116
|
+
h: number;
|
|
117
|
+
};
|
|
118
|
+
} | null;
|
|
119
|
+
export declare function agentsViewportMetrics(byKey: ReadonlyMap<string, {
|
|
120
|
+
readonly hitRect: {
|
|
121
|
+
x: number;
|
|
122
|
+
y: number;
|
|
123
|
+
w: number;
|
|
124
|
+
h: number;
|
|
125
|
+
};
|
|
126
|
+
readonly element?: {
|
|
127
|
+
kind?: string;
|
|
128
|
+
scrollY?: number;
|
|
129
|
+
maxScroll?: number;
|
|
130
|
+
};
|
|
131
|
+
}>): {
|
|
132
|
+
scrollY: number;
|
|
133
|
+
maxScroll: number;
|
|
134
|
+
h: number;
|
|
135
|
+
hitRect: {
|
|
136
|
+
x: number;
|
|
137
|
+
y: number;
|
|
138
|
+
w: number;
|
|
139
|
+
h: number;
|
|
140
|
+
};
|
|
141
|
+
} | null;
|
|
142
|
+
export declare function agentsPreviewViewportMetrics(byKey: ReadonlyMap<string, {
|
|
143
|
+
readonly hitRect: {
|
|
144
|
+
x: number;
|
|
145
|
+
y: number;
|
|
146
|
+
w: number;
|
|
147
|
+
h: number;
|
|
148
|
+
};
|
|
149
|
+
readonly element?: {
|
|
150
|
+
kind?: string;
|
|
151
|
+
scrollY?: number;
|
|
152
|
+
maxScroll?: number;
|
|
153
|
+
};
|
|
154
|
+
}>): {
|
|
155
|
+
scrollY: number;
|
|
156
|
+
maxScroll: number;
|
|
157
|
+
h: number;
|
|
158
|
+
hitRect: {
|
|
159
|
+
x: number;
|
|
160
|
+
y: number;
|
|
161
|
+
w: number;
|
|
162
|
+
h: number;
|
|
163
|
+
};
|
|
164
|
+
} | null;
|
|
165
|
+
/** Flex product column inside {@link APP_FRAME_KEY}. */
|
|
166
|
+
export declare function productColumn(frame: LayoutNode): LayoutNode;
|
|
167
|
+
/** Drawer panel width: ~½ inner. Overlay; tape wrap does not change. */
|
|
168
|
+
export declare function agentsPanelWidth(cols: number): number;
|
|
169
|
+
/** Last slash-complete payload — same shape as Renderer's picker last. */
|
|
170
|
+
export interface PickerHostState {
|
|
171
|
+
readonly paintRowToKey: readonly (string | null)[];
|
|
172
|
+
readonly n: number;
|
|
173
|
+
readonly viewport: number;
|
|
174
|
+
readonly scrollOffset: number;
|
|
175
|
+
}
|
|
176
|
+
export interface PreparedComposer {
|
|
177
|
+
readonly draft: string;
|
|
178
|
+
readonly cursor: number;
|
|
179
|
+
readonly mark: number | null;
|
|
180
|
+
readonly interactive: boolean;
|
|
181
|
+
}
|
|
182
|
+
export interface PreparedPaint {
|
|
183
|
+
readonly root: LayoutNode | null;
|
|
184
|
+
readonly composer: PreparedComposer;
|
|
185
|
+
readonly birthSites: readonly BirthSite[];
|
|
186
|
+
readonly progressSites: readonly ProgressSite[];
|
|
187
|
+
readonly picker: PickerHostState | null;
|
|
188
|
+
/**
|
|
189
|
+
* When this string changes, cadence drops the live text selection.
|
|
190
|
+
* Catalog uses it for story / filter / sample / focus; product omits it.
|
|
191
|
+
*/
|
|
192
|
+
readonly contentIdentity?: string;
|
|
193
|
+
}
|
|
194
|
+
export declare const EMPTY_PREPARED_COMPOSER: PreparedComposer;
|
|
195
|
+
export declare function emptyPreparedPaint(): PreparedPaint;
|
|
196
|
+
export interface RetainedPaintSource {
|
|
197
|
+
bind(sink: PaintSink, local: PaintLocal): Disposable;
|
|
198
|
+
/**
|
|
199
|
+
* Live projection after bind. Cadence reads this on every tick.
|
|
200
|
+
* A computed returns the same object until its facts change.
|
|
201
|
+
*/
|
|
202
|
+
readonly snapshot?: PreparedPaint;
|
|
203
|
+
/** Pull fallback when `snapshot` is omitted (mailbox / test stubs). */
|
|
204
|
+
prepare(): PreparedPaint;
|
|
205
|
+
/** Flip present-side collapse for a disclosure `blockId`. No-op if unbound. */
|
|
206
|
+
toggleCollapsed?(blockId: string): void;
|
|
207
|
+
}
|
|
208
|
+
export declare function mailboxTapeSite(): LayoutNode;
|
|
209
|
+
export declare function mailboxComposerSite(): LayoutNode;
|
|
210
|
+
/** Keep the tail of a path. `…` is one cell. */
|
|
211
|
+
export declare function elidePathLeft(path: string, width: number): string;
|
|
212
|
+
export declare function elideCwdParts(root: string, rest: string, budget: number): {
|
|
213
|
+
readonly root: string;
|
|
214
|
+
readonly rest: string;
|
|
215
|
+
};
|
|
216
|
+
/**
|
|
217
|
+
* Product frame. Outer box is the stacking context; the flex column
|
|
218
|
+
* (`key: "root"`) is unchanged. An agents overlay is a last sibling —
|
|
219
|
+
* never a flex child. Preview seats after that so its scrim compounds
|
|
220
|
+
* over the drawer. Harness only supplies the tape / composer / agents
|
|
221
|
+
* subtrees.
|
|
222
|
+
*
|
|
223
|
+
* Follow-tail (`atBottom`, default on): see FOLLOW_TAIL_SCROLL.
|
|
224
|
+
* Rim (`seatRim`, default `atTip`): off-tip hides the omnibox unless intern
|
|
225
|
+
* steal (ask / overlay / auth) passes seatRim true.
|
|
226
|
+
*/
|
|
227
|
+
export declare function assemblePaintFrame(input: {
|
|
228
|
+
readonly tape: LayoutNode;
|
|
229
|
+
readonly composer: LayoutNode;
|
|
230
|
+
readonly ask?: LayoutNode | null;
|
|
231
|
+
readonly wait?: LayoutNode | null;
|
|
232
|
+
readonly agentsMeter?: LayoutNode | null;
|
|
233
|
+
/** Drawer body. Overlay + viewport wrap lives here, not in the widget. */
|
|
234
|
+
readonly agents?: LayoutNode | null;
|
|
235
|
+
/** Tea-owned drawer scroll. Independent of tape follow-tail. */
|
|
236
|
+
readonly agentsScroll?: number;
|
|
237
|
+
/** Same-fill peek next to the focused drawer row. */
|
|
238
|
+
readonly agentsPeek?: LayoutNode | null;
|
|
239
|
+
readonly agentsFocusKey?: string;
|
|
240
|
+
readonly agentsPreview?: LayoutNode | null;
|
|
241
|
+
/** Process name for sneak-peek ╭╮ annotation. */
|
|
242
|
+
readonly agentsPreviewTitle?: string;
|
|
243
|
+
readonly agentsPreviewScroll?: number;
|
|
244
|
+
readonly agentsPreviewAtBottom?: boolean;
|
|
245
|
+
/** Left program string + cwd. Always seated; empty left is valid. */
|
|
246
|
+
readonly statusline?: {
|
|
247
|
+
readonly left?: string;
|
|
248
|
+
/** Quiet checkout clause. Rising, beside the branch. */
|
|
249
|
+
readonly note?: string;
|
|
250
|
+
readonly cwd?: string;
|
|
251
|
+
readonly cwdRoot?: string;
|
|
252
|
+
} | null;
|
|
253
|
+
readonly cols: number;
|
|
254
|
+
readonly rows: number;
|
|
255
|
+
readonly scroll?: number;
|
|
256
|
+
readonly atBottom?: boolean;
|
|
257
|
+
readonly atTip?: boolean;
|
|
258
|
+
/** Compact rows above the tape. Absent = no slot. */
|
|
259
|
+
readonly pastNeighbors?: LayoutNode | null;
|
|
260
|
+
/** Compact rows below the tape. Off-tip only. */
|
|
261
|
+
readonly futureNeighbors?: LayoutNode | null;
|
|
262
|
+
readonly seatRim?: boolean;
|
|
263
|
+
}): LayoutNode;
|
|
264
|
+
/** Walk a prepared composer (or frame) for slash-complete hit rows. */
|
|
265
|
+
export declare function pickerHostFromLayout(node: unknown): PickerHostState | null;
|
|
266
|
+
//# sourceMappingURL=paint_source.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paint_source.d.ts","sourceRoot":"","sources":["../../src/runtime/paint_source.ts"],"names":[],"mappings":"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"}
|