@react-x11/components 0.8.0 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +105 -38
- package/dist/charts/node.d.ts +12 -2
- package/dist/charts/node.d.ts.map +1 -1
- package/dist/charts/node.js +50 -16
- package/dist/charts/node.js.map +1 -1
- package/dist/charts/render.d.ts +12 -3
- package/dist/charts/render.d.ts.map +1 -1
- package/dist/charts/render.js +94 -25
- package/dist/charts/render.js.map +1 -1
- package/dist/code/index.d.ts.map +1 -1
- package/dist/code/index.js +3 -1
- package/dist/code/index.js.map +1 -1
- package/dist/code-editor/completion.d.ts.map +1 -1
- package/dist/code-editor/completion.js +3 -2
- package/dist/code-editor/completion.js.map +1 -1
- package/dist/code-editor/index.d.ts.map +1 -1
- package/dist/code-editor/index.js +19 -0
- package/dist/code-editor/index.js.map +1 -1
- package/dist/code-editor/node.d.ts +177 -7
- package/dist/code-editor/node.d.ts.map +1 -1
- package/dist/code-editor/node.js +1329 -164
- package/dist/code-editor/node.js.map +1 -1
- package/dist/code-language/languages/glsl.d.ts.map +1 -1
- package/dist/code-language/languages/glsl.js +10 -2
- package/dist/code-language/languages/glsl.js.map +1 -1
- package/dist/code-language/languages/javascript.d.ts.map +1 -1
- package/dist/code-language/languages/javascript.js +18 -3
- package/dist/code-language/languages/javascript.js.map +1 -1
- package/dist/code-language/languages/json.d.ts.map +1 -1
- package/dist/code-language/languages/json.js +10 -2
- package/dist/code-language/languages/json.js.map +1 -1
- package/dist/code-language/languages/shell.d.ts.map +1 -1
- package/dist/code-language/languages/shell.js +10 -2
- package/dist/code-language/languages/shell.js.map +1 -1
- package/dist/code-language/languages/sql.d.ts.map +1 -1
- package/dist/code-language/languages/sql.js +20 -2
- package/dist/code-language/languages/sql.js.map +1 -1
- package/dist/code-language/stream.d.ts +22 -0
- package/dist/code-language/stream.d.ts.map +1 -1
- package/dist/code-language/stream.js +259 -9
- package/dist/code-language/stream.js.map +1 -1
- package/dist/code-language/types.d.ts +5 -4
- package/dist/code-language/types.d.ts.map +1 -1
- package/dist/codeblock/index.d.ts +13 -2
- package/dist/codeblock/index.d.ts.map +1 -1
- package/dist/codeblock/index.js +20 -3
- package/dist/codeblock/index.js.map +1 -1
- package/dist/embed/client.d.ts +48 -3
- package/dist/embed/client.d.ts.map +1 -1
- package/dist/embed/client.js +79 -5
- package/dist/embed/client.js.map +1 -1
- package/dist/embed/index.d.ts +1 -1
- package/dist/embed/index.d.ts.map +1 -1
- package/dist/embed/index.js +1 -1
- package/dist/embed/index.js.map +1 -1
- package/dist/flow/draw.d.ts +50 -0
- package/dist/flow/draw.d.ts.map +1 -1
- package/dist/flow/draw.js +132 -33
- package/dist/flow/draw.js.map +1 -1
- package/dist/flow/gl/color.d.ts +13 -0
- package/dist/flow/gl/color.d.ts.map +1 -0
- package/dist/flow/gl/color.js +82 -0
- package/dist/flow/gl/color.js.map +1 -0
- package/dist/flow/gl/index.d.ts +60 -0
- package/dist/flow/gl/index.d.ts.map +1 -0
- package/dist/flow/gl/index.js +283 -0
- package/dist/flow/gl/index.js.map +1 -0
- package/dist/flow/gl/pack.d.ts +133 -0
- package/dist/flow/gl/pack.d.ts.map +1 -0
- package/dist/flow/gl/pack.js +408 -0
- package/dist/flow/gl/pack.js.map +1 -0
- package/dist/flow/gl/renderer.d.ts +95 -0
- package/dist/flow/gl/renderer.d.ts.map +1 -0
- package/dist/flow/gl/renderer.js +459 -0
- package/dist/flow/gl/renderer.js.map +1 -0
- package/dist/flow/gl/shaders.d.ts +79 -0
- package/dist/flow/gl/shaders.d.ts.map +1 -0
- package/dist/flow/gl/shaders.js +346 -0
- package/dist/flow/gl/shaders.js.map +1 -0
- package/dist/flow/gl/text.d.ts +318 -0
- package/dist/flow/gl/text.d.ts.map +1 -0
- package/dist/flow/gl/text.js +1103 -0
- package/dist/flow/gl/text.js.map +1 -0
- package/dist/flow/index.d.ts +1 -1
- package/dist/flow/index.d.ts.map +1 -1
- package/dist/flow/index.js +619 -64
- package/dist/flow/index.js.map +1 -1
- package/dist/flow/node.d.ts +621 -72
- package/dist/flow/node.d.ts.map +1 -1
- package/dist/flow/node.js +2253 -1018
- package/dist/flow/node.js.map +1 -1
- package/dist/flow/paint.d.ts +35 -0
- package/dist/flow/paint.d.ts.map +1 -0
- package/dist/flow/paint.js +393 -0
- package/dist/flow/paint.js.map +1 -0
- package/dist/flow/paths.d.ts +14 -0
- package/dist/flow/paths.d.ts.map +1 -1
- package/dist/flow/paths.js +45 -19
- package/dist/flow/paths.js.map +1 -1
- package/dist/flow/scene.d.ts +584 -0
- package/dist/flow/scene.d.ts.map +1 -0
- package/dist/flow/scene.js +1453 -0
- package/dist/flow/scene.js.map +1 -0
- package/dist/flow/types.d.ts +111 -1
- package/dist/flow/types.d.ts.map +1 -1
- package/dist/html/controls.d.ts +28 -0
- package/dist/html/controls.d.ts.map +1 -1
- package/dist/html/controls.js +52 -2
- package/dist/html/controls.js.map +1 -1
- package/dist/html/css/calc.d.ts +14 -0
- package/dist/html/css/calc.d.ts.map +1 -0
- package/dist/html/css/calc.js +344 -0
- package/dist/html/css/calc.js.map +1 -0
- package/dist/html/css/cascade.d.ts +240 -6
- package/dist/html/css/cascade.d.ts.map +1 -1
- package/dist/html/css/cascade.js +1327 -66
- package/dist/html/css/cascade.js.map +1 -1
- package/dist/html/css/color.d.ts +23 -0
- package/dist/html/css/color.d.ts.map +1 -0
- package/dist/html/css/color.js +740 -0
- package/dist/html/css/color.js.map +1 -0
- package/dist/html/css/content.d.ts +92 -0
- package/dist/html/css/content.d.ts.map +1 -0
- package/dist/html/css/content.js +388 -0
- package/dist/html/css/content.js.map +1 -0
- package/dist/html/css/counter-styles.d.ts +76 -0
- package/dist/html/css/counter-styles.d.ts.map +1 -0
- package/dist/html/css/counter-styles.js +893 -0
- package/dist/html/css/counter-styles.js.map +1 -0
- package/dist/html/css/decode.d.ts +12 -0
- package/dist/html/css/decode.d.ts.map +1 -0
- package/dist/html/css/decode.js +116 -0
- package/dist/html/css/decode.js.map +1 -0
- package/dist/html/css/parse.d.ts +110 -10
- package/dist/html/css/parse.d.ts.map +1 -1
- package/dist/html/css/parse.js +1473 -180
- package/dist/html/css/parse.js.map +1 -1
- package/dist/html/css/style.d.ts +498 -15
- package/dist/html/css/style.d.ts.map +1 -1
- package/dist/html/css/style.js +3698 -206
- package/dist/html/css/style.js.map +1 -1
- package/dist/html/css/ua.d.ts.map +1 -1
- package/dist/html/css/ua.js +57 -11
- package/dist/html/css/ua.js.map +1 -1
- package/dist/html/css/values.d.ts +37 -3
- package/dist/html/css/values.d.ts.map +1 -1
- package/dist/html/css/values.js +122 -48
- package/dist/html/css/values.js.map +1 -1
- package/dist/html/css/vars.d.ts +52 -0
- package/dist/html/css/vars.d.ts.map +1 -0
- package/dist/html/css/vars.js +358 -0
- package/dist/html/css/vars.js.map +1 -0
- package/dist/html/dom.d.ts +30 -4
- package/dist/html/dom.d.ts.map +1 -1
- package/dist/html/dom.js +278 -17
- package/dist/html/dom.js.map +1 -1
- package/dist/html/fonts.d.ts +106 -0
- package/dist/html/fonts.d.ts.map +1 -0
- package/dist/html/fonts.js +565 -0
- package/dist/html/fonts.js.map +1 -0
- package/dist/html/gif.d.ts +15 -0
- package/dist/html/gif.d.ts.map +1 -0
- package/dist/html/gif.js +229 -0
- package/dist/html/gif.js.map +1 -0
- package/dist/html/index.d.ts +50 -11
- package/dist/html/index.d.ts.map +1 -1
- package/dist/html/index.js +115 -9
- package/dist/html/index.js.map +1 -1
- package/dist/html/layout/block.d.ts +226 -3
- package/dist/html/layout/block.d.ts.map +1 -1
- package/dist/html/layout/block.js +2937 -197
- package/dist/html/layout/block.js.map +1 -1
- package/dist/html/layout/boxes.d.ts +340 -17
- package/dist/html/layout/boxes.d.ts.map +1 -1
- package/dist/html/layout/boxes.js +1714 -182
- package/dist/html/layout/boxes.js.map +1 -1
- package/dist/html/layout/cache.d.ts +58 -0
- package/dist/html/layout/cache.d.ts.map +1 -0
- package/dist/html/layout/cache.js +224 -0
- package/dist/html/layout/cache.js.map +1 -0
- package/dist/html/layout/collapse.d.ts +45 -0
- package/dist/html/layout/collapse.d.ts.map +1 -0
- package/dist/html/layout/collapse.js +246 -0
- package/dist/html/layout/collapse.js.map +1 -0
- package/dist/html/layout/css-grid.d.ts +7 -0
- package/dist/html/layout/css-grid.d.ts.map +1 -0
- package/dist/html/layout/css-grid.js +900 -0
- package/dist/html/layout/css-grid.js.map +1 -0
- package/dist/html/layout/flex.d.ts.map +1 -1
- package/dist/html/layout/flex.js +1025 -89
- package/dist/html/layout/flex.js.map +1 -1
- package/dist/html/layout/floats.d.ts +45 -6
- package/dist/html/layout/floats.d.ts.map +1 -1
- package/dist/html/layout/floats.js +113 -14
- package/dist/html/layout/floats.js.map +1 -1
- package/dist/html/layout/grid-lines.d.ts +39 -0
- package/dist/html/layout/grid-lines.d.ts.map +1 -0
- package/dist/html/layout/grid-lines.js +119 -0
- package/dist/html/layout/grid-lines.js.map +1 -0
- package/dist/html/layout/grid.d.ts +53 -0
- package/dist/html/layout/grid.d.ts.map +1 -0
- package/dist/html/layout/grid.js +153 -0
- package/dist/html/layout/grid.js.map +1 -0
- package/dist/html/layout/inline.d.ts +151 -1
- package/dist/html/layout/inline.d.ts.map +1 -1
- package/dist/html/layout/inline.js +3375 -174
- package/dist/html/layout/inline.js.map +1 -1
- package/dist/html/layout/shaping.d.ts +6 -0
- package/dist/html/layout/shaping.d.ts.map +1 -0
- package/dist/html/layout/shaping.js +100 -0
- package/dist/html/layout/shaping.js.map +1 -0
- package/dist/html/layout/table.d.ts +3 -0
- package/dist/html/layout/table.d.ts.map +1 -1
- package/dist/html/layout/table.js +681 -175
- package/dist/html/layout/table.js.map +1 -1
- package/dist/html/layout/tracks.d.ts +44 -0
- package/dist/html/layout/tracks.d.ts.map +1 -0
- package/dist/html/layout/tracks.js +349 -0
- package/dist/html/layout/tracks.js.map +1 -0
- package/dist/html/node.d.ts +172 -5
- package/dist/html/node.d.ts.map +1 -1
- package/dist/html/node.js +1336 -103
- package/dist/html/node.js.map +1 -1
- package/dist/html/paint.d.ts +92 -3
- package/dist/html/paint.d.ts.map +1 -1
- package/dist/html/paint.js +3503 -141
- package/dist/html/paint.js.map +1 -1
- package/dist/html/resources.d.ts +60 -14
- package/dist/html/resources.d.ts.map +1 -1
- package/dist/html/resources.js +122 -36
- package/dist/html/resources.js.map +1 -1
- package/dist/html/surfaces.d.ts +23 -0
- package/dist/html/surfaces.d.ts.map +1 -0
- package/dist/html/surfaces.js +68 -0
- package/dist/html/surfaces.js.map +1 -0
- package/dist/html/svg.d.ts +80 -0
- package/dist/html/svg.d.ts.map +1 -0
- package/dist/html/svg.js +435 -0
- package/dist/html/svg.js.map +1 -0
- package/dist/html/url.d.ts +23 -0
- package/dist/html/url.d.ts.map +1 -0
- package/dist/html/url.js +80 -0
- package/dist/html/url.js.map +1 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/internal/collate.d.ts +3 -0
- package/dist/internal/collate.d.ts.map +1 -0
- package/dist/internal/collate.js +11 -0
- package/dist/internal/collate.js.map +1 -0
- package/dist/{markdown → internal/markdown}/ast.d.ts +23 -0
- package/dist/internal/markdown/ast.d.ts.map +1 -0
- package/dist/internal/markdown/ast.js +22 -0
- package/dist/internal/markdown/ast.js.map +1 -0
- package/dist/internal/markdown/parse.d.ts.map +1 -0
- package/dist/{markdown → internal/markdown}/parse.js +221 -30
- package/dist/internal/markdown/parse.js.map +1 -0
- package/dist/internal/markdown/stringify.d.ts +4 -0
- package/dist/internal/markdown/stringify.d.ts.map +1 -0
- package/dist/internal/markdown/stringify.js +684 -0
- package/dist/internal/markdown/stringify.js.map +1 -0
- package/dist/internal/markdown/tags.d.ts.map +1 -0
- package/dist/internal/markdown/tags.js.map +1 -0
- package/dist/internal/prewarm.d.ts +18 -0
- package/dist/internal/prewarm.d.ts.map +1 -0
- package/dist/internal/prewarm.js +42 -0
- package/dist/internal/prewarm.js.map +1 -0
- package/dist/internal/scroll.d.ts +3 -2
- package/dist/internal/scroll.d.ts.map +1 -1
- package/dist/internal/scroll.js +1 -0
- package/dist/internal/scroll.js.map +1 -1
- package/dist/internal/sdf.d.ts +20 -0
- package/dist/internal/sdf.d.ts.map +1 -0
- package/dist/internal/sdf.js +216 -0
- package/dist/internal/sdf.js.map +1 -0
- package/dist/internal/splice.d.ts +12 -0
- package/dist/internal/splice.d.ts.map +1 -0
- package/dist/internal/splice.js +23 -0
- package/dist/internal/splice.js.map +1 -0
- package/dist/internal/window.d.ts +12 -0
- package/dist/internal/window.d.ts.map +1 -1
- package/dist/internal/window.js +23 -6
- package/dist/internal/window.js.map +1 -1
- package/dist/maps/anchors.d.ts +103 -0
- package/dist/maps/anchors.d.ts.map +1 -0
- package/dist/maps/anchors.js +790 -0
- package/dist/maps/anchors.js.map +1 -0
- package/dist/maps/controller.d.ts +340 -0
- package/dist/maps/controller.d.ts.map +1 -0
- package/dist/maps/controller.js +822 -0
- package/dist/maps/controller.js.map +1 -0
- package/dist/maps/gl/buckets.d.ts +99 -0
- package/dist/maps/gl/buckets.d.ts.map +1 -0
- package/dist/maps/gl/buckets.js +365 -0
- package/dist/maps/gl/buckets.js.map +1 -0
- package/dist/maps/gl/build-worker.d.ts +15 -0
- package/dist/maps/gl/build-worker.d.ts.map +1 -0
- package/dist/maps/gl/build-worker.js +44 -0
- package/dist/maps/gl/build-worker.js.map +1 -0
- package/dist/maps/gl/color.d.ts +8 -0
- package/dist/maps/gl/color.d.ts.map +1 -0
- package/dist/maps/gl/color.js +57 -0
- package/dist/maps/gl/color.js.map +1 -0
- package/dist/maps/gl/cover.d.ts +70 -0
- package/dist/maps/gl/cover.d.ts.map +1 -0
- package/dist/maps/gl/cover.js +137 -0
- package/dist/maps/gl/cover.js.map +1 -0
- package/dist/maps/gl/index.d.ts +3 -0
- package/dist/maps/gl/index.d.ts.map +1 -0
- package/dist/maps/gl/index.js +20 -0
- package/dist/maps/gl/index.js.map +1 -0
- package/dist/maps/gl/markers.d.ts +28 -0
- package/dist/maps/gl/markers.d.ts.map +1 -0
- package/dist/maps/gl/markers.js +60 -0
- package/dist/maps/gl/markers.js.map +1 -0
- package/dist/maps/gl/overlays.d.ts +68 -0
- package/dist/maps/gl/overlays.d.ts.map +1 -0
- package/dist/maps/gl/overlays.js +300 -0
- package/dist/maps/gl/overlays.js.map +1 -0
- package/dist/maps/gl/pane.d.ts +12 -0
- package/dist/maps/gl/pane.d.ts.map +1 -0
- package/dist/maps/gl/pane.js +37 -0
- package/dist/maps/gl/pane.js.map +1 -0
- package/dist/maps/gl/placement.d.ts +124 -0
- package/dist/maps/gl/placement.d.ts.map +1 -0
- package/dist/maps/gl/placement.js +642 -0
- package/dist/maps/gl/placement.js.map +1 -0
- package/dist/maps/gl/renderer.d.ts +384 -0
- package/dist/maps/gl/renderer.d.ts.map +1 -0
- package/dist/maps/gl/renderer.js +1184 -0
- package/dist/maps/gl/renderer.js.map +1 -0
- package/dist/maps/gl/shaders.d.ts +121 -0
- package/dist/maps/gl/shaders.d.ts.map +1 -0
- package/dist/maps/gl/shaders.js +453 -0
- package/dist/maps/gl/shaders.js.map +1 -0
- package/dist/maps/gl/store.d.ts +125 -0
- package/dist/maps/gl/store.d.ts.map +1 -0
- package/dist/maps/gl/store.js +512 -0
- package/dist/maps/gl/store.js.map +1 -0
- package/dist/maps/gl/text.d.ts +283 -0
- package/dist/maps/gl/text.d.ts.map +1 -0
- package/dist/maps/gl/text.js +698 -0
- package/dist/maps/gl/text.js.map +1 -0
- package/dist/maps/gl/view.d.ts +345 -0
- package/dist/maps/gl/view.d.ts.map +1 -0
- package/dist/maps/gl/view.js +1209 -0
- package/dist/maps/gl/view.js.map +1 -0
- package/dist/maps/icons.d.ts +32 -0
- package/dist/maps/icons.d.ts.map +1 -0
- package/dist/maps/icons.js +151 -0
- package/dist/maps/icons.js.map +1 -0
- package/dist/maps/index.d.ts +3 -1
- package/dist/maps/index.d.ts.map +1 -1
- package/dist/maps/index.js +218 -52
- package/dist/maps/index.js.map +1 -1
- package/dist/maps/labels.d.ts +91 -18
- package/dist/maps/labels.d.ts.map +1 -1
- package/dist/maps/labels.js +376 -140
- package/dist/maps/labels.js.map +1 -1
- package/dist/maps/node.d.ts +179 -56
- package/dist/maps/node.d.ts.map +1 -1
- package/dist/maps/node.js +663 -537
- package/dist/maps/node.js.map +1 -1
- package/dist/maps/overlay.d.ts +72 -9
- package/dist/maps/overlay.d.ts.map +1 -1
- package/dist/maps/overlay.js +108 -28
- package/dist/maps/overlay.js.map +1 -1
- package/dist/maps/paint.d.ts +3 -0
- package/dist/maps/paint.d.ts.map +1 -1
- package/dist/maps/paint.js.map +1 -1
- package/dist/maps/proj.d.ts +62 -0
- package/dist/maps/proj.d.ts.map +1 -1
- package/dist/maps/proj.js +101 -0
- package/dist/maps/proj.js.map +1 -1
- package/dist/maps/renderer.d.ts +69 -0
- package/dist/maps/renderer.d.ts.map +1 -0
- package/dist/maps/renderer.js +66 -0
- package/dist/maps/renderer.js.map +1 -0
- package/dist/maps/sources.d.ts +30 -6
- package/dist/maps/sources.d.ts.map +1 -1
- package/dist/maps/sources.js +22 -3
- package/dist/maps/sources.js.map +1 -1
- package/dist/maps/style.d.ts +35 -0
- package/dist/maps/style.d.ts.map +1 -1
- package/dist/maps/style.js.map +1 -1
- package/dist/maps/styles.d.ts +12 -0
- package/dist/maps/styles.d.ts.map +1 -1
- package/dist/maps/styles.js +120 -6
- package/dist/maps/styles.js.map +1 -1
- package/dist/maps/theme.d.ts +19 -0
- package/dist/maps/theme.d.ts.map +1 -0
- package/dist/maps/theme.js +44 -0
- package/dist/maps/theme.js.map +1 -0
- package/dist/maps/tiles.d.ts +147 -27
- package/dist/maps/tiles.d.ts.map +1 -1
- package/dist/maps/tiles.js +221 -54
- package/dist/maps/tiles.js.map +1 -1
- package/dist/maps/types.d.ts +213 -21
- package/dist/maps/types.d.ts.map +1 -1
- package/dist/markdown/expressions.d.ts +1 -1
- package/dist/markdown/expressions.d.ts.map +1 -1
- package/dist/markdown/expressions.js.map +1 -1
- package/dist/markdown/index.d.ts +7 -6
- package/dist/markdown/index.d.ts.map +1 -1
- package/dist/markdown/index.js +121 -50
- package/dist/markdown/index.js.map +1 -1
- package/dist/markdown/spans.d.ts +1 -1
- package/dist/markdown/spans.d.ts.map +1 -1
- package/dist/markdown/spans.js +6 -0
- package/dist/markdown/spans.js.map +1 -1
- package/dist/media-player/index.d.ts +11 -3
- package/dist/media-player/index.d.ts.map +1 -1
- package/dist/media-player/index.js +13 -2
- package/dist/media-player/index.js.map +1 -1
- package/dist/qml/containers.d.ts.map +1 -1
- package/dist/qml/containers.js +6 -1
- package/dist/qml/containers.js.map +1 -1
- package/dist/qml/interaction.d.ts.map +1 -1
- package/dist/qml/interaction.js +38 -5
- package/dist/qml/interaction.js.map +1 -1
- package/dist/qml/layouts.d.ts.map +1 -1
- package/dist/qml/layouts.js +21 -6
- package/dist/qml/layouts.js.map +1 -1
- package/dist/qml/qtquick.d.ts.map +1 -1
- package/dist/qml/qtquick.js +9 -2
- package/dist/qml/qtquick.js.map +1 -1
- package/dist/qml/react.d.ts.map +1 -1
- package/dist/qml/react.js +9 -7
- package/dist/qml/react.js.map +1 -1
- package/dist/reorder/clock.d.ts +7 -0
- package/dist/reorder/clock.d.ts.map +1 -0
- package/dist/reorder/clock.js +26 -0
- package/dist/reorder/clock.js.map +1 -0
- package/dist/reorder/index.d.ts +25 -3
- package/dist/reorder/index.d.ts.map +1 -1
- package/dist/reorder/index.js +64 -19
- package/dist/reorder/index.js.map +1 -1
- package/dist/rich-text-editor/clipboard.d.ts +23 -0
- package/dist/rich-text-editor/clipboard.d.ts.map +1 -0
- package/dist/rich-text-editor/clipboard.js +307 -0
- package/dist/rich-text-editor/clipboard.js.map +1 -0
- package/dist/rich-text-editor/collab.d.ts +32 -0
- package/dist/rich-text-editor/collab.d.ts.map +1 -0
- package/dist/rich-text-editor/collab.js +55 -0
- package/dist/rich-text-editor/collab.js.map +1 -0
- package/dist/rich-text-editor/commands.d.ts +50 -0
- package/dist/rich-text-editor/commands.d.ts.map +1 -0
- package/dist/rich-text-editor/commands.js +376 -0
- package/dist/rich-text-editor/commands.js.map +1 -0
- package/dist/rich-text-editor/drag.d.ts +68 -0
- package/dist/rich-text-editor/drag.d.ts.map +1 -0
- package/dist/rich-text-editor/drag.js +148 -0
- package/dist/rich-text-editor/drag.js.map +1 -0
- package/dist/rich-text-editor/html.d.ts +145 -0
- package/dist/rich-text-editor/html.d.ts.map +1 -0
- package/dist/rich-text-editor/html.js +516 -0
- package/dist/rich-text-editor/html.js.map +1 -0
- package/dist/rich-text-editor/index.d.ts +252 -0
- package/dist/rich-text-editor/index.d.ts.map +1 -0
- package/dist/rich-text-editor/index.js +856 -0
- package/dist/rich-text-editor/index.js.map +1 -0
- package/dist/rich-text-editor/inline.d.ts +94 -0
- package/dist/rich-text-editor/inline.d.ts.map +1 -0
- package/dist/rich-text-editor/inline.js +252 -0
- package/dist/rich-text-editor/inline.js.map +1 -0
- package/dist/rich-text-editor/keymap.d.ts +71 -0
- package/dist/rich-text-editor/keymap.d.ts.map +1 -0
- package/dist/rich-text-editor/keymap.js +394 -0
- package/dist/rich-text-editor/keymap.js.map +1 -0
- package/dist/rich-text-editor/keys.d.ts +40 -0
- package/dist/rich-text-editor/keys.d.ts.map +1 -0
- package/dist/rich-text-editor/keys.js +202 -0
- package/dist/rich-text-editor/keys.js.map +1 -0
- package/dist/rich-text-editor/look.d.ts +71 -0
- package/dist/rich-text-editor/look.d.ts.map +1 -0
- package/dist/rich-text-editor/look.js +342 -0
- package/dist/rich-text-editor/look.js.map +1 -0
- package/dist/rich-text-editor/markdown.d.ts +18 -0
- package/dist/rich-text-editor/markdown.d.ts.map +1 -0
- package/dist/rich-text-editor/markdown.js +496 -0
- package/dist/rich-text-editor/markdown.js.map +1 -0
- package/dist/rich-text-editor/marks.d.ts +9 -0
- package/dist/rich-text-editor/marks.d.ts.map +1 -0
- package/dist/rich-text-editor/marks.js +83 -0
- package/dist/rich-text-editor/marks.js.map +1 -0
- package/dist/rich-text-editor/nodes.d.ts +135 -0
- package/dist/rich-text-editor/nodes.d.ts.map +1 -0
- package/dist/rich-text-editor/nodes.js +397 -0
- package/dist/rich-text-editor/nodes.js.map +1 -0
- package/dist/rich-text-editor/render.d.ts +68 -0
- package/dist/rich-text-editor/render.d.ts.map +1 -0
- package/dist/rich-text-editor/render.js +518 -0
- package/dist/rich-text-editor/render.js.map +1 -0
- package/dist/rich-text-editor/schema.d.ts +16 -0
- package/dist/rich-text-editor/schema.d.ts.map +1 -0
- package/dist/rich-text-editor/schema.js +386 -0
- package/dist/rich-text-editor/schema.js.map +1 -0
- package/dist/rich-text-editor/store.d.ts +11 -0
- package/dist/rich-text-editor/store.d.ts.map +1 -0
- package/dist/rich-text-editor/store.js +43 -0
- package/dist/rich-text-editor/store.js.map +1 -0
- package/dist/rich-text-editor/suggest.d.ts +127 -0
- package/dist/rich-text-editor/suggest.d.ts.map +1 -0
- package/dist/rich-text-editor/suggest.js +0 -0
- package/dist/rich-text-editor/suggest.js.map +1 -0
- package/dist/rich-text-editor/tables.d.ts +41 -0
- package/dist/rich-text-editor/tables.d.ts.map +1 -0
- package/dist/rich-text-editor/tables.js +204 -0
- package/dist/rich-text-editor/tables.js.map +1 -0
- package/dist/rich-text-editor/toolbar.d.ts +58 -0
- package/dist/rich-text-editor/toolbar.d.ts.map +1 -0
- package/dist/rich-text-editor/toolbar.js +548 -0
- package/dist/rich-text-editor/toolbar.js.map +1 -0
- package/dist/rich-text-editor/view.d.ts +368 -0
- package/dist/rich-text-editor/view.d.ts.map +1 -0
- package/dist/rich-text-editor/view.js +1968 -0
- package/dist/rich-text-editor/view.js.map +1 -0
- package/dist/rich-text-editor/virtual.d.ts +54 -0
- package/dist/rich-text-editor/virtual.d.ts.map +1 -0
- package/dist/rich-text-editor/virtual.js +279 -0
- package/dist/rich-text-editor/virtual.js.map +1 -0
- package/dist/richtext/node.d.ts +71 -4
- package/dist/richtext/node.d.ts.map +1 -1
- package/dist/richtext/node.js +233 -28
- package/dist/richtext/node.js.map +1 -1
- package/dist/richtext/runs.d.ts +13 -8
- package/dist/richtext/runs.d.ts.map +1 -1
- package/dist/richtext/runs.js +18 -8
- package/dist/richtext/runs.js.map +1 -1
- package/dist/table/index.d.ts.map +1 -1
- package/dist/table/index.js +23 -0
- package/dist/table/index.js.map +1 -1
- package/dist/table/rows.d.ts +3 -2
- package/dist/table/rows.d.ts.map +1 -1
- package/dist/table/rows.js +20 -6
- package/dist/table/rows.js.map +1 -1
- package/dist/terminal/backends.d.ts +4 -1
- package/dist/terminal/backends.d.ts.map +1 -1
- package/dist/terminal/backends.js.map +1 -1
- package/dist/terminal/index.d.ts +18 -7
- package/dist/terminal/index.d.ts.map +1 -1
- package/dist/terminal/index.js +32 -11
- package/dist/terminal/index.js.map +1 -1
- package/dist/terminal/vt/pty.d.ts +13 -2
- package/dist/terminal/vt/pty.d.ts.map +1 -1
- package/dist/terminal/vt/pty.js +18 -3
- package/dist/terminal/vt/pty.js.map +1 -1
- package/dist/terminal-output/index.d.ts.map +1 -1
- package/dist/terminal-output/index.js +6 -1
- package/dist/terminal-output/index.js.map +1 -1
- package/dist/three/canvas.d.ts.map +1 -1
- package/dist/three/canvas.js +85 -7
- package/dist/three/canvas.js.map +1 -1
- package/dist/three/events.d.ts +22 -4
- package/dist/three/events.d.ts.map +1 -1
- package/dist/three/events.js +34 -4
- package/dist/three/events.js.map +1 -1
- package/dist/tree/index.d.ts.map +1 -1
- package/dist/tree/index.js +17 -0
- package/dist/tree/index.js.map +1 -1
- package/package.json +59 -31
- package/src/charts/node.ts +68 -28
- package/src/charts/render.ts +120 -30
- package/src/code/index.ts +3 -1
- package/src/code-editor/completion.ts +3 -2
- package/src/code-editor/index.ts +19 -0
- package/src/code-editor/node.ts +1574 -184
- package/src/code-language/languages/glsl.ts +12 -2
- package/src/code-language/languages/javascript.ts +21 -4
- package/src/code-language/languages/json.ts +12 -2
- package/src/code-language/languages/shell.ts +12 -2
- package/src/code-language/languages/sql.ts +22 -2
- package/src/code-language/stream.ts +257 -17
- package/src/code-language/types.ts +5 -4
- package/src/codeblock/index.ts +20 -3
- package/src/embed/client.ts +102 -8
- package/src/embed/index.ts +2 -0
- package/src/flow/draw.ts +167 -41
- package/src/flow/gl/color.ts +85 -0
- package/src/flow/gl/index.ts +342 -0
- package/src/flow/gl/pack.ts +585 -0
- package/src/flow/gl/renderer.ts +679 -0
- package/src/flow/gl/shaders.ts +371 -0
- package/src/flow/gl/text.ts +1295 -0
- package/src/flow/index.ts +794 -67
- package/src/flow/node.ts +2496 -1256
- package/src/flow/paint.ts +511 -0
- package/src/flow/paths.ts +80 -15
- package/src/flow/scene.ts +2199 -0
- package/src/flow/types.ts +113 -1
- package/src/html/controls.ts +73 -2
- package/src/html/css/calc.ts +385 -0
- package/src/html/css/cascade.ts +1403 -62
- package/src/html/css/color.ts +755 -0
- package/src/html/css/content.ts +417 -0
- package/src/html/css/counter-styles.ts +973 -0
- package/src/html/css/decode.ts +130 -0
- package/src/html/css/parse.ts +1514 -160
- package/src/html/css/style.ts +4102 -222
- package/src/html/css/ua.ts +58 -12
- package/src/html/css/values.ts +150 -50
- package/src/html/css/vars.ts +348 -0
- package/src/html/dom.ts +284 -17
- package/src/html/fonts.ts +641 -0
- package/src/html/gif.ts +233 -0
- package/src/html/index.ts +180 -20
- package/src/html/layout/block.ts +3456 -230
- package/src/html/layout/boxes.ts +2100 -190
- package/src/html/layout/cache.ts +289 -0
- package/src/html/layout/collapse.ts +317 -0
- package/src/html/layout/css-grid.ts +1063 -0
- package/src/html/layout/flex.ts +1115 -106
- package/src/html/layout/floats.ts +128 -14
- package/src/html/layout/grid-lines.ts +141 -0
- package/src/html/layout/grid.ts +181 -0
- package/src/html/layout/inline.ts +3943 -192
- package/src/html/layout/shaping.ts +140 -0
- package/src/html/layout/table.ts +696 -186
- package/src/html/layout/tracks.ts +437 -0
- package/src/html/node.ts +1486 -121
- package/src/html/paint.ts +4293 -169
- package/src/html/resources.ts +161 -50
- package/src/html/surfaces.ts +81 -0
- package/src/html/svg.ts +493 -0
- package/src/html/url.ts +86 -0
- package/src/index.ts +4 -0
- package/src/internal/collate.ts +12 -0
- package/src/{markdown → internal/markdown}/ast.ts +35 -7
- package/src/{markdown → internal/markdown}/parse.ts +288 -35
- package/src/internal/markdown/stringify.ts +772 -0
- package/src/internal/prewarm.ts +45 -0
- package/src/internal/scroll.ts +5 -3
- package/src/internal/sdf.ts +227 -0
- package/src/internal/splice.ts +25 -0
- package/src/internal/window.ts +36 -5
- package/src/maps/anchors.ts +913 -0
- package/src/maps/controller.ts +1084 -0
- package/src/maps/gl/buckets.ts +461 -0
- package/src/maps/gl/build-worker.ts +66 -0
- package/src/maps/gl/color.ts +62 -0
- package/src/maps/gl/cover.ts +205 -0
- package/src/maps/gl/index.ts +23 -0
- package/src/maps/gl/markers.ts +83 -0
- package/src/maps/gl/overlays.ts +379 -0
- package/src/maps/gl/pane.ts +42 -0
- package/src/maps/gl/placement.ts +968 -0
- package/src/maps/gl/renderer.ts +1660 -0
- package/src/maps/gl/shaders.ts +489 -0
- package/src/maps/gl/store.ts +615 -0
- package/src/maps/gl/text.ts +868 -0
- package/src/maps/gl/view.ts +1489 -0
- package/src/maps/icons.ts +183 -0
- package/src/maps/index.ts +274 -81
- package/src/maps/labels.ts +457 -144
- package/src/maps/node.ts +832 -665
- package/src/maps/overlay.ts +148 -43
- package/src/maps/paint.ts +3 -0
- package/src/maps/proj.ts +118 -0
- package/src/maps/renderer.ts +155 -0
- package/src/maps/sources.ts +43 -6
- package/src/maps/style.ts +32 -0
- package/src/maps/styles.ts +215 -4
- package/src/maps/theme.ts +51 -0
- package/src/maps/tiles.ts +253 -62
- package/src/maps/types.ts +213 -21
- package/src/markdown/expressions.ts +5 -1
- package/src/markdown/index.ts +163 -78
- package/src/markdown/spans.ts +6 -1
- package/src/media-player/index.ts +18 -4
- package/src/qml/containers.tsx +6 -1
- package/src/qml/interaction.tsx +42 -5
- package/src/qml/layouts.tsx +21 -6
- package/src/qml/qtquick.tsx +9 -2
- package/src/qml/react.tsx +7 -5
- package/src/reorder/clock.ts +27 -0
- package/src/reorder/index.ts +100 -27
- package/src/rich-text-editor/clipboard.ts +439 -0
- package/src/rich-text-editor/collab.ts +91 -0
- package/src/rich-text-editor/commands.ts +448 -0
- package/src/rich-text-editor/dom-globals.d.ts +23 -0
- package/src/rich-text-editor/drag.ts +211 -0
- package/src/rich-text-editor/html.ts +619 -0
- package/src/rich-text-editor/index.ts +1364 -0
- package/src/rich-text-editor/inline.ts +345 -0
- package/src/rich-text-editor/keymap.ts +510 -0
- package/src/rich-text-editor/keys.ts +228 -0
- package/src/rich-text-editor/look.ts +427 -0
- package/src/rich-text-editor/markdown.ts +653 -0
- package/src/rich-text-editor/marks.ts +101 -0
- package/src/rich-text-editor/nodes.ts +497 -0
- package/src/rich-text-editor/render.ts +837 -0
- package/src/rich-text-editor/schema.ts +431 -0
- package/src/rich-text-editor/store.ts +39 -0
- package/src/rich-text-editor/suggest.ts +597 -0
- package/src/rich-text-editor/tables.ts +272 -0
- package/src/rich-text-editor/toolbar.ts +724 -0
- package/src/rich-text-editor/view.ts +2287 -0
- package/src/rich-text-editor/virtual.ts +372 -0
- package/src/richtext/node.ts +294 -44
- package/src/richtext/runs.ts +23 -12
- package/src/table/index.ts +29 -0
- package/src/table/rows.ts +18 -8
- package/src/terminal/backends.ts +4 -1
- package/src/terminal/index.ts +47 -15
- package/src/terminal/vt/pty.ts +16 -2
- package/src/terminal-output/index.ts +6 -1
- package/src/three/canvas.ts +102 -8
- package/src/three/events.ts +49 -9
- package/src/tree/index.ts +19 -0
- package/dist/markdown/ast.d.ts.map +0 -1
- package/dist/markdown/ast.js +0 -17
- package/dist/markdown/ast.js.map +0 -1
- package/dist/markdown/parse.d.ts.map +0 -1
- package/dist/markdown/parse.js.map +0 -1
- package/dist/markdown/tags.d.ts.map +0 -1
- package/dist/markdown/tags.js.map +0 -1
- /package/dist/{markdown → internal/markdown}/parse.d.ts +0 -0
- /package/dist/{markdown → internal/markdown}/tags.d.ts +0 -0
- /package/dist/{markdown → internal/markdown}/tags.js +0 -0
- /package/src/{markdown → internal/markdown}/tags.ts +0 -0
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import type { Box } from './boxes.js';
|
|
2
|
+
export interface Cell {
|
|
3
|
+
box: Box;
|
|
4
|
+
row: number;
|
|
5
|
+
column: number;
|
|
6
|
+
colSpan: number;
|
|
7
|
+
rowSpan: number;
|
|
8
|
+
}
|
|
9
|
+
/** A table's rows in order, with the row group each is in, and its
|
|
10
|
+
* captions. */
|
|
11
|
+
export interface TableRows {
|
|
12
|
+
rows: Box[];
|
|
13
|
+
/** Per row, the row group it is in, or null for a row of the table's
|
|
14
|
+
* own. */
|
|
15
|
+
groups: (Box | null)[];
|
|
16
|
+
captions: Box[];
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* A table's rows in the order they are drawn: a header group's first,
|
|
20
|
+
* wherever it stands, and a footer group's last (CSS 2.1 17.2) — HTML 4
|
|
21
|
+
* put `<tfoot>` before `<tbody>`, and a document that did would draw its
|
|
22
|
+
* totals mid-table. Only the first of each is set apart; any other is a
|
|
23
|
+
* body group.
|
|
24
|
+
*/
|
|
25
|
+
export declare function rowsOf(table: Box): TableRows;
|
|
26
|
+
/** A table's rows, as `rowsOf` gives them, and its grid. */
|
|
27
|
+
export interface TableGrid extends TableRows {
|
|
28
|
+
cells: Cell[];
|
|
29
|
+
columnCount: number;
|
|
30
|
+
/** Per column, the column box it is in, or null. */
|
|
31
|
+
columnBoxes: (Box | null)[];
|
|
32
|
+
/** Per column, the column group it is in, or null. */
|
|
33
|
+
columnGroups: (Box | null)[];
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* A table's rows and grid, worked out once per box tree: they come from the
|
|
37
|
+
* markup alone — a restyle builds the boxes again — while the layout asks
|
|
38
|
+
* on every pass, at every width a resize goes through, and the collapsing
|
|
39
|
+
* border model asks too.
|
|
40
|
+
*/
|
|
41
|
+
export declare function tableGrid(table: Box): TableGrid;
|
|
42
|
+
/**
|
|
43
|
+
* Assign every cell a row and a column, honouring `colspan` and `rowspan`.
|
|
44
|
+
* The occupancy grid is what makes a `rowspan` in an earlier row push a
|
|
45
|
+
* later row's cells to the right, which is the bug every naive table
|
|
46
|
+
* renderer ships with.
|
|
47
|
+
*/
|
|
48
|
+
export declare function gridOf(rows: Box[]): {
|
|
49
|
+
cells: Cell[];
|
|
50
|
+
columnCount: number;
|
|
51
|
+
};
|
|
52
|
+
export declare function spanAttr(box: Box, name: string): number;
|
|
53
|
+
//# sourceMappingURL=grid.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"grid.d.ts","sourceRoot":"","sources":["../../../src/html/layout/grid.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAEtC,MAAM,WAAW,IAAI;IACnB,GAAG,EAAE,GAAG,CAAC;IACT,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;gBACgB;AAChB,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ;eACW;IACX,MAAM,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC;IACvB,QAAQ,EAAE,GAAG,EAAE,CAAC;CACjB;AAED;;;;;;GAMG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,GAAG,GAAG,SAAS,CA+B5C;AAED,4DAA4D;AAC5D,MAAM,WAAW,SAAU,SAAQ,SAAS;IAC1C,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,oDAAoD;IACpD,WAAW,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC;IAC5B,sDAAsD;IACtD,YAAY,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC;CAC9B;AAID;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,GAAG,GAAG,SAAS,CA2B/C;AAED;;;;;GAKG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG;IAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CA0B1E;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAKvD"}
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A table's rows in the order they are drawn: a header group's first,
|
|
3
|
+
* wherever it stands, and a footer group's last (CSS 2.1 17.2) — HTML 4
|
|
4
|
+
* put `<tfoot>` before `<tbody>`, and a document that did would draw its
|
|
5
|
+
* totals mid-table. Only the first of each is set apart; any other is a
|
|
6
|
+
* body group.
|
|
7
|
+
*/
|
|
8
|
+
export function rowsOf(table) {
|
|
9
|
+
const rows = [];
|
|
10
|
+
const groups = [];
|
|
11
|
+
const captions = [];
|
|
12
|
+
let header = null;
|
|
13
|
+
let footer = null;
|
|
14
|
+
for (const child of table.children) {
|
|
15
|
+
if (child.kind !== 'table-row-group')
|
|
16
|
+
continue;
|
|
17
|
+
const display = child.style.display;
|
|
18
|
+
if (display === 'table-header-group')
|
|
19
|
+
header ??= child;
|
|
20
|
+
else if (display === 'table-footer-group')
|
|
21
|
+
footer ??= child;
|
|
22
|
+
}
|
|
23
|
+
const take = (group) => {
|
|
24
|
+
for (const row of group.children) {
|
|
25
|
+
if (row.kind !== 'table-row')
|
|
26
|
+
continue;
|
|
27
|
+
rows.push(row);
|
|
28
|
+
groups.push(group);
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
if (header)
|
|
32
|
+
take(header);
|
|
33
|
+
for (const child of table.children) {
|
|
34
|
+
if (child.kind === 'table-caption')
|
|
35
|
+
captions.push(child);
|
|
36
|
+
else if (child.kind === 'table-row-group') {
|
|
37
|
+
if (child !== header && child !== footer)
|
|
38
|
+
take(child);
|
|
39
|
+
}
|
|
40
|
+
else if (child.kind === 'table-row') {
|
|
41
|
+
rows.push(child);
|
|
42
|
+
groups.push(null);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
if (footer)
|
|
46
|
+
take(footer);
|
|
47
|
+
return { rows, groups, captions };
|
|
48
|
+
}
|
|
49
|
+
const GRIDS = new WeakMap();
|
|
50
|
+
/**
|
|
51
|
+
* A table's rows and grid, worked out once per box tree: they come from the
|
|
52
|
+
* markup alone — a restyle builds the boxes again — while the layout asks
|
|
53
|
+
* on every pass, at every width a resize goes through, and the collapsing
|
|
54
|
+
* border model asks too.
|
|
55
|
+
*/
|
|
56
|
+
export function tableGrid(table) {
|
|
57
|
+
let grid = GRIDS.get(table);
|
|
58
|
+
if (!grid) {
|
|
59
|
+
const rows = rowsOf(table);
|
|
60
|
+
const cells = gridOf(rows.rows);
|
|
61
|
+
const { column, group } = columnsOf(table, cells.columnCount);
|
|
62
|
+
if (table.style.direction === 'rtl') {
|
|
63
|
+
// A table right to left has its first column at the right (CSS 2.1
|
|
64
|
+
// 17.2). The grid is turned round once, here, so the layout, the
|
|
65
|
+
// collapsing borders and the column backgrounds, which all read it
|
|
66
|
+
// from the left, agree about where a cell is.
|
|
67
|
+
const count = cells.columnCount;
|
|
68
|
+
for (const cell of cells.cells) {
|
|
69
|
+
cell.column = count - cell.column - cell.colSpan;
|
|
70
|
+
}
|
|
71
|
+
column.reverse();
|
|
72
|
+
group.reverse();
|
|
73
|
+
}
|
|
74
|
+
grid = {
|
|
75
|
+
...rows,
|
|
76
|
+
...cells,
|
|
77
|
+
columnBoxes: column,
|
|
78
|
+
columnGroups: group,
|
|
79
|
+
};
|
|
80
|
+
GRIDS.set(table, grid);
|
|
81
|
+
}
|
|
82
|
+
return grid;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Assign every cell a row and a column, honouring `colspan` and `rowspan`.
|
|
86
|
+
* The occupancy grid is what makes a `rowspan` in an earlier row push a
|
|
87
|
+
* later row's cells to the right, which is the bug every naive table
|
|
88
|
+
* renderer ships with.
|
|
89
|
+
*/
|
|
90
|
+
export function gridOf(rows) {
|
|
91
|
+
const cells = [];
|
|
92
|
+
const occupied = [];
|
|
93
|
+
let columnCount = 0;
|
|
94
|
+
const mark = (r, c) => {
|
|
95
|
+
(occupied[r] ??= [])[c] = true;
|
|
96
|
+
};
|
|
97
|
+
const taken = (r, c) => occupied[r]?.[c] === true;
|
|
98
|
+
for (let r = 0; r < rows.length; r += 1) {
|
|
99
|
+
let c = 0;
|
|
100
|
+
for (const box of rows[r].children) {
|
|
101
|
+
if (box.kind !== 'table-cell')
|
|
102
|
+
continue;
|
|
103
|
+
while (taken(r, c))
|
|
104
|
+
c += 1;
|
|
105
|
+
const colSpan = Math.max(1, spanAttr(box, 'colspan'));
|
|
106
|
+
const rowSpan = Math.max(1, spanAttr(box, 'rowspan'));
|
|
107
|
+
cells.push({ box, row: r, column: c, colSpan, rowSpan });
|
|
108
|
+
for (let dr = 0; dr < rowSpan; dr += 1) {
|
|
109
|
+
for (let dc = 0; dc < colSpan; dc += 1)
|
|
110
|
+
mark(r + dr, c + dc);
|
|
111
|
+
}
|
|
112
|
+
c += colSpan;
|
|
113
|
+
columnCount = Math.max(columnCount, c);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
return { cells, columnCount };
|
|
117
|
+
}
|
|
118
|
+
export function spanAttr(box, name) {
|
|
119
|
+
const raw = box.el?.attribs?.[name];
|
|
120
|
+
if (!raw)
|
|
121
|
+
return 1;
|
|
122
|
+
const n = parseInt(raw, 10);
|
|
123
|
+
return Number.isFinite(n) && n > 0 ? Math.min(n, 1000) : 1;
|
|
124
|
+
}
|
|
125
|
+
/** Which column box and column group each column of the grid is in. */
|
|
126
|
+
function columnsOf(table, count) {
|
|
127
|
+
const column = new Array(count).fill(null);
|
|
128
|
+
const group = new Array(count).fill(null);
|
|
129
|
+
let at = 0;
|
|
130
|
+
const place = (box, owner, span) => {
|
|
131
|
+
for (let i = 0; i < span && at < count; i += 1, at += 1) {
|
|
132
|
+
column[at] = box;
|
|
133
|
+
group[at] = owner;
|
|
134
|
+
}
|
|
135
|
+
};
|
|
136
|
+
for (const child of table.children) {
|
|
137
|
+
if (at >= count)
|
|
138
|
+
break;
|
|
139
|
+
const display = child.style.display;
|
|
140
|
+
if (display === 'table-column') {
|
|
141
|
+
place(child, null, spanAttr(child, 'span'));
|
|
142
|
+
}
|
|
143
|
+
else if (display === 'table-column-group') {
|
|
144
|
+
const columns = child.children.filter((c) => c.style.display === 'table-column');
|
|
145
|
+
if (!columns.length)
|
|
146
|
+
place(null, child, spanAttr(child, 'span'));
|
|
147
|
+
for (const c of columns)
|
|
148
|
+
place(c, child, spanAttr(c, 'span'));
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
return { column, group };
|
|
152
|
+
}
|
|
153
|
+
//# sourceMappingURL=grid.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"grid.js","sourceRoot":"","sources":["../../../src/html/layout/grid.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { TextRun } from '../../richtext/index.js';
|
|
2
|
-
import type {
|
|
2
|
+
import type { ComputedStyle } from '../css/style.js';
|
|
3
|
+
import type { Box, FirstLineStyler, InlineDecoration, LineBox, LineText, TextLayoutLike } from './boxes.js';
|
|
3
4
|
import type { FloatContext } from './floats.js';
|
|
4
5
|
/** The slice of ntk's font manager this needs. Structural, as everywhere. */
|
|
5
6
|
export interface FontsLike {
|
|
@@ -9,6 +10,15 @@ export interface FontsLike {
|
|
|
9
10
|
align?: string;
|
|
10
11
|
direction?: string;
|
|
11
12
|
maxLines?: number;
|
|
13
|
+
/** What a `maxLines` cut looks like: an ellipsis, or nothing. */
|
|
14
|
+
overflow?: 'clip' | 'ellipsis';
|
|
15
|
+
/** A word too long for its line kept whole, past the line's end, or
|
|
16
|
+
* cut inside itself — ntk's option, which an engine without it
|
|
17
|
+
* leaves at cutting. */
|
|
18
|
+
overflowWrap?: 'normal' | 'break-word';
|
|
19
|
+
/** Whether soft wraps are made at all: false is a line to each
|
|
20
|
+
* forced break, cut at `maxWidth` where `overflow` says so. ntk's. */
|
|
21
|
+
wrap?: boolean;
|
|
12
22
|
}): TextLayoutLike;
|
|
13
23
|
match(family: string, style: Record<string, unknown>): {
|
|
14
24
|
metrics(size: number): {
|
|
@@ -18,6 +28,25 @@ export interface FontsLike {
|
|
|
18
28
|
};
|
|
19
29
|
};
|
|
20
30
|
}
|
|
31
|
+
/**
|
|
32
|
+
* The widest word between spaces in a layout's text: its runs laid out
|
|
33
|
+
* again with every space a line break, at no width limit. Where a text's
|
|
34
|
+
* only breaks are spaces that is its min-content width, and where it has
|
|
35
|
+
* others — a hyphen, a slash — more: an upper bound of it either way. The
|
|
36
|
+
* other way to ask, a layout of no width, has ntk search every word for a
|
|
37
|
+
* place to cut it, since none fits, which costs fifteen layouts of this
|
|
38
|
+
* one. Infinity where the runs are no longer kept.
|
|
39
|
+
*/
|
|
40
|
+
export declare function widestWord(fonts: FontsLike, layout: TextLayoutLike, measured?: boolean): number;
|
|
41
|
+
/**
|
|
42
|
+
* Whether a layout's text breaks only at its spaces: letters and digits of
|
|
43
|
+
* the Latin, Greek and Cyrillic scripts, and the punctuation that UAX #14
|
|
44
|
+
* never breaks after between two letters — no hyphen, slash, `!`, `?`,
|
|
45
|
+
* `|`, `}`, soft hyphen or ellipsis, and nothing of a script that breaks
|
|
46
|
+
* between its letters or by dictionary. Where it does, its widest word
|
|
47
|
+
* (`widestWord`) is exactly its min-content width.
|
|
48
|
+
*/
|
|
49
|
+
export declare function spaceBreaksOnly(layout: TextLayoutLike): boolean;
|
|
21
50
|
/** Code-unit → code-point offsets for a layout's text, built once. */
|
|
22
51
|
export declare function layoutOffsets(layout: TextLayoutLike): number[];
|
|
23
52
|
export interface InlineResult {
|
|
@@ -25,6 +54,12 @@ export interface InlineResult {
|
|
|
25
54
|
height: number;
|
|
26
55
|
/** The widest line — what a shrink-to-fit width takes. */
|
|
27
56
|
width: number;
|
|
57
|
+
/** The widest row of floats the paragraph placed beside none of its
|
|
58
|
+
* lines — all of them, where it has nothing else — side by side. */
|
|
59
|
+
floatRow?: number;
|
|
60
|
+
/** Whether a clamp cut the text short: there was more of it than the
|
|
61
|
+
* lines it left (`InlineOptions.clamp`). */
|
|
62
|
+
cut?: boolean;
|
|
28
63
|
}
|
|
29
64
|
export interface InlineOptions {
|
|
30
65
|
fonts: FontsLike | null;
|
|
@@ -35,10 +70,125 @@ export interface InlineOptions {
|
|
|
35
70
|
floats: FloatContext | null;
|
|
36
71
|
/** The block's content-box left edge, in the float context's space. */
|
|
37
72
|
originX: number;
|
|
73
|
+
/** A `::first-line` colour, for the text before `end` — the first line's
|
|
74
|
+
* end, in the document index — whose colour is `from`, the block's. */
|
|
75
|
+
firstLine?: {
|
|
76
|
+
color: string;
|
|
77
|
+
from: string;
|
|
78
|
+
end: number;
|
|
79
|
+
};
|
|
80
|
+
/**
|
|
81
|
+
* A `::first-line` that sets the first line's fonts, which move where it
|
|
82
|
+
* breaks: its style, and each box's style on the line (`FirstLineStyler`)
|
|
83
|
+
* — which the line is found in, a piece at a time (CSS 2.1 5.12.1).
|
|
84
|
+
*/
|
|
85
|
+
firstLineStyle?: {
|
|
86
|
+
style: ComputedStyle;
|
|
87
|
+
styler: FirstLineStyler;
|
|
88
|
+
};
|
|
89
|
+
/** Whether any box in the document paints its background through its
|
|
90
|
+
* text (`BoxTree.clipText`). */
|
|
91
|
+
clipText?: boolean;
|
|
92
|
+
/**
|
|
93
|
+
* The lines a line-clamp container leaves the block (CSS Overflow 4,
|
|
94
|
+
* 5.3.1): no more than `lines` of them show, and the last of a cut ends
|
|
95
|
+
* in an ellipsis where `ellipsis` says — as it does where they are all
|
|
96
|
+
* the block has and more of the container `follows` them, the clamp
|
|
97
|
+
* point just after them (4.2).
|
|
98
|
+
*/
|
|
99
|
+
clamp?: {
|
|
100
|
+
lines: number;
|
|
101
|
+
ellipsis: boolean;
|
|
102
|
+
follows: boolean;
|
|
103
|
+
};
|
|
104
|
+
/**
|
|
105
|
+
* The floats in the content, placed as the lines reach them: `size` lays
|
|
106
|
+
* one out and answers its outer width, `place` puts it at a height in the
|
|
107
|
+
* float context's space. Absent, the floats are not the lines' to place —
|
|
108
|
+
* they were, by an earlier pass over the same lines.
|
|
109
|
+
*/
|
|
110
|
+
floatBoxes?: {
|
|
111
|
+
size(box: Box): number;
|
|
112
|
+
place(box: Box, y: number): void;
|
|
113
|
+
};
|
|
38
114
|
}
|
|
39
115
|
/**
|
|
40
116
|
* Lay out one inline formatting context. Coordinates in the result are
|
|
41
117
|
* relative to the containing block's content box; the caller translates.
|
|
42
118
|
*/
|
|
43
119
|
export declare function layoutInline(block: Box, options: InlineOptions): InlineResult;
|
|
120
|
+
/**
|
|
121
|
+
* A code-unit offset in a line's layout as a document index, and back:
|
|
122
|
+
* `textStart` is `layoutStart`, and every spacer before the offset is a
|
|
123
|
+
* unit of the layout that is no text of the document's. A document offset
|
|
124
|
+
* with a spacer right at it is past the spacer, where a caret or a range's
|
|
125
|
+
* start goes — inside a padded box, after its padding — and before it as
|
|
126
|
+
* a range's `end`, so a selection does not take in the padding after it.
|
|
127
|
+
*/
|
|
128
|
+
export declare function documentOffsetOf(text: LineText, units: number): number;
|
|
129
|
+
export declare function layoutOffsetOf(text: LineText, doc: number, end?: boolean): number;
|
|
130
|
+
/** How deep a box is in the tree — an element inside another is deeper. */
|
|
131
|
+
export declare function depthOf(box: Box): number;
|
|
132
|
+
/** The same, from the first line box or child: a table's baseline is its
|
|
133
|
+
* first row's, and so is a table cell's. */
|
|
134
|
+
export declare function firstBaselineIn(box: Box): number | null;
|
|
135
|
+
/**
|
|
136
|
+
* What an inline box draws around its text, in `s`: the extent of its face
|
|
137
|
+
* where it has a background, a border or an outline, and null where it
|
|
138
|
+
* draws none. Its borders are the ones `inlineEdges` just used. Shared with
|
|
139
|
+
* a pointer move that gives a link a background (`HtmlViewNode`).
|
|
140
|
+
*/
|
|
141
|
+
export declare function inlineDecoration(fonts: FontsLike | null, box: Box, s: ComputedStyle): InlineDecoration | null;
|
|
142
|
+
/** A style's face's ascent and descent, which an inline box's background
|
|
143
|
+
* is painted over. */
|
|
144
|
+
export declare function faceExtentOf(fonts: FontsLike, style: ComputedStyle): InlineDecoration;
|
|
145
|
+
/**
|
|
146
|
+
* The OpenType features a style's text is shaped with: the `font-variant`
|
|
147
|
+
* longhands' and `font-kerning`'s, then `font-feature-settings`, which has
|
|
148
|
+
* the last word (CSS Fonts 3, 7.2). One object for each set of them, kept,
|
|
149
|
+
* because a run's fields are compared by identity — a new object a pass
|
|
150
|
+
* would find no layout the last pass made.
|
|
151
|
+
*/
|
|
152
|
+
export declare function featuresOf(style: ComputedStyle): Readonly<Record<string, number>> | null;
|
|
153
|
+
/** A run of `text` in `style`: its face, its ink and its rules. Every
|
|
154
|
+
* paint field of a run of the document's text is this function's, which
|
|
155
|
+
* is what lets a pointer move re-ink a paragraph without laying it out
|
|
156
|
+
* again (`HtmlViewNode._hoverInPlace`). */
|
|
157
|
+
export declare function runFor(text: string, style: ComputedStyle): TextRun;
|
|
158
|
+
export declare function hungSpaces(fonts: FontsLike, run: TextRun): RegExp;
|
|
159
|
+
/** The blocks whose lines hold text a box's background shows through. */
|
|
160
|
+
export declare const CLIPPED_TEXT: WeakSet<Box>;
|
|
161
|
+
/**
|
|
162
|
+
* A layout of the same text with no ink of its own, which an engine draws
|
|
163
|
+
* in the context's fill — a gradient's, for text a background shows
|
|
164
|
+
* through; the same runs, so the same glyphs where the first put them.
|
|
165
|
+
* Null for a layout that was not recorded.
|
|
166
|
+
*/
|
|
167
|
+
export declare function inklessLayout(layout: object): TextLayoutLike | null;
|
|
168
|
+
/** The box whose background a text box's glyphs show: the nearest element
|
|
169
|
+
* box from it up to the block its lines are in with `background-clip:
|
|
170
|
+
* text`, or null. */
|
|
171
|
+
export declare function clipBoxOf(box: Box | null, block: Box): Box | null;
|
|
172
|
+
/**
|
|
173
|
+
* CSS's `line-height` expressed as ntk's multiplier.
|
|
174
|
+
*
|
|
175
|
+
* ntk multiplies the **font's natural line height** (metrics, line gap
|
|
176
|
+
* included); CSS's number form multiplies the **font size**. Converting here
|
|
177
|
+
* rather than passing the CSS number through is the difference between
|
|
178
|
+
* `line-height: 1.5` meaning 1.5 × 16px and it meaning 1.5 × 19px, which is
|
|
179
|
+
* a visibly looser document than the author asked for.
|
|
180
|
+
*
|
|
181
|
+
* `line-height: 0` is legal and means what it says — lines of no height,
|
|
182
|
+
* the glyphs overflowing evenly — and ntk's half-leading does exactly that
|
|
183
|
+
* with a multiplier of 0. The floor is a hair above it rather than the 0.1
|
|
184
|
+
* it was, which set such lines a tenth of a line apart: the Cocoa engine
|
|
185
|
+
* takes a zero multiple for none at all.
|
|
186
|
+
*/
|
|
187
|
+
export declare function lineHeightMultiplier(fonts: FontsLike, style: ComputedStyle): number;
|
|
188
|
+
/**
|
|
189
|
+
* A block's strut: the ascent and descent of a line of nothing in its face,
|
|
190
|
+
* the half-leading its `line-height` adds shared above and below, as the
|
|
191
|
+
* text engines set a line (CSS 2.1 10.8.1).
|
|
192
|
+
*/
|
|
193
|
+
export declare function strutOf(fonts: FontsLike, style: ComputedStyle): InlineDecoration;
|
|
44
194
|
//# sourceMappingURL=inline.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inline.d.ts","sourceRoot":"","sources":["../../../src/html/layout/inline.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"inline.d.ts","sourceRoot":"","sources":["../../../src/html/layout/inline.ts"],"names":[],"mappings":"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"}
|