@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,93 @@
|
|
|
1
|
+
import type { Surface } from '../ports/surface.js';
|
|
2
|
+
import type { UiCellSourceMapEntry, UiSceneIr, UiSceneTerminalProof } from './ui-scene-ir.js';
|
|
3
|
+
export type ProfunctorPageInspectionMode = 'normal' | 'node-ids' | 'source-refs' | 'token-refs' | 'composition' | 'obstructions';
|
|
4
|
+
export interface ProfunctorPageTargetEntry {
|
|
5
|
+
readonly pageNodeId: string;
|
|
6
|
+
readonly templateNodeId: string;
|
|
7
|
+
readonly contentNodeId: string | null;
|
|
8
|
+
readonly blockDefinitionId: string;
|
|
9
|
+
readonly renderNodeId: string | null;
|
|
10
|
+
readonly region: {
|
|
11
|
+
readonly x: number;
|
|
12
|
+
readonly y: number;
|
|
13
|
+
readonly width: number;
|
|
14
|
+
readonly height: number;
|
|
15
|
+
} | null;
|
|
16
|
+
readonly residual: {
|
|
17
|
+
readonly kind: 'hidden-node' | 'hidden-unsupported-block';
|
|
18
|
+
readonly blockDefinitionId: string;
|
|
19
|
+
} | null;
|
|
20
|
+
readonly sourceRefs: readonly string[];
|
|
21
|
+
readonly tokenRefs: readonly string[];
|
|
22
|
+
readonly actionIds: readonly string[];
|
|
23
|
+
readonly requiredCapabilities: readonly string[];
|
|
24
|
+
}
|
|
25
|
+
export interface ProfunctorPageActionFact {
|
|
26
|
+
readonly actionId: string;
|
|
27
|
+
readonly pageNodeId: string;
|
|
28
|
+
readonly label: string;
|
|
29
|
+
readonly target: string;
|
|
30
|
+
}
|
|
31
|
+
export interface ProfunctorPageCapabilityOutcome {
|
|
32
|
+
readonly capability: string;
|
|
33
|
+
readonly disposition: 'structural-fact' | 'action-adapter' | 'residual';
|
|
34
|
+
readonly detail: string;
|
|
35
|
+
}
|
|
36
|
+
export interface ProfunctorPageTargetMap {
|
|
37
|
+
readonly artifactVersion: 'bijou-profunctor-page-map/1';
|
|
38
|
+
readonly pageId: string;
|
|
39
|
+
readonly compositionRef: string;
|
|
40
|
+
readonly overrideRefs: readonly string[];
|
|
41
|
+
readonly route: string;
|
|
42
|
+
readonly sceneId: string;
|
|
43
|
+
readonly targetProfile: 'bijou-terminal-project-page/1';
|
|
44
|
+
readonly entries: readonly ProfunctorPageTargetEntry[];
|
|
45
|
+
readonly readingOrder: readonly string[];
|
|
46
|
+
readonly outline: readonly {
|
|
47
|
+
readonly level: number;
|
|
48
|
+
readonly pageNodeId: string;
|
|
49
|
+
readonly text: string;
|
|
50
|
+
}[];
|
|
51
|
+
readonly landmarks: readonly {
|
|
52
|
+
readonly pageNodeId: string;
|
|
53
|
+
readonly role: string;
|
|
54
|
+
}[];
|
|
55
|
+
readonly tokenRefs: readonly string[];
|
|
56
|
+
readonly sourceOccurrences: readonly string[];
|
|
57
|
+
readonly actions: readonly ProfunctorPageActionFact[];
|
|
58
|
+
readonly capabilityOutcomes: readonly ProfunctorPageCapabilityOutcome[];
|
|
59
|
+
readonly cellSourceMap: readonly UiCellSourceMapEntry[];
|
|
60
|
+
}
|
|
61
|
+
export interface ProfunctorPageTargetReceipt {
|
|
62
|
+
readonly artifactVersion: 'bijou-profunctor-page-receipt/1';
|
|
63
|
+
readonly pageId: string;
|
|
64
|
+
readonly route: string;
|
|
65
|
+
readonly mode: ProfunctorPageInspectionMode;
|
|
66
|
+
readonly inputDigests: Readonly<Record<string, string>>;
|
|
67
|
+
readonly outputDigests: Readonly<Record<string, string>>;
|
|
68
|
+
readonly upstreamClaims: readonly string[];
|
|
69
|
+
readonly upstreamClaimsInherited: false;
|
|
70
|
+
readonly capabilityOutcomes: readonly ProfunctorPageCapabilityOutcome[];
|
|
71
|
+
}
|
|
72
|
+
export interface ProfunctorPageOutputArtifact {
|
|
73
|
+
readonly filename: string;
|
|
74
|
+
readonly source: string;
|
|
75
|
+
}
|
|
76
|
+
export interface ProfunctorPageTargetProof {
|
|
77
|
+
readonly scene: UiSceneIr;
|
|
78
|
+
readonly targetMap: ProfunctorPageTargetMap;
|
|
79
|
+
readonly terminalProof: UiSceneTerminalProof;
|
|
80
|
+
readonly surface: Surface;
|
|
81
|
+
readonly receipt: ProfunctorPageTargetReceipt;
|
|
82
|
+
readonly witness: string;
|
|
83
|
+
readonly artifacts: {
|
|
84
|
+
readonly scene: ProfunctorPageOutputArtifact;
|
|
85
|
+
readonly targetMap: ProfunctorPageOutputArtifact;
|
|
86
|
+
readonly receipt: ProfunctorPageOutputArtifact;
|
|
87
|
+
readonly witness: ProfunctorPageOutputArtifact;
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
export interface ProfunctorPageTargetOptions {
|
|
91
|
+
readonly mode?: ProfunctorPageInspectionMode;
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=profunctor-page-target-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profunctor-page-target-types.d.ts","sourceRoot":"","sources":["../../src/core/profunctor-page-target-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profunctor-page-target-types.js","sourceRoot":"","sources":["../../src/core/profunctor-page-target-types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ProfunctorPageTargetError } from './profunctor-page-error.js';
|
|
2
|
+
import type { ProfunctorArtifactInputs } from './profunctor-page-model.js';
|
|
3
|
+
import type { ProfunctorPageTargetOptions, ProfunctorPageTargetProof } from './profunctor-page-target-types.js';
|
|
4
|
+
export { ProfunctorPageTargetError };
|
|
5
|
+
export type { ProfunctorArtifactInput, ProfunctorArtifactInputs, } from './profunctor-page-model.js';
|
|
6
|
+
export type { ProfunctorPageInspectionMode, ProfunctorPageTargetEntry, ProfunctorPageTargetMap, ProfunctorPageTargetOptions, ProfunctorPageTargetProof, ProfunctorPageTargetReceipt, } from './profunctor-page-target-types.js';
|
|
7
|
+
export declare function lowerProfunctorPageArtifacts(inputs: ProfunctorArtifactInputs, options?: ProfunctorPageTargetOptions): ProfunctorPageTargetProof;
|
|
8
|
+
//# sourceMappingURL=profunctor-page-target.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profunctor-page-target.d.ts","sourceRoot":"","sources":["../../src/core/profunctor-page-target.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,yBAAyB,EAC1B,MAAM,4BAA4B,CAAC;AAEpC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAU3E,OAAO,KAAK,EAEV,2BAA2B,EAC3B,yBAAyB,EAC1B,MAAM,mCAAmC,CAAC;AAM3C,OAAO,EAAE,yBAAyB,EAAE,CAAC;AACrC,YAAY,EACV,uBAAuB,EACvB,wBAAwB,GACzB,MAAM,4BAA4B,CAAC;AACpC,YAAY,EACV,4BAA4B,EAC5B,yBAAyB,EACzB,uBAAuB,EACvB,2BAA2B,EAC3B,yBAAyB,EACzB,2BAA2B,GAC5B,MAAM,mCAAmC,CAAC;AAE3C,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,wBAAwB,EAChC,OAAO,GAAE,2BAAgC,GACxC,yBAAyB,CAgE3B"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { capabilityOutcomes } from './profunctor-page-capabilities.js';
|
|
2
|
+
import { collectPageActions } from './profunctor-page-actions.js';
|
|
3
|
+
import { failPageTarget, ProfunctorPageTargetError, } from './profunctor-page-error.js';
|
|
4
|
+
import { createProfunctorPageTargetMap } from './profunctor-page-map.js';
|
|
5
|
+
import { assertSceneBytes, createTargetReceipt, jsonArtifact, surfaceWitness, textArtifact, } from './profunctor-page-output.js';
|
|
6
|
+
import { parseProfunctorArtifactFamily } from './profunctor-page-parse.js';
|
|
7
|
+
import { buildProfunctorPageScene } from './profunctor-page-scene.js';
|
|
8
|
+
import { lowerUiSceneToTerminalProof, } from './ui-scene-ir.js';
|
|
9
|
+
import { validateProfunctorArtifactFamily } from './profunctor-page-validate-family.js';
|
|
10
|
+
export { ProfunctorPageTargetError };
|
|
11
|
+
export function lowerProfunctorPageArtifacts(inputs, options = {}) {
|
|
12
|
+
try {
|
|
13
|
+
const mode = inspectionMode(options);
|
|
14
|
+
const family = parseProfunctorArtifactFamily(inputs);
|
|
15
|
+
validateProfunctorArtifactFamily(family);
|
|
16
|
+
const outcomes = capabilityOutcomes(family.page.capabilityRequirements);
|
|
17
|
+
const actions = collectPageActions(family.page);
|
|
18
|
+
const build = buildProfunctorPageScene(family.page, family.inputDigests.page, actions, outcomes, mode);
|
|
19
|
+
const terminalProof = lowerUiSceneToTerminalProof(build.scene);
|
|
20
|
+
const targetMap = createProfunctorPageTargetMap(family.page, family.sourceMap, build.scene.id, build.regions, actions, outcomes, terminalProof.lowering.cellSourceMap);
|
|
21
|
+
const sceneArtifact = jsonArtifact('page.bijou.scene.json', build.scene);
|
|
22
|
+
const mapArtifact = jsonArtifact('page.bijou.map.json', targetMap);
|
|
23
|
+
const witness = surfaceWitness(terminalProof.lowering.surface);
|
|
24
|
+
const witnessArtifact = textArtifact('page.bijou.txt', witness);
|
|
25
|
+
const receipt = createTargetReceipt({
|
|
26
|
+
family,
|
|
27
|
+
mode,
|
|
28
|
+
scene: sceneArtifact,
|
|
29
|
+
targetMap: mapArtifact,
|
|
30
|
+
targetMapValue: targetMap,
|
|
31
|
+
terminalProof,
|
|
32
|
+
witness: witnessArtifact,
|
|
33
|
+
});
|
|
34
|
+
const receiptArtifact = jsonArtifact('page.bijou.receipt.json', receipt);
|
|
35
|
+
assertSceneBytes(sceneArtifact, build.scene);
|
|
36
|
+
return {
|
|
37
|
+
scene: build.scene,
|
|
38
|
+
targetMap,
|
|
39
|
+
terminalProof,
|
|
40
|
+
surface: terminalProof.lowering.surface,
|
|
41
|
+
receipt,
|
|
42
|
+
witness,
|
|
43
|
+
artifacts: {
|
|
44
|
+
scene: sceneArtifact,
|
|
45
|
+
targetMap: mapArtifact,
|
|
46
|
+
receipt: receiptArtifact,
|
|
47
|
+
witness: witnessArtifact,
|
|
48
|
+
},
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
catch (error) {
|
|
52
|
+
if (error instanceof ProfunctorPageTargetError) {
|
|
53
|
+
throw error;
|
|
54
|
+
}
|
|
55
|
+
failPageTarget('BIJOU_PAGE_OUTPUT_INVALID', 'bijou-profunctor-page-target', error instanceof Error ? error.message : String(error), error);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
function inspectionMode(options) {
|
|
59
|
+
if (typeof options !== 'object'
|
|
60
|
+
|| options === null
|
|
61
|
+
|| Array.isArray(options)) {
|
|
62
|
+
invalidMode('expected options object');
|
|
63
|
+
}
|
|
64
|
+
const keys = Object.keys(options);
|
|
65
|
+
const unowned = keys.find((key) => key !== 'mode');
|
|
66
|
+
if (unowned !== undefined) {
|
|
67
|
+
failPageTarget('BIJOU_PAGE_INPUT_REFERENCE_INVALID', `options.${unowned}`, 'field is not owned by this contract');
|
|
68
|
+
}
|
|
69
|
+
const mode = 'mode' in options ? options.mode : undefined;
|
|
70
|
+
switch (mode) {
|
|
71
|
+
case undefined:
|
|
72
|
+
case 'normal':
|
|
73
|
+
return 'normal';
|
|
74
|
+
case 'node-ids':
|
|
75
|
+
case 'source-refs':
|
|
76
|
+
case 'token-refs':
|
|
77
|
+
case 'composition':
|
|
78
|
+
case 'obstructions':
|
|
79
|
+
return mode;
|
|
80
|
+
default:
|
|
81
|
+
invalidMode('unsupported Profunctor Page inspection mode');
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
function invalidMode(detail) {
|
|
85
|
+
failPageTarget('BIJOU_PAGE_INPUT_REFERENCE_INVALID', 'options.mode', detail);
|
|
86
|
+
}
|
|
87
|
+
//# sourceMappingURL=profunctor-page-target.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profunctor-page-target.js","sourceRoot":"","sources":["../../src/core/profunctor-page-target.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EACL,cAAc,EACd,yBAAyB,GAC1B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,6BAA6B,EAAE,MAAM,0BAA0B,CAAC;AAEzE,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,EACZ,cAAc,EACd,YAAY,GACb,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAC;AAC3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAMtE,OAAO,EACL,2BAA2B,GAC5B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,gCAAgC,EAAE,MAAM,sCAAsC,CAAC;AAExF,OAAO,EAAE,yBAAyB,EAAE,CAAC;AAcrC,MAAM,UAAU,4BAA4B,CAC1C,MAAgC,EAChC,UAAuC,EAAE;IAEzC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;QACrC,MAAM,MAAM,GAAG,6BAA6B,CAAC,MAAM,CAAC,CAAC;QACrD,gCAAgC,CAAC,MAAM,CAAC,CAAC;QACzC,MAAM,QAAQ,GAAG,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QACxE,MAAM,OAAO,GAAG,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,KAAK,GAAG,wBAAwB,CACpC,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,YAAY,CAAC,IAAI,EACxB,OAAO,EACP,QAAQ,EACR,IAAI,CACL,CAAC;QACF,MAAM,aAAa,GAAG,2BAA2B,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC/D,MAAM,SAAS,GAAG,6BAA6B,CAC7C,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,SAAS,EAChB,KAAK,CAAC,KAAK,CAAC,EAAE,EACd,KAAK,CAAC,OAAO,EACb,OAAO,EACP,QAAQ,EACR,aAAa,CAAC,QAAQ,CAAC,aAAa,CACrC,CAAC;QACF,MAAM,aAAa,GAAG,YAAY,CAAC,uBAAuB,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QACzE,MAAM,WAAW,GAAG,YAAY,CAAC,qBAAqB,EAAE,SAAS,CAAC,CAAC;QACnE,MAAM,OAAO,GAAG,cAAc,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC/D,MAAM,eAAe,GAAG,YAAY,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;QAChE,MAAM,OAAO,GAAG,mBAAmB,CAAC;YAClC,MAAM;YACN,IAAI;YACJ,KAAK,EAAE,aAAa;YACpB,SAAS,EAAE,WAAW;YACtB,cAAc,EAAE,SAAS;YACzB,aAAa;YACb,OAAO,EAAE,eAAe;SACzB,CAAC,CAAC;QACH,MAAM,eAAe,GAAG,YAAY,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;QACzE,gBAAgB,CAAC,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7C,OAAO;YACL,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,SAAS;YACT,aAAa;YACb,OAAO,EAAE,aAAa,CAAC,QAAQ,CAAC,OAAO;YACvC,OAAO;YACP,OAAO;YACP,SAAS,EAAE;gBACT,KAAK,EAAE,aAAa;gBACpB,SAAS,EAAE,WAAW;gBACtB,OAAO,EAAE,eAAe;gBACxB,OAAO,EAAE,eAAe;aACzB;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,yBAAyB,EAAE,CAAC;YAC/C,MAAM,KAAK,CAAC;QACd,CAAC;QACD,cAAc,CACZ,2BAA2B,EAC3B,8BAA8B,EAC9B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EACtD,KAAK,CACN,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,OAAgB;IACtC,IACE,OAAO,OAAO,KAAK,QAAQ;WACxB,OAAO,KAAK,IAAI;WAChB,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EACzB,CAAC;QACD,WAAW,CAAC,yBAAyB,CAAC,CAAC;IACzC,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAClC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,MAAM,CAAC,CAAC;IACnD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,cAAc,CACZ,oCAAoC,EACpC,WAAW,OAAO,EAAE,EACpB,qCAAqC,CACtC,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1D,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,SAAS,CAAC;QACf,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAC;QAClB,KAAK,UAAU,CAAC;QAChB,KAAK,aAAa,CAAC;QACnB,KAAK,YAAY,CAAC;QAClB,KAAK,aAAa,CAAC;QACnB,KAAK,cAAc;YACjB,OAAO,IAAI,CAAC;QACd;YACE,WAAW,CAAC,6CAA6C,CAAC,CAAC;IAC/D,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,MAAc;IACjC,cAAc,CAAC,oCAAoC,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;AAC/E,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profunctor-page-validate-dependencies.d.ts","sourceRoot":"","sources":["../../src/core/profunctor-page-validate-dependencies.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAG3E,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,wBAAwB,GAC/B,IAAI,CA+BN"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { expectDigest } from './profunctor-page-contract.js';
|
|
2
|
+
import { failPageTarget } from './profunctor-page-error.js';
|
|
3
|
+
import { readPageSourceProvenance } from './profunctor-page-provenance.js';
|
|
4
|
+
export function validatePageDependencyLineage(family) {
|
|
5
|
+
const { page, sourceMap, buildManifest } = family;
|
|
6
|
+
const dependencies = new Set(page.dependencyDigests);
|
|
7
|
+
requireDependency(buildManifest.entity.entityDigest, 'buildManifest.entity.entityDigest', dependencies);
|
|
8
|
+
for (const node of page.nodes) {
|
|
9
|
+
const provenance = readPageSourceProvenance(node, false);
|
|
10
|
+
if (provenance !== null) {
|
|
11
|
+
requireDependency(provenance.sourceDigest, `${node.pageNodeId}.props.sourceProvenance.sourceDigest`, dependencies);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
for (const [index, entry] of sourceMap.entries.entries()) {
|
|
15
|
+
const path = `sourceMap.entries[${String(index)}].source`;
|
|
16
|
+
requireDependency(expectDigest(entry.source.sourceDigest, `${path}.sourceDigest`), `${path}.sourceDigest`, dependencies);
|
|
17
|
+
requireDependency(expectDigest(entry.source.recordDigest, `${path}.recordDigest`), `${path}.recordDigest`, dependencies);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
function requireDependency(digest, path, dependencies) {
|
|
21
|
+
if (!dependencies.has(digest)) {
|
|
22
|
+
failPageTarget('BIJOU_PAGE_INPUT_IDENTITY_MISMATCH', path, `${digest} is not declared as a page dependency`);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=profunctor-page-validate-dependencies.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profunctor-page-validate-dependencies.js","sourceRoot":"","sources":["../../src/core/profunctor-page-validate-dependencies.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAE3E,MAAM,UAAU,6BAA6B,CAC3C,MAAgC;IAEhC,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC;IAClD,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACrD,iBAAiB,CACf,aAAa,CAAC,MAAM,CAAC,YAAY,EACjC,mCAAmC,EACnC,YAAY,CACb,CAAC;IACF,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QAC9B,MAAM,UAAU,GAAG,wBAAwB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACzD,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;YACxB,iBAAiB,CACf,UAAU,CAAC,YAAY,EACvB,GAAG,IAAI,CAAC,UAAU,sCAAsC,EACxD,YAAY,CACb,CAAC;QACJ,CAAC;IACH,CAAC;IACD,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;QACzD,MAAM,IAAI,GAAG,qBAAqB,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC;QAC1D,iBAAiB,CACf,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,EAAE,GAAG,IAAI,eAAe,CAAC,EAC/D,GAAG,IAAI,eAAe,EACtB,YAAY,CACb,CAAC;QACF,iBAAiB,CACf,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,EAAE,GAAG,IAAI,eAAe,CAAC,EAC/D,GAAG,IAAI,eAAe,EACtB,YAAY,CACb,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CACxB,MAAc,EACd,IAAY,EACZ,YAAiC;IAEjC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9B,cAAc,CACZ,oCAAoC,EACpC,IAAI,EACJ,GAAG,MAAM,uCAAuC,CACjD,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profunctor-page-validate-family.d.ts","sourceRoot":"","sources":["../../src/core/profunctor-page-validate-family.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAI3E,wBAAgB,gCAAgC,CAC9C,MAAM,EAAE,wBAAwB,GAC/B,IAAI,CA+BN"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { validateBlockContract } from './profunctor-page-block-contract.js';
|
|
2
|
+
import { failPageTarget } from './profunctor-page-error.js';
|
|
3
|
+
import { validatePageDependencyLineage } from './profunctor-page-validate-dependencies.js';
|
|
4
|
+
import { validatePageGraph } from './profunctor-page-validate-graph.js';
|
|
5
|
+
export function validateProfunctorArtifactFamily(family) {
|
|
6
|
+
const { page, sourceMap, buildManifest, inputDigests } = family;
|
|
7
|
+
if (buildManifest.artifactDigest !== inputDigests.page) {
|
|
8
|
+
failPageTarget('BIJOU_PAGE_INPUT_DIGEST_MISMATCH', 'buildManifest.artifactDigest', `expected ${buildManifest.artifactDigest}; got ${inputDigests.page}`);
|
|
9
|
+
}
|
|
10
|
+
if (sourceMap.pageId !== page.pageId || buildManifest.pageId !== page.pageId) {
|
|
11
|
+
identity('pageId', 'page, source map, and build manifest must agree');
|
|
12
|
+
}
|
|
13
|
+
if (buildManifest.entity.entityId !== page.entityRef) {
|
|
14
|
+
identity('entityRef', 'page and build manifest entity identities must agree');
|
|
15
|
+
}
|
|
16
|
+
if (buildManifest.routes.length !== 1 || buildManifest.routes[0] !== page.route) {
|
|
17
|
+
identity('route', 'page route must be the sole build-manifest route');
|
|
18
|
+
}
|
|
19
|
+
if (!sameOrdered(buildManifest.dependencies, page.dependencyDigests)) {
|
|
20
|
+
identity('dependencies', 'page and build manifest dependencies must agree in order');
|
|
21
|
+
}
|
|
22
|
+
uniqueStrings(buildManifest.dependencies, 'buildManifest.dependencies');
|
|
23
|
+
uniqueStrings(buildManifest.claims, 'buildManifest.claims');
|
|
24
|
+
validatePageDependencyLineage(family);
|
|
25
|
+
validatePageGraph(page);
|
|
26
|
+
validateProjectPageRoot(page);
|
|
27
|
+
for (const node of page.nodes) {
|
|
28
|
+
validateBlockContract(node);
|
|
29
|
+
}
|
|
30
|
+
validateSourceMap(family);
|
|
31
|
+
}
|
|
32
|
+
function validateProjectPageRoot(page) {
|
|
33
|
+
const root = page.nodes.find((node) => node.pageNodeId === page.rootNodeId);
|
|
34
|
+
if (root?.blockDefinitionId !== 'block:page') {
|
|
35
|
+
reference('page.rootNodeId', 'bounded ProjectPage root must use block:page');
|
|
36
|
+
}
|
|
37
|
+
if (root.hidden) {
|
|
38
|
+
reference('page.rootNodeId', 'bounded ProjectPage root must remain visible');
|
|
39
|
+
}
|
|
40
|
+
if (root.props.route !== page.route) {
|
|
41
|
+
identity('page.route', 'page and root block routes must agree');
|
|
42
|
+
}
|
|
43
|
+
if (page.nodes.some((node) => node !== root && node.blockDefinitionId === 'block:page')) {
|
|
44
|
+
reference('page.nodes', 'block:page may appear only at the root');
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
function validateSourceMap(family) {
|
|
48
|
+
const { page, sourceMap } = family;
|
|
49
|
+
const nodes = new Map(page.nodes.map((node) => [node.pageNodeId, node]));
|
|
50
|
+
const occurrenceOwners = new Map();
|
|
51
|
+
for (const [index, entry] of sourceMap.entries.entries()) {
|
|
52
|
+
const path = `sourceMap.entries[${String(index)}]`;
|
|
53
|
+
const node = nodes.get(entry.pageNodeId);
|
|
54
|
+
if (node?.templateNodeId !== entry.templateNodeId) {
|
|
55
|
+
identity(path, 'page and template identities must match a page node');
|
|
56
|
+
}
|
|
57
|
+
if (occurrenceOwners.has(entry.sourceOccurrenceId)) {
|
|
58
|
+
reference(path, 'source-occurrence identities must be unique');
|
|
59
|
+
}
|
|
60
|
+
if (!Object.values(node.sourceBindings).includes(entry.sourceOccurrenceId)) {
|
|
61
|
+
identity(path, 'source occurrence must be bound by its page node');
|
|
62
|
+
}
|
|
63
|
+
if (entry.renderNodeId !== null || entry.residual !== null) {
|
|
64
|
+
identity(path, 'compiler-owned source map must remain target-uncompleted');
|
|
65
|
+
}
|
|
66
|
+
occurrenceOwners.set(entry.sourceOccurrenceId, entry.pageNodeId);
|
|
67
|
+
}
|
|
68
|
+
for (const node of page.nodes) {
|
|
69
|
+
for (const occurrence of Object.values(node.sourceBindings)) {
|
|
70
|
+
const owner = occurrenceOwners.get(occurrence);
|
|
71
|
+
if (owner == null) {
|
|
72
|
+
reference(node.pageNodeId, `missing source occurrence ${occurrence}`);
|
|
73
|
+
}
|
|
74
|
+
if (owner !== node.pageNodeId) {
|
|
75
|
+
identity(node.pageNodeId, `source occurrence ${occurrence} belongs to ${owner}`);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
function sameOrdered(left, right) {
|
|
81
|
+
return left.length === right.length
|
|
82
|
+
&& left.every((value, index) => value === right[index]);
|
|
83
|
+
}
|
|
84
|
+
function uniqueStrings(values, path) {
|
|
85
|
+
if (new Set(values).size !== values.length) {
|
|
86
|
+
reference(path, 'values must be unique');
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
function identity(path, detail) {
|
|
90
|
+
failPageTarget('BIJOU_PAGE_INPUT_IDENTITY_MISMATCH', path, detail);
|
|
91
|
+
}
|
|
92
|
+
function reference(path, detail) {
|
|
93
|
+
failPageTarget('BIJOU_PAGE_INPUT_REFERENCE_INVALID', path, detail);
|
|
94
|
+
}
|
|
95
|
+
//# sourceMappingURL=profunctor-page-validate-family.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profunctor-page-validate-family.js","sourceRoot":"","sources":["../../src/core/profunctor-page-validate-family.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profunctor-page-validate-graph.d.ts","sourceRoot":"","sources":["../../src/core/profunctor-page-validate-graph.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAEzE,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,sBAAsB,GAAG,IAAI,CAmEpE"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { failPageTarget } from './profunctor-page-error.js';
|
|
2
|
+
export function validatePageGraph(page) {
|
|
3
|
+
const nodeIds = unique(page.nodes.map((node) => node.pageNodeId), 'page.nodes');
|
|
4
|
+
unique(page.nodes.map((node) => node.templateNodeId), 'page.templateNodeIds');
|
|
5
|
+
unique(page.readingOrder, 'page.readingOrder');
|
|
6
|
+
const contentRefs = unique(page.contentRefs, 'page.contentRefs');
|
|
7
|
+
unique(page.overrideRefs, 'page.overrideRefs');
|
|
8
|
+
unique(page.dependencyDigests, 'page.dependencyDigests');
|
|
9
|
+
unique(page.tokenRefs, 'page.tokenRefs');
|
|
10
|
+
unique(page.capabilityRequirements, 'page.capabilityRequirements');
|
|
11
|
+
unique(page.outline.map((item) => JSON.stringify(item)), 'page.outline');
|
|
12
|
+
unique(page.landmarks.map((item) => JSON.stringify(item)), 'page.landmarks');
|
|
13
|
+
if (!nodeIds.has(page.rootNodeId)) {
|
|
14
|
+
invalid('page.rootNodeId', `missing node ${page.rootNodeId}`);
|
|
15
|
+
}
|
|
16
|
+
assertExactSet(page.readingOrder, nodeIds, 'page.readingOrder');
|
|
17
|
+
if (page.readingOrder[0] !== page.rootNodeId) {
|
|
18
|
+
invalid('page.readingOrder', 'root node must be first');
|
|
19
|
+
}
|
|
20
|
+
const ownedChildren = [];
|
|
21
|
+
for (const node of page.nodes) {
|
|
22
|
+
unique(node.slots.map((slot) => slot.name), `${node.pageNodeId}.slots`);
|
|
23
|
+
unique(node.requiredCapabilities, `${node.pageNodeId}.requiredCapabilities`);
|
|
24
|
+
for (const slot of node.slots) {
|
|
25
|
+
for (const childId of slot.childPageNodeIds) {
|
|
26
|
+
if (!nodeIds.has(childId)) {
|
|
27
|
+
invalid(`${node.pageNodeId}.slots.${slot.name}`, `missing child ${childId}`);
|
|
28
|
+
}
|
|
29
|
+
ownedChildren.push(childId);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
for (const capability of node.requiredCapabilities) {
|
|
33
|
+
if (!page.capabilityRequirements.includes(capability)) {
|
|
34
|
+
invalid(node.pageNodeId, `undeclared capability ${capability}`);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
for (const token of Object.values(node.tokens)) {
|
|
38
|
+
if (!page.tokenRefs.includes(token)) {
|
|
39
|
+
invalid(node.pageNodeId, `undeclared token ${token}`);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
if (node.contentNodeId != null && !contentRefs.has(node.contentNodeId)) {
|
|
43
|
+
invalid(node.pageNodeId, `undeclared content node ${node.contentNodeId}`);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
unique(ownedChildren, 'page.slotChildren');
|
|
47
|
+
assertExactSet(ownedChildren, new Set([...nodeIds].filter((id) => id !== page.rootNodeId)), 'page.slotChildren');
|
|
48
|
+
validateRootedSlots(page);
|
|
49
|
+
for (const [index, item] of page.outline.entries()) {
|
|
50
|
+
if (!nodeIds.has(item.pageNodeId) || !Number.isInteger(item.level) || item.level < 1) {
|
|
51
|
+
invalid(`page.outline[${String(index)}]`, 'invalid node or heading level');
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
for (const [index, landmark] of page.landmarks.entries()) {
|
|
55
|
+
if (!nodeIds.has(landmark.pageNodeId)) {
|
|
56
|
+
invalid(`page.landmarks[${String(index)}]`, `missing node ${landmark.pageNodeId}`);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
function validateRootedSlots(page) {
|
|
61
|
+
const nodes = new Map(page.nodes.map((node) => [node.pageNodeId, node]));
|
|
62
|
+
const reachable = new Set();
|
|
63
|
+
const pending = [page.rootNodeId];
|
|
64
|
+
while (pending.length > 0) {
|
|
65
|
+
const nodeId = pending.pop();
|
|
66
|
+
if (nodeId === undefined || reachable.has(nodeId)) {
|
|
67
|
+
continue;
|
|
68
|
+
}
|
|
69
|
+
reachable.add(nodeId);
|
|
70
|
+
const node = nodes.get(nodeId);
|
|
71
|
+
if (node !== undefined) {
|
|
72
|
+
pending.push(...node.slots.flatMap((slot) => slot.childPageNodeIds));
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
if (reachable.size !== page.nodes.length) {
|
|
76
|
+
invalid('page.slotChildren', 'every page node must be reachable from the root');
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
function unique(values, path) {
|
|
80
|
+
const output = new Set();
|
|
81
|
+
for (const value of values) {
|
|
82
|
+
if (output.has(value)) {
|
|
83
|
+
invalid(path, `duplicate identity ${value}`);
|
|
84
|
+
}
|
|
85
|
+
output.add(value);
|
|
86
|
+
}
|
|
87
|
+
return output;
|
|
88
|
+
}
|
|
89
|
+
function assertExactSet(values, expected, path) {
|
|
90
|
+
const actual = new Set(values);
|
|
91
|
+
if (actual.size !== expected.size || [...expected].some((value) => !actual.has(value))) {
|
|
92
|
+
invalid(path, 'must contain every page node exactly once');
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
function invalid(path, detail) {
|
|
96
|
+
failPageTarget('BIJOU_PAGE_INPUT_REFERENCE_INVALID', path, detail);
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=profunctor-page-validate-graph.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profunctor-page-validate-graph.js","sourceRoot":"","sources":["../../src/core/profunctor-page-validate-graph.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"differ-ansi.d.ts","sourceRoot":"","sources":["../../../src/core/render/differ-ansi.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,KAAK,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAiBhF,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,OAAO,CAgCT"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { createSurface } from '../../ports/surface.js';
|
|
2
|
+
import { ANSI_OSC8_RE, sanitizeTerminalText, segmentGraphemes, } from '../text/index.js';
|
|
3
|
+
import { sgrByteHex } from './safe-read.js';
|
|
4
|
+
import { writeSurfaceGrapheme } from './differ-string.js';
|
|
5
|
+
const ANSI_ESCAPE = String.fromCharCode(0x1b);
|
|
6
|
+
export function parseAnsiToSurface(text, width, height) {
|
|
7
|
+
const surface = createSurface(width, height);
|
|
8
|
+
const safeText = sanitizeTerminalText(text, {
|
|
9
|
+
allowAnsiStyling: true,
|
|
10
|
+
allowHyperlinks: true,
|
|
11
|
+
});
|
|
12
|
+
const lines = safeText.replace(ANSI_OSC8_RE, '').split('\n');
|
|
13
|
+
const ansiPattern = new RegExp(`${ANSI_ESCAPE}\\[([0-9;]*)m`, 'g');
|
|
14
|
+
for (let y = 0; y < Math.min(height, lines.length); y++) {
|
|
15
|
+
const line = lines[y] ?? '';
|
|
16
|
+
const style = {
|
|
17
|
+
fg: undefined,
|
|
18
|
+
bg: undefined,
|
|
19
|
+
modifiers: new Set(),
|
|
20
|
+
};
|
|
21
|
+
let x = 0;
|
|
22
|
+
let lastIndex = 0;
|
|
23
|
+
for (const match of line.matchAll(ansiPattern)) {
|
|
24
|
+
x = writeText(surface, x, y, width, line.slice(lastIndex, match.index), style);
|
|
25
|
+
applyAnsiCodes(style, match[1] ?? '');
|
|
26
|
+
lastIndex = match.index + match[0].length;
|
|
27
|
+
}
|
|
28
|
+
writeText(surface, x, y, width, line.slice(lastIndex), style);
|
|
29
|
+
}
|
|
30
|
+
return surface;
|
|
31
|
+
}
|
|
32
|
+
function writeText(surface, startX, y, width, text, style) {
|
|
33
|
+
let x = startX;
|
|
34
|
+
for (const char of segmentGraphemes(text)) {
|
|
35
|
+
if (x >= width)
|
|
36
|
+
break;
|
|
37
|
+
const cellStyle = {
|
|
38
|
+
fg: style.fg,
|
|
39
|
+
bg: style.bg,
|
|
40
|
+
modifiers: [...style.modifiers],
|
|
41
|
+
};
|
|
42
|
+
x += writeSurfaceGrapheme(surface, x, y, char, cellStyle);
|
|
43
|
+
}
|
|
44
|
+
return x;
|
|
45
|
+
}
|
|
46
|
+
function applyAnsiCodes(style, codeText) {
|
|
47
|
+
if (codeText === '0' || codeText === '') {
|
|
48
|
+
resetStyle(style);
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
const parts = codeText.split(';');
|
|
52
|
+
for (let index = 0; index < parts.length; index++) {
|
|
53
|
+
const code = parts[index] ?? '';
|
|
54
|
+
if (code === '0')
|
|
55
|
+
resetStyle(style);
|
|
56
|
+
else if (code === '1')
|
|
57
|
+
style.modifiers.add('bold');
|
|
58
|
+
else if (code === '2')
|
|
59
|
+
style.modifiers.add('dim');
|
|
60
|
+
else if (code === '3')
|
|
61
|
+
style.modifiers.add('italic');
|
|
62
|
+
else if (code === '4')
|
|
63
|
+
style.modifiers.add('underline');
|
|
64
|
+
else if (code === '7')
|
|
65
|
+
style.modifiers.add('inverse');
|
|
66
|
+
else if (code === '9')
|
|
67
|
+
style.modifiers.add('strike');
|
|
68
|
+
else if (code === '22') {
|
|
69
|
+
style.modifiers.delete('bold');
|
|
70
|
+
style.modifiers.delete('dim');
|
|
71
|
+
}
|
|
72
|
+
else if (code === '23')
|
|
73
|
+
style.modifiers.delete('italic');
|
|
74
|
+
else if (code === '24')
|
|
75
|
+
style.modifiers.delete('underline');
|
|
76
|
+
else if (code === '27')
|
|
77
|
+
style.modifiers.delete('inverse');
|
|
78
|
+
else if (code === '29')
|
|
79
|
+
style.modifiers.delete('strike');
|
|
80
|
+
else if (code === '39')
|
|
81
|
+
style.fg = undefined;
|
|
82
|
+
else if (code === '49')
|
|
83
|
+
style.bg = undefined;
|
|
84
|
+
else if ((code === '38' || code === '48') && parts[index + 1] === '2') {
|
|
85
|
+
const color = `#${sgrByteHex(parts, index + 2)}` +
|
|
86
|
+
`${sgrByteHex(parts, index + 3)}${sgrByteHex(parts, index + 4)}`;
|
|
87
|
+
if (code === '38')
|
|
88
|
+
style.fg = color;
|
|
89
|
+
else
|
|
90
|
+
style.bg = color;
|
|
91
|
+
index += 4;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
function resetStyle(style) {
|
|
96
|
+
style.fg = undefined;
|
|
97
|
+
style.bg = undefined;
|
|
98
|
+
style.modifiers.clear();
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=differ-ansi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"differ-ansi.js","sourceRoot":"","sources":["../../../src/core/render/differ-ansi.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { Cell } from '../../ports/surface.js';
|
|
2
|
+
export declare function hasVisibleStyle(cell: Cell): boolean;
|
|
3
|
+
export declare function isSameCell(a: Cell, b: Cell): boolean;
|
|
4
|
+
export declare const EMPTY_PACKED: Uint8Array<ArrayBuffer>;
|
|
5
|
+
export declare function packedBytesEqual(a: Uint8Array, aOffset: number, b: Uint8Array, bOffset: number): boolean;
|
|
6
|
+
export declare function packedStyleBytesEqual(a: Uint8Array, aOffset: number, b: Uint8Array, bOffset: number): boolean;
|
|
7
|
+
export declare function packedHasVisibleStyle(buffer: Uint8Array, offset: number): boolean;
|
|
8
|
+
export declare function packedCellsSemanticallyEqual(aBuffer: Uint8Array, aOffset: number, aSideTable: readonly string[], bBuffer: Uint8Array, bOffset: number, bSideTable: readonly string[]): boolean;
|
|
9
|
+
export declare function writeCharBytes(output: Uint8Array, offset: number, source: Uint8Array, sourceOffset: number, sideTable: readonly string[]): number;
|
|
10
|
+
//# sourceMappingURL=differ-cell.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"differ-cell.d.ts","sourceRoot":"","sources":["../../../src/core/render/differ-cell.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAcnD,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAMnD;AAED,wBAAgB,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,GAAG,OAAO,CAiBpD;AAED,eAAO,MAAM,YAAY,yBAA8B,CAAC;AAKxD,wBAAgB,gBAAgB,CAC9B,CAAC,EAAE,UAAU,EACb,OAAO,EAAE,MAAM,EACf,CAAC,EAAE,UAAU,EACb,OAAO,EAAE,MAAM,GACd,OAAO,CAKT;AAED,wBAAgB,qBAAqB,CACnC,CAAC,EAAE,UAAU,EACb,OAAO,EAAE,MAAM,EACf,CAAC,EAAE,UAAU,EACb,OAAO,EAAE,MAAM,GACd,OAAO,CAKT;AAED,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,GACb,OAAO,CAMT;AAED,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,UAAU,EACnB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,OAAO,EAAE,UAAU,EACnB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,SAAS,MAAM,EAAE,GAC5B,OAAO,CAWT;AAED,wBAAgB,cAAc,CAC5B,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,UAAU,EAClB,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,SAAS,MAAM,EAAE,GAC3B,MAAM,CAgBR"}
|