use-scroll-animate 4.4.0 → 4.5.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.
Files changed (104) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/chunks/{base-BtJDNCB6.js → base-CZiIAMBc.js} +97 -10
  3. package/dist/chunks/base-CZiIAMBc.js.map +1 -0
  4. package/dist/chunks/{base-DE2yzxE7.cjs → base-CxYU2NK_.cjs} +102 -9
  5. package/dist/chunks/base-CxYU2NK_.cjs.map +1 -0
  6. package/dist/chunks/{core-DS1nrx5L.js → core-CJHJeMI_.js} +2 -2
  7. package/dist/chunks/{core-DS1nrx5L.js.map → core-CJHJeMI_.js.map} +1 -1
  8. package/dist/chunks/{core-DX6pdOoY.js → core-COi3DrLx.js} +2 -2
  9. package/dist/chunks/{core-DX6pdOoY.js.map → core-COi3DrLx.js.map} +1 -1
  10. package/dist/chunks/{core-DPYjLqA0.cjs → core-CctNfzuP.cjs} +2 -2
  11. package/dist/chunks/{core-DPYjLqA0.cjs.map → core-CctNfzuP.cjs.map} +1 -1
  12. package/dist/chunks/{core-BC9S2osy.cjs → core-HLqH3qkA.cjs} +2 -2
  13. package/dist/chunks/{core-BC9S2osy.cjs.map → core-HLqH3qkA.cjs.map} +1 -1
  14. package/dist/chunks/{spring-CxRz49Wk.js → spring-BS5tg6aK.js} +2 -2
  15. package/dist/chunks/{spring-CxRz49Wk.js.map → spring-BS5tg6aK.js.map} +1 -1
  16. package/dist/chunks/{spring-hsmgd7ml.cjs → spring-Dkpygsuj.cjs} +2 -2
  17. package/dist/chunks/{spring-hsmgd7ml.cjs.map → spring-Dkpygsuj.cjs.map} +1 -1
  18. package/dist/chunks/{variants-CM2zaG8v.cjs → variants-CfJzrzMh.cjs} +2 -2
  19. package/dist/chunks/{variants-CM2zaG8v.cjs.map → variants-CfJzrzMh.cjs.map} +1 -1
  20. package/dist/chunks/{variants-dD6SbUMR.js → variants-D9n-3x27.js} +2 -2
  21. package/dist/chunks/{variants-dD6SbUMR.js.map → variants-D9n-3x27.js.map} +1 -1
  22. package/dist/components/a11y.cjs +1 -1
  23. package/dist/components/a11y.js +2 -2
  24. package/dist/components/angular.cjs +6 -5
  25. package/dist/components/angular.cjs.map +1 -1
  26. package/dist/components/angular.js +6 -5
  27. package/dist/components/angular.js.map +1 -1
  28. package/dist/components/background.cjs +2 -2
  29. package/dist/components/background.js +3 -3
  30. package/dist/components/cards.cjs +2 -2
  31. package/dist/components/cards.js +3 -3
  32. package/dist/components/click.cjs +2 -2
  33. package/dist/components/click.js +3 -3
  34. package/dist/components/depth.cjs +3 -3
  35. package/dist/components/depth.js +4 -4
  36. package/dist/components/feedback.cjs +1 -1
  37. package/dist/components/feedback.js +2 -2
  38. package/dist/components/gesture.cjs +3 -3
  39. package/dist/components/gesture.js +5 -5
  40. package/dist/components/interaction.cjs +1 -1
  41. package/dist/components/interaction.js +2 -2
  42. package/dist/components/layout.cjs +1 -1
  43. package/dist/components/layout.js +2 -2
  44. package/dist/components/lite.cjs +10398 -0
  45. package/dist/components/lite.cjs.map +1 -0
  46. package/dist/components/lite.d.cts +4 -0
  47. package/dist/components/lite.d.ts +4 -0
  48. package/dist/components/lite.js +10161 -0
  49. package/dist/components/lite.js.map +1 -0
  50. package/dist/components/packs.cjs +1 -1
  51. package/dist/components/packs.js +2 -2
  52. package/dist/components/page.cjs +2 -2
  53. package/dist/components/page.js +3 -3
  54. package/dist/components/perf.cjs +121 -0
  55. package/dist/components/perf.cjs.map +1 -0
  56. package/dist/components/perf.d.cts +97 -0
  57. package/dist/components/perf.d.ts +97 -0
  58. package/dist/components/perf.js +111 -0
  59. package/dist/components/perf.js.map +1 -0
  60. package/dist/components/physics.cjs +2 -2
  61. package/dist/components/physics.js +4 -4
  62. package/dist/components/reveal.cjs +1 -1
  63. package/dist/components/reveal.js +2 -2
  64. package/dist/components/solid.cjs +6 -5
  65. package/dist/components/solid.cjs.map +1 -1
  66. package/dist/components/solid.js +6 -5
  67. package/dist/components/solid.js.map +1 -1
  68. package/dist/components/svelte.cjs +6 -5
  69. package/dist/components/svelte.cjs.map +1 -1
  70. package/dist/components/svelte.js +6 -5
  71. package/dist/components/svelte.js.map +1 -1
  72. package/dist/components/svg.cjs +1 -1
  73. package/dist/components/svg.js +2 -2
  74. package/dist/components/text.cjs +2 -2
  75. package/dist/components/text.js +3 -3
  76. package/dist/components/timeline.cjs +2 -2
  77. package/dist/components/timeline.js +4 -4
  78. package/dist/components/transitions.cjs +1 -1
  79. package/dist/components/transitions.js +2 -2
  80. package/dist/components/ui.cjs +3 -3
  81. package/dist/components/ui.js +5 -5
  82. package/dist/components/vue.cjs +6 -5
  83. package/dist/components/vue.cjs.map +1 -1
  84. package/dist/components/vue.js +6 -5
  85. package/dist/components/vue.js.map +1 -1
  86. package/dist/components/webgl.cjs +1 -1
  87. package/dist/components/webgl.js +2 -2
  88. package/dist/components.cjs +16 -5
  89. package/dist/components.cjs.map +1 -1
  90. package/dist/components.d.cts +73 -2
  91. package/dist/components.d.ts +73 -2
  92. package/dist/components.js +8 -7
  93. package/dist/components.js.map +1 -1
  94. package/dist/components.umd.js +2 -2
  95. package/dist/components.umd.js.map +1 -1
  96. package/dist/index.cjs +2 -2
  97. package/dist/index.js +2 -2
  98. package/dist/index.umd.js +2 -2
  99. package/dist/index.umd.js.map +1 -1
  100. package/docs/ROADMAP.md +1 -1
  101. package/docs/performance.md +24 -0
  102. package/package.json +21 -1
  103. package/dist/chunks/base-BtJDNCB6.js.map +0 -1
  104. package/dist/chunks/base-DE2yzxE7.cjs.map +0 -1
