@flyingrobots/bijou 7.2.0 → 8.0.0-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +14 -0
- package/dist/core/ansi.d.ts +2 -0
- package/dist/core/ansi.d.ts.map +1 -1
- package/dist/core/ansi.js +4 -0
- package/dist/core/ansi.js.map +1 -1
- package/dist/core/app-shell-composition-normalize.d.ts +10 -0
- package/dist/core/app-shell-composition-normalize.d.ts.map +1 -0
- package/dist/core/app-shell-composition-normalize.js +63 -0
- package/dist/core/app-shell-composition-normalize.js.map +1 -0
- package/dist/core/app-shell-composition.d.ts.map +1 -1
- package/dist/core/app-shell-composition.js +10 -71
- package/dist/core/app-shell-composition.js.map +1 -1
- package/dist/core/binding-frame-issues.d.ts +5 -0
- package/dist/core/binding-frame-issues.d.ts.map +1 -0
- package/dist/core/binding-frame-issues.js +31 -0
- package/dist/core/binding-frame-issues.js.map +1 -0
- package/dist/core/binding-frame-records.d.ts +10 -0
- package/dist/core/binding-frame-records.d.ts.map +1 -0
- package/dist/core/binding-frame-records.js +53 -0
- package/dist/core/binding-frame-records.js.map +1 -0
- package/dist/core/binding-frame-update.d.ts.map +1 -1
- package/dist/core/binding-frame-update.js +6 -85
- package/dist/core/binding-frame-update.js.map +1 -1
- package/dist/core/block-tree-render-contract.d.ts +24 -0
- package/dist/core/block-tree-render-contract.d.ts.map +1 -0
- package/dist/core/block-tree-render-contract.js +8 -0
- package/dist/core/block-tree-render-contract.js.map +1 -0
- package/dist/core/block-tree-render-snapshot.d.ts +6 -0
- package/dist/core/block-tree-render-snapshot.d.ts.map +1 -0
- package/dist/core/block-tree-render-snapshot.js +55 -0
- package/dist/core/block-tree-render-snapshot.js.map +1 -0
- package/dist/core/block-tree-render.d.ts +4 -16
- package/dist/core/block-tree-render.d.ts.map +1 -1
- package/dist/core/block-tree-render.js +3 -184
- package/dist/core/block-tree-render.js.map +1 -1
- package/dist/core/block-tree-render.part01.d.ts +4 -0
- package/dist/core/block-tree-render.part01.d.ts.map +1 -0
- package/dist/core/block-tree-render.part01.js +10 -0
- package/dist/core/block-tree-render.part01.js.map +1 -0
- package/dist/core/block-tree-render.part02.d.ts +7 -0
- package/dist/core/block-tree-render.part02.d.ts.map +1 -0
- package/dist/core/block-tree-render.part02.js +59 -0
- package/dist/core/block-tree-render.part02.js.map +1 -0
- package/dist/core/block-tree-render.part03.d.ts +14 -0
- package/dist/core/block-tree-render.part03.d.ts.map +1 -0
- package/dist/core/block-tree-render.part03.js +64 -0
- package/dist/core/block-tree-render.part03.js.map +1 -0
- package/dist/core/components/box-fill.d.ts +2 -0
- package/dist/core/components/box-fill.d.ts.map +1 -0
- package/dist/core/components/box-fill.js +7 -0
- package/dist/core/components/box-fill.js.map +1 -0
- package/dist/core/components/box-render.d.ts +9 -0
- package/dist/core/components/box-render.d.ts.map +1 -0
- package/dist/core/components/box-render.js +76 -0
- package/dist/core/components/box-render.js.map +1 -0
- package/dist/core/components/box-v3.d.ts +2 -15
- package/dist/core/components/box-v3.d.ts.map +1 -1
- package/dist/core/components/box-v3.js +2 -222
- package/dist/core/components/box-v3.js.map +1 -1
- package/dist/core/components/box-v3.part01.d.ts +30 -0
- package/dist/core/components/box-v3.part01.d.ts.map +1 -0
- package/dist/core/components/box-v3.part01.js +72 -0
- package/dist/core/components/box-v3.part01.js.map +1 -0
- package/dist/core/components/box-v3.part02.d.ts +9 -0
- package/dist/core/components/box-v3.part02.d.ts.map +1 -0
- package/dist/core/components/box-v3.part02.js +131 -0
- package/dist/core/components/box-v3.part02.js.map +1 -0
- package/dist/core/components/box-v3.part03.d.ts +10 -0
- package/dist/core/components/box-v3.part03.d.ts.map +1 -0
- package/dist/core/components/box-v3.part03.js +29 -0
- package/dist/core/components/box-v3.part03.js.map +1 -0
- package/dist/core/components/box.d.ts +2 -7
- package/dist/core/components/box.d.ts.map +1 -1
- package/dist/core/components/box.js +13 -106
- package/dist/core/components/box.js.map +1 -1
- package/dist/core/components/dag-edges.d.ts +5 -100
- package/dist/core/components/dag-edges.d.ts.map +1 -1
- package/dist/core/components/dag-edges.js +4 -222
- package/dist/core/components/dag-edges.js.map +1 -1
- package/dist/core/components/dag-edges.part01.d.ts +67 -0
- package/dist/core/components/dag-edges.part01.d.ts.map +1 -0
- package/dist/core/components/dag-edges.part01.js +99 -0
- package/dist/core/components/dag-edges.part01.js.map +1 -0
- package/dist/core/components/dag-edges.part02.d.ts +31 -0
- package/dist/core/components/dag-edges.part02.d.ts.map +1 -0
- package/dist/core/components/dag-edges.part02.js +57 -0
- package/dist/core/components/dag-edges.part02.js.map +1 -0
- package/dist/core/components/dag-edges.part03.d.ts +18 -0
- package/dist/core/components/dag-edges.part03.d.ts.map +1 -0
- package/dist/core/components/dag-edges.part03.js +41 -0
- package/dist/core/components/dag-edges.part03.js.map +1 -0
- package/dist/core/components/dag-edges.part04.d.ts +9 -0
- package/dist/core/components/dag-edges.part04.d.ts.map +1 -0
- package/dist/core/components/dag-edges.part04.js +67 -0
- package/dist/core/components/dag-edges.part04.js.map +1 -0
- package/dist/core/components/dag-layers.d.ts +3 -0
- package/dist/core/components/dag-layers.d.ts.map +1 -0
- package/dist/core/components/dag-layers.js +92 -0
- package/dist/core/components/dag-layers.js.map +1 -0
- package/dist/core/components/dag-layout.d.ts +1 -11
- package/dist/core/components/dag-layout.d.ts.map +1 -1
- package/dist/core/components/dag-layout.js +3 -114
- package/dist/core/components/dag-layout.js.map +1 -1
- package/dist/core/components/dag-render-contract.d.ts +42 -0
- package/dist/core/components/dag-render-contract.d.ts.map +1 -0
- package/dist/core/components/dag-render-contract.js +2 -0
- package/dist/core/components/dag-render-contract.js.map +1 -0
- package/dist/core/components/dag-render-grid.d.ts +6 -0
- package/dist/core/components/dag-render-grid.d.ts.map +1 -0
- package/dist/core/components/dag-render-grid.js +90 -0
- package/dist/core/components/dag-render-grid.js.map +1 -0
- package/dist/core/components/dag-render-interactive.d.ts +11 -0
- package/dist/core/components/dag-render-interactive.d.ts.map +1 -0
- package/dist/core/components/dag-render-interactive.js +18 -0
- package/dist/core/components/dag-render-interactive.js.map +1 -0
- package/dist/core/components/dag-render-layout.d.ts +6 -0
- package/dist/core/components/dag-render-layout.d.ts.map +1 -0
- package/dist/core/components/dag-render-layout.js +80 -0
- package/dist/core/components/dag-render-layout.js.map +1 -0
- package/dist/core/components/dag-render-metrics.d.ts +21 -0
- package/dist/core/components/dag-render-metrics.d.ts.map +1 -0
- package/dist/core/components/dag-render-metrics.js +95 -0
- package/dist/core/components/dag-render-metrics.js.map +1 -0
- package/dist/core/components/dag-render-node.d.ts +9 -0
- package/dist/core/components/dag-render-node.d.ts.map +1 -0
- package/dist/core/components/dag-render-node.js +71 -0
- package/dist/core/components/dag-render-node.js.map +1 -0
- package/dist/core/components/dag-render-place.d.ts +6 -0
- package/dist/core/components/dag-render-place.d.ts.map +1 -0
- package/dist/core/components/dag-render-place.js +59 -0
- package/dist/core/components/dag-render-place.js.map +1 -0
- package/dist/core/components/dag-render-text.d.ts +4 -0
- package/dist/core/components/dag-render-text.d.ts.map +1 -0
- package/dist/core/components/dag-render-text.js +55 -0
- package/dist/core/components/dag-render-text.js.map +1 -0
- package/dist/core/components/dag-render.d.ts +3 -51
- package/dist/core/components/dag-render.d.ts.map +1 -1
- package/dist/core/components/dag-render.js +3 -550
- package/dist/core/components/dag-render.js.map +1 -1
- package/dist/core/components/enumerated-list-format.d.ts +5 -0
- package/dist/core/components/enumerated-list-format.d.ts.map +1 -0
- package/dist/core/components/enumerated-list-format.js +93 -0
- package/dist/core/components/enumerated-list-format.js.map +1 -0
- package/dist/core/components/enumerated-list.d.ts.map +1 -1
- package/dist/core/components/enumerated-list.js +8 -128
- package/dist/core/components/enumerated-list.js.map +1 -1
- package/dist/core/components/guided-flow-sections.d.ts +6 -0
- package/dist/core/components/guided-flow-sections.d.ts.map +1 -0
- package/dist/core/components/guided-flow-sections.js +81 -0
- package/dist/core/components/guided-flow-sections.js.map +1 -0
- package/dist/core/components/guided-flow.d.ts.map +1 -1
- package/dist/core/components/guided-flow.js +4 -77
- package/dist/core/components/guided-flow.js.map +1 -1
- package/dist/core/components/markdown-parse.d.ts +4 -65
- package/dist/core/components/markdown-parse.d.ts.map +1 -1
- package/dist/core/components/markdown-parse.js +3 -320
- package/dist/core/components/markdown-parse.js.map +1 -1
- package/dist/core/components/markdown-parse.part01.d.ts +58 -0
- package/dist/core/components/markdown-parse.part01.d.ts.map +1 -0
- package/dist/core/components/markdown-parse.part01.js +111 -0
- package/dist/core/components/markdown-parse.part01.js.map +1 -0
- package/dist/core/components/markdown-parse.part02.d.ts +14 -0
- package/dist/core/components/markdown-parse.part02.d.ts.map +1 -0
- package/dist/core/components/markdown-parse.part02.js +110 -0
- package/dist/core/components/markdown-parse.part02.js.map +1 -0
- package/dist/core/components/markdown-parse.part03.d.ts +12 -0
- package/dist/core/components/markdown-parse.part03.d.ts.map +1 -0
- package/dist/core/components/markdown-parse.part03.js +104 -0
- package/dist/core/components/markdown-parse.part03.js.map +1 -0
- package/dist/core/components/preference-list.d.ts +4 -60
- package/dist/core/components/preference-list.d.ts.map +1 -1
- package/dist/core/components/preference-list.js +3 -305
- package/dist/core/components/preference-list.js.map +1 -1
- package/dist/core/components/preference-list.part01.d.ts +69 -0
- package/dist/core/components/preference-list.part01.d.ts.map +1 -0
- package/dist/core/components/preference-list.part01.js +61 -0
- package/dist/core/components/preference-list.part01.js.map +1 -0
- package/dist/core/components/preference-list.part02.d.ts +18 -0
- package/dist/core/components/preference-list.part02.d.ts.map +1 -0
- package/dist/core/components/preference-list.part02.js +113 -0
- package/dist/core/components/preference-list.part02.js.map +1 -0
- package/dist/core/components/preference-list.part04.d.ts +4 -0
- package/dist/core/components/preference-list.part04.d.ts.map +1 -0
- package/dist/core/components/preference-list.part04.js +88 -0
- package/dist/core/components/preference-list.part04.js.map +1 -0
- package/dist/core/components/preference-list.part05.d.ts +4 -0
- package/dist/core/components/preference-list.part05.d.ts.map +1 -0
- package/dist/core/components/preference-list.part05.js +60 -0
- package/dist/core/components/preference-list.part05.js.map +1 -0
- package/dist/core/components/progress.d.ts +5 -86
- package/dist/core/components/progress.d.ts.map +1 -1
- package/dist/core/components/progress.js +3 -205
- package/dist/core/components/progress.js.map +1 -1
- package/dist/core/components/progress.part01.d.ts +57 -0
- package/dist/core/components/progress.part01.d.ts.map +1 -0
- package/dist/core/components/progress.part01.js +69 -0
- package/dist/core/components/progress.part01.js.map +1 -0
- package/dist/core/components/progress.part02.d.ts +21 -0
- package/dist/core/components/progress.part02.d.ts.map +1 -0
- package/dist/core/components/progress.part02.js +53 -0
- package/dist/core/components/progress.part02.js.map +1 -0
- package/dist/core/components/progress.part03.d.ts +14 -0
- package/dist/core/components/progress.part03.d.ts.map +1 -0
- package/dist/core/components/progress.part03.js +96 -0
- package/dist/core/components/progress.part03.js.map +1 -0
- package/dist/core/components/surface-text-layout.d.ts +5 -0
- package/dist/core/components/surface-text-layout.d.ts.map +1 -0
- package/dist/core/components/surface-text-layout.js +47 -0
- package/dist/core/components/surface-text-layout.js.map +1 -0
- package/dist/core/components/surface-text-style.d.ts +17 -0
- package/dist/core/components/surface-text-style.d.ts.map +1 -0
- package/dist/core/components/surface-text-style.js +36 -0
- package/dist/core/components/surface-text-style.js.map +1 -0
- package/dist/core/components/surface-text.d.ts +5 -6
- package/dist/core/components/surface-text.d.ts.map +1 -1
- package/dist/core/components/surface-text.js +13 -92
- package/dist/core/components/surface-text.js.map +1 -1
- package/dist/core/components/table-build.d.ts +12 -0
- package/dist/core/components/table-build.d.ts.map +1 -0
- package/dist/core/components/table-build.js +48 -0
- package/dist/core/components/table-build.js.map +1 -0
- package/dist/core/components/table-cell-format.d.ts +4 -0
- package/dist/core/components/table-cell-format.d.ts.map +1 -0
- package/dist/core/components/table-cell-format.js +11 -0
- package/dist/core/components/table-cell-format.js.map +1 -0
- package/dist/core/components/table-contract.d.ts +66 -0
- package/dist/core/components/table-contract.d.ts.map +1 -0
- package/dist/core/components/table-contract.js +17 -0
- package/dist/core/components/table-contract.js.map +1 -0
- package/dist/core/components/table-fit.d.ts +3 -0
- package/dist/core/components/table-fit.d.ts.map +1 -0
- package/dist/core/components/table-fit.js +73 -0
- package/dist/core/components/table-fit.js.map +1 -0
- package/dist/core/components/table-measure.d.ts +11 -0
- package/dist/core/components/table-measure.d.ts.map +1 -0
- package/dist/core/components/table-measure.js +78 -0
- package/dist/core/components/table-measure.js.map +1 -0
- package/dist/core/components/table-model.d.ts +33 -0
- package/dist/core/components/table-model.d.ts.map +1 -0
- package/dist/core/components/table-model.js +2 -0
- package/dist/core/components/table-model.js.map +1 -0
- package/dist/core/components/table-normalize.d.ts +7 -0
- package/dist/core/components/table-normalize.d.ts.map +1 -0
- package/dist/core/components/table-normalize.js +47 -0
- package/dist/core/components/table-normalize.js.map +1 -0
- package/dist/core/components/table-render-borderless.d.ts +7 -0
- package/dist/core/components/table-render-borderless.d.ts.map +1 -0
- package/dist/core/components/table-render-borderless.js +62 -0
- package/dist/core/components/table-render-borderless.js.map +1 -0
- package/dist/core/components/table-render-expanded.d.ts +5 -0
- package/dist/core/components/table-render-expanded.d.ts.map +1 -0
- package/dist/core/components/table-render-expanded.js +58 -0
- package/dist/core/components/table-render-expanded.js.map +1 -0
- package/dist/core/components/table-render-grid.d.ts +5 -0
- package/dist/core/components/table-render-grid.d.ts.map +1 -0
- package/dist/core/components/table-render-grid.js +64 -0
- package/dist/core/components/table-render-grid.js.map +1 -0
- package/dist/core/components/table-render-markdown.d.ts +4 -0
- package/dist/core/components/table-render-markdown.d.ts.map +1 -0
- package/dist/core/components/table-render-markdown.js +52 -0
- package/dist/core/components/table-render-markdown.js.map +1 -0
- package/dist/core/components/table-render-pipe.d.ts +5 -0
- package/dist/core/components/table-render-pipe.d.ts.map +1 -0
- package/dist/core/components/table-render-pipe.js +46 -0
- package/dist/core/components/table-render-pipe.js.map +1 -0
- package/dist/core/components/table-render-visual.d.ts +5 -0
- package/dist/core/components/table-render-visual.d.ts.map +1 -0
- package/dist/core/components/table-render-visual.js +30 -0
- package/dist/core/components/table-render-visual.js.map +1 -0
- package/dist/core/components/table-text-ansi.d.ts +3 -0
- package/dist/core/components/table-text-ansi.d.ts.map +1 -0
- package/dist/core/components/table-text-ansi.js +121 -0
- package/dist/core/components/table-text-ansi.js.map +1 -0
- package/dist/core/components/table.d.ts +2 -64
- package/dist/core/components/table.d.ts.map +1 -1
- package/dist/core/components/table.js +22 -680
- package/dist/core/components/table.js.map +1 -1
- package/dist/core/components/timer-format.d.ts +6 -0
- package/dist/core/components/timer-format.d.ts.map +1 -0
- package/dist/core/components/timer-format.js +39 -0
- package/dist/core/components/timer-format.js.map +1 -0
- package/dist/core/components/timer.d.ts +3 -73
- package/dist/core/components/timer.d.ts.map +1 -1
- package/dist/core/components/timer.js +2 -220
- package/dist/core/components/timer.js.map +1 -1
- package/dist/core/components/timer.part01.d.ts +93 -0
- package/dist/core/components/timer.part01.d.ts.map +1 -0
- package/dist/core/components/timer.part01.js +35 -0
- package/dist/core/components/timer.part01.js.map +1 -0
- package/dist/core/components/timer.part02.d.ts +5 -0
- package/dist/core/components/timer.part02.d.ts.map +1 -0
- package/dist/core/components/timer.part02.js +120 -0
- package/dist/core/components/timer.part02.js.map +1 -0
- package/dist/core/components/timer.part03.d.ts +20 -0
- package/dist/core/components/timer.part03.d.ts.map +1 -0
- package/dist/core/components/timer.part03.js +53 -0
- package/dist/core/components/timer.part03.js.map +1 -0
- package/dist/core/detect/tty.d.ts +13 -3
- package/dist/core/detect/tty.d.ts.map +1 -1
- package/dist/core/detect/tty.js +12 -4
- package/dist/core/detect/tty.js.map +1 -1
- package/dist/core/forms/multiselect-interactive.d.ts +4 -0
- package/dist/core/forms/multiselect-interactive.d.ts.map +1 -0
- package/dist/core/forms/multiselect-interactive.js +106 -0
- package/dist/core/forms/multiselect-interactive.js.map +1 -0
- package/dist/core/forms/multiselect.d.ts.map +1 -1
- package/dist/core/forms/multiselect.js +2 -106
- package/dist/core/forms/multiselect.js.map +1 -1
- package/dist/core/layout/geometry.d.ts +3 -38
- package/dist/core/layout/geometry.d.ts.map +1 -1
- package/dist/core/layout/geometry.js +2 -198
- package/dist/core/layout/geometry.js.map +1 -1
- package/dist/core/layout/geometry.part01.d.ts +38 -0
- package/dist/core/layout/geometry.part01.d.ts.map +1 -0
- package/dist/core/layout/geometry.part01.js +42 -0
- package/dist/core/layout/geometry.part01.js.map +1 -0
- package/dist/core/layout/geometry.part02.d.ts +5 -0
- package/dist/core/layout/geometry.part02.d.ts.map +1 -0
- package/dist/core/layout/geometry.part02.js +77 -0
- package/dist/core/layout/geometry.part02.js.map +1 -0
- package/dist/core/layout/geometry.part03.d.ts +8 -0
- package/dist/core/layout/geometry.part03.d.ts.map +1 -0
- package/dist/core/layout/geometry.part03.js +85 -0
- package/dist/core/layout/geometry.part03.js.map +1 -0
- package/dist/core/mode-lowering.d.ts +2 -47
- package/dist/core/mode-lowering.d.ts.map +1 -1
- package/dist/core/mode-lowering.js +1 -175
- package/dist/core/mode-lowering.js.map +1 -1
- package/dist/core/mode-lowering.part01.d.ts +51 -0
- package/dist/core/mode-lowering.part01.d.ts.map +1 -0
- package/dist/core/mode-lowering.part01.js +11 -0
- package/dist/core/mode-lowering.part01.js.map +1 -0
- package/dist/core/mode-lowering.part02.d.ts +11 -0
- package/dist/core/mode-lowering.part02.d.ts.map +1 -0
- package/dist/core/mode-lowering.part02.js +81 -0
- package/dist/core/mode-lowering.part02.js.map +1 -0
- package/dist/core/mode-lowering.part03.d.ts +12 -0
- package/dist/core/mode-lowering.part03.d.ts.map +1 -0
- package/dist/core/mode-lowering.part03.js +86 -0
- package/dist/core/mode-lowering.part03.js.map +1 -0
- package/dist/core/mode-lowering.part04.d.ts +5 -0
- package/dist/core/mode-lowering.part04.d.ts.map +1 -0
- package/dist/core/mode-lowering.part04.js +14 -0
- package/dist/core/mode-lowering.part04.js.map +1 -0
- package/dist/core/packed-bijou-cells-adapter.d.ts +3 -0
- package/dist/core/packed-bijou-cells-adapter.d.ts.map +1 -0
- package/dist/core/packed-bijou-cells-adapter.js +14 -0
- package/dist/core/packed-bijou-cells-adapter.js.map +1 -0
- package/dist/core/packed-bijou-cells-contract.d.ts +48 -0
- package/dist/core/packed-bijou-cells-contract.d.ts.map +1 -0
- package/dist/core/packed-bijou-cells-contract.js +38 -0
- package/dist/core/packed-bijou-cells-contract.js.map +1 -0
- package/dist/core/packed-bijou-cells-glyph-policy.d.ts +3 -0
- package/dist/core/packed-bijou-cells-glyph-policy.d.ts.map +1 -0
- package/dist/core/packed-bijou-cells-glyph-policy.js +45 -0
- package/dist/core/packed-bijou-cells-glyph-policy.js.map +1 -0
- package/dist/core/packed-bijou-cells-schema-record.d.ts +4 -0
- package/dist/core/packed-bijou-cells-schema-record.d.ts.map +1 -0
- package/dist/core/packed-bijou-cells-schema-record.js +84 -0
- package/dist/core/packed-bijou-cells-schema-record.js.map +1 -0
- package/dist/core/packed-bijou-cells-schema-values.d.ts +7 -0
- package/dist/core/packed-bijou-cells-schema-values.d.ts.map +1 -0
- package/dist/core/packed-bijou-cells-schema-values.js +66 -0
- package/dist/core/packed-bijou-cells-schema-values.js.map +1 -0
- package/dist/core/packed-bijou-cells-schema.d.ts +4 -0
- package/dist/core/packed-bijou-cells-schema.d.ts.map +1 -0
- package/dist/core/packed-bijou-cells-schema.js +3 -0
- package/dist/core/packed-bijou-cells-schema.js.map +1 -0
- package/dist/core/packed-bijou-cells-validate-bytes.d.ts +3 -0
- package/dist/core/packed-bijou-cells-validate-bytes.d.ts.map +1 -0
- package/dist/core/packed-bijou-cells-validate-bytes.js +22 -0
- package/dist/core/packed-bijou-cells-validate-bytes.js.map +1 -0
- package/dist/core/packed-bijou-cells-validate-cells.d.ts +4 -0
- package/dist/core/packed-bijou-cells-validate-cells.d.ts.map +1 -0
- package/dist/core/packed-bijou-cells-validate-cells.js +4 -0
- package/dist/core/packed-bijou-cells-validate-cells.js.map +1 -0
- package/dist/core/packed-bijou-cells-validate-colors.d.ts +2 -0
- package/dist/core/packed-bijou-cells-validate-colors.d.ts.map +1 -0
- package/dist/core/packed-bijou-cells-validate-colors.js +31 -0
- package/dist/core/packed-bijou-cells-validate-colors.js.map +1 -0
- package/dist/core/packed-bijou-cells-validate-focus.d.ts +4 -0
- package/dist/core/packed-bijou-cells-validate-focus.d.ts.map +1 -0
- package/dist/core/packed-bijou-cells-validate-focus.js +54 -0
- package/dist/core/packed-bijou-cells-validate-focus.js.map +1 -0
- package/dist/core/packed-bijou-cells-validate-glyphs.d.ts +3 -0
- package/dist/core/packed-bijou-cells-validate-glyphs.d.ts.map +1 -0
- package/dist/core/packed-bijou-cells-validate-glyphs.js +50 -0
- package/dist/core/packed-bijou-cells-validate-glyphs.js.map +1 -0
- package/dist/core/packed-bijou-cells-validate-metadata.d.ts +8 -0
- package/dist/core/packed-bijou-cells-validate-metadata.d.ts.map +1 -0
- package/dist/core/packed-bijou-cells-validate-metadata.js +12 -0
- package/dist/core/packed-bijou-cells-validate-metadata.js.map +1 -0
- package/dist/core/packed-bijou-cells-validate-scene.d.ts +3 -0
- package/dist/core/packed-bijou-cells-validate-scene.d.ts.map +1 -0
- package/dist/core/packed-bijou-cells-validate-scene.js +54 -0
- package/dist/core/packed-bijou-cells-validate-scene.js.map +1 -0
- package/dist/core/packed-bijou-cells-validate.d.ts +3 -0
- package/dist/core/packed-bijou-cells-validate.d.ts.map +1 -0
- package/dist/core/packed-bijou-cells-validate.js +58 -0
- package/dist/core/packed-bijou-cells-validate.js.map +1 -0
- package/dist/core/packed-bijou-cells.d.ts +4 -0
- package/dist/core/packed-bijou-cells.d.ts.map +1 -0
- package/dist/core/packed-bijou-cells.js +4 -0
- package/dist/core/packed-bijou-cells.js.map +1 -0
- package/dist/core/profunctor-page-actions.d.ts +7 -0
- package/dist/core/profunctor-page-actions.d.ts.map +1 -0
- package/dist/core/profunctor-page-actions.js +41 -0
- package/dist/core/profunctor-page-actions.js.map +1 -0
- package/dist/core/profunctor-page-block-contract.d.ts +4 -0
- package/dist/core/profunctor-page-block-contract.d.ts.map +1 -0
- package/dist/core/profunctor-page-block-contract.js +65 -0
- package/dist/core/profunctor-page-block-contract.js.map +1 -0
- package/dist/core/profunctor-page-capabilities.d.ts +3 -0
- package/dist/core/profunctor-page-capabilities.d.ts.map +1 -0
- package/dist/core/profunctor-page-capabilities.js +31 -0
- package/dist/core/profunctor-page-capabilities.js.map +1 -0
- package/dist/core/profunctor-page-contract.d.ts +13 -0
- package/dist/core/profunctor-page-contract.d.ts.map +1 -0
- package/dist/core/profunctor-page-contract.js +99 -0
- package/dist/core/profunctor-page-contract.js.map +1 -0
- package/dist/core/profunctor-page-error.d.ts +9 -0
- package/dist/core/profunctor-page-error.d.ts.map +1 -0
- package/dist/core/profunctor-page-error.js +16 -0
- package/dist/core/profunctor-page-error.js.map +1 -0
- package/dist/core/profunctor-page-json-record.d.ts +77 -0
- package/dist/core/profunctor-page-json-record.d.ts.map +1 -0
- package/dist/core/profunctor-page-json-record.js +2 -0
- package/dist/core/profunctor-page-json-record.js.map +1 -0
- package/dist/core/profunctor-page-json.d.ts +14 -0
- package/dist/core/profunctor-page-json.d.ts.map +1 -0
- package/dist/core/profunctor-page-json.js +72 -0
- package/dist/core/profunctor-page-json.js.map +1 -0
- package/dist/core/profunctor-page-lines.d.ts +10 -0
- package/dist/core/profunctor-page-lines.d.ts.map +1 -0
- package/dist/core/profunctor-page-lines.js +77 -0
- package/dist/core/profunctor-page-lines.js.map +1 -0
- package/dist/core/profunctor-page-map.d.ts +7 -0
- package/dist/core/profunctor-page-map.d.ts.map +1 -0
- package/dist/core/profunctor-page-map.js +61 -0
- package/dist/core/profunctor-page-map.js.map +1 -0
- package/dist/core/profunctor-page-model.d.ts +87 -0
- package/dist/core/profunctor-page-model.d.ts.map +1 -0
- package/dist/core/profunctor-page-model.js +2 -0
- package/dist/core/profunctor-page-model.js.map +1 -0
- package/dist/core/profunctor-page-output.d.ts +18 -0
- package/dist/core/profunctor-page-output.d.ts.map +1 -0
- package/dist/core/profunctor-page-output.js +45 -0
- package/dist/core/profunctor-page-output.js.map +1 -0
- package/dist/core/profunctor-page-parse-page-structure.d.ts +6 -0
- package/dist/core/profunctor-page-parse-page-structure.d.ts.map +1 -0
- package/dist/core/profunctor-page-parse-page-structure.js +87 -0
- package/dist/core/profunctor-page-parse-page-structure.js.map +1 -0
- package/dist/core/profunctor-page-parse-page.d.ts +3 -0
- package/dist/core/profunctor-page-parse-page.d.ts.map +1 -0
- package/dist/core/profunctor-page-parse-page.js +50 -0
- package/dist/core/profunctor-page-parse-page.js.map +1 -0
- package/dist/core/profunctor-page-parse-support.d.ts +4 -0
- package/dist/core/profunctor-page-parse-support.d.ts.map +1 -0
- package/dist/core/profunctor-page-parse-support.js +67 -0
- package/dist/core/profunctor-page-parse-support.js.map +1 -0
- package/dist/core/profunctor-page-parse.d.ts +3 -0
- package/dist/core/profunctor-page-parse.d.ts.map +1 -0
- package/dist/core/profunctor-page-parse.js +16 -0
- package/dist/core/profunctor-page-parse.js.map +1 -0
- package/dist/core/profunctor-page-provenance.d.ts +9 -0
- package/dist/core/profunctor-page-provenance.d.ts.map +1 -0
- package/dist/core/profunctor-page-provenance.js +30 -0
- package/dist/core/profunctor-page-provenance.js.map +1 -0
- package/dist/core/profunctor-page-scene-bounds.d.ts +3 -0
- package/dist/core/profunctor-page-scene-bounds.d.ts.map +1 -0
- package/dist/core/profunctor-page-scene-bounds.js +42 -0
- package/dist/core/profunctor-page-scene-bounds.js.map +1 -0
- package/dist/core/profunctor-page-scene-nodes.d.ts +6 -0
- package/dist/core/profunctor-page-scene-nodes.d.ts.map +1 -0
- package/dist/core/profunctor-page-scene-nodes.js +49 -0
- package/dist/core/profunctor-page-scene-nodes.js.map +1 -0
- package/dist/core/profunctor-page-scene.d.ts +28 -0
- package/dist/core/profunctor-page-scene.d.ts.map +1 -0
- package/dist/core/profunctor-page-scene.js +77 -0
- package/dist/core/profunctor-page-scene.js.map +1 -0
- package/dist/core/profunctor-page-source-shape.d.ts +3 -0
- package/dist/core/profunctor-page-source-shape.d.ts.map +1 -0
- package/dist/core/profunctor-page-source-shape.js +89 -0
- package/dist/core/profunctor-page-source-shape.js.map +1 -0
- package/dist/core/profunctor-page-source-span.d.ts +3 -0
- package/dist/core/profunctor-page-source-span.d.ts.map +1 -0
- package/dist/core/profunctor-page-source-span.js +22 -0
- package/dist/core/profunctor-page-source-span.js.map +1 -0
- package/dist/core/profunctor-page-source-target-state.d.ts +3 -0
- package/dist/core/profunctor-page-source-target-state.d.ts.map +1 -0
- package/dist/core/profunctor-page-source-target-state.js +24 -0
- package/dist/core/profunctor-page-source-target-state.js.map +1 -0
- package/dist/core/profunctor-page-target-types.d.ts +93 -0
- package/dist/core/profunctor-page-target-types.d.ts.map +1 -0
- package/dist/core/profunctor-page-target-types.js +2 -0
- package/dist/core/profunctor-page-target-types.js.map +1 -0
- package/dist/core/profunctor-page-target.d.ts +8 -0
- package/dist/core/profunctor-page-target.d.ts.map +1 -0
- package/dist/core/profunctor-page-target.js +87 -0
- package/dist/core/profunctor-page-target.js.map +1 -0
- package/dist/core/profunctor-page-validate-dependencies.d.ts +3 -0
- package/dist/core/profunctor-page-validate-dependencies.d.ts.map +1 -0
- package/dist/core/profunctor-page-validate-dependencies.js +25 -0
- package/dist/core/profunctor-page-validate-dependencies.js.map +1 -0
- package/dist/core/profunctor-page-validate-family.d.ts +3 -0
- package/dist/core/profunctor-page-validate-family.d.ts.map +1 -0
- package/dist/core/profunctor-page-validate-family.js +95 -0
- package/dist/core/profunctor-page-validate-family.js.map +1 -0
- package/dist/core/profunctor-page-validate-graph.d.ts +3 -0
- package/dist/core/profunctor-page-validate-graph.d.ts.map +1 -0
- package/dist/core/profunctor-page-validate-graph.js +98 -0
- package/dist/core/profunctor-page-validate-graph.js.map +1 -0
- package/dist/core/render/differ-ansi.d.ts +3 -0
- package/dist/core/render/differ-ansi.d.ts.map +1 -0
- package/dist/core/render/differ-ansi.js +100 -0
- package/dist/core/render/differ-ansi.js.map +1 -0
- package/dist/core/render/differ-cell.d.ts +10 -0
- package/dist/core/render/differ-cell.d.ts.map +1 -0
- package/dist/core/render/differ-cell.js +81 -0
- package/dist/core/render/differ-cell.js.map +1 -0
- package/dist/core/render/differ-cells.d.ts +4 -0
- package/dist/core/render/differ-cells.d.ts.map +1 -0
- package/dist/core/render/differ-cells.js +72 -0
- package/dist/core/render/differ-cells.js.map +1 -0
- package/dist/core/render/differ-packed-bytes.d.ts +7 -0
- package/dist/core/render/differ-packed-bytes.d.ts.map +1 -0
- package/dist/core/render/differ-packed-bytes.js +111 -0
- package/dist/core/render/differ-packed-bytes.js.map +1 -0
- package/dist/core/render/differ-packed.d.ts +4 -0
- package/dist/core/render/differ-packed.d.ts.map +1 -0
- package/dist/core/render/differ-packed.js +98 -0
- package/dist/core/render/differ-packed.js.map +1 -0
- package/dist/core/render/differ-paint.d.ts +3 -0
- package/dist/core/render/differ-paint.d.ts.map +1 -0
- package/dist/core/render/differ-paint.js +9 -0
- package/dist/core/render/differ-paint.js.map +1 -0
- package/dist/core/render/differ-string.d.ts +6 -0
- package/dist/core/render/differ-string.d.ts.map +1 -0
- package/dist/core/render/differ-string.js +63 -0
- package/dist/core/render/differ-string.js.map +1 -0
- package/dist/core/render/differ.d.ts +9 -55
- package/dist/core/render/differ.d.ts.map +1 -1
- package/dist/core/render/differ.js +11 -826
- package/dist/core/render/differ.js.map +1 -1
- package/dist/core/render/packed-cell.d.ts +1 -1
- package/dist/core/render/packed-cell.d.ts.map +1 -1
- package/dist/core/render/packed-cell.js +1 -1
- package/dist/core/render/packed-cell.js.map +1 -1
- package/dist/core/render/packed-cell.part01.d.ts +1 -0
- package/dist/core/render/packed-cell.part01.d.ts.map +1 -1
- package/dist/core/render/packed-cell.part01.js +1 -0
- package/dist/core/render/packed-cell.part01.js.map +1 -1
- package/dist/core/sha256-text.d.ts +2 -0
- package/dist/core/sha256-text.d.ts.map +1 -0
- package/dist/core/sha256-text.js +97 -0
- package/dist/core/sha256-text.js.map +1 -0
- package/dist/core/stable-json.d.ts +3 -0
- package/dist/core/stable-json.d.ts.map +1 -0
- package/dist/core/stable-json.js +41 -0
- package/dist/core/stable-json.js.map +1 -0
- package/dist/core/standard-blocks/metadata-standard.d.ts +4 -27
- package/dist/core/standard-blocks/metadata-standard.d.ts.map +1 -1
- package/dist/core/standard-blocks/metadata-standard.js +4 -421
- package/dist/core/standard-blocks/metadata-standard.js.map +1 -1
- package/dist/core/standard-blocks/metadata-standard.part01.d.ts +22 -0
- package/dist/core/standard-blocks/metadata-standard.part01.d.ts.map +1 -0
- package/dist/core/standard-blocks/metadata-standard.part01.js +110 -0
- package/dist/core/standard-blocks/metadata-standard.part01.js.map +1 -0
- package/dist/core/standard-blocks/metadata-standard.part02.d.ts +10 -0
- package/dist/core/standard-blocks/metadata-standard.part02.d.ts.map +1 -0
- package/dist/core/standard-blocks/metadata-standard.part02.js +123 -0
- package/dist/core/standard-blocks/metadata-standard.part02.js.map +1 -0
- package/dist/core/standard-blocks/metadata-standard.part03.d.ts +10 -0
- package/dist/core/standard-blocks/metadata-standard.part03.d.ts.map +1 -0
- package/dist/core/standard-blocks/metadata-standard.part03.js +123 -0
- package/dist/core/standard-blocks/metadata-standard.part03.js.map +1 -0
- package/dist/core/standard-blocks/metadata-standard.part04.d.ts +8 -0
- package/dist/core/standard-blocks/metadata-standard.part04.d.ts.map +1 -0
- package/dist/core/standard-blocks/metadata-standard.part04.js +76 -0
- package/dist/core/standard-blocks/metadata-standard.part04.js.map +1 -0
- package/dist/core/standard-blocks/render.d.ts +2 -15
- package/dist/core/standard-blocks/render.d.ts.map +1 -1
- package/dist/core/standard-blocks/render.js +2 -340
- package/dist/core/standard-blocks/render.js.map +1 -1
- package/dist/core/standard-blocks/render.part01.d.ts +24 -0
- package/dist/core/standard-blocks/render.part01.d.ts.map +1 -0
- package/dist/core/standard-blocks/render.part01.js +99 -0
- package/dist/core/standard-blocks/render.part01.js.map +1 -0
- package/dist/core/standard-blocks/render.part02.d.ts +10 -0
- package/dist/core/standard-blocks/render.part02.d.ts.map +1 -0
- package/dist/core/standard-blocks/render.part02.js +108 -0
- package/dist/core/standard-blocks/render.part02.js.map +1 -0
- package/dist/core/standard-blocks/render.part03.d.ts +15 -0
- package/dist/core/standard-blocks/render.part03.d.ts.map +1 -0
- package/dist/core/standard-blocks/render.part03.js +96 -0
- package/dist/core/standard-blocks/render.part03.js.map +1 -0
- package/dist/core/standard-blocks/render.part04.d.ts +14 -0
- package/dist/core/standard-blocks/render.part04.d.ts.map +1 -0
- package/dist/core/standard-blocks/render.part04.js +50 -0
- package/dist/core/standard-blocks/render.part04.js.map +1 -0
- package/dist/core/standard-blocks/schema-helpers.d.ts +1 -1
- package/dist/core/text/grapheme-plain.d.ts +25 -0
- package/dist/core/text/grapheme-plain.d.ts.map +1 -0
- package/dist/core/text/grapheme-plain.js +20 -0
- package/dist/core/text/grapheme-plain.js.map +1 -0
- package/dist/core/text/grapheme.d.ts +7 -137
- package/dist/core/text/grapheme.d.ts.map +1 -1
- package/dist/core/text/grapheme.js +5 -297
- package/dist/core/text/grapheme.js.map +1 -1
- package/dist/core/text/grapheme.part01.d.ts +35 -0
- package/dist/core/text/grapheme.part01.d.ts.map +1 -0
- package/dist/core/text/grapheme.part01.js +102 -0
- package/dist/core/text/grapheme.part01.js.map +1 -0
- package/dist/core/text/grapheme.part02.d.ts +59 -0
- package/dist/core/text/grapheme.part02.d.ts.map +1 -0
- package/dist/core/text/grapheme.part02.js +88 -0
- package/dist/core/text/grapheme.part02.js.map +1 -0
- package/dist/core/text/grapheme.part03.d.ts +19 -0
- package/dist/core/text/grapheme.part03.d.ts.map +1 -0
- package/dist/core/text/grapheme.part03.js +72 -0
- package/dist/core/text/grapheme.part03.js.map +1 -0
- package/dist/core/text/grapheme.part04.d.ts +15 -0
- package/dist/core/text/grapheme.part04.d.ts.map +1 -0
- package/dist/core/text/grapheme.part04.js +28 -0
- package/dist/core/text/grapheme.part04.js.map +1 -0
- package/dist/core/text/wrap-tokens.d.ts +29 -0
- package/dist/core/text/wrap-tokens.d.ts.map +1 -0
- package/dist/core/text/wrap-tokens.js +96 -0
- package/dist/core/text/wrap-tokens.js.map +1 -0
- package/dist/core/text/wrap.d.ts +3 -17
- package/dist/core/text/wrap.d.ts.map +1 -1
- package/dist/core/text/wrap.js +4 -99
- package/dist/core/text/wrap.js.map +1 -1
- package/dist/core/theme/accessors.d.ts +1 -1
- package/dist/core/theme/accessors.d.ts.map +1 -1
- package/dist/core/theme/accessors.js +7 -1
- package/dist/core/theme/accessors.js.map +1 -1
- package/dist/core/theme/builder.d.ts +3 -90
- package/dist/core/theme/builder.d.ts.map +1 -1
- package/dist/core/theme/builder.js +2 -235
- package/dist/core/theme/builder.js.map +1 -1
- package/dist/core/theme/builder.part01.d.ts +92 -0
- package/dist/core/theme/builder.part01.d.ts.map +1 -0
- package/dist/core/theme/builder.part01.js +25 -0
- package/dist/core/theme/builder.part01.js.map +1 -0
- package/dist/core/theme/builder.part02.d.ts +16 -0
- package/dist/core/theme/builder.part02.d.ts.map +1 -0
- package/dist/core/theme/builder.part02.js +100 -0
- package/dist/core/theme/builder.part02.js.map +1 -0
- package/dist/core/theme/builder.part03.d.ts +5 -0
- package/dist/core/theme/builder.part03.d.ts.map +1 -0
- package/dist/core/theme/builder.part03.js +74 -0
- package/dist/core/theme/builder.part03.js.map +1 -0
- package/dist/core/theme/builder.part04.d.ts +3 -0
- package/dist/core/theme/builder.part04.d.ts.map +1 -0
- package/dist/core/theme/builder.part04.js +49 -0
- package/dist/core/theme/builder.part04.js.map +1 -0
- package/dist/core/theme/doctor.d.ts +4 -51
- package/dist/core/theme/doctor.d.ts.map +1 -1
- package/dist/core/theme/doctor.js +3 -223
- package/dist/core/theme/doctor.js.map +1 -1
- package/dist/core/theme/doctor.part01.d.ts +77 -0
- package/dist/core/theme/doctor.part01.d.ts.map +1 -0
- package/dist/core/theme/doctor.part01.js +20 -0
- package/dist/core/theme/doctor.part01.js.map +1 -0
- package/dist/core/theme/doctor.part02.d.ts +13 -0
- package/dist/core/theme/doctor.part02.d.ts.map +1 -0
- package/dist/core/theme/doctor.part02.js +100 -0
- package/dist/core/theme/doctor.part02.js.map +1 -0
- package/dist/core/theme/doctor.part03.d.ts +6 -0
- package/dist/core/theme/doctor.part03.d.ts.map +1 -0
- package/dist/core/theme/doctor.part03.js +68 -0
- package/dist/core/theme/doctor.part03.js.map +1 -0
- package/dist/core/theme/doctor.part04.d.ts +4 -0
- package/dist/core/theme/doctor.part04.d.ts.map +1 -0
- package/dist/core/theme/doctor.part04.js +48 -0
- package/dist/core/theme/doctor.part04.js.map +1 -0
- package/dist/core/theme/dtcg.d.ts +3 -47
- package/dist/core/theme/dtcg.d.ts.map +1 -1
- package/dist/core/theme/dtcg.js +2 -261
- package/dist/core/theme/dtcg.js.map +1 -1
- package/dist/core/theme/dtcg.part01.d.ts +25 -0
- package/dist/core/theme/dtcg.part01.d.ts.map +1 -0
- package/dist/core/theme/dtcg.part01.js +89 -0
- package/dist/core/theme/dtcg.part01.js.map +1 -0
- package/dist/core/theme/dtcg.part02.d.ts +15 -0
- package/dist/core/theme/dtcg.part02.d.ts.map +1 -0
- package/dist/core/theme/dtcg.part02.js +105 -0
- package/dist/core/theme/dtcg.part02.js.map +1 -0
- package/dist/core/theme/dtcg.part03.d.ts +33 -0
- package/dist/core/theme/dtcg.part03.d.ts.map +1 -0
- package/dist/core/theme/dtcg.part03.js +85 -0
- package/dist/core/theme/dtcg.part03.js.map +1 -0
- package/dist/core/theme/extend.d.ts +10 -1
- package/dist/core/theme/extend.d.ts.map +1 -1
- package/dist/core/theme/extend.js +10 -1
- package/dist/core/theme/extend.js.map +1 -1
- package/dist/core/theme/presets.d.ts +5 -38
- package/dist/core/theme/presets.d.ts.map +1 -1
- package/dist/core/theme/presets.js +5 -291
- package/dist/core/theme/presets.js.map +1 -1
- package/dist/core/theme/presets.part01.d.ts +27 -0
- package/dist/core/theme/presets.part01.d.ts.map +1 -0
- package/dist/core/theme/presets.part01.js +105 -0
- package/dist/core/theme/presets.part01.js.map +1 -0
- package/dist/core/theme/presets.part02.d.ts +9 -0
- package/dist/core/theme/presets.part02.d.ts.map +1 -0
- package/dist/core/theme/presets.part02.js +66 -0
- package/dist/core/theme/presets.part02.js.map +1 -0
- package/dist/core/theme/presets.part03.d.ts +4 -0
- package/dist/core/theme/presets.part03.d.ts.map +1 -0
- package/dist/core/theme/presets.part03.js +125 -0
- package/dist/core/theme/presets.part03.js.map +1 -0
- package/dist/core/theme/resolve-rgb.d.ts +4 -0
- package/dist/core/theme/resolve-rgb.d.ts.map +1 -0
- package/dist/core/theme/resolve-rgb.js +21 -0
- package/dist/core/theme/resolve-rgb.js.map +1 -0
- package/dist/core/theme/resolve-types.d.ts +64 -0
- package/dist/core/theme/resolve-types.d.ts.map +1 -0
- package/dist/core/theme/resolve-types.js +2 -0
- package/dist/core/theme/resolve-types.js.map +1 -0
- package/dist/core/theme/resolve.d.ts +3 -61
- package/dist/core/theme/resolve.d.ts.map +1 -1
- package/dist/core/theme/resolve.js +8 -22
- package/dist/core/theme/resolve.js.map +1 -1
- package/dist/core/ui-scene-canonical.d.ts +6 -0
- package/dist/core/ui-scene-canonical.d.ts.map +1 -0
- package/dist/core/ui-scene-canonical.js +37 -0
- package/dist/core/ui-scene-canonical.js.map +1 -0
- package/dist/core/ui-scene-contract.d.ts +100 -0
- package/dist/core/ui-scene-contract.d.ts.map +1 -0
- package/dist/core/ui-scene-contract.js +3 -0
- package/dist/core/ui-scene-contract.js.map +1 -0
- package/dist/core/ui-scene-ir.d.ts +11 -194
- package/dist/core/ui-scene-ir.d.ts.map +1 -1
- package/dist/core/ui-scene-ir.js +6 -569
- package/dist/core/ui-scene-ir.js.map +1 -1
- package/dist/core/ui-scene-lowering-utils.d.ts +21 -0
- package/dist/core/ui-scene-lowering-utils.d.ts.map +1 -0
- package/dist/core/ui-scene-lowering-utils.js +99 -0
- package/dist/core/ui-scene-lowering-utils.js.map +1 -0
- package/dist/core/ui-scene-lowering.d.ts +31 -0
- package/dist/core/ui-scene-lowering.d.ts.map +1 -0
- package/dist/core/ui-scene-lowering.js +49 -0
- package/dist/core/ui-scene-lowering.js.map +1 -0
- package/dist/core/ui-scene-receipt.d.ts +29 -0
- package/dist/core/ui-scene-receipt.d.ts.map +1 -0
- package/dist/core/ui-scene-receipt.js +37 -0
- package/dist/core/ui-scene-receipt.js.map +1 -0
- package/dist/core/ui-scene-target-profile.d.ts +35 -0
- package/dist/core/ui-scene-target-profile.d.ts.map +1 -0
- package/dist/core/ui-scene-target-profile.js +38 -0
- package/dist/core/ui-scene-target-profile.js.map +1 -0
- package/dist/core/ui-scene-terminal-proof.d.ts +10 -0
- package/dist/core/ui-scene-terminal-proof.d.ts.map +1 -0
- package/dist/core/ui-scene-terminal-proof.js +26 -0
- package/dist/core/ui-scene-terminal-proof.js.map +1 -0
- package/dist/core/ui-scene-validation.d.ts +3 -0
- package/dist/core/ui-scene-validation.d.ts.map +1 -0
- package/dist/core/ui-scene-validation.js +88 -0
- package/dist/core/ui-scene-validation.js.map +1 -0
- package/dist/core/visor-artifact-bundle.d.ts +4 -0
- package/dist/core/visor-artifact-bundle.d.ts.map +1 -0
- package/dist/core/visor-artifact-bundle.js +3 -0
- package/dist/core/visor-artifact-bundle.js.map +1 -0
- package/dist/core/visor-artifact-bundle.part01.d.ts +115 -0
- package/dist/core/visor-artifact-bundle.part01.d.ts.map +1 -0
- package/dist/core/visor-artifact-bundle.part01.js +4 -0
- package/dist/core/visor-artifact-bundle.part01.js.map +1 -0
- package/dist/core/visor-artifact-bundle.part02.d.ts +4 -0
- package/dist/core/visor-artifact-bundle.part02.d.ts.map +1 -0
- package/dist/core/visor-artifact-bundle.part02.js +89 -0
- package/dist/core/visor-artifact-bundle.part02.js.map +1 -0
- package/dist/core/visor-artifact-bundle.part03.d.ts +16 -0
- package/dist/core/visor-artifact-bundle.part03.d.ts.map +1 -0
- package/dist/core/visor-artifact-bundle.part03.js +76 -0
- package/dist/core/visor-artifact-bundle.part03.js.map +1 -0
- package/dist/core/visor-artifact-bundle.part04.d.ts +18 -0
- package/dist/core/visor-artifact-bundle.part04.d.ts.map +1 -0
- package/dist/core/visor-artifact-bundle.part04.js +90 -0
- package/dist/core/visor-artifact-bundle.part04.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/index.part02.d.ts +2 -0
- package/dist/index.part02.d.ts.map +1 -1
- package/dist/index.part02.js +2 -0
- package/dist/index.part02.js.map +1 -1
- package/dist/index.part11.d.ts +2 -0
- package/dist/index.part11.d.ts.map +1 -0
- package/dist/index.part11.js +2 -0
- package/dist/index.part11.js.map +1 -0
- package/dist/ports/surface-cell.d.ts +36 -0
- package/dist/ports/surface-cell.d.ts.map +1 -0
- package/dist/ports/surface-cell.js +42 -0
- package/dist/ports/surface-cell.js.map +1 -0
- package/dist/ports/surface-contract.d.ts +53 -0
- package/dist/ports/surface-contract.d.ts.map +1 -0
- package/dist/ports/surface-contract.js +5 -0
- package/dist/ports/surface-contract.js.map +1 -0
- package/dist/ports/surface-create.d.ts +4 -0
- package/dist/ports/surface-create.d.ts.map +1 -0
- package/dist/ports/surface-create.js +48 -0
- package/dist/ports/surface-create.js.map +1 -0
- package/dist/ports/surface-layout.d.ts +29 -0
- package/dist/ports/surface-layout.d.ts.map +1 -0
- package/dist/ports/surface-layout.js +2 -0
- package/dist/ports/surface-layout.js.map +1 -0
- package/dist/ports/surface-packed-codec.d.ts +6 -0
- package/dist/ports/surface-packed-codec.d.ts.map +1 -0
- package/dist/ports/surface-packed-codec.js +86 -0
- package/dist/ports/surface-packed-codec.js.map +1 -0
- package/dist/ports/surface-packed-color.d.ts +7 -0
- package/dist/ports/surface-packed-color.d.ts.map +1 -0
- package/dist/ports/surface-packed-color.js +53 -0
- package/dist/ports/surface-packed-color.js.map +1 -0
- package/dist/ports/surface-packed-compose.d.ts +7 -0
- package/dist/ports/surface-packed-compose.d.ts.map +1 -0
- package/dist/ports/surface-packed-compose.js +66 -0
- package/dist/ports/surface-packed-compose.js.map +1 -0
- package/dist/ports/surface-packed-read.d.ts +9 -0
- package/dist/ports/surface-packed-read.d.ts.map +1 -0
- package/dist/ports/surface-packed-read.js +77 -0
- package/dist/ports/surface-packed-read.js.map +1 -0
- package/dist/ports/surface-packed-state.d.ts +19 -0
- package/dist/ports/surface-packed-state.d.ts.map +1 -0
- package/dist/ports/surface-packed-state.js +60 -0
- package/dist/ports/surface-packed-state.js.map +1 -0
- package/dist/ports/surface-packed-write.d.ts +7 -0
- package/dist/ports/surface-packed-write.d.ts.map +1 -0
- package/dist/ports/surface-packed-write.js +73 -0
- package/dist/ports/surface-packed-write.js.map +1 -0
- package/dist/ports/surface-transform.d.ts +19 -0
- package/dist/ports/surface-transform.d.ts.map +1 -0
- package/dist/ports/surface-transform.js +19 -0
- package/dist/ports/surface-transform.js.map +1 -0
- package/dist/ports/surface.d.ts +7 -234
- package/dist/ports/surface.d.ts.map +1 -1
- package/dist/ports/surface.js +4 -514
- package/dist/ports/surface.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
export const FULL_MASK = {
|
|
2
|
+
char: true,
|
|
3
|
+
fg: true,
|
|
4
|
+
bg: true,
|
|
5
|
+
modifiers: true,
|
|
6
|
+
alpha: true,
|
|
7
|
+
};
|
|
8
|
+
export function maskCell(cell, mask) {
|
|
9
|
+
return {
|
|
10
|
+
char: mask.char ? cell.char : ' ',
|
|
11
|
+
fg: mask.fg ? cell.fg : undefined,
|
|
12
|
+
bg: mask.bg ? cell.bg : undefined,
|
|
13
|
+
fgRGB: mask.fg ? cell.fgRGB : undefined,
|
|
14
|
+
bgRGB: mask.bg ? cell.bgRGB : undefined,
|
|
15
|
+
modifiers: mask.modifiers ? cell.modifiers : undefined,
|
|
16
|
+
empty: mask.alpha ? (cell.empty ?? false) : false,
|
|
17
|
+
opacity: mask.alpha ? (cell.opacity ?? 1) : 1,
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
export function cloneCell(cell) {
|
|
21
|
+
return {
|
|
22
|
+
char: cell.char,
|
|
23
|
+
fg: cell.fg,
|
|
24
|
+
bg: cell.bg,
|
|
25
|
+
fgRGB: cell.fgRGB,
|
|
26
|
+
bgRGB: cell.bgRGB,
|
|
27
|
+
modifiers: cell.modifiers,
|
|
28
|
+
empty: cell.empty,
|
|
29
|
+
opacity: cell.opacity,
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
export function copyCellInto(target, source) {
|
|
33
|
+
target.char = source.char;
|
|
34
|
+
target.fg = source.fg;
|
|
35
|
+
target.bg = source.bg;
|
|
36
|
+
target.fgRGB = source.fgRGB;
|
|
37
|
+
target.bgRGB = source.bgRGB;
|
|
38
|
+
target.modifiers = source.modifiers;
|
|
39
|
+
target.empty = source.empty;
|
|
40
|
+
target.opacity = source.opacity;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=surface-cell.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"surface-cell.js","sourceRoot":"","sources":["../../src/ports/surface-cell.ts"],"names":[],"mappings":"AAkCA,MAAM,CAAC,MAAM,SAAS,GAAa;IACjC,IAAI,EAAE,IAAI;IACV,EAAE,EAAE,IAAI;IACR,EAAE,EAAE,IAAI;IACR,SAAS,EAAE,IAAI;IACf,KAAK,EAAE,IAAI;CACZ,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,IAAU,EAAE,IAAc;IACjD,OAAO;QACL,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG;QACjC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;QACjC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;QACjC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;QACvC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;QACvC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;QACtD,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK;QACjD,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KAC9C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,IAAU;IAClC,OAAO;QACL,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,OAAO,EAAE,IAAI,CAAC,OAAO;KACtB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,MAAY,EAAE,MAAY;IACrD,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;IAC1B,MAAM,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC;IACtB,MAAM,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC;IACtB,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAC5B,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAC5B,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;IACpC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAC5B,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;AAClC,CAAC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import type { Cell, CellMask } from './surface-cell.js';
|
|
2
|
+
import type { Matrix3x3, TransformOptions } from './surface-transform.js';
|
|
3
|
+
export interface Surface {
|
|
4
|
+
/** Width in columns. */
|
|
5
|
+
readonly width: number;
|
|
6
|
+
/** Height in rows. */
|
|
7
|
+
readonly height: number;
|
|
8
|
+
/** Flattened cell array indexed by `y * width + x`. */
|
|
9
|
+
readonly cells: Cell[];
|
|
10
|
+
/** Reset every cell to the default empty state. */
|
|
11
|
+
clear(): void;
|
|
12
|
+
/** Read a masked cell, returning an empty cell outside the surface. */
|
|
13
|
+
get(x: number, y: number, mask?: CellMask): Cell;
|
|
14
|
+
/** Write a masked cell; coordinates outside the surface are ignored. */
|
|
15
|
+
set(x: number, y: number, cell: Cell, mask?: CellMask): void;
|
|
16
|
+
/**
|
|
17
|
+
* Write numeric color channels directly into the packed buffer.
|
|
18
|
+
*
|
|
19
|
+
* This allocation-free path avoids the color parsing performed by
|
|
20
|
+
* {@link set}. A red channel of `-1` selects the terminal default.
|
|
21
|
+
*/
|
|
22
|
+
setRGB(x: number, y: number, char: number | string, fgR: number, fgG: number, fgB: number, bgR: number, bgG: number, bgB: number, flags?: number): void;
|
|
23
|
+
/** Fill a rectangular region, defaulting to the complete surface. */
|
|
24
|
+
fill(cell: Cell, x?: number, y?: number, width?: number, height?: number, mask?: CellMask): void;
|
|
25
|
+
/** Copy a rectangular region from another surface. */
|
|
26
|
+
blit(source: Surface, x: number, y: number, sourceX?: number, sourceY?: number, sourceWidth?: number, sourceHeight?: number, mask?: CellMask): void;
|
|
27
|
+
/** Apply an affine transformation from another surface. */
|
|
28
|
+
transform(source: Surface, matrix: Matrix3x3, options?: TransformOptions): void;
|
|
29
|
+
/** Read a masked horizontal span of cells. */
|
|
30
|
+
getRow(y: number, x?: number, width?: number, mask?: CellMask): Cell[];
|
|
31
|
+
/** Write a masked horizontal span of cells. */
|
|
32
|
+
setRow(y: number, cells: Cell[], x?: number, mask?: CellMask): void;
|
|
33
|
+
/** Create a deep copy of this surface. */
|
|
34
|
+
clone(): Surface;
|
|
35
|
+
}
|
|
36
|
+
export interface PackedSurface extends Surface {
|
|
37
|
+
/** Raw `CELL_STRIDE`-byte cells in row-major order. */
|
|
38
|
+
readonly buffer: Uint8Array;
|
|
39
|
+
/** Multi-codepoint graphemes referenced by packed character indexes. */
|
|
40
|
+
readonly sideTable: string[];
|
|
41
|
+
/**
|
|
42
|
+
* One render-dirty bit per cell. The union of the front and back surface
|
|
43
|
+
* bitmaps identifies both new paints and cells that require erasure.
|
|
44
|
+
*/
|
|
45
|
+
readonly renderDirtyWords: Uint32Array;
|
|
46
|
+
/** Mark every cell for lazy decode and rendering. */
|
|
47
|
+
markAllDirty(): void;
|
|
48
|
+
/** Clear render-dirty bits without mutating packed cell bytes. */
|
|
49
|
+
markAllRenderClean(): void;
|
|
50
|
+
}
|
|
51
|
+
/** Return whether a surface exposes Bijou's packed storage contract. */
|
|
52
|
+
export declare function isPackedSurface(surface: Surface): surface is PackedSurface;
|
|
53
|
+
//# sourceMappingURL=surface-contract.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"surface-contract.d.ts","sourceRoot":"","sources":["../../src/ports/surface-contract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1E,MAAM,WAAW,OAAO;IACtB,wBAAwB;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,sBAAsB;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,uDAAuD;IACvD,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC;IACvB,mDAAmD;IACnD,KAAK,IAAI,IAAI,CAAC;IACd,uEAAuE;IACvE,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IACjD,wEAAwE;IACxE,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC7D;;;;;OAKG;IACH,MAAM,CACJ,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,IAAI,EAAE,MAAM,GAAG,MAAM,EACrB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,KAAK,CAAC,EAAE,MAAM,GACb,IAAI,CAAC;IACR,qEAAqE;IACrE,IAAI,CACF,IAAI,EAAE,IAAI,EACV,CAAC,CAAC,EAAE,MAAM,EACV,CAAC,CAAC,EAAE,MAAM,EACV,KAAK,CAAC,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,QAAQ,GACd,IAAI,CAAC;IACR,sDAAsD;IACtD,IAAI,CACF,MAAM,EAAE,OAAO,EACf,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,OAAO,CAAC,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,MAAM,EACpB,YAAY,CAAC,EAAE,MAAM,EACrB,IAAI,CAAC,EAAE,QAAQ,GACd,IAAI,CAAC;IACR,2DAA2D;IAC3D,SAAS,CACP,MAAM,EAAE,OAAO,EACf,MAAM,EAAE,SAAS,EACjB,OAAO,CAAC,EAAE,gBAAgB,GACzB,IAAI,CAAC;IACR,8CAA8C;IAC9C,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,QAAQ,GAAG,IAAI,EAAE,CAAC;IACvE,+CAA+C;IAC/C,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IACpE,0CAA0C;IAC1C,KAAK,IAAI,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,aAAc,SAAQ,OAAO;IAC5C,uDAAuD;IACvD,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,wEAAwE;IACxE,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC;IAC7B;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,EAAE,WAAW,CAAC;IACvC,qDAAqD;IACrD,YAAY,IAAI,IAAI,CAAC;IACrB,kEAAkE;IAClE,kBAAkB,IAAI,IAAI,CAAC;CAC5B;AAED,wEAAwE;AACxE,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,IAAI,aAAa,CAE1E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"surface-contract.js","sourceRoot":"","sources":["../../src/ports/surface-contract.ts"],"names":[],"mappings":"AAoFA,wEAAwE;AACxE,MAAM,UAAU,eAAe,CAAC,OAAgB;IAC9C,OAAO,QAAQ,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,YAAY,UAAU,CAAC;AACrE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"surface-create.d.ts","sourceRoot":"","sources":["../../src/ports/surface-create.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,IAAI,EACV,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAoB3D,wBAAgB,aAAa,CAC3B,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE,IAAI,GACV,aAAa,CAuGf"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { FULL_MASK, } from './surface-cell.js';
|
|
2
|
+
import { blitSurface, transformSurface } from './surface-packed-compose.js';
|
|
3
|
+
import { copySurfaceIntoClone, getSurfaceCell, getSurfaceRow, setSurfaceRow, } from './surface-packed-read.js';
|
|
4
|
+
import { createPackedSurfaceState, markAllDirty, markAllRenderClean, } from './surface-packed-state.js';
|
|
5
|
+
import { clearSurface, fillSurface, setSurfaceCell, setSurfaceRgb, } from './surface-packed-write.js';
|
|
6
|
+
export function createSurface(width, height, fill) {
|
|
7
|
+
const state = createPackedSurfaceState(width, height, fill);
|
|
8
|
+
const surface = {
|
|
9
|
+
width: state.width,
|
|
10
|
+
height: state.height,
|
|
11
|
+
cells: state.cells,
|
|
12
|
+
buffer: state.buffer,
|
|
13
|
+
sideTable: state.sideTable,
|
|
14
|
+
renderDirtyWords: state.renderDirtyWords,
|
|
15
|
+
markAllDirty: () => {
|
|
16
|
+
markAllDirty(state);
|
|
17
|
+
},
|
|
18
|
+
markAllRenderClean: () => {
|
|
19
|
+
markAllRenderClean(state);
|
|
20
|
+
},
|
|
21
|
+
clear: () => {
|
|
22
|
+
clearSurface(state);
|
|
23
|
+
},
|
|
24
|
+
get: (x, y, mask = FULL_MASK) => getSurfaceCell(state, x, y, mask),
|
|
25
|
+
set: (x, y, cell, mask = FULL_MASK) => {
|
|
26
|
+
setSurfaceCell(state, x, y, cell, mask);
|
|
27
|
+
},
|
|
28
|
+
setRGB: (x, y, char, foregroundRed, foregroundGreen, foregroundBlue, backgroundRed, backgroundGreen, backgroundBlue, flags = 0) => {
|
|
29
|
+
setSurfaceRgb(state, x, y, char, foregroundRed, foregroundGreen, foregroundBlue, backgroundRed, backgroundGreen, backgroundBlue, flags);
|
|
30
|
+
},
|
|
31
|
+
fill: (cell, x = 0, y = 0, regionWidth = state.width, regionHeight = state.height, mask = FULL_MASK) => {
|
|
32
|
+
fillSurface(state, cell, x, y, regionWidth, regionHeight, mask);
|
|
33
|
+
},
|
|
34
|
+
blit: (source, x, y, sourceX = 0, sourceY = 0, sourceWidth = source.width, sourceHeight = source.height, mask = FULL_MASK) => {
|
|
35
|
+
blitSurface(state, source, x, y, sourceX, sourceY, sourceWidth, sourceHeight, mask);
|
|
36
|
+
},
|
|
37
|
+
transform: (source, matrix, options = {}) => {
|
|
38
|
+
transformSurface(state, source, matrix, options);
|
|
39
|
+
},
|
|
40
|
+
getRow: (y, x = 0, rowWidth = state.width - x, mask = FULL_MASK) => getSurfaceRow(state, y, x, rowWidth, mask),
|
|
41
|
+
setRow: (y, cells, x = 0, mask = FULL_MASK) => {
|
|
42
|
+
setSurfaceRow(state, y, cells, x, mask);
|
|
43
|
+
},
|
|
44
|
+
clone: () => copySurfaceIntoClone(state, createSurface(state.width, state.height)),
|
|
45
|
+
};
|
|
46
|
+
return surface;
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=surface-create.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"surface-create.js","sourceRoot":"","sources":["../../src/ports/surface-create.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { Surface } from './surface-contract.js';
|
|
2
|
+
export interface LayoutRect {
|
|
3
|
+
/** Zero-based column index. */
|
|
4
|
+
x: number;
|
|
5
|
+
/** Zero-based row index. */
|
|
6
|
+
y: number;
|
|
7
|
+
/** Width in columns. */
|
|
8
|
+
width: number;
|
|
9
|
+
/** Height in rows. */
|
|
10
|
+
height: number;
|
|
11
|
+
}
|
|
12
|
+
export interface LayoutNode {
|
|
13
|
+
/** Unique identifier matching a CSS ID selector. */
|
|
14
|
+
id?: string;
|
|
15
|
+
/** Component type matching a CSS type selector. */
|
|
16
|
+
type?: string;
|
|
17
|
+
/** CSS class names attached to this node. */
|
|
18
|
+
classes?: string[];
|
|
19
|
+
/** Calculated rectangle for this node. */
|
|
20
|
+
rect: LayoutRect;
|
|
21
|
+
/** Child layout nodes. */
|
|
22
|
+
children: LayoutNode[];
|
|
23
|
+
/** Optional surface painted at this node's position. */
|
|
24
|
+
surface?: Surface;
|
|
25
|
+
}
|
|
26
|
+
export interface LayoutEngine<Options, Child> {
|
|
27
|
+
calculate(options: Options, children: Child[], bounds: LayoutRect): LayoutNode;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=surface-layout.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"surface-layout.d.ts","sourceRoot":"","sources":["../../src/ports/surface-layout.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAErD,MAAM,WAAW,UAAU;IACzB,+BAA+B;IAC/B,CAAC,EAAE,MAAM,CAAC;IACV,4BAA4B;IAC5B,CAAC,EAAE,MAAM,CAAC;IACV,wBAAwB;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,sBAAsB;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,UAAU;IACzB,oDAAoD;IACpD,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,mDAAmD;IACnD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,6CAA6C;IAC7C,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,0CAA0C;IAC1C,IAAI,EAAE,UAAU,CAAC;IACjB,0BAA0B;IAC1B,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB,wDAAwD;IACxD,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,YAAY,CAAC,OAAO,EAAE,KAAK;IAC1C,SAAS,CACP,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,KAAK,EAAE,EACjB,MAAM,EAAE,UAAU,GACjB,UAAU,CAAC;CACf"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"surface-layout.js","sourceRoot":"","sources":["../../src/ports/surface-layout.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { Cell, CellMask } from './surface-cell.js';
|
|
2
|
+
export declare function encodeCellIntoBuffer(buffer: Uint8Array, index: number, cell: Cell, sideTable: string[]): void;
|
|
3
|
+
export declare function decodeCellFromBuffer(buffer: Uint8Array, index: number, sideTable: readonly string[]): Cell;
|
|
4
|
+
export declare function syncCellFromBuffer(cell: Cell, buffer: Uint8Array, index: number, sideTable: readonly string[], exactOpacity?: number): void;
|
|
5
|
+
export declare function applyMaskToBuffer(buffer: Uint8Array, index: number, source: Cell, mask: CellMask, sideTable: string[]): void;
|
|
6
|
+
//# sourceMappingURL=surface-packed-codec.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"surface-packed-codec.d.ts","sourceRoot":"","sources":["../../src/ports/surface-packed-codec.ts"],"names":[],"mappings":"AAwBA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAOxD,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,UAAU,EAClB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,MAAM,EAAE,GAClB,IAAI,CAoBN;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,UAAU,EAClB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,SAAS,MAAM,EAAE,GAC3B,IAAI,CAmBN;AAED,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,UAAU,EAClB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,SAAS,MAAM,EAAE,EAC5B,YAAY,CAAC,EAAE,MAAM,GACpB,IAAI,CAUN;AAED,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,UAAU,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,IAAI,EACZ,IAAI,EAAE,QAAQ,EACd,SAAS,EAAE,MAAM,EAAE,GAClB,IAAI,CAwCN"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { byteAt, hexAt, rgbAt, } from '../core/render/safe-read.js';
|
|
2
|
+
import { CELL_STRIDE, FLAG_BG_SET, FLAG_EMPTY, FLAG_FG_SET, OFF_ALPHA, OFF_BG_R, OFF_CHAR, OFF_FG_R, OFF_FLAGS, OPACITY_MASK, decodeChar, decodeModifiers, decodeOpacity, encodeChar, encodeModifiers, encodeOpacity, } from '../core/render/packed-cell.js';
|
|
3
|
+
import { colorHex, colorRgb } from '../core/theme/color.js';
|
|
4
|
+
import { clearRgb, writeColorRefInto, writeMaskedColor, } from './surface-packed-color.js';
|
|
5
|
+
export function encodeCellIntoBuffer(buffer, index, cell, sideTable) {
|
|
6
|
+
const offset = index * CELL_STRIDE;
|
|
7
|
+
const charCode = encodeChar(cell.char, sideTable);
|
|
8
|
+
buffer[offset + OFF_CHAR] = charCode & 0xff;
|
|
9
|
+
buffer[offset + OFF_CHAR + 1] = (charCode >> 8) & 0xff;
|
|
10
|
+
let alphaBits = 0;
|
|
11
|
+
if (writeColorRefInto(cell.fg, cell.fgRGB, buffer, offset + OFF_FG_R)) {
|
|
12
|
+
alphaBits |= FLAG_FG_SET;
|
|
13
|
+
}
|
|
14
|
+
else {
|
|
15
|
+
clearRgb(buffer, offset + OFF_FG_R);
|
|
16
|
+
}
|
|
17
|
+
if (writeColorRefInto(cell.bg, cell.bgRGB, buffer, offset + OFF_BG_R)) {
|
|
18
|
+
alphaBits |= FLAG_BG_SET;
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
clearRgb(buffer, offset + OFF_BG_R);
|
|
22
|
+
}
|
|
23
|
+
buffer[offset + OFF_FLAGS] =
|
|
24
|
+
encodeModifiers(cell.modifiers) | (cell.empty ? FLAG_EMPTY : 0);
|
|
25
|
+
buffer[offset + OFF_ALPHA] =
|
|
26
|
+
(encodeOpacity(cell.opacity) & OPACITY_MASK) | alphaBits;
|
|
27
|
+
}
|
|
28
|
+
export function decodeCellFromBuffer(buffer, index, sideTable) {
|
|
29
|
+
const offset = index * CELL_STRIDE;
|
|
30
|
+
const charCode = byteAt(buffer, offset + OFF_CHAR) |
|
|
31
|
+
(byteAt(buffer, offset + OFF_CHAR + 1) << 8);
|
|
32
|
+
const alpha = byteAt(buffer, offset + OFF_ALPHA);
|
|
33
|
+
const flags = byteAt(buffer, offset + OFF_FLAGS);
|
|
34
|
+
const fgSet = (alpha & FLAG_FG_SET) !== 0;
|
|
35
|
+
const bgSet = (alpha & FLAG_BG_SET) !== 0;
|
|
36
|
+
return {
|
|
37
|
+
char: decodeChar(charCode, sideTable),
|
|
38
|
+
fg: fgSet ? hexAt(buffer, offset + OFF_FG_R) : undefined,
|
|
39
|
+
bg: bgSet ? hexAt(buffer, offset + OFF_BG_R) : undefined,
|
|
40
|
+
fgRGB: fgSet ? rgbAt(buffer, offset + OFF_FG_R) : undefined,
|
|
41
|
+
bgRGB: bgSet ? rgbAt(buffer, offset + OFF_BG_R) : undefined,
|
|
42
|
+
modifiers: decodeModifiers(flags & ~FLAG_EMPTY),
|
|
43
|
+
empty: (flags & FLAG_EMPTY) !== 0,
|
|
44
|
+
opacity: decodeOpacity(alpha & OPACITY_MASK),
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
export function syncCellFromBuffer(cell, buffer, index, sideTable, exactOpacity) {
|
|
48
|
+
const decoded = decodeCellFromBuffer(buffer, index, sideTable);
|
|
49
|
+
cell.char = decoded.char;
|
|
50
|
+
cell.fg = colorHex(decoded.fg);
|
|
51
|
+
cell.bg = colorHex(decoded.bg);
|
|
52
|
+
cell.fgRGB = colorRgb(decoded.fg);
|
|
53
|
+
cell.bgRGB = colorRgb(decoded.bg);
|
|
54
|
+
cell.modifiers = decoded.modifiers;
|
|
55
|
+
cell.empty = decoded.empty;
|
|
56
|
+
cell.opacity = exactOpacity ?? decoded.opacity;
|
|
57
|
+
}
|
|
58
|
+
export function applyMaskToBuffer(buffer, index, source, mask, sideTable) {
|
|
59
|
+
if (source.empty)
|
|
60
|
+
return;
|
|
61
|
+
const offset = index * CELL_STRIDE;
|
|
62
|
+
if (mask.char) {
|
|
63
|
+
const code = encodeChar(source.char, sideTable);
|
|
64
|
+
buffer[offset + OFF_CHAR] = code & 0xff;
|
|
65
|
+
buffer[offset + OFF_CHAR + 1] = (code >> 8) & 0xff;
|
|
66
|
+
}
|
|
67
|
+
if (mask.fg) {
|
|
68
|
+
writeMaskedColor(buffer, offset, OFF_FG_R, FLAG_FG_SET, source.fg, source.fgRGB);
|
|
69
|
+
}
|
|
70
|
+
if (mask.bg) {
|
|
71
|
+
writeMaskedColor(buffer, offset, OFF_BG_R, FLAG_BG_SET, source.bg, source.bgRGB);
|
|
72
|
+
}
|
|
73
|
+
if (mask.modifiers) {
|
|
74
|
+
const existing = byteAt(buffer, offset + OFF_FLAGS);
|
|
75
|
+
buffer[offset + OFF_FLAGS] =
|
|
76
|
+
(existing & FLAG_EMPTY) | encodeModifiers(source.modifiers);
|
|
77
|
+
}
|
|
78
|
+
if (mask.alpha) {
|
|
79
|
+
buffer[offset + OFF_FLAGS] =
|
|
80
|
+
byteAt(buffer, offset + OFF_FLAGS) & ~FLAG_EMPTY;
|
|
81
|
+
const alpha = byteAt(buffer, offset + OFF_ALPHA);
|
|
82
|
+
buffer[offset + OFF_ALPHA] =
|
|
83
|
+
(alpha & ~OPACITY_MASK) | encodeOpacity(source.opacity ?? 1);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=surface-packed-codec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"surface-packed-codec.js","sourceRoot":"","sources":["../../src/ports/surface-packed-codec.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,KAAK,EACL,KAAK,GACN,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,WAAW,EACX,WAAW,EACX,UAAU,EACV,WAAW,EACX,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,UAAU,EACV,eAAe,EACf,aAAa,EACb,UAAU,EACV,eAAe,EACf,aAAa,GACd,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAE5D,OAAO,EACL,QAAQ,EACR,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,2BAA2B,CAAC;AAEnC,MAAM,UAAU,oBAAoB,CAClC,MAAkB,EAClB,KAAa,EACb,IAAU,EACV,SAAmB;IAEnB,MAAM,MAAM,GAAG,KAAK,GAAG,WAAW,CAAC;IACnC,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAClD,MAAM,CAAC,MAAM,GAAG,QAAQ,CAAC,GAAG,QAAQ,GAAG,IAAI,CAAC;IAC5C,MAAM,CAAC,MAAM,GAAG,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;IACvD,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC,EAAE,CAAC;QACtE,SAAS,IAAI,WAAW,CAAC;IAC3B,CAAC;SAAM,CAAC;QACN,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC,CAAC;IACtC,CAAC;IACD,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC,EAAE,CAAC;QACtE,SAAS,IAAI,WAAW,CAAC;IAC3B,CAAC;SAAM,CAAC;QACN,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC,CAAC;IACtC,CAAC;IACD,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;QACxB,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClE,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;QACxB,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,YAAY,CAAC,GAAG,SAAS,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,MAAkB,EAClB,KAAa,EACb,SAA4B;IAE5B,MAAM,MAAM,GAAG,KAAK,GAAG,WAAW,CAAC;IACnC,MAAM,QAAQ,GACZ,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC;QACjC,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/C,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IACjD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IACjD,MAAM,KAAK,GAAG,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAG,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IAC1C,OAAO;QACL,IAAI,EAAE,UAAU,CAAC,QAAQ,EAAE,SAAS,CAAC;QACrC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;QACxD,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;QACxD,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;QAC3D,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;QAC3D,SAAS,EAAE,eAAe,CAAC,KAAK,GAAG,CAAC,UAAU,CAAC;QAC/C,KAAK,EAAE,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;QACjC,OAAO,EAAE,aAAa,CAAC,KAAK,GAAG,YAAY,CAAC;KAC7C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,IAAU,EACV,MAAkB,EAClB,KAAa,EACb,SAA4B,EAC5B,YAAqB;IAErB,MAAM,OAAO,GAAG,oBAAoB,CAAC,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;IAC/D,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IACzB,IAAI,CAAC,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC/B,IAAI,CAAC,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC/B,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAClC,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAClC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IACnC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC3B,IAAI,CAAC,OAAO,GAAG,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,MAAkB,EAClB,KAAa,EACb,MAAY,EACZ,IAAc,EACd,SAAmB;IAEnB,IAAI,MAAM,CAAC,KAAK;QAAE,OAAO;IACzB,MAAM,MAAM,GAAG,KAAK,GAAG,WAAW,CAAC;IACnC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAChD,MAAM,CAAC,MAAM,GAAG,QAAQ,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;QACxC,MAAM,CAAC,MAAM,GAAG,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;IACrD,CAAC;IACD,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;QACZ,gBAAgB,CACd,MAAM,EACN,MAAM,EACN,QAAQ,EACR,WAAW,EACX,MAAM,CAAC,EAAE,EACT,MAAM,CAAC,KAAK,CACb,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;QACZ,gBAAgB,CACd,MAAM,EACN,MAAM,EACN,QAAQ,EACR,WAAW,EACX,MAAM,CAAC,EAAE,EACT,MAAM,CAAC,KAAK,CACb,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;QACpD,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;YACxB,CAAC,QAAQ,GAAG,UAAU,CAAC,GAAG,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAChE,CAAC;IACD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;YACxB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC;QACnD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;QACjD,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;YACxB,CAAC,KAAK,GAAG,CAAC,YAAY,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC;IACjE,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type ColorRef } from '../core/theme/color.js';
|
|
2
|
+
import { OFF_BG_R, OFF_FG_R } from '../core/render/packed-cell.js';
|
|
3
|
+
import type { Cell } from './surface-cell.js';
|
|
4
|
+
export declare function writeColorRefInto(reference: ColorRef | undefined, rgb: readonly [number, number, number] | undefined, output: Uint8Array, offset: number): boolean;
|
|
5
|
+
export declare function writeMaskedColor(buffer: Uint8Array, cellOffset: number, colorOffset: typeof OFF_FG_R | typeof OFF_BG_R, presentFlag: number, reference: Cell['fg'], rgb: Cell['fgRGB']): void;
|
|
6
|
+
export declare function clearRgb(buffer: Uint8Array, offset: number): void;
|
|
7
|
+
//# sourceMappingURL=surface-packed-color.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"surface-packed-color.d.ts","sourceRoot":"","sources":["../../src/ports/surface-packed-color.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,QAAQ,EACd,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAEL,QAAQ,EACR,QAAQ,EACT,MAAM,+BAA+B,CAAC;AAEvC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAE9C,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,QAAQ,GAAG,SAAS,EAC/B,GAAG,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EAClD,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,GACb,OAAO,CAeT;AAED,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,UAAU,EAClB,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,OAAO,QAAQ,GAAG,OAAO,QAAQ,EAC9C,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,EACrB,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GACjB,IAAI,CAQN;AAED,wBAAgB,QAAQ,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAIjE"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { isResolvedColor, } from '../core/theme/color.js';
|
|
2
|
+
import { OFF_ALPHA, } from '../core/render/packed-cell.js';
|
|
3
|
+
import { byteAt } from '../core/render/safe-read.js';
|
|
4
|
+
export function writeColorRefInto(reference, rgb, output, offset) {
|
|
5
|
+
if (rgb !== undefined) {
|
|
6
|
+
output[offset] = rgb[0];
|
|
7
|
+
output[offset + 1] = rgb[1];
|
|
8
|
+
output[offset + 2] = rgb[2];
|
|
9
|
+
return true;
|
|
10
|
+
}
|
|
11
|
+
if (reference == null)
|
|
12
|
+
return false;
|
|
13
|
+
if (isResolvedColor(reference)) {
|
|
14
|
+
output[offset] = reference.rgb[0];
|
|
15
|
+
output[offset + 1] = reference.rgb[1];
|
|
16
|
+
output[offset + 2] = reference.rgb[2];
|
|
17
|
+
return true;
|
|
18
|
+
}
|
|
19
|
+
return inlineHexRgb(reference, output, offset);
|
|
20
|
+
}
|
|
21
|
+
export function writeMaskedColor(buffer, cellOffset, colorOffset, presentFlag, reference, rgb) {
|
|
22
|
+
const alphaOffset = cellOffset + OFF_ALPHA;
|
|
23
|
+
if (writeColorRefInto(reference, rgb, buffer, cellOffset + colorOffset)) {
|
|
24
|
+
buffer[alphaOffset] = byteAt(buffer, alphaOffset) | presentFlag;
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
clearRgb(buffer, cellOffset + colorOffset);
|
|
28
|
+
buffer[alphaOffset] = byteAt(buffer, alphaOffset) & ~presentFlag;
|
|
29
|
+
}
|
|
30
|
+
export function clearRgb(buffer, offset) {
|
|
31
|
+
buffer[offset] = 0;
|
|
32
|
+
buffer[offset + 1] = 0;
|
|
33
|
+
buffer[offset + 2] = 0;
|
|
34
|
+
}
|
|
35
|
+
function inlineHexRgb(hex, output, offset) {
|
|
36
|
+
if (hex.length !== 7)
|
|
37
|
+
return false;
|
|
38
|
+
output[offset] =
|
|
39
|
+
(hexDigit(hex.charCodeAt(1)) << 4) | hexDigit(hex.charCodeAt(2));
|
|
40
|
+
output[offset + 1] =
|
|
41
|
+
(hexDigit(hex.charCodeAt(3)) << 4) | hexDigit(hex.charCodeAt(4));
|
|
42
|
+
output[offset + 2] =
|
|
43
|
+
(hexDigit(hex.charCodeAt(5)) << 4) | hexDigit(hex.charCodeAt(6));
|
|
44
|
+
return true;
|
|
45
|
+
}
|
|
46
|
+
function hexDigit(code) {
|
|
47
|
+
if (code >= 97)
|
|
48
|
+
return code - 87;
|
|
49
|
+
if (code >= 65)
|
|
50
|
+
return code - 55;
|
|
51
|
+
return code - 48;
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=surface-packed-color.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"surface-packed-color.js","sourceRoot":"","sources":["../../src/ports/surface-packed-color.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { Surface } from './surface-contract.js';
|
|
2
|
+
import { type CellMask } from './surface-cell.js';
|
|
3
|
+
import type { Matrix3x3, TransformOptions } from './surface-transform.js';
|
|
4
|
+
import { type PackedSurfaceState } from './surface-packed-state.js';
|
|
5
|
+
export declare function blitSurface(state: PackedSurfaceState, source: Surface, destinationX: number, destinationY: number, sourceX: number, sourceY: number, sourceWidth: number, sourceHeight: number, mask: CellMask): void;
|
|
6
|
+
export declare function transformSurface(state: PackedSurfaceState, source: Surface, matrix: Matrix3x3, options: TransformOptions): void;
|
|
7
|
+
//# sourceMappingURL=surface-packed-compose.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"surface-packed-compose.d.ts","sourceRoot":"","sources":["../../src/ports/surface-packed-compose.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAEL,KAAK,QAAQ,EACd,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAI1E,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,2BAA2B,CAAC;AAEnC,wBAAgB,WAAW,CACzB,KAAK,EAAE,kBAAkB,EACzB,MAAM,EAAE,OAAO,EACf,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,QAAQ,GACb,IAAI,CA4DN;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,kBAAkB,EACzB,MAAM,EAAE,OAAO,EACf,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,gBAAgB,GACxB,IAAI,CAgCN"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { FULL_MASK, } from './surface-cell.js';
|
|
2
|
+
import { isPackedSurface } from './surface-contract.js';
|
|
3
|
+
import { applyMaskToBuffer } from './surface-packed-codec.js';
|
|
4
|
+
import { copyPackedSurfaceRegion } from './surface-packed-read.js';
|
|
5
|
+
import { markCellDirty, } from './surface-packed-state.js';
|
|
6
|
+
export function blitSurface(state, source, destinationX, destinationY, sourceX, sourceY, sourceWidth, sourceHeight, mask) {
|
|
7
|
+
const sourceStartX = Math.max(0, sourceX);
|
|
8
|
+
const sourceStartY = Math.max(0, sourceY);
|
|
9
|
+
const width = Math.min(sourceWidth - (sourceStartX - sourceX), source.width - sourceStartX);
|
|
10
|
+
const height = Math.min(sourceHeight - (sourceStartY - sourceY), source.height - sourceStartY);
|
|
11
|
+
if (width <= 0 || height <= 0)
|
|
12
|
+
return;
|
|
13
|
+
const unclippedDestinationX = destinationX + (sourceStartX - sourceX);
|
|
14
|
+
const unclippedDestinationY = destinationY + (sourceStartY - sourceY);
|
|
15
|
+
const destinationStartX = Math.max(0, unclippedDestinationX);
|
|
16
|
+
const destinationStartY = Math.max(0, unclippedDestinationY);
|
|
17
|
+
const adjustedSourceX = sourceStartX + (destinationStartX - unclippedDestinationX);
|
|
18
|
+
const adjustedSourceY = sourceStartY + (destinationStartY - unclippedDestinationY);
|
|
19
|
+
const copyWidth = Math.min(state.width - destinationStartX, width - (adjustedSourceX - sourceStartX));
|
|
20
|
+
const copyHeight = Math.min(state.height - destinationStartY, height - (adjustedSourceY - sourceStartY));
|
|
21
|
+
if (copyWidth <= 0 || copyHeight <= 0)
|
|
22
|
+
return;
|
|
23
|
+
if (isPackedSurface(source) && mask === FULL_MASK) {
|
|
24
|
+
copyPackedSurfaceRegion(state, source, destinationStartX, destinationStartY, adjustedSourceX, adjustedSourceY, copyWidth, copyHeight);
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
for (let row = 0; row < copyHeight; row++) {
|
|
28
|
+
for (let column = 0; column < copyWidth; column++) {
|
|
29
|
+
const index = (destinationStartY + row) * state.width +
|
|
30
|
+
destinationStartX +
|
|
31
|
+
column;
|
|
32
|
+
applyMaskToBuffer(state.buffer, index, source.get(adjustedSourceX + column, adjustedSourceY + row), mask, state.sideTable);
|
|
33
|
+
markCellDirty(state, index);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
export function transformSurface(state, source, matrix, options) {
|
|
38
|
+
const { charMap = {}, mask = FULL_MASK } = options;
|
|
39
|
+
const [a, b, c, d, translateX, translateY] = matrix;
|
|
40
|
+
const determinant = a * d - b * c;
|
|
41
|
+
if (Math.abs(determinant) < 0.0001)
|
|
42
|
+
return;
|
|
43
|
+
for (let y = 0; y < state.height; y++) {
|
|
44
|
+
for (let x = 0; x < state.width; x++) {
|
|
45
|
+
const sourceX = Math.round((d * (x - translateX) - b * (y - translateY)) / determinant);
|
|
46
|
+
const sourceY = Math.round((a * (y - translateY) - c * (x - translateX)) / determinant);
|
|
47
|
+
if (sourceX < 0 ||
|
|
48
|
+
sourceX >= source.width ||
|
|
49
|
+
sourceY < 0 ||
|
|
50
|
+
sourceY >= source.height) {
|
|
51
|
+
continue;
|
|
52
|
+
}
|
|
53
|
+
const sourceCell = source.get(sourceX, sourceY);
|
|
54
|
+
if (sourceCell.empty)
|
|
55
|
+
continue;
|
|
56
|
+
const cell = {
|
|
57
|
+
...sourceCell,
|
|
58
|
+
char: charMap[sourceCell.char] ?? sourceCell.char,
|
|
59
|
+
};
|
|
60
|
+
const index = y * state.width + x;
|
|
61
|
+
applyMaskToBuffer(state.buffer, index, cell, mask, state.sideTable);
|
|
62
|
+
markCellDirty(state, index);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=surface-packed-compose.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"surface-packed-compose.js","sourceRoot":"","sources":["../../src/ports/surface-packed-compose.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { PackedSurface, Surface } from './surface-contract.js';
|
|
2
|
+
import { type Cell, type CellMask } from './surface-cell.js';
|
|
3
|
+
import { type PackedSurfaceState } from './surface-packed-state.js';
|
|
4
|
+
export declare function getSurfaceCell(state: PackedSurfaceState, x: number, y: number, mask?: CellMask): Cell;
|
|
5
|
+
export declare function getSurfaceRow(state: PackedSurfaceState, y: number, x: number, width: number, mask: CellMask): Cell[];
|
|
6
|
+
export declare function setSurfaceRow(state: PackedSurfaceState, y: number, row: Cell[], x: number, mask: CellMask): void;
|
|
7
|
+
export declare function copySurfaceIntoClone(state: PackedSurfaceState, clone: PackedSurface): Surface;
|
|
8
|
+
export declare function copyPackedSurfaceRegion(state: PackedSurfaceState, source: PackedSurface, destinationX: number, destinationY: number, sourceX: number, sourceY: number, width: number, height: number): void;
|
|
9
|
+
//# sourceMappingURL=surface-packed-read.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"surface-packed-read.d.ts","sourceRoot":"","sources":["../../src/ports/surface-packed-read.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAGL,KAAK,IAAI,EACT,KAAK,QAAQ,EACd,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAGL,KAAK,kBAAkB,EACxB,MAAM,2BAA2B,CAAC;AAEnC,wBAAgB,cAAc,CAC5B,KAAK,EAAE,kBAAkB,EACzB,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,IAAI,GAAE,QAAoB,GACzB,IAAI,CAKN;AAED,wBAAgB,aAAa,CAC3B,KAAK,EAAE,kBAAkB,EACzB,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,QAAQ,GACb,IAAI,EAAE,CAYR;AAED,wBAAgB,aAAa,CAC3B,KAAK,EAAE,kBAAkB,EACzB,CAAC,EAAE,MAAM,EACT,GAAG,EAAE,IAAI,EAAE,EACX,CAAC,EAAE,MAAM,EACT,IAAI,EAAE,QAAQ,GACb,IAAI,CAeN;AAED,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,kBAAkB,EACzB,KAAK,EAAE,aAAa,GACnB,OAAO,CAOT;AAED,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,kBAAkB,EACzB,MAAM,EAAE,aAAa,EACrB,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,IAAI,CAoBN"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { byteAt, cellAt } from '../core/render/safe-read.js';
|
|
2
|
+
import { CELL_STRIDE, FLAG_EMPTY, OFF_CHAR, OFF_FLAGS, SIDE_TABLE_THRESHOLD, encodeChar, } from '../core/render/packed-cell.js';
|
|
3
|
+
import { FULL_MASK, maskCell, } from './surface-cell.js';
|
|
4
|
+
import { applyMaskToBuffer } from './surface-packed-codec.js';
|
|
5
|
+
import { ensureCellClean, markCellDirty, } from './surface-packed-state.js';
|
|
6
|
+
export function getSurfaceCell(state, x, y, mask = FULL_MASK) {
|
|
7
|
+
if (!inBounds(state, x, y))
|
|
8
|
+
return { char: ' ', empty: true };
|
|
9
|
+
const index = y * state.width + x;
|
|
10
|
+
ensureCellClean(state, index);
|
|
11
|
+
return maskCell(cellAt(state.cells, index), mask);
|
|
12
|
+
}
|
|
13
|
+
export function getSurfaceRow(state, y, x, width, mask) {
|
|
14
|
+
if (y < 0 || y >= state.height)
|
|
15
|
+
return [];
|
|
16
|
+
const startX = Math.max(0, x);
|
|
17
|
+
const count = Math.min(state.width - startX, width);
|
|
18
|
+
if (count <= 0)
|
|
19
|
+
return [];
|
|
20
|
+
const start = y * state.width + startX;
|
|
21
|
+
for (let index = 0; index < count; index++) {
|
|
22
|
+
ensureCellClean(state, start + index);
|
|
23
|
+
}
|
|
24
|
+
return state.cells
|
|
25
|
+
.slice(start, start + count)
|
|
26
|
+
.map((cell) => maskCell(cell, mask));
|
|
27
|
+
}
|
|
28
|
+
export function setSurfaceRow(state, y, row, x, mask) {
|
|
29
|
+
if (y < 0 || y >= state.height)
|
|
30
|
+
return;
|
|
31
|
+
const startX = Math.max(0, x);
|
|
32
|
+
const count = Math.min(state.width - startX, row.length);
|
|
33
|
+
for (let offset = 0; offset < count; offset++) {
|
|
34
|
+
const index = y * state.width + startX + offset;
|
|
35
|
+
applyMaskToBuffer(state.buffer, index, cellAt(row, offset), mask, state.sideTable);
|
|
36
|
+
markCellDirty(state, index);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
export function copySurfaceIntoClone(state, clone) {
|
|
40
|
+
clone.buffer.set(state.buffer);
|
|
41
|
+
for (const entry of state.sideTable) {
|
|
42
|
+
if (!clone.sideTable.includes(entry))
|
|
43
|
+
clone.sideTable.push(entry);
|
|
44
|
+
}
|
|
45
|
+
clone.markAllDirty();
|
|
46
|
+
return clone;
|
|
47
|
+
}
|
|
48
|
+
export function copyPackedSurfaceRegion(state, source, destinationX, destinationY, sourceX, sourceY, width, height) {
|
|
49
|
+
for (let row = 0; row < height; row++) {
|
|
50
|
+
for (let column = 0; column < width; column++) {
|
|
51
|
+
const sourceIndex = (sourceY + row) * source.width + sourceX + column;
|
|
52
|
+
const sourceOffset = sourceIndex * CELL_STRIDE;
|
|
53
|
+
if (byteAt(source.buffer, sourceOffset + OFF_FLAGS) & FLAG_EMPTY) {
|
|
54
|
+
continue;
|
|
55
|
+
}
|
|
56
|
+
const targetIndex = (destinationY + row) * state.width + destinationX + column;
|
|
57
|
+
const targetOffset = targetIndex * CELL_STRIDE;
|
|
58
|
+
state.buffer.set(source.buffer.subarray(sourceOffset, sourceOffset + CELL_STRIDE), targetOffset);
|
|
59
|
+
copySideTableCharacter(state, source, sourceOffset, targetOffset);
|
|
60
|
+
markCellDirty(state, targetIndex);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
function copySideTableCharacter(state, source, sourceOffset, targetOffset) {
|
|
65
|
+
const code = byteAt(source.buffer, sourceOffset) |
|
|
66
|
+
(byteAt(source.buffer, sourceOffset + 1) << 8);
|
|
67
|
+
if (code < SIDE_TABLE_THRESHOLD)
|
|
68
|
+
return;
|
|
69
|
+
const char = source.sideTable[code - SIDE_TABLE_THRESHOLD] ?? ' ';
|
|
70
|
+
const targetCode = encodeChar(char, state.sideTable);
|
|
71
|
+
state.buffer[targetOffset + OFF_CHAR] = targetCode & 0xff;
|
|
72
|
+
state.buffer[targetOffset + OFF_CHAR + 1] = (targetCode >> 8) & 0xff;
|
|
73
|
+
}
|
|
74
|
+
function inBounds(state, x, y) {
|
|
75
|
+
return x >= 0 && x < state.width && y >= 0 && y < state.height;
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=surface-packed-read.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"surface-packed-read.js","sourceRoot":"","sources":["../../src/ports/surface-packed-read.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EACL,WAAW,EACX,UAAU,EACV,QAAQ,EACR,SAAS,EACT,oBAAoB,EACpB,UAAU,GACX,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EACL,SAAS,EACT,QAAQ,GAGT,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EACL,eAAe,EACf,aAAa,GAEd,MAAM,2BAA2B,CAAC;AAEnC,MAAM,UAAU,cAAc,CAC5B,KAAyB,EACzB,CAAS,EACT,CAAS,EACT,OAAiB,SAAS;IAE1B,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAC9D,MAAM,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;IAClC,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC9B,OAAO,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,KAAyB,EACzB,CAAS,EACT,CAAS,EACT,KAAa,EACb,IAAc;IAEd,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,EAAE,KAAK,CAAC,CAAC;IACpD,IAAI,KAAK,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IAC1B,MAAM,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC;IACvC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC;QAC3C,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,CAAC,CAAC;IACxC,CAAC;IACD,OAAO,KAAK,CAAC,KAAK;SACf,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,CAAC;SAC3B,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,KAAyB,EACzB,CAAS,EACT,GAAW,EACX,CAAS,EACT,IAAc;IAEd,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,MAAM;QAAE,OAAO;IACvC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACzD,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC;QAC9C,MAAM,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;QAChD,iBAAiB,CACf,KAAK,CAAC,MAAM,EACZ,KAAK,EACL,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,EACnB,IAAI,EACJ,KAAK,CAAC,SAAS,CAChB,CAAC;QACF,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC9B,CAAC;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,KAAyB,EACzB,KAAoB;IAEpB,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC/B,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACpC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpE,CAAC;IACD,KAAK,CAAC,YAAY,EAAE,CAAC;IACrB,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,KAAyB,EACzB,MAAqB,EACrB,YAAoB,EACpB,YAAoB,EACpB,OAAe,EACf,OAAe,EACf,KAAa,EACb,MAAc;IAEd,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC;QACtC,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC;YAC9C,MAAM,WAAW,GACf,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG,MAAM,CAAC,KAAK,GAAG,OAAO,GAAG,MAAM,CAAC;YACpD,MAAM,YAAY,GAAG,WAAW,GAAG,WAAW,CAAC;YAC/C,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,SAAS,CAAC,GAAG,UAAU,EAAE,CAAC;gBACjE,SAAS;YACX,CAAC;YACD,MAAM,WAAW,GACf,CAAC,YAAY,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,GAAG,YAAY,GAAG,MAAM,CAAC;YAC7D,MAAM,YAAY,GAAG,WAAW,GAAG,WAAW,CAAC;YAC/C,KAAK,CAAC,MAAM,CAAC,GAAG,CACd,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,EAAE,YAAY,GAAG,WAAW,CAAC,EAChE,YAAY,CACb,CAAC;YACF,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;YAClE,aAAa,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAC7B,KAAyB,EACzB,MAAqB,EACrB,YAAoB,EACpB,YAAoB;IAEpB,MAAM,IAAI,GACR,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC;QACnC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IACjD,IAAI,IAAI,GAAG,oBAAoB;QAAE,OAAO;IACxC,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,GAAG,oBAAoB,CAAC,IAAI,GAAG,CAAC;IAClE,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IACrD,KAAK,CAAC,MAAM,CAAC,YAAY,GAAG,QAAQ,CAAC,GAAG,UAAU,GAAG,IAAI,CAAC;IAC1D,KAAK,CAAC,MAAM,CAAC,YAAY,GAAG,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;AACvE,CAAC;AAED,SAAS,QAAQ,CAAC,KAAyB,EAAE,CAAS,EAAE,CAAS;IAC/D,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;AACjE,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { Cell } from './surface-cell.js';
|
|
2
|
+
export interface PackedSurfaceState {
|
|
3
|
+
readonly width: number;
|
|
4
|
+
readonly height: number;
|
|
5
|
+
readonly size: number;
|
|
6
|
+
readonly defaultCell: Cell;
|
|
7
|
+
readonly sideTable: string[];
|
|
8
|
+
readonly buffer: Uint8Array;
|
|
9
|
+
readonly dirtyWords: Uint32Array;
|
|
10
|
+
readonly renderDirtyWords: Uint32Array;
|
|
11
|
+
readonly cells: Cell[];
|
|
12
|
+
}
|
|
13
|
+
export declare function createPackedSurfaceState(width: number, height: number, fill?: Cell): PackedSurfaceState;
|
|
14
|
+
export declare function markCellDirty(state: PackedSurfaceState, index: number): void;
|
|
15
|
+
export declare function ensureCellClean(state: PackedSurfaceState, index: number): void;
|
|
16
|
+
export declare function markAllClean(state: PackedSurfaceState): void;
|
|
17
|
+
export declare function markAllDirty(state: PackedSurfaceState): void;
|
|
18
|
+
export declare function markAllRenderClean(state: PackedSurfaceState): void;
|
|
19
|
+
//# sourceMappingURL=surface-packed-state.d.ts.map
|