animl 0.0.0-stage → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/NOTICE +34 -0
- package/README.md +56 -2
- package/modules/a11y/core/bounds.d.ts +8 -0
- package/modules/a11y/core/bounds.js +326 -0
- package/modules/a11y/core/commands.d.ts +3 -0
- package/modules/a11y/core/commands.js +103 -0
- package/modules/a11y/core/index.d.ts +6 -0
- package/modules/a11y/core/index.js +34 -0
- package/modules/a11y/core/registry.d.ts +6 -0
- package/modules/a11y/core/registry.js +48 -0
- package/modules/a11y/core/runtime.d.ts +37 -0
- package/modules/a11y/core/runtime.js +201 -0
- package/modules/a11y/core/svg.d.ts +2 -0
- package/modules/a11y/core/svg.js +4 -0
- package/modules/a11y/core/text.d.ts +4 -0
- package/modules/a11y/core/text.js +55 -0
- package/modules/a11y/core/tree.d.ts +2 -0
- package/modules/a11y/core/tree.js +4 -0
- package/modules/a11y/core/types.d.ts +72 -0
- package/modules/a11y/core/types.js +0 -0
- package/modules/a11y/core/validate.d.ts +4 -0
- package/modules/a11y/core/validate.js +91 -0
- package/modules/a11y/manifest.d.ts +51 -0
- package/modules/a11y/manifest.js +51 -0
- package/modules/a11y/markup/index.d.ts +1 -0
- package/modules/a11y/markup/index.js +4 -0
- package/modules/a11y/web/bounds.d.ts +1 -0
- package/modules/a11y/web/bounds.js +31 -0
- package/modules/a11y/web/index.d.ts +1 -0
- package/modules/a11y/web/index.js +3 -0
- package/modules/a11y/web/markup.d.ts +1 -0
- package/modules/a11y/web/markup.js +3 -0
- package/modules/a11y/web/text.d.ts +1 -0
- package/modules/a11y/web/text.js +6 -0
- package/modules/a11y-actions/core/diff.d.ts +2 -0
- package/modules/a11y-actions/core/diff.js +24 -0
- package/modules/a11y-actions/core/index.d.ts +4 -0
- package/modules/a11y-actions/core/index.js +133 -0
- package/modules/a11y-actions/manifest.d.ts +29 -0
- package/modules/a11y-actions/manifest.js +25 -0
- package/modules/a11y-actions/web/index.d.ts +1 -0
- package/modules/a11y-actions/web/index.js +4 -0
- package/modules/a11y-dom/web/index.d.ts +11 -0
- package/modules/a11y-dom/web/index.js +250 -0
- package/modules/a11y-dom/web/navigation.d.ts +1 -0
- package/modules/a11y-dom/web/navigation.js +93 -0
- package/modules/assetio/web/index.d.ts +1 -0
- package/modules/assetio/web/index.js +97 -0
- package/modules/assets/core/index.d.ts +32 -0
- package/modules/assets/core/index.js +255 -0
- package/modules/assets/core/svg.d.ts +2 -0
- package/modules/assets/core/svg.js +53 -0
- package/modules/assets/manifest.d.ts +34 -0
- package/modules/assets/manifest.js +82 -0
- package/modules/assets/web/index.d.ts +10 -0
- package/modules/assets/web/index.js +7 -0
- package/modules/bind/capabilities/data-bind-listener-actions/registry.d.ts +2 -0
- package/modules/bind/capabilities/data-bind-listener-actions/registry.js +28 -0
- package/modules/bind/core/expression.d.ts +25 -0
- package/modules/bind/core/expression.js +165 -0
- package/modules/bind/core/index.d.ts +7 -0
- package/modules/bind/core/index.js +143 -0
- package/modules/bind/manifest.d.ts +48 -0
- package/modules/bind/manifest.js +61 -0
- package/modules/bind/markup/index.d.ts +6 -0
- package/modules/bind/markup/index.js +21 -0
- package/modules/bind/web/index.d.ts +1 -0
- package/modules/bind/web/index.js +3 -0
- package/modules/bind/web/markup.d.ts +1 -0
- package/modules/bind/web/markup.js +3 -0
- package/modules/canvas/web/index.d.ts +12 -0
- package/modules/canvas/web/index.js +19 -0
- package/modules/canvas/web/renderer.d.ts +18 -0
- package/modules/canvas/web/renderer.js +743 -0
- package/modules/canvas/web/sources.d.ts +6 -0
- package/modules/canvas/web/sources.js +0 -0
- package/modules/colormix/core/index.d.ts +15 -0
- package/modules/colormix/core/index.js +115 -0
- package/modules/colormix/core/svg.d.ts +2 -0
- package/modules/colormix/core/svg.js +19 -0
- package/modules/colormix/manifest.d.ts +40 -0
- package/modules/colormix/manifest.js +42 -0
- package/modules/colormix/markup/index.d.ts +1 -0
- package/modules/colormix/markup/index.js +4 -0
- package/modules/colormix/web/index.d.ts +1 -0
- package/modules/colormix/web/index.js +49 -0
- package/modules/colormix/web/markup.d.ts +1 -0
- package/modules/colormix/web/markup.js +3 -0
- package/modules/componentpaint/capabilities/drawing-paint-paint-artboard/registry.d.ts +2 -0
- package/modules/componentpaint/capabilities/drawing-paint-paint-artboard/registry.js +9 -0
- package/modules/componentpaint/core/index.d.ts +17 -0
- package/modules/componentpaint/core/index.js +241 -0
- package/modules/componentpaint/core/svg.d.ts +2 -0
- package/modules/componentpaint/core/svg.js +67 -0
- package/modules/componentpaint/manifest.d.ts +29 -0
- package/modules/componentpaint/manifest.js +33 -0
- package/modules/componentpaint/web/index.d.ts +1 -0
- package/modules/componentpaint/web/index.js +40 -0
- package/modules/components/core/events.d.ts +7 -0
- package/modules/components/core/events.js +8 -0
- package/modules/components/core/index.d.ts +25 -0
- package/modules/components/core/index.js +543 -0
- package/modules/components/core/names.d.ts +2 -0
- package/modules/components/core/names.js +14 -0
- package/modules/components/core/node-pointer.d.ts +3 -0
- package/modules/components/core/node-pointer.js +8 -0
- package/modules/components/core/svg.d.ts +2 -0
- package/modules/components/core/svg.js +9 -0
- package/modules/components/manifest.d.ts +51 -0
- package/modules/components/manifest.js +64 -0
- package/modules/components/markup/index.d.ts +12 -0
- package/modules/components/markup/index.js +123 -0
- package/modules/components/web/index.d.ts +1 -0
- package/modules/components/web/index.js +8 -0
- package/modules/components/web/markup.d.ts +1 -0
- package/modules/components/web/markup.js +6 -0
- package/modules/composite/core/index.d.ts +7 -0
- package/modules/composite/core/index.js +314 -0
- package/modules/composite/core/svg.d.ts +2 -0
- package/modules/composite/core/svg.js +249 -0
- package/modules/composite/manifest.d.ts +33 -0
- package/modules/composite/manifest.js +53 -0
- package/modules/composite/web/index.d.ts +1 -0
- package/modules/composite/web/index.js +17 -0
- package/modules/contour/core/effects.d.ts +23 -0
- package/modules/contour/core/effects.js +242 -0
- package/modules/contour/core/index.d.ts +17 -0
- package/modules/contour/core/index.js +160 -0
- package/modules/contour/core/svg.d.ts +2 -0
- package/modules/contour/core/svg.js +47 -0
- package/modules/contour/core/winding.d.ts +3 -0
- package/modules/contour/core/winding.js +95 -0
- package/modules/contour/manifest.d.ts +31 -0
- package/modules/contour/manifest.js +50 -0
- package/modules/contour/markup/index.d.ts +1 -0
- package/modules/contour/markup/index.js +0 -0
- package/modules/contour/web/index.d.ts +1 -0
- package/modules/contour/web/index.js +5 -0
- package/modules/convert/core/converters.d.ts +4 -0
- package/modules/convert/core/converters.js +253 -0
- package/modules/convert/core/index.d.ts +13 -0
- package/modules/convert/core/index.js +226 -0
- package/modules/convert/core/integration.d.ts +3 -0
- package/modules/convert/core/integration.js +63 -0
- package/modules/convert/core/math.d.ts +14 -0
- package/modules/convert/core/math.js +110 -0
- package/modules/convert/core/registry.d.ts +4 -0
- package/modules/convert/core/registry.js +40 -0
- package/modules/convert/core/types.d.ts +37 -0
- package/modules/convert/core/types.js +35 -0
- package/modules/convert/manifest.d.ts +43 -0
- package/modules/convert/manifest.js +56 -0
- package/modules/convert/markup/index.d.ts +7 -0
- package/modules/convert/markup/index.js +23 -0
- package/modules/convert/web/index.d.ts +1 -0
- package/modules/convert/web/index.js +3 -0
- package/modules/convert/web/markup.d.ts +1 -0
- package/modules/convert/web/markup.js +3 -0
- package/modules/corners/core/index.d.ts +6 -0
- package/modules/corners/core/index.js +64 -0
- package/modules/corners/core/outline.d.ts +3 -0
- package/modules/corners/core/outline.js +20 -0
- package/modules/corners/web/index.d.ts +1 -0
- package/modules/corners/web/index.js +3 -0
- package/modules/data/core/bindings.d.ts +5 -0
- package/modules/data/core/bindings.js +147 -0
- package/modules/data/core/compile.d.ts +5 -0
- package/modules/data/core/compile.js +347 -0
- package/modules/data/core/custom.d.ts +3 -0
- package/modules/data/core/custom.js +40 -0
- package/modules/data/core/enums.d.ts +1 -0
- package/modules/data/core/enums.js +31 -0
- package/modules/data/core/errors.d.ts +16 -0
- package/modules/data/core/errors.js +19 -0
- package/modules/data/core/guards.d.ts +3 -0
- package/modules/data/core/guards.js +38 -0
- package/modules/data/core/index.d.ts +18 -0
- package/modules/data/core/index.js +284 -0
- package/modules/data/core/registry.d.ts +17 -0
- package/modules/data/core/registry.js +95 -0
- package/modules/data/core/storage.d.ts +30 -0
- package/modules/data/core/storage.js +109 -0
- package/modules/data/core/types.d.ts +78 -0
- package/modules/data/core/types.js +27 -0
- package/modules/data/manifest.d.ts +34 -0
- package/modules/data/manifest.js +114 -0
- package/modules/data/markup/index.d.ts +16 -0
- package/modules/data/markup/index.js +100 -0
- package/modules/data/web/index.d.ts +2 -0
- package/modules/data/web/index.js +8 -0
- package/modules/data-artboard/capabilities/data-host-artboard/registry.d.ts +2 -0
- package/modules/data-artboard/capabilities/data-host-artboard/registry.js +23 -0
- package/modules/data-artboard/core/index.d.ts +21 -0
- package/modules/data-artboard/core/index.js +193 -0
- package/modules/data-artboard/core/schema.d.ts +3 -0
- package/modules/data-artboard/core/schema.js +27 -0
- package/modules/data-artboard/manifest.d.ts +41 -0
- package/modules/data-artboard/manifest.js +44 -0
- package/modules/data-artboard/markup/index.d.ts +2 -0
- package/modules/data-artboard/markup/index.js +12 -0
- package/modules/data-artboard/web/index.d.ts +1 -0
- package/modules/data-artboard/web/index.js +136 -0
- package/modules/data-artboard/web/markup.d.ts +1 -0
- package/modules/data-artboard/web/markup.js +5 -0
- package/modules/data-artboard/web/values.d.ts +8 -0
- package/modules/data-artboard/web/values.js +6 -0
- package/modules/data-host/core/index.d.ts +26 -0
- package/modules/data-host/core/index.js +130 -0
- package/modules/data-host/manifest.d.ts +28 -0
- package/modules/data-host/manifest.js +29 -0
- package/modules/data-host/web/index.d.ts +1 -0
- package/modules/data-host/web/index.js +3 -0
- package/modules/derive/core/index.d.ts +2 -0
- package/modules/derive/core/index.js +369 -0
- package/modules/derive/manifest.d.ts +26 -0
- package/modules/derive/manifest.js +28 -0
- package/modules/derive/web/index.d.ts +1 -0
- package/modules/derive/web/index.js +3 -0
- package/modules/devtools/web/index.d.ts +19 -0
- package/modules/devtools/web/index.js +58 -0
- package/modules/events/core/index.d.ts +16 -0
- package/modules/events/core/index.js +279 -0
- package/modules/events/core/svg.d.ts +2 -0
- package/modules/events/core/svg.js +4 -0
- package/modules/events/manifest.d.ts +37 -0
- package/modules/events/manifest.js +76 -0
- package/modules/events/markup/index.d.ts +6 -0
- package/modules/events/markup/index.js +30 -0
- package/modules/events/web/index.d.ts +16 -0
- package/modules/events/web/index.js +185 -0
- package/modules/focus/core/index.d.ts +43 -0
- package/modules/focus/core/index.js +318 -0
- package/modules/focus/core/svg.d.ts +2 -0
- package/modules/focus/core/svg.js +4 -0
- package/modules/focus/manifest.d.ts +31 -0
- package/modules/focus/manifest.js +50 -0
- package/modules/focus/markup/index.d.ts +1 -0
- package/modules/focus/markup/index.js +4 -0
- package/modules/focus/web/index.d.ts +7 -0
- package/modules/focus/web/index.js +166 -0
- package/modules/fonts/core/css.d.ts +20 -0
- package/modules/fonts/core/css.js +16 -0
- package/modules/fonts/core/index.d.ts +21 -0
- package/modules/fonts/core/index.js +56 -0
- package/modules/fonts/core/info.d.ts +37 -0
- package/modules/fonts/core/info.js +79 -0
- package/modules/fonts/core/opentype/binary.d.ts +21 -0
- package/modules/fonts/core/opentype/binary.js +68 -0
- package/modules/fonts/core/opentype/cff.d.ts +11 -0
- package/modules/fonts/core/opentype/cff.js +273 -0
- package/modules/fonts/core/opentype/features.d.ts +8 -0
- package/modules/fonts/core/opentype/features.js +103 -0
- package/modules/fonts/core/opentype/reader.d.ts +63 -0
- package/modules/fonts/core/opentype/reader.js +535 -0
- package/modules/fonts/core/opentype/variation.d.ts +3 -0
- package/modules/fonts/core/opentype/variation.js +164 -0
- package/modules/fonts/core/options.d.ts +6 -0
- package/modules/fonts/core/options.js +34 -0
- package/modules/fonts/core/svg.d.ts +2 -0
- package/modules/fonts/core/svg.js +13 -0
- package/modules/fonts/manifest.d.ts +51 -0
- package/modules/fonts/manifest.js +61 -0
- package/modules/fonts/markup/index.d.ts +1 -0
- package/modules/fonts/markup/index.js +0 -0
- package/modules/fonts/web/canvas.d.ts +1 -0
- package/modules/fonts/web/canvas.js +37 -0
- package/modules/fonts/web/consumer.d.ts +1 -0
- package/modules/fonts/web/consumer.js +90 -0
- package/modules/fonts/web/index.d.ts +53 -0
- package/modules/fonts/web/index.js +240 -0
- package/modules/fonts/web/info.d.ts +8 -0
- package/modules/fonts/web/info.js +40 -0
- package/modules/fonts/web/measure.d.ts +3 -0
- package/modules/fonts/web/measure.js +37 -0
- package/modules/fonts/web/options.d.ts +3 -0
- package/modules/fonts/web/options.js +60 -0
- package/modules/fonts/web/settings.d.ts +3 -0
- package/modules/fonts/web/settings.js +15 -0
- package/modules/fonts/web/text.d.ts +5 -0
- package/modules/fonts/web/text.js +54 -0
- package/modules/host/core/api.d.ts +97 -0
- package/modules/host/core/api.js +505 -0
- package/modules/host/core/errors.d.ts +13 -0
- package/modules/host/core/errors.js +31 -0
- package/modules/host/core/index.d.ts +8 -0
- package/modules/host/core/index.js +29 -0
- package/modules/host/manifest.d.ts +27 -0
- package/modules/host/manifest.js +23 -0
- package/modules/host/web/index.d.ts +8 -0
- package/modules/host/web/index.js +29 -0
- package/modules/host-edit/core/index.d.ts +57 -0
- package/modules/host-edit/core/index.js +266 -0
- package/modules/host-edit/manifest.d.ts +28 -0
- package/modules/host-edit/manifest.js +25 -0
- package/modules/host-edit/web/index.d.ts +14 -0
- package/modules/host-edit/web/index.js +204 -0
- package/modules/host-fit/web/index.d.ts +12 -0
- package/modules/host-fit/web/index.js +71 -0
- package/modules/host-fit/web/size.d.ts +4 -0
- package/modules/host-fit/web/size.js +44 -0
- package/modules/host-values/core/index.d.ts +30 -0
- package/modules/host-values/core/index.js +169 -0
- package/modules/host-values/web/index.d.ts +1 -0
- package/modules/host-values/web/index.js +3 -0
- package/modules/ik/core/index.d.ts +2 -0
- package/modules/ik/core/index.js +135 -0
- package/modules/ik/core/svg.d.ts +2 -0
- package/modules/ik/core/svg.js +4 -0
- package/modules/ik/manifest.d.ts +33 -0
- package/modules/ik/manifest.js +33 -0
- package/modules/ik/markup/index.d.ts +1 -0
- package/modules/ik/markup/index.js +0 -0
- package/modules/ik/web/index.d.ts +1 -0
- package/modules/ik/web/index.js +5 -0
- package/modules/input/core/commands.d.ts +3 -0
- package/modules/input/core/commands.js +55 -0
- package/modules/input/core/index.d.ts +7 -0
- package/modules/input/core/index.js +159 -0
- package/modules/input/core/registry.d.ts +5 -0
- package/modules/input/core/registry.js +59 -0
- package/modules/input/core/runtime.d.ts +65 -0
- package/modules/input/core/runtime.js +462 -0
- package/modules/input/core/svg.d.ts +2 -0
- package/modules/input/core/svg.js +4 -0
- package/modules/input/core/types.d.ts +53 -0
- package/modules/input/core/types.js +56 -0
- package/modules/input/core/values.d.ts +7 -0
- package/modules/input/core/values.js +9 -0
- package/modules/input/manifest.d.ts +31 -0
- package/modules/input/manifest.js +100 -0
- package/modules/input/markup/index.d.ts +1 -0
- package/modules/input/markup/index.js +4 -0
- package/modules/input/web/index.d.ts +24 -0
- package/modules/input/web/index.js +252 -0
- package/modules/input/web/mapping.d.ts +3 -0
- package/modules/input/web/mapping.js +20 -0
- package/modules/layout/core/algorithm.d.ts +21 -0
- package/modules/layout/core/algorithm.js +72 -0
- package/modules/layout/core/index.d.ts +20 -0
- package/modules/layout/core/index.js +439 -0
- package/modules/layout/core/reflow.d.ts +6 -0
- package/modules/layout/core/reflow.js +96 -0
- package/modules/layout/core/registry.d.ts +7 -0
- package/modules/layout/core/registry.js +56 -0
- package/modules/layout/core/svg.d.ts +5 -0
- package/modules/layout/core/svg.js +15 -0
- package/modules/layout/manifest.d.ts +55 -0
- package/modules/layout/manifest.js +76 -0
- package/modules/layout/markup/index.d.ts +5 -0
- package/modules/layout/markup/index.js +14 -0
- package/modules/layout/web/index.d.ts +2 -0
- package/modules/layout/web/index.js +4 -0
- package/modules/layout/web/markup.d.ts +1 -0
- package/modules/layout/web/markup.js +3 -0
- package/modules/layout/web/reflow.d.ts +1 -0
- package/modules/layout/web/reflow.js +6 -0
- package/modules/layout/web/svg.d.ts +1 -0
- package/modules/layout/web/svg.js +3 -0
- package/modules/lists/capabilities/components-list/registry.d.ts +2 -0
- package/modules/lists/capabilities/components-list/registry.js +26 -0
- package/modules/lists/core/context.d.ts +10 -0
- package/modules/lists/core/context.js +94 -0
- package/modules/lists/core/index.d.ts +35 -0
- package/modules/lists/core/index.js +506 -0
- package/modules/lists/core/svg.d.ts +1 -0
- package/modules/lists/core/svg.js +4 -0
- package/modules/lists/manifest.d.ts +31 -0
- package/modules/lists/manifest.js +46 -0
- package/modules/lists/markup/index.d.ts +1 -0
- package/modules/lists/markup/index.js +0 -0
- package/modules/lists/web/index.d.ts +1 -0
- package/modules/lists/web/index.js +72 -0
- package/modules/machine/core/index.d.ts +3 -0
- package/modules/machine/core/index.js +324 -0
- package/modules/machine/core/registry.d.ts +5 -0
- package/modules/machine/core/registry.js +95 -0
- package/modules/machine/core/runtime.d.ts +64 -0
- package/modules/machine/core/runtime.js +335 -0
- package/modules/machine/core/svg.d.ts +2 -0
- package/modules/machine/core/svg.js +4 -0
- package/modules/machine/core/types.d.ts +83 -0
- package/modules/machine/core/types.js +10 -0
- package/modules/machine/manifest.d.ts +31 -0
- package/modules/machine/manifest.js +76 -0
- package/modules/machine/markup/index.d.ts +1 -0
- package/modules/machine/markup/index.js +0 -0
- package/modules/machine/web/index.d.ts +1 -0
- package/modules/machine/web/index.js +5 -0
- package/modules/markup/web/hooks.d.ts +3 -0
- package/modules/markup/web/hooks.js +35 -0
- package/modules/markup/web/index.d.ts +5 -0
- package/modules/markup/web/index.js +40 -0
- package/modules/markup-animation/markup/index.d.ts +10 -0
- package/modules/markup-animation/markup/index.js +152 -0
- package/modules/markup-animation/web/index.d.ts +1 -0
- package/modules/markup-animation/web/index.js +4 -0
- package/modules/markup-hooks/markup/convert.d.ts +12 -0
- package/modules/markup-hooks/markup/convert.js +41 -0
- package/modules/markup-hooks/markup/data.d.ts +11 -0
- package/modules/markup-hooks/markup/data.js +213 -0
- package/modules/markup-hooks/markup/events.d.ts +6 -0
- package/modules/markup-hooks/markup/events.js +83 -0
- package/modules/markup-hooks/markup/motion.d.ts +11 -0
- package/modules/markup-hooks/markup/motion.js +112 -0
- package/modules/markup-libraries/markup/async.d.ts +6 -0
- package/modules/markup-libraries/markup/async.js +35 -0
- package/modules/markup-libraries/markup/hooks.d.ts +14 -0
- package/modules/markup-libraries/markup/hooks.js +8 -0
- package/modules/markup-libraries/markup/index.d.ts +1 -0
- package/modules/markup-libraries/markup/index.js +9 -0
- package/modules/markup-libraries/markup/reuse.d.ts +6 -0
- package/modules/markup-libraries/markup/reuse.js +320 -0
- package/modules/markup-libraries/web/index.d.ts +2 -0
- package/modules/markup-libraries/web/index.js +8 -0
- package/modules/media/core/index.d.ts +2 -0
- package/modules/media/core/index.js +5 -0
- package/modules/media/manifest.d.ts +27 -0
- package/modules/media/manifest.js +24 -0
- package/modules/media/web/index.d.ts +6 -0
- package/modules/media/web/index.js +49 -0
- package/modules/mesh/core/binding.d.ts +3 -0
- package/modules/mesh/core/binding.js +34 -0
- package/modules/mesh/core/fitting.d.ts +3 -0
- package/modules/mesh/core/fitting.js +11 -0
- package/modules/mesh/core/index.d.ts +7 -0
- package/modules/mesh/core/index.js +131 -0
- package/modules/mesh/core/static.d.ts +8 -0
- package/modules/mesh/core/static.js +85 -0
- package/modules/mesh/core/svg.d.ts +2 -0
- package/modules/mesh/core/svg.js +19 -0
- package/modules/mesh/manifest.d.ts +41 -0
- package/modules/mesh/manifest.js +40 -0
- package/modules/mesh/web/canvas.d.ts +2 -0
- package/modules/mesh/web/canvas.js +93 -0
- package/modules/mesh/web/index.d.ts +1 -0
- package/modules/mesh/web/index.js +35 -0
- package/modules/mix/core/index.d.ts +2 -0
- package/modules/mix/core/index.js +92 -0
- package/modules/mix/core/svg.d.ts +8 -0
- package/modules/mix/core/svg.js +112 -0
- package/modules/mix/manifest.d.ts +31 -0
- package/modules/mix/manifest.js +39 -0
- package/modules/mix/markup/index.d.ts +1 -0
- package/modules/mix/markup/index.js +0 -0
- package/modules/mix/web/index.d.ts +1 -0
- package/modules/mix/web/index.js +5 -0
- package/modules/motion/capabilities/data-bind-keyframes/registry.d.ts +2 -0
- package/modules/motion/capabilities/data-bind-keyframes/registry.js +18 -0
- package/modules/motion/core/api.d.ts +119 -0
- package/modules/motion/core/api.js +455 -0
- package/modules/motion/core/clock.d.ts +16 -0
- package/modules/motion/core/clock.js +62 -0
- package/modules/motion/core/control.d.ts +26 -0
- package/modules/motion/core/control.js +130 -0
- package/modules/motion/core/curves.d.ts +3 -0
- package/modules/motion/core/curves.js +31 -0
- package/modules/motion/core/index.d.ts +3 -0
- package/modules/motion/core/index.js +340 -0
- package/modules/motion/core/registry.d.ts +2 -0
- package/modules/motion/core/registry.js +56 -0
- package/modules/motion/core/svg.d.ts +2 -0
- package/modules/motion/core/svg.js +4 -0
- package/modules/motion/manifest.d.ts +37 -0
- package/modules/motion/manifest.js +69 -0
- package/modules/motion/markup/index.d.ts +15 -0
- package/modules/motion/markup/index.js +18 -0
- package/modules/motion/web/index.d.ts +7 -0
- package/modules/motion/web/index.js +26 -0
- package/modules/nested/capabilities/components-nested-remap/registry.d.ts +2 -0
- package/modules/nested/capabilities/components-nested-remap/registry.js +59 -0
- package/modules/nested/core/index.d.ts +7 -0
- package/modules/nested/core/index.js +315 -0
- package/modules/nested/core/render.d.ts +10 -0
- package/modules/nested/core/render.js +172 -0
- package/modules/nested/core/svg.d.ts +1 -0
- package/modules/nested/core/svg.js +4 -0
- package/modules/nested/core/time.d.ts +3 -0
- package/modules/nested/core/time.js +83 -0
- package/modules/nested/manifest.d.ts +31 -0
- package/modules/nested/manifest.js +42 -0
- package/modules/nested/markup/index.d.ts +1 -0
- package/modules/nested/markup/index.js +0 -0
- package/modules/nested/web/index.d.ts +1 -0
- package/modules/nested/web/index.js +67 -0
- package/modules/paint/core/geometry.d.ts +2 -0
- package/modules/paint/core/geometry.js +182 -0
- package/modules/paint/core/index.d.ts +3 -0
- package/modules/paint/core/index.js +279 -0
- package/modules/paint/core/sampling.d.ts +4 -0
- package/modules/paint/core/sampling.js +124 -0
- package/modules/paint/core/svg.d.ts +26 -0
- package/modules/paint/core/svg.js +120 -0
- package/modules/paint/manifest.d.ts +62 -0
- package/modules/paint/manifest.js +80 -0
- package/modules/paint/markup/index.d.ts +20 -0
- package/modules/paint/markup/index.js +172 -0
- package/modules/paint/web/index.d.ts +1 -0
- package/modules/paint/web/index.js +5 -0
- package/modules/paint/web/markup.d.ts +1 -0
- package/modules/paint/web/markup.js +3 -0
- package/modules/paint/web/sampling.d.ts +1 -0
- package/modules/paint/web/sampling.js +3 -0
- package/modules/pathfollow/capabilities/rigging-follow-path/registry.d.ts +2 -0
- package/modules/pathfollow/capabilities/rigging-follow-path/registry.js +4 -0
- package/modules/pathfollow/capabilities/rigging-list-follow-path/registry.d.ts +2 -0
- package/modules/pathfollow/capabilities/rigging-list-follow-path/registry.js +4 -0
- package/modules/pathfollow/core/index.d.ts +2 -0
- package/modules/pathfollow/core/index.js +164 -0
- package/modules/pathfollow/core/measure.d.ts +10 -0
- package/modules/pathfollow/core/measure.js +136 -0
- package/modules/pathfollow/core/svg.d.ts +2 -0
- package/modules/pathfollow/core/svg.js +4 -0
- package/modules/pathfollow/manifest.d.ts +33 -0
- package/modules/pathfollow/manifest.js +39 -0
- package/modules/pathfollow/markup/index.d.ts +1 -0
- package/modules/pathfollow/markup/index.js +0 -0
- package/modules/pathfollow/web/index.d.ts +1 -0
- package/modules/pathfollow/web/index.js +8 -0
- package/modules/posepad/core/handle.d.ts +7 -0
- package/modules/posepad/core/handle.js +87 -0
- package/modules/posepad/core/index.d.ts +12 -0
- package/modules/posepad/core/index.js +104 -0
- package/modules/posepad/core/registry.d.ts +2 -0
- package/modules/posepad/core/registry.js +27 -0
- package/modules/posepad/manifest.d.ts +35 -0
- package/modules/posepad/manifest.js +46 -0
- package/modules/posepad/web/handle.d.ts +1 -0
- package/modules/posepad/web/handle.js +4 -0
- package/modules/posepad/web/index.d.ts +1 -0
- package/modules/posepad/web/index.js +3 -0
- package/modules/rig/core/all.d.ts +2 -0
- package/modules/rig/core/all.js +13 -0
- package/modules/rig/core/api.d.ts +55 -0
- package/modules/rig/core/api.js +43 -0
- package/modules/rig/core/constraints.d.ts +10 -0
- package/modules/rig/core/constraints.js +96 -0
- package/modules/rig/core/distance.d.ts +2 -0
- package/modules/rig/core/distance.js +27 -0
- package/modules/rig/core/index.d.ts +12 -0
- package/modules/rig/core/index.js +243 -0
- package/modules/rig/core/origin.d.ts +6 -0
- package/modules/rig/core/origin.js +107 -0
- package/modules/rig/core/solve.d.ts +9 -0
- package/modules/rig/core/solve.js +111 -0
- package/modules/rig/core/svg.d.ts +2 -0
- package/modules/rig/core/svg.js +4 -0
- package/modules/rig/manifest.d.ts +52 -0
- package/modules/rig/manifest.js +58 -0
- package/modules/rig/markup/elements.d.ts +4 -0
- package/modules/rig/markup/elements.js +35 -0
- package/modules/rig/markup/index.d.ts +5 -0
- package/modules/rig/markup/index.js +13 -0
- package/modules/rig/web/distance.d.ts +1 -0
- package/modules/rig/web/distance.js +11 -0
- package/modules/rig/web/index.d.ts +1 -0
- package/modules/rig/web/index.js +5 -0
- package/modules/rig/web/markup.d.ts +1 -0
- package/modules/rig/web/markup.js +29 -0
- package/modules/rig/web/origin.d.ts +1 -0
- package/modules/rig/web/origin.js +11 -0
- package/modules/scroll/core/index.d.ts +11 -0
- package/modules/scroll/core/index.js +261 -0
- package/modules/scroll/core/svg.d.ts +2 -0
- package/modules/scroll/core/svg.js +4 -0
- package/modules/scroll/manifest.d.ts +33 -0
- package/modules/scroll/manifest.js +34 -0
- package/modules/scroll/markup/index.d.ts +1 -0
- package/modules/scroll/markup/index.js +0 -0
- package/modules/scroll/web/index.d.ts +1 -0
- package/modules/scroll/web/index.js +5 -0
- package/modules/skin/capabilities/rigging-skin/registry.d.ts +5 -0
- package/modules/skin/capabilities/rigging-skin/registry.js +34 -0
- package/modules/skin/core/all.d.ts +2 -0
- package/modules/skin/core/all.js +27 -0
- package/modules/skin/core/auto.d.ts +4 -0
- package/modules/skin/core/auto.js +23 -0
- package/modules/skin/core/dash.d.ts +2 -0
- package/modules/skin/core/dash.js +13 -0
- package/modules/skin/core/index.d.ts +28 -0
- package/modules/skin/core/index.js +274 -0
- package/modules/skin/core/mesh.d.ts +5 -0
- package/modules/skin/core/mesh.js +21 -0
- package/modules/skin/core/svg.d.ts +2 -0
- package/modules/skin/core/svg.js +4 -0
- package/modules/skin/core/values.d.ts +2 -0
- package/modules/skin/core/values.js +23 -0
- package/modules/skin/manifest.d.ts +46 -0
- package/modules/skin/manifest.js +44 -0
- package/modules/skin/markup/index.d.ts +1 -0
- package/modules/skin/markup/index.js +0 -0
- package/modules/skin/web/auto.d.ts +1 -0
- package/modules/skin/web/auto.js +11 -0
- package/modules/skin/web/dash.d.ts +1 -0
- package/modules/skin/web/dash.js +16 -0
- package/modules/skin/web/index.d.ts +1 -0
- package/modules/skin/web/index.js +3 -0
- package/modules/skin/web/mesh.d.ts +1 -0
- package/modules/skin/web/mesh.js +13 -0
- package/modules/skin/web/values.d.ts +1 -0
- package/modules/skin/web/values.js +11 -0
- package/modules/surface/core/index.d.ts +4 -0
- package/modules/surface/core/index.js +318 -0
- package/modules/surface/core/svg.d.ts +8 -0
- package/modules/surface/core/svg.js +247 -0
- package/modules/surface/manifest.d.ts +44 -0
- package/modules/surface/manifest.js +56 -0
- package/modules/surface/web/index.d.ts +1 -0
- package/modules/surface/web/index.js +5 -0
- package/modules/surface/web/markup.d.ts +1 -0
- package/modules/surface/web/markup.js +1 -0
- package/modules/text/core/hit.d.ts +14 -0
- package/modules/text/core/hit.js +79 -0
- package/modules/text/core/host.d.ts +6 -0
- package/modules/text/core/host.js +44 -0
- package/modules/text/core/index.d.ts +41 -0
- package/modules/text/core/index.js +301 -0
- package/modules/text/core/layout.d.ts +79 -0
- package/modules/text/core/layout.js +189 -0
- package/modules/text/core/measure.d.ts +31 -0
- package/modules/text/core/measure.js +35 -0
- package/modules/text/core/overflow.d.ts +7 -0
- package/modules/text/core/overflow.js +58 -0
- package/modules/text/core/registry.d.ts +6 -0
- package/modules/text/core/registry.js +82 -0
- package/modules/text/core/svg.d.ts +6 -0
- package/modules/text/core/svg.js +128 -0
- package/modules/text/manifest.d.ts +72 -0
- package/modules/text/manifest.js +96 -0
- package/modules/text/markup/index.d.ts +6 -0
- package/modules/text/markup/index.js +51 -0
- package/modules/text/web/canvas.d.ts +1 -0
- package/modules/text/web/canvas.js +39 -0
- package/modules/text/web/css.d.ts +2 -0
- package/modules/text/web/css.js +4 -0
- package/modules/text/web/hit.d.ts +9 -0
- package/modules/text/web/hit.js +22 -0
- package/modules/text/web/host.d.ts +6 -0
- package/modules/text/web/host.js +14 -0
- package/modules/text/web/index.d.ts +1 -0
- package/modules/text/web/index.js +72 -0
- package/modules/text/web/markup.d.ts +1 -0
- package/modules/text/web/markup.js +10 -0
- package/modules/text/web/measure.d.ts +4 -0
- package/modules/text/web/measure.js +40 -0
- package/modules/text/web/overflow.d.ts +1 -0
- package/modules/text/web/overflow.js +4 -0
- package/modules/text-effects/core/evaluate.d.ts +52 -0
- package/modules/text-effects/core/evaluate.js +144 -0
- package/modules/text-effects/core/index.d.ts +4 -0
- package/modules/text-effects/core/index.js +127 -0
- package/modules/text-effects/core/registry.d.ts +5 -0
- package/modules/text-effects/core/registry.js +60 -0
- package/modules/text-effects/core/svg.d.ts +5 -0
- package/modules/text-effects/core/svg.js +69 -0
- package/modules/text-effects/manifest.d.ts +42 -0
- package/modules/text-effects/manifest.js +61 -0
- package/modules/text-effects/markup/index.d.ts +1 -0
- package/modules/text-effects/markup/index.js +0 -0
- package/modules/text-effects/web/index.d.ts +1 -0
- package/modules/text-effects/web/index.js +119 -0
- package/modules/text-effects/web/markup.d.ts +1 -0
- package/modules/text-effects/web/markup.js +1 -0
- package/modules/text-input/core/extra.d.ts +3 -0
- package/modules/text-input/core/extra.js +66 -0
- package/modules/text-input/core/index.d.ts +54 -0
- package/modules/text-input/core/index.js +344 -0
- package/modules/text-input/core/registry.d.ts +2 -0
- package/modules/text-input/core/registry.js +45 -0
- package/modules/text-input/core/svg.d.ts +13 -0
- package/modules/text-input/core/svg.js +46 -0
- package/modules/text-input/manifest.d.ts +58 -0
- package/modules/text-input/manifest.js +81 -0
- package/modules/text-input/markup/index.d.ts +1 -0
- package/modules/text-input/markup/index.js +4 -0
- package/modules/text-input/web/canvas.d.ts +1 -0
- package/modules/text-input/web/canvas.js +12 -0
- package/modules/text-input/web/clipboard.d.ts +6 -0
- package/modules/text-input/web/clipboard.js +15 -0
- package/modules/text-input/web/extra.d.ts +1 -0
- package/modules/text-input/web/extra.js +52 -0
- package/modules/text-input/web/index.d.ts +6 -0
- package/modules/text-input/web/index.js +192 -0
- package/modules/text-input/web/markup.d.ts +1 -0
- package/modules/text-input/web/markup.js +1 -0
- package/modules/text-input/web/svg.d.ts +1 -0
- package/modules/text-input/web/svg.js +27 -0
- package/package.json +1150 -4
- package/packages/core/src/all.d.ts +1 -0
- package/packages/core/src/all.js +143 -0
- package/packages/core/src/check.d.ts +5 -0
- package/packages/core/src/check.js +147 -0
- package/packages/core/src/color.d.ts +8 -0
- package/packages/core/src/color.js +21 -0
- package/packages/core/src/cond.d.ts +32 -0
- package/packages/core/src/cond.js +58 -0
- package/packages/core/src/diag.d.ts +25 -0
- package/packages/core/src/diag.js +49 -0
- package/packages/core/src/draw.d.ts +166 -0
- package/packages/core/src/draw.js +143 -0
- package/packages/core/src/ease.d.ts +10 -0
- package/packages/core/src/ease.js +75 -0
- package/packages/core/src/event-capture.d.ts +14 -0
- package/packages/core/src/event-capture.js +39 -0
- package/packages/core/src/flags.d.ts +6 -0
- package/packages/core/src/flags.js +4 -0
- package/packages/core/src/format.d.ts +2 -0
- package/packages/core/src/format.js +40 -0
- package/packages/core/src/geom.d.ts +28 -0
- package/packages/core/src/geom.js +111 -0
- package/packages/core/src/index.d.ts +18 -0
- package/packages/core/src/index.js +68 -0
- package/packages/core/src/load.d.ts +171 -0
- package/packages/core/src/load.js +719 -0
- package/packages/core/src/modules/a11y/index.d.ts +1 -0
- package/packages/core/src/modules/a11y/index.js +1 -0
- package/packages/core/src/modules/a11y/svg.d.ts +1 -0
- package/packages/core/src/modules/a11y/svg.js +1 -0
- package/packages/core/src/modules/a11y/text.d.ts +1 -0
- package/packages/core/src/modules/a11y/text.js +1 -0
- package/packages/core/src/modules/a11y-actions/index.d.ts +1 -0
- package/packages/core/src/modules/a11y-actions/index.js +1 -0
- package/packages/core/src/modules/assets/index.d.ts +1 -0
- package/packages/core/src/modules/assets/index.js +1 -0
- package/packages/core/src/modules/assets/svg.d.ts +1 -0
- package/packages/core/src/modules/assets/svg.js +1 -0
- package/packages/core/src/modules/bind/expression.d.ts +1 -0
- package/packages/core/src/modules/bind/expression.js +1 -0
- package/packages/core/src/modules/bind/index.d.ts +1 -0
- package/packages/core/src/modules/bind/index.js +1 -0
- package/packages/core/src/modules/colormix/index.d.ts +1 -0
- package/packages/core/src/modules/colormix/index.js +1 -0
- package/packages/core/src/modules/colormix/svg.d.ts +1 -0
- package/packages/core/src/modules/colormix/svg.js +1 -0
- package/packages/core/src/modules/componentpaint/index.d.ts +1 -0
- package/packages/core/src/modules/componentpaint/index.js +1 -0
- package/packages/core/src/modules/componentpaint/svg.d.ts +1 -0
- package/packages/core/src/modules/componentpaint/svg.js +1 -0
- package/packages/core/src/modules/components/index.d.ts +1 -0
- package/packages/core/src/modules/components/index.js +1 -0
- package/packages/core/src/modules/components/svg.d.ts +1 -0
- package/packages/core/src/modules/components/svg.js +1 -0
- package/packages/core/src/modules/composite/index.d.ts +1 -0
- package/packages/core/src/modules/composite/index.js +1 -0
- package/packages/core/src/modules/composite/svg.d.ts +1 -0
- package/packages/core/src/modules/composite/svg.js +1 -0
- package/packages/core/src/modules/contour/index.d.ts +1 -0
- package/packages/core/src/modules/contour/index.js +1 -0
- package/packages/core/src/modules/contour/svg.d.ts +1 -0
- package/packages/core/src/modules/contour/svg.js +1 -0
- package/packages/core/src/modules/convert/index.d.ts +1 -0
- package/packages/core/src/modules/convert/index.js +1 -0
- package/packages/core/src/modules/corners/index.d.ts +1 -0
- package/packages/core/src/modules/corners/index.js +1 -0
- package/packages/core/src/modules/data/index.d.ts +1 -0
- package/packages/core/src/modules/data/index.js +1 -0
- package/packages/core/src/modules/data-artboard/index.d.ts +1 -0
- package/packages/core/src/modules/data-artboard/index.js +1 -0
- package/packages/core/src/modules/data-host/index.d.ts +1 -0
- package/packages/core/src/modules/data-host/index.js +1 -0
- package/packages/core/src/modules/derive/index.d.ts +1 -0
- package/packages/core/src/modules/derive/index.js +1 -0
- package/packages/core/src/modules/events/index.d.ts +1 -0
- package/packages/core/src/modules/events/index.js +1 -0
- package/packages/core/src/modules/events/svg.d.ts +1 -0
- package/packages/core/src/modules/events/svg.js +1 -0
- package/packages/core/src/modules/focus/index.d.ts +1 -0
- package/packages/core/src/modules/focus/index.js +1 -0
- package/packages/core/src/modules/focus/svg.d.ts +1 -0
- package/packages/core/src/modules/focus/svg.js +1 -0
- package/packages/core/src/modules/fonts/index.d.ts +1 -0
- package/packages/core/src/modules/fonts/index.js +1 -0
- package/packages/core/src/modules/fonts/info.d.ts +1 -0
- package/packages/core/src/modules/fonts/info.js +1 -0
- package/packages/core/src/modules/fonts/svg.d.ts +1 -0
- package/packages/core/src/modules/fonts/svg.js +1 -0
- package/packages/core/src/modules/host/index.d.ts +1 -0
- package/packages/core/src/modules/host/index.js +1 -0
- package/packages/core/src/modules/host-edit/index.d.ts +1 -0
- package/packages/core/src/modules/host-edit/index.js +1 -0
- package/packages/core/src/modules/host-values/index.d.ts +1 -0
- package/packages/core/src/modules/host-values/index.js +1 -0
- package/packages/core/src/modules/ik/index.d.ts +1 -0
- package/packages/core/src/modules/ik/index.js +1 -0
- package/packages/core/src/modules/ik/svg.d.ts +1 -0
- package/packages/core/src/modules/ik/svg.js +1 -0
- package/packages/core/src/modules/input/index.d.ts +1 -0
- package/packages/core/src/modules/input/index.js +1 -0
- package/packages/core/src/modules/input/svg.d.ts +1 -0
- package/packages/core/src/modules/input/svg.js +1 -0
- package/packages/core/src/modules/layout/index.d.ts +1 -0
- package/packages/core/src/modules/layout/index.js +1 -0
- package/packages/core/src/modules/layout/svg.d.ts +1 -0
- package/packages/core/src/modules/layout/svg.js +1 -0
- package/packages/core/src/modules/lists/index.d.ts +1 -0
- package/packages/core/src/modules/lists/index.js +1 -0
- package/packages/core/src/modules/lists/svg.d.ts +1 -0
- package/packages/core/src/modules/lists/svg.js +1 -0
- package/packages/core/src/modules/machine/index.d.ts +1 -0
- package/packages/core/src/modules/machine/index.js +1 -0
- package/packages/core/src/modules/machine/svg.d.ts +1 -0
- package/packages/core/src/modules/machine/svg.js +1 -0
- package/packages/core/src/modules/media/index.d.ts +1 -0
- package/packages/core/src/modules/media/index.js +1 -0
- package/packages/core/src/modules/mesh/index.d.ts +1 -0
- package/packages/core/src/modules/mesh/index.js +1 -0
- package/packages/core/src/modules/mesh/static.d.ts +1 -0
- package/packages/core/src/modules/mesh/static.js +1 -0
- package/packages/core/src/modules/mesh/svg.d.ts +1 -0
- package/packages/core/src/modules/mesh/svg.js +1 -0
- package/packages/core/src/modules/mix/index.d.ts +1 -0
- package/packages/core/src/modules/mix/index.js +1 -0
- package/packages/core/src/modules/mix/svg.d.ts +1 -0
- package/packages/core/src/modules/mix/svg.js +1 -0
- package/packages/core/src/modules/motion/index.d.ts +1 -0
- package/packages/core/src/modules/motion/index.js +1 -0
- package/packages/core/src/modules/motion/svg.d.ts +1 -0
- package/packages/core/src/modules/motion/svg.js +1 -0
- package/packages/core/src/modules/nested/index.d.ts +1 -0
- package/packages/core/src/modules/nested/index.js +1 -0
- package/packages/core/src/modules/nested/svg.d.ts +1 -0
- package/packages/core/src/modules/nested/svg.js +1 -0
- package/packages/core/src/modules/paint/geometry.d.ts +1 -0
- package/packages/core/src/modules/paint/geometry.js +1 -0
- package/packages/core/src/modules/paint/index.d.ts +1 -0
- package/packages/core/src/modules/paint/index.js +1 -0
- package/packages/core/src/modules/paint/svg.d.ts +1 -0
- package/packages/core/src/modules/paint/svg.js +1 -0
- package/packages/core/src/modules/pathfollow/index.d.ts +1 -0
- package/packages/core/src/modules/pathfollow/index.js +1 -0
- package/packages/core/src/modules/pathfollow/svg.d.ts +1 -0
- package/packages/core/src/modules/pathfollow/svg.js +1 -0
- package/packages/core/src/modules/posepad/index.d.ts +1 -0
- package/packages/core/src/modules/posepad/index.js +1 -0
- package/packages/core/src/modules/rig/index.d.ts +1 -0
- package/packages/core/src/modules/rig/index.js +1 -0
- package/packages/core/src/modules/rig/svg.d.ts +1 -0
- package/packages/core/src/modules/rig/svg.js +1 -0
- package/packages/core/src/modules/scroll/index.d.ts +1 -0
- package/packages/core/src/modules/scroll/index.js +1 -0
- package/packages/core/src/modules/scroll/svg.d.ts +1 -0
- package/packages/core/src/modules/scroll/svg.js +1 -0
- package/packages/core/src/modules/skin/index.d.ts +1 -0
- package/packages/core/src/modules/skin/index.js +1 -0
- package/packages/core/src/modules/skin/svg.d.ts +1 -0
- package/packages/core/src/modules/skin/svg.js +1 -0
- package/packages/core/src/modules/surface/index.d.ts +1 -0
- package/packages/core/src/modules/surface/index.js +1 -0
- package/packages/core/src/modules/surface/svg.d.ts +1 -0
- package/packages/core/src/modules/surface/svg.js +1 -0
- package/packages/core/src/modules/text/hit.d.ts +1 -0
- package/packages/core/src/modules/text/hit.js +1 -0
- package/packages/core/src/modules/text/host.d.ts +1 -0
- package/packages/core/src/modules/text/host.js +1 -0
- package/packages/core/src/modules/text/index.d.ts +1 -0
- package/packages/core/src/modules/text/index.js +1 -0
- package/packages/core/src/modules/text/svg.d.ts +1 -0
- package/packages/core/src/modules/text/svg.js +1 -0
- package/packages/core/src/modules/text-effects/index.d.ts +1 -0
- package/packages/core/src/modules/text-effects/index.js +1 -0
- package/packages/core/src/modules/text-effects/svg.d.ts +1 -0
- package/packages/core/src/modules/text-effects/svg.js +1 -0
- package/packages/core/src/modules/text-input/index.d.ts +1 -0
- package/packages/core/src/modules/text-input/index.js +1 -0
- package/packages/core/src/modules/text-input/svg.d.ts +1 -0
- package/packages/core/src/modules/text-input/svg.js +1 -0
- package/packages/core/src/modules.d.ts +65 -0
- package/packages/core/src/modules.js +103 -0
- package/packages/core/src/path.d.ts +47 -0
- package/packages/core/src/path.js +288 -0
- package/packages/core/src/player.d.ts +109 -0
- package/packages/core/src/player.js +714 -0
- package/packages/core/src/random.d.ts +11 -0
- package/packages/core/src/random.js +43 -0
- package/packages/core/src/registry.d.ts +106 -0
- package/packages/core/src/registry.js +234 -0
- package/packages/core/src/schema.d.ts +4 -0
- package/packages/core/src/schema.js +91 -0
- package/packages/core/src/script-events.d.ts +1 -0
- package/packages/core/src/script-events.js +27 -0
- package/packages/core/src/script-writes.d.ts +12 -0
- package/packages/core/src/script-writes.js +106 -0
- package/packages/core/src/script.d.ts +55 -0
- package/packages/core/src/script.js +746 -0
- package/packages/core/src/svg.d.ts +65 -0
- package/packages/core/src/svg.js +182 -0
- package/packages/core/src/time.d.ts +7 -0
- package/packages/core/src/time.js +19 -0
- package/packages/markup/src/a11y.d.ts +1 -0
- package/packages/markup/src/a11y.js +1 -0
- package/packages/markup/src/async.d.ts +4 -0
- package/packages/markup/src/async.js +8 -0
- package/packages/markup/src/bind.d.ts +1 -0
- package/packages/markup/src/bind.js +1 -0
- package/packages/markup/src/browser.d.ts +2 -0
- package/packages/markup/src/browser.js +6 -0
- package/packages/markup/src/colormix.d.ts +1 -0
- package/packages/markup/src/colormix.js +1 -0
- package/packages/markup/src/compile.d.ts +60 -0
- package/packages/markup/src/compile.js +747 -0
- package/packages/markup/src/components.d.ts +1 -0
- package/packages/markup/src/components.js +1 -0
- package/packages/markup/src/contour.d.ts +1 -0
- package/packages/markup/src/contour.js +1 -0
- package/packages/markup/src/convert.d.ts +1 -0
- package/packages/markup/src/convert.js +1 -0
- package/packages/markup/src/data-artboard.d.ts +1 -0
- package/packages/markup/src/data-artboard.js +1 -0
- package/packages/markup/src/data.d.ts +1 -0
- package/packages/markup/src/data.js +1 -0
- package/packages/markup/src/decompile.d.ts +2 -0
- package/packages/markup/src/decompile.js +278 -0
- package/packages/markup/src/events.d.ts +1 -0
- package/packages/markup/src/events.js +1 -0
- package/packages/markup/src/fields.d.ts +7 -0
- package/packages/markup/src/fields.js +15 -0
- package/packages/markup/src/focus.d.ts +1 -0
- package/packages/markup/src/focus.js +1 -0
- package/packages/markup/src/fonts.d.ts +1 -0
- package/packages/markup/src/fonts.js +1 -0
- package/packages/markup/src/format.d.ts +6 -0
- package/packages/markup/src/format.js +59 -0
- package/packages/markup/src/ik.d.ts +1 -0
- package/packages/markup/src/ik.js +1 -0
- package/packages/markup/src/index.d.ts +44 -0
- package/packages/markup/src/index.js +22 -0
- package/packages/markup/src/input.d.ts +1 -0
- package/packages/markup/src/input.js +1 -0
- package/packages/markup/src/layout.d.ts +22 -0
- package/packages/markup/src/layout.js +117 -0
- package/packages/markup/src/libraries-async.d.ts +1 -0
- package/packages/markup/src/libraries-async.js +1 -0
- package/packages/markup/src/libraries.d.ts +1 -0
- package/packages/markup/src/libraries.js +1 -0
- package/packages/markup/src/library-hooks.d.ts +1 -0
- package/packages/markup/src/library-hooks.js +1 -0
- package/packages/markup/src/lists.d.ts +1 -0
- package/packages/markup/src/lists.js +1 -0
- package/packages/markup/src/machine.d.ts +1 -0
- package/packages/markup/src/machine.js +1 -0
- package/packages/markup/src/markup-layout.d.ts +1 -0
- package/packages/markup/src/markup-layout.js +1 -0
- package/packages/markup/src/mix.d.ts +1 -0
- package/packages/markup/src/mix.js +1 -0
- package/packages/markup/src/module-hooks.d.ts +21 -0
- package/packages/markup/src/module-hooks.js +56 -0
- package/packages/markup/src/modules.d.ts +1 -0
- package/packages/markup/src/modules.js +1 -0
- package/packages/markup/src/motion.d.ts +1 -0
- package/packages/markup/src/motion.js +1 -0
- package/packages/markup/src/names.d.ts +32 -0
- package/packages/markup/src/names.js +89 -0
- package/packages/markup/src/nested.d.ts +1 -0
- package/packages/markup/src/nested.js +1 -0
- package/packages/markup/src/pathfollow.d.ts +1 -0
- package/packages/markup/src/pathfollow.js +1 -0
- package/packages/markup/src/reuse.d.ts +1 -0
- package/packages/markup/src/reuse.js +1 -0
- package/packages/markup/src/rig.d.ts +1 -0
- package/packages/markup/src/rig.js +1 -0
- package/packages/markup/src/scroll.d.ts +1 -0
- package/packages/markup/src/scroll.js +1 -0
- package/packages/markup/src/skin.d.ts +1 -0
- package/packages/markup/src/skin.js +1 -0
- package/packages/markup/src/text-effects.d.ts +1 -0
- package/packages/markup/src/text-effects.js +1 -0
- package/packages/markup/src/text-input.d.ts +1 -0
- package/packages/markup/src/text-input.js +1 -0
- package/packages/markup/src/text.d.ts +1 -0
- package/packages/markup/src/text.js +1 -0
- package/packages/markup/src/xml.d.ts +67 -0
- package/packages/markup/src/xml.js +211 -0
- package/packages/playground/src/app.d.ts +3 -0
- package/packages/playground/src/app.js +586 -0
- package/packages/playground/src/page.html +117 -0
- package/packages/playground/src/pure.d.ts +32 -0
- package/packages/playground/src/pure.js +125 -0
- package/packages/playground/src/style.css +1043 -0
- package/packages/web/dist/anima-a11y-actions.js +1 -0
- package/packages/web/dist/anima-a11y-bounds.js +1 -0
- package/packages/web/dist/anima-a11y-dom.js +1 -0
- package/packages/web/dist/anima-a11y-navigation.js +1 -0
- package/packages/web/dist/anima-a11y-text.js +1 -0
- package/packages/web/dist/anima-a11y.js +1 -0
- package/packages/web/dist/anima-assetio.js +1 -0
- package/packages/web/dist/anima-assets.js +1 -0
- package/packages/web/dist/anima-bind.js +1 -0
- package/packages/web/dist/anima-canvas-mesh.js +1 -0
- package/packages/web/dist/anima-canvas.js +1 -0
- package/packages/web/dist/anima-colormix.js +1 -0
- package/packages/web/dist/anima-componentpaint.js +1 -0
- package/packages/web/dist/anima-components.js +1 -0
- package/packages/web/dist/anima-composite.js +1 -0
- package/packages/web/dist/anima-contour.js +1 -0
- package/packages/web/dist/anima-convert.js +1 -0
- package/packages/web/dist/anima-corners.js +1 -0
- package/packages/web/dist/anima-data-artboard-values.js +1 -0
- package/packages/web/dist/anima-data-artboard.js +1 -0
- package/packages/web/dist/anima-data-host.js +1 -0
- package/packages/web/dist/anima-data.js +1 -0
- package/packages/web/dist/anima-derive.js +1 -0
- package/packages/web/dist/anima-devtools.js +1 -0
- package/packages/web/dist/anima-events.js +1 -0
- package/packages/web/dist/anima-focus.js +1 -0
- package/packages/web/dist/anima-fonts-info.js +1 -0
- package/packages/web/dist/anima-fonts-options.js +1 -0
- package/packages/web/dist/anima-fonts-text.js +1 -0
- package/packages/web/dist/anima-fonts.js +1 -0
- package/packages/web/dist/anima-host-edit.js +1 -0
- package/packages/web/dist/anima-host-fit-size.js +1 -0
- package/packages/web/dist/anima-host-fit.js +1 -0
- package/packages/web/dist/anima-host-values.js +1 -0
- package/packages/web/dist/anima-host.js +1 -0
- package/packages/web/dist/anima-icon.js +1 -0
- package/packages/web/dist/anima-ik.js +1 -0
- package/packages/web/dist/anima-input.js +1 -0
- package/packages/web/dist/anima-layout-reflow.js +1 -0
- package/packages/web/dist/anima-layout-svg.js +1 -0
- package/packages/web/dist/anima-layout.js +1 -0
- package/packages/web/dist/anima-lists.js +1 -0
- package/packages/web/dist/anima-machine.js +1 -0
- package/packages/web/dist/anima-markup-a11y.js +1 -0
- package/packages/web/dist/anima-markup-animation.js +1 -0
- package/packages/web/dist/anima-markup-bind.js +1 -0
- package/packages/web/dist/anima-markup-colormix.js +1 -0
- package/packages/web/dist/anima-markup-components.js +1 -0
- package/packages/web/dist/anima-markup-convert.js +1 -0
- package/packages/web/dist/anima-markup-data-artboard.js +1 -0
- package/packages/web/dist/anima-markup-hooks.js +1 -0
- package/packages/web/dist/anima-markup-layout.js +1 -0
- package/packages/web/dist/anima-markup-libraries.js +1 -0
- package/packages/web/dist/anima-markup-paint.js +1 -0
- package/packages/web/dist/anima-markup-rig.js +1 -0
- package/packages/web/dist/anima-markup-surface.js +1 -0
- package/packages/web/dist/anima-markup-text-effects.js +1 -0
- package/packages/web/dist/anima-markup-text-input.js +1 -0
- package/packages/web/dist/anima-markup-text.js +1 -0
- package/packages/web/dist/anima-markup.js +1 -0
- package/packages/web/dist/anima-media.js +1 -0
- package/packages/web/dist/anima-mesh.js +1 -0
- package/packages/web/dist/anima-mix.js +1 -0
- package/packages/web/dist/anima-motion.js +1 -0
- package/packages/web/dist/anima-nested.js +1 -0
- package/packages/web/dist/anima-paint-sampling.js +1 -0
- package/packages/web/dist/anima-paint.js +1 -0
- package/packages/web/dist/anima-pathfollow.js +1 -0
- package/packages/web/dist/anima-posepad-handle.js +1 -0
- package/packages/web/dist/anima-posepad.js +1 -0
- package/packages/web/dist/anima-rig-distance.js +1 -0
- package/packages/web/dist/anima-rig-origin.js +1 -0
- package/packages/web/dist/anima-rig.js +1 -0
- package/packages/web/dist/anima-scroll.js +1 -0
- package/packages/web/dist/anima-skin-auto.js +1 -0
- package/packages/web/dist/anima-skin-dash.js +1 -0
- package/packages/web/dist/anima-skin-mesh.js +1 -0
- package/packages/web/dist/anima-skin-values.js +1 -0
- package/packages/web/dist/anima-skin.js +1 -0
- package/packages/web/dist/anima-surface.js +1 -0
- package/packages/web/dist/anima-text-canvas.js +1 -0
- package/packages/web/dist/anima-text-effects.js +1 -0
- package/packages/web/dist/anima-text-hit.js +1 -0
- package/packages/web/dist/anima-text-host.js +1 -0
- package/packages/web/dist/anima-text-input-canvas.js +1 -0
- package/packages/web/dist/anima-text-input-clipboard.js +1 -0
- package/packages/web/dist/anima-text-input-extra.js +1 -0
- package/packages/web/dist/anima-text-input-svg.js +1 -0
- package/packages/web/dist/anima-text-input.js +1 -0
- package/packages/web/dist/anima-text-overflow.js +1 -0
- package/packages/web/dist/anima-text.js +1 -0
- package/packages/web/src/a11y-actions.d.ts +1 -0
- package/packages/web/src/a11y-actions.js +1 -0
- package/packages/web/src/a11y-bounds.d.ts +1 -0
- package/packages/web/src/a11y-bounds.js +1 -0
- package/packages/web/src/a11y-dom.d.ts +1 -0
- package/packages/web/src/a11y-dom.js +1 -0
- package/packages/web/src/a11y-navigation.d.ts +1 -0
- package/packages/web/src/a11y-navigation.js +1 -0
- package/packages/web/src/a11y-text.d.ts +1 -0
- package/packages/web/src/a11y-text.js +1 -0
- package/packages/web/src/a11y.d.ts +1 -0
- package/packages/web/src/a11y.js +1 -0
- package/packages/web/src/a11yactions.d.ts +1 -0
- package/packages/web/src/a11yactions.js +1 -0
- package/packages/web/src/all-modules.d.ts +73 -0
- package/packages/web/src/all-modules.js +73 -0
- package/packages/web/src/assetio.d.ts +1 -0
- package/packages/web/src/assetio.js +1 -0
- package/packages/web/src/assets.d.ts +1 -0
- package/packages/web/src/assets.js +1 -0
- package/packages/web/src/bind.d.ts +1 -0
- package/packages/web/src/bind.js +1 -0
- package/packages/web/src/canvas-mesh.d.ts +1 -0
- package/packages/web/src/canvas-mesh.js +1 -0
- package/packages/web/src/canvas.d.ts +1 -0
- package/packages/web/src/canvas.js +1 -0
- package/packages/web/src/colormix.d.ts +1 -0
- package/packages/web/src/colormix.js +1 -0
- package/packages/web/src/componentpaint.d.ts +1 -0
- package/packages/web/src/componentpaint.js +1 -0
- package/packages/web/src/components.d.ts +1 -0
- package/packages/web/src/components.js +1 -0
- package/packages/web/src/composite.d.ts +1 -0
- package/packages/web/src/composite.js +1 -0
- package/packages/web/src/content-box.d.ts +7 -0
- package/packages/web/src/content-box.js +16 -0
- package/packages/web/src/contour.d.ts +1 -0
- package/packages/web/src/contour.js +1 -0
- package/packages/web/src/convert.d.ts +1 -0
- package/packages/web/src/convert.js +1 -0
- package/packages/web/src/corners.d.ts +1 -0
- package/packages/web/src/corners.js +1 -0
- package/packages/web/src/data-artboard-values.d.ts +1 -0
- package/packages/web/src/data-artboard-values.js +1 -0
- package/packages/web/src/data-artboard.d.ts +1 -0
- package/packages/web/src/data-artboard.js +1 -0
- package/packages/web/src/data-host.d.ts +1 -0
- package/packages/web/src/data-host.js +1 -0
- package/packages/web/src/data.d.ts +1 -0
- package/packages/web/src/data.js +1 -0
- package/packages/web/src/dataartboard.d.ts +1 -0
- package/packages/web/src/dataartboard.js +1 -0
- package/packages/web/src/datahost.d.ts +1 -0
- package/packages/web/src/datahost.js +1 -0
- package/packages/web/src/derive.d.ts +1 -0
- package/packages/web/src/derive.js +1 -0
- package/packages/web/src/devtools.d.ts +1 -0
- package/packages/web/src/devtools.js +1 -0
- package/packages/web/src/events.d.ts +1 -0
- package/packages/web/src/events.js +1 -0
- package/packages/web/src/focus.d.ts +1 -0
- package/packages/web/src/focus.js +1 -0
- package/packages/web/src/fonts-info.d.ts +1 -0
- package/packages/web/src/fonts-info.js +1 -0
- package/packages/web/src/fonts-options.d.ts +1 -0
- package/packages/web/src/fonts-options.js +1 -0
- package/packages/web/src/fonts-text.d.ts +1 -0
- package/packages/web/src/fonts-text.js +1 -0
- package/packages/web/src/fonts.d.ts +1 -0
- package/packages/web/src/fonts.js +1 -0
- package/packages/web/src/host-edit.d.ts +1 -0
- package/packages/web/src/host-edit.js +1 -0
- package/packages/web/src/host-fit-size.d.ts +1 -0
- package/packages/web/src/host-fit-size.js +1 -0
- package/packages/web/src/host-fit.d.ts +1 -0
- package/packages/web/src/host-fit.js +1 -0
- package/packages/web/src/host-values.d.ts +1 -0
- package/packages/web/src/host-values.js +1 -0
- package/packages/web/src/host.d.ts +1 -0
- package/packages/web/src/host.js +1 -0
- package/packages/web/src/hostedit.d.ts +1 -0
- package/packages/web/src/hostedit.js +1 -0
- package/packages/web/src/hostvalues.d.ts +1 -0
- package/packages/web/src/hostvalues.js +1 -0
- package/packages/web/src/ik.d.ts +1 -0
- package/packages/web/src/ik.js +1 -0
- package/packages/web/src/index.d.ts +123 -0
- package/packages/web/src/index.js +774 -0
- package/packages/web/src/input.d.ts +1 -0
- package/packages/web/src/input.js +1 -0
- package/packages/web/src/layout-reflow.d.ts +1 -0
- package/packages/web/src/layout-reflow.js +1 -0
- package/packages/web/src/layout-svg.d.ts +1 -0
- package/packages/web/src/layout-svg.js +1 -0
- package/packages/web/src/layout.d.ts +1 -0
- package/packages/web/src/layout.js +1 -0
- package/packages/web/src/lists.d.ts +1 -0
- package/packages/web/src/lists.js +1 -0
- package/packages/web/src/machine.d.ts +1 -0
- package/packages/web/src/machine.js +1 -0
- package/packages/web/src/markup-a11y.d.ts +1 -0
- package/packages/web/src/markup-a11y.js +1 -0
- package/packages/web/src/markup-animation.d.ts +1 -0
- package/packages/web/src/markup-animation.js +1 -0
- package/packages/web/src/markup-bind.d.ts +1 -0
- package/packages/web/src/markup-bind.js +1 -0
- package/packages/web/src/markup-colormix.d.ts +1 -0
- package/packages/web/src/markup-colormix.js +1 -0
- package/packages/web/src/markup-components.d.ts +1 -0
- package/packages/web/src/markup-components.js +1 -0
- package/packages/web/src/markup-convert.d.ts +1 -0
- package/packages/web/src/markup-convert.js +1 -0
- package/packages/web/src/markup-data-artboard.d.ts +1 -0
- package/packages/web/src/markup-data-artboard.js +1 -0
- package/packages/web/src/markup-hooks.d.ts +1 -0
- package/packages/web/src/markup-hooks.js +1 -0
- package/packages/web/src/markup-layout.d.ts +1 -0
- package/packages/web/src/markup-layout.js +1 -0
- package/packages/web/src/markup-libraries.d.ts +1 -0
- package/packages/web/src/markup-libraries.js +1 -0
- package/packages/web/src/markup-paint.d.ts +1 -0
- package/packages/web/src/markup-paint.js +1 -0
- package/packages/web/src/markup-rig.d.ts +1 -0
- package/packages/web/src/markup-rig.js +1 -0
- package/packages/web/src/markup-surface.d.ts +1 -0
- package/packages/web/src/markup-surface.js +1 -0
- package/packages/web/src/markup-text-effects.d.ts +1 -0
- package/packages/web/src/markup-text-effects.js +1 -0
- package/packages/web/src/markup-text-input.d.ts +1 -0
- package/packages/web/src/markup-text-input.js +1 -0
- package/packages/web/src/markup-text.d.ts +1 -0
- package/packages/web/src/markup-text.js +1 -0
- package/packages/web/src/markup.d.ts +1 -0
- package/packages/web/src/markup.js +1 -0
- package/packages/web/src/media.d.ts +1 -0
- package/packages/web/src/media.js +1 -0
- package/packages/web/src/mesh.d.ts +1 -0
- package/packages/web/src/mesh.js +1 -0
- package/packages/web/src/mix.d.ts +1 -0
- package/packages/web/src/mix.js +1 -0
- package/packages/web/src/motion.d.ts +1 -0
- package/packages/web/src/motion.js +1 -0
- package/packages/web/src/nested.d.ts +1 -0
- package/packages/web/src/nested.js +1 -0
- package/packages/web/src/paint-sampling.d.ts +1 -0
- package/packages/web/src/paint-sampling.js +1 -0
- package/packages/web/src/paint.d.ts +1 -0
- package/packages/web/src/paint.js +1 -0
- package/packages/web/src/pathfollow.d.ts +1 -0
- package/packages/web/src/pathfollow.js +1 -0
- package/packages/web/src/posepad-handle.d.ts +1 -0
- package/packages/web/src/posepad-handle.js +1 -0
- package/packages/web/src/posepad.d.ts +1 -0
- package/packages/web/src/posepad.js +1 -0
- package/packages/web/src/rig-distance.d.ts +1 -0
- package/packages/web/src/rig-distance.js +1 -0
- package/packages/web/src/rig-origin.d.ts +1 -0
- package/packages/web/src/rig-origin.js +1 -0
- package/packages/web/src/rig.d.ts +1 -0
- package/packages/web/src/rig.js +1 -0
- package/packages/web/src/scroll.d.ts +1 -0
- package/packages/web/src/scroll.js +1 -0
- package/packages/web/src/skin-auto.d.ts +1 -0
- package/packages/web/src/skin-auto.js +1 -0
- package/packages/web/src/skin-dash.d.ts +1 -0
- package/packages/web/src/skin-dash.js +1 -0
- package/packages/web/src/skin-mesh.d.ts +1 -0
- package/packages/web/src/skin-mesh.js +1 -0
- package/packages/web/src/skin-values.d.ts +1 -0
- package/packages/web/src/skin-values.js +1 -0
- package/packages/web/src/skin.d.ts +1 -0
- package/packages/web/src/skin.js +1 -0
- package/packages/web/src/surface.d.ts +1 -0
- package/packages/web/src/surface.js +1 -0
- package/packages/web/src/text-canvas.d.ts +1 -0
- package/packages/web/src/text-canvas.js +1 -0
- package/packages/web/src/text-effects.d.ts +1 -0
- package/packages/web/src/text-effects.js +1 -0
- package/packages/web/src/text-hit.d.ts +1 -0
- package/packages/web/src/text-hit.js +1 -0
- package/packages/web/src/text-host.d.ts +1 -0
- package/packages/web/src/text-host.js +1 -0
- package/packages/web/src/text-input-canvas.d.ts +1 -0
- package/packages/web/src/text-input-canvas.js +1 -0
- package/packages/web/src/text-input-clipboard.d.ts +1 -0
- package/packages/web/src/text-input-clipboard.js +1 -0
- package/packages/web/src/text-input-extra.d.ts +1 -0
- package/packages/web/src/text-input-extra.js +1 -0
- package/packages/web/src/text-input-svg.d.ts +1 -0
- package/packages/web/src/text-input-svg.js +1 -0
- package/packages/web/src/text-input.d.ts +1 -0
- package/packages/web/src/text-input.js +1 -0
- package/packages/web/src/text-overflow.d.ts +1 -0
- package/packages/web/src/text-overflow.js +1 -0
- package/packages/web/src/text.d.ts +1 -0
- package/packages/web/src/text.js +1 -0
- package/packages/web/src/texteffects.d.ts +1 -0
- package/packages/web/src/texteffects.js +1 -0
- package/packages/web/src/textinput.d.ts +1 -0
- package/packages/web/src/textinput.js +1 -0
- package/tools/browser-build.d.ts +3 -0
- package/tools/browser-build.js +33 -0
- package/tools/build-playground.d.ts +1 -0
- package/tools/build-playground.js +33 -0
- package/tools/modules.generated.d.ts +217 -0
- package/tools/modules.generated.js +1215 -0
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
import { pathLength } from "./path.js";
|
|
2
|
+
import { formatHex } from "./color.js";
|
|
3
|
+
import { IDENTITY, mul } from "./geom.js";
|
|
4
|
+
import { modules } from "./modules.js";
|
|
5
|
+
const lengths = /* @__PURE__ */ new WeakMap();
|
|
6
|
+
function geometryLength(g, owner = g) {
|
|
7
|
+
if (!g) return 0;
|
|
8
|
+
const signature = [g.d, g.r, g.width, g.height, g.rx];
|
|
9
|
+
const cached = lengths.get(owner);
|
|
10
|
+
if (cached && signature.every((v, i) => v === cached.signature[i])) return cached.value;
|
|
11
|
+
let value;
|
|
12
|
+
if (g.d !== void 0) value = pathLength(g.d);
|
|
13
|
+
else if (g.kind === "circle") value = 2 * Math.PI * g.r;
|
|
14
|
+
else {
|
|
15
|
+
const w = g.width, h = g.height, r = g.rx ?? 0;
|
|
16
|
+
const rx = Math.min(r, w / 2), ry = Math.min(r, h / 2);
|
|
17
|
+
value = 2 * (w + h - 2 * rx - 2 * ry) + (rx && ry ? 4 * pathLength(`M${rx} 0A${rx} ${ry} 0 0 1 0 ${ry}`) : 0);
|
|
18
|
+
}
|
|
19
|
+
lengths.set(owner, { signature, value });
|
|
20
|
+
return value;
|
|
21
|
+
}
|
|
22
|
+
function drawTree(model) {
|
|
23
|
+
let tree = model.draw;
|
|
24
|
+
if (!tree) {
|
|
25
|
+
const roots = [];
|
|
26
|
+
tree = {
|
|
27
|
+
nodes: model.nodes.map((n, node) => {
|
|
28
|
+
if (n.parent < 0) roots.push(node);
|
|
29
|
+
return {
|
|
30
|
+
node,
|
|
31
|
+
kind: n.type === "arc" ? "path" : n.type,
|
|
32
|
+
parent: n.parent,
|
|
33
|
+
children: n.children,
|
|
34
|
+
knockout: n.raw.knockout
|
|
35
|
+
};
|
|
36
|
+
}),
|
|
37
|
+
roots,
|
|
38
|
+
resources: []
|
|
39
|
+
};
|
|
40
|
+
model.drawModules = [...modules.values()].filter(
|
|
41
|
+
(m) => model.doc.requires?.includes(m.name) || model.doc.requires?.includes(m.name.split("@")[0])
|
|
42
|
+
);
|
|
43
|
+
for (const m of model.drawModules) m.draw?.tree?.(model, tree);
|
|
44
|
+
model.draw = tree;
|
|
45
|
+
}
|
|
46
|
+
return tree;
|
|
47
|
+
}
|
|
48
|
+
const drawColor = (p, value) => {
|
|
49
|
+
if (Array.isArray(value)) return formatHex(value);
|
|
50
|
+
const name = value;
|
|
51
|
+
return Object.hasOwn(p.model.colors, name) ? { slot: name, fallback: p.model.colors[name] } : name;
|
|
52
|
+
};
|
|
53
|
+
function drawPaint(p, i, kind, key = kind, raw = p.model.nodes[i].raw[kind]) {
|
|
54
|
+
if (!raw) return;
|
|
55
|
+
const num = (k, def) => p.num(i, key + "." + k, def);
|
|
56
|
+
return {
|
|
57
|
+
kind,
|
|
58
|
+
key,
|
|
59
|
+
color: drawColor(p, p.prop(i, key + ".color")),
|
|
60
|
+
rule: raw.rule,
|
|
61
|
+
visible: true,
|
|
62
|
+
...kind === "stroke" ? {
|
|
63
|
+
width: num("width", 1),
|
|
64
|
+
cap: raw.cap ?? "round",
|
|
65
|
+
join: raw.join ?? "round",
|
|
66
|
+
trim: ["trimStart", "trimEnd", "trimOffset"].some(
|
|
67
|
+
(k) => k in raw || p.prop(i, key + "." + k) !== void 0
|
|
68
|
+
) ? { start: num("trimStart", 0), end: num("trimEnd", 1), offset: num("trimOffset", 0) } : void 0
|
|
69
|
+
} : {}
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
const fmt = (v) => String(Math.round(v * 1e5) / 1e5 || 0);
|
|
73
|
+
function geometry(p, i) {
|
|
74
|
+
const n = p.model.nodes[i], r = n.raw;
|
|
75
|
+
const num = (k) => p.num(i, k, 0);
|
|
76
|
+
if (n.type === "path") return { kind: "path", d: n.d };
|
|
77
|
+
if (n.type === "circle") return { kind: "circle", cx: r.center[0], cy: r.center[1], r: num("r") };
|
|
78
|
+
if (n.type === "rect")
|
|
79
|
+
return { kind: "rect", x: r.x0, y: r.y0, width: num("w"), height: num("h"), rx: num("rx") };
|
|
80
|
+
if (n.type === "arc") {
|
|
81
|
+
const [cx, cy] = r.center, rad = num("r");
|
|
82
|
+
let from = num("from");
|
|
83
|
+
const sweep = Math.min(360, Math.max(0, num("to") - from));
|
|
84
|
+
const pt = (deg) => `${fmt(cx + rad * Math.cos(deg * Math.PI / 180))} ${fmt(cy + rad * Math.sin(deg * Math.PI / 180))}`;
|
|
85
|
+
let d = `M${pt(from)}`;
|
|
86
|
+
for (const part of sweep > 180 ? [sweep / 2, sweep / 2] : [sweep]) {
|
|
87
|
+
from += part;
|
|
88
|
+
d += `A${fmt(rad)} ${fmt(rad)} 0 0 1 ${pt(from)}`;
|
|
89
|
+
}
|
|
90
|
+
return { kind: "path", d };
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
function drawFrame(p) {
|
|
94
|
+
const f = p.drawData ??= {
|
|
95
|
+
revision: -1,
|
|
96
|
+
tree: drawTree(p.model),
|
|
97
|
+
nodes: [],
|
|
98
|
+
viewBox: p.model.viewBox,
|
|
99
|
+
changed: []
|
|
100
|
+
};
|
|
101
|
+
if (f.revision === p.drawRevision) return f;
|
|
102
|
+
f.changed = [];
|
|
103
|
+
for (let i = 0; i < p.model.nodes.length; i++) {
|
|
104
|
+
const dependencies = f.tree.nodes[i].dependencies ?? [i];
|
|
105
|
+
if (dependencies.every((n) => p.drawVersions[n] <= f.revision)) continue;
|
|
106
|
+
const data = {
|
|
107
|
+
transform: p.local(i),
|
|
108
|
+
opacity: p.num(i, "opacity", 1),
|
|
109
|
+
visible: p.prop(i, "visible") !== false,
|
|
110
|
+
geometry: geometry(p, i),
|
|
111
|
+
paints: []
|
|
112
|
+
};
|
|
113
|
+
for (const kind of ["fill", "stroke"]) {
|
|
114
|
+
const paint = drawPaint(p, i, kind);
|
|
115
|
+
if (paint) data.paints.push(paint);
|
|
116
|
+
}
|
|
117
|
+
for (const m of p.model.drawModules) m.draw?.frame?.(p, i, data, f.tree.nodes[i], f);
|
|
118
|
+
f.nodes[i] = data;
|
|
119
|
+
f.changed.push(i);
|
|
120
|
+
}
|
|
121
|
+
for (const m of p.model.drawModules) m.draw?.end?.(p, f);
|
|
122
|
+
f.revision = p.drawRevision;
|
|
123
|
+
return f;
|
|
124
|
+
}
|
|
125
|
+
function drawOrder(f, nodes) {
|
|
126
|
+
return [...nodes].sort((a, b) => (f.order?.[a] ?? a) - (f.order?.[b] ?? b));
|
|
127
|
+
}
|
|
128
|
+
function drawWorld(p, i, frame = p.hitFrame?.()) {
|
|
129
|
+
if (!frame) return p.world(i);
|
|
130
|
+
let m = IDENTITY;
|
|
131
|
+
for (let n = i; n >= 0; n = p.model.nodes[n].parent) m = mul(frame.nodes[n].transform, m);
|
|
132
|
+
return m;
|
|
133
|
+
}
|
|
134
|
+
export {
|
|
135
|
+
drawColor,
|
|
136
|
+
drawFrame,
|
|
137
|
+
drawOrder,
|
|
138
|
+
drawPaint,
|
|
139
|
+
drawTree,
|
|
140
|
+
drawWorld,
|
|
141
|
+
fmt,
|
|
142
|
+
geometryLength
|
|
143
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/** An ease maps segment progress u ∈ [0, 1] to a weight w (spec §5). */
|
|
2
|
+
export type EaseFn = (u: number) => number;
|
|
3
|
+
export declare const linear: EaseFn;
|
|
4
|
+
export declare const hold: EaseFn;
|
|
5
|
+
/** CSS cubic-bezier through (0,0) (x1,y1) (x2,y2) (1,1). */
|
|
6
|
+
export declare function cubic(x1: number, y1: number, x2: number, y2: number): EaseFn;
|
|
7
|
+
/** Ease-out elastic with amplitude a and period p (spec §5). */
|
|
8
|
+
export declare function elastic(a: number, p: number): EaseFn;
|
|
9
|
+
/** Parse an ease string. Returns the function, or an error message. */
|
|
10
|
+
export declare function parseEase(src: string): EaseFn | string;
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { VERBOSE as V } from "./flags.js";
|
|
2
|
+
const NUM = "\\s*(-?(?:\\d+\\.?\\d*|\\.\\d+)(?:[eE][-+]?\\d+)?)\\s*";
|
|
3
|
+
const CUBIC = new RegExp(`^cubic\\(${NUM},${NUM},${NUM},${NUM}\\)$`);
|
|
4
|
+
const ELASTIC = new RegExp(`^elastic\\(${NUM},${NUM}\\)$`);
|
|
5
|
+
const linear = (u) => u;
|
|
6
|
+
const hold = () => 0;
|
|
7
|
+
function cubic(x1, y1, x2, y2) {
|
|
8
|
+
const bez = (s, p1, p2) => {
|
|
9
|
+
const r = 1 - s;
|
|
10
|
+
return 3 * r * r * s * p1 + 3 * r * s * s * p2 + s * s * s;
|
|
11
|
+
};
|
|
12
|
+
const dx = (s) => {
|
|
13
|
+
const r = 1 - s;
|
|
14
|
+
return 3 * r * r * x1 + 6 * r * s * (x2 - x1) + 3 * s * s * (1 - x2);
|
|
15
|
+
};
|
|
16
|
+
return (u) => {
|
|
17
|
+
if (u <= 0) return 0;
|
|
18
|
+
if (u >= 1) return 1;
|
|
19
|
+
let s = u;
|
|
20
|
+
for (let i = 0; i < 8; i++) {
|
|
21
|
+
const e = bez(s, x1, x2) - u;
|
|
22
|
+
const d = dx(s);
|
|
23
|
+
if (Math.abs(e) < 1e-12 && d > 1e-3) return bez(s, y1, y2);
|
|
24
|
+
if (d < 1e-6) break;
|
|
25
|
+
s -= e / d;
|
|
26
|
+
if (s < 0 || s > 1) break;
|
|
27
|
+
}
|
|
28
|
+
let lo = 0;
|
|
29
|
+
let hi = 1;
|
|
30
|
+
for (let i = 0; i < 48; i++) {
|
|
31
|
+
s = (lo + hi) / 2;
|
|
32
|
+
if (bez(s, x1, x2) < u) lo = s;
|
|
33
|
+
else hi = s;
|
|
34
|
+
}
|
|
35
|
+
return bez((lo + hi) / 2, y1, y2);
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
function elastic(a, p) {
|
|
39
|
+
const A = Math.max(a, 1);
|
|
40
|
+
const s = p / (2 * Math.PI) * Math.asin(1 / A);
|
|
41
|
+
return (u) => u <= 0 ? 0 : u >= 1 ? 1 : A * 2 ** (-10 * u) * Math.sin((u - s) * 2 * Math.PI / p) + 1;
|
|
42
|
+
}
|
|
43
|
+
const NAMED = {
|
|
44
|
+
linear,
|
|
45
|
+
hold,
|
|
46
|
+
in: cubic(0.42, 0, 1, 1),
|
|
47
|
+
out: cubic(0, 0, 0.58, 1),
|
|
48
|
+
inOut: cubic(0.42, 0, 0.58, 1)
|
|
49
|
+
};
|
|
50
|
+
function parseEase(src) {
|
|
51
|
+
const named = Object.hasOwn(NAMED, src) ? NAMED[src] : void 0;
|
|
52
|
+
if (named) return named;
|
|
53
|
+
let m = CUBIC.exec(src);
|
|
54
|
+
if (m) {
|
|
55
|
+
const [x1, y1, x2, y2] = m.slice(1).map(Number);
|
|
56
|
+
if (x1 < 0 || x1 > 1 || x2 < 0 || x2 > 1) return V ? "cubic x1 and x2 must lie in [0, 1]" : "";
|
|
57
|
+
if (!isFinite(y1) || !isFinite(y2)) return V ? "cubic arguments must be finite" : "";
|
|
58
|
+
return cubic(x1, y1, x2, y2);
|
|
59
|
+
}
|
|
60
|
+
m = ELASTIC.exec(src);
|
|
61
|
+
if (m) {
|
|
62
|
+
const [a, p] = m.slice(1).map(Number);
|
|
63
|
+
if (!(a >= 0 && p > 0 && isFinite(a) && isFinite(p)))
|
|
64
|
+
return V ? "elastic needs finite a \u2265 0 and p > 0" : "";
|
|
65
|
+
return elastic(a, p);
|
|
66
|
+
}
|
|
67
|
+
return V ? "not an ease" : "";
|
|
68
|
+
}
|
|
69
|
+
export {
|
|
70
|
+
cubic,
|
|
71
|
+
elastic,
|
|
72
|
+
hold,
|
|
73
|
+
linear,
|
|
74
|
+
parseEase
|
|
75
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { Model } from './load.js';
|
|
2
|
+
import type { AnimaEvent } from './player.js';
|
|
3
|
+
export declare let capturing: boolean;
|
|
4
|
+
export declare function beginStep(dt: number): void;
|
|
5
|
+
export declare function endStep(): void;
|
|
6
|
+
export declare function stampEntryEvent(event: AnimaEvent, offset: number): AnimaEvent;
|
|
7
|
+
export declare function capture<T>(op: () => T): T;
|
|
8
|
+
export declare const occurrence: unique symbol;
|
|
9
|
+
export declare const eventSource: unique symbol;
|
|
10
|
+
export type CapturedEvent = AnimaEvent & {
|
|
11
|
+
[occurrence]?: number;
|
|
12
|
+
[eventSource]?: Model;
|
|
13
|
+
};
|
|
14
|
+
export declare function stampEvent(event: AnimaEvent, fraction: number): AnimaEvent;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
let capturing = false;
|
|
2
|
+
const steps = [];
|
|
3
|
+
function beginStep(dt) {
|
|
4
|
+
if (capturing) steps.push(dt);
|
|
5
|
+
}
|
|
6
|
+
function endStep() {
|
|
7
|
+
if (capturing) steps.pop();
|
|
8
|
+
}
|
|
9
|
+
function stampEntryEvent(event, offset) {
|
|
10
|
+
const dt = steps.at(-1) ?? 0;
|
|
11
|
+
return stampEvent(event, dt ? 1 + offset / dt : 0);
|
|
12
|
+
}
|
|
13
|
+
function capture(op) {
|
|
14
|
+
const previous = capturing;
|
|
15
|
+
const depth = steps.length;
|
|
16
|
+
capturing = true;
|
|
17
|
+
try {
|
|
18
|
+
return op();
|
|
19
|
+
} finally {
|
|
20
|
+
capturing = previous;
|
|
21
|
+
steps.length = depth;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
const occurrence = /* @__PURE__ */ Symbol("anima event fraction");
|
|
25
|
+
const eventSource = /* @__PURE__ */ Symbol("anima event source");
|
|
26
|
+
function stampEvent(event, fraction) {
|
|
27
|
+
if (capturing) event[occurrence] = Number.isFinite(fraction) ? fraction : 0;
|
|
28
|
+
return event;
|
|
29
|
+
}
|
|
30
|
+
export {
|
|
31
|
+
beginStep,
|
|
32
|
+
capture,
|
|
33
|
+
capturing,
|
|
34
|
+
endStep,
|
|
35
|
+
eventSource,
|
|
36
|
+
occurrence,
|
|
37
|
+
stampEntryEvent,
|
|
38
|
+
stampEvent
|
|
39
|
+
};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Build flag. When false (the browser build, see tools/size.ts and packages/web/build.ts),
|
|
3
|
+
* diagnostics keep their code, severity and pointer but drop message and hint text, so the
|
|
4
|
+
* strict loader fits the size budget. Tooling (`anima validate`) always runs with it true.
|
|
5
|
+
*/
|
|
6
|
+
export declare const VERBOSE: boolean;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { DOC, NODE_TYPES, nodeShape } from "./registry.js";
|
|
2
|
+
const NODE_ORDER = "id type glyph subpaths d center x0 y0 w h r rx from to pivot x y rotate scale scaleX scaleY opacity visible fill stroke knockout children";
|
|
3
|
+
const isPlain = (v) => v === null || typeof v !== "object";
|
|
4
|
+
function order(keys, wanted) {
|
|
5
|
+
const rank = (k) => k === "$comment" ? -1 : wanted.indexOf(k) < 0 ? 1e6 : wanted.indexOf(k);
|
|
6
|
+
return [...keys].sort((a, b) => rank(a) - rank(b));
|
|
7
|
+
}
|
|
8
|
+
function print(v, s, indent) {
|
|
9
|
+
s = s?.format ?? s;
|
|
10
|
+
if (isPlain(v)) return JSON.stringify(v);
|
|
11
|
+
const inner = indent + " ";
|
|
12
|
+
if (Array.isArray(v)) {
|
|
13
|
+
if (v.every(isPlain)) return `[${v.map((x) => JSON.stringify(x)).join(", ")}]`;
|
|
14
|
+
const of = s?.k === "arr" ? s.of : void 0;
|
|
15
|
+
return `[
|
|
16
|
+
${v.map((x, i) => inner + print(x, s?.k === "tup" ? s.of[i] : of, inner)).join(",\n")}
|
|
17
|
+
${indent}]`;
|
|
18
|
+
}
|
|
19
|
+
const o = v;
|
|
20
|
+
let keys = Object.keys(o);
|
|
21
|
+
let child = (_k) => void 0;
|
|
22
|
+
if (s?.k === "node" && typeof o.type === "string" && NODE_TYPES.includes(o.type)) {
|
|
23
|
+
const ns = nodeShape(o.type);
|
|
24
|
+
keys = order(keys, NODE_ORDER.split(" "));
|
|
25
|
+
child = (k) => ns.p[k];
|
|
26
|
+
} else if (s?.k === "obj") {
|
|
27
|
+
keys = order(keys, Object.keys(s.p));
|
|
28
|
+
child = (k) => s.p[k];
|
|
29
|
+
} else if (s?.k === "map") child = () => s.of;
|
|
30
|
+
if (!keys.length) return "{}";
|
|
31
|
+
return `{
|
|
32
|
+
${keys.map((k) => `${inner}${JSON.stringify(k)}: ${print(o[k], child(k), inner)}`).join(",\n")}
|
|
33
|
+
${indent}}`;
|
|
34
|
+
}
|
|
35
|
+
function formatAni(doc) {
|
|
36
|
+
return print(doc, DOC, "") + "\n";
|
|
37
|
+
}
|
|
38
|
+
export {
|
|
39
|
+
formatAni
|
|
40
|
+
};
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export type Mat = [number, number, number, number, number, number];
|
|
2
|
+
/** Clamp a numeric value to inclusive bounds. */
|
|
3
|
+
export declare const clamp: (v: number, min: number, max: number) => number;
|
|
4
|
+
export declare const IDENTITY: Mat;
|
|
5
|
+
export declare const mul: (m: Mat, n: Mat) => Mat;
|
|
6
|
+
/** Spec §4: T(x, y) · T(px, py) · R(rotate) · S(sx, sy) · T(−px, −py). */
|
|
7
|
+
export declare function localMatrix(x: number, y: number, px: number, py: number, deg: number, sx: number, sy: number): Mat;
|
|
8
|
+
export declare function invert(m: Mat): Mat | null;
|
|
9
|
+
export declare const apply: (m: Mat, x: number, y: number) => [number, number];
|
|
10
|
+
/** Point in closed polylines by fill rule. */
|
|
11
|
+
export declare function inside(polys: number[][], x: number, y: number, evenodd: boolean): boolean;
|
|
12
|
+
/**
|
|
13
|
+
* The visible part of a stroke trimmed to `len` (< 1) of its outline length from fraction `start`,
|
|
14
|
+
* wrapping around 1 (spec §4 trims), as open polylines. As SVG dashes it, the pattern's period is the
|
|
15
|
+
* whole outline's length and its phase restarts at each contour (a segment after Z starts one).
|
|
16
|
+
*/
|
|
17
|
+
export declare function trimPolys(polys: {
|
|
18
|
+
pts: number[];
|
|
19
|
+
closed: boolean;
|
|
20
|
+
}[], start: number, len: number): {
|
|
21
|
+
pts: number[];
|
|
22
|
+
closed: boolean;
|
|
23
|
+
}[];
|
|
24
|
+
/** Distance from a point to polylines (closed ones include their closing edge). */
|
|
25
|
+
export declare function distance(polys: {
|
|
26
|
+
pts: number[];
|
|
27
|
+
closed: boolean;
|
|
28
|
+
}[], x: number, y: number): number;
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
const clamp = (v, min, max) => Math.min(max, Math.max(min, v));
|
|
2
|
+
const IDENTITY = [1, 0, 0, 1, 0, 0];
|
|
3
|
+
const mul = (m, n) => [
|
|
4
|
+
m[0] * n[0] + m[2] * n[1],
|
|
5
|
+
m[1] * n[0] + m[3] * n[1],
|
|
6
|
+
m[0] * n[2] + m[2] * n[3],
|
|
7
|
+
m[1] * n[2] + m[3] * n[3],
|
|
8
|
+
m[0] * n[4] + m[2] * n[5] + m[4],
|
|
9
|
+
m[1] * n[4] + m[3] * n[5] + m[5]
|
|
10
|
+
];
|
|
11
|
+
function localMatrix(x, y, px, py, deg, sx, sy) {
|
|
12
|
+
const r = deg * Math.PI / 180;
|
|
13
|
+
const cos = Math.cos(r);
|
|
14
|
+
const sin = Math.sin(r);
|
|
15
|
+
const a = cos * sx;
|
|
16
|
+
const b = sin * sx;
|
|
17
|
+
const c = -sin * sy;
|
|
18
|
+
const d = cos * sy;
|
|
19
|
+
return [a, b, c, d, x + px - a * px - c * py, y + py - b * px - d * py];
|
|
20
|
+
}
|
|
21
|
+
function invert(m) {
|
|
22
|
+
const det = m[0] * m[3] - m[1] * m[2];
|
|
23
|
+
if (!det) return null;
|
|
24
|
+
return [
|
|
25
|
+
m[3] / det,
|
|
26
|
+
-m[1] / det,
|
|
27
|
+
-m[2] / det,
|
|
28
|
+
m[0] / det,
|
|
29
|
+
(m[2] * m[5] - m[3] * m[4]) / det,
|
|
30
|
+
(m[1] * m[4] - m[0] * m[5]) / det
|
|
31
|
+
];
|
|
32
|
+
}
|
|
33
|
+
const apply = (m, x, y) => [
|
|
34
|
+
m[0] * x + m[2] * y + m[4],
|
|
35
|
+
m[1] * x + m[3] * y + m[5]
|
|
36
|
+
];
|
|
37
|
+
function inside(polys, x, y, evenodd) {
|
|
38
|
+
let wind = 0;
|
|
39
|
+
for (const p of polys) {
|
|
40
|
+
const n = p.length;
|
|
41
|
+
for (let i = 0; i < n; i += 2) {
|
|
42
|
+
const x0 = p[i], y0 = p[i + 1];
|
|
43
|
+
const x1 = p[(i + 2) % n], y1 = p[(i + 3) % n];
|
|
44
|
+
if (y0 <= y ? y1 > y : y1 <= y) {
|
|
45
|
+
const t = x0 + (y - y0) / (y1 - y0) * (x1 - x0);
|
|
46
|
+
if (t > x) wind += y1 > y0 ? 1 : -1;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
return evenodd ? wind % 2 !== 0 : wind !== 0;
|
|
51
|
+
}
|
|
52
|
+
function trimPolys(polys, start, len) {
|
|
53
|
+
const out = [];
|
|
54
|
+
if (len <= 0) return out;
|
|
55
|
+
const contours = polys.map(({ pts, closed }) => {
|
|
56
|
+
const p = closed ? [...pts, pts[0], pts[1]] : pts;
|
|
57
|
+
const at = [0];
|
|
58
|
+
for (let i = 2; i < p.length; i += 2)
|
|
59
|
+
at.push(at[at.length - 1] + Math.hypot(p[i] - p[i - 2], p[i + 1] - p[i - 1]));
|
|
60
|
+
return { p, at };
|
|
61
|
+
});
|
|
62
|
+
const total = contours.reduce((sum, c) => sum + c.at[c.at.length - 1], 0);
|
|
63
|
+
const s = (start % 1 + 1) % 1 * total, e = s + len * total;
|
|
64
|
+
for (const { p, at } of contours) {
|
|
65
|
+
const cut = (a, b) => {
|
|
66
|
+
const q = [];
|
|
67
|
+
for (let j = 0; j < at.length - 1; j++) {
|
|
68
|
+
const l0 = at[j], l1 = at[j + 1];
|
|
69
|
+
if (l1 < a || l0 > b) continue;
|
|
70
|
+
const f = (l) => l1 > l0 ? (Math.min(Math.max(l, l0), l1) - l0) / (l1 - l0) : 0;
|
|
71
|
+
for (const t of q.length ? [f(b)] : [f(a), f(b)])
|
|
72
|
+
q.push(
|
|
73
|
+
p[2 * j] + (p[2 * j + 2] - p[2 * j]) * t,
|
|
74
|
+
p[2 * j + 1] + (p[2 * j + 3] - p[2 * j + 1]) * t
|
|
75
|
+
);
|
|
76
|
+
}
|
|
77
|
+
if (q.length) out.push({ pts: q, closed: false });
|
|
78
|
+
};
|
|
79
|
+
cut(s, e);
|
|
80
|
+
if (e > total) cut(0, e - total);
|
|
81
|
+
}
|
|
82
|
+
return out;
|
|
83
|
+
}
|
|
84
|
+
function distance(polys, x, y) {
|
|
85
|
+
let best = Infinity;
|
|
86
|
+
for (const { pts, closed } of polys) {
|
|
87
|
+
const n = pts.length;
|
|
88
|
+
const last = closed ? n : n - 2;
|
|
89
|
+
if (n === 2) best = Math.min(best, Math.hypot(x - pts[0], y - pts[1]));
|
|
90
|
+
for (let i = 0; i < last; i += 2) {
|
|
91
|
+
const x0 = pts[i], y0 = pts[i + 1];
|
|
92
|
+
const x1 = pts[(i + 2) % n], y1 = pts[(i + 3) % n];
|
|
93
|
+
const dx = x1 - x0, dy = y1 - y0;
|
|
94
|
+
const l2 = dx * dx + dy * dy;
|
|
95
|
+
const t = l2 ? Math.max(0, Math.min(1, ((x - x0) * dx + (y - y0) * dy) / l2)) : 0;
|
|
96
|
+
best = Math.min(best, Math.hypot(x - x0 - t * dx, y - y0 - t * dy));
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
return best;
|
|
100
|
+
}
|
|
101
|
+
export {
|
|
102
|
+
IDENTITY,
|
|
103
|
+
apply,
|
|
104
|
+
clamp,
|
|
105
|
+
distance,
|
|
106
|
+
inside,
|
|
107
|
+
invert,
|
|
108
|
+
localMatrix,
|
|
109
|
+
mul,
|
|
110
|
+
trimPolys
|
|
111
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export * from './load.js';
|
|
2
|
+
export { registerModule, modules, type Module, type ModuleEntry } from './modules.js';
|
|
3
|
+
export type { Diagnostic } from './diag.js';
|
|
4
|
+
export { parsePath, selectPath, flatten, formatSegs, PathError, type Subpath } from './path.js';
|
|
5
|
+
export { parseEase, cubic, elastic, type EaseFn } from './ease.js';
|
|
6
|
+
export { parseHex, formatHex, lerpColor, type RGBA } from './color.js';
|
|
7
|
+
export { parseCondition, type Term } from './cond.js';
|
|
8
|
+
export { Player, sampleTrack, type AnimaEvent, type LayerInspect, type StepResult, type PointerKind, } from './player.js';
|
|
9
|
+
export { runScript, ScriptError, type Snapshot } from './script.js';
|
|
10
|
+
export { localMatrix, mul, invert, apply, clamp, IDENTITY, type Mat } from './geom.js';
|
|
11
|
+
export { sceneTree, sceneOrder, attrs, svgAttrs, toSVG, cssSlots, staticSlots, type El, type Attrs, type Paint, } from './svg.js';
|
|
12
|
+
export * from './registry.js';
|
|
13
|
+
export { jsonSchema } from './schema.js';
|
|
14
|
+
export { VERBOSE } from './flags.js';
|
|
15
|
+
export { formatAni } from './format.js';
|
|
16
|
+
export { suggest, ptr } from './diag.js';
|
|
17
|
+
export * from './draw.js';
|
|
18
|
+
export { registerSVGBackend, svgBackends, type SVGBackend } from './svg.js';
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
export * from "./load.js";
|
|
2
|
+
import { registerModule, modules } from "./modules.js";
|
|
3
|
+
import { parsePath, selectPath, flatten, formatSegs, PathError } from "./path.js";
|
|
4
|
+
import { parseEase, cubic, elastic } from "./ease.js";
|
|
5
|
+
import { parseHex, formatHex, lerpColor } from "./color.js";
|
|
6
|
+
import { parseCondition } from "./cond.js";
|
|
7
|
+
import {
|
|
8
|
+
Player,
|
|
9
|
+
sampleTrack
|
|
10
|
+
} from "./player.js";
|
|
11
|
+
import { runScript, ScriptError } from "./script.js";
|
|
12
|
+
import { localMatrix, mul, invert, apply, clamp, IDENTITY } from "./geom.js";
|
|
13
|
+
import {
|
|
14
|
+
sceneTree,
|
|
15
|
+
sceneOrder,
|
|
16
|
+
attrs,
|
|
17
|
+
svgAttrs,
|
|
18
|
+
toSVG,
|
|
19
|
+
cssSlots,
|
|
20
|
+
staticSlots
|
|
21
|
+
} from "./svg.js";
|
|
22
|
+
export * from "./registry.js";
|
|
23
|
+
import { jsonSchema } from "./schema.js";
|
|
24
|
+
import { VERBOSE } from "./flags.js";
|
|
25
|
+
import { formatAni } from "./format.js";
|
|
26
|
+
import { suggest, ptr } from "./diag.js";
|
|
27
|
+
export * from "./draw.js";
|
|
28
|
+
import { registerSVGBackend, svgBackends } from "./svg.js";
|
|
29
|
+
export {
|
|
30
|
+
IDENTITY,
|
|
31
|
+
PathError,
|
|
32
|
+
Player,
|
|
33
|
+
ScriptError,
|
|
34
|
+
VERBOSE,
|
|
35
|
+
apply,
|
|
36
|
+
attrs,
|
|
37
|
+
clamp,
|
|
38
|
+
cssSlots,
|
|
39
|
+
cubic,
|
|
40
|
+
elastic,
|
|
41
|
+
flatten,
|
|
42
|
+
formatAni,
|
|
43
|
+
formatHex,
|
|
44
|
+
formatSegs,
|
|
45
|
+
invert,
|
|
46
|
+
jsonSchema,
|
|
47
|
+
lerpColor,
|
|
48
|
+
localMatrix,
|
|
49
|
+
modules,
|
|
50
|
+
mul,
|
|
51
|
+
parseCondition,
|
|
52
|
+
parseEase,
|
|
53
|
+
parseHex,
|
|
54
|
+
parsePath,
|
|
55
|
+
ptr,
|
|
56
|
+
registerModule,
|
|
57
|
+
registerSVGBackend,
|
|
58
|
+
runScript,
|
|
59
|
+
sampleTrack,
|
|
60
|
+
sceneOrder,
|
|
61
|
+
sceneTree,
|
|
62
|
+
selectPath,
|
|
63
|
+
staticSlots,
|
|
64
|
+
suggest,
|
|
65
|
+
svgAttrs,
|
|
66
|
+
svgBackends,
|
|
67
|
+
toSVG
|
|
68
|
+
};
|