@@ -64,6 +64,22 @@ interface UsaElement extends HTMLElement {
64
64
  /** `true` while reduced motion applies to this element. */
65
65
  readonly reduced: boolean;
66
66
  }
67
+ /** Run `fn(time, dt)` every frame on the shared scheduler until the returned function is called. */
68
+ declare function onFrame(fn: (t: number, dt: number) => void): () => void;
69
+ /** Scheduler counters: frames flushed, callbacks run, peak callbacks in one frame, pending now. */
70
+ declare function schedulerStats(): {
71
+ frames: number;
72
+ callbacks: number;
73
+ peak: number;
74
+ pending: number;
75
+ loops: number;
76
+ };
77
+ /** Number of component animations running right now. */
78
+ declare const activeAnimations: () => number;
79
+ /** Cap concurrent component animations; extra ones jump to their final frame (`Infinity` = no cap). */
80
+ declare function setAnimationBudget(max: number): void;
81
+ /** The current cap. */
82
+ declare const animationBudget: () => number;
67
83
 
68
84
  /** Entrance effects shared by `<usa-reveal>` and `<usa-stagger>` (transform / opacity / filter only). */
69
85
  declare const REVEAL_EFFECTS: readonly ["fade", "fade-up", "fade-down", "fade-left", "fade-right", "zoom-in", "zoom-out", "blur", "blur-up", "flip-up", "flip-left", "rise"];
