@pibbl/core 0.0.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/LICENSE.txt +19 -0
- package/README.md +76 -0
- package/THIRD_PARTY_NOTICES.txt +205 -0
- package/dist/features/particles/index.d.ts +7 -0
- package/dist/features/particles/index.js +26 -0
- package/dist/features/particles/index.js.map +7 -0
- package/dist/features/particles/index.mjs +1 -0
- package/dist/features/particles/lib/canvas/birth-ledger.d.ts +69 -0
- package/dist/features/particles/lib/canvas/birth-ledger.js +752 -0
- package/dist/features/particles/lib/canvas/birth-ledger.js.map +7 -0
- package/dist/features/particles/lib/canvas/component.d.ts +14 -0
- package/dist/features/particles/lib/canvas/component.js +249 -0
- package/dist/features/particles/lib/canvas/component.js.map +7 -0
- package/dist/features/particles/lib/canvas/executor.d.ts +31 -0
- package/dist/features/particles/lib/canvas/executor.js +537 -0
- package/dist/features/particles/lib/canvas/executor.js.map +7 -0
- package/dist/features/particles/lib/canvas/primitive.d.ts +14 -0
- package/dist/features/particles/lib/canvas/primitive.js +50 -0
- package/dist/features/particles/lib/canvas/primitive.js.map +7 -0
- package/dist/features/particles/lib/canvas/raster-cache.d.ts +13 -0
- package/dist/features/particles/lib/canvas/raster-cache.js +106 -0
- package/dist/features/particles/lib/canvas/raster-cache.js.map +7 -0
- package/dist/features/particles/lib/color.d.ts +7 -0
- package/dist/features/particles/lib/color.js +159 -0
- package/dist/features/particles/lib/color.js.map +7 -0
- package/dist/features/particles/lib/compiler.d.ts +134 -0
- package/dist/features/particles/lib/compiler.js +443 -0
- package/dist/features/particles/lib/compiler.js.map +7 -0
- package/dist/features/particles/lib/curve.d.ts +19 -0
- package/dist/features/particles/lib/curve.js +129 -0
- package/dist/features/particles/lib/curve.js.map +7 -0
- package/dist/features/particles/lib/definition-records.d.ts +58 -0
- package/dist/features/particles/lib/definition-records.js +500 -0
- package/dist/features/particles/lib/definition-records.js.map +7 -0
- package/dist/features/particles/lib/definition.d.ts +18 -0
- package/dist/features/particles/lib/definition.js +602 -0
- package/dist/features/particles/lib/definition.js.map +7 -0
- package/dist/features/particles/lib/emission.d.ts +54 -0
- package/dist/features/particles/lib/emission.js +184 -0
- package/dist/features/particles/lib/emission.js.map +7 -0
- package/dist/features/particles/lib/flow/field.d.ts +81 -0
- package/dist/features/particles/lib/flow/field.js +585 -0
- package/dist/features/particles/lib/flow/field.js.map +7 -0
- package/dist/features/particles/lib/flow/hook.d.ts +158 -0
- package/dist/features/particles/lib/flow/hook.js +215 -0
- package/dist/features/particles/lib/flow/hook.js.map +7 -0
- package/dist/features/particles/lib/flow/population.d.ts +25 -0
- package/dist/features/particles/lib/flow/population.js +104 -0
- package/dist/features/particles/lib/flow/population.js.map +7 -0
- package/dist/features/particles/lib/particle.d.ts +113 -0
- package/dist/features/particles/lib/particle.js +192 -0
- package/dist/features/particles/lib/particle.js.map +7 -0
- package/dist/features/particles/lib/random.d.ts +16 -0
- package/dist/features/particles/lib/random.js +61 -0
- package/dist/features/particles/lib/random.js.map +7 -0
- package/dist/features/particles/lib/sample.d.ts +32 -0
- package/dist/features/particles/lib/sample.js +397 -0
- package/dist/features/particles/lib/sample.js.map +7 -0
- package/dist/features/particles/lib/signal-inputs.d.ts +6 -0
- package/dist/features/particles/lib/signal-inputs.js +41 -0
- package/dist/features/particles/lib/signal-inputs.js.map +7 -0
- package/dist/features/particles/lib/system/binding.d.ts +59 -0
- package/dist/features/particles/lib/system/binding.js +122 -0
- package/dist/features/particles/lib/system/binding.js.map +7 -0
- package/dist/features/particles/lib/system/controller.d.ts +58 -0
- package/dist/features/particles/lib/system/controller.js +1446 -0
- package/dist/features/particles/lib/system/controller.js.map +7 -0
- package/dist/features/particles/lib/system/hook.d.ts +13 -0
- package/dist/features/particles/lib/system/hook.js +52 -0
- package/dist/features/particles/lib/system/hook.js.map +7 -0
- package/dist/features/particles/lib/system/ownership.d.ts +26 -0
- package/dist/features/particles/lib/system/ownership.js +128 -0
- package/dist/features/particles/lib/system/ownership.js.map +7 -0
- package/dist/features/particles/lib/types.d.ts +983 -0
- package/dist/features/physics/2d-geometry.d.ts +216 -0
- package/dist/features/physics/2d-geometry.js +59 -0
- package/dist/features/physics/2d-geometry.js.map +7 -0
- package/dist/features/physics/2d-geometry.mjs +1 -0
- package/dist/features/physics/2d-testing.d.ts +80 -0
- package/dist/features/physics/2d-testing.js +141 -0
- package/dist/features/physics/2d-testing.js.map +7 -0
- package/dist/features/physics/2d-testing.mjs +1 -0
- package/dist/features/physics/2d.d.ts +165 -0
- package/dist/features/physics/2d.js +119 -0
- package/dist/features/physics/2d.js.map +7 -0
- package/dist/features/physics/2d.mjs +1 -0
- package/dist/features/physics/lib/2d/canvas/components.d.ts +46 -0
- package/dist/features/physics/lib/2d/canvas/components.js +212 -0
- package/dist/features/physics/lib/2d/canvas/components.js.map +7 -0
- package/dist/features/physics/lib/2d/canvas/custom.d.ts +24 -0
- package/dist/features/physics/lib/2d/canvas/custom.js +45 -0
- package/dist/features/physics/lib/2d/canvas/custom.js.map +7 -0
- package/dist/features/physics/lib/2d/canvas/debug.d.ts +23 -0
- package/dist/features/physics/lib/2d/canvas/debug.js +53 -0
- package/dist/features/physics/lib/2d/canvas/debug.js.map +7 -0
- package/dist/features/physics/lib/2d/canvas/inference.d.ts +9 -0
- package/dist/features/physics/lib/2d/canvas/inference.js +704 -0
- package/dist/features/physics/lib/2d/canvas/inference.js.map +7 -0
- package/dist/features/physics/lib/2d/canvas/presentation.d.ts +11 -0
- package/dist/features/physics/lib/2d/canvas/presentation.js +169 -0
- package/dist/features/physics/lib/2d/canvas/presentation.js.map +7 -0
- package/dist/features/physics/lib/2d/collision/analytic.d.ts +15 -0
- package/dist/features/physics/lib/2d/collision/analytic.js +151 -0
- package/dist/features/physics/lib/2d/collision/analytic.js.map +7 -0
- package/dist/features/physics/lib/2d/collision/casts.d.ts +37 -0
- package/dist/features/physics/lib/2d/collision/casts.js +631 -0
- package/dist/features/physics/lib/2d/collision/casts.js.map +7 -0
- package/dist/features/physics/lib/2d/collision/epa.d.ts +21 -0
- package/dist/features/physics/lib/2d/collision/epa.js +102 -0
- package/dist/features/physics/lib/2d/collision/epa.js.map +7 -0
- package/dist/features/physics/lib/2d/collision/gjk.d.ts +28 -0
- package/dist/features/physics/lib/2d/collision/gjk.js +233 -0
- package/dist/features/physics/lib/2d/collision/gjk.js.map +7 -0
- package/dist/features/physics/lib/2d/collision/manifold.d.ts +35 -0
- package/dist/features/physics/lib/2d/collision/manifold.js +238 -0
- package/dist/features/physics/lib/2d/collision/manifold.js.map +7 -0
- package/dist/features/physics/lib/2d/collision/pairs.d.ts +10 -0
- package/dist/features/physics/lib/2d/collision/pairs.js +285 -0
- package/dist/features/physics/lib/2d/collision/pairs.js.map +7 -0
- package/dist/features/physics/lib/2d/collision/support.d.ts +20 -0
- package/dist/features/physics/lib/2d/collision/support.js +155 -0
- package/dist/features/physics/lib/2d/collision/support.js.map +7 -0
- package/dist/features/physics/lib/2d/inspection-types.d.ts +159 -0
- package/dist/features/physics/lib/2d/math.d.ts +27 -0
- package/dist/features/physics/lib/2d/math.js +314 -0
- package/dist/features/physics/lib/2d/math.js.map +7 -0
- package/dist/features/physics/lib/2d/numeric-policy.d.ts +24 -0
- package/dist/features/physics/lib/2d/numeric-policy.js +51 -0
- package/dist/features/physics/lib/2d/numeric-policy.js.map +7 -0
- package/dist/features/physics/lib/2d/runtime/body-handle.d.ts +148 -0
- package/dist/features/physics/lib/2d/runtime/body-handle.js +305 -0
- package/dist/features/physics/lib/2d/runtime/body-handle.js.map +7 -0
- package/dist/features/physics/lib/2d/runtime/context.d.ts +9 -0
- package/dist/features/physics/lib/2d/runtime/context.js +57 -0
- package/dist/features/physics/lib/2d/runtime/context.js.map +7 -0
- package/dist/features/physics/lib/2d/runtime/controller.d.ts +106 -0
- package/dist/features/physics/lib/2d/runtime/controller.js +1317 -0
- package/dist/features/physics/lib/2d/runtime/controller.js.map +7 -0
- package/dist/features/physics/lib/2d/runtime/descriptors.d.ts +153 -0
- package/dist/features/physics/lib/2d/runtime/descriptors.js +526 -0
- package/dist/features/physics/lib/2d/runtime/descriptors.js.map +7 -0
- package/dist/features/physics/lib/2d/runtime/events.d.ts +56 -0
- package/dist/features/physics/lib/2d/runtime/events.js +153 -0
- package/dist/features/physics/lib/2d/runtime/events.js.map +7 -0
- package/dist/features/physics/lib/2d/runtime/obstacles.d.ts +22 -0
- package/dist/features/physics/lib/2d/runtime/obstacles.js +192 -0
- package/dist/features/physics/lib/2d/runtime/obstacles.js.map +7 -0
- package/dist/features/physics/lib/2d/runtime/ownership.d.ts +41 -0
- package/dist/features/physics/lib/2d/runtime/ownership.js +46 -0
- package/dist/features/physics/lib/2d/runtime/ownership.js.map +7 -0
- package/dist/features/physics/lib/2d/runtime/trace.d.ts +32 -0
- package/dist/features/physics/lib/2d/runtime/trace.js +22 -0
- package/dist/features/physics/lib/2d/runtime/trace.js.map +7 -0
- package/dist/features/physics/lib/2d/runtime/world-component.d.ts +18 -0
- package/dist/features/physics/lib/2d/runtime/world-component.js +41 -0
- package/dist/features/physics/lib/2d/runtime/world-component.js.map +7 -0
- package/dist/features/physics/lib/2d/runtime/world-props.d.ts +16 -0
- package/dist/features/physics/lib/2d/shape-records.d.ts +60 -0
- package/dist/features/physics/lib/2d/shape-records.js +26 -0
- package/dist/features/physics/lib/2d/shape-records.js.map +7 -0
- package/dist/features/physics/lib/2d/shapes.d.ts +191 -0
- package/dist/features/physics/lib/2d/shapes.js +543 -0
- package/dist/features/physics/lib/2d/shapes.js.map +7 -0
- package/dist/features/physics/lib/2d/types.d.ts +713 -0
- package/dist/features/physics/lib/2d/types.js +1 -0
- package/dist/features/physics/lib/2d/types.js.map +7 -0
- package/dist/features/physics/lib/2d/world/broad-phase.d.ts +77 -0
- package/dist/features/physics/lib/2d/world/broad-phase.js +762 -0
- package/dist/features/physics/lib/2d/world/broad-phase.js.map +7 -0
- package/dist/features/physics/lib/2d/world/ccd.d.ts +19 -0
- package/dist/features/physics/lib/2d/world/ccd.js +265 -0
- package/dist/features/physics/lib/2d/world/ccd.js.map +7 -0
- package/dist/features/physics/lib/2d/world/contact-cache.d.ts +81 -0
- package/dist/features/physics/lib/2d/world/contact-cache.js +497 -0
- package/dist/features/physics/lib/2d/world/contact-cache.js.map +7 -0
- package/dist/features/physics/lib/2d/world/integrator.d.ts +11 -0
- package/dist/features/physics/lib/2d/world/integrator.js +99 -0
- package/dist/features/physics/lib/2d/world/integrator.js.map +7 -0
- package/dist/features/physics/lib/2d/world/queries.d.ts +62 -0
- package/dist/features/physics/lib/2d/world/queries.js +424 -0
- package/dist/features/physics/lib/2d/world/queries.js.map +7 -0
- package/dist/features/physics/lib/2d/world/rapier-engine.js +7054 -0
- package/dist/features/physics/lib/2d/world/rapier-engine.js.map +7 -0
- package/dist/features/physics/lib/2d/world/rapier.d.ts +50 -0
- package/dist/features/physics/lib/2d/world/rapier.js +655 -0
- package/dist/features/physics/lib/2d/world/rapier.js.map +7 -0
- package/dist/features/physics/lib/2d/world/solver.d.ts +58 -0
- package/dist/features/physics/lib/2d/world/solver.js +660 -0
- package/dist/features/physics/lib/2d/world/solver.js.map +7 -0
- package/dist/features/physics/lib/2d/world/storage.d.ts +96 -0
- package/dist/features/physics/lib/2d/world/storage.js +371 -0
- package/dist/features/physics/lib/2d/world/storage.js.map +7 -0
- package/dist/features/physics/lib/2d/world/world.d.ts +265 -0
- package/dist/features/physics/lib/2d/world/world.js +1713 -0
- package/dist/features/physics/lib/2d/world/world.js.map +7 -0
- package/dist/features/physics/lib/shared/signal-inputs.d.ts +5 -0
- package/dist/features/physics/lib/shared/signal-inputs.js +20 -0
- package/dist/features/physics/lib/shared/signal-inputs.js.map +7 -0
- package/dist/features/physics/lib/shared/validation.d.ts +5 -0
- package/dist/features/physics/lib/shared/validation.js +48 -0
- package/dist/features/physics/lib/shared/validation.js.map +7 -0
- package/dist/features/sprites/formats/aseprite.js +23 -0
- package/dist/features/sprites/formats/aseprite.js.map +7 -0
- package/dist/features/sprites/formats/aseprite.mjs +1 -0
- package/dist/features/sprites/formats/texture-packer.js +14 -0
- package/dist/features/sprites/formats/texture-packer.js.map +7 -0
- package/dist/features/sprites/formats/texture-packer.mjs +1 -0
- package/dist/features/sprites/index.js +9 -0
- package/dist/features/sprites/index.js.map +7 -0
- package/dist/features/sprites/index.mjs +1 -0
- package/dist/features/sprites/loader.js +63 -0
- package/dist/features/sprites/loader.js.map +7 -0
- package/dist/features/sprites/model.js +64 -0
- package/dist/features/sprites/model.js.map +7 -0
- package/dist/features/sprites/sprite.js +31 -0
- package/dist/features/sprites/sprite.js.map +7 -0
- package/dist/features/textures/index.d.ts +22 -0
- package/dist/features/textures/index.js +31 -0
- package/dist/features/textures/index.js.map +7 -0
- package/dist/features/textures/index.mjs +1 -0
- package/dist/features/textures/lib/definitions.d.ts +117 -0
- package/dist/features/textures/lib/definitions.js +179 -0
- package/dist/features/textures/lib/definitions.js.map +7 -0
- package/dist/features/textures/lib/electric-boundary.d.ts +3 -0
- package/dist/features/textures/lib/electric-boundary.js +11 -0
- package/dist/features/textures/lib/electric-boundary.js.map +7 -0
- package/dist/features/textures/lib/electric-shared.d.ts +69 -0
- package/dist/features/textures/lib/electric-shared.js +43 -0
- package/dist/features/textures/lib/electric-shared.js.map +7 -0
- package/dist/features/textures/lib/electric-sources.d.ts +50 -0
- package/dist/features/textures/lib/electric-sources.js +43 -0
- package/dist/features/textures/lib/electric-sources.js.map +7 -0
- package/dist/features/textures/lib/lightning.d.ts +72 -0
- package/dist/features/textures/lib/lightning.js +139 -0
- package/dist/features/textures/lib/lightning.js.map +7 -0
- package/dist/features/textures/lib/material-field.d.ts +12 -0
- package/dist/features/textures/lib/material-field.js +31 -0
- package/dist/features/textures/lib/material-field.js.map +7 -0
- package/dist/features/textures/lib/palette.d.ts +45 -0
- package/dist/features/textures/lib/palette.js +52 -0
- package/dist/features/textures/lib/palette.js.map +7 -0
- package/dist/features/textures/lib/presentation.d.ts +54 -0
- package/dist/features/textures/lib/presentation.js +83 -0
- package/dist/features/textures/lib/presentation.js.map +7 -0
- package/dist/features/textures/lib/procedural-texture.d.ts +44 -0
- package/dist/features/textures/lib/procedural-texture.js +110 -0
- package/dist/features/textures/lib/procedural-texture.js.map +7 -0
- package/dist/features/textures/lib/rain-drops.d.ts +96 -0
- package/dist/features/textures/lib/rain-drops.js +322 -0
- package/dist/features/textures/lib/rain-drops.js.map +7 -0
- package/dist/features/textures/lib/reaction-diffusion.d.ts +67 -0
- package/dist/features/textures/lib/reaction-diffusion.js +210 -0
- package/dist/features/textures/lib/reaction-diffusion.js.map +7 -0
- package/dist/features/textures/lib/simulation.d.ts +16 -0
- package/dist/features/textures/lib/simulation.js +85 -0
- package/dist/features/textures/lib/simulation.js.map +7 -0
- package/dist/features/textures/lib/tendrils.d.ts +57 -0
- package/dist/features/textures/lib/tendrils.js +216 -0
- package/dist/features/textures/lib/tendrils.js.map +7 -0
- package/dist/features/textures/lib/wasm/cellular-bytes.d.ts +1 -0
- package/dist/features/textures/lib/wasm/cellular-bytes.js +5 -0
- package/dist/features/textures/lib/wasm/cellular-bytes.js.map +7 -0
- package/dist/features/textures/lib/wasm/electric.d.ts +88 -0
- package/dist/features/textures/lib/wasm/electric.js +299 -0
- package/dist/features/textures/lib/wasm/electric.js.map +7 -0
- package/dist/features/textures/lib/wasm/ink-bytes.d.ts +1 -0
- package/dist/features/textures/lib/wasm/ink-bytes.js +5 -0
- package/dist/features/textures/lib/wasm/ink-bytes.js.map +7 -0
- package/dist/features/textures/lib/wasm/lightning-bytes.d.ts +1 -0
- package/dist/features/textures/lib/wasm/lightning-bytes.js +5 -0
- package/dist/features/textures/lib/wasm/lightning-bytes.js.map +7 -0
- package/dist/features/textures/lib/wasm/marble-bytes.d.ts +1 -0
- package/dist/features/textures/lib/wasm/marble-bytes.js +5 -0
- package/dist/features/textures/lib/wasm/marble-bytes.js.map +7 -0
- package/dist/features/textures/lib/wasm/memory.d.ts +31 -0
- package/dist/features/textures/lib/wasm/memory.js +103 -0
- package/dist/features/textures/lib/wasm/memory.js.map +7 -0
- package/dist/features/textures/lib/wasm/paper-bytes.d.ts +1 -0
- package/dist/features/textures/lib/wasm/paper-bytes.js +5 -0
- package/dist/features/textures/lib/wasm/paper-bytes.js.map +7 -0
- package/dist/features/textures/lib/wasm/tendrils-bytes.d.ts +1 -0
- package/dist/features/textures/lib/wasm/tendrils-bytes.js +5 -0
- package/dist/features/textures/lib/wasm/tendrils-bytes.js.map +7 -0
- package/dist/features/textures/lib/wasm/water-surface-bytes.d.ts +1 -0
- package/dist/features/textures/lib/wasm/water-surface-bytes.js +5 -0
- package/dist/features/textures/lib/wasm/water-surface-bytes.js.map +7 -0
- package/dist/features/textures/lib/wasm/water-waves-bytes.d.ts +1 -0
- package/dist/features/textures/lib/wasm/water-waves-bytes.js +5 -0
- package/dist/features/textures/lib/wasm/water-waves-bytes.js.map +7 -0
- package/dist/features/textures/lib/water-surface.d.ts +92 -0
- package/dist/features/textures/lib/water-surface.js +378 -0
- package/dist/features/textures/lib/water-surface.js.map +7 -0
- package/dist/features/textures/lib/water-waves.d.ts +60 -0
- package/dist/features/textures/lib/water-waves.js +154 -0
- package/dist/features/textures/lib/water-waves.js.map +7 -0
- package/dist/features/viz/index.d.ts +28 -0
- package/dist/features/viz/index.js +45 -0
- package/dist/features/viz/index.js.map +7 -0
- package/dist/features/viz/index.mjs +1 -0
- package/dist/features/viz/lib/anchored-layout.d.ts +104 -0
- package/dist/features/viz/lib/anchored-layout.js +166 -0
- package/dist/features/viz/lib/anchored-layout.js.map +7 -0
- package/dist/features/viz/lib/axis.d.ts +10 -0
- package/dist/features/viz/lib/axis.js +116 -0
- package/dist/features/viz/lib/axis.js.map +7 -0
- package/dist/features/viz/lib/band-scale.d.ts +3 -0
- package/dist/features/viz/lib/band-scale.js +57 -0
- package/dist/features/viz/lib/band-scale.js.map +7 -0
- package/dist/features/viz/lib/bar-fill.d.ts +16 -0
- package/dist/features/viz/lib/bar-fill.js +53 -0
- package/dist/features/viz/lib/bar-fill.js.map +7 -0
- package/dist/features/viz/lib/bar-series.d.ts +150 -0
- package/dist/features/viz/lib/bar-series.js +152 -0
- package/dist/features/viz/lib/bar-series.js.map +7 -0
- package/dist/features/viz/lib/hover-card.d.ts +92 -0
- package/dist/features/viz/lib/hover-card.js +146 -0
- package/dist/features/viz/lib/hover-card.js.map +7 -0
- package/dist/features/viz/lib/hover-data.d.ts +12 -0
- package/dist/features/viz/lib/hover-data.js +50 -0
- package/dist/features/viz/lib/hover-data.js.map +7 -0
- package/dist/features/viz/lib/hover-placement.d.ts +46 -0
- package/dist/features/viz/lib/hover-placement.js +51 -0
- package/dist/features/viz/lib/hover-placement.js.map +7 -0
- package/dist/features/viz/lib/hover-queries.d.ts +60 -0
- package/dist/features/viz/lib/hover-queries.js +185 -0
- package/dist/features/viz/lib/hover-queries.js.map +7 -0
- package/dist/features/viz/lib/hover-types.d.ts +277 -0
- package/dist/features/viz/lib/layout-pie.d.ts +13 -0
- package/dist/features/viz/lib/layout-pie.js +159 -0
- package/dist/features/viz/lib/layout-pie.js.map +7 -0
- package/dist/features/viz/lib/line-series.d.ts +11 -0
- package/dist/features/viz/lib/line-series.js +89 -0
- package/dist/features/viz/lib/line-series.js.map +7 -0
- package/dist/features/viz/lib/linear-scale.d.ts +3 -0
- package/dist/features/viz/lib/linear-scale.js +70 -0
- package/dist/features/viz/lib/linear-scale.js.map +7 -0
- package/dist/features/viz/lib/nearest.d.ts +82 -0
- package/dist/features/viz/lib/nearest.js +51 -0
- package/dist/features/viz/lib/nearest.js.map +7 -0
- package/dist/features/viz/lib/paint.d.ts +2 -0
- package/dist/features/viz/lib/paint.js +17 -0
- package/dist/features/viz/lib/paint.js.map +7 -0
- package/dist/features/viz/lib/pie-layout.d.ts +31 -0
- package/dist/features/viz/lib/pie-layout.js +324 -0
- package/dist/features/viz/lib/pie-layout.js.map +7 -0
- package/dist/features/viz/lib/pie-slices.d.ts +51 -0
- package/dist/features/viz/lib/pie-slices.js +50 -0
- package/dist/features/viz/lib/pie-slices.js.map +7 -0
- package/dist/features/viz/lib/pie-types.d.ts +215 -0
- package/dist/features/viz/lib/plot-series.d.ts +13 -0
- package/dist/features/viz/lib/plot-series.js +53 -0
- package/dist/features/viz/lib/plot-series.js.map +7 -0
- package/dist/features/viz/lib/plot-types.d.ts +63 -0
- package/dist/features/viz/lib/point-data.d.ts +5 -0
- package/dist/features/viz/lib/point-data.js +17 -0
- package/dist/features/viz/lib/point-data.js.map +7 -0
- package/dist/features/viz/lib/point-geometry.d.ts +2 -0
- package/dist/features/viz/lib/point-geometry.js +24 -0
- package/dist/features/viz/lib/point-geometry.js.map +7 -0
- package/dist/features/viz/lib/point-series.d.ts +11 -0
- package/dist/features/viz/lib/point-series.js +118 -0
- package/dist/features/viz/lib/point-series.js.map +7 -0
- package/dist/features/viz/lib/point-types.d.ts +94 -0
- package/dist/features/viz/lib/scale-adjust.d.ts +11 -0
- package/dist/features/viz/lib/scale-adjust.js +25 -0
- package/dist/features/viz/lib/scale-adjust.js.map +7 -0
- package/dist/features/viz/lib/scale-context.d.ts +8 -0
- package/dist/features/viz/lib/scale-context.js +61 -0
- package/dist/features/viz/lib/scale-context.js.map +7 -0
- package/dist/features/viz/lib/scale.d.ts +11 -0
- package/dist/features/viz/lib/scale.js +80 -0
- package/dist/features/viz/lib/scale.js.map +7 -0
- package/dist/features/viz/lib/types.d.ts +414 -0
- package/dist/features/viz/lib/use-scale.d.ts +20 -0
- package/dist/features/viz/lib/use-scale.js +10 -0
- package/dist/features/viz/lib/use-scale.js.map +7 -0
- package/dist/filters/displacement-gpu.d.ts +38 -0
- package/dist/filters/displacement-gpu.js +243 -0
- package/dist/filters/displacement-gpu.js.map +7 -0
- package/dist/filters/displacement-math.d.ts +5 -0
- package/dist/filters/displacement-math.js +22 -0
- package/dist/filters/displacement-math.js.map +7 -0
- package/dist/filters/displacement.d.ts +13 -0
- package/dist/filters/displacement.js +65 -0
- package/dist/filters/displacement.js.map +7 -0
- package/dist/filters/filter-executor.d.ts +21 -0
- package/dist/filters/filter-executor.js +120 -0
- package/dist/filters/filter-executor.js.map +7 -0
- package/dist/filters/native-canvas-filter.d.ts +4 -0
- package/dist/filters/native-canvas-filter.js +105 -0
- package/dist/filters/native-canvas-filter.js.map +7 -0
- package/dist/filters/native-color.d.ts +2 -0
- package/dist/filters/native-color.js +200 -0
- package/dist/filters/native-color.js.map +7 -0
- package/dist/filters/native-operations.d.ts +8 -0
- package/dist/filters/native-operations.js +7 -0
- package/dist/filters/native-operations.js.map +7 -0
- package/dist/filters/native.d.ts +113 -0
- package/dist/filters/native.js +115 -0
- package/dist/filters/native.js.map +7 -0
- package/dist/filters/reflected-light.d.ts +12 -0
- package/dist/filters/reflected-light.js +93 -0
- package/dist/filters/reflected-light.js.map +7 -0
- package/dist/filters/reflection-gpu.d.ts +58 -0
- package/dist/filters/reflection-gpu.js +266 -0
- package/dist/filters/reflection-gpu.js.map +7 -0
- package/dist/filters/render-displacement-boundary.d.ts +12 -0
- package/dist/filters/render-displacement-boundary.js +116 -0
- package/dist/filters/render-displacement-boundary.js.map +7 -0
- package/dist/filters/render-reflection-boundary.d.ts +15 -0
- package/dist/filters/render-reflection-boundary.js +127 -0
- package/dist/filters/render-reflection-boundary.js.map +7 -0
- package/dist/filters.d.ts +5 -0
- package/dist/filters.js +29 -0
- package/dist/filters.js.map +7 -0
- package/dist/filters.mjs +1 -0
- package/dist/index.d.ts +111 -0
- package/dist/index.js +300 -0
- package/dist/index.js.map +7 -0
- package/dist/index.mjs +1 -0
- package/dist/internal.d.ts +160 -0
- package/dist/internal.js +320 -0
- package/dist/internal.js.map +7 -0
- package/dist/internal.mjs +1 -0
- package/dist/jsx-dev-runtime.d.ts +35 -0
- package/dist/jsx-dev-runtime.js +6 -0
- package/dist/jsx-dev-runtime.js.map +7 -0
- package/dist/jsx-dev-runtime.mjs +1 -0
- package/dist/jsx-runtime.d.ts +35 -0
- package/dist/jsx-runtime.js +7 -0
- package/dist/jsx-runtime.js.map +7 -0
- package/dist/jsx-runtime.mjs +1 -0
- package/dist/lib/animation/definition.d.ts +140 -0
- package/dist/lib/animation/definition.js +605 -0
- package/dist/lib/animation/definition.js.map +7 -0
- package/dist/lib/animation/easing.d.ts +55 -0
- package/dist/lib/animation/easing.js +112 -0
- package/dist/lib/animation/easing.js.map +7 -0
- package/dist/lib/animation/evaluate.d.ts +118 -0
- package/dist/lib/animation/evaluate.js +2398 -0
- package/dist/lib/animation/evaluate.js.map +7 -0
- package/dist/lib/animation/playback.d.ts +30 -0
- package/dist/lib/animation/playback.js +932 -0
- package/dist/lib/animation/playback.js.map +7 -0
- package/dist/lib/animation/program.d.ts +145 -0
- package/dist/lib/animation/program.js +741 -0
- package/dist/lib/animation/program.js.map +7 -0
- package/dist/lib/animation/spring.d.ts +30 -0
- package/dist/lib/animation/spring.js +324 -0
- package/dist/lib/animation/spring.js.map +7 -0
- package/dist/lib/animation/types.d.ts +418 -0
- package/dist/lib/animation/writer-leases.d.ts +47 -0
- package/dist/lib/animation/writer-leases.js +314 -0
- package/dist/lib/animation/writer-leases.js.map +7 -0
- package/dist/lib/backend/canvas-2d-backend.d.ts +4 -0
- package/dist/lib/backend/canvas-2d-backend.js +97 -0
- package/dist/lib/backend/canvas-2d-backend.js.map +7 -0
- package/dist/lib/backend/types.d.ts +309 -0
- package/dist/lib/backend/types.js +26 -0
- package/dist/lib/backend/types.js.map +7 -0
- package/dist/lib/components/arc-geometry.d.ts +4 -0
- package/dist/lib/components/arc-geometry.js +46 -0
- package/dist/lib/components/arc-geometry.js.map +7 -0
- package/dist/lib/components/arc.d.ts +55 -0
- package/dist/lib/components/arc.js +91 -0
- package/dist/lib/components/arc.js.map +7 -0
- package/dist/lib/components/circle.d.ts +49 -0
- package/dist/lib/components/circle.js +46 -0
- package/dist/lib/components/circle.js.map +7 -0
- package/dist/lib/components/clip.d.ts +43 -0
- package/dist/lib/components/clip.js +24 -0
- package/dist/lib/components/clip.js.map +7 -0
- package/dist/lib/components/ellipse.d.ts +53 -0
- package/dist/lib/components/ellipse.js +59 -0
- package/dist/lib/components/ellipse.js.map +7 -0
- package/dist/lib/components/g.d.ts +56 -0
- package/dist/lib/components/g.js +24 -0
- package/dist/lib/components/g.js.map +7 -0
- package/dist/lib/components/horizontal-line.d.ts +56 -0
- package/dist/lib/components/horizontal-line.js +71 -0
- package/dist/lib/components/horizontal-line.js.map +7 -0
- package/dist/lib/components/html-box.d.ts +16 -0
- package/dist/lib/components/html-box.js +57 -0
- package/dist/lib/components/html-box.js.map +7 -0
- package/dist/lib/components/img.d.ts +24 -0
- package/dist/lib/components/img.js +150 -0
- package/dist/lib/components/img.js.map +7 -0
- package/dist/lib/components/layer-node-equality.d.ts +65 -0
- package/dist/lib/components/layer-node-equality.js +91 -0
- package/dist/lib/components/layer-node-equality.js.map +7 -0
- package/dist/lib/components/layer.d.ts +34 -0
- package/dist/lib/components/layer.js +172 -0
- package/dist/lib/components/layer.js.map +7 -0
- package/dist/lib/components/line.d.ts +51 -0
- package/dist/lib/components/line.js +76 -0
- package/dist/lib/components/line.js.map +7 -0
- package/dist/lib/components/path.d.ts +28 -0
- package/dist/lib/components/path.js +47 -0
- package/dist/lib/components/path.js.map +7 -0
- package/dist/lib/components/polygon.d.ts +45 -0
- package/dist/lib/components/polygon.js +93 -0
- package/dist/lib/components/polygon.js.map +7 -0
- package/dist/lib/components/rect.d.ts +24 -0
- package/dist/lib/components/rect.js +83 -0
- package/dist/lib/components/rect.js.map +7 -0
- package/dist/lib/components/regular-polygon.d.ts +102 -0
- package/dist/lib/components/regular-polygon.js +112 -0
- package/dist/lib/components/regular-polygon.js.map +7 -0
- package/dist/lib/components/rounded-corner-style.d.ts +7 -0
- package/dist/lib/components/rounded-corner-style.js +40 -0
- package/dist/lib/components/rounded-corner-style.js.map +7 -0
- package/dist/lib/components/shape-style.d.ts +7 -0
- package/dist/lib/components/shape-style.js +52 -0
- package/dist/lib/components/shape-style.js.map +7 -0
- package/dist/lib/components/star.d.ts +56 -0
- package/dist/lib/components/star.js +98 -0
- package/dist/lib/components/star.js.map +7 -0
- package/dist/lib/components/structural-events.d.ts +10 -0
- package/dist/lib/components/structural-events.js +8 -0
- package/dist/lib/components/structural-events.js.map +7 -0
- package/dist/lib/components/svg-path.d.ts +23 -0
- package/dist/lib/components/svg-path.js +25 -0
- package/dist/lib/components/svg-path.js.map +7 -0
- package/dist/lib/components/text-layout.d.ts +31 -0
- package/dist/lib/components/text-layout.js +139 -0
- package/dist/lib/components/text-layout.js.map +7 -0
- package/dist/lib/components/text.d.ts +29 -0
- package/dist/lib/components/text.js +174 -0
- package/dist/lib/components/text.js.map +7 -0
- package/dist/lib/components/vertical-line.d.ts +57 -0
- package/dist/lib/components/vertical-line.js +71 -0
- package/dist/lib/components/vertical-line.js.map +7 -0
- package/dist/lib/components/wedge.d.ts +55 -0
- package/dist/lib/components/wedge.js +93 -0
- package/dist/lib/components/wedge.js.map +7 -0
- package/dist/lib/define-primitive.d.ts +82 -0
- package/dist/lib/define-primitive.js +85 -0
- package/dist/lib/define-primitive.js.map +7 -0
- package/dist/lib/development.d.ts +2 -0
- package/dist/lib/development.js +5 -0
- package/dist/lib/development.js.map +7 -0
- package/dist/lib/element/children.d.ts +16 -0
- package/dist/lib/element/children.js +333 -0
- package/dist/lib/element/children.js.map +7 -0
- package/dist/lib/element/create-element.d.ts +34 -0
- package/dist/lib/element/create-element.js +75 -0
- package/dist/lib/element/create-element.js.map +7 -0
- package/dist/lib/element/fragment.d.ts +15 -0
- package/dist/lib/element/fragment.js +11 -0
- package/dist/lib/element/fragment.js.map +7 -0
- package/dist/lib/element/jsx-runtime.d.ts +48 -0
- package/dist/lib/element/jsx-runtime.js +16 -0
- package/dist/lib/element/jsx-runtime.js.map +7 -0
- package/dist/lib/element/metadata.d.ts +96 -0
- package/dist/lib/element/metadata.js +160 -0
- package/dist/lib/element/metadata.js.map +7 -0
- package/dist/lib/element/resolve-primitive-inputs.d.ts +12 -0
- package/dist/lib/element/resolve-primitive-inputs.js +83 -0
- package/dist/lib/element/resolve-primitive-inputs.js.map +7 -0
- package/dist/lib/element/types.d.ts +123 -0
- package/dist/lib/element-enhancers.d.ts +134 -0
- package/dist/lib/element-enhancers.js +193 -0
- package/dist/lib/element-enhancers.js.map +7 -0
- package/dist/lib/events/adapters/clipboard.d.ts +9 -0
- package/dist/lib/events/adapters/clipboard.js +23 -0
- package/dist/lib/events/adapters/clipboard.js.map +7 -0
- package/dist/lib/events/adapters/drag.d.ts +12 -0
- package/dist/lib/events/adapters/drag.js +29 -0
- package/dist/lib/events/adapters/drag.js.map +7 -0
- package/dist/lib/events/adapters/editing.d.ts +15 -0
- package/dist/lib/events/adapters/editing.js +41 -0
- package/dist/lib/events/adapters/editing.js.map +7 -0
- package/dist/lib/events/adapters/keyboard-focus.d.ts +12 -0
- package/dist/lib/events/adapters/keyboard-focus.js +36 -0
- package/dist/lib/events/adapters/keyboard-focus.js.map +7 -0
- package/dist/lib/events/adapters/mouse.d.ts +17 -0
- package/dist/lib/events/adapters/mouse.js +32 -0
- package/dist/lib/events/adapters/mouse.js.map +7 -0
- package/dist/lib/events/adapters/pointer.d.ts +19 -0
- package/dist/lib/events/adapters/pointer.js +40 -0
- package/dist/lib/events/adapters/pointer.js.map +7 -0
- package/dist/lib/events/adapters/touch.d.ts +16 -0
- package/dist/lib/events/adapters/touch.js +36 -0
- package/dist/lib/events/adapters/touch.js.map +7 -0
- package/dist/lib/events/adapters/wheel.d.ts +10 -0
- package/dist/lib/events/adapters/wheel.js +16 -0
- package/dist/lib/events/adapters/wheel.js.map +7 -0
- package/dist/lib/events/boundary-transitions.d.ts +9 -0
- package/dist/lib/events/boundary-transitions.js +16 -0
- package/dist/lib/events/boundary-transitions.js.map +7 -0
- package/dist/lib/events/dispatch.d.ts +21 -0
- package/dist/lib/events/dispatch.js +1078 -0
- package/dist/lib/events/dispatch.js.map +7 -0
- package/dist/lib/events/event-definitions.d.ts +23 -0
- package/dist/lib/events/event-definitions.js +74 -0
- package/dist/lib/events/event-definitions.js.map +7 -0
- package/dist/lib/events/event-facade.d.ts +19 -0
- package/dist/lib/events/event-facade.js +188 -0
- package/dist/lib/events/event-facade.js.map +7 -0
- package/dist/lib/events/event-path.d.ts +3 -0
- package/dist/lib/events/event-path.js +43 -0
- package/dist/lib/events/event-path.js.map +7 -0
- package/dist/lib/events/hit-test.d.ts +13 -0
- package/dist/lib/events/hit-test.js +135 -0
- package/dist/lib/events/hit-test.js.map +7 -0
- package/dist/lib/events/native-listener-hub.d.ts +10 -0
- package/dist/lib/events/native-listener-hub.js +72 -0
- package/dist/lib/events/native-listener-hub.js.map +7 -0
- package/dist/lib/events/paint-entry.d.ts +66 -0
- package/dist/lib/events/paint-entry.js +30 -0
- package/dist/lib/events/paint-entry.js.map +7 -0
- package/dist/lib/events/pointer-capture.d.ts +23 -0
- package/dist/lib/events/pointer-capture.js +339 -0
- package/dist/lib/events/pointer-capture.js.map +7 -0
- package/dist/lib/events/propagation.d.ts +7 -0
- package/dist/lib/events/propagation.js +56 -0
- package/dist/lib/events/propagation.js.map +7 -0
- package/dist/lib/events/registrations.d.ts +120 -0
- package/dist/lib/events/registrations.js +397 -0
- package/dist/lib/events/registrations.js.map +7 -0
- package/dist/lib/events/resolver-input.d.ts +25 -0
- package/dist/lib/events/resolver-input.js +62 -0
- package/dist/lib/events/resolver-input.js.map +7 -0
- package/dist/lib/events/types.d.ts +596 -0
- package/dist/lib/execute-render.d.ts +9 -0
- package/dist/lib/execute-render.js +195 -0
- package/dist/lib/execute-render.js.map +7 -0
- package/dist/lib/filter/canvas-state.d.ts +2 -0
- package/dist/lib/filter/canvas-state.js +31 -0
- package/dist/lib/filter/canvas-state.js.map +7 -0
- package/dist/lib/filter/filter-region.d.ts +33 -0
- package/dist/lib/filter/filter-region.js +291 -0
- package/dist/lib/filter/filter-region.js.map +7 -0
- package/dist/lib/filter/filter-surface-pool.d.ts +38 -0
- package/dist/lib/filter/filter-surface-pool.js +252 -0
- package/dist/lib/filter/filter-surface-pool.js.map +7 -0
- package/dist/lib/filter/render-filter-boundary.d.ts +14 -0
- package/dist/lib/filter/render-filter-boundary.js +211 -0
- package/dist/lib/filter/render-filter-boundary.js.map +7 -0
- package/dist/lib/focus/directional-navigation.d.ts +12 -0
- package/dist/lib/focus/directional-navigation.js +86 -0
- package/dist/lib/focus/directional-navigation.js.map +7 -0
- package/dist/lib/focus/dom-focus-host.d.ts +13 -0
- package/dist/lib/focus/dom-focus-host.js +352 -0
- package/dist/lib/focus/dom-focus-host.js.map +7 -0
- package/dist/lib/focus/dom-tab-stops.d.ts +3 -0
- package/dist/lib/focus/dom-tab-stops.js +71 -0
- package/dist/lib/focus/dom-tab-stops.js.map +7 -0
- package/dist/lib/focus/focus-events.d.ts +4 -0
- package/dist/lib/focus/focus-events.js +78 -0
- package/dist/lib/focus/focus-events.js.map +7 -0
- package/dist/lib/focus/focus-manager.d.ts +121 -0
- package/dist/lib/focus/focus-manager.js +1131 -0
- package/dist/lib/focus/focus-manager.js.map +7 -0
- package/dist/lib/focus/geometry.d.ts +4 -0
- package/dist/lib/focus/geometry.js +64 -0
- package/dist/lib/focus/geometry.js.map +7 -0
- package/dist/lib/focus/html-focus-region.d.ts +27 -0
- package/dist/lib/focus/keyboard-defaults.d.ts +7 -0
- package/dist/lib/focus/keyboard-defaults.js +110 -0
- package/dist/lib/focus/keyboard-defaults.js.map +7 -0
- package/dist/lib/focus/policy-components.d.ts +45 -0
- package/dist/lib/focus/policy-components.js +94 -0
- package/dist/lib/focus/policy-components.js.map +7 -0
- package/dist/lib/focus/types.d.ts +37 -0
- package/dist/lib/focus/types.js +7 -0
- package/dist/lib/focus/types.js.map +7 -0
- package/dist/lib/geometry/circle.d.ts +22 -0
- package/dist/lib/geometry/circle.js +13 -0
- package/dist/lib/geometry/circle.js.map +7 -0
- package/dist/lib/geometry/circular-sweep.d.ts +54 -0
- package/dist/lib/geometry/circular-sweep.js +95 -0
- package/dist/lib/geometry/circular-sweep.js.map +7 -0
- package/dist/lib/geometry/ellipse.d.ts +26 -0
- package/dist/lib/geometry/ellipse.js +17 -0
- package/dist/lib/geometry/ellipse.js.map +7 -0
- package/dist/lib/geometry/line.d.ts +20 -0
- package/dist/lib/geometry/line.js +15 -0
- package/dist/lib/geometry/line.js.map +7 -0
- package/dist/lib/geometry/path-arc.d.ts +25 -0
- package/dist/lib/geometry/path-arc.js +57 -0
- package/dist/lib/geometry/path-arc.js.map +7 -0
- package/dist/lib/geometry/path-bend-guide.d.ts +31 -0
- package/dist/lib/geometry/path-bend-guide.js +282 -0
- package/dist/lib/geometry/path-bend-guide.js.map +7 -0
- package/dist/lib/geometry/path-bend-spans.d.ts +31 -0
- package/dist/lib/geometry/path-bend-spans.js +109 -0
- package/dist/lib/geometry/path-bend-spans.js.map +7 -0
- package/dist/lib/geometry/path-bending.d.ts +90 -0
- package/dist/lib/geometry/path-bending.js +202 -0
- package/dist/lib/geometry/path-bending.js.map +7 -0
- package/dist/lib/geometry/path-conversion.d.ts +19 -0
- package/dist/lib/geometry/path-conversion.js +114 -0
- package/dist/lib/geometry/path-conversion.js.map +7 -0
- package/dist/lib/geometry/path-geometry.d.ts +218 -0
- package/dist/lib/geometry/path-geometry.js +557 -0
- package/dist/lib/geometry/path-geometry.js.map +7 -0
- package/dist/lib/geometry/path-radial.d.ts +15 -0
- package/dist/lib/geometry/path-radial.js +107 -0
- package/dist/lib/geometry/path-radial.js.map +7 -0
- package/dist/lib/geometry/path-transforms.d.ts +233 -0
- package/dist/lib/geometry/path-transforms.js +478 -0
- package/dist/lib/geometry/path-transforms.js.map +7 -0
- package/dist/lib/geometry/path-utilities.d.ts +78 -0
- package/dist/lib/geometry/path-utilities.js +341 -0
- package/dist/lib/geometry/path-utilities.js.map +7 -0
- package/dist/lib/geometry/path-wang.d.ts +18 -0
- package/dist/lib/geometry/path-wang.js +136 -0
- package/dist/lib/geometry/path-wang.js.map +7 -0
- package/dist/lib/geometry/path-warp-bezier.d.ts +17 -0
- package/dist/lib/geometry/path-warp-bezier.js +109 -0
- package/dist/lib/geometry/path-warp-bezier.js.map +7 -0
- package/dist/lib/geometry/path-warp.d.ts +27 -0
- package/dist/lib/geometry/path-warp.js +165 -0
- package/dist/lib/geometry/path-warp.js.map +7 -0
- package/dist/lib/geometry/polygon.d.ts +21 -0
- package/dist/lib/geometry/polygon.js +12 -0
- package/dist/lib/geometry/polygon.js.map +7 -0
- package/dist/lib/geometry/rectangle.d.ts +38 -0
- package/dist/lib/geometry/rectangle.js +22 -0
- package/dist/lib/geometry/rectangle.js.map +7 -0
- package/dist/lib/geometry/regular-polygon.d.ts +88 -0
- package/dist/lib/geometry/regular-polygon.js +67 -0
- package/dist/lib/geometry/regular-polygon.js.map +7 -0
- package/dist/lib/geometry/resolve-path.d.ts +4 -0
- package/dist/lib/geometry/resolve-path.js +16 -0
- package/dist/lib/geometry/resolve-path.js.map +7 -0
- package/dist/lib/geometry/rounded-corners.d.ts +28 -0
- package/dist/lib/geometry/rounded-corners.js +118 -0
- package/dist/lib/geometry/rounded-corners.js.map +7 -0
- package/dist/lib/geometry/star.d.ts +39 -0
- package/dist/lib/geometry/star.js +90 -0
- package/dist/lib/geometry/star.js.map +7 -0
- package/dist/lib/geometry/svg-path.d.ts +21 -0
- package/dist/lib/geometry/svg-path.js +7 -0
- package/dist/lib/geometry/svg-path.js.map +7 -0
- package/dist/lib/geometry/transform-bend.d.ts +46 -0
- package/dist/lib/geometry/transform-bend.js +219 -0
- package/dist/lib/geometry/transform-bend.js.map +7 -0
- package/dist/lib/geometry/transform-guide.d.ts +57 -0
- package/dist/lib/geometry/transform-guide.js +157 -0
- package/dist/lib/geometry/transform-guide.js.map +7 -0
- package/dist/lib/geometry/transform-math.d.ts +21 -0
- package/dist/lib/geometry/transform-math.js +91 -0
- package/dist/lib/geometry/transform-math.js.map +7 -0
- package/dist/lib/geometry/transform-mesh.d.ts +39 -0
- package/dist/lib/geometry/transform-mesh.js +129 -0
- package/dist/lib/geometry/transform-mesh.js.map +7 -0
- package/dist/lib/geometry/validation.d.ts +6 -0
- package/dist/lib/geometry/validation.js +42 -0
- package/dist/lib/geometry/validation.js.map +7 -0
- package/dist/lib/global-state.d.ts +63 -0
- package/dist/lib/global-state.js +176 -0
- package/dist/lib/global-state.js.map +7 -0
- package/dist/lib/hooks/hook-slot.d.ts +30 -0
- package/dist/lib/hooks/hook-slot.js +66 -0
- package/dist/lib/hooks/hook-slot.js.map +7 -0
- package/dist/lib/hooks/use-animated-value.d.ts +24 -0
- package/dist/lib/hooks/use-animated-value.js +169 -0
- package/dist/lib/hooks/use-animated-value.js.map +7 -0
- package/dist/lib/hooks/use-canvas-context.d.ts +10 -0
- package/dist/lib/hooks/use-canvas-context.js +13 -0
- package/dist/lib/hooks/use-canvas-context.js.map +7 -0
- package/dist/lib/hooks/use-computed.d.ts +13 -0
- package/dist/lib/hooks/use-computed.js +91 -0
- package/dist/lib/hooks/use-computed.js.map +7 -0
- package/dist/lib/hooks/use-const.d.ts +10 -0
- package/dist/lib/hooks/use-const.js +15 -0
- package/dist/lib/hooks/use-const.js.map +7 -0
- package/dist/lib/hooks/use-cursor.d.ts +16 -0
- package/dist/lib/hooks/use-cursor.js +51 -0
- package/dist/lib/hooks/use-cursor.js.map +7 -0
- package/dist/lib/hooks/use-event-listener.d.ts +10 -0
- package/dist/lib/hooks/use-event-listener.js +24 -0
- package/dist/lib/hooks/use-event-listener.js.map +7 -0
- package/dist/lib/hooks/use-event-target.d.ts +14 -0
- package/dist/lib/hooks/use-event-target.js +30 -0
- package/dist/lib/hooks/use-event-target.js.map +7 -0
- package/dist/lib/hooks/use-layout-box.d.ts +9 -0
- package/dist/lib/hooks/use-layout-box.js +8 -0
- package/dist/lib/hooks/use-layout-box.js.map +7 -0
- package/dist/lib/hooks/use-line-path.d.ts +14 -0
- package/dist/lib/hooks/use-line-path.js +13 -0
- package/dist/lib/hooks/use-line-path.js.map +7 -0
- package/dist/lib/hooks/use-paint-target.d.ts +3 -0
- package/dist/lib/hooks/use-paint-target.js +34 -0
- package/dist/lib/hooks/use-paint-target.js.map +7 -0
- package/dist/lib/hooks/use-playback.d.ts +21 -0
- package/dist/lib/hooks/use-playback.js +87 -0
- package/dist/lib/hooks/use-playback.js.map +7 -0
- package/dist/lib/hooks/use-reaction.d.ts +19 -0
- package/dist/lib/hooks/use-reaction.js +245 -0
- package/dist/lib/hooks/use-reaction.js.map +7 -0
- package/dist/lib/hooks/use-rect-path.d.ts +20 -0
- package/dist/lib/hooks/use-rect-path.js +25 -0
- package/dist/lib/hooks/use-rect-path.js.map +7 -0
- package/dist/lib/hooks/use-ref.d.ts +17 -0
- package/dist/lib/hooks/use-ref.js +8 -0
- package/dist/lib/hooks/use-ref.js.map +7 -0
- package/dist/lib/hooks/use-region.d.ts +11 -0
- package/dist/lib/hooks/use-region.js +34 -0
- package/dist/lib/hooks/use-region.js.map +7 -0
- package/dist/lib/hooks/use-signal.d.ts +12 -0
- package/dist/lib/hooks/use-signal.js +12 -0
- package/dist/lib/hooks/use-signal.js.map +7 -0
- package/dist/lib/hooks/use-svg-path.d.ts +11 -0
- package/dist/lib/hooks/use-svg-path.js +13 -0
- package/dist/lib/hooks/use-svg-path.js.map +7 -0
- package/dist/lib/hooks/use-value-memo-slot.d.ts +12 -0
- package/dist/lib/hooks/use-value-memo-slot.js +45 -0
- package/dist/lib/hooks/use-value-memo-slot.js.map +7 -0
- package/dist/lib/hooks/use-visibility-transition.d.ts +103 -0
- package/dist/lib/hooks/use-visibility-transition.js +195 -0
- package/dist/lib/hooks/use-visibility-transition.js.map +7 -0
- package/dist/lib/html/html-service.d.ts +30 -0
- package/dist/lib/html/html-service.js +281 -0
- package/dist/lib/html/html-service.js.map +7 -0
- package/dist/lib/html/overlay-config.d.ts +3 -0
- package/dist/lib/html/overlay-config.js +37 -0
- package/dist/lib/html/overlay-config.js.map +7 -0
- package/dist/lib/html/portable-clips.d.ts +4 -0
- package/dist/lib/html/portable-clips.js +20 -0
- package/dist/lib/html/portable-clips.js.map +7 -0
- package/dist/lib/html/types.d.ts +110 -0
- package/dist/lib/layout/absolute.d.ts +57 -0
- package/dist/lib/layout/absolute.js +348 -0
- package/dist/lib/layout/absolute.js.map +7 -0
- package/dist/lib/layout/box.d.ts +19 -0
- package/dist/lib/layout/box.js +209 -0
- package/dist/lib/layout/box.js.map +7 -0
- package/dist/lib/layout/context.d.ts +13 -0
- package/dist/lib/layout/context.js +42 -0
- package/dist/lib/layout/context.js.map +7 -0
- package/dist/lib/layout/diagnostics.d.ts +15 -0
- package/dist/lib/layout/diagnostics.js +30 -0
- package/dist/lib/layout/diagnostics.js.map +7 -0
- package/dist/lib/layout/flex.d.ts +64 -0
- package/dist/lib/layout/flex.js +803 -0
- package/dist/lib/layout/flex.js.map +7 -0
- package/dist/lib/layout/flow.d.ts +53 -0
- package/dist/lib/layout/flow.js +400 -0
- package/dist/lib/layout/flow.js.map +7 -0
- package/dist/lib/layout/grid.d.ts +64 -0
- package/dist/lib/layout/grid.js +597 -0
- package/dist/lib/layout/grid.js.map +7 -0
- package/dist/lib/layout/measure.d.ts +19 -0
- package/dist/lib/layout/measure.js +144 -0
- package/dist/lib/layout/measure.js.map +7 -0
- package/dist/lib/layout/overlay.d.ts +42 -0
- package/dist/lib/layout/overlay.js +151 -0
- package/dist/lib/layout/overlay.js.map +7 -0
- package/dist/lib/layout/place-child.d.ts +12 -0
- package/dist/lib/layout/place-child.js +72 -0
- package/dist/lib/layout/place-child.js.map +7 -0
- package/dist/lib/layout/positioning-diagnostics.d.ts +3 -0
- package/dist/lib/layout/positioning-diagnostics.js +15 -0
- package/dist/lib/layout/positioning-diagnostics.js.map +7 -0
- package/dist/lib/layout/types.d.ts +78 -0
- package/dist/lib/manipulation/controller-types.d.ts +299 -0
- package/dist/lib/manipulation/controller.d.ts +57 -0
- package/dist/lib/manipulation/controller.js +464 -0
- package/dist/lib/manipulation/controller.js.map +7 -0
- package/dist/lib/manipulation/coordinates.d.ts +9 -0
- package/dist/lib/manipulation/coordinates.js +55 -0
- package/dist/lib/manipulation/coordinates.js.map +7 -0
- package/dist/lib/manipulation/degrees.d.ts +10 -0
- package/dist/lib/manipulation/degrees.js +9 -0
- package/dist/lib/manipulation/degrees.js.map +7 -0
- package/dist/lib/manipulation/frame.d.ts +24 -0
- package/dist/lib/manipulation/frame.js +101 -0
- package/dist/lib/manipulation/frame.js.map +7 -0
- package/dist/lib/manipulation/geometry.d.ts +4 -0
- package/dist/lib/manipulation/geometry.js +26 -0
- package/dist/lib/manipulation/geometry.js.map +7 -0
- package/dist/lib/manipulation/handles.d.ts +298 -0
- package/dist/lib/manipulation/handles.js +598 -0
- package/dist/lib/manipulation/handles.js.map +7 -0
- package/dist/lib/manipulation/manipulable.d.ts +65 -0
- package/dist/lib/manipulation/manipulable.js +47 -0
- package/dist/lib/manipulation/manipulable.js.map +7 -0
- package/dist/lib/manipulation/ownership.d.ts +15 -0
- package/dist/lib/manipulation/ownership.js +80 -0
- package/dist/lib/manipulation/ownership.js.map +7 -0
- package/dist/lib/manipulation/snap.d.ts +6 -0
- package/dist/lib/manipulation/snap.js +40 -0
- package/dist/lib/manipulation/snap.js.map +7 -0
- package/dist/lib/manipulation/solve.d.ts +2 -0
- package/dist/lib/manipulation/solve.js +563 -0
- package/dist/lib/manipulation/solve.js.map +7 -0
- package/dist/lib/manipulation/types.d.ts +178 -0
- package/dist/lib/mount-pibbl.d.ts +25 -0
- package/dist/lib/mount-pibbl.js +278 -0
- package/dist/lib/mount-pibbl.js.map +7 -0
- package/dist/lib/optional-services.d.ts +8 -0
- package/dist/lib/optional-services.js +11 -0
- package/dist/lib/optional-services.js.map +7 -0
- package/dist/lib/pibbl.d.ts +17 -0
- package/dist/lib/pibbl.js +21 -0
- package/dist/lib/pibbl.js.map +7 -0
- package/dist/lib/primitive-presentation.d.ts +24 -0
- package/dist/lib/primitive-presentation.js +102 -0
- package/dist/lib/primitive-presentation.js.map +7 -0
- package/dist/lib/render-layer/controller.d.ts +67 -0
- package/dist/lib/render-layer/controller.js +603 -0
- package/dist/lib/render-layer/controller.js.map +7 -0
- package/dist/lib/render-layer/define-render-layer.d.ts +17 -0
- package/dist/lib/render-layer/define-render-layer.js +90 -0
- package/dist/lib/render-layer/define-render-layer.js.map +7 -0
- package/dist/lib/render-layer/types.d.ts +315 -0
- package/dist/lib/render-target.d.ts +27 -0
- package/dist/lib/render-target.js +118 -0
- package/dist/lib/render-target.js.map +7 -0
- package/dist/lib/render-transaction.d.ts +10 -0
- package/dist/lib/render-transaction.js +46 -0
- package/dist/lib/render-transaction.js.map +7 -0
- package/dist/lib/render.d.ts +3 -0
- package/dist/lib/render.js +385 -0
- package/dist/lib/render.js.map +7 -0
- package/dist/lib/scheduler/realm-scheduler.d.ts +52 -0
- package/dist/lib/scheduler/realm-scheduler.js +964 -0
- package/dist/lib/scheduler/realm-scheduler.js.map +7 -0
- package/dist/lib/scheduler/renderer-participant.d.ts +257 -0
- package/dist/lib/scheduler/renderer-participant.js +216 -0
- package/dist/lib/scheduler/renderer-participant.js.map +7 -0
- package/dist/lib/scheduler/simulation-participant.d.ts +103 -0
- package/dist/lib/scheduler/simulation-participant.js +229 -0
- package/dist/lib/scheduler/simulation-participant.js.map +7 -0
- package/dist/lib/scheduler/testing.d.ts +56 -0
- package/dist/lib/scheduler/testing.js +71 -0
- package/dist/lib/scheduler/testing.js.map +7 -0
- package/dist/lib/scheduler/types.d.ts +103 -0
- package/dist/lib/signals/edge.d.ts +44 -0
- package/dist/lib/signals/edge.js +245 -0
- package/dist/lib/signals/edge.js.map +7 -0
- package/dist/lib/signals/graph.d.ts +220 -0
- package/dist/lib/signals/graph.js +1035 -0
- package/dist/lib/signals/graph.js.map +7 -0
- package/dist/lib/signals/input-provision.d.ts +3 -0
- package/dist/lib/signals/input-provision.js +67 -0
- package/dist/lib/signals/input-provision.js.map +7 -0
- package/dist/lib/signals/render-consumer.d.ts +21 -0
- package/dist/lib/signals/render-consumer.js +218 -0
- package/dist/lib/signals/render-consumer.js.map +7 -0
- package/dist/lib/signals/resolve-signal-value.d.ts +10 -0
- package/dist/lib/signals/resolve-signal-value.js +17 -0
- package/dist/lib/signals/resolve-signal-value.js.map +7 -0
- package/dist/lib/signals/types.d.ts +80 -0
- package/dist/lib/style/diagnostics.d.ts +83 -0
- package/dist/lib/style/diagnostics.js +63 -0
- package/dist/lib/style/diagnostics.js.map +7 -0
- package/dist/lib/style/empty-style.d.ts +3 -0
- package/dist/lib/style/empty-style.js +5 -0
- package/dist/lib/style/empty-style.js.map +7 -0
- package/dist/lib/style/filter-types.d.ts +243 -0
- package/dist/lib/style/filter-types.js +5 -0
- package/dist/lib/style/filter-types.js.map +7 -0
- package/dist/lib/style/filter.d.ts +7 -0
- package/dist/lib/style/filter.js +50 -0
- package/dist/lib/style/filter.js.map +7 -0
- package/dist/lib/style/normalize.d.ts +18 -0
- package/dist/lib/style/normalize.js +50 -0
- package/dist/lib/style/normalize.js.map +7 -0
- package/dist/lib/style/positioning.d.ts +32 -0
- package/dist/lib/style/positioning.js +81 -0
- package/dist/lib/style/positioning.js.map +7 -0
- package/dist/lib/style/resolve-built-in.d.ts +6 -0
- package/dist/lib/style/resolve-built-in.js +58 -0
- package/dist/lib/style/resolve-built-in.js.map +7 -0
- package/dist/lib/style/resolve-dispatch.d.ts +20 -0
- package/dist/lib/style/resolve-dispatch.js +167 -0
- package/dist/lib/style/resolve-dispatch.js.map +7 -0
- package/dist/lib/style/resolve-length.d.ts +16 -0
- package/dist/lib/style/resolve-length.js +54 -0
- package/dist/lib/style/resolve-length.js.map +7 -0
- package/dist/lib/style/responsive.d.ts +31 -0
- package/dist/lib/style/responsive.js +172 -0
- package/dist/lib/style/responsive.js.map +7 -0
- package/dist/lib/style/types.d.ts +338 -0
- package/dist/lib/surface/resolve-surface.d.ts +4 -0
- package/dist/lib/surface/resolve-surface.js +184 -0
- package/dist/lib/surface/resolve-surface.js.map +7 -0
- package/dist/lib/surface/root-surface.d.ts +7 -0
- package/dist/lib/surface/root-surface.js +171 -0
- package/dist/lib/surface/root-surface.js.map +7 -0
- package/dist/lib/surface/transform.d.ts +4 -0
- package/dist/lib/surface/transform.js +16 -0
- package/dist/lib/surface/transform.js.map +7 -0
- package/dist/lib/surface/types.d.ts +132 -0
- package/dist/lib/teardowns.d.ts +14 -0
- package/dist/lib/teardowns.js +50 -0
- package/dist/lib/teardowns.js.map +7 -0
- package/dist/lib/textures/texture-protocol.d.ts +124 -0
- package/dist/lib/textures/texture-protocol.js +40 -0
- package/dist/lib/textures/texture-protocol.js.map +7 -0
- package/dist/lib/textures/texture.d.ts +170 -0
- package/dist/lib/textures/texture.js +385 -0
- package/dist/lib/textures/texture.js.map +7 -0
- package/dist/lib/transitions/bifrost.d.ts +47 -0
- package/dist/lib/transitions/bifrost.js +91 -0
- package/dist/lib/transitions/bifrost.js.map +7 -0
- package/dist/lib/transitions/binding.d.ts +14 -0
- package/dist/lib/transitions/binding.js +35 -0
- package/dist/lib/transitions/binding.js.map +7 -0
- package/dist/lib/transitions/capture.d.ts +21 -0
- package/dist/lib/transitions/capture.js +91 -0
- package/dist/lib/transitions/capture.js.map +7 -0
- package/dist/lib/transitions/common.d.ts +130 -0
- package/dist/lib/transitions/common.js +57 -0
- package/dist/lib/transitions/common.js.map +7 -0
- package/dist/lib/transitions/define-transition.d.ts +64 -0
- package/dist/lib/transitions/define-transition.js +31 -0
- package/dist/lib/transitions/define-transition.js.map +7 -0
- package/dist/lib/transitions/embers-physics.d.ts +114 -0
- package/dist/lib/transitions/embers-physics.js +161 -0
- package/dist/lib/transitions/embers-physics.js.map +7 -0
- package/dist/lib/transitions/embers.d.ts +67 -0
- package/dist/lib/transitions/embers.js +196 -0
- package/dist/lib/transitions/embers.js.map +7 -0
- package/dist/lib/transitions/fade.d.ts +41 -0
- package/dist/lib/transitions/fade.js +31 -0
- package/dist/lib/transitions/fade.js.map +7 -0
- package/dist/lib/transitions/hologram.d.ts +47 -0
- package/dist/lib/transitions/hologram.js +94 -0
- package/dist/lib/transitions/hologram.js.map +7 -0
- package/dist/lib/transitions/wasm/bifrost-bytes.d.ts +1 -0
- package/dist/lib/transitions/wasm/bifrost-bytes.js +5 -0
- package/dist/lib/transitions/wasm/bifrost-bytes.js.map +7 -0
- package/dist/lib/transitions/wasm/bifrost-kernel.d.ts +1 -0
- package/dist/lib/transitions/wasm/bifrost-kernel.js +27 -0
- package/dist/lib/transitions/wasm/bifrost-kernel.js.map +7 -0
- package/dist/lib/transitions/wasm/embers-bytes.d.ts +1 -0
- package/dist/lib/transitions/wasm/embers-bytes.js +5 -0
- package/dist/lib/transitions/wasm/embers-bytes.js.map +7 -0
- package/dist/lib/transitions/wasm/hologram-bytes.d.ts +1 -0
- package/dist/lib/transitions/wasm/hologram-bytes.js +5 -0
- package/dist/lib/transitions/wasm/hologram-bytes.js.map +7 -0
- package/dist/lib/transitions/wasm/kernel.d.ts +7 -0
- package/dist/lib/transitions/wasm/kernel.js +26 -0
- package/dist/lib/transitions/wasm/kernel.js.map +7 -0
- package/dist/lib/types.d.ts +570 -0
- package/dist/lib/update.d.ts +8 -0
- package/dist/lib/update.js +20 -0
- package/dist/lib/update.js.map +7 -0
- package/dist/lib/util/get-2d-context.d.ts +2 -0
- package/dist/lib/util/get-2d-context.js +11 -0
- package/dist/lib/util/get-2d-context.js.map +7 -0
- package/dist/lib/util/get-mouse-coordinates.d.ts +2 -0
- package/dist/lib/util/get-mouse-coordinates.js +32 -0
- package/dist/lib/util/get-mouse-coordinates.js.map +7 -0
- package/dist/lib/util/is-hit.d.ts +11 -0
- package/dist/lib/util/is-hit.js +52 -0
- package/dist/lib/util/is-hit.js.map +7 -0
- package/dist/lib/util/is-transparent.d.ts +1 -0
- package/dist/lib/util/is-transparent.js +8 -0
- package/dist/lib/util/is-transparent.js.map +7 -0
- package/dist/lib/util/pixel-grid-adjustments.d.ts +8 -0
- package/dist/lib/util/pixel-grid-adjustments.js +28 -0
- package/dist/lib/util/pixel-grid-adjustments.js.map +7 -0
- package/dist/lib/util/push-clipping-path.d.ts +6 -0
- package/dist/lib/util/push-clipping-path.js +28 -0
- package/dist/lib/util/push-clipping-path.js.map +7 -0
- package/dist/lib/util/wire-common-events.d.ts +2 -0
- package/dist/lib/util/wire-common-events.js +15 -0
- package/dist/lib/util/wire-common-events.js.map +7 -0
- package/dist/types.d.ts +1 -0
- package/dist/types.js +1 -0
- package/dist/types.js.map +7 -0
- package/dist/types.mjs +1 -0
- package/package.json +149 -0
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { definePrimitive } from "../define-primitive.js";
|
|
2
|
+
import {
|
|
3
|
+
resolveLocalOffset,
|
|
4
|
+
stripLayoutParticipation
|
|
5
|
+
} from "../style/resolve-built-in.js";
|
|
6
|
+
import { registerOpaqueStyleProperties } from "../style/resolve-dispatch.js";
|
|
7
|
+
import {
|
|
8
|
+
circularPercentageBasis,
|
|
9
|
+
resolveNonnegativeShapeLength
|
|
10
|
+
} from "./shape-style.js";
|
|
11
|
+
import { renderPath } from "./path.js";
|
|
12
|
+
import { createCirclePath } from "../geometry/circle.js";
|
|
13
|
+
function renderCircle(props, style, ctx) {
|
|
14
|
+
const { cx, cy, radius, ...pathStyle } = style;
|
|
15
|
+
const path = createCirclePath({ cx, cy, radius });
|
|
16
|
+
return renderPath({
|
|
17
|
+
...props,
|
|
18
|
+
keyboardNavigationBounds: props.keyboardNavigationBounds ?? {
|
|
19
|
+
x: cx - radius,
|
|
20
|
+
y: cy - radius,
|
|
21
|
+
width: radius * 2,
|
|
22
|
+
height: radius * 2
|
|
23
|
+
}
|
|
24
|
+
}, {
|
|
25
|
+
...pathStyle,
|
|
26
|
+
d: path
|
|
27
|
+
}, ctx);
|
|
28
|
+
}
|
|
29
|
+
const Circle = definePrimitive(renderCircle, {
|
|
30
|
+
resolveStyle: (style, context) => ({
|
|
31
|
+
...stripLayoutParticipation(style),
|
|
32
|
+
cx: resolveLocalOffset(style.cx, context.percentageBasis.width, "cx", context),
|
|
33
|
+
cy: resolveLocalOffset(style.cy, context.percentageBasis.height, "cy", context),
|
|
34
|
+
radius: resolveNonnegativeShapeLength(
|
|
35
|
+
style.radius,
|
|
36
|
+
circularPercentageBasis(context),
|
|
37
|
+
"radius",
|
|
38
|
+
context
|
|
39
|
+
)
|
|
40
|
+
})
|
|
41
|
+
});
|
|
42
|
+
registerOpaqueStyleProperties(Circle, ["fill", "stroke", "cursor"]);
|
|
43
|
+
export {
|
|
44
|
+
Circle
|
|
45
|
+
};
|
|
46
|
+
//# sourceMappingURL=circle.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/lib/components/circle.ts"],
|
|
4
|
+
"sourcesContent": ["import { definePrimitive } from '../define-primitive.js';\nimport type {\n PibblEventFocusOptions,\n PibblEventHandlers,\n PibblEventParticipationOptions,\n} from '../events/types.js';\nimport type { RenderingContext2D, SystemStyle } from '../types.js';\nimport type { PibblPhysics2DPropExtension } from '../types.js';\nimport {\n resolveLocalOffset,\n stripLayoutParticipation,\n} from '../style/resolve-built-in.js';\nimport { registerOpaqueStyleProperties } from '../style/resolve-dispatch.js';\nimport type {\n BoxStyle,\n CursorStyle,\n LayoutItemStyle,\n Length,\n PaintStyle,\n ResolvedDrawingStyle,\n} from '../style/types.js';\nimport {\n circularPercentageBasis,\n resolveNonnegativeShapeLength,\n} from './shape-style.js';\nimport { renderPath } from './path.js';\nimport { createCirclePath } from '../geometry/circle.js';\n\n/**\n * Authored inputs for Circle, including the declared data and presentation options.\n *\n * @see {@link PibblEventHandlers}\n * @see {@link PibblEventParticipationOptions}\n * @see {@link PibblPhysics2DPropExtension}\n * @see {@link Circle}\n */\nexport interface CircleProps extends PibblEventHandlers, PibblEventFocusOptions, PibblEventParticipationOptions, PibblPhysics2DPropExtension {}\n\n/**\n * Supported geometry and presentation properties for Circle.\n *\n * @see {@link SystemStyle}\n * @see {@link PaintStyle}\n * @see {@link CursorStyle}\n * @see {@link BoxStyle}\n * @see {@link LayoutItemStyle}\n * @see {@link Length}\n * @see {@link Circle}\n */\nexport interface CircleStyle\n extends SystemStyle, PaintStyle, CursorStyle, BoxStyle, LayoutItemStyle {\n /** Radius in the coordinate system of this geometry or effect. See {@link Length}. */\n radius: Exclude<Length, 'auto'>;\n /** Horizontal coordinate of the center. See {@link Length}. */\n cx?: Exclude<Length, 'auto'>;\n /** Vertical coordinate of the center. See {@link Length}. */\n cy?: Exclude<Length, 'auto'>;\n /**\n * Width used for line hit testing independently of the visible stroke width. See\n * {@link CircleStyle}.\n */\n lineInteractionWidth?: number;\n}\n\ntype ResolvedCircleStyle = ResolvedDrawingStyle<CircleStyle> & {\n radius: number;\n cx: number;\n cy: number;\n};\n\nfunction renderCircle(\n props: CircleProps,\n style: Readonly<ResolvedCircleStyle>,\n ctx: RenderingContext2D,\n) {\n const { cx, cy, radius, ...pathStyle } = style;\n const path = createCirclePath({ cx, cy, radius });\n\n return renderPath({\n ...props,\n keyboardNavigationBounds: props.keyboardNavigationBounds ?? {\n x: cx - radius,\n y: cy - radius,\n width: radius * 2,\n height: radius * 2,\n },\n }, {\n ...pathStyle,\n d: path,\n }, ctx);\n}\n\n/**\n * Describes a circle primitive for JSX or createElement authoring.\n *\n * @param props - Authored component inputs, supplied through JSX or createElement. See the linked\n * props and style types.\n * @throws When called directly; Pibbl mounts this component through JSX or createElement.\n *\n * @see {@link CircleProps}\n * @see {@link CircleStyle}\n */\nexport const Circle = definePrimitive<\n CircleProps,\n CircleStyle,\n CircleStyle,\n ResolvedCircleStyle\n>(renderCircle, {\n resolveStyle: (style, context) => ({\n ...stripLayoutParticipation(style),\n cx: resolveLocalOffset(style.cx, context.percentageBasis.width, 'cx', context),\n cy: resolveLocalOffset(style.cy, context.percentageBasis.height, 'cy', context),\n radius: resolveNonnegativeShapeLength(\n style.radius,\n circularPercentageBasis(context),\n 'radius',\n context,\n ),\n }) as ResolvedCircleStyle,\n});\nregisterOpaqueStyleProperties(Circle, ['fill', 'stroke', 'cursor']);\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,uBAAuB;AAQhC;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP,SAAS,qCAAqC;AAS9C;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP,SAAS,kBAAkB;AAC3B,SAAS,wBAAwB;AA4CjC,SAAS,aACP,OACA,OACA,KACA;AACA,QAAM,EAAE,IAAI,IAAI,QAAQ,GAAG,UAAU,IAAI;AACzC,QAAM,OAAO,iBAAiB,EAAE,IAAI,IAAI,OAAO,CAAC;AAEhD,SAAO,WAAW;AAAA,IAChB,GAAG;AAAA,IACH,0BAA0B,MAAM,4BAA4B;AAAA,MAC1D,GAAG,KAAK;AAAA,MACR,GAAG,KAAK;AAAA,MACR,OAAO,SAAS;AAAA,MAChB,QAAQ,SAAS;AAAA,IACnB;AAAA,EACF,GAAG;AAAA,IACD,GAAG;AAAA,IACH,GAAG;AAAA,EACL,GAAG,GAAG;AACR;AAYO,MAAM,SAAS,gBAKpB,cAAc;AAAA,EACd,cAAc,CAAC,OAAO,aAAa;AAAA,IACjC,GAAG,yBAAyB,KAAK;AAAA,IACjC,IAAI,mBAAmB,MAAM,IAAI,QAAQ,gBAAgB,OAAO,MAAM,OAAO;AAAA,IAC7E,IAAI,mBAAmB,MAAM,IAAI,QAAQ,gBAAgB,QAAQ,MAAM,OAAO;AAAA,IAC9E,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,wBAAwB,OAAO;AAAA,MAC/B;AAAA,MACA;AAAA,IACF;AAAA,EACF;AACF,CAAC;AACD,8BAA8B,QAAQ,CAAC,QAAQ,UAAU,QAAQ,CAAC;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { PathGeometry } from '../geometry/path-geometry.js';
|
|
2
|
+
import { PibblNodeInput, SystemStyle } from '../types.js';
|
|
3
|
+
import { type PibblStructuralEventProps } from './structural-events.js';
|
|
4
|
+
import type { BoxStyle, LayoutItemStyle } from '../style/types.js';
|
|
5
|
+
/**
|
|
6
|
+
* Authored inputs for Clip, including the declared data and presentation options.
|
|
7
|
+
*
|
|
8
|
+
* @see {@link PibblNodeInput}
|
|
9
|
+
* @see {@link Clip}
|
|
10
|
+
*/
|
|
11
|
+
export interface ClipProps extends PibblStructuralEventProps {
|
|
12
|
+
/** Descendant content or the callback that supplies it. See {@link PibblNodeInput}. */
|
|
13
|
+
children: PibblNodeInput;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Supported geometry and presentation properties for Clip.
|
|
17
|
+
*
|
|
18
|
+
* @see {@link SystemStyle}
|
|
19
|
+
* @see {@link BoxStyle}
|
|
20
|
+
* @see {@link LayoutItemStyle}
|
|
21
|
+
* @see {@link PathGeometry}
|
|
22
|
+
* @see {@link Clip}
|
|
23
|
+
*/
|
|
24
|
+
export interface ClipStyle extends SystemStyle, BoxStyle, LayoutItemStyle {
|
|
25
|
+
/**
|
|
26
|
+
* Geometry to draw or clip, supplied in the declared path representation. See
|
|
27
|
+
* {@link PathGeometry}.
|
|
28
|
+
*/
|
|
29
|
+
d: Path2D | PathGeometry;
|
|
30
|
+
/** Canvas winding rule used to determine the path interior. See {@link ClipStyle}. */
|
|
31
|
+
fillRule?: CanvasFillRule;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Describes a clipping container for JSX or createElement authoring.
|
|
35
|
+
*
|
|
36
|
+
* @param props - Authored component inputs, supplied through JSX or createElement. See the linked
|
|
37
|
+
* props and style types.
|
|
38
|
+
* @throws When called directly; Pibbl mounts this component through JSX or createElement.
|
|
39
|
+
*
|
|
40
|
+
* @see {@link ClipProps}
|
|
41
|
+
* @see {@link ClipStyle}
|
|
42
|
+
*/
|
|
43
|
+
export declare const Clip: import("@pibbl/core").PibblPrimitiveComponent<ClipProps, import("@pibbl/core").PrimitiveInput<ClipProps, ClipStyle>>;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { portablePath } from "../html/portable-clips.js";
|
|
2
|
+
import { definePrimitive } from "../define-primitive.js";
|
|
3
|
+
import { resolvePath } from "../geometry/resolve-path.js";
|
|
4
|
+
import { setPrimitivePresentation } from "../primitive-presentation.js";
|
|
5
|
+
import { stripLayoutParticipation } from "../style/resolve-built-in.js";
|
|
6
|
+
import {
|
|
7
|
+
wireStructuralEvents
|
|
8
|
+
} from "./structural-events.js";
|
|
9
|
+
function renderClip(props) {
|
|
10
|
+
wireStructuralEvents(props);
|
|
11
|
+
return props.children;
|
|
12
|
+
}
|
|
13
|
+
const Clip = definePrimitive(renderClip, {
|
|
14
|
+
childInput: "structural",
|
|
15
|
+
resolveStyle: (style) => stripLayoutParticipation(style)
|
|
16
|
+
});
|
|
17
|
+
setPrimitivePresentation(Clip, (style) => {
|
|
18
|
+
const { d, fillRule = "nonzero" } = style;
|
|
19
|
+
return { clip: { path: resolvePath(d), fillRule, svgPath: portablePath(d) } };
|
|
20
|
+
});
|
|
21
|
+
export {
|
|
22
|
+
Clip
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=clip.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/lib/components/clip.ts"],
|
|
4
|
+
"sourcesContent": ["import { portablePath } from '../html/portable-clips.js';\nimport { definePrimitive } from '../define-primitive.js';\nimport { PathGeometry } from '../geometry/path-geometry.js';\nimport { resolvePath } from '../geometry/resolve-path.js';\nimport { PibblNodeInput, SystemStyle } from '../types.js';\nimport { setPrimitivePresentation } from '../primitive-presentation.js';\nimport { stripLayoutParticipation } from '../style/resolve-built-in.js';\nimport {\n type PibblStructuralEventProps,\n wireStructuralEvents,\n} from './structural-events.js';\nimport type {\n BoxStyle,\n LayoutItemStyle,\n ResolvedDrawingStyle,\n} from '../style/types.js';\n\n/**\n * Authored inputs for Clip, including the declared data and presentation options.\n *\n * @see {@link PibblNodeInput}\n * @see {@link Clip}\n */\nexport interface ClipProps extends PibblStructuralEventProps {\n /** Descendant content or the callback that supplies it. See {@link PibblNodeInput}. */\n children: PibblNodeInput;\n}\n\n/**\n * Supported geometry and presentation properties for Clip.\n *\n * @see {@link SystemStyle}\n * @see {@link BoxStyle}\n * @see {@link LayoutItemStyle}\n * @see {@link PathGeometry}\n * @see {@link Clip}\n */\nexport interface ClipStyle extends SystemStyle, BoxStyle, LayoutItemStyle {\n /**\n * Geometry to draw or clip, supplied in the declared path representation. See\n * {@link PathGeometry}.\n */\n d: Path2D | PathGeometry;\n /** Canvas winding rule used to determine the path interior. See {@link ClipStyle}. */\n fillRule?: CanvasFillRule;\n}\n\ntype ResolvedClipStyle = ResolvedDrawingStyle<ClipStyle>;\n\nfunction renderClip(\n props: ClipProps,\n) {\n wireStructuralEvents(props);\n return props.children;\n}\n\n/**\n * Describes a clipping container for JSX or createElement authoring.\n *\n * @param props - Authored component inputs, supplied through JSX or createElement. See the linked\n * props and style types.\n * @throws When called directly; Pibbl mounts this component through JSX or createElement.\n *\n * @see {@link ClipProps}\n * @see {@link ClipStyle}\n */\nexport const Clip = definePrimitive<\n ClipProps,\n ClipStyle,\n ClipStyle,\n ResolvedClipStyle\n>(renderClip, {\n childInput: 'structural',\n resolveStyle: style => stripLayoutParticipation(style) as ResolvedClipStyle,\n});\n\nsetPrimitivePresentation<ResolvedClipStyle>(Clip, style => {\n const { d, fillRule = 'nonzero' } = style;\n return { clip: { path: resolvePath(d), fillRule, svgPath: portablePath(d) } };\n});\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,oBAAoB;AAC7B,SAAS,uBAAuB;AAEhC,SAAS,mBAAmB;AAE5B,SAAS,gCAAgC;AACzC,SAAS,gCAAgC;AACzC;AAAA,EAEE;AAAA,OACK;AAuCP,SAAS,WACP,OACA;AACA,uBAAqB,KAAK;AAC1B,SAAO,MAAM;AACf;AAYO,MAAM,OAAO,gBAKlB,YAAY;AAAA,EACZ,YAAY;AAAA,EACZ,cAAc,WAAS,yBAAyB,KAAK;AACvD,CAAC;AAED,yBAA4C,MAAM,WAAS;AACzD,QAAM,EAAE,GAAG,WAAW,UAAU,IAAI;AACpC,SAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC,GAAG,UAAU,SAAS,aAAa,CAAC,EAAE,EAAE;AAC9E,CAAC;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import type { PibblEventFocusOptions, PibblEventHandlers, PibblEventParticipationOptions } from '../events/types.js';
|
|
2
|
+
import type { SystemStyle } from '../types.js';
|
|
3
|
+
import type { PibblPhysics2DPropExtension } from '../types.js';
|
|
4
|
+
import type { BoxStyle, CursorStyle, LayoutItemStyle, Length, PaintStyle } from '../style/types.js';
|
|
5
|
+
/**
|
|
6
|
+
* Authored inputs for Ellipse, including the declared data and presentation options.
|
|
7
|
+
*
|
|
8
|
+
* @see {@link PibblEventHandlers}
|
|
9
|
+
* @see {@link PibblEventParticipationOptions}
|
|
10
|
+
* @see {@link PibblPhysics2DPropExtension}
|
|
11
|
+
* @see {@link Ellipse}
|
|
12
|
+
*/
|
|
13
|
+
export interface EllipseProps extends PibblEventHandlers, PibblEventFocusOptions, PibblEventParticipationOptions, PibblPhysics2DPropExtension {
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Supported geometry and presentation properties for Ellipse.
|
|
17
|
+
*
|
|
18
|
+
* @see {@link SystemStyle}
|
|
19
|
+
* @see {@link PaintStyle}
|
|
20
|
+
* @see {@link CursorStyle}
|
|
21
|
+
* @see {@link BoxStyle}
|
|
22
|
+
* @see {@link LayoutItemStyle}
|
|
23
|
+
* @see {@link Length}
|
|
24
|
+
* @see {@link Ellipse}
|
|
25
|
+
*/
|
|
26
|
+
export interface EllipseStyle extends SystemStyle, PaintStyle, CursorStyle, BoxStyle, LayoutItemStyle {
|
|
27
|
+
/** Horizontal ellipse radius. See {@link Length}. */
|
|
28
|
+
radiusX: Exclude<Length, 'auto'>;
|
|
29
|
+
/** Vertical ellipse radius. See {@link Length}. */
|
|
30
|
+
radiusY: Exclude<Length, 'auto'>;
|
|
31
|
+
/** Horizontal coordinate of the center. See {@link Length}. */
|
|
32
|
+
cx?: Exclude<Length, 'auto'>;
|
|
33
|
+
/** Vertical coordinate of the center. See {@link Length}. */
|
|
34
|
+
cy?: Exclude<Length, 'auto'>;
|
|
35
|
+
/** Rotation applied to the containing geometry. See {@link EllipseStyle}. */
|
|
36
|
+
rotation?: number;
|
|
37
|
+
/**
|
|
38
|
+
* Width used for line hit testing independently of the visible stroke width. See
|
|
39
|
+
* {@link EllipseStyle}.
|
|
40
|
+
*/
|
|
41
|
+
lineInteractionWidth?: number;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Describes an ellipse primitive for JSX or createElement authoring.
|
|
45
|
+
*
|
|
46
|
+
* @param props - Authored component inputs, supplied through JSX or createElement. See the linked
|
|
47
|
+
* props and style types.
|
|
48
|
+
* @throws When called directly; Pibbl mounts this component through JSX or createElement.
|
|
49
|
+
*
|
|
50
|
+
* @see {@link EllipseProps}
|
|
51
|
+
* @see {@link EllipseStyle}
|
|
52
|
+
*/
|
|
53
|
+
export declare const Ellipse: import("@pibbl/core").PibblPrimitiveComponent<EllipseProps, import("@pibbl/core").PrimitiveInput<EllipseProps, EllipseStyle>>;
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { definePrimitive } from "../define-primitive.js";
|
|
2
|
+
import {
|
|
3
|
+
resolveLocalOffset,
|
|
4
|
+
stripLayoutParticipation
|
|
5
|
+
} from "../style/resolve-built-in.js";
|
|
6
|
+
import { registerOpaqueStyleProperties } from "../style/resolve-dispatch.js";
|
|
7
|
+
import {
|
|
8
|
+
resolveFiniteShapeNumber,
|
|
9
|
+
resolveNonnegativeShapeLength
|
|
10
|
+
} from "./shape-style.js";
|
|
11
|
+
import { renderPath } from "./path.js";
|
|
12
|
+
import { createEllipsePath } from "../geometry/ellipse.js";
|
|
13
|
+
function renderEllipse(props, style, ctx) {
|
|
14
|
+
const { cx, cy, radiusX, radiusY, rotation, ...pathStyle } = style;
|
|
15
|
+
const path = createEllipsePath({ cx, cy, radiusX, radiusY, rotation });
|
|
16
|
+
const halfWidth = Math.sqrt(
|
|
17
|
+
(radiusX * Math.cos(rotation)) ** 2 + (radiusY * Math.sin(rotation)) ** 2
|
|
18
|
+
);
|
|
19
|
+
const halfHeight = Math.sqrt(
|
|
20
|
+
(radiusX * Math.sin(rotation)) ** 2 + (radiusY * Math.cos(rotation)) ** 2
|
|
21
|
+
);
|
|
22
|
+
return renderPath({
|
|
23
|
+
...props,
|
|
24
|
+
keyboardNavigationBounds: props.keyboardNavigationBounds ?? {
|
|
25
|
+
x: cx - halfWidth,
|
|
26
|
+
y: cy - halfHeight,
|
|
27
|
+
width: halfWidth * 2,
|
|
28
|
+
height: halfHeight * 2
|
|
29
|
+
}
|
|
30
|
+
}, {
|
|
31
|
+
...pathStyle,
|
|
32
|
+
d: path
|
|
33
|
+
}, ctx);
|
|
34
|
+
}
|
|
35
|
+
const Ellipse = definePrimitive(renderEllipse, {
|
|
36
|
+
resolveStyle: (style, context) => ({
|
|
37
|
+
...stripLayoutParticipation(style),
|
|
38
|
+
cx: resolveLocalOffset(style.cx, context.percentageBasis.width, "cx", context),
|
|
39
|
+
cy: resolveLocalOffset(style.cy, context.percentageBasis.height, "cy", context),
|
|
40
|
+
radiusX: resolveNonnegativeShapeLength(
|
|
41
|
+
style.radiusX,
|
|
42
|
+
context.percentageBasis.width,
|
|
43
|
+
"radiusX",
|
|
44
|
+
context
|
|
45
|
+
),
|
|
46
|
+
radiusY: resolveNonnegativeShapeLength(
|
|
47
|
+
style.radiusY,
|
|
48
|
+
context.percentageBasis.height,
|
|
49
|
+
"radiusY",
|
|
50
|
+
context
|
|
51
|
+
),
|
|
52
|
+
rotation: resolveFiniteShapeNumber(style.rotation ?? 0, "rotation", context)
|
|
53
|
+
})
|
|
54
|
+
});
|
|
55
|
+
registerOpaqueStyleProperties(Ellipse, ["fill", "stroke", "cursor"]);
|
|
56
|
+
export {
|
|
57
|
+
Ellipse
|
|
58
|
+
};
|
|
59
|
+
//# sourceMappingURL=ellipse.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/lib/components/ellipse.ts"],
|
|
4
|
+
"sourcesContent": ["import { definePrimitive } from '../define-primitive.js';\nimport type {\n PibblEventFocusOptions,\n PibblEventHandlers,\n PibblEventParticipationOptions,\n} from '../events/types.js';\nimport type { RenderingContext2D, SystemStyle } from '../types.js';\nimport type { PibblPhysics2DPropExtension } from '../types.js';\nimport {\n resolveLocalOffset,\n stripLayoutParticipation,\n} from '../style/resolve-built-in.js';\nimport { registerOpaqueStyleProperties } from '../style/resolve-dispatch.js';\nimport type {\n BoxStyle,\n CursorStyle,\n LayoutItemStyle,\n Length,\n PaintStyle,\n ResolvedDrawingStyle,\n} from '../style/types.js';\nimport {\n resolveFiniteShapeNumber,\n resolveNonnegativeShapeLength,\n} from './shape-style.js';\nimport { renderPath } from './path.js';\nimport { createEllipsePath } from '../geometry/ellipse.js';\n\n/**\n * Authored inputs for Ellipse, including the declared data and presentation options.\n *\n * @see {@link PibblEventHandlers}\n * @see {@link PibblEventParticipationOptions}\n * @see {@link PibblPhysics2DPropExtension}\n * @see {@link Ellipse}\n */\nexport interface EllipseProps extends PibblEventHandlers, PibblEventFocusOptions, PibblEventParticipationOptions, PibblPhysics2DPropExtension {}\n\n/**\n * Supported geometry and presentation properties for Ellipse.\n *\n * @see {@link SystemStyle}\n * @see {@link PaintStyle}\n * @see {@link CursorStyle}\n * @see {@link BoxStyle}\n * @see {@link LayoutItemStyle}\n * @see {@link Length}\n * @see {@link Ellipse}\n */\nexport interface EllipseStyle\n extends SystemStyle, PaintStyle, CursorStyle, BoxStyle, LayoutItemStyle {\n /** Horizontal ellipse radius. See {@link Length}. */\n radiusX: Exclude<Length, 'auto'>;\n /** Vertical ellipse radius. See {@link Length}. */\n radiusY: Exclude<Length, 'auto'>;\n /** Horizontal coordinate of the center. See {@link Length}. */\n cx?: Exclude<Length, 'auto'>;\n /** Vertical coordinate of the center. See {@link Length}. */\n cy?: Exclude<Length, 'auto'>;\n /** Rotation applied to the containing geometry. See {@link EllipseStyle}. */\n rotation?: number;\n /**\n * Width used for line hit testing independently of the visible stroke width. See\n * {@link EllipseStyle}.\n */\n lineInteractionWidth?: number;\n}\n\ntype ResolvedEllipseStyle = ResolvedDrawingStyle<EllipseStyle> & {\n radiusX: number;\n radiusY: number;\n cx: number;\n cy: number;\n rotation: number;\n};\n\nfunction renderEllipse(\n props: EllipseProps,\n style: Readonly<ResolvedEllipseStyle>,\n ctx: RenderingContext2D,\n) {\n const { cx, cy, radiusX, radiusY, rotation, ...pathStyle } = style;\n const path = createEllipsePath({ cx, cy, radiusX, radiusY, rotation });\n const halfWidth = Math.sqrt(\n (radiusX * Math.cos(rotation)) ** 2 +\n (radiusY * Math.sin(rotation)) ** 2,\n );\n const halfHeight = Math.sqrt(\n (radiusX * Math.sin(rotation)) ** 2 +\n (radiusY * Math.cos(rotation)) ** 2,\n );\n\n return renderPath({\n ...props,\n keyboardNavigationBounds: props.keyboardNavigationBounds ?? {\n x: cx - halfWidth,\n y: cy - halfHeight,\n width: halfWidth * 2,\n height: halfHeight * 2,\n },\n }, {\n ...pathStyle,\n d: path,\n }, ctx);\n}\n\n/**\n * Describes an ellipse primitive for JSX or createElement authoring.\n *\n * @param props - Authored component inputs, supplied through JSX or createElement. See the linked\n * props and style types.\n * @throws When called directly; Pibbl mounts this component through JSX or createElement.\n *\n * @see {@link EllipseProps}\n * @see {@link EllipseStyle}\n */\nexport const Ellipse = definePrimitive<\n EllipseProps,\n EllipseStyle,\n EllipseStyle,\n ResolvedEllipseStyle\n>(renderEllipse, {\n resolveStyle: (style, context) => ({\n ...stripLayoutParticipation(style),\n cx: resolveLocalOffset(style.cx, context.percentageBasis.width, 'cx', context),\n cy: resolveLocalOffset(style.cy, context.percentageBasis.height, 'cy', context),\n radiusX: resolveNonnegativeShapeLength(\n style.radiusX,\n context.percentageBasis.width,\n 'radiusX',\n context,\n ),\n radiusY: resolveNonnegativeShapeLength(\n style.radiusY,\n context.percentageBasis.height,\n 'radiusY',\n context,\n ),\n rotation: resolveFiniteShapeNumber(style.rotation ?? 0, 'rotation', context),\n }) as ResolvedEllipseStyle,\n});\nregisterOpaqueStyleProperties(Ellipse, ['fill', 'stroke', 'cursor']);\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,uBAAuB;AAQhC;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP,SAAS,qCAAqC;AAS9C;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP,SAAS,kBAAkB;AAC3B,SAAS,yBAAyB;AAkDlC,SAAS,cACP,OACA,OACA,KACA;AACA,QAAM,EAAE,IAAI,IAAI,SAAS,SAAS,UAAU,GAAG,UAAU,IAAI;AAC7D,QAAM,OAAO,kBAAkB,EAAE,IAAI,IAAI,SAAS,SAAS,SAAS,CAAC;AACrE,QAAM,YAAY,KAAK;AAAA,KACpB,UAAU,KAAK,IAAI,QAAQ,MAAM,KAC/B,UAAU,KAAK,IAAI,QAAQ,MAAM;AAAA,EACtC;AACA,QAAM,aAAa,KAAK;AAAA,KACrB,UAAU,KAAK,IAAI,QAAQ,MAAM,KAC/B,UAAU,KAAK,IAAI,QAAQ,MAAM;AAAA,EACtC;AAEA,SAAO,WAAW;AAAA,IAChB,GAAG;AAAA,IACH,0BAA0B,MAAM,4BAA4B;AAAA,MAC1D,GAAG,KAAK;AAAA,MACR,GAAG,KAAK;AAAA,MACR,OAAO,YAAY;AAAA,MACnB,QAAQ,aAAa;AAAA,IACvB;AAAA,EACF,GAAG;AAAA,IACD,GAAG;AAAA,IACH,GAAG;AAAA,EACL,GAAG,GAAG;AACR;AAYO,MAAM,UAAU,gBAKrB,eAAe;AAAA,EACf,cAAc,CAAC,OAAO,aAAa;AAAA,IACjC,GAAG,yBAAyB,KAAK;AAAA,IACjC,IAAI,mBAAmB,MAAM,IAAI,QAAQ,gBAAgB,OAAO,MAAM,OAAO;AAAA,IAC7E,IAAI,mBAAmB,MAAM,IAAI,QAAQ,gBAAgB,QAAQ,MAAM,OAAO;AAAA,IAC9E,SAAS;AAAA,MACP,MAAM;AAAA,MACN,QAAQ,gBAAgB;AAAA,MACxB;AAAA,MACA;AAAA,IACF;AAAA,IACA,SAAS;AAAA,MACP,MAAM;AAAA,MACN,QAAQ,gBAAgB;AAAA,MACxB;AAAA,MACA;AAAA,IACF;AAAA,IACA,UAAU,yBAAyB,MAAM,YAAY,GAAG,YAAY,OAAO;AAAA,EAC7E;AACF,CAAC;AACD,8BAA8B,SAAS,CAAC,QAAQ,UAAU,QAAQ,CAAC;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import type { PibblDragHandleStyle } from "../manipulation/handles.js";
|
|
2
|
+
import type { HtmlBoxStyle } from "../html/types.js";
|
|
3
|
+
import { PibblNodeInput, SystemStyle } from '../types.js';
|
|
4
|
+
import type { PibblPhysics2DPropExtension } from '../types.js';
|
|
5
|
+
import { type PibblStructuralEventProps } from './structural-events.js';
|
|
6
|
+
import type { BoxStyle, LayoutItemStyle } from '../style/types.js';
|
|
7
|
+
/**
|
|
8
|
+
* Authored inputs for Group, including the declared data and presentation options.
|
|
9
|
+
*
|
|
10
|
+
* @see {@link PibblPhysics2DPropExtension}
|
|
11
|
+
* @see {@link PibblNodeInput}
|
|
12
|
+
* @see {@link Group}
|
|
13
|
+
*/
|
|
14
|
+
export interface GroupProps extends PibblStructuralEventProps, PibblPhysics2DPropExtension {
|
|
15
|
+
/** Descendant content or the callback that supplies it. See {@link PibblNodeInput}. */
|
|
16
|
+
children: PibblNodeInput;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Transforms, layout participation, and shared style properties for Group.
|
|
20
|
+
*
|
|
21
|
+
* @see {@link SystemStyle}
|
|
22
|
+
* @see {@link BoxStyle}
|
|
23
|
+
* @see {@link LayoutItemStyle}
|
|
24
|
+
* @see {@link Group}
|
|
25
|
+
* @see {@link PibblDragHandleStyle}
|
|
26
|
+
* @see {@link HtmlBoxStyle}
|
|
27
|
+
*/
|
|
28
|
+
export interface GStyle extends SystemStyle, BoxStyle, LayoutItemStyle {
|
|
29
|
+
/** Horizontal scale factor. See {@link GStyle}. */
|
|
30
|
+
scaleX?: number;
|
|
31
|
+
/** Vertical scale factor. See {@link GStyle}. */
|
|
32
|
+
scaleY?: number;
|
|
33
|
+
/** Clockwise rotation in degrees. */
|
|
34
|
+
rotationDegrees?: number;
|
|
35
|
+
/** Point around which the rotation is applied. See {@link GStyle}. */
|
|
36
|
+
rotationOrigin?: [number, number];
|
|
37
|
+
/** Horizontal translation in the current logical coordinate system. See {@link GStyle}. */
|
|
38
|
+
translateX?: number;
|
|
39
|
+
/** Vertical translation in the current logical coordinate system. See {@link GStyle}. */
|
|
40
|
+
translateY?: number;
|
|
41
|
+
/** Horizontal skew angle in degrees. */
|
|
42
|
+
skewX?: number;
|
|
43
|
+
/** Vertical skew angle in degrees. */
|
|
44
|
+
skewY?: number;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Describes a transformation group for JSX or createElement authoring.
|
|
48
|
+
*
|
|
49
|
+
* @param props - Authored component inputs, supplied through JSX or createElement. See the linked
|
|
50
|
+
* props and style types.
|
|
51
|
+
* @throws When called directly; Pibbl mounts this component through JSX or createElement.
|
|
52
|
+
*
|
|
53
|
+
* @see {@link GroupProps}
|
|
54
|
+
* @see {@link GStyle}
|
|
55
|
+
*/
|
|
56
|
+
export declare const Group: import("@pibbl/core").PibblPrimitiveComponent<GroupProps, import("@pibbl/core").PrimitiveInput<GroupProps, GStyle>>;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { definePrimitive } from "../define-primitive.js";
|
|
2
|
+
import {
|
|
3
|
+
createGroupTransform,
|
|
4
|
+
setPrimitivePresentation
|
|
5
|
+
} from "../primitive-presentation.js";
|
|
6
|
+
import { stripLayoutParticipation } from "../style/resolve-built-in.js";
|
|
7
|
+
import {
|
|
8
|
+
wireStructuralEvents
|
|
9
|
+
} from "./structural-events.js";
|
|
10
|
+
function renderGroup(props) {
|
|
11
|
+
wireStructuralEvents(props);
|
|
12
|
+
return props.children;
|
|
13
|
+
}
|
|
14
|
+
const Group = definePrimitive(renderGroup, {
|
|
15
|
+
childInput: "structural",
|
|
16
|
+
resolveStyle: (style) => stripLayoutParticipation(style)
|
|
17
|
+
});
|
|
18
|
+
setPrimitivePresentation(Group, (style) => ({
|
|
19
|
+
transform: createGroupTransform(style)
|
|
20
|
+
}));
|
|
21
|
+
export {
|
|
22
|
+
Group
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=g.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/lib/components/g.ts"],
|
|
4
|
+
"sourcesContent": ["import type { PibblDragHandleStyle } from '../manipulation/handles.js';\nimport type { HtmlBoxStyle } from '../html/types.js';\nimport { definePrimitive } from '../define-primitive.js';\nimport { PibblNodeInput, SystemStyle } from '../types.js';\nimport type { PibblPhysics2DPropExtension } from '../types.js';\nimport {\n createGroupTransform,\n setPrimitivePresentation,\n} from '../primitive-presentation.js';\nimport { stripLayoutParticipation } from '../style/resolve-built-in.js';\nimport {\n type PibblStructuralEventProps,\n wireStructuralEvents,\n} from './structural-events.js';\nimport type {\n BoxStyle,\n LayoutItemStyle,\n ResolvedDrawingStyle,\n} from '../style/types.js';\n\n/**\n * Authored inputs for Group, including the declared data and presentation options.\n *\n * @see {@link PibblPhysics2DPropExtension}\n * @see {@link PibblNodeInput}\n * @see {@link Group}\n */\nexport interface GroupProps extends PibblStructuralEventProps, PibblPhysics2DPropExtension {\n /** Descendant content or the callback that supplies it. See {@link PibblNodeInput}. */\n children: PibblNodeInput;\n}\n\n/**\n * Transforms, layout participation, and shared style properties for Group.\n *\n * @see {@link SystemStyle}\n * @see {@link BoxStyle}\n * @see {@link LayoutItemStyle}\n * @see {@link Group}\n * @see {@link PibblDragHandleStyle}\n * @see {@link HtmlBoxStyle}\n */\nexport interface GStyle extends SystemStyle, BoxStyle, LayoutItemStyle {\n /** Horizontal scale factor. See {@link GStyle}. */\n scaleX?: number;\n /** Vertical scale factor. See {@link GStyle}. */\n scaleY?: number;\n /** Clockwise rotation in degrees. */\n rotationDegrees?: number;\n /** Point around which the rotation is applied. See {@link GStyle}. */\n rotationOrigin?: [number, number];\n /** Horizontal translation in the current logical coordinate system. See {@link GStyle}. */\n translateX?: number;\n /** Vertical translation in the current logical coordinate system. See {@link GStyle}. */\n translateY?: number;\n /** Horizontal skew angle in degrees. */\n skewX?: number;\n /** Vertical skew angle in degrees. */\n skewY?: number;\n}\n\ntype ResolvedGStyle = ResolvedDrawingStyle<GStyle>;\n\nfunction renderGroup(\n props: GroupProps,\n) {\n wireStructuralEvents(props);\n return props.children;\n}\n\n/**\n * Describes a transformation group for JSX or createElement authoring.\n *\n * @param props - Authored component inputs, supplied through JSX or createElement. See the linked\n * props and style types.\n * @throws When called directly; Pibbl mounts this component through JSX or createElement.\n *\n * @see {@link GroupProps}\n * @see {@link GStyle}\n */\nexport const Group = definePrimitive<\n GroupProps,\n GStyle,\n GStyle,\n ResolvedGStyle\n>(renderGroup, {\n childInput: 'structural',\n resolveStyle: style => stripLayoutParticipation(style) as ResolvedGStyle,\n});\n\nsetPrimitivePresentation<ResolvedGStyle>(Group, style => ({\n transform: createGroupTransform(style),\n}));\n"],
|
|
5
|
+
"mappings": "AAEA,SAAS,uBAAuB;AAGhC;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP,SAAS,gCAAgC;AACzC;AAAA,EAEE;AAAA,OACK;AAkDP,SAAS,YACP,OACA;AACA,uBAAqB,KAAK;AAC1B,SAAO,MAAM;AACf;AAYO,MAAM,QAAQ,gBAKnB,aAAa;AAAA,EACb,YAAY;AAAA,EACZ,cAAc,WAAS,yBAAyB,KAAK;AACvD,CAAC;AAED,yBAAyC,OAAO,YAAU;AAAA,EACxD,WAAW,qBAAqB,KAAK;AACvC,EAAE;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import type { PibblEventFocusOptions, PibblEventHandlers, PibblEventParticipationOptions } from '../events/types.js';
|
|
2
|
+
import { PixelGridAlignment, SystemStyle } from '../types.js';
|
|
3
|
+
import type { PibblPhysics2DPropExtension } from '../types.js';
|
|
4
|
+
import type { BoxStyle, LayoutItemStyle, Length } from '../style/types.js';
|
|
5
|
+
import { type LineStyle } from './line.js';
|
|
6
|
+
/**
|
|
7
|
+
* Authored inputs for HorizontalLine, including the declared data and presentation options.
|
|
8
|
+
*
|
|
9
|
+
* @see {@link PibblEventHandlers}
|
|
10
|
+
* @see {@link PibblEventParticipationOptions}
|
|
11
|
+
* @see {@link PibblPhysics2DPropExtension}
|
|
12
|
+
* @see {@link HorizontalLine}
|
|
13
|
+
*/
|
|
14
|
+
export interface HorizontalLineProps extends PibblEventHandlers, PibblEventFocusOptions, PibblEventParticipationOptions, PibblPhysics2DPropExtension {
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Supported geometry and presentation properties for HorizontalLine.
|
|
18
|
+
*
|
|
19
|
+
* @see {@link SystemStyle}
|
|
20
|
+
* @see {@link BoxStyle}
|
|
21
|
+
* @see {@link LayoutItemStyle}
|
|
22
|
+
* @see {@link LineStyle}
|
|
23
|
+
* @see {@link Length}
|
|
24
|
+
* @see {@link PixelGridAlignment}
|
|
25
|
+
* @see {@link HorizontalLine}
|
|
26
|
+
*/
|
|
27
|
+
export interface HorizontalLineStyle extends SystemStyle, BoxStyle, LayoutItemStyle, Omit<LineStyle, 'coords'> {
|
|
28
|
+
/**
|
|
29
|
+
* Vertical coordinate or displacement in the containing coordinate system. See {@link Length}.
|
|
30
|
+
*/
|
|
31
|
+
y: Exclude<Length, 'auto'>;
|
|
32
|
+
/** Horizontal coordinate of the first endpoint. See {@link Length}. */
|
|
33
|
+
x1?: Exclude<Length, 'auto'>;
|
|
34
|
+
/** Horizontal coordinate of the second endpoint. See {@link Length}. */
|
|
35
|
+
x2?: Exclude<Length, 'auto'>;
|
|
36
|
+
/**
|
|
37
|
+
* Pixel-grid alignment policy applied to the resolved geometry. See {@link PixelGridAlignment}.
|
|
38
|
+
*/
|
|
39
|
+
alignToPixelGrid?: PixelGridAlignment;
|
|
40
|
+
/**
|
|
41
|
+
* Width used for line hit testing independently of the visible stroke width. See
|
|
42
|
+
* {@link HorizontalLineStyle}.
|
|
43
|
+
*/
|
|
44
|
+
lineInteractionWidth?: number;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Describes a horizontal-line primitive for JSX or createElement authoring.
|
|
48
|
+
*
|
|
49
|
+
* @param props - Authored component inputs, supplied through JSX or createElement. See the linked
|
|
50
|
+
* props and style types.
|
|
51
|
+
* @throws When called directly; Pibbl mounts this component through JSX or createElement.
|
|
52
|
+
*
|
|
53
|
+
* @see {@link HorizontalLineProps}
|
|
54
|
+
* @see {@link HorizontalLineStyle}
|
|
55
|
+
*/
|
|
56
|
+
export declare const HorizontalLine: import("@pibbl/core").PibblPrimitiveComponent<HorizontalLineProps, import("@pibbl/core").PrimitiveInput<HorizontalLineProps, HorizontalLineStyle>>;
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { definePrimitive } from "../define-primitive.js";
|
|
2
|
+
import { adjustForPixelGrid } from "../util/pixel-grid-adjustments.js";
|
|
3
|
+
import {
|
|
4
|
+
resolveLocalOffset,
|
|
5
|
+
resolveRequiredLength,
|
|
6
|
+
stripLayoutParticipation
|
|
7
|
+
} from "../style/resolve-built-in.js";
|
|
8
|
+
import { registerOpaqueStyleProperties } from "../style/resolve-dispatch.js";
|
|
9
|
+
import { renderLine } from "./line.js";
|
|
10
|
+
function renderHorizontalLine(props, style, ctx) {
|
|
11
|
+
const {
|
|
12
|
+
y: initialY,
|
|
13
|
+
x1 = 0,
|
|
14
|
+
x2 = ctx.canvas.width,
|
|
15
|
+
alignToPixelGrid = "none",
|
|
16
|
+
stroke,
|
|
17
|
+
strokeWidth,
|
|
18
|
+
opacity,
|
|
19
|
+
cursor,
|
|
20
|
+
lineInteractionWidth
|
|
21
|
+
} = style;
|
|
22
|
+
const y = adjustForPixelGrid(
|
|
23
|
+
initialY,
|
|
24
|
+
strokeWidth,
|
|
25
|
+
alignToPixelGrid
|
|
26
|
+
);
|
|
27
|
+
const coords = [
|
|
28
|
+
[x1, y],
|
|
29
|
+
[x2, y]
|
|
30
|
+
];
|
|
31
|
+
return renderLine(
|
|
32
|
+
props,
|
|
33
|
+
{
|
|
34
|
+
coords,
|
|
35
|
+
stroke,
|
|
36
|
+
strokeWidth,
|
|
37
|
+
opacity,
|
|
38
|
+
cursor,
|
|
39
|
+
lineInteractionWidth
|
|
40
|
+
},
|
|
41
|
+
ctx
|
|
42
|
+
);
|
|
43
|
+
}
|
|
44
|
+
const HorizontalLine = definePrimitive(renderHorizontalLine, {
|
|
45
|
+
resolveStyle: (style, context) => ({
|
|
46
|
+
...stripLayoutParticipation(style),
|
|
47
|
+
y: resolveRequiredLength(
|
|
48
|
+
style.y,
|
|
49
|
+
context.percentageBasis.height,
|
|
50
|
+
"y",
|
|
51
|
+
context
|
|
52
|
+
),
|
|
53
|
+
x1: resolveLocalOffset(
|
|
54
|
+
style.x1,
|
|
55
|
+
context.percentageBasis.width,
|
|
56
|
+
"x1",
|
|
57
|
+
context
|
|
58
|
+
),
|
|
59
|
+
x2: resolveRequiredLength(
|
|
60
|
+
style.x2 ?? context.allocation.width,
|
|
61
|
+
context.percentageBasis.width,
|
|
62
|
+
"x2",
|
|
63
|
+
context
|
|
64
|
+
)
|
|
65
|
+
})
|
|
66
|
+
});
|
|
67
|
+
registerOpaqueStyleProperties(HorizontalLine, ["stroke", "cursor"]);
|
|
68
|
+
export {
|
|
69
|
+
HorizontalLine
|
|
70
|
+
};
|
|
71
|
+
//# sourceMappingURL=horizontal-line.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/lib/components/horizontal-line.ts"],
|
|
4
|
+
"sourcesContent": ["import { definePrimitive } from '../define-primitive.js';\nimport type {\n PibblEventFocusOptions,\n PibblEventHandlers,\n PibblEventParticipationOptions,\n} from '../events/types.js';\nimport {\n PixelGridAlignment,\n RenderingContext2D,\n SystemStyle,\n} from '../types.js';\nimport type { PibblPhysics2DPropExtension } from '../types.js';\nimport { adjustForPixelGrid } from '../util/pixel-grid-adjustments.js';\nimport {\n resolveLocalOffset,\n resolveRequiredLength,\n stripLayoutParticipation,\n} from '../style/resolve-built-in.js';\nimport { registerOpaqueStyleProperties } from '../style/resolve-dispatch.js';\nimport type {\n BoxStyle,\n LayoutItemStyle,\n Length,\n ResolvedDrawingStyle,\n} from '../style/types.js';\nimport { renderLine, type LineStyle } from './line.js';\n\n/**\n * Authored inputs for HorizontalLine, including the declared data and presentation options.\n *\n * @see {@link PibblEventHandlers}\n * @see {@link PibblEventParticipationOptions}\n * @see {@link PibblPhysics2DPropExtension}\n * @see {@link HorizontalLine}\n */\nexport interface HorizontalLineProps\n extends PibblEventHandlers, PibblEventFocusOptions, PibblEventParticipationOptions, PibblPhysics2DPropExtension {}\n\n/**\n * Supported geometry and presentation properties for HorizontalLine.\n *\n * @see {@link SystemStyle}\n * @see {@link BoxStyle}\n * @see {@link LayoutItemStyle}\n * @see {@link LineStyle}\n * @see {@link Length}\n * @see {@link PixelGridAlignment}\n * @see {@link HorizontalLine}\n */\nexport interface HorizontalLineStyle\n extends SystemStyle, BoxStyle, LayoutItemStyle, Omit<LineStyle, 'coords'> {\n /**\n * Vertical coordinate or displacement in the containing coordinate system. See {@link Length}.\n */\n y: Exclude<Length, 'auto'>;\n /** Horizontal coordinate of the first endpoint. See {@link Length}. */\n x1?: Exclude<Length, 'auto'>;\n /** Horizontal coordinate of the second endpoint. See {@link Length}. */\n x2?: Exclude<Length, 'auto'>;\n /**\n * Pixel-grid alignment policy applied to the resolved geometry. See {@link PixelGridAlignment}.\n */\n alignToPixelGrid?: PixelGridAlignment;\n /**\n * Width used for line hit testing independently of the visible stroke width. See\n * {@link HorizontalLineStyle}.\n */\n lineInteractionWidth?: number;\n}\n\ntype ResolvedHorizontalLineStyle = ResolvedDrawingStyle<HorizontalLineStyle> & {\n y: number;\n x1: number;\n x2: number;\n};\n\nfunction renderHorizontalLine(\n props: HorizontalLineProps,\n style: Readonly<ResolvedHorizontalLineStyle>,\n ctx: RenderingContext2D,\n) {\n const {\n y: initialY,\n x1 = 0,\n x2 = ctx.canvas.width,\n alignToPixelGrid = 'none',\n stroke,\n strokeWidth,\n opacity,\n cursor,\n lineInteractionWidth,\n } = style;\n const y = adjustForPixelGrid(\n initialY,\n strokeWidth,\n alignToPixelGrid,\n );\n const coords: [number, number][] = [\n [x1, y],\n [x2, y],\n ];\n return renderLine(\n props,\n {\n coords,\n stroke,\n strokeWidth,\n opacity,\n cursor,\n lineInteractionWidth,\n },\n ctx,\n );\n}\n\n/**\n * Describes a horizontal-line primitive for JSX or createElement authoring.\n *\n * @param props - Authored component inputs, supplied through JSX or createElement. See the linked\n * props and style types.\n * @throws When called directly; Pibbl mounts this component through JSX or createElement.\n *\n * @see {@link HorizontalLineProps}\n * @see {@link HorizontalLineStyle}\n */\nexport const HorizontalLine = definePrimitive<\n HorizontalLineProps,\n HorizontalLineStyle,\n HorizontalLineStyle,\n ResolvedHorizontalLineStyle\n>(renderHorizontalLine, {\n resolveStyle: (style, context) => ({\n ...stripLayoutParticipation(style),\n y: resolveRequiredLength(\n style.y,\n context.percentageBasis.height,\n 'y',\n context,\n ),\n x1: resolveLocalOffset(\n style.x1,\n context.percentageBasis.width,\n 'x1',\n context,\n ),\n x2: resolveRequiredLength(\n style.x2 ?? context.allocation.width,\n context.percentageBasis.width,\n 'x2',\n context,\n ),\n }) as ResolvedHorizontalLineStyle,\n});\nregisterOpaqueStyleProperties(HorizontalLine, ['stroke', 'cursor']);\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,uBAAuB;AAYhC,SAAS,0BAA0B;AACnC;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,qCAAqC;AAO9C,SAAS,kBAAkC;AAmD3C,SAAS,qBACP,OACA,OACA,KACA;AACA,QAAM;AAAA,IACJ,GAAG;AAAA,IACH,KAAK;AAAA,IACL,KAAK,IAAI,OAAO;AAAA,IAChB,mBAAmB;AAAA,IACnB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI;AACJ,QAAM,IAAI;AAAA,IACR;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACA,QAAM,SAA6B;AAAA,IACjC,CAAC,IAAI,CAAC;AAAA,IACN,CAAC,IAAI,CAAC;AAAA,EACR;AACA,SAAO;AAAA,IACL;AAAA,IACA;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,IACA;AAAA,EACF;AACF;AAYO,MAAM,iBAAiB,gBAK5B,sBAAsB;AAAA,EACtB,cAAc,CAAC,OAAO,aAAa;AAAA,IACjC,GAAG,yBAAyB,KAAK;AAAA,IACjC,GAAG;AAAA,MACD,MAAM;AAAA,MACN,QAAQ,gBAAgB;AAAA,MACxB;AAAA,MACA;AAAA,IACF;AAAA,IACA,IAAI;AAAA,MACF,MAAM;AAAA,MACN,QAAQ,gBAAgB;AAAA,MACxB;AAAA,MACA;AAAA,IACF;AAAA,IACA,IAAI;AAAA,MACF,MAAM,MAAM,QAAQ,WAAW;AAAA,MAC/B,QAAQ,gBAAgB;AAAA,MACxB;AAAA,MACA;AAAA,IACF;AAAA,EACF;AACF,CAAC;AACD,8BAA8B,gBAAgB,CAAC,UAAU,QAAQ,CAAC;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { HtmlMountCallback } from "../html/types.js";
|
|
2
|
+
import type { HtmlBoxProps, HtmlBoxStyle } from '../html/types.js';
|
|
3
|
+
import type { PibblRenderResult, PrimitiveInput } from '../types.js';
|
|
4
|
+
type HtmlBoxInput<Props> = Omit<PrimitiveInput<HtmlBoxProps<Props>, HtmlBoxStyle>, 'data' | 'mount'> & Pick<HtmlBoxProps<Props>, 'data' | 'mount'>;
|
|
5
|
+
type HtmlBoxComponent = {
|
|
6
|
+
<Props>(props: HtmlBoxInput<Props>): PibblRenderResult;
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* A persistent native HTML box projected into Pibbl layout, transforms and clips.
|
|
10
|
+
*
|
|
11
|
+
* @see {@link HtmlBoxProps}
|
|
12
|
+
* @see {@link HtmlBoxStyle}
|
|
13
|
+
* @see {@link HtmlMountCallback}
|
|
14
|
+
*/
|
|
15
|
+
export declare const HtmlBox: HtmlBoxComponent;
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { definePrimitive } from "../define-primitive.js";
|
|
2
|
+
import { GLOBAL_STATE } from "../global-state.js";
|
|
3
|
+
import { resolveBox } from "../layout/box.js";
|
|
4
|
+
import { createGroupTransform, setPrimitivePresentation } from "../primitive-presentation.js";
|
|
5
|
+
import { getCurrentWorldTransform } from "../render-target.js";
|
|
6
|
+
import { registerOpaquePrimitiveProps } from "../element/metadata.js";
|
|
7
|
+
import { requireHtmlService, snapshotClips } from "../html/html-service.js";
|
|
8
|
+
import { stripLayoutParticipation } from "../style/resolve-built-in.js";
|
|
9
|
+
function renderHtmlBox(props, style, ctx) {
|
|
10
|
+
const refs = GLOBAL_STATE.componentRefs;
|
|
11
|
+
const owner = GLOBAL_STATE.currentPibblInstance;
|
|
12
|
+
const service = requireHtmlService(owner);
|
|
13
|
+
let slot = refs.refs[0];
|
|
14
|
+
if (!slot || slot.disposed) {
|
|
15
|
+
if (typeof props.mount !== "function") throw new TypeError("HtmlBox mount must be a function.");
|
|
16
|
+
slot = { owner, mount: props.mount, disposed: false, region: { identity: {}, owner, content: void 0, rootBounds: void 0, active: true } };
|
|
17
|
+
const stable = slot;
|
|
18
|
+
stable.region = { ...stable.region, onFocusSnapshot(snapshot) {
|
|
19
|
+
queueMicrotask(() => {
|
|
20
|
+
if (!stable.disposed) stable.callback?.(snapshot);
|
|
21
|
+
});
|
|
22
|
+
} };
|
|
23
|
+
refs.refs[0] = slot;
|
|
24
|
+
refs.teardowns.add(() => service.release(stable));
|
|
25
|
+
}
|
|
26
|
+
const opacity = style.opacity ?? 1;
|
|
27
|
+
if (!Number.isFinite(opacity) || opacity < 0 || opacity > 1) throw new RangeError("HtmlBox opacity must be between 0 and 1.");
|
|
28
|
+
service.register({
|
|
29
|
+
slot,
|
|
30
|
+
data: props.data,
|
|
31
|
+
matrix: getCurrentWorldTransform(),
|
|
32
|
+
clips: snapshotClips(GLOBAL_STATE.clippingStack),
|
|
33
|
+
border: style.borderBox,
|
|
34
|
+
content: style.contentBox,
|
|
35
|
+
opacity: ctx.globalAlpha * opacity,
|
|
36
|
+
interactive: props.pointerEvents !== "none",
|
|
37
|
+
overflow: style.overflow ?? "clip",
|
|
38
|
+
onFocusChange: props.onFocusChange
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
const primitive = definePrimitive(renderHtmlBox, {
|
|
42
|
+
resolveStyle(style, context) {
|
|
43
|
+
const box = resolveBox({
|
|
44
|
+
...style,
|
|
45
|
+
width: style.width === void 0 || style.width === "auto" ? context.allocation.width : style.width,
|
|
46
|
+
height: style.height === void 0 || style.height === "auto" ? context.allocation.height : style.height
|
|
47
|
+
}, context.constraints, { component: "HtmlBox" });
|
|
48
|
+
return { ...stripLayoutParticipation(style), ...box, overflow: style.overflow ?? "clip" };
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
registerOpaquePrimitiveProps(primitive, ["data"]);
|
|
52
|
+
setPrimitivePresentation(primitive, (style) => ({ transform: createGroupTransform(style) }));
|
|
53
|
+
const HtmlBox = primitive;
|
|
54
|
+
export {
|
|
55
|
+
HtmlBox
|
|
56
|
+
};
|
|
57
|
+
//# sourceMappingURL=html-box.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/lib/components/html-box.ts"],
|
|
4
|
+
"sourcesContent": ["import type { HtmlMountCallback } from '../html/types.js';\nimport type { ResolvedDrawingStyle } from '../style/types.js';\nimport { definePrimitive } from '../define-primitive.js';\nimport { GLOBAL_STATE } from '../global-state.js';\nimport { resolveBox } from '../layout/box.js';\nimport type { LayoutBox } from '../layout/types.js';\nimport { createGroupTransform, setPrimitivePresentation } from '../primitive-presentation.js';\nimport { getCurrentWorldTransform } from '../render-target.js';\nimport { registerOpaquePrimitiveProps } from '../element/metadata.js';\nimport { requireHtmlService, snapshotClips } from '../html/html-service.js';\nimport type { HtmlBoxProps, HtmlBoxSlot, HtmlBoxStyle } from '../html/types.js';\nimport type { PibblRenderResult, PrimitiveInput, RenderingContext2D } from '../types.js';\nimport { stripLayoutParticipation } from '../style/resolve-built-in.js';\n\ntype Resolved = ResolvedDrawingStyle<HtmlBoxStyle> & {\n borderBox: Readonly<LayoutBox>; contentBox: Readonly<LayoutBox>; overflow: 'visible' | 'clip';\n};\n\nfunction renderHtmlBox(props: HtmlBoxProps<unknown>, style: Readonly<Resolved>, ctx: RenderingContext2D): void {\n const refs = GLOBAL_STATE.componentRefs!;\n const owner = GLOBAL_STATE.currentPibblInstance!;\n const service = requireHtmlService(owner);\n let slot = refs.refs[0] as HtmlBoxSlot | undefined;\n if (!slot || slot.disposed) {\n if (typeof props.mount !== 'function') throw new TypeError('HtmlBox mount must be a function.');\n slot = { owner, mount: props.mount, disposed: false, region: { identity: {}, owner, content: undefined, rootBounds: undefined, active: true } };\n const stable = slot;\n stable.region = { ...stable.region, onFocusSnapshot(snapshot) {\n queueMicrotask(() => { if (!stable.disposed) stable.callback?.(snapshot); });\n } };\n refs.refs[0] = slot;\n refs.teardowns.add(() => service.release(stable));\n }\n const opacity = style.opacity ?? 1;\n if (!Number.isFinite(opacity) || opacity < 0 || opacity > 1) throw new RangeError('HtmlBox opacity must be between 0 and 1.');\n service.register({ slot, data: props.data, matrix: getCurrentWorldTransform(),\n clips: snapshotClips(GLOBAL_STATE.clippingStack), border: style.borderBox, content: style.contentBox,\n opacity: ctx.globalAlpha * opacity, interactive: props.pointerEvents !== 'none', overflow: style.overflow ?? 'clip', onFocusChange: props.onFocusChange });\n}\n\nconst primitive = definePrimitive<HtmlBoxProps<unknown>, HtmlBoxStyle, HtmlBoxStyle, Resolved>(renderHtmlBox, {\n resolveStyle(style, context) {\n const box = resolveBox({ ...style, width: style.width === undefined || style.width === 'auto' ? context.allocation.width : style.width,\n height: style.height === undefined || style.height === 'auto' ? context.allocation.height : style.height }, context.constraints, { component: 'HtmlBox' });\n return { ...stripLayoutParticipation(style), ...box, overflow: style.overflow ?? 'clip' } as Resolved;\n },\n});\n\nregisterOpaquePrimitiveProps(primitive, ['data']);\nsetPrimitivePresentation<Resolved>(primitive, style => ({ transform: createGroupTransform(style) }));\n\ntype HtmlBoxInput<Props> = Omit<PrimitiveInput<HtmlBoxProps<Props>, HtmlBoxStyle>, 'data' | 'mount'> & Pick<HtmlBoxProps<Props>, 'data' | 'mount'>;\ntype HtmlBoxComponent = {\n <Props>(props: HtmlBoxInput<Props>): PibblRenderResult;\n};\n/**\n * A persistent native HTML box projected into Pibbl layout, transforms and clips.\n *\n * @see {@link HtmlBoxProps}\n * @see {@link HtmlBoxStyle}\n * @see {@link HtmlMountCallback}\n */\nexport const HtmlBox = primitive as HtmlBoxComponent;\n"],
|
|
5
|
+
"mappings": "AAEA,SAAS,uBAAuB;AAChC,SAAS,oBAAoB;AAC7B,SAAS,kBAAkB;AAE3B,SAAS,sBAAsB,gCAAgC;AAC/D,SAAS,gCAAgC;AACzC,SAAS,oCAAoC;AAC7C,SAAS,oBAAoB,qBAAqB;AAGlD,SAAS,gCAAgC;AAMzC,SAAS,cAAc,OAA8B,OAA2B,KAA+B;AAC7G,QAAM,OAAO,aAAa;AAC1B,QAAM,QAAQ,aAAa;AAC3B,QAAM,UAAU,mBAAmB,KAAK;AACxC,MAAI,OAAO,KAAK,KAAK,CAAC;AACtB,MAAI,CAAC,QAAQ,KAAK,UAAU;AAC1B,QAAI,OAAO,MAAM,UAAU,WAAY,OAAM,IAAI,UAAU,mCAAmC;AAC9F,WAAO,EAAE,OAAO,OAAO,MAAM,OAAO,UAAU,OAAO,QAAQ,EAAE,UAAU,CAAC,GAAG,OAAO,SAAS,QAAW,YAAY,QAAW,QAAQ,KAAK,EAAE;AAC9I,UAAM,SAAS;AACf,WAAO,SAAS,EAAE,GAAG,OAAO,QAAQ,gBAAgB,UAAU;AAC5D,qBAAe,MAAM;AAAE,YAAI,CAAC,OAAO,SAAU,QAAO,WAAW,QAAQ;AAAA,MAAG,CAAC;AAAA,IAC7E,EAAE;AACF,SAAK,KAAK,CAAC,IAAI;AACf,SAAK,UAAU,IAAI,MAAM,QAAQ,QAAQ,MAAM,CAAC;AAAA,EAClD;AACA,QAAM,UAAU,MAAM,WAAW;AACjC,MAAI,CAAC,OAAO,SAAS,OAAO,KAAK,UAAU,KAAK,UAAU,EAAG,OAAM,IAAI,WAAW,0CAA0C;AAC5H,UAAQ,SAAS;AAAA,IAAE;AAAA,IAAM,MAAM,MAAM;AAAA,IAAM,QAAQ,yBAAyB;AAAA,IAC1E,OAAO,cAAc,aAAa,aAAa;AAAA,IAAG,QAAQ,MAAM;AAAA,IAAW,SAAS,MAAM;AAAA,IAC1F,SAAS,IAAI,cAAc;AAAA,IAAS,aAAa,MAAM,kBAAkB;AAAA,IAAQ,UAAU,MAAM,YAAY;AAAA,IAAQ,eAAe,MAAM;AAAA,EAAc,CAAC;AAC7J;AAEA,MAAM,YAAY,gBAA6E,eAAe;AAAA,EAC5G,aAAa,OAAO,SAAS;AAC3B,UAAM,MAAM,WAAW;AAAA,MAAE,GAAG;AAAA,MAAO,OAAO,MAAM,UAAU,UAAa,MAAM,UAAU,SAAS,QAAQ,WAAW,QAAQ,MAAM;AAAA,MAC/H,QAAQ,MAAM,WAAW,UAAa,MAAM,WAAW,SAAS,QAAQ,WAAW,SAAS,MAAM;AAAA,IAAO,GAAG,QAAQ,aAAa,EAAE,WAAW,UAAU,CAAC;AAC3J,WAAO,EAAE,GAAG,yBAAyB,KAAK,GAAG,GAAG,KAAK,UAAU,MAAM,YAAY,OAAO;AAAA,EAC1F;AACF,CAAC;AAED,6BAA6B,WAAW,CAAC,MAAM,CAAC;AAChD,yBAAmC,WAAW,YAAU,EAAE,WAAW,qBAAqB,KAAK,EAAE,EAAE;AAa5F,MAAM,UAAU;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { PibblEventFocusOptions, PibblEventHandlers, PibblEventParticipationOptions } from '../events/types.js';
|
|
2
|
+
import type { PibblPhysics2DPropExtension } from '../types.js';
|
|
3
|
+
import type { ImgStyle } from '../style/types.js';
|
|
4
|
+
/**
|
|
5
|
+
* Authored inputs for Image, including the declared data and presentation options.
|
|
6
|
+
*
|
|
7
|
+
* @see {@link PibblEventHandlers}
|
|
8
|
+
* @see {@link PibblEventParticipationOptions}
|
|
9
|
+
* @see {@link PibblPhysics2DPropExtension}
|
|
10
|
+
* @see {@link Image}
|
|
11
|
+
*/
|
|
12
|
+
export interface ImageProps extends PibblEventHandlers, PibblEventFocusOptions, PibblEventParticipationOptions, PibblPhysics2DPropExtension {
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Describes a Canvas image primitive for JSX or createElement authoring.
|
|
16
|
+
*
|
|
17
|
+
* @param props - Authored component inputs, supplied through JSX or createElement. See the linked
|
|
18
|
+
* props and style types.
|
|
19
|
+
* @throws When called directly; Pibbl mounts this component through JSX or createElement.
|
|
20
|
+
*
|
|
21
|
+
* @see {@link ImageProps}
|
|
22
|
+
* @see {@link ImgStyle}
|
|
23
|
+
*/
|
|
24
|
+
export declare const Image: import("@pibbl/core").PibblPrimitiveComponent<ImageProps, import("@pibbl/core").PrimitiveInput<ImageProps, ImgStyle>>;
|