@pibbl/core 0.0.1 → 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/README.md +1 -1
- package/THIRD_PARTY_NOTICES.txt +81 -0
- package/dist/features/machines/animation.d.ts +64 -0
- package/dist/features/machines/animation.js +55 -0
- package/dist/features/machines/animation.js.map +7 -0
- package/dist/features/machines/animation.mjs +1 -0
- package/dist/features/machines/assign.d.ts +16 -0
- package/dist/features/machines/assign.js +15 -0
- package/dist/features/machines/assign.js.map +7 -0
- package/dist/features/machines/callback.d.ts +9 -0
- package/dist/features/machines/callback.js +7 -0
- package/dist/features/machines/callback.js.map +7 -0
- package/dist/features/machines/hook.d.ts +30 -0
- package/dist/features/machines/hook.js +37 -0
- package/dist/features/machines/hook.js.map +7 -0
- package/dist/features/machines/index.d.ts +6 -0
- package/dist/features/machines/index.js +12 -0
- package/dist/features/machines/index.js.map +7 -0
- package/dist/features/machines/index.mjs +1 -0
- package/dist/features/machines/runtime.d.ts +18 -0
- package/dist/features/machines/runtime.js +363 -0
- package/dist/features/machines/runtime.js.map +7 -0
- package/dist/features/machines/types.d.ts +164 -0
- package/dist/features/physics/2d-geometry.d.ts +3 -3
- package/dist/features/physics/2d-geometry.js.map +1 -1
- 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/2d.d.ts +115 -62
- package/dist/features/physics/2d.js +59 -28
- package/dist/features/physics/2d.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/query-types.d.ts +6 -0
- package/dist/features/physics/lib/2d/runtime/controller.d.ts +7 -6
- 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/types.d.ts +8 -30
- package/dist/features/physics/lib/2d/world/queries.d.ts +7 -6
- package/dist/features/physics/lib/2d/world/queries.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/formats/aseprite.d.ts +5 -0
- package/dist/features/sprites/formats/texture-packer.d.ts +5 -0
- package/dist/features/sprites/index.d.ts +6 -0
- package/dist/features/sprites/loader.d.ts +25 -0
- package/dist/features/sprites/loader.js +6 -3
- package/dist/features/sprites/loader.js.map +2 -2
- package/dist/features/sprites/model.d.ts +75 -0
- package/dist/features/sprites/sprite.d.ts +22 -0
- 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 +92 -5
- package/dist/features/viz/index.js +202 -4
- 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-labels.d.ts +2 -0
- package/dist/features/viz/lib/axis-labels.js +41 -0
- package/dist/features/viz/lib/axis-labels.js.map +7 -0
- package/dist/features/viz/lib/axis-title.d.ts +23 -0
- package/dist/features/viz/lib/axis-title.js +24 -0
- package/dist/features/viz/lib/axis-title.js.map +7 -0
- package/dist/features/viz/lib/axis.d.ts +1 -1
- package/dist/features/viz/lib/axis.js +50 -50
- package/dist/features/viz/lib/axis.js.map +2 -2
- package/dist/features/viz/lib/bar-scale.d.ts +7 -0
- package/dist/features/viz/lib/bar-scale.js +34 -0
- package/dist/features/viz/lib/bar-scale.js.map +7 -0
- package/dist/features/viz/lib/bar-series.d.ts +3 -1
- package/dist/features/viz/lib/bar-series.js +21 -5
- 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/chart-lines.d.ts +41 -0
- package/dist/features/viz/lib/chart-lines.js +32 -0
- package/dist/features/viz/lib/chart-lines.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 +6 -3
- package/dist/features/viz/lib/hover-data.js.map +2 -2
- package/dist/features/viz/lib/hover-types.d.ts +5 -5
- 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-component.d.ts +7 -0
- package/dist/features/viz/lib/linear-scale-component.js +18 -0
- package/dist/features/viz/lib/linear-scale-component.js.map +7 -0
- 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/log-scale-component.d.ts +7 -0
- package/dist/features/viz/lib/log-scale-component.js +19 -0
- package/dist/features/viz/lib/log-scale-component.js.map +7 -0
- package/dist/features/viz/lib/log-scale.d.ts +2 -0
- package/dist/features/viz/lib/log-scale.js +53 -0
- package/dist/features/viz/lib/log-scale.js.map +7 -0
- 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/nearest.d.ts +9 -9
- package/dist/features/viz/lib/nearest.js.map +1 -1
- 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/numeric-ticks.d.ts +38 -0
- package/dist/features/viz/lib/numeric-ticks.js +54 -0
- package/dist/features/viz/lib/numeric-ticks.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-scale-component.d.ts +7 -0
- package/dist/features/viz/lib/point-scale-component.js +19 -0
- package/dist/features/viz/lib/point-scale-component.js.map +7 -0
- package/dist/features/viz/lib/point-scale.d.ts +2 -0
- package/dist/features/viz/lib/point-scale.js +45 -0
- package/dist/features/viz/lib/point-scale.js.map +7 -0
- 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.d.ts +16 -0
- package/dist/features/viz/lib/reference-band.js +30 -0
- package/dist/features/viz/lib/reference-band.js.map +7 -0
- package/dist/features/viz/lib/scale-adjust.js +9 -4
- package/dist/features/viz/lib/scale-adjust.js.map +2 -2
- package/dist/features/viz/lib/scale-context.d.ts +5 -4
- package/dist/features/viz/lib/scale-context.js +15 -11
- package/dist/features/viz/lib/scale-context.js.map +2 -2
- package/dist/features/viz/lib/scale-provider.d.ts +2 -0
- package/dist/features/viz/lib/scale-provider.js +13 -0
- package/dist/features/viz/lib/scale-provider.js.map +7 -0
- package/dist/features/viz/lib/scale-ticks.d.ts +5 -0
- package/dist/features/viz/lib/scale-ticks.js +64 -0
- package/dist/features/viz/lib/scale-ticks.js.map +7 -0
- package/dist/features/viz/lib/scale-view.d.ts +4 -0
- package/dist/features/viz/lib/scale-view.js +21 -0
- package/dist/features/viz/lib/scale-view.js.map +7 -0
- 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/symlog-scale-component.d.ts +7 -0
- package/dist/features/viz/lib/symlog-scale-component.js +19 -0
- package/dist/features/viz/lib/symlog-scale-component.js.map +7 -0
- package/dist/features/viz/lib/symlog-scale.d.ts +2 -0
- package/dist/features/viz/lib/symlog-scale.js +38 -0
- package/dist/features/viz/lib/symlog-scale.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 +114 -21
- package/dist/features/viz/lib/use-bar-scale.d.ts +8 -0
- package/dist/features/viz/lib/use-bar-scale.js +9 -0
- package/dist/features/viz/lib/use-bar-scale.js.map +7 -0
- package/dist/features/viz/lib/use-continuous-scale.d.ts +8 -0
- package/dist/features/viz/lib/use-continuous-scale.js +14 -0
- package/dist/features/viz/lib/use-continuous-scale.js.map +7 -0
- package/dist/features/viz/lib/use-linear-scale.d.ts +8 -0
- package/dist/features/viz/lib/use-linear-scale.js +9 -0
- package/dist/features/viz/lib/use-linear-scale.js.map +7 -0
- package/dist/features/viz/lib/use-log-scale.d.ts +8 -0
- package/dist/features/viz/lib/use-log-scale.js +9 -0
- package/dist/features/viz/lib/use-log-scale.js.map +7 -0
- package/dist/features/viz/lib/use-point-scale.d.ts +8 -0
- package/dist/features/viz/lib/use-point-scale.js +9 -0
- package/dist/features/viz/lib/use-point-scale.js.map +7 -0
- package/dist/features/viz/lib/use-symlog-scale.d.ts +8 -0
- package/dist/features/viz/lib/use-symlog-scale.js +9 -0
- package/dist/features/viz/lib/use-symlog-scale.js.map +7 -0
- package/dist/features/viz/lib/use-utc-scale.d.ts +8 -0
- package/dist/features/viz/lib/use-utc-scale.js +9 -0
- package/dist/features/viz/lib/use-utc-scale.js.map +7 -0
- package/dist/features/viz/lib/utc-labels.d.ts +12 -0
- package/dist/features/viz/lib/utc-labels.js +27 -0
- package/dist/features/viz/lib/utc-labels.js.map +7 -0
- package/dist/features/viz/lib/utc-scale-component.d.ts +7 -0
- package/dist/features/viz/lib/utc-scale-component.js +18 -0
- package/dist/features/viz/lib/utc-scale-component.js.map +7 -0
- package/dist/features/viz/lib/utc-scale.d.ts +21 -0
- package/dist/features/viz/lib/utc-scale.js +124 -0
- package/dist/features/viz/lib/utc-scale.js.map +7 -0
- 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 +10 -6
- 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/animation/definition.d.ts +5 -3
- package/dist/lib/animation/definition.js +29 -4
- package/dist/lib/animation/definition.js.map +2 -2
- package/dist/lib/animation/playback.d.ts +8 -0
- package/dist/lib/animation/playback.js +33 -11
- package/dist/lib/animation/playback.js.map +2 -2
- package/dist/lib/animation/spring.d.ts +3 -1
- package/dist/lib/animation/spring.js.map +2 -2
- package/dist/lib/animation/types.d.ts +29 -73
- 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/hooks/use-animated-value.d.ts +11 -21
- package/dist/lib/hooks/use-animated-value.js +23 -70
- package/dist/lib/hooks/use-animated-value.js.map +3 -3
- package/dist/lib/hooks/use-playback.js +1 -0
- package/dist/lib/hooks/use-playback.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 +43 -6
- package/dist/features/viz/lib/scale.d.ts +0 -11
- package/dist/features/viz/lib/scale.js +0 -80
- package/dist/features/viz/lib/scale.js.map +0 -7
- package/dist/features/viz/lib/use-scale.d.ts +0 -20
- package/dist/features/viz/lib/use-scale.js +0 -10
- package/dist/features/viz/lib/use-scale.js.map +0 -7
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# @pibbl/core
|
|
2
2
|
|
|
3
|
-
> **ALPHA — NOT FOR PRODUCTION USE.** Pibbl 0.0.
|
|
3
|
+
> **ALPHA — NOT FOR PRODUCTION USE.** Pibbl 0.0.2 is experimental. APIs may change or be removed without notice. Use it only for evaluation and experimentation.
|
|
4
4
|
|
|
5
5
|
The ESM Canvas 2D component runtime for Pibbl, with an automatic JSX runtime and
|
|
6
6
|
an equivalent `createElement` API. It has no React dependency. Drawing stays on
|
package/THIRD_PARTY_NOTICES.txt
CHANGED
|
@@ -203,3 +203,84 @@ License: Apache-2.0
|
|
|
203
203
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
204
204
|
See the License for the specific language governing permissions and
|
|
205
205
|
limitations under the License.
|
|
206
|
+
|
|
207
|
+
|
|
208
|
+
Recording/GIF WASM dependency: gif-0.14.1
|
|
209
|
+
Source: https://github.com/image-rs/image-gif
|
|
210
|
+
License: MIT
|
|
211
|
+
|
|
212
|
+
The MIT License (MIT)
|
|
213
|
+
|
|
214
|
+
Copyright (c) 2015 nwin
|
|
215
|
+
|
|
216
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
217
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
218
|
+
in the Software without restriction, including without limitation the rights
|
|
219
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
220
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
221
|
+
furnished to do so, subject to the following conditions:
|
|
222
|
+
|
|
223
|
+
The above copyright notice and this permission notice shall be included in all
|
|
224
|
+
copies or substantial portions of the Software.
|
|
225
|
+
|
|
226
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
227
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
228
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
229
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
230
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
231
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
232
|
+
SOFTWARE.
|
|
233
|
+
|
|
234
|
+
|
|
235
|
+
Recording/GIF WASM dependency: color_quant-1.1.0
|
|
236
|
+
Source: https://github.com/image-rs/color_quant
|
|
237
|
+
License: MIT
|
|
238
|
+
|
|
239
|
+
The MIT License (MIT)
|
|
240
|
+
|
|
241
|
+
Copyright (c) 2016 PistonDevelopers
|
|
242
|
+
|
|
243
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
244
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
245
|
+
in the Software without restriction, including without limitation the rights
|
|
246
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
247
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
248
|
+
furnished to do so, subject to the following conditions:
|
|
249
|
+
|
|
250
|
+
The above copyright notice and this permission notice shall be included in all
|
|
251
|
+
copies or substantial portions of the Software.
|
|
252
|
+
|
|
253
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
254
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
255
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
256
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
257
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
258
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
259
|
+
SOFTWARE.
|
|
260
|
+
|
|
261
|
+
|
|
262
|
+
Recording/GIF WASM dependency: weezl-0.1.12
|
|
263
|
+
Source: https://github.com/image-rs/weezl
|
|
264
|
+
License: MIT
|
|
265
|
+
|
|
266
|
+
The MIT License (MIT)
|
|
267
|
+
|
|
268
|
+
Copyright (c) HeroicKatora 2020
|
|
269
|
+
|
|
270
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
271
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
272
|
+
in the Software without restriction, including without limitation the rights
|
|
273
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
274
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
275
|
+
furnished to do so, subject to the following conditions:
|
|
276
|
+
|
|
277
|
+
The above copyright notice and this permission notice shall be included in all
|
|
278
|
+
copies or substantial portions of the Software.
|
|
279
|
+
|
|
280
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
281
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
282
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
283
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
284
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
285
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
286
|
+
SOFTWARE.
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import type { PibblAnimationProgram, PibblPlaybackOptions } from '../../lib/animation/types.js';
|
|
2
|
+
import type { MachineTask, MachineTaskContext, MachineEvent } from './types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Playback options owned by a machine animation task.
|
|
5
|
+
*
|
|
6
|
+
* Lifecycle callbacks are deliberately omitted: task completion and failure
|
|
7
|
+
* become the invocation's `onDone` and `onError` transitions instead.
|
|
8
|
+
*
|
|
9
|
+
* @see {@link playAnimation}
|
|
10
|
+
*/
|
|
11
|
+
export interface MachineAnimationOptions {
|
|
12
|
+
/**
|
|
13
|
+
* Selects the existing writer-conflict policy for this state-owned playback.
|
|
14
|
+
* Defaults to the animation runtime's explicit-error policy.
|
|
15
|
+
*/
|
|
16
|
+
readonly conflict?: PibblPlaybackOptions['conflict'];
|
|
17
|
+
/** Optional label included in animation scheduler diagnostics. */
|
|
18
|
+
readonly debugName?: string;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Builds the animation program for one state entry.
|
|
22
|
+
*
|
|
23
|
+
* The callback runs once when the invocation starts. It receives the entry's
|
|
24
|
+
* immutable context and event, the machine input, the cancellation signal, and
|
|
25
|
+
* `send` for application-defined machine events.
|
|
26
|
+
*
|
|
27
|
+
* @typeParam Context - Context captured when this state entry began.
|
|
28
|
+
* @typeParam Event - Event type accepted by the owning machine.
|
|
29
|
+
* @typeParam Input - Input captured by the owning machine actor.
|
|
30
|
+
* @param context - Immutable state-entry values used to create this program.
|
|
31
|
+
* @returns The program that the machine invocation owns until it finishes or is cancelled.
|
|
32
|
+
* @see {@link MachineTaskContext}
|
|
33
|
+
*/
|
|
34
|
+
export type MachineAnimationProgramFactory<Context, Event extends MachineEvent, Input> = (context: MachineTaskContext<Context, Event, Input>) => PibblAnimationProgram;
|
|
35
|
+
/**
|
|
36
|
+
* Adapts a Pibbl animation program into state-owned cancelable machine work.
|
|
37
|
+
*
|
|
38
|
+
* A finite program resolves the state invocation after the animation scheduler
|
|
39
|
+
* delivers its `finish` event, allowing the invocation's `onDone` transition to
|
|
40
|
+
* run. Repeating programs remain active until their state exits or the actor
|
|
41
|
+
* stops. Cancellation disposes only this adapter's playback and never sends a
|
|
42
|
+
* completion or error transition.
|
|
43
|
+
*
|
|
44
|
+
* @typeParam Context - Context captured when this state entry began.
|
|
45
|
+
* @typeParam Event - Event type accepted by the owning machine.
|
|
46
|
+
* @typeParam Input - Input captured by the owning machine actor.
|
|
47
|
+
* @param program - Factory that creates the program for this state entry.
|
|
48
|
+
* @param options - Playback conflict policy and diagnostic label.
|
|
49
|
+
* @returns A task suitable for a state's `invoke.task` field.
|
|
50
|
+
*
|
|
51
|
+
* @example
|
|
52
|
+
* ```ts
|
|
53
|
+
* running: {
|
|
54
|
+
* invoke: {
|
|
55
|
+
* task: playAnimation(({ input }) =>
|
|
56
|
+
* repeat(drive(input.frame, input.animations.run), { iterations: Infinity }),
|
|
57
|
+
* ),
|
|
58
|
+
* },
|
|
59
|
+
* }
|
|
60
|
+
* ```
|
|
61
|
+
*
|
|
62
|
+
* @see {@link MachineAnimationOptions}
|
|
63
|
+
*/
|
|
64
|
+
export declare function playAnimation<Context, Event extends MachineEvent, Input>(program: MachineAnimationProgramFactory<Context, Event, Input>, options?: MachineAnimationOptions): MachineTask<Context, Event, Input, void>;
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import {
|
|
2
|
+
createAnimationPlaybackController
|
|
3
|
+
} from "../../lib/animation/playback.js";
|
|
4
|
+
function playAnimation(program, options = {}) {
|
|
5
|
+
return (taskContext) => {
|
|
6
|
+
if (taskContext.signal.aborted) return;
|
|
7
|
+
const animation = program(taskContext);
|
|
8
|
+
return new Promise((resolve, reject) => {
|
|
9
|
+
let settled = false;
|
|
10
|
+
let controller;
|
|
11
|
+
controller = createAnimationPlaybackController(animation, {
|
|
12
|
+
conflict: options.conflict,
|
|
13
|
+
debugName: options.debugName,
|
|
14
|
+
onEvent(event) {
|
|
15
|
+
if (event.type !== "finish" || settled) return;
|
|
16
|
+
settled = true;
|
|
17
|
+
detachAbort();
|
|
18
|
+
controller.dispose();
|
|
19
|
+
resolve();
|
|
20
|
+
},
|
|
21
|
+
onError(error) {
|
|
22
|
+
if (settled) return;
|
|
23
|
+
settled = true;
|
|
24
|
+
detachAbort();
|
|
25
|
+
controller.dispose();
|
|
26
|
+
reject(error);
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
const abort = () => {
|
|
30
|
+
if (settled) return;
|
|
31
|
+
settled = true;
|
|
32
|
+
detachAbort();
|
|
33
|
+
controller.dispose();
|
|
34
|
+
};
|
|
35
|
+
const detachAbort = () => {
|
|
36
|
+
taskContext.signal.removeEventListener("abort", abort);
|
|
37
|
+
};
|
|
38
|
+
taskContext.signal.addEventListener("abort", abort, { once: true });
|
|
39
|
+
if (taskContext.signal.aborted) {
|
|
40
|
+
abort();
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
try {
|
|
44
|
+
controller.handle.play();
|
|
45
|
+
} catch (error) {
|
|
46
|
+
abort();
|
|
47
|
+
reject(error);
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
export {
|
|
53
|
+
playAnimation
|
|
54
|
+
};
|
|
55
|
+
//# sourceMappingURL=animation.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/features/machines/animation.ts"],
|
|
4
|
+
"sourcesContent": ["import {\n createAnimationPlaybackController,\n type AnimationPlaybackController,\n} from '../../lib/animation/playback.js';\nimport type {\n PibblAnimationProgram,\n PibblPlaybackOptions,\n} from '../../lib/animation/types.js';\nimport type {\n MachineTask,\n MachineTaskContext,\n MachineEvent,\n} from './types.js';\n\n/**\n * Playback options owned by a machine animation task.\n *\n * Lifecycle callbacks are deliberately omitted: task completion and failure\n * become the invocation's `onDone` and `onError` transitions instead.\n *\n * @see {@link playAnimation}\n */\nexport interface MachineAnimationOptions {\n /**\n * Selects the existing writer-conflict policy for this state-owned playback.\n * Defaults to the animation runtime's explicit-error policy.\n */\n readonly conflict?: PibblPlaybackOptions['conflict'];\n /** Optional label included in animation scheduler diagnostics. */\n readonly debugName?: string;\n}\n\n/**\n * Builds the animation program for one state entry.\n *\n * The callback runs once when the invocation starts. It receives the entry's\n * immutable context and event, the machine input, the cancellation signal, and\n * `send` for application-defined machine events.\n *\n * @typeParam Context - Context captured when this state entry began.\n * @typeParam Event - Event type accepted by the owning machine.\n * @typeParam Input - Input captured by the owning machine actor.\n * @param context - Immutable state-entry values used to create this program.\n * @returns The program that the machine invocation owns until it finishes or is cancelled.\n * @see {@link MachineTaskContext}\n */\nexport type MachineAnimationProgramFactory<Context, Event extends MachineEvent, Input> = (\n context: MachineTaskContext<Context, Event, Input>,\n) => PibblAnimationProgram;\n\n/**\n * Adapts a Pibbl animation program into state-owned cancelable machine work.\n *\n * A finite program resolves the state invocation after the animation scheduler\n * delivers its `finish` event, allowing the invocation's `onDone` transition to\n * run. Repeating programs remain active until their state exits or the actor\n * stops. Cancellation disposes only this adapter's playback and never sends a\n * completion or error transition.\n *\n * @typeParam Context - Context captured when this state entry began.\n * @typeParam Event - Event type accepted by the owning machine.\n * @typeParam Input - Input captured by the owning machine actor.\n * @param program - Factory that creates the program for this state entry.\n * @param options - Playback conflict policy and diagnostic label.\n * @returns A task suitable for a state's `invoke.task` field.\n *\n * @example\n * ```ts\n * running: {\n * invoke: {\n * task: playAnimation(({ input }) =>\n * repeat(drive(input.frame, input.animations.run), { iterations: Infinity }),\n * ),\n * },\n * }\n * ```\n *\n * @see {@link MachineAnimationOptions}\n */\nexport function playAnimation<Context, Event extends MachineEvent, Input>(\n program: MachineAnimationProgramFactory<Context, Event, Input>,\n options: MachineAnimationOptions = {},\n): MachineTask<Context, Event, Input, void> {\n return taskContext => {\n if (taskContext.signal.aborted) return;\n\n const animation = program(taskContext);\n return new Promise<void>((resolve, reject) => {\n let settled = false;\n let controller!: AnimationPlaybackController;\n controller = createAnimationPlaybackController(animation, {\n conflict: options.conflict,\n debugName: options.debugName,\n onEvent(event): void {\n if (event.type !== 'finish' || settled) return;\n settled = true;\n detachAbort();\n controller.dispose();\n resolve();\n },\n onError(error): void {\n if (settled) return;\n settled = true;\n detachAbort();\n controller.dispose();\n reject(error);\n },\n });\n\n const abort = (): void => {\n if (settled) return;\n settled = true;\n detachAbort();\n controller.dispose();\n };\n const detachAbort = (): void => {\n taskContext.signal.removeEventListener('abort', abort);\n };\n\n taskContext.signal.addEventListener('abort', abort, { once: true });\n if (taskContext.signal.aborted) {\n abort();\n return;\n }\n try {\n controller.handle.play();\n } catch (error) {\n abort();\n reject(error);\n }\n });\n };\n}\n"],
|
|
5
|
+
"mappings": "AAAA;AAAA,EACE;AAAA,OAEK;AA4EA,SAAS,cACd,SACA,UAAmC,CAAC,GACM;AAC1C,SAAO,iBAAe;AACpB,QAAI,YAAY,OAAO,QAAS;AAEhC,UAAM,YAAY,QAAQ,WAAW;AACrC,WAAO,IAAI,QAAc,CAAC,SAAS,WAAW;AAC5C,UAAI,UAAU;AACd,UAAI;AACJ,mBAAa,kCAAkC,WAAW;AAAA,QACxD,UAAU,QAAQ;AAAA,QAClB,WAAW,QAAQ;AAAA,QACnB,QAAQ,OAAa;AACnB,cAAI,MAAM,SAAS,YAAY,QAAS;AACxC,oBAAU;AACV,sBAAY;AACZ,qBAAW,QAAQ;AACnB,kBAAQ;AAAA,QACV;AAAA,QACA,QAAQ,OAAa;AACnB,cAAI,QAAS;AACb,oBAAU;AACV,sBAAY;AACZ,qBAAW,QAAQ;AACnB,iBAAO,KAAK;AAAA,QACd;AAAA,MACF,CAAC;AAED,YAAM,QAAQ,MAAY;AACxB,YAAI,QAAS;AACb,kBAAU;AACV,oBAAY;AACZ,mBAAW,QAAQ;AAAA,MACrB;AACA,YAAM,cAAc,MAAY;AAC9B,oBAAY,OAAO,oBAAoB,SAAS,KAAK;AAAA,MACvD;AAEA,kBAAY,OAAO,iBAAiB,SAAS,OAAO,EAAE,MAAM,KAAK,CAAC;AAClE,UAAI,YAAY,OAAO,SAAS;AAC9B,cAAM;AACN;AAAA,MACF;AACA,UAAI;AACF,mBAAW,OAAO,KAAK;AAAA,MACzB,SAAS,OAAO;AACd,cAAM;AACN,eAAO,KAAK;AAAA,MACd;AAAA,IACF,CAAC;AAAA,EACH;AACF;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './animation.js';
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { MachineAction, MachineActionContext, MachineEvent } from './types.js';
|
|
2
|
+
/** @internal Returns the context patch represented by an assign action. */
|
|
3
|
+
export declare function assignmentOf(action: Function): ((context: MachineActionContext<object, MachineEvent, unknown>) => object) | undefined;
|
|
4
|
+
/**
|
|
5
|
+
* Creates an action that shallowly merges a context patch. Earlier assignments in the same
|
|
6
|
+
* transition are visible to later actions. Context itself remains application-owned data.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```ts
|
|
10
|
+
* const collect = assign(({ context }) => ({ coins: context.coins + 1 }));
|
|
11
|
+
* ```
|
|
12
|
+
* @param update - Produces the shallow context patch for this transition.
|
|
13
|
+
* @returns An action accepted by state entry, exit, and transition action lists.
|
|
14
|
+
* @see {@link MachineAction}
|
|
15
|
+
*/
|
|
16
|
+
export declare function assign<Context extends object, Event extends MachineEvent, Input>(update: (context: MachineActionContext<Context, Event, Input>) => Partial<Context>): MachineAction<Context, Event, Input>;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
const assignments = /* @__PURE__ */ new WeakMap();
|
|
2
|
+
function assignmentOf(action) {
|
|
3
|
+
return assignments.get(action);
|
|
4
|
+
}
|
|
5
|
+
function assign(update) {
|
|
6
|
+
const action = () => {
|
|
7
|
+
};
|
|
8
|
+
assignments.set(action, update);
|
|
9
|
+
return action;
|
|
10
|
+
}
|
|
11
|
+
export {
|
|
12
|
+
assign,
|
|
13
|
+
assignmentOf
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=assign.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/features/machines/assign.ts"],
|
|
4
|
+
"sourcesContent": ["import type { MachineAction, MachineActionContext, MachineEvent } from './types.js';\n\nconst assignments = new WeakMap<Function, (context: MachineActionContext<object, MachineEvent, unknown>) => object>();\n\n/** @internal Returns the context patch represented by an assign action. */\nexport function assignmentOf(action: Function): ((context: MachineActionContext<object, MachineEvent, unknown>) => object) | undefined {\n return assignments.get(action);\n}\n\n/**\n * Creates an action that shallowly merges a context patch. Earlier assignments in the same\n * transition are visible to later actions. Context itself remains application-owned data.\n *\n * @example\n * ```ts\n * const collect = assign(({ context }) => ({ coins: context.coins + 1 }));\n * ```\n * @param update - Produces the shallow context patch for this transition.\n * @returns An action accepted by state entry, exit, and transition action lists.\n * @see {@link MachineAction}\n */\nexport function assign<Context extends object, Event extends MachineEvent, Input>(\n update: (context: MachineActionContext<Context, Event, Input>) => Partial<Context>,\n): MachineAction<Context, Event, Input> {\n const action: MachineAction<Context, Event, Input> = () => {};\n assignments.set(action, update as unknown as (context: MachineActionContext<object, MachineEvent, unknown>) => object);\n return action;\n}\n"],
|
|
5
|
+
"mappings": "AAEA,MAAM,cAAc,oBAAI,QAA4F;AAG7G,SAAS,aAAa,QAA0G;AACrI,SAAO,YAAY,IAAI,MAAM;AAC/B;AAcO,SAAS,OACd,QACsC;AACtC,QAAM,SAA+C,MAAM;AAAA,EAAC;AAC5D,cAAY,IAAI,QAAQ,MAA6F;AACrH,SAAO;AACT;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { MachineEvent, MachineTask } from './types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Marks callback-style cancelable work as a machine task. The callback may return a cleanup;
|
|
4
|
+
* its cleanup runs exactly once when the owning state exits or the actor stops.
|
|
5
|
+
* @param callback - Callback task to retain as state-owned work.
|
|
6
|
+
* @returns The same callback, typed for an invocation's `task` field.
|
|
7
|
+
* @see {@link MachineTask}
|
|
8
|
+
*/
|
|
9
|
+
export declare function fromCallback<Context, Event extends MachineEvent, Input>(callback: MachineTask<Context, Event, Input>): MachineTask<Context, Event, Input>;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/features/machines/callback.ts"],
|
|
4
|
+
"sourcesContent": ["import type { MachineEvent, MachineTask } from './types.js';\n\n/**\n * Marks callback-style cancelable work as a machine task. The callback may return a cleanup;\n * its cleanup runs exactly once when the owning state exits or the actor stops.\n * @param callback - Callback task to retain as state-owned work.\n * @returns The same callback, typed for an invocation's `task` field.\n * @see {@link MachineTask}\n */\nexport function fromCallback<Context, Event extends MachineEvent, Input>(\n callback: MachineTask<Context, Event, Input>,\n): MachineTask<Context, Event, Input> {\n return callback;\n}\n"],
|
|
5
|
+
"mappings": "AASO,SAAS,aACd,UACoC;AACpC,SAAO;AACT;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { createMachine } from "./runtime.js";
|
|
2
|
+
import type { MachineActor, MachineDefinition, MachineEvent } from './types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Creates one component-owned state-machine actor for a hook slot.
|
|
5
|
+
*
|
|
6
|
+
* The actor starts only after its mounting render commits successfully and stops
|
|
7
|
+
* when the component unmounts. Its input is captured on the initial mount;
|
|
8
|
+
* changing an input object on a later render does not recreate or restart the
|
|
9
|
+
* actor. Use machine events for application state changes.
|
|
10
|
+
*
|
|
11
|
+
* @typeParam Context - Immutable machine context carried by each snapshot.
|
|
12
|
+
* @typeParam Event - Events accepted by the machine actor.
|
|
13
|
+
* @typeParam Input - Immutable input captured when this hook slot mounts.
|
|
14
|
+
* @param definition - Immutable machine behavior shared by all actor instances.
|
|
15
|
+
* @param options - Input used to initialize this mounted actor.
|
|
16
|
+
* @returns A stable actor with a readonly reactive snapshot.
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* ```tsx
|
|
20
|
+
* const actor = useMachine(menuMachine, { input: { initialOpen: false } });
|
|
21
|
+
* const open = () => actor.send({ type: 'OPEN' });
|
|
22
|
+
* return <Text>{actor.snapshot.get().value}</Text>;
|
|
23
|
+
* ```
|
|
24
|
+
*
|
|
25
|
+
* @see {@link createMachine}
|
|
26
|
+
* @see {@link MachineActor}
|
|
27
|
+
*/
|
|
28
|
+
export declare function useMachine<Context, Event extends MachineEvent, Input, State extends string>(definition: MachineDefinition<Context, Event, Input, State>, options: {
|
|
29
|
+
readonly input: Input;
|
|
30
|
+
}): MachineActor<Context, Event, Input, State>;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { GLOBAL_STATE } from "../../lib/global-state.js";
|
|
2
|
+
import { requireHookContext, useHookSlot } from "../../lib/hooks/hook-slot.js";
|
|
3
|
+
import { createMachine } from "./runtime.js";
|
|
4
|
+
function isCurrentSlot(slot) {
|
|
5
|
+
return !slot.componentRefs.teardowns.closed && !slot.pibblInstance.mainTeardowns.closed && GLOBAL_STATE.pibblInstances.get(slot.pibblInstance.canvas) === slot.pibblInstance && slot.pibblInstance.refs.get(slot.componentRefs.id) === slot.componentRefs;
|
|
6
|
+
}
|
|
7
|
+
function useMachine(definition, options) {
|
|
8
|
+
const { componentRefs, pibblInstance } = requireHookContext();
|
|
9
|
+
const slot = useHookSlot(
|
|
10
|
+
"machine",
|
|
11
|
+
(teardowns) => {
|
|
12
|
+
const actor = createMachine(definition, options);
|
|
13
|
+
const value = {
|
|
14
|
+
actor,
|
|
15
|
+
componentRefs,
|
|
16
|
+
pibblInstance,
|
|
17
|
+
started: false
|
|
18
|
+
};
|
|
19
|
+
teardowns.add(() => actor.stop());
|
|
20
|
+
return value;
|
|
21
|
+
}
|
|
22
|
+
).value;
|
|
23
|
+
const transaction = GLOBAL_STATE.renderTransaction;
|
|
24
|
+
if (!transaction) {
|
|
25
|
+
throw new Error("useMachine requires an active Pibbl render transaction.");
|
|
26
|
+
}
|
|
27
|
+
transaction.onFinish((success) => {
|
|
28
|
+
if (!success || slot.started || !isCurrentSlot(slot)) return;
|
|
29
|
+
slot.started = true;
|
|
30
|
+
slot.actor.start();
|
|
31
|
+
});
|
|
32
|
+
return slot.actor;
|
|
33
|
+
}
|
|
34
|
+
export {
|
|
35
|
+
useMachine
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=hook.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/features/machines/hook.ts"],
|
|
4
|
+
"sourcesContent": ["import { GLOBAL_STATE } from '../../lib/global-state.js';\nimport type { PibblComponentRefs, PibblInstance } from '../../lib/types.js';\nimport { requireHookContext, useHookSlot } from '../../lib/hooks/hook-slot.js';\nimport { createMachine } from './runtime.js';\nimport type {\n MachineActor,\n MachineDefinition,\n MachineEvent,\n} from './types.js';\n\ninterface MachineHookSlot<Context, Event extends MachineEvent, Input, State extends string> {\n readonly actor: MachineActor<Context, Event, Input, State>;\n readonly componentRefs: PibblComponentRefs<unknown>;\n readonly pibblInstance: PibblInstance;\n started: boolean;\n}\n\nfunction isCurrentSlot<Context, Event extends MachineEvent, Input, State extends string>(\n slot: MachineHookSlot<Context, Event, Input, State>,\n): boolean {\n return !slot.componentRefs.teardowns.closed &&\n !slot.pibblInstance.mainTeardowns.closed &&\n GLOBAL_STATE.pibblInstances.get(slot.pibblInstance.canvas) === slot.pibblInstance &&\n slot.pibblInstance.refs.get(slot.componentRefs.id) === slot.componentRefs;\n}\n\n/**\n * Creates one component-owned state-machine actor for a hook slot.\n *\n * The actor starts only after its mounting render commits successfully and stops\n * when the component unmounts. Its input is captured on the initial mount;\n * changing an input object on a later render does not recreate or restart the\n * actor. Use machine events for application state changes.\n *\n * @typeParam Context - Immutable machine context carried by each snapshot.\n * @typeParam Event - Events accepted by the machine actor.\n * @typeParam Input - Immutable input captured when this hook slot mounts.\n * @param definition - Immutable machine behavior shared by all actor instances.\n * @param options - Input used to initialize this mounted actor.\n * @returns A stable actor with a readonly reactive snapshot.\n *\n * @example\n * ```tsx\n * const actor = useMachine(menuMachine, { input: { initialOpen: false } });\n * const open = () => actor.send({ type: 'OPEN' });\n * return <Text>{actor.snapshot.get().value}</Text>;\n * ```\n *\n * @see {@link createMachine}\n * @see {@link MachineActor}\n */\nexport function useMachine<Context, Event extends MachineEvent, Input, State extends string>(\n definition: MachineDefinition<Context, Event, Input, State>,\n options: { readonly input: Input },\n): MachineActor<Context, Event, Input, State> {\n const { componentRefs, pibblInstance } = requireHookContext();\n\n const slot = useHookSlot<MachineHookSlot<Context, Event, Input, State>>(\n 'machine',\n teardowns => {\n const actor = createMachine(definition, options);\n const value: MachineHookSlot<Context, Event, Input, State> = {\n actor,\n componentRefs,\n pibblInstance,\n started: false,\n };\n teardowns.add(() => actor.stop());\n return value;\n },\n ).value;\n\n const transaction = GLOBAL_STATE.renderTransaction;\n if (!transaction) {\n throw new Error('useMachine requires an active Pibbl render transaction.');\n }\n transaction.onFinish(success => {\n if (!success || slot.started || !isCurrentSlot(slot)) return;\n slot.started = true;\n slot.actor.start();\n });\n return slot.actor;\n}\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,oBAAoB;AAE7B,SAAS,oBAAoB,mBAAmB;AAChD,SAAS,qBAAqB;AAc9B,SAAS,cACP,MACS;AACT,SAAO,CAAC,KAAK,cAAc,UAAU,UACnC,CAAC,KAAK,cAAc,cAAc,UAClC,aAAa,eAAe,IAAI,KAAK,cAAc,MAAM,MAAM,KAAK,iBACpE,KAAK,cAAc,KAAK,IAAI,KAAK,cAAc,EAAE,MAAM,KAAK;AAChE;AA2BO,SAAS,WACd,YACA,SAC4C;AAC5C,QAAM,EAAE,eAAe,cAAc,IAAI,mBAAmB;AAE5D,QAAM,OAAO;AAAA,IACX;AAAA,IACA,eAAa;AACX,YAAM,QAAQ,cAAc,YAAY,OAAO;AAC/C,YAAM,QAAuD;AAAA,QAC3D;AAAA,QACA;AAAA,QACA;AAAA,QACA,SAAS;AAAA,MACX;AACA,gBAAU,IAAI,MAAM,MAAM,KAAK,CAAC;AAChC,aAAO;AAAA,IACT;AAAA,EACF,EAAE;AAEF,QAAM,cAAc,aAAa;AACjC,MAAI,CAAC,aAAa;AAChB,UAAM,IAAI,MAAM,yDAAyD;AAAA,EAC3E;AACA,cAAY,SAAS,aAAW;AAC9B,QAAI,CAAC,WAAW,KAAK,WAAW,CAAC,cAAc,IAAI,EAAG;AACtD,SAAK,UAAU;AACf,SAAK,MAAM,MAAM;AAAA,EACnB,CAAC;AACD,SAAO,KAAK;AACd;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/** General-purpose, signal-backed flat state machines. */
|
|
2
|
+
export { assign } from './assign.js';
|
|
3
|
+
export { fromCallback } from './callback.js';
|
|
4
|
+
export { createMachine, defineMachine } from './runtime.js';
|
|
5
|
+
export { useMachine } from './hook.js';
|
|
6
|
+
export type { CreateMachineOptions, MachineAction, MachineActionContext, MachineActions, MachineActor, MachineDefinition, MachineEvent, MachineEventRoutes, MachineInvocation, MachineSnapshot, MachineState, MachineStatus, MachineTask, MachineTaskCleanup, MachineTaskContext, MachineTaskDoneEvent, MachineTaskErrorEvent, MachineTransition, MachineTransitionConfig, } from './types.js';
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { assign } from "./assign.js";
|
|
2
|
+
import { fromCallback } from "./callback.js";
|
|
3
|
+
import { createMachine, defineMachine } from "./runtime.js";
|
|
4
|
+
import { useMachine } from "./hook.js";
|
|
5
|
+
export {
|
|
6
|
+
assign,
|
|
7
|
+
createMachine,
|
|
8
|
+
defineMachine,
|
|
9
|
+
fromCallback,
|
|
10
|
+
useMachine
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/features/machines/index.ts"],
|
|
4
|
+
"sourcesContent": ["/** General-purpose, signal-backed flat state machines. */\nexport { assign } from './assign.js';\nexport { fromCallback } from './callback.js';\nexport { createMachine, defineMachine } from './runtime.js';\nexport { useMachine } from './hook.js';\nexport type {\n CreateMachineOptions,\n MachineAction,\n MachineActionContext,\n MachineActions,\n MachineActor,\n MachineDefinition,\n MachineEvent,\n MachineEventRoutes,\n MachineInvocation,\n MachineSnapshot,\n MachineState,\n MachineStatus,\n MachineTask,\n MachineTaskCleanup,\n MachineTaskContext,\n MachineTaskDoneEvent,\n MachineTaskErrorEvent,\n MachineTransition,\n MachineTransitionConfig,\n} from './types.js';\n"],
|
|
5
|
+
"mappings": "AACA,SAAS,cAAc;AACvB,SAAS,oBAAoB;AAC7B,SAAS,eAAe,qBAAqB;AAC7C,SAAS,kBAAkB;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './index.js';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { CreateMachineOptions, MachineActor, MachineDefinition, MachineEvent } from './types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Validates and records a reusable flat machine definition. Calling this function performs no
|
|
4
|
+
* work and creates no actor; use {@link createMachine} or `useMachine` to execute it.
|
|
5
|
+
* @param definition - Reusable machine behavior to validate and normalize.
|
|
6
|
+
* @returns The supplied definition, suitable for actor creation.
|
|
7
|
+
* @see {@link MachineDefinition}
|
|
8
|
+
*/
|
|
9
|
+
export declare function defineMachine<Context, Event extends MachineEvent, Input = undefined, State extends string = string>(definition: MachineDefinition<Context, Event, Input, State>): MachineDefinition<Context, Event, Input, State>;
|
|
10
|
+
/**
|
|
11
|
+
* Creates an explicitly owned, initially idle machine actor. Call `start()` when ownership begins
|
|
12
|
+
* and `stop()` when it ends. The actor has no renderer, scheduler, or animation dependency.
|
|
13
|
+
* @param definition - Reusable behavior previously authored with {@link defineMachine}.
|
|
14
|
+
* @param options - Immutable input supplied to this actor.
|
|
15
|
+
* @returns An idle actor that owns no task until it starts.
|
|
16
|
+
* @see {@link MachineActor}
|
|
17
|
+
*/
|
|
18
|
+
export declare function createMachine<Context, Event extends MachineEvent, Input, State extends string = string>(definition: MachineDefinition<Context, Event, Input, State>, options: CreateMachineOptions<Input>): MachineActor<Context, Event, Input, State>;
|