@@ -2677,11 +2693,66 @@ declare function auditMotionA11y(root: Element | Document): {
2677
2693
  /** Every `<usa-*>` tag, for sweeping audits. */
2678
2694
  declare const ALL_TAGS: string[];
2679
2695
 
2696
+ /**
2697
+ * use-scroll-animate/components/perf — performance toolkit (4.5).
2698
+ *
2699
+ * - One shared rAF scheduler for every component loop (`onFrame()`, `schedulerStats()`).
2700
+ * - Animation budget: `setAnimationBudget(n)` caps concurrent component
2701
+ * animations; extra ones land on their final frame.
2702
+ * - `autoDegrade()`: watches frame rate and animation count and steps motion
2703
+ * down (`low`, then a tighter budget) while the device struggles, restoring
2704
+ * it when frames recover.
2705
+ * - On-demand CSS: `loadCategoryStyles()` / `onDemandStyles()` — used by
2706
+ * `use-scroll-animate/components/lite`, the build without inlined CSS.
2707
+ */
2708
+
2709
+ interface AutoDegradeOptions {
2710
+ /** Frame rate below which motion is degraded (default 45). */
2711
+ minFps?: number;
2712
+ /** Concurrent animations above which motion is degraded (default 40). */
2713
+ maxActive?: number;
2714
+ /** Sample window in ms (default 1000). */
2715
+ sample?: number;
2716
+ /** Bad samples in a row before degrading (default 2). */
2717
+ patience?: number;
2718
+ /** Good samples in a row before restoring (default 3). */
2719
+ recovery?: number;
2720
+ /** Called on every change. */
2721
+ onChange?: (state: DegradeState) => void;
2722
+ }
2723
+ interface DegradeState {
2724
+ degraded: boolean;
2725
+ fps: number;
2726
+ active: number;
2727
+ reason: '' | 'fps' | 'count';
2728
+ }
2729
+ /**
2730
+ * Watch frame rate and animation count; while the device struggles, set
2731
+ * motion intensity to `low` and cap concurrent animations at `maxActive / 2`,
2732
+ * then restore the previous settings once frames recover. Dispatches
2733
+ * `usa:degrade` on `document`. Returns a stop function (restores settings).
2734
+ */
2735
+ declare function autoDegrade(options?: AutoDegradeOptions): () => void;
2736
+ /** The category of a default `<usa-*>` tag. */
2737
+ declare const categoryOf: (tag: string) => ComponentCategory | undefined;
2738
+ /**
2739
+ * Add `<link rel="stylesheet" href="{base}components/{category}.css">` once.
2740
+ * `base` is the URL of the package's `dist/` folder.
2741
+ */
2742
+ declare function loadCategoryStyles(category: ComponentCategory | 'all', base: string): HTMLLinkElement | null;
2743
+ /**
2744
+ * Load each category's CSS the first time one of its elements connects
2745
+ * (custom tags fall back to the full stylesheet). Returns an undo.
2746
+ */
2747
+ declare function onDemandStyles(base: string): () => void;
2748
+ /** Categories whose CSS has been requested so far. */
2749
+ declare const loadedStyles: () => string[];
2750
+
2680
2751
  /**
2681
2752
  * Register every `<usa-*>` component (or only the given categories).
2682
2753
  * Safe to call more than once and on the server (no-op without DOM).
2683
2754
  */
2684
2755
  declare function defineComponents(categories?: ComponentCategory[]): void;
2685
2756
 
2686
- export { ALL_TAGS, AMBIENT_EFFECTS, ANIM_ICONS, BUTTON_DEFORMS, CARD_EFFECTS, CLICK_EFFECTS, COMPONENT_CATEGORIES, CURSOR_MODES, JOINING_SCRIPT, LIVE_REGION_IDS, MASK_SHAPES, MORPH_ICONS, MOTION_SCALE, MOTION_SENSITIVITY, MOTION_SENSITIVITY_LEVELS, MOTION_TOKENS, PACKS, PACK_PRIMITIVES, PAGE_EFFECTS, REVEAL_EFFECTS, SENSITIVITY_CSS, SHADERS, SPINNER_VARIANTS, SPRING_EFFECTS, SPRING_PRESETS, STATIC_ALTERNATIVES, TIMELINE_PRESETS, VARIANTS, adaptKeyframes, adoptVariants, announce, applyMotionTokens, applyPack, auditMotionA11y, autoAnimate, burst, confetti, configureComponents, countUp, createSpring, defineAccordion, defineAcrylic, defineAmbient, defineAnimIcon, defineAurora, defineAutoAnimate, defineAutoSkeleton, defineAvatarStack, defineBackToTop, defineBackgroundComponents, defineBadge, defineBlobs, defineBottomSheet, defineButton, defineCard, defineCardComponents, defineCardStack, defineCarousel3d, defineCheck, defineCheckbox, defineClick, defineClickComponents, defineComponents, defineCounter, defineCube, defineCursor, defineDepth, defineDepthComponents, defineDialog, defineDistort, defineDotNetwork, defineDoubleTap, defineDraggable, defineDraw, defineDrawer, defineFab, defineFeedbackComponents, defineFullpage, defineGestureComponents, defineGlitch, defineGradientText, defineGrain, defineGridGlow, defineHandwriting, defineHold, defineIconMorph, defineInteractionComponents, defineLayoutComponents, defineLike, defineLiquid, defineLoadingBar, defineMagnetic, defineMarquee, defineMaskReveal, defineMasonry, defineMorph, defineMotionSwitch, defineNavbar, defineOverscroll, definePack, definePacksComponents, definePageComponents, defineParticles, definePhysicsComponents, definePinchZoom, definePopover, definePress, defineProgress, definePullRefresh, defineRating, defineReveal, defineRevealComponents, defineRipple, defineScramble, defineScrollHighlight, defineScrollProgress, defineScrolly, defineShader, defineShimmerText, defineSkeleton, defineSlider, defineSpinner, defineSplash, defineSplitText, defineSpotlight, defineSpring, defineStagger, defineStickyStack, defineSvgComponents, defineSwipeable, defineTabs, defineTextComponents, defineTextRotate, defineTilt, defineTimeline, defineTimelineComponents, defineToaster, defineToggle, defineTooltip, defineTransitionComponents, defineTypewriter, defineUiComponents, defineViewSwitch, defineWaterRipple, defineWaveText, defineWebglComponents, deviceTilt, drawLines, easeOutExpo, enableMpaTransitions, flip, flipFrames, fluentPreset, flyToCart, fragmentSource, gesture, getMotionIntensity, getMotionSensitivity, getMotionTokens, glQuad, graphemes, haptic, importMotionTokens, interpolatePath, linearEasing, liveRegion, loadingBar, masonryLayout, mergeMotionTokens, morphPath, morphTo, motionAllowed, motionToken, motionTokensToCss, motionTokensToJSON, motionTokensToVars, motionVar, orientationToTilt, pageTransition, parseDuration, parseEasing, pathsCompatible, pinchScale, prefersReducedMotion, projectInertia, readScrollProgress, requestOrientationPermission, resolveDurationToken, resolveEasingToken, resolvePosition, resolveSpring, restoreMotionIntensity, restoreMotionSensitivity, revealKeyframes, rubberBand, scrambleFrame, scrollToTarget, setMotionIntensity, setMotionSensitivity, setVariant, shake, sharedTransition, smoothScroll, snapTo, splitOrder, splitText, splitTimeline, words as splitWords, spring, springEasing, springEffectKeyframes, springSamples, staticAlternative, stepSpring, supportsLinearEasing, supportsNativeScrub, supportsOrientation, supportsViewTransitions, supportsWebGL, swipeDirection, themeTransition, timeline, toast, viewTransition };
2687
- export type { A11yIssue, AmbientEffect, AutoAnimateOptions, BurstOptions, ButtonDeform, ButtonShape, ButtonState, CardEffect, ClickEffect, ComponentCategory, ComponentsConfig, ConfettiOptions, CursorMode, DeepPartialTokens, DialogVariant, FlipOptions, FluentPresetOptions, GLQuad, GestureHandlers, GestureOptions, MorphOptions, MotionIntensity, MotionSensitivity, MotionTokenGroup, MotionTokens, PackContext, PackName, PageEffect, PageTransitionOptions, PanState, PinchState, Placement, Politeness, PressState, RevealEffect, ScrubHandle, ScrubOptions, SharedOptions, SmoothScrollOptions, SpinnerVariant, SplitBy, SplitFrom, SplitResult, SplitTextOptions, SplitTimelineOptions, SpringConfig, SpringEffect, SpringInput, SpringPreset, SpringToken, SpringValue, SpringValueOptions, SwipeDirection, SwipeState, TiltReading, Timeline, TimelineOptions, TimelinePosition, TimelineStepOptions, ToastHandle, ToastOptions, ToastType, UsaAccordionElement, UsaAcrylicElement, UsaAmbientElement, UsaAnimIconElement, UsaAuroraElement, UsaAutoAnimateElement, UsaAutoSkeletonElement, UsaAvatarStackElement, UsaBackToTopElement, UsaBadgeElement, UsaBlobsElement, UsaBottomSheetElement, UsaButtonElement, UsaCardElement, UsaCardStackElement, UsaCarousel3dElement, UsaCheckElement, UsaCheckboxElement, UsaClickElement, UsaCounterElement, UsaCubeElement, UsaCursorElement, UsaDepthElement, UsaDialogElement, UsaDotNetworkElement, UsaDoubleTapElement, UsaDraggableElement, UsaDrawElement, UsaDrawerElement, UsaElement, UsaFabElement, UsaFullpageElement, UsaGLElement, UsaGlitchElement, UsaGradientTextElement, UsaGrainElement, UsaGridGlowElement, UsaHandwritingElement, UsaHoldElement, UsaIconMorphElement, UsaLikeElement, UsaLoadingBarElement, UsaMagneticElement, UsaMarqueeElement, UsaMaskRevealElement, UsaMasonryElement, UsaMorphElement, UsaMotionSwitchElement, UsaNavbarElement, UsaOverscrollElement, UsaPackElement, UsaParticlesElement, UsaPinchZoomElement, UsaPopoverElement, UsaPressElement, UsaProgressElement, UsaPullRefreshElement, UsaRatingElement, UsaRevealElement, UsaRippleElement, UsaScrambleElement, UsaScrollHighlightElement, UsaScrollProgressElement, UsaScrollyElement, UsaShimmerTextElement, UsaSkeletonElement, UsaSliderElement, UsaSpinnerElement, UsaSplashElement, UsaSplitTextElement, UsaSpotlightElement, UsaSpringElement, UsaStaggerElement, UsaStickyStackElement, UsaSwipeableElement, UsaTabsElement, UsaTextRotateElement, UsaTiltElement, UsaTimelineElement, UsaToasterElement, UsaToggleElement, UsaTooltipElement, UsaTypewriterElement, UsaViewSwitchElement, UsaWaterRippleElement, UsaWaveTextElement, Variant, ViewTransitionOptions };
2757
+ export { ALL_TAGS, AMBIENT_EFFECTS, ANIM_ICONS, BUTTON_DEFORMS, CARD_EFFECTS, CLICK_EFFECTS, COMPONENT_CATEGORIES, CURSOR_MODES, JOINING_SCRIPT, LIVE_REGION_IDS, MASK_SHAPES, MORPH_ICONS, MOTION_SCALE, MOTION_SENSITIVITY, MOTION_SENSITIVITY_LEVELS, MOTION_TOKENS, PACKS, PACK_PRIMITIVES, PAGE_EFFECTS, REVEAL_EFFECTS, SENSITIVITY_CSS, SHADERS, SPINNER_VARIANTS, SPRING_EFFECTS, SPRING_PRESETS, STATIC_ALTERNATIVES, TIMELINE_PRESETS, VARIANTS, activeAnimations, adaptKeyframes, adoptVariants, animationBudget, announce, applyMotionTokens, applyPack, auditMotionA11y, autoAnimate, autoDegrade, burst, categoryOf, confetti, configureComponents, countUp, createSpring, defineAccordion, defineAcrylic, defineAmbient, defineAnimIcon, defineAurora, defineAutoAnimate, defineAutoSkeleton, defineAvatarStack, defineBackToTop, defineBackgroundComponents, defineBadge, defineBlobs, defineBottomSheet, defineButton, defineCard, defineCardComponents, defineCardStack, defineCarousel3d, defineCheck, defineCheckbox, defineClick, defineClickComponents, defineComponents, defineCounter, defineCube, defineCursor, defineDepth, defineDepthComponents, defineDialog, defineDistort, defineDotNetwork, defineDoubleTap, defineDraggable, defineDraw, defineDrawer, defineFab, defineFeedbackComponents, defineFullpage, defineGestureComponents, defineGlitch, defineGradientText, defineGrain, defineGridGlow, defineHandwriting, defineHold, defineIconMorph, defineInteractionComponents, defineLayoutComponents, defineLike, defineLiquid, defineLoadingBar, defineMagnetic, defineMarquee, defineMaskReveal, defineMasonry, defineMorph, defineMotionSwitch, defineNavbar, defineOverscroll, definePack, definePacksComponents, definePageComponents, defineParticles, definePhysicsComponents, definePinchZoom, definePopover, definePress, defineProgress, definePullRefresh, defineRating, defineReveal, defineRevealComponents, defineRipple, defineScramble, defineScrollHighlight, defineScrollProgress, defineScrolly, defineShader, defineShimmerText, defineSkeleton, defineSlider, defineSpinner, defineSplash, defineSplitText, defineSpotlight, defineSpring, defineStagger, defineStickyStack, defineSvgComponents, defineSwipeable, defineTabs, defineTextComponents, defineTextRotate, defineTilt, defineTimeline, defineTimelineComponents, defineToaster, defineToggle, defineTooltip, defineTransitionComponents, defineTypewriter, defineUiComponents, defineViewSwitch, defineWaterRipple, defineWaveText, defineWebglComponents, deviceTilt, drawLines, easeOutExpo, enableMpaTransitions, flip, flipFrames, fluentPreset, flyToCart, fragmentSource, gesture, getMotionIntensity, getMotionSensitivity, getMotionTokens, glQuad, graphemes, haptic, importMotionTokens, interpolatePath, linearEasing, liveRegion, loadCategoryStyles, loadedStyles, loadingBar, masonryLayout, mergeMotionTokens, morphPath, morphTo, motionAllowed, motionToken, motionTokensToCss, motionTokensToJSON, motionTokensToVars, motionVar, onDemandStyles, onFrame, orientationToTilt, pageTransition, parseDuration, parseEasing, pathsCompatible, pinchScale, prefersReducedMotion, projectInertia, readScrollProgress, requestOrientationPermission, resolveDurationToken, resolveEasingToken, resolvePosition, resolveSpring, restoreMotionIntensity, restoreMotionSensitivity, revealKeyframes, rubberBand, schedulerStats, scrambleFrame, scrollToTarget, setAnimationBudget, setMotionIntensity, setMotionSensitivity, setVariant, shake, sharedTransition, smoothScroll, snapTo, splitOrder, splitText, splitTimeline, words as splitWords, spring, springEasing, springEffectKeyframes, springSamples, staticAlternative, stepSpring, supportsLinearEasing, supportsNativeScrub, supportsOrientation, supportsViewTransitions, supportsWebGL, swipeDirection, themeTransition, timeline, toast, viewTransition };
2758
+ export type { A11yIssue, AmbientEffect, AutoAnimateOptions, AutoDegradeOptions, BurstOptions, ButtonDeform, ButtonShape, ButtonState, CardEffect, ClickEffect, ComponentCategory, ComponentsConfig, ConfettiOptions, CursorMode, DeepPartialTokens, DegradeState, DialogVariant, FlipOptions, FluentPresetOptions, GLQuad, GestureHandlers, GestureOptions, MorphOptions, MotionIntensity, MotionSensitivity, MotionTokenGroup, MotionTokens, PackContext, PackName, PageEffect, PageTransitionOptions, PanState, PinchState, Placement, Politeness, PressState, RevealEffect, ScrubHandle, ScrubOptions, SharedOptions, SmoothScrollOptions, SpinnerVariant, SplitBy, SplitFrom, SplitResult, SplitTextOptions, SplitTimelineOptions, SpringConfig, SpringEffect, SpringInput, SpringPreset, SpringToken, SpringValue, SpringValueOptions, SwipeDirection, SwipeState, TiltReading, Timeline, TimelineOptions, TimelinePosition, TimelineStepOptions, ToastHandle, ToastOptions, ToastType, UsaAccordionElement, UsaAcrylicElement, UsaAmbientElement, UsaAnimIconElement, UsaAuroraElement, UsaAutoAnimateElement, UsaAutoSkeletonElement, UsaAvatarStackElement, UsaBackToTopElement, UsaBadgeElement, UsaBlobsElement, UsaBottomSheetElement, UsaButtonElement, UsaCardElement, UsaCardStackElement, UsaCarousel3dElement, UsaCheckElement, UsaCheckboxElement, UsaClickElement, UsaCounterElement, UsaCubeElement, UsaCursorElement, UsaDepthElement, UsaDialogElement, UsaDotNetworkElement, UsaDoubleTapElement, UsaDraggableElement, UsaDrawElement, UsaDrawerElement, UsaElement, UsaFabElement, UsaFullpageElement, UsaGLElement, UsaGlitchElement, UsaGradientTextElement, UsaGrainElement, UsaGridGlowElement, UsaHandwritingElement, UsaHoldElement, UsaIconMorphElement, UsaLikeElement, UsaLoadingBarElement, UsaMagneticElement, UsaMarqueeElement, UsaMaskRevealElement, UsaMasonryElement, UsaMorphElement, UsaMotionSwitchElement, UsaNavbarElement, UsaOverscrollElement, UsaPackElement, UsaParticlesElement, UsaPinchZoomElement, UsaPopoverElement, UsaPressElement, UsaProgressElement, UsaPullRefreshElement, UsaRatingElement, UsaRevealElement, UsaRippleElement, UsaScrambleElement, UsaScrollHighlightElement, UsaScrollProgressElement, UsaScrollyElement, UsaShimmerTextElement, UsaSkeletonElement, UsaSliderElement, UsaSpinnerElement, UsaSplashElement, UsaSplitTextElement, UsaSpotlightElement, UsaSpringElement, UsaStaggerElement, UsaStickyStackElement, UsaSwipeableElement, UsaTabsElement, UsaTextRotateElement, UsaTiltElement, UsaTimelineElement, UsaToasterElement, UsaToggleElement, UsaTooltipElement, UsaTypewriterElement, UsaViewSwitchElement, UsaWaterRippleElement, UsaWaveTextElement, Variant, ViewTransitionOptions };
@@ -34,16 +34,17 @@ import { defineLayoutComponents } from './components/layout.js';
34
34
  export { autoAnimate, defineAutoAnimate, defineMasonry, flipFrames, masonryLayout, sharedTransition } from './components/layout.js';
35
35
  import { definePacksComponents } from './components/packs.js';
36
36
  export { PACKS, PACK_PRIMITIVES, applyPack, countUp, definePack, flyToCart } from './components/packs.js';
37
- import { a as adoptVariants } from './chunks/variants-dD6SbUMR.js';
38
- export { V as VARIANTS, s as setVariant } from './chunks/variants-dD6SbUMR.js';
39
- import { c as canDefine } from './chunks/base-BtJDNCB6.js';
40
- export { M as MOTION_SCALE, a as MOTION_SENSITIVITY_LEVELS, b as adaptKeyframes, d as configureComponents, g as getMotionIntensity, e as getMotionSensitivity, p as prefersReducedMotion } from './chunks/base-BtJDNCB6.js';
37
+ import { a as adoptVariants } from './chunks/variants-D9n-3x27.js';
38
+ export { V as VARIANTS, s as setVariant } from './chunks/variants-D9n-3x27.js';
39
+ import { c as canDefine } from './chunks/base-CZiIAMBc.js';
40
+ export { M as MOTION_SCALE, a as MOTION_SENSITIVITY_LEVELS, b as activeAnimations, d as adaptKeyframes, e as animationBudget, f as configureComponents, g as getMotionIntensity, h as getMotionSensitivity, o as onFrame, p as prefersReducedMotion, s as schedulerStats, i as setAnimationBudget } from './chunks/base-CZiIAMBc.js';
41
41
  export { MOTION_TOKENS, applyMotionTokens, getMotionTokens, importMotionTokens, mergeMotionTokens, motionToken, motionTokensToCss, motionTokensToJSON, motionTokensToVars, motionVar, parseDuration, parseEasing, resolveDurationToken, resolveEasingToken } from './components/tokens.js';
42
42
  export { ALL_TAGS, LIVE_REGION_IDS, MOTION_SENSITIVITY, SENSITIVITY_CSS, STATIC_ALTERNATIVES, announce, auditMotionA11y, liveRegion, motionAllowed, restoreMotionSensitivity, setMotionSensitivity, staticAlternative } from './components/a11y.js';
43
+ export { autoDegrade, categoryOf, loadCategoryStyles, loadedStyles, onDemandStyles } from './components/perf.js';
43
44
  export { C as COMPONENT_CATEGORIES } from './chunks/index-tags-43Xtd01A.js';
44
- export { S as SPRING_PRESETS, c as createSpring, l as linearEasing, p as projectInertia, r as resolveSpring, a as rubberBand, s as snapTo, b as spring, d as springEasing, e as springSamples, f as stepSpring, g as supportsLinearEasing } from './chunks/spring-CxRz49Wk.js';
45
- export { T as TIMELINE_PRESETS, r as resolvePosition, s as supportsNativeScrub, t as timeline } from './chunks/core-DS1nrx5L.js';
46
- export { g as gesture, p as pinchScale, s as swipeDirection } from './chunks/core-DX6pdOoY.js';
45
+ export { S as SPRING_PRESETS, c as createSpring, l as linearEasing, p as projectInertia, r as resolveSpring, a as rubberBand, s as snapTo, b as spring, d as springEasing, e as springSamples, f as stepSpring, g as supportsLinearEasing } from './chunks/spring-BS5tg6aK.js';
46
+ export { T as TIMELINE_PRESETS, r as resolvePosition, s as supportsNativeScrub, t as timeline } from './chunks/core-CJHJeMI_.js';
47
+ export { g as gesture, p as pinchScale, s as swipeDirection } from './chunks/core-COi3DrLx.js';
47
48
 
48
49
  /**
49
50
  * use-scroll-animate/components
@@ -1 +1 @@
1
- {"version":3,"file":"components.js","sources":["../src/components/index.ts"],"sourcesContent":["/**\n * use-scroll-animate/components\n *\n * Framework-agnostic, dependency-free animated UI components built on\n * Custom Elements + CSS + the Web Animations API. They run in any browser\n * and in Windows desktop apps that render with a web view: Electron, Tauri\n * (WebView2), WinUI 3 / WPF / WinForms with WebView2, and installed PWAs.\n *\n * ```js\n * import { defineComponents } from 'use-scroll-animate/components';\n * defineComponents(); // registers every <usa-*> element\n * // or only what you use (tree-shakable):\n * import { defineTypewriter } from 'use-scroll-animate/components/text';\n * ```\n *\n * Importing has no side effects and is SSR-safe; nothing is registered\n * until a `define*()` function runs in a browser.\n *\n * @license MIT\n */\nimport { defineRevealComponents } from './reveal/index';\nimport { defineTextComponents } from './text/index';\nimport { defineInteractionComponents } from './interaction/index';\nimport { defineFeedbackComponents } from './feedback/index';\nimport { defineBackgroundComponents } from './background/index';\nimport { defineTransitionComponents } from './transitions/index';\nimport { definePhysicsComponents } from './physics/index';\nimport { defineCardComponents } from './cards/index';\nimport { defineClickComponents } from './click/index';\nimport { defineUiComponents } from './ui/index';\nimport { definePageComponents } from './page/index';\nimport { defineTimelineComponents } from './timeline/index';\nimport { defineGestureComponents } from './gesture/index';\nimport { defineSvgComponents } from './svg/index';\nimport { defineWebglComponents } from './webgl/index';\nimport { defineDepthComponents } from './depth/index';\nimport { defineLayoutComponents } from './layout/index';\nimport { definePacksComponents } from './packs/index';\nimport { adoptVariants } from './ui/variants';\nimport { canDefine } from './base';\n\nexport * from './reveal/index';\nexport * from './text/index';\nexport * from './interaction/index';\nexport * from './feedback/index';\nexport * from './background/index';\nexport * from './transitions/index';\nexport * from './physics/index';\nexport * from './cards/index';\nexport * from './click/index';\nexport * from './ui/index';\nexport * from './page/index';\nexport * from './timeline/index';\nexport * from './gesture/index';\nexport * from './svg/index';\nexport * from './webgl/index';\nexport * from './depth/index';\nexport * from './layout/index';\nexport * from './packs/index';\nexport * from './tokens/index';\nexport * from './a11y/index';\n\nexport { COMPONENT_CATEGORIES } from './index-tags';\nexport type { ComponentCategory } from './index-tags';\nimport { COMPONENT_CATEGORIES, type ComponentCategory } from './index-tags';\n\nconst BY_CATEGORY: Record<ComponentCategory, () => void> = {\n reveal: defineRevealComponents,\n text: defineTextComponents,\n interaction: defineInteractionComponents,\n feedback: defineFeedbackComponents,\n background: defineBackgroundComponents,\n transitions: defineTransitionComponents,\n physics: definePhysicsComponents,\n cards: defineCardComponents,\n click: defineClickComponents,\n ui: defineUiComponents,\n page: definePageComponents,\n timeline: defineTimelineComponents,\n gesture: defineGestureComponents,\n svg: defineSvgComponents,\n webgl: defineWebglComponents,\n depth: defineDepthComponents,\n layout: defineLayoutComponents,\n packs: definePacksComponents,\n};\n\n/**\n * Register every `<usa-*>` component (or only the given categories).\n * Safe to call more than once and on the server (no-op without DOM).\n */\nexport function defineComponents(categories?: ComponentCategory[]): void {\n if (canDefine()) adoptVariants();\n (categories || (Object.keys(BY_CATEGORY) as ComponentCategory[])).forEach((c) => BY_CATEGORY[c]?.());\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;;AAmBG;AA+CH,MAAM,WAAW,GAA0C;AACzD,IAAA,MAAM,EAAE,sBAAsB;AAC9B,IAAA,IAAI,EAAE,oBAAoB;AAC1B,IAAA,WAAW,EAAE,2BAA2B;AACxC,IAAA,QAAQ,EAAE,wBAAwB;AAClC,IAAA,UAAU,EAAE,0BAA0B;AACtC,IAAA,WAAW,EAAE,0BAA0B;AACvC,IAAA,OAAO,EAAE,uBAAuB;AAChC,IAAA,KAAK,EAAE,oBAAoB;AAC3B,IAAA,KAAK,EAAE,qBAAqB;AAC5B,IAAA,EAAE,EAAE,kBAAkB;AACtB,IAAA,IAAI,EAAE,oBAAoB;AAC1B,IAAA,QAAQ,EAAE,wBAAwB;AAClC,IAAA,OAAO,EAAE,uBAAuB;AAChC,IAAA,GAAG,EAAE,mBAAmB;AACxB,IAAA,KAAK,EAAE,qBAAqB;AAC5B,IAAA,KAAK,EAAE,qBAAqB;AAC5B,IAAA,MAAM,EAAE,sBAAsB;AAC9B,IAAA,KAAK,EAAE,qBAAqB;CAC7B;AAED;;;AAGG;AACG,SAAU,gBAAgB,CAAC,UAAgC,EAAA;AAC/D,IAAA,IAAI,SAAS,EAAE;AAAE,QAAA,aAAa,EAAE;IAChC,CAAC,UAAU,IAAK,MAAM,CAAC,IAAI,CAAC,WAAW,CAAyB,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;AACtG;;;;"}
1
+ {"version":3,"file":"components.js","sources":["../src/components/index.ts"],"sourcesContent":["/**\n * use-scroll-animate/components\n *\n * Framework-agnostic, dependency-free animated UI components built on\n * Custom Elements + CSS + the Web Animations API. They run in any browser\n * and in Windows desktop apps that render with a web view: Electron, Tauri\n * (WebView2), WinUI 3 / WPF / WinForms with WebView2, and installed PWAs.\n *\n * ```js\n * import { defineComponents } from 'use-scroll-animate/components';\n * defineComponents(); // registers every <usa-*> element\n * // or only what you use (tree-shakable):\n * import { defineTypewriter } from 'use-scroll-animate/components/text';\n * ```\n *\n * Importing has no side effects and is SSR-safe; nothing is registered\n * until a `define*()` function runs in a browser.\n *\n * @license MIT\n */\nimport { defineRevealComponents } from './reveal/index';\nimport { defineTextComponents } from './text/index';\nimport { defineInteractionComponents } from './interaction/index';\nimport { defineFeedbackComponents } from './feedback/index';\nimport { defineBackgroundComponents } from './background/index';\nimport { defineTransitionComponents } from './transitions/index';\nimport { definePhysicsComponents } from './physics/index';\nimport { defineCardComponents } from './cards/index';\nimport { defineClickComponents } from './click/index';\nimport { defineUiComponents } from './ui/index';\nimport { definePageComponents } from './page/index';\nimport { defineTimelineComponents } from './timeline/index';\nimport { defineGestureComponents } from './gesture/index';\nimport { defineSvgComponents } from './svg/index';\nimport { defineWebglComponents } from './webgl/index';\nimport { defineDepthComponents } from './depth/index';\nimport { defineLayoutComponents } from './layout/index';\nimport { definePacksComponents } from './packs/index';\nimport { adoptVariants } from './ui/variants';\nimport { canDefine } from './base';\n\nexport * from './reveal/index';\nexport * from './text/index';\nexport * from './interaction/index';\nexport * from './feedback/index';\nexport * from './background/index';\nexport * from './transitions/index';\nexport * from './physics/index';\nexport * from './cards/index';\nexport * from './click/index';\nexport * from './ui/index';\nexport * from './page/index';\nexport * from './timeline/index';\nexport * from './gesture/index';\nexport * from './svg/index';\nexport * from './webgl/index';\nexport * from './depth/index';\nexport * from './layout/index';\nexport * from './packs/index';\nexport * from './tokens/index';\nexport * from './a11y/index';\nexport * from './perf/index';\n\nexport { COMPONENT_CATEGORIES } from './index-tags';\nexport type { ComponentCategory } from './index-tags';\nimport { COMPONENT_CATEGORIES, type ComponentCategory } from './index-tags';\n\nconst BY_CATEGORY: Record<ComponentCategory, () => void> = {\n reveal: defineRevealComponents,\n text: defineTextComponents,\n interaction: defineInteractionComponents,\n feedback: defineFeedbackComponents,\n background: defineBackgroundComponents,\n transitions: defineTransitionComponents,\n physics: definePhysicsComponents,\n cards: defineCardComponents,\n click: defineClickComponents,\n ui: defineUiComponents,\n page: definePageComponents,\n timeline: defineTimelineComponents,\n gesture: defineGestureComponents,\n svg: defineSvgComponents,\n webgl: defineWebglComponents,\n depth: defineDepthComponents,\n layout: defineLayoutComponents,\n packs: definePacksComponents,\n};\n\n/**\n * Register every `<usa-*>` component (or only the given categories).\n * Safe to call more than once and on the server (no-op without DOM).\n */\nexport function defineComponents(categories?: ComponentCategory[]): void {\n if (canDefine()) adoptVariants();\n (categories || (Object.keys(BY_CATEGORY) as ComponentCategory[])).forEach((c) => BY_CATEGORY[c]?.());\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;;;;AAmBG;AAgDH,MAAM,WAAW,GAA0C;AACzD,IAAA,MAAM,EAAE,sBAAsB;AAC9B,IAAA,IAAI,EAAE,oBAAoB;AAC1B,IAAA,WAAW,EAAE,2BAA2B;AACxC,IAAA,QAAQ,EAAE,wBAAwB;AAClC,IAAA,UAAU,EAAE,0BAA0B;AACtC,IAAA,WAAW,EAAE,0BAA0B;AACvC,IAAA,OAAO,EAAE,uBAAuB;AAChC,IAAA,KAAK,EAAE,oBAAoB;AAC3B,IAAA,KAAK,EAAE,qBAAqB;AAC5B,IAAA,EAAE,EAAE,kBAAkB;AACtB,IAAA,IAAI,EAAE,oBAAoB;AAC1B,IAAA,QAAQ,EAAE,wBAAwB;AAClC,IAAA,OAAO,EAAE,uBAAuB;AAChC,IAAA,GAAG,EAAE,mBAAmB;AACxB,IAAA,KAAK,EAAE,qBAAqB;AAC5B,IAAA,KAAK,EAAE,qBAAqB;AAC5B,IAAA,MAAM,EAAE,sBAAsB;AAC9B,IAAA,KAAK,EAAE,qBAAqB;CAC7B;AAED;;;AAGG;AACG,SAAU,gBAAgB,CAAC,UAAgC,EAAA;AAC/D,IAAA,IAAI,SAAS,EAAE;AAAE,QAAA,aAAa,EAAE;IAChC,CAAC,UAAU,IAAK,MAAM,CAAC,IAAI,CAAC,WAAW,CAAyB,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;AACtG;;;;"}