@pibbl/core 0.0.2 → 0.0.3-alpha.109.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/THIRD_PARTY_NOTICES.txt +81 -0
- package/dist/features/physics/2d-testing.d.ts +1 -1
- package/dist/features/physics/2d-testing.js +2 -2
- package/dist/features/physics/2d-testing.js.map +2 -2
- package/dist/features/physics/lib/2d/canvas/components.js +25 -21
- package/dist/features/physics/lib/2d/canvas/components.js.map +2 -2
- package/dist/features/physics/lib/2d/canvas/presentation.js +1 -2
- package/dist/features/physics/lib/2d/canvas/presentation.js.map +2 -2
- package/dist/features/physics/lib/2d/collision/casts.js +4 -2
- package/dist/features/physics/lib/2d/collision/casts.js.map +2 -2
- package/dist/features/physics/lib/2d/runtime/controller.js +1 -1
- package/dist/features/physics/lib/2d/runtime/controller.js.map +2 -2
- package/dist/features/physics/lib/2d/runtime/obstacles.js +9 -11
- package/dist/features/physics/lib/2d/runtime/obstacles.js.map +2 -2
- package/dist/features/physics/lib/2d/shapes.js +8 -9
- package/dist/features/physics/lib/2d/shapes.js.map +2 -2
- package/dist/features/physics/lib/2d/world/rapier.js +22 -26
- package/dist/features/physics/lib/2d/world/rapier.js.map +2 -2
- package/dist/features/sprites/loader.js +6 -3
- package/dist/features/sprites/loader.js.map +2 -2
- package/dist/features/textures/index.d.ts +12 -2
- package/dist/features/textures/index.js +33 -1
- package/dist/features/textures/index.js.map +2 -2
- package/dist/features/textures/lib/chemical-field.d.ts +56 -0
- package/dist/features/textures/lib/chemical-field.js +154 -0
- package/dist/features/textures/lib/chemical-field.js.map +7 -0
- package/dist/features/textures/lib/chemical-recipes.d.ts +119 -0
- package/dist/features/textures/lib/chemical-recipes.js +275 -0
- package/dist/features/textures/lib/chemical-recipes.js.map +7 -0
- package/dist/features/textures/lib/definitions.d.ts +3 -18
- package/dist/features/textures/lib/definitions.js +17 -24
- package/dist/features/textures/lib/definitions.js.map +2 -2
- package/dist/features/textures/lib/geometric-patterns.d.ts +149 -0
- package/dist/features/textures/lib/geometric-patterns.js +305 -0
- package/dist/features/textures/lib/geometric-patterns.js.map +7 -0
- package/dist/features/textures/lib/gray-scott.d.ts +55 -0
- package/dist/features/textures/lib/gray-scott.js +37 -0
- package/dist/features/textures/lib/gray-scott.js.map +7 -0
- package/dist/features/textures/lib/palette.js +1 -3
- package/dist/features/textures/lib/palette.js.map +2 -2
- package/dist/features/textures/lib/patterns.d.ts +123 -0
- package/dist/features/textures/lib/patterns.js +344 -0
- package/dist/features/textures/lib/patterns.js.map +7 -0
- package/dist/features/textures/lib/rain-drops.js +2 -1
- package/dist/features/textures/lib/rain-drops.js.map +2 -2
- package/dist/features/textures/lib/reaction-diffusion.d.ts +3 -2
- package/dist/features/textures/lib/reaction-diffusion.js +9 -20
- package/dist/features/textures/lib/reaction-diffusion.js.map +2 -2
- package/dist/features/textures/lib/simulation.d.ts +10 -4
- package/dist/features/textures/lib/simulation.js +23 -13
- package/dist/features/textures/lib/simulation.js.map +2 -2
- package/dist/features/textures/lib/wasm/electric.js +8 -1
- package/dist/features/textures/lib/wasm/electric.js.map +2 -2
- package/dist/features/textures/lib/water-surface.js +1 -3
- package/dist/features/textures/lib/water-surface.js.map +2 -2
- package/dist/features/viz/index.d.ts +68 -6
- package/dist/features/viz/index.js +164 -2
- package/dist/features/viz/index.js.map +2 -2
- package/dist/features/viz/inspection/bar.d.ts +79 -0
- package/dist/features/viz/inspection/bar.js +49 -0
- package/dist/features/viz/inspection/bar.js.map +7 -0
- package/dist/features/viz/inspection/candle.d.ts +156 -0
- package/dist/features/viz/inspection/candle.js +120 -0
- package/dist/features/viz/inspection/candle.js.map +7 -0
- package/dist/features/viz/inspection/capture-types.d.ts +65 -0
- package/dist/features/viz/inspection/capture.d.ts +16 -0
- package/dist/features/viz/inspection/capture.js +49 -0
- package/dist/features/viz/inspection/capture.js.map +7 -0
- package/dist/features/viz/inspection/handler.d.ts +36 -0
- package/dist/features/viz/inspection/handler.js +91 -0
- package/dist/features/viz/inspection/handler.js.map +7 -0
- package/dist/features/viz/inspection/ohlc-bar.d.ts +132 -0
- package/dist/features/viz/inspection/ohlc-bar.js +118 -0
- package/dist/features/viz/inspection/ohlc-bar.js.map +7 -0
- package/dist/features/viz/inspection/owned-ref.d.ts +16 -0
- package/dist/features/viz/inspection/owned-ref.js +99 -0
- package/dist/features/viz/inspection/owned-ref.js.map +7 -0
- package/dist/features/viz/inspection/painted-point.d.ts +22 -0
- package/dist/features/viz/inspection/painted-point.js +29 -0
- package/dist/features/viz/inspection/painted-point.js.map +7 -0
- package/dist/features/viz/inspection/queries.d.ts +100 -0
- package/dist/features/viz/inspection/queries.js +192 -0
- package/dist/features/viz/inspection/queries.js.map +7 -0
- package/dist/features/viz/inspection/query-types.d.ts +177 -0
- package/dist/features/viz/inspection/volume.d.ts +104 -0
- package/dist/features/viz/inspection/volume.js +95 -0
- package/dist/features/viz/inspection/volume.js.map +7 -0
- package/dist/features/viz/inspection.d.ts +19 -0
- package/dist/features/viz/inspection.js +54 -0
- package/dist/features/viz/inspection.js.map +7 -0
- package/dist/features/viz/inspection.mjs +1 -0
- package/dist/features/viz/lib/area-series.d.ts +62 -0
- package/dist/features/viz/lib/area-series.js +120 -0
- package/dist/features/viz/lib/area-series.js.map +7 -0
- package/dist/features/viz/lib/axis-title.js +2 -1
- package/dist/features/viz/lib/axis-title.js.map +2 -2
- package/dist/features/viz/lib/axis.js +1 -1
- package/dist/features/viz/lib/axis.js.map +2 -2
- package/dist/features/viz/lib/bar-series.d.ts +3 -1
- package/dist/features/viz/lib/bar-series.js +16 -1
- package/dist/features/viz/lib/bar-series.js.map +2 -2
- package/dist/features/viz/lib/baseline-series.d.ts +55 -0
- package/dist/features/viz/lib/baseline-series.js +136 -0
- package/dist/features/viz/lib/baseline-series.js.map +7 -0
- package/dist/features/viz/lib/candlestick-series.d.ts +62 -0
- package/dist/features/viz/lib/candlestick-series.js +150 -0
- package/dist/features/viz/lib/candlestick-series.js.map +7 -0
- package/dist/features/viz/lib/censored-point-series.d.ts +71 -0
- package/dist/features/viz/lib/censored-point-series.js +129 -0
- package/dist/features/viz/lib/censored-point-series.js.map +7 -0
- package/dist/features/viz/lib/color-context.d.ts +4 -0
- package/dist/features/viz/lib/color-context.js +41 -0
- package/dist/features/viz/lib/color-context.js.map +7 -0
- package/dist/features/viz/lib/color-math.d.ts +4 -0
- package/dist/features/viz/lib/color-math.js +31 -0
- package/dist/features/viz/lib/color-math.js.map +7 -0
- package/dist/features/viz/lib/color-types.d.ts +53 -0
- package/dist/features/viz/lib/curve-definition.d.ts +49 -0
- package/dist/features/viz/lib/curve-definition.js +142 -0
- package/dist/features/viz/lib/curve-definition.js.map +7 -0
- package/dist/features/viz/lib/diverging-color-scale.d.ts +11 -0
- package/dist/features/viz/lib/diverging-color-scale.js +51 -0
- package/dist/features/viz/lib/diverging-color-scale.js.map +7 -0
- package/dist/features/viz/lib/domain-navigation.d.ts +40 -0
- package/dist/features/viz/lib/domain-navigation.js +77 -0
- package/dist/features/viz/lib/domain-navigation.js.map +7 -0
- package/dist/features/viz/lib/editable-chart-elements.d.ts +178 -0
- package/dist/features/viz/lib/editable-chart-elements.js +733 -0
- package/dist/features/viz/lib/editable-chart-elements.js.map +7 -0
- package/dist/features/viz/lib/financial-aggregation.d.ts +127 -0
- package/dist/features/viz/lib/financial-aggregation.js +116 -0
- package/dist/features/viz/lib/financial-aggregation.js.map +7 -0
- package/dist/features/viz/lib/financial-autoscale.d.ts +64 -0
- package/dist/features/viz/lib/financial-autoscale.js +61 -0
- package/dist/features/viz/lib/financial-autoscale.js.map +7 -0
- package/dist/features/viz/lib/financial-comparison.d.ts +62 -0
- package/dist/features/viz/lib/financial-comparison.js +98 -0
- package/dist/features/viz/lib/financial-comparison.js.map +7 -0
- package/dist/features/viz/lib/financial-geometry.d.ts +77 -0
- package/dist/features/viz/lib/financial-geometry.js +67 -0
- package/dist/features/viz/lib/financial-geometry.js.map +7 -0
- package/dist/features/viz/lib/financial-indicators.d.ts +114 -0
- package/dist/features/viz/lib/financial-indicators.js +135 -0
- package/dist/features/viz/lib/financial-indicators.js.map +7 -0
- package/dist/features/viz/lib/financial-oscillators.d.ts +171 -0
- package/dist/features/viz/lib/financial-oscillators.js +265 -0
- package/dist/features/viz/lib/financial-oscillators.js.map +7 -0
- package/dist/features/viz/lib/graph/bipartite.d.ts +14 -0
- package/dist/features/viz/lib/graph/bipartite.js +250 -0
- package/dist/features/viz/lib/graph/bipartite.js.map +7 -0
- package/dist/features/viz/lib/graph/chord.d.ts +44 -0
- package/dist/features/viz/lib/graph/chord.js +348 -0
- package/dist/features/viz/lib/graph/chord.js.map +7 -0
- package/dist/features/viz/lib/graph/dependency.d.ts +26 -0
- package/dist/features/viz/lib/graph/dependency.js +140 -0
- package/dist/features/viz/lib/graph/dependency.js.map +7 -0
- package/dist/features/viz/lib/graph/force.d.ts +28 -0
- package/dist/features/viz/lib/graph/force.js +580 -0
- package/dist/features/viz/lib/graph/force.js.map +7 -0
- package/dist/features/viz/lib/graph/hierarchy.d.ts +21 -0
- package/dist/features/viz/lib/graph/hierarchy.js +112 -0
- package/dist/features/viz/lib/graph/hierarchy.js.map +7 -0
- package/dist/features/viz/lib/graph/icicle.d.ts +16 -0
- package/dist/features/viz/lib/graph/icicle.js +153 -0
- package/dist/features/viz/lib/graph/icicle.js.map +7 -0
- package/dist/features/viz/lib/graph/matrix.d.ts +30 -0
- package/dist/features/viz/lib/graph/matrix.js +243 -0
- package/dist/features/viz/lib/graph/matrix.js.map +7 -0
- package/dist/features/viz/lib/graph/neighborhood.d.ts +11 -0
- package/dist/features/viz/lib/graph/neighborhood.js +281 -0
- package/dist/features/viz/lib/graph/neighborhood.js.map +7 -0
- package/dist/features/viz/lib/graph/routes.d.ts +35 -0
- package/dist/features/viz/lib/graph/routes.js +101 -0
- package/dist/features/viz/lib/graph/routes.js.map +7 -0
- package/dist/features/viz/lib/graph/sankey.d.ts +44 -0
- package/dist/features/viz/lib/graph/sankey.js +341 -0
- package/dist/features/viz/lib/graph/sankey.js.map +7 -0
- package/dist/features/viz/lib/graph/shared.d.ts +59 -0
- package/dist/features/viz/lib/graph/shared.js +301 -0
- package/dist/features/viz/lib/graph/shared.js.map +7 -0
- package/dist/features/viz/lib/graph/tree.d.ts +11 -0
- package/dist/features/viz/lib/graph/tree.js +232 -0
- package/dist/features/viz/lib/graph/tree.js.map +7 -0
- package/dist/features/viz/lib/graph/treemap.d.ts +20 -0
- package/dist/features/viz/lib/graph/treemap.js +227 -0
- package/dist/features/viz/lib/graph/treemap.js.map +7 -0
- package/dist/features/viz/lib/graph/types.d.ts +1097 -0
- package/dist/features/viz/lib/hover-card.js +8 -9
- package/dist/features/viz/lib/hover-card.js.map +2 -2
- package/dist/features/viz/lib/hover-data.d.ts +1 -1
- package/dist/features/viz/lib/hover-data.js +5 -2
- package/dist/features/viz/lib/hover-data.js.map +2 -2
- package/dist/features/viz/lib/interval-band-series.d.ts +49 -0
- package/dist/features/viz/lib/interval-band-series.js +136 -0
- package/dist/features/viz/lib/interval-band-series.js.map +7 -0
- package/dist/features/viz/lib/interval-diamond-series.d.ts +43 -0
- package/dist/features/viz/lib/interval-diamond-series.js +122 -0
- package/dist/features/viz/lib/interval-diamond-series.js.map +7 -0
- package/dist/features/viz/lib/interval-series.d.ts +79 -0
- package/dist/features/viz/lib/interval-series.js +158 -0
- package/dist/features/viz/lib/interval-series.js.map +7 -0
- package/dist/features/viz/lib/layout-pie.js +9 -13
- package/dist/features/viz/lib/layout-pie.js.map +2 -2
- package/dist/features/viz/lib/line-series.d.ts +1 -1
- package/dist/features/viz/lib/line-series.js +47 -28
- package/dist/features/viz/lib/line-series.js.map +2 -2
- package/dist/features/viz/lib/linear-scale.js +1 -1
- package/dist/features/viz/lib/linear-scale.js.map +2 -2
- package/dist/features/viz/lib/monotone-curve.d.ts +11 -0
- package/dist/features/viz/lib/monotone-curve.js +63 -0
- package/dist/features/viz/lib/monotone-curve.js.map +7 -0
- package/dist/features/viz/lib/numeric-range-interpolation.d.ts +15 -0
- package/dist/features/viz/lib/numeric-range-interpolation.js +36 -0
- package/dist/features/viz/lib/numeric-range-interpolation.js.map +7 -0
- package/dist/features/viz/lib/ohlc-bar-series.d.ts +55 -0
- package/dist/features/viz/lib/ohlc-bar-series.js +168 -0
- package/dist/features/viz/lib/ohlc-bar-series.js.map +7 -0
- package/dist/features/viz/lib/paired-series.d.ts +44 -0
- package/dist/features/viz/lib/paired-series.js +93 -0
- package/dist/features/viz/lib/paired-series.js.map +7 -0
- package/dist/features/viz/lib/pie-layout.js +2 -1
- package/dist/features/viz/lib/pie-layout.js.map +2 -2
- package/dist/features/viz/lib/plot-series.js +11 -6
- package/dist/features/viz/lib/plot-series.js.map +2 -2
- package/dist/features/viz/lib/plot-types.d.ts +4 -3
- package/dist/features/viz/lib/point-series.d.ts +1 -1
- package/dist/features/viz/lib/point-series.js +36 -9
- package/dist/features/viz/lib/point-series.js.map +2 -2
- package/dist/features/viz/lib/point-types.d.ts +5 -2
- package/dist/features/viz/lib/reference-band.js +4 -1
- package/dist/features/viz/lib/reference-band.js.map +2 -2
- package/dist/features/viz/lib/scale-context.d.ts +1 -1
- package/dist/features/viz/lib/scale-ticks.js +21 -6
- package/dist/features/viz/lib/scale-ticks.js.map +2 -2
- package/dist/features/viz/lib/sequential-color-scale.d.ts +11 -0
- package/dist/features/viz/lib/sequential-color-scale.js +49 -0
- package/dist/features/viz/lib/sequential-color-scale.js.map +7 -0
- package/dist/features/viz/lib/series-position.d.ts +12 -0
- package/dist/features/viz/lib/series-position.js +44 -0
- package/dist/features/viz/lib/series-position.js.map +7 -0
- package/dist/features/viz/lib/step-curves.d.ts +19 -0
- package/dist/features/viz/lib/step-curves.js +53 -0
- package/dist/features/viz/lib/step-curves.js.map +7 -0
- package/dist/features/viz/lib/threshold-color-scale.d.ts +43 -0
- package/dist/features/viz/lib/threshold-color-scale.js +59 -0
- package/dist/features/viz/lib/threshold-color-scale.js.map +7 -0
- package/dist/features/viz/lib/trading-time-mapping.d.ts +32 -0
- package/dist/features/viz/lib/trading-time-mapping.js +89 -0
- package/dist/features/viz/lib/trading-time-mapping.js.map +7 -0
- package/dist/features/viz/lib/trading-time-scale.d.ts +83 -0
- package/dist/features/viz/lib/trading-time-scale.js +96 -0
- package/dist/features/viz/lib/trading-time-scale.js.map +7 -0
- package/dist/features/viz/lib/trajectory-series.d.ts +71 -0
- package/dist/features/viz/lib/trajectory-series.js +111 -0
- package/dist/features/viz/lib/trajectory-series.js.map +7 -0
- package/dist/features/viz/lib/types.d.ts +20 -4
- package/dist/features/viz/lib/use-continuous-scale.js +6 -1
- package/dist/features/viz/lib/use-continuous-scale.js.map +2 -2
- package/dist/features/viz/lib/utc-scale.js +11 -10
- package/dist/features/viz/lib/utc-scale.js.map +2 -2
- package/dist/features/viz/lib/volume-series.d.ts +59 -0
- package/dist/features/viz/lib/volume-series.js +117 -0
- package/dist/features/viz/lib/volume-series.js.map +7 -0
- package/dist/features/viz/lib/weighted-point-series.d.ts +71 -0
- package/dist/features/viz/lib/weighted-point-series.js +169 -0
- package/dist/features/viz/lib/weighted-point-series.js.map +7 -0
- package/dist/filters/backdrop-contrast-gpu.d.ts +5 -0
- package/dist/filters/backdrop-contrast-gpu.js +33 -0
- package/dist/filters/backdrop-contrast-gpu.js.map +7 -0
- package/dist/filters/backdrop-contrast.d.ts +21 -0
- package/dist/filters/backdrop-contrast.js +61 -0
- package/dist/filters/backdrop-contrast.js.map +7 -0
- package/dist/filters/displacement.js +1 -1
- package/dist/filters/displacement.js.map +2 -2
- package/dist/filters/emboss-gpu.d.ts +4 -0
- package/dist/filters/emboss-gpu.js +39 -0
- package/dist/filters/emboss-gpu.js.map +7 -0
- package/dist/filters/emboss.d.ts +32 -0
- package/dist/filters/emboss.js +104 -0
- package/dist/filters/emboss.js.map +7 -0
- package/dist/filters/filter-executor.d.ts +11 -4
- package/dist/filters/filter-executor.js +104 -49
- package/dist/filters/filter-executor.js.map +2 -2
- package/dist/filters/reflected-light.js +1 -1
- package/dist/filters/reflected-light.js.map +2 -2
- package/dist/filters/reflection-gpu.d.ts +3 -1
- package/dist/filters/reflection-gpu.js +5 -2
- package/dist/filters/reflection-gpu.js.map +2 -2
- package/dist/filters/render-backdrop-contrast-boundary.d.ts +31 -0
- package/dist/filters/render-backdrop-contrast-boundary.js +116 -0
- package/dist/filters/render-backdrop-contrast-boundary.js.map +7 -0
- package/dist/filters/render-emboss-boundary.d.ts +13 -0
- package/dist/filters/render-emboss-boundary.js +131 -0
- package/dist/filters/render-emboss-boundary.js.map +7 -0
- package/dist/filters.d.ts +9 -5
- package/dist/filters.js +4 -0
- package/dist/filters.js.map +2 -2
- package/dist/index.d.ts +9 -5
- package/dist/index.js +18 -2
- package/dist/index.js.map +2 -2
- package/dist/internal.d.ts +4 -0
- package/dist/internal.js +6 -0
- package/dist/internal.js.map +2 -2
- package/dist/layout-kernel.d.ts +12 -0
- package/dist/layout-kernel.js +11 -0
- package/dist/layout-kernel.js.map +7 -0
- package/dist/layout-kernel.mjs +1 -0
- package/dist/lib/backend/types.d.ts +13 -1
- package/dist/lib/backend/types.js.map +2 -2
- package/dist/lib/components/arc-geometry.js +2 -1
- package/dist/lib/components/arc-geometry.js.map +2 -2
- package/dist/lib/components/g.js +2 -0
- package/dist/lib/components/g.js.map +2 -2
- package/dist/lib/components/html-box.js +2 -1
- package/dist/lib/components/html-box.js.map +2 -2
- package/dist/lib/components/img.js +3 -3
- package/dist/lib/components/img.js.map +2 -2
- package/dist/lib/components/layer.js +98 -16
- package/dist/lib/components/layer.js.map +3 -3
- package/dist/lib/components/text.d.ts +16 -0
- package/dist/lib/components/text.js +131 -24
- package/dist/lib/components/text.js.map +2 -2
- package/dist/lib/define-primitive.d.ts +4 -2
- package/dist/lib/define-primitive.js +3 -1
- package/dist/lib/define-primitive.js.map +2 -2
- package/dist/lib/element/metadata.d.ts +9 -0
- package/dist/lib/element/metadata.js +19 -0
- package/dist/lib/element/metadata.js.map +2 -2
- package/dist/lib/element/resolve-primitive-inputs.d.ts +2 -0
- package/dist/lib/element/resolve-primitive-inputs.js +17 -4
- package/dist/lib/element/resolve-primitive-inputs.js.map +2 -2
- package/dist/lib/events/event-facade.d.ts +18 -0
- package/dist/lib/events/event-facade.js +28 -2
- package/dist/lib/events/event-facade.js.map +2 -2
- package/dist/lib/events/hit-test.js +2 -1
- package/dist/lib/events/hit-test.js.map +2 -2
- package/dist/lib/events/propagation.d.ts +2 -1
- package/dist/lib/events/propagation.js +22 -16
- package/dist/lib/events/propagation.js.map +2 -2
- package/dist/lib/events/registrations.d.ts +10 -0
- package/dist/lib/events/registrations.js +160 -5
- package/dist/lib/events/registrations.js.map +2 -2
- package/dist/lib/execute-render.js +25 -1
- package/dist/lib/execute-render.js.map +2 -2
- package/dist/lib/filter/filter-region.js +3 -10
- package/dist/lib/filter/filter-region.js.map +2 -2
- package/dist/lib/focus/focus-manager.d.ts +8 -1
- package/dist/lib/focus/focus-manager.js +87 -43
- package/dist/lib/focus/focus-manager.js.map +2 -2
- package/dist/lib/focus/geometry.d.ts +2 -0
- package/dist/lib/focus/geometry.js +6 -0
- package/dist/lib/focus/geometry.js.map +2 -2
- package/dist/lib/geometry/path-bend-guide.js +1 -1
- package/dist/lib/geometry/path-bend-guide.js.map +2 -2
- package/dist/lib/geometry/path-geometry.js +12 -11
- package/dist/lib/geometry/path-geometry.js.map +2 -2
- package/dist/lib/geometry/path-transforms.js +17 -21
- package/dist/lib/geometry/path-transforms.js.map +2 -2
- package/dist/lib/geometry/path-warp-bezier.js +3 -1
- package/dist/lib/geometry/path-warp-bezier.js.map +2 -2
- package/dist/lib/geometry/path-warp.js +1 -1
- package/dist/lib/geometry/path-warp.js.map +2 -2
- package/dist/lib/global-state.js +2 -0
- package/dist/lib/global-state.js.map +2 -2
- package/dist/lib/html/html-events.d.ts +32 -0
- package/dist/lib/html/html-events.js +179 -0
- package/dist/lib/html/html-events.js.map +7 -0
- package/dist/lib/html/html-service.d.ts +8 -2
- package/dist/lib/html/html-service.js +198 -65
- package/dist/lib/html/html-service.js.map +2 -2
- package/dist/lib/html/overlay-config.js +7 -6
- package/dist/lib/html/overlay-config.js.map +2 -2
- package/dist/lib/html/types.d.ts +29 -2
- package/dist/lib/layout/absolute.d.ts +11 -5
- package/dist/lib/layout/absolute.js +329 -55
- package/dist/lib/layout/absolute.js.map +3 -3
- package/dist/lib/layout/allocation-checkpoint-owner.d.ts +11 -0
- package/dist/lib/layout/allocation-checkpoint-owner.js +86 -0
- package/dist/lib/layout/allocation-checkpoint-owner.js.map +7 -0
- package/dist/lib/layout/allocation-checkpoint.d.ts +53 -0
- package/dist/lib/layout/allocation-checkpoint.js +463 -0
- package/dist/lib/layout/allocation-checkpoint.js.map +7 -0
- package/dist/lib/layout/allocation-dependencies.d.ts +30 -0
- package/dist/lib/layout/allocation-dependencies.js +90 -0
- package/dist/lib/layout/allocation-dependencies.js.map +7 -0
- package/dist/lib/layout/allocation-revision.d.ts +13 -0
- package/dist/lib/layout/allocation-revision.js +67 -0
- package/dist/lib/layout/allocation-revision.js.map +7 -0
- package/dist/lib/layout/box-insets.d.ts +17 -0
- package/dist/lib/layout/box-insets.js +138 -0
- package/dist/lib/layout/box-insets.js.map +7 -0
- package/dist/lib/layout/box-sizing.d.ts +16 -0
- package/dist/lib/layout/box-sizing.js +77 -0
- package/dist/lib/layout/box-sizing.js.map +7 -0
- package/dist/lib/layout/box.js +42 -12
- package/dist/lib/layout/box.js.map +2 -2
- package/dist/lib/layout/canvas-measurement.d.ts +13 -0
- package/dist/lib/layout/canvas-measurement.js +57 -0
- package/dist/lib/layout/canvas-measurement.js.map +7 -0
- package/dist/lib/layout/context.d.ts +35 -6
- package/dist/lib/layout/context.js +72 -3
- package/dist/lib/layout/context.js.map +2 -2
- package/dist/lib/layout/define-layout-component.d.ts +23 -0
- package/dist/lib/layout/define-layout-component.js +84 -0
- package/dist/lib/layout/define-layout-component.js.map +7 -0
- package/dist/lib/layout/flex-allocation-cache.d.ts +42 -0
- package/dist/lib/layout/flex-baseline-mode.d.ts +2 -0
- package/dist/lib/layout/flex-baseline-mode.js +7 -0
- package/dist/lib/layout/flex-baseline-mode.js.map +7 -0
- package/dist/lib/layout/flex.d.ts +50 -15
- package/dist/lib/layout/flex.js +2124 -195
- package/dist/lib/layout/flex.js.map +3 -3
- package/dist/lib/layout/flow.js +225 -49
- package/dist/lib/layout/flow.js.map +2 -2
- package/dist/lib/layout/geometry-publication.d.ts +53 -0
- package/dist/lib/layout/geometry-publication.js +244 -0
- package/dist/lib/layout/geometry-publication.js.map +7 -0
- package/dist/lib/layout/grid-kernel.d.ts +63 -0
- package/dist/lib/layout/grid-kernel.js +168 -0
- package/dist/lib/layout/grid-kernel.js.map +7 -0
- package/dist/lib/layout/grid.d.ts +63 -4
- package/dist/lib/layout/grid.js +767 -171
- package/dist/lib/layout/grid.js.map +3 -3
- package/dist/lib/layout/measure.d.ts +55 -3
- package/dist/lib/layout/measure.js +448 -15
- package/dist/lib/layout/measure.js.map +2 -2
- package/dist/lib/layout/overlay.js +81 -23
- package/dist/lib/layout/overlay.js.map +2 -2
- package/dist/lib/layout/participation.d.ts +27 -0
- package/dist/lib/layout/participation.js +188 -0
- package/dist/lib/layout/participation.js.map +7 -0
- package/dist/lib/layout/place-child.js +1 -1
- package/dist/lib/layout/place-child.js.map +2 -2
- package/dist/lib/layout/positioning-diagnostics.d.ts +1 -1
- package/dist/lib/layout/positioning-diagnostics.js +13 -2
- package/dist/lib/layout/positioning-diagnostics.js.map +2 -2
- package/dist/lib/layout/prepared-root.d.ts +121 -0
- package/dist/lib/layout/prepared-root.js +360 -0
- package/dist/lib/layout/prepared-root.js.map +7 -0
- package/dist/lib/layout/standalone-kernel.d.ts +60 -0
- package/dist/lib/layout/standalone-kernel.js +722 -0
- package/dist/lib/layout/standalone-kernel.js.map +7 -0
- package/dist/lib/layout/topology.d.ts +21 -0
- package/dist/lib/layout/topology.js +113 -0
- package/dist/lib/layout/topology.js.map +7 -0
- package/dist/lib/layout/types.d.ts +5 -0
- package/dist/lib/layout/wasm/artifact.d.ts +1 -0
- package/dist/lib/layout/wasm/artifact.js +5 -0
- package/dist/lib/layout/wasm/artifact.js.map +7 -0
- package/dist/lib/layout/wasm/bytes.d.ts +1 -0
- package/dist/lib/layout/wasm/bytes.js +5 -0
- package/dist/lib/layout/wasm/bytes.js.map +7 -0
- package/dist/lib/layout/wasm/embedded.d.ts +2 -0
- package/dist/lib/layout/wasm/embedded.js +12 -0
- package/dist/lib/layout/wasm/embedded.js.map +7 -0
- package/dist/lib/layout/wasm/layout.wasm +0 -0
- package/dist/lib/layout/wasm/module.d.ts +8 -0
- package/dist/lib/layout/wasm/module.js +70 -0
- package/dist/lib/layout/wasm/module.js.map +7 -0
- package/dist/lib/layout/wasm/region.d.ts +267 -0
- package/dist/lib/layout/wasm/region.js +1018 -0
- package/dist/lib/layout/wasm/region.js.map +7 -0
- package/dist/lib/manipulation/controller.js +4 -7
- package/dist/lib/manipulation/controller.js.map +2 -2
- package/dist/lib/manipulation/frame.js +1 -1
- package/dist/lib/manipulation/frame.js.map +2 -2
- package/dist/lib/manipulation/handles.js +32 -33
- package/dist/lib/manipulation/handles.js.map +2 -2
- package/dist/lib/manipulation/solve.js +12 -10
- package/dist/lib/manipulation/solve.js.map +2 -2
- package/dist/lib/mount-pibbl.js +1 -0
- package/dist/lib/mount-pibbl.js.map +2 -2
- package/dist/lib/mount-prepared-pibbl.d.ts +5 -0
- package/dist/lib/mount-prepared-pibbl.js +29 -0
- package/dist/lib/mount-prepared-pibbl.js.map +7 -0
- package/dist/lib/mount-request.d.ts +8 -0
- package/dist/lib/mount-request.js +41 -0
- package/dist/lib/mount-request.js.map +7 -0
- package/dist/lib/pibbl.d.ts +21 -13
- package/dist/lib/pibbl.js +18 -16
- package/dist/lib/pibbl.js.map +2 -2
- package/dist/lib/recording/recording.d.ts +43 -0
- package/dist/lib/recording/recording.js +555 -0
- package/dist/lib/recording/recording.js.map +7 -0
- package/dist/lib/recording/types.d.ts +118 -0
- package/dist/lib/recording/wasm-bytes.d.ts +1 -0
- package/dist/lib/recording/wasm-bytes.js +5 -0
- package/dist/lib/recording/wasm-bytes.js.map +7 -0
- package/dist/lib/recording/worker-source.d.ts +1 -0
- package/dist/lib/recording/worker-source.js +5 -0
- package/dist/lib/recording/worker-source.js.map +7 -0
- package/dist/lib/render-layer/controller.d.ts +9 -3
- package/dist/lib/render-layer/controller.js +259 -110
- package/dist/lib/render-layer/controller.js.map +2 -2
- package/dist/lib/render-transaction.d.ts +12 -2
- package/dist/lib/render-transaction.js +69 -1
- package/dist/lib/render-transaction.js.map +2 -2
- package/dist/lib/render.js +32 -8
- package/dist/lib/render.js.map +2 -2
- package/dist/lib/scheduler/realm-scheduler.d.ts +2 -0
- package/dist/lib/scheduler/realm-scheduler.js +55 -26
- package/dist/lib/scheduler/realm-scheduler.js.map +2 -2
- package/dist/lib/scheduler/renderer-participant.js +1 -0
- package/dist/lib/scheduler/renderer-participant.js.map +2 -2
- package/dist/lib/series-inspection-frame.d.ts +18 -0
- package/dist/lib/series-inspection-frame.js +70 -0
- package/dist/lib/series-inspection-frame.js.map +7 -0
- package/dist/lib/signals/edge.d.ts +7 -4
- package/dist/lib/signals/edge.js +25 -3
- package/dist/lib/signals/edge.js.map +2 -2
- package/dist/lib/signals/graph.d.ts +16 -2
- package/dist/lib/signals/graph.js +54 -12
- package/dist/lib/signals/graph.js.map +2 -2
- package/dist/lib/signals/input-provision.d.ts +15 -0
- package/dist/lib/signals/input-provision.js +53 -3
- package/dist/lib/signals/input-provision.js.map +2 -2
- package/dist/lib/signals/render-consumer.d.ts +3 -0
- package/dist/lib/signals/render-consumer.js +22 -14
- package/dist/lib/signals/render-consumer.js.map +2 -2
- package/dist/lib/style/positioning.d.ts +50 -2
- package/dist/lib/style/positioning.js +28 -4
- package/dist/lib/style/positioning.js.map +2 -2
- package/dist/lib/style/resolve-built-in.d.ts +4 -3
- package/dist/lib/style/resolve-built-in.js +17 -3
- package/dist/lib/style/resolve-built-in.js.map +2 -2
- package/dist/lib/style/resolve-dispatch.d.ts +3 -0
- package/dist/lib/style/resolve-dispatch.js +77 -4
- package/dist/lib/style/resolve-dispatch.js.map +2 -2
- package/dist/lib/style/resolve-length.d.ts +2 -0
- package/dist/lib/style/resolve-length.js +13 -9
- package/dist/lib/style/resolve-length.js.map +2 -2
- package/dist/lib/style/sizing-length.d.ts +51 -0
- package/dist/lib/style/sizing-length.js +77 -0
- package/dist/lib/style/sizing-length.js.map +7 -0
- package/dist/lib/style/types.d.ts +63 -25
- package/dist/lib/surface/root-surface.js +10 -6
- package/dist/lib/surface/root-surface.js.map +2 -2
- package/dist/lib/textures/texture.js +10 -8
- package/dist/lib/textures/texture.js.map +2 -2
- package/dist/lib/transitions/capture.js +4 -1
- package/dist/lib/transitions/capture.js.map +2 -2
- package/dist/lib/transitions/embers-physics.js +17 -10
- package/dist/lib/transitions/embers-physics.js.map +2 -2
- package/dist/lib/types.d.ts +110 -1
- package/dist/sync.d.ts +16 -0
- package/dist/sync.js +13 -0
- package/dist/sync.js.map +7 -0
- package/dist/sync.mjs +1 -0
- package/package.json +26 -3
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { layoutBinaryHash } from "./artifact.js";
|
|
2
|
+
let compiled;
|
|
3
|
+
let preparation;
|
|
4
|
+
function layoutAssetUrl() {
|
|
5
|
+
return typeof __PIBBL_LAYOUT_ASSET_URL__ === "string" ? new URL(__PIBBL_LAYOUT_ASSET_URL__, document.baseURI) : new URL("./layout.wasm", import.meta.url);
|
|
6
|
+
}
|
|
7
|
+
function readyLayoutModule() {
|
|
8
|
+
if (!compiled) throw new Error("Prepare the layout engine before synchronous layout: await prepareLayoutEngine(), or mount with pibblSync from @pibbl/core/sync.");
|
|
9
|
+
return compiled;
|
|
10
|
+
}
|
|
11
|
+
function hasReadyLayoutModule() {
|
|
12
|
+
return compiled !== void 0;
|
|
13
|
+
}
|
|
14
|
+
function publishLayoutModule(module) {
|
|
15
|
+
if (compiled) return;
|
|
16
|
+
const exports = WebAssembly.Module.exports(module);
|
|
17
|
+
if (!exports.some((entry) => entry.name === "grid_v2_auto_fit_keep" && entry.kind === "function") || !exports.some((entry) => entry.name === "grid_v2_collapse_auto_fit" && entry.kind === "function") || !exports.some((entry) => entry.name === "standalone_tree_measure_kind" && entry.kind === "function") || !exports.some((entry) => entry.name === "grid_v2_resize_contributions" && entry.kind === "function") || !exports.some((entry) => entry.name === "grid_v2_apply_contributions" && entry.kind === "function") || !exports.some((entry) => entry.name === "standalone_tree_resize_grid" && entry.kind === "function") || !exports.some((entry) => entry.name === "grid_v2_assigned_columns" && entry.kind === "function") || !exports.some((entry) => entry.name === "grid_v2_assigned_rows" && entry.kind === "function") || !exports.some((entry) => entry.name === "grid_v2_assign_cells" && entry.kind === "function") || !exports.some((entry) => entry.name === "grid_v2_create" && entry.kind === "function") || !exports.some((entry) => entry.name === "grid_v2_dispose" && entry.kind === "function") || !exports.some((entry) => entry.name === "grid_v2_generation" && entry.kind === "function") || !exports.some((entry) => entry.name === "grid_v2_place_cells" && entry.kind === "function") || !exports.some((entry) => entry.name === "grid_v2_resize_cells" && entry.kind === "function") || !exports.some((entry) => entry.name === "grid_v2_resize_tracks" && entry.kind === "function") || !exports.some((entry) => entry.name === "grid_v2_resolve_tracks" && entry.kind === "function") || !exports.some((entry) => entry.name === "standalone_tree_box_count" && entry.kind === "function") || !exports.some((entry) => entry.name === "standalone_tree_box_height" && entry.kind === "function") || !exports.some((entry) => entry.name === "standalone_tree_box_id" && entry.kind === "function") || !exports.some((entry) => entry.name === "standalone_tree_box_width" && entry.kind === "function") || !exports.some((entry) => entry.name === "standalone_tree_box_x" && entry.kind === "function") || !exports.some((entry) => entry.name === "standalone_tree_box_y" && entry.kind === "function") || !exports.some((entry) => entry.name === "standalone_tree_create" && entry.kind === "function") || !exports.some((entry) => entry.name === "standalone_tree_dispose" && entry.kind === "function") || !exports.some((entry) => entry.name === "standalone_tree_generation" && entry.kind === "function") || !exports.some((entry) => entry.name === "standalone_tree_measure_count" && entry.kind === "function") || !exports.some((entry) => entry.name === "standalone_tree_measure_height_max" && entry.kind === "function") || !exports.some((entry) => entry.name === "standalone_tree_measure_height_min" && entry.kind === "function") || !exports.some((entry) => entry.name === "standalone_tree_measure_node" && entry.kind === "function") || !exports.some((entry) => entry.name === "standalone_tree_measure_width_max" && entry.kind === "function") || !exports.some((entry) => entry.name === "standalone_tree_measure_width_min" && entry.kind === "function") || !exports.some((entry) => entry.name === "standalone_tree_prepare" && entry.kind === "function") || !exports.some((entry) => entry.name === "standalone_tree_prepare_settled_measurements" && entry.kind === "function") || !exports.some((entry) => entry.name === "standalone_tree_replace" && entry.kind === "function") || !exports.some((entry) => entry.name === "standalone_tree_resize_children" && entry.kind === "function") || !exports.some((entry) => entry.name === "standalone_tree_resize_measurements" && entry.kind === "function") || !exports.some((entry) => entry.name === "standalone_tree_resize_nodes" && entry.kind === "function") || !exports.some((entry) => entry.name === "standalone_tree_solve" && entry.kind === "function") || !exports.some((entry) => entry.name === "layout_abi_v21" && entry.kind === "function") || !exports.some((entry) => entry.name === "last_wrap_line_count" && entry.kind === "function") || !exports.some((entry) => entry.name === "first_wrap_line_count" && entry.kind === "function") || !exports.some((entry) => entry.name === "prepare_intrinsic_main_queries" && entry.kind === "function") || !exports.some((entry) => entry.name === "resize_intrinsic_main" && entry.kind === "function") || !exports.some((entry) => entry.name === "resolve_intrinsic_main" && entry.kind === "function") || !exports.some((entry) => entry.name === "intrinsic_main_result" && entry.kind === "function") || !exports.some((entry) => entry.name === "intrinsic_main_contribution" && entry.kind === "function") || !exports.some((entry) => entry.name === "resolve_intrinsic_main_known_owner" && entry.kind === "function") || !exports.some((entry) => entry.name === "intrinsic_main_auto_free" && entry.kind === "function") || !exports.some((entry) => entry.name === "place_main_auto_staged" && entry.kind === "function") || !exports.some((entry) => entry.name === "place_wrap_first_baseline" && entry.kind === "function") || !exports.some((entry) => entry.name === "place_last_baseline" && entry.kind === "function") || !exports.some((entry) => entry.name === "place_wrap_last_baseline" && entry.kind === "function") || !exports.some((entry) => entry.name === "place_first_baseline" && entry.kind === "function") || !exports.some((entry) => entry.name === "resize_main_auto" && entry.kind === "function") || !exports.some((entry) => entry.name === "place_main_auto" && entry.kind === "function") || !exports.some((entry) => entry.name === "place_wrap_main_auto" && entry.kind === "function") || !exports.some((entry) => entry.name === "memory" && entry.kind === "memory") || !exports.some((entry) => entry.name === "solve" && entry.kind === "function") || !exports.some((entry) => entry.name === "dispose" && entry.kind === "function") || !exports.some((entry) => entry.name === "resize_flow" && entry.kind === "function") || !exports.some((entry) => entry.name === "place_flow" && entry.kind === "function") || !exports.some((entry) => entry.name === "resize_grid_cells" && entry.kind === "function") || !exports.some((entry) => entry.name === "place_grid_cells" && entry.kind === "function") || !exports.some((entry) => entry.name === "resize_grid" && entry.kind === "function") || !exports.some((entry) => entry.name === "resolve_grid_tracks" && entry.kind === "function") || !exports.some((entry) => entry.name === "arena_create" && entry.kind === "function") || !exports.some((entry) => entry.name === "arena_generation" && entry.kind === "function") || !exports.some((entry) => entry.name === "arena_dispose" && entry.kind === "function")) {
|
|
18
|
+
throw new Error("Layout WASM ABI is incompatible with this runtime.");
|
|
19
|
+
}
|
|
20
|
+
compiled = module;
|
|
21
|
+
const pending = preparation;
|
|
22
|
+
preparation = void 0;
|
|
23
|
+
pending?.resolve();
|
|
24
|
+
pending?.transport.abort();
|
|
25
|
+
}
|
|
26
|
+
function prepareLayoutModule() {
|
|
27
|
+
if (compiled) return Promise.resolve();
|
|
28
|
+
if (preparation) return preparation.promise;
|
|
29
|
+
let resolve;
|
|
30
|
+
let reject;
|
|
31
|
+
const promise = new Promise((accept, fail) => {
|
|
32
|
+
resolve = accept;
|
|
33
|
+
reject = fail;
|
|
34
|
+
});
|
|
35
|
+
const attempt = { promise, resolve, reject, transport: new AbortController() };
|
|
36
|
+
preparation = attempt;
|
|
37
|
+
void load(attempt);
|
|
38
|
+
return promise;
|
|
39
|
+
}
|
|
40
|
+
async function load(attempt) {
|
|
41
|
+
let url;
|
|
42
|
+
let phase = "fetch";
|
|
43
|
+
try {
|
|
44
|
+
url = layoutAssetUrl();
|
|
45
|
+
const response = await fetch(url, { signal: attempt.transport.signal });
|
|
46
|
+
if (!response.ok) throw new Error(`HTTP ${response.status}`);
|
|
47
|
+
const binary = await response.arrayBuffer();
|
|
48
|
+
if (compiled) return;
|
|
49
|
+
phase = "integrity";
|
|
50
|
+
const hash = new Uint8Array(await crypto.subtle.digest("SHA-256", binary));
|
|
51
|
+
let hex = "";
|
|
52
|
+
for (let i = 0; i < hash.length; i++) hex += hash[i].toString(16).padStart(2, "0");
|
|
53
|
+
if (hex !== layoutBinaryHash) throw new Error("Layout WASM fingerprint differs from this runtime.");
|
|
54
|
+
phase = "compile";
|
|
55
|
+
const module = await WebAssembly.compile(binary);
|
|
56
|
+
if (preparation === attempt && !compiled) publishLayoutModule(module);
|
|
57
|
+
} catch (cause) {
|
|
58
|
+
if (compiled || preparation !== attempt) return;
|
|
59
|
+
preparation = void 0;
|
|
60
|
+
attempt.reject(new Error(`Layout WASM ${phase} failed at ${url?.href ?? "layout asset URL"}`, { cause }));
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
export {
|
|
64
|
+
hasReadyLayoutModule,
|
|
65
|
+
layoutAssetUrl,
|
|
66
|
+
prepareLayoutModule,
|
|
67
|
+
publishLayoutModule,
|
|
68
|
+
readyLayoutModule
|
|
69
|
+
};
|
|
70
|
+
//# sourceMappingURL=module.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/lib/layout/wasm/module.ts"],
|
|
4
|
+
"sourcesContent": ["import { layoutBinaryHash } from './artifact.js';\n\ndeclare const __PIBBL_LAYOUT_ASSET_URL__: string;\n\nlet compiled: WebAssembly.Module | undefined;\ninterface Preparation {\n readonly promise: Promise<void>;\n readonly resolve: () => void;\n readonly reject: (error: unknown) => void;\n readonly transport: AbortController;\n}\nlet preparation: Preparation | undefined;\n\n/** The generated asset is relative to this module in both source and packed output. */\nexport function layoutAssetUrl(): URL {\n return typeof __PIBBL_LAYOUT_ASSET_URL__ === 'string'\n ? new URL(__PIBBL_LAYOUT_ASSET_URL__, document.baseURI)\n : new URL('./layout.wasm', import.meta.url);\n}\n\n/** Shares immutable compiled code only. Instances and mutable memories belong to mounts. */\nexport function readyLayoutModule(): WebAssembly.Module {\n if (!compiled) throw new Error('Prepare the layout engine before synchronous layout: await prepareLayoutEngine(), or mount with pibblSync from @pibbl/core/sync.');\n return compiled;\n}\n\nexport function hasReadyLayoutModule(): boolean { return compiled !== undefined; }\n\nexport function publishLayoutModule(module: WebAssembly.Module): void {\n if (compiled) return;\n const exports = WebAssembly.Module.exports(module);\n if (!exports.some(entry => entry.name === 'grid_v2_auto_fit_keep' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'grid_v2_collapse_auto_fit' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'standalone_tree_measure_kind' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'grid_v2_resize_contributions' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'grid_v2_apply_contributions' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'standalone_tree_resize_grid' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'grid_v2_assigned_columns' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'grid_v2_assigned_rows' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'grid_v2_assign_cells' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'grid_v2_create' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'grid_v2_dispose' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'grid_v2_generation' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'grid_v2_place_cells' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'grid_v2_resize_cells' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'grid_v2_resize_tracks' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'grid_v2_resolve_tracks' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'standalone_tree_box_count' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'standalone_tree_box_height' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'standalone_tree_box_id' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'standalone_tree_box_width' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'standalone_tree_box_x' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'standalone_tree_box_y' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'standalone_tree_create' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'standalone_tree_dispose' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'standalone_tree_generation' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'standalone_tree_measure_count' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'standalone_tree_measure_height_max' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'standalone_tree_measure_height_min' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'standalone_tree_measure_node' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'standalone_tree_measure_width_max' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'standalone_tree_measure_width_min' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'standalone_tree_prepare' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'standalone_tree_prepare_settled_measurements' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'standalone_tree_replace' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'standalone_tree_resize_children' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'standalone_tree_resize_measurements' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'standalone_tree_resize_nodes' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'standalone_tree_solve' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'layout_abi_v21' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'last_wrap_line_count' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'first_wrap_line_count' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'prepare_intrinsic_main_queries' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'resize_intrinsic_main' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'resolve_intrinsic_main' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'intrinsic_main_result' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'intrinsic_main_contribution' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'resolve_intrinsic_main_known_owner' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'intrinsic_main_auto_free' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'place_main_auto_staged' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'place_wrap_first_baseline' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'place_last_baseline' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'place_wrap_last_baseline' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'place_first_baseline' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'resize_main_auto' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'place_main_auto' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'place_wrap_main_auto' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'memory' && entry.kind === 'memory') ||\n !exports.some(entry => entry.name === 'solve' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'dispose' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'resize_flow' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'place_flow' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'resize_grid_cells' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'place_grid_cells' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'resize_grid' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'resolve_grid_tracks' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'arena_create' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'arena_generation' && entry.kind === 'function') ||\n !exports.some(entry => entry.name === 'arena_dispose' && entry.kind === 'function')) {\n throw new Error('Layout WASM ABI is incompatible with this runtime.');\n }\n compiled = module;\n const pending = preparation;\n preparation = undefined;\n pending?.resolve();\n pending?.transport.abort();\n}\n\n/** Fetches and compiles once per attempt; failures are evicted for explicit retries. */\nexport function prepareLayoutModule(): Promise<void> {\n if (compiled) return Promise.resolve();\n if (preparation) return preparation.promise;\n let resolve!: () => void;\n let reject!: (error: unknown) => void;\n const promise = new Promise<void>((accept, fail) => { resolve = accept; reject = fail; });\n const attempt: Preparation = { promise, resolve, reject, transport: new AbortController() };\n preparation = attempt;\n void load(attempt);\n return promise;\n}\n\nasync function load(attempt: Preparation): Promise<void> {\n let url: URL | undefined;\n let phase = 'fetch';\n try {\n url = layoutAssetUrl();\n const response = await fetch(url, { signal: attempt.transport.signal });\n if (!response.ok) throw new Error(`HTTP ${response.status}`);\n const binary = await response.arrayBuffer();\n if (compiled) return;\n phase = 'integrity';\n const hash = new Uint8Array(await crypto.subtle.digest('SHA-256', binary));\n let hex = '';\n for (let i = 0; i < hash.length; i++) hex += hash[i].toString(16).padStart(2, '0');\n if (hex !== layoutBinaryHash) throw new Error('Layout WASM fingerprint differs from this runtime.');\n phase = 'compile';\n const module = await WebAssembly.compile(binary);\n if (preparation === attempt && !compiled) publishLayoutModule(module);\n } catch (cause) {\n if (compiled || preparation !== attempt) return;\n preparation = undefined;\n attempt.reject(new Error(`Layout WASM ${phase} failed at ${url?.href ?? 'layout asset URL'}`, { cause }));\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,267 @@
|
|
|
1
|
+
import type { PrimitiveMeasurementEntry } from '../measure.js';
|
|
2
|
+
import type { FlexAllocationCache } from '../flex-allocation-cache.js';
|
|
3
|
+
import { GridV2Region, type GridV2Cell } from '../grid-kernel.js';
|
|
4
|
+
import type { PibblInstance } from '../../types.js';
|
|
5
|
+
/** Native layout is the supported engine for every build. */
|
|
6
|
+
export declare const nativeLayout = true;
|
|
7
|
+
export declare function snapshotWasmLayoutDiagnostics(): {
|
|
8
|
+
activeGridArenas: number;
|
|
9
|
+
gridArenaCreates: number;
|
|
10
|
+
flowPlacements: number;
|
|
11
|
+
gridCellPlacements: number;
|
|
12
|
+
gridTrackResolutions: number;
|
|
13
|
+
lineFormations: number;
|
|
14
|
+
cachedMeasurements: number;
|
|
15
|
+
mainPlacements: number;
|
|
16
|
+
crossPlacements: number;
|
|
17
|
+
solves: number;
|
|
18
|
+
measurementSolves: number;
|
|
19
|
+
measuredLeaves: number;
|
|
20
|
+
nodeReuses: number;
|
|
21
|
+
nodeCreates: number;
|
|
22
|
+
activeNodes: number;
|
|
23
|
+
activeArenas: number;
|
|
24
|
+
activeWasmInstances: number;
|
|
25
|
+
wasmInstanceCreates: number;
|
|
26
|
+
frames: number;
|
|
27
|
+
allocationPasses: number;
|
|
28
|
+
allocationItemVisits: number;
|
|
29
|
+
allocationCacheHits: number;
|
|
30
|
+
structureInputInvalidations: number;
|
|
31
|
+
layoutInputInvalidations: number;
|
|
32
|
+
measurementInputInvalidations: number;
|
|
33
|
+
paintInputInvalidations: number;
|
|
34
|
+
transformInputInvalidations: number;
|
|
35
|
+
interactionInputInvalidations: number;
|
|
36
|
+
unknownInputInvalidations: number;
|
|
37
|
+
};
|
|
38
|
+
export declare function withMeasurementLayoutOwner<T>(owner: PibblInstance | undefined, work: () => T): T;
|
|
39
|
+
/**
|
|
40
|
+
* Solves a finite nowrap main axis in a disposable native arena. This is used only
|
|
41
|
+
* while intrinsic measurement has an exact main constraint and must finish before
|
|
42
|
+
* any descendant measurement callback runs.
|
|
43
|
+
*/
|
|
44
|
+
export type NumericFlexMainInput = Pick<NumericFlexItem, 'baseMain' | 'minMain' | 'maxMain' | 'paddingMain' | 'grow' | 'shrink' | 'marginMainBefore' | 'marginMainAfter'>;
|
|
45
|
+
type IntrinsicMainUnit = 'none' | 'point' | 'percent';
|
|
46
|
+
interface IntrinsicMainLength {
|
|
47
|
+
readonly value?: number;
|
|
48
|
+
readonly unit: IntrinsicMainUnit;
|
|
49
|
+
}
|
|
50
|
+
export interface NumericIntrinsicMainItem {
|
|
51
|
+
readonly base: number;
|
|
52
|
+
readonly min: IntrinsicMainLength;
|
|
53
|
+
readonly max: IntrinsicMainLength;
|
|
54
|
+
/** Private two-phase marker for a direct constrained provider. */
|
|
55
|
+
readonly measured?: boolean;
|
|
56
|
+
/** Native envelope copied before invoking application measurement code. */
|
|
57
|
+
readonly queryMaximum?: number;
|
|
58
|
+
}
|
|
59
|
+
export interface NumericIntrinsicMainQuery {
|
|
60
|
+
readonly externalOwner?: number;
|
|
61
|
+
readonly initialAvailable?: number;
|
|
62
|
+
readonly rootMin?: number;
|
|
63
|
+
readonly rootMax?: number;
|
|
64
|
+
readonly mode: 'exact' | 'fit-content' | 'max-content';
|
|
65
|
+
readonly gap: number;
|
|
66
|
+
}
|
|
67
|
+
export interface NumericIntrinsicMainResult {
|
|
68
|
+
readonly main: number;
|
|
69
|
+
/** Native root-bound line contribution for a same-axis parent continuation. */
|
|
70
|
+
readonly contributionMain: number;
|
|
71
|
+
readonly autoMarginFreeMain: number;
|
|
72
|
+
readonly targets: readonly number[];
|
|
73
|
+
readonly effectiveMins: readonly number[];
|
|
74
|
+
readonly effectiveMaxes: readonly number[];
|
|
75
|
+
}
|
|
76
|
+
export interface NumericIntrinsicMainQueries {
|
|
77
|
+
readonly maximums: readonly number[];
|
|
78
|
+
}
|
|
79
|
+
/** Copies finite native envelopes before evaluating paired measurement callbacks. */
|
|
80
|
+
export declare function prepareTransientIntrinsicMainQueries(items: readonly NumericIntrinsicMainItem[], query: NumericIntrinsicMainQuery): NumericIntrinsicMainQueries;
|
|
81
|
+
/**
|
|
82
|
+
* Runs the native staged intrinsic-main query in a disposable arena.
|
|
83
|
+
* The returned effective bounds are a private handoff to the matching normal
|
|
84
|
+
* Flex placement; authored percentage styles are never rewritten.
|
|
85
|
+
*/
|
|
86
|
+
export declare function resolveTransientIntrinsicMain(items: readonly NumericIntrinsicMainItem[], query: NumericIntrinsicMainQuery): NumericIntrinsicMainResult;
|
|
87
|
+
/** Native normal-placement phase for a direct, unmeasured known owner. */
|
|
88
|
+
export declare function resolveTransientKnownOwnerMain(items: readonly NumericIntrinsicMainItem[], query: NumericIntrinsicMainQuery): NumericIntrinsicMainResult;
|
|
89
|
+
export declare function solveTransientFlexMain(items: readonly NumericFlexMainInput[], main: number, gap: number): number[];
|
|
90
|
+
export interface NumericFlexItem {
|
|
91
|
+
baseMain: number;
|
|
92
|
+
minMain: number;
|
|
93
|
+
maxMain: number;
|
|
94
|
+
paddingMain: number;
|
|
95
|
+
marginMainBefore?: number;
|
|
96
|
+
marginMainAfter?: number;
|
|
97
|
+
autoMainBefore?: boolean;
|
|
98
|
+
autoMainAfter?: boolean;
|
|
99
|
+
grow: number;
|
|
100
|
+
shrink: number;
|
|
101
|
+
targetMain: number;
|
|
102
|
+
receiverToken: object;
|
|
103
|
+
layoutToken?: object;
|
|
104
|
+
}
|
|
105
|
+
export interface NumericFlexCrossItem {
|
|
106
|
+
preferredCross: number;
|
|
107
|
+
paddingCross: number;
|
|
108
|
+
minCross: number;
|
|
109
|
+
maxCross: number;
|
|
110
|
+
marginCrossBefore?: number;
|
|
111
|
+
marginCrossAfter?: number;
|
|
112
|
+
autoCrossBefore?: boolean;
|
|
113
|
+
autoCrossAfter?: boolean;
|
|
114
|
+
crossAuto: boolean;
|
|
115
|
+
alignSelf: 'auto' | 'stretch' | 'flex-start' | 'flex-end' | 'center';
|
|
116
|
+
/** Signed content-box first baseline; accepted only by dedicated baseline placement. */
|
|
117
|
+
firstBaseline?: number;
|
|
118
|
+
}
|
|
119
|
+
type CrossAlignment = Exclude<NumericFlexCrossItem['alignSelf'], 'auto'>;
|
|
120
|
+
export interface NumericFlowItem {
|
|
121
|
+
width: number;
|
|
122
|
+
height: number;
|
|
123
|
+
alignment: 'start' | 'center' | 'end' | 'stretch';
|
|
124
|
+
}
|
|
125
|
+
interface FlowOptions {
|
|
126
|
+
horizontal: boolean;
|
|
127
|
+
mainBound: number;
|
|
128
|
+
gap: number;
|
|
129
|
+
lineGap: number;
|
|
130
|
+
wrap: boolean;
|
|
131
|
+
}
|
|
132
|
+
export interface NumericGridCell {
|
|
133
|
+
columnStart: number;
|
|
134
|
+
columnSpan: number;
|
|
135
|
+
rowStart: number;
|
|
136
|
+
rowSpan: number;
|
|
137
|
+
}
|
|
138
|
+
export type NumericGridTrack = Readonly<{
|
|
139
|
+
kind: 'fixed';
|
|
140
|
+
value: number;
|
|
141
|
+
}> | Readonly<{
|
|
142
|
+
kind: 'percentage' | 'fraction';
|
|
143
|
+
factor: number;
|
|
144
|
+
}>;
|
|
145
|
+
export declare class LayoutRegion {
|
|
146
|
+
private readonly mountOwner?;
|
|
147
|
+
private gridV2;
|
|
148
|
+
private flowCache;
|
|
149
|
+
placeFlow(items: readonly NumericFlowItem[], options: FlowOptions): readonly {
|
|
150
|
+
x: number;
|
|
151
|
+
y: number;
|
|
152
|
+
width: number;
|
|
153
|
+
height: number;
|
|
154
|
+
}[];
|
|
155
|
+
private gridRevision;
|
|
156
|
+
private gridCells;
|
|
157
|
+
private gridColumns;
|
|
158
|
+
private gridRows;
|
|
159
|
+
private gridV2Columns;
|
|
160
|
+
private gridV2Rows;
|
|
161
|
+
private gridV2ColumnContributions;
|
|
162
|
+
private gridV2RowContributions;
|
|
163
|
+
private gridV2Cells;
|
|
164
|
+
resolveGridTracks(tracks: readonly NumericGridTrack[], options: {
|
|
165
|
+
bound: number;
|
|
166
|
+
gap: number;
|
|
167
|
+
axis: 'columns' | 'rows';
|
|
168
|
+
}): number[];
|
|
169
|
+
placeGridCells(cells: readonly NumericGridCell[]): readonly {
|
|
170
|
+
x: number;
|
|
171
|
+
y: number;
|
|
172
|
+
width: number;
|
|
173
|
+
height: number;
|
|
174
|
+
}[];
|
|
175
|
+
/** V2 Grid records remain region-owned so paint-only work reuses native geometry. */
|
|
176
|
+
resolveGridV2Tracks(records: readonly number[], options: {
|
|
177
|
+
bound: number;
|
|
178
|
+
gap: number;
|
|
179
|
+
axis: 0 | 1;
|
|
180
|
+
}): readonly number[];
|
|
181
|
+
/** Fresh native track values after Grid contributions; the prior JS snapshot is stale. */
|
|
182
|
+
snapshotGridV2Tracks(axis: 0 | 1): readonly number[];
|
|
183
|
+
applyGridV2Contributions(records: readonly number[], gap: number, axis: 0 | 1): void;
|
|
184
|
+
placeGridV2Cells(cells: readonly GridV2Cell[], flow: 0 | 1 | 2 | 3, columnGap: number, rowGap: number): readonly {
|
|
185
|
+
x: number;
|
|
186
|
+
y: number;
|
|
187
|
+
width: number;
|
|
188
|
+
height: number;
|
|
189
|
+
}[];
|
|
190
|
+
private cachedAllocation;
|
|
191
|
+
private layoutOwner;
|
|
192
|
+
private handle;
|
|
193
|
+
private generation;
|
|
194
|
+
constructor(mountOwner?: PibblInstance | undefined);
|
|
195
|
+
get allocationCache(): FlexAllocationCache | undefined;
|
|
196
|
+
set allocationCache(value: FlexAllocationCache | undefined);
|
|
197
|
+
private ensureOwner;
|
|
198
|
+
/** Region-owned Grid arena; it shares this root's WebAssembly instance. */
|
|
199
|
+
gridV2Region(): GridV2Region;
|
|
200
|
+
private fail;
|
|
201
|
+
private records;
|
|
202
|
+
private identities;
|
|
203
|
+
identity(type: object, key: string): object;
|
|
204
|
+
/** Stable measurement identity without adding an absolute leaf to the native line. */
|
|
205
|
+
absoluteMeasurementIdentity(type: object, key: string): object;
|
|
206
|
+
private results;
|
|
207
|
+
private main;
|
|
208
|
+
private wrap;
|
|
209
|
+
private crossModeKey;
|
|
210
|
+
private gap;
|
|
211
|
+
private order;
|
|
212
|
+
private mainPlacementKey;
|
|
213
|
+
private mainOffsets;
|
|
214
|
+
private allocationRevision;
|
|
215
|
+
private crossSize;
|
|
216
|
+
private crossRecords;
|
|
217
|
+
private crossResults;
|
|
218
|
+
private hasAbsoluteMeasurements;
|
|
219
|
+
private readonly intrinsicMeasurements;
|
|
220
|
+
readPrimitiveMeasurement(token: object, key: string): PrimitiveMeasurementEntry | undefined;
|
|
221
|
+
writePrimitiveMeasurement(token: object, entry: PrimitiveMeasurementEntry): void;
|
|
222
|
+
/** Reuses the region-owned cache without lending native line membership to absolute leaves. */
|
|
223
|
+
pruneAbsoluteMeasurements(live: ReadonlySet<object> | undefined): void;
|
|
224
|
+
private readonly measurements;
|
|
225
|
+
private textMaximums;
|
|
226
|
+
readTextMaximum(token: object, content: string, font: string): number | undefined;
|
|
227
|
+
writeTextMaximum(token: object, content: string, font: string, width: number): void;
|
|
228
|
+
readMeasurement(token: object, key: string): {
|
|
229
|
+
width: number;
|
|
230
|
+
height: number;
|
|
231
|
+
} | undefined;
|
|
232
|
+
writeMeasurement(token: object, key: string, size: {
|
|
233
|
+
width: number;
|
|
234
|
+
height: number;
|
|
235
|
+
}): void;
|
|
236
|
+
private releaseMeasurements;
|
|
237
|
+
solve(items: NumericFlexItem[], main: number, gap: number, wrap?: boolean): void;
|
|
238
|
+
private solveRegion;
|
|
239
|
+
/** Current native source-line membership, never inferred from placements. */
|
|
240
|
+
firstWrapLineCount(): number;
|
|
241
|
+
/** Current native source-line membership, never inferred from placements. */
|
|
242
|
+
lastWrapLineCount(): number;
|
|
243
|
+
private mainAutoFlags;
|
|
244
|
+
private mainAutoRevision;
|
|
245
|
+
placeMain(main: number, gap: number, alignment: 'flex-start' | 'flex-end' | 'center' | 'space-between' | 'space-around' | 'space-evenly', reverse?: boolean, autoMargins?: readonly NumericFlexItem[], autoMarginFreeMain?: number): readonly number[];
|
|
246
|
+
placeCross(items: readonly NumericFlexCrossItem[], size: number, alignment: CrossAlignment, options?: {
|
|
247
|
+
reverse?: boolean;
|
|
248
|
+
wrap?: {
|
|
249
|
+
gap: number;
|
|
250
|
+
alignContent: string;
|
|
251
|
+
};
|
|
252
|
+
baseline?: boolean;
|
|
253
|
+
lastBaseline?: boolean;
|
|
254
|
+
}): readonly {
|
|
255
|
+
outerCross: number;
|
|
256
|
+
offset: number;
|
|
257
|
+
}[];
|
|
258
|
+
dispose(): void;
|
|
259
|
+
}
|
|
260
|
+
export declare function mountedLayoutRegion(): LayoutRegion | undefined;
|
|
261
|
+
/** Adopts a preflighted region without creating a second mutable owner. */
|
|
262
|
+
export declare function adoptMountedLayoutRegion(region: LayoutRegion, release: () => void): void;
|
|
263
|
+
export declare function recordWasmMeasurement(): void;
|
|
264
|
+
export declare function recordWasmAllocationPass(): void;
|
|
265
|
+
export declare function recordWasmAllocationItem(): void;
|
|
266
|
+
export declare function recordWasmAllocationCacheHit(): void;
|
|
267
|
+
export {};
|