use-scroll-animate 2.7.0 → 2.9.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 (125) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/README.md +4 -4
  3. package/README_ja.md +2 -2
  4. package/README_zh.md +3 -3
  5. package/dist/chunks/{base-BR6fYLBA.cjs → base-BkQcvoSG.cjs} +29 -1
  6. package/dist/chunks/{base-BR6fYLBA.cjs.map → base-BkQcvoSG.cjs.map} +1 -1
  7. package/dist/chunks/{base-D6zLiNGH.js → base-CB8gChoe.js} +29 -2
  8. package/dist/chunks/{base-D6zLiNGH.js.map → base-CB8gChoe.js.map} +1 -1
  9. package/dist/chunks/{core-B_J4rXbC.cjs → core-C1cEwjJj.cjs} +11 -2
  10. package/dist/chunks/core-C1cEwjJj.cjs.map +1 -0
  11. package/dist/chunks/{core-BP-a1iNc.js → core-J_KM443q.js} +12 -3
  12. package/dist/chunks/core-J_KM443q.js.map +1 -0
  13. package/dist/chunks/index-tags-BEM98giN.cjs +20 -0
  14. package/dist/chunks/index-tags-BEM98giN.cjs.map +1 -0
  15. package/dist/chunks/index-tags-f37txHmb.js +18 -0
  16. package/dist/chunks/index-tags-f37txHmb.js.map +1 -0
  17. package/dist/chunks/{spring-DyHe1Hfa.cjs → spring-7U9MC6yQ.cjs} +2 -2
  18. package/dist/chunks/{spring-DyHe1Hfa.cjs.map → spring-7U9MC6yQ.cjs.map} +1 -1
  19. package/dist/chunks/{spring-C2Megtcf.js → spring-ka0YJ_ZR.js} +2 -2
  20. package/dist/chunks/{spring-C2Megtcf.js.map → spring-ka0YJ_ZR.js.map} +1 -1
  21. package/dist/chunks/{stagger-DTv_WiUQ.js → stagger-CGF18oNs.js} +2 -2
  22. package/dist/chunks/{stagger-DTv_WiUQ.js.map → stagger-CGF18oNs.js.map} +1 -1
  23. package/dist/chunks/{stagger-DHw0ExuR.cjs → stagger-DtKKS6GP.cjs} +2 -2
  24. package/dist/chunks/{stagger-DHw0ExuR.cjs.map → stagger-DtKKS6GP.cjs.map} +1 -1
  25. package/dist/chunks/variants-Ce9CboVc.js +35 -0
  26. package/dist/chunks/variants-Ce9CboVc.js.map +1 -0
  27. package/dist/chunks/variants-PsCXbQ5h.cjs +39 -0
  28. package/dist/chunks/variants-PsCXbQ5h.cjs.map +1 -0
  29. package/dist/components/background.cjs +277 -11
  30. package/dist/components/background.cjs.map +1 -1
  31. package/dist/components/background.css +3 -1
  32. package/dist/components/background.d.cts +64 -3
  33. package/dist/components/background.d.ts +64 -3
  34. package/dist/components/background.js +274 -13
  35. package/dist/components/background.js.map +1 -1
  36. package/dist/components/cards.cjs +2 -2
  37. package/dist/components/cards.js +3 -3
  38. package/dist/components/click.cjs +2 -2
  39. package/dist/components/click.js +3 -3
  40. package/dist/components/feedback.cjs +15 -8
  41. package/dist/components/feedback.cjs.map +1 -1
  42. package/dist/components/feedback.d.cts +4 -1
  43. package/dist/components/feedback.d.ts +4 -1
  44. package/dist/components/feedback.js +16 -9
  45. package/dist/components/feedback.js.map +1 -1
  46. package/dist/components/interaction.cjs +1 -1
  47. package/dist/components/interaction.js +2 -2
  48. package/dist/components/jsx.cjs +3 -0
  49. package/dist/components/jsx.cjs.map +1 -0
  50. package/dist/components/jsx.d.cts +45 -0
  51. package/dist/components/jsx.d.ts +45 -0
  52. package/dist/components/jsx.js +2 -0
  53. package/dist/components/jsx.js.map +1 -0
  54. package/dist/components/lazy.cjs +84 -0
  55. package/dist/components/lazy.cjs.map +1 -0
  56. package/dist/components/lazy.d.cts +40 -0
  57. package/dist/components/lazy.d.ts +40 -0
  58. package/dist/components/lazy.js +79 -0
  59. package/dist/components/lazy.js.map +1 -0
  60. package/dist/components/page.cjs +2 -2
  61. package/dist/components/page.js +3 -3
  62. package/dist/components/physics.cjs +2 -2
  63. package/dist/components/physics.js +4 -4
  64. package/dist/components/react.cjs +96 -0
  65. package/dist/components/react.cjs.map +1 -0
  66. package/dist/components/react.d.cts +18 -0
  67. package/dist/components/react.d.ts +18 -0
  68. package/dist/components/react.js +91 -0
  69. package/dist/components/react.js.map +1 -0
  70. package/dist/components/reveal.cjs +1 -1
  71. package/dist/components/reveal.js +2 -2
  72. package/dist/components/text.cjs +180 -11
  73. package/dist/components/text.cjs.map +1 -1
  74. package/dist/components/text.css +1 -0
  75. package/dist/components/text.d.cts +54 -2
  76. package/dist/components/text.d.ts +54 -2
  77. package/dist/components/text.js +177 -13
  78. package/dist/components/text.js.map +1 -1
  79. package/dist/components/transitions.cjs +3 -4
  80. package/dist/components/transitions.cjs.map +1 -1
  81. package/dist/components/transitions.js +4 -5
  82. package/dist/components/transitions.js.map +1 -1
  83. package/dist/components/ui.cjs +18 -48
  84. package/dist/components/ui.cjs.map +1 -1
  85. package/dist/components/ui.js +6 -35
  86. package/dist/components/ui.js.map +1 -1
  87. package/dist/components/vue.cjs +51 -0
  88. package/dist/components/vue.cjs.map +1 -0
  89. package/dist/components/vue.d.cts +1344 -0
  90. package/dist/components/vue.d.ts +1344 -0
  91. package/dist/components/vue.js +48 -0
  92. package/dist/components/vue.js.map +1 -0
  93. package/dist/components.cjs +19 -21
  94. package/dist/components.cjs.map +1 -1
  95. package/dist/components.css +4 -1
  96. package/dist/components.d.cts +123 -6
  97. package/dist/components.d.ts +123 -6
  98. package/dist/components.js +11 -22
  99. package/dist/components.js.map +1 -1
  100. package/dist/components.umd.js +2 -2
  101. package/dist/components.umd.js.map +1 -1
  102. package/dist/element.cjs +1 -1
  103. package/dist/element.js +1 -1
  104. package/dist/element.umd.js +1 -1
  105. package/dist/element.umd.js.map +1 -1
  106. package/dist/index.cjs +2 -2
  107. package/dist/index.js +3 -3
  108. package/dist/index.umd.js +2 -2
  109. package/dist/index.umd.js.map +1 -1
  110. package/dist/react.cjs +2 -2
  111. package/dist/react.js +2 -2
  112. package/dist/solid.cjs +2 -2
  113. package/dist/solid.js +2 -2
  114. package/dist/svelte.cjs +2 -2
  115. package/dist/svelte.js +2 -2
  116. package/dist/vue.cjs +2 -2
  117. package/dist/vue.js +2 -2
  118. package/docs/accessibility.md +32 -0
  119. package/docs/components.md +45 -6
  120. package/docs/frameworks-ssr.md +64 -0
  121. package/docs/upgrading-3.md +20 -0
  122. package/docs/windows-apps.md +13 -2
  123. package/package.json +42 -1
  124. package/dist/chunks/core-BP-a1iNc.js.map +0 -1
  125. package/dist/chunks/core-B_J4rXbC.cjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"background.js","sources":["../../src/components/background/aurora.ts","../../src/components/background/particles.ts","../../src/components/background/grain.ts","../../src/components/background/marquee.ts","../../src/components/background/acrylic.ts","../../src/components/background/index.ts"],"sourcesContent":["import { defineElement, type UsaElement } from '../base';\nimport css from './aurora.css?raw';\n\n/**\n * `<usa-aurora>` — a slow, drifting aurora / gradient-mesh backdrop behind\n * its content. Soft radial gradients moved with `transform` only (no\n * animated blur), paused while off-screen.\n *\n * Attributes: `colors` (comma-separated, default violet / cyan / pink),\n * `speed` (multiplier, 1), `intensity` (0–1 opacity, 0.7), `paused`.\n * Reduced motion: a still gradient.\n */\nexport type UsaAuroraElement = UsaElement;\n\nexport function defineAurora(tag = 'usa-aurora'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) =>\n class UsaAurora extends Base {\n static get observedAttributes(): string[] {\n return ['colors', 'speed', 'intensity'];\n }\n\n private _layer: HTMLElement | null = null;\n\n mount(): void {\n if (!this._layer) {\n this._layer = document.createElement('div');\n this._layer.className = 'usa-aurora-layer';\n this._layer.setAttribute('aria-hidden', 'true');\n this._layer.innerHTML = '<i></i><i></i><i></i><i></i>';\n this.prepend(this._layer);\n }\n const colors = this.str('colors', '#7c5cff,#22d3ee,#f472b6,#34d399').split(',').map((c) => c.trim()).filter(Boolean);\n Array.from(this._layer.children).forEach((blob, i) => {\n (blob as HTMLElement).style.setProperty('--c', colors[i % colors.length]);\n });\n const speed = this.num('speed', 1);\n this.style.setProperty('--usa-aurora-speed', `${(18 / Math.max(0.05, speed)).toFixed(2)}s`);\n this.style.setProperty('--usa-aurora-opacity', String(this.num('intensity', 0.7)));\n this.inView((v) => this.toggleAttribute('data-offscreen', !v));\n }\n },\n { id: 'aurora', text: css }\n );\n}\n","import { defineElement, raf, caf, type UsaElement } from '../base';\nimport css from './particles.css?raw';\n\n/**\n * `<usa-particles>` — a canvas of drifting particles, optionally linked by\n * lines when close (a \"constellation\"), that drift away from the pointer.\n * Fills its own box (place it as a background with\n * `position: absolute; inset: 0`, or give it a height).\n *\n * Attributes: `count` (60; scaled down on small boxes), `color`\n * (default `currentColor`), `size` (max radius px, 2.2), `speed` (0.35),\n * `links` (max link distance px, 110; `0` disables), `interactive`,\n * `paused`. Renders only while visible and the tab is shown, at device\n * pixel ratio ≤ 2. Reduced motion: one still frame.\n */\nexport interface UsaParticlesElement extends UsaElement {\n /** Re-seed the particles. */\n reset(): void;\n}\n\ninterface P {\n x: number;\n y: number;\n vx: number;\n vy: number;\n r: number;\n}\n\nexport function defineParticles(tag = 'usa-particles'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) =>\n class UsaParticles extends Base {\n static get observedAttributes(): string[] {\n return ['count', 'color', 'size', 'speed', 'links', 'interactive', 'paused'];\n }\n\n private _canvas: HTMLCanvasElement | null = null;\n private _ctx: CanvasRenderingContext2D | null = null;\n private _ps: P[] = [];\n private _frame = 0;\n private _w = 0;\n private _h = 0;\n private _visible = false;\n private _mx = -1e4;\n private _color = '#888';\n private _my = -1e4;\n\n mount(): void {\n if (!this._canvas) {\n this._canvas = document.createElement('canvas');\n this._canvas.setAttribute('aria-hidden', 'true');\n this.prepend(this._canvas);\n }\n this._ctx = this._canvas.getContext?.('2d') ?? null;\n if (!this._ctx) return;\n this.resize();\n if (typeof ResizeObserver !== 'undefined') {\n const ro = new ResizeObserver(() => {\n this.resize();\n if (!this._frame) this.draw();\n });\n ro.observe(this);\n this.onCleanup(() => ro.disconnect());\n }\n this.inView((v) => {\n this._visible = v;\n this.loop();\n });\n this.listen(document, 'visibilitychange', () => this.loop());\n if (this.flag('interactive')) {\n this.listen(window, 'pointermove', (e: PointerEvent) => {\n const r = this.getBoundingClientRect();\n this._mx = e.clientX - r.left;\n this._my = e.clientY - r.top;\n }, { passive: true });\n }\n this.draw();\n }\n\n unmount(): void {\n caf(this._frame);\n this._frame = 0;\n }\n\n reset(): void {\n this._ps = [];\n this.resize();\n this.draw();\n }\n\n private resize(): void {\n const c = this._canvas;\n if (!c || !this._ctx) return;\n const w = this.clientWidth || 300;\n const h = this.clientHeight || 150;\n const dpr = Math.min(2, (typeof devicePixelRatio === 'number' && devicePixelRatio) || 1);\n c.width = Math.round(w * dpr);\n c.height = Math.round(h * dpr);\n this._ctx.setTransform(dpr, 0, 0, dpr, 0, 0);\n this._w = w;\n this._h = h;\n this._color = this.getAttribute('color') || (typeof getComputedStyle === 'function' ? getComputedStyle(this).color : '') || '#888';\n const want = Math.round(Math.min(1, (w * h) / (900 * 500)) * Math.max(1, this.num('count', 60))) || 1;\n const speed = this.num('speed', 0.35);\n const size = this.num('size', 2.2);\n while (this._ps.length < want) {\n const a = Math.random() * Math.PI * 2;\n const s = speed * (0.3 + Math.random() * 0.7);\n this._ps.push({ x: Math.random() * w, y: Math.random() * h, vx: Math.cos(a) * s, vy: Math.sin(a) * s, r: 0.6 + Math.random() * (size - 0.6) });\n }\n this._ps.length = want;\n }\n\n private loop(): void {\n const run = this._visible && !this.reduced && !this.flag('paused') && !(typeof document !== 'undefined' && document.hidden);\n if (run && !this._frame) {\n const tick = () => {\n this.step();\n this.draw();\n this._frame = raf(tick);\n };\n this._frame = raf(tick);\n } else if (!run && this._frame) {\n caf(this._frame);\n this._frame = 0;\n }\n }\n\n private step(): void {\n const { _w: w, _h: h } = this;\n for (const p of this._ps) {\n const dx = p.x - this._mx;\n const dy = p.y - this._my;\n const d2 = dx * dx + dy * dy;\n if (d2 < 8100 && d2 > 0.01) {\n const f = (1 - Math.sqrt(d2) / 90) * 0.6;\n p.x += (dx / Math.sqrt(d2)) * f;\n p.y += (dy / Math.sqrt(d2)) * f;\n }\n p.x += p.vx;\n p.y += p.vy;\n if (p.x < -5) p.x = w + 5;\n else if (p.x > w + 5) p.x = -5;\n if (p.y < -5) p.y = h + 5;\n else if (p.y > h + 5) p.y = -5;\n }\n }\n\n private draw(): void {\n const ctx = this._ctx;\n if (!ctx) return;\n const color = this._color;\n ctx.clearRect(0, 0, this._w, this._h);\n ctx.fillStyle = color;\n ctx.strokeStyle = color;\n const ps = this._ps;\n const link = this.num('links', 110);\n if (link > 0) {\n const l2 = link * link;\n ctx.lineWidth = 0.6;\n for (let i = 0; i < ps.length; i++) {\n for (let j = i + 1; j < ps.length; j++) {\n const dx = ps[i].x - ps[j].x;\n const dy = ps[i].y - ps[j].y;\n const d2 = dx * dx + dy * dy;\n if (d2 < l2) {\n ctx.globalAlpha = (1 - d2 / l2) * 0.35;\n ctx.beginPath();\n ctx.moveTo(ps[i].x, ps[i].y);\n ctx.lineTo(ps[j].x, ps[j].y);\n ctx.stroke();\n }\n }\n }\n }\n ctx.globalAlpha = 0.85;\n for (const p of ps) {\n ctx.beginPath();\n ctx.arc(p.x, p.y, p.r, 0, Math.PI * 2);\n ctx.fill();\n }\n ctx.globalAlpha = 1;\n }\n },\n { id: 'particles', text: css }\n );\n}\n","import { defineElement, type UsaElement } from '../base';\nimport css from './grain.css?raw';\n\n/**\n * `<usa-grain>` — a film-grain / noise overlay on top of its content\n * (SVG `feTurbulence` texture, no images to ship). With `animated`, the\n * grain jitters like film (stepped `transform`, ~12 fps).\n *\n * Attributes: `opacity` (0.12), `animated`, `blend` (`mix-blend-mode`,\n * default `overlay`), `scale` (texture size px, 180). Never intercepts\n * pointer events. Reduced motion: static grain.\n */\nexport type UsaGrainElement = UsaElement;\n\nconst noise = (freq: number) =>\n `url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='256' height='256'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='${freq}' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.5 0 0 0 0 0.5 0 0 0 0 0.5 0 0 0 1.6 -0.3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E\")`;\n\nexport function defineGrain(tag = 'usa-grain'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) =>\n class UsaGrain extends Base {\n static get observedAttributes(): string[] {\n return ['opacity', 'blend', 'scale'];\n }\n\n private _layer: HTMLElement | null = null;\n\n mount(): void {\n if (!this._layer) {\n this._layer = document.createElement('div');\n this._layer.className = 'usa-grain-layer';\n this._layer.setAttribute('aria-hidden', 'true');\n this.append(this._layer);\n }\n const s = this._layer.style;\n s.backgroundImage = noise(0.8);\n s.backgroundSize = `${this.num('scale', 180)}px`;\n s.opacity = String(this.num('opacity', 0.12));\n s.mixBlendMode = this.str('blend', 'overlay');\n }\n },\n { id: 'grain', text: css }\n );\n}\n","import { defineElement, type UsaElement } from '../base';\nimport css from './marquee.css?raw';\n\n/**\n * `<usa-marquee>` — an infinite, seamless ticker of its children (logos,\n * testimonials, tags). The content is cloned (clones are `aria-hidden` and\n * `inert`) and the track slides with one WAAPI `transform` animation whose\n * duration follows the measured width, so the speed is constant.\n *\n * Attributes: `speed` (px/s, 50), `direction` (`left` default | `right` |\n * `up` | `down`), `gap` (px, 32), `pause-on-hover`, `fade` (soft edges),\n * `paused`. Pauses off-screen. Reduced motion: no movement; the row\n * becomes scrollable instead.\n */\nexport interface UsaMarqueeElement extends UsaElement {\n pause(): void;\n resume(): void;\n}\n\nexport function defineMarquee(tag = 'usa-marquee'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) =>\n class UsaMarquee extends Base {\n static get observedAttributes(): string[] {\n return ['speed', 'direction', 'gap', 'paused'];\n }\n\n private _track: HTMLElement | null = null;\n private _anim: Animation | null = null;\n private _hover = false;\n private _visible = true;\n private _size = 0;\n\n private get vertical(): boolean {\n const d = this.str('direction', 'left');\n return d === 'up' || d === 'down';\n }\n\n mount(): void {\n if (!this._track) {\n const track = document.createElement('div');\n track.className = 'usa-marquee-track';\n const group = document.createElement('div');\n group.className = 'usa-marquee-group';\n group.append(...Array.from(this.childNodes));\n track.append(group);\n this.append(track);\n this._track = track;\n }\n this.toggleAttribute('data-vertical', this.vertical);\n this.style.setProperty('--usa-marquee-gap', `${this.num('gap', 32)}px`);\n if (this.reduced) {\n this.setAttribute('data-static', '');\n this.syncClones(1);\n return;\n }\n this.removeAttribute('data-static');\n this.build();\n if (typeof ResizeObserver !== 'undefined') {\n const ro = new ResizeObserver(() => this.build());\n ro.observe(this._track.firstElementChild as Element);\n this.onCleanup(() => ro.disconnect());\n }\n this.inView((v) => {\n this._visible = v;\n this.sync();\n });\n this.listen(this, 'pointerenter', () => ((this._hover = true), this.sync()));\n this.listen(this, 'pointerleave', () => ((this._hover = false), this.sync()));\n this.listen(this, 'focusin', () => ((this._hover = true), this.sync()));\n this.listen(this, 'focusout', () => ((this._hover = false), this.sync()));\n }\n\n unmount(): void {\n this._anim?.cancel();\n this._anim = null;\n this._size = 0;\n }\n\n private syncClones(n: number): void {\n const track = this._track!;\n const group = track.firstElementChild as HTMLElement;\n while (track.children.length > n) track.lastElementChild!.remove();\n while (track.children.length < n) {\n const clone = group.cloneNode(true) as HTMLElement;\n clone.setAttribute('aria-hidden', 'true');\n clone.setAttribute('inert', '');\n track.append(clone);\n }\n }\n\n private build(): void {\n const track = this._track!;\n const group = track.firstElementChild as HTMLElement;\n const vertical = this.vertical;\n const gap = this.num('gap', 32);\n const measured = vertical ? group.offsetHeight : group.offsetWidth;\n if (!measured) return; // not laid out yet: the ResizeObserver calls back\n const size = measured + gap;\n if (this._anim && this._size === size) return;\n this._size = size;\n const box = (vertical ? this.clientHeight : this.clientWidth) || size;\n // Enough copies to cover the box twice\n this.syncClones(Math.min(50, Math.max(2, Math.ceil(box / size) + 1)));\n const progress = this._anim?.effect?.getComputedTiming().progress ?? 0;\n this._anim?.cancel();\n const axis = vertical ? 'Y' : 'X';\n const reverse = ['right', 'down'].includes(this.str('direction', 'left'));\n const frames = [{ transform: `translate${axis}(0)` }, { transform: `translate${axis}(${-size}px)` }];\n this._anim = this.motion(track, reverse ? frames.reverse() : frames, {\n duration: (Math.max(1, size) / Math.max(1, this.num('speed', 50))) * 1000,\n iterations: Infinity,\n });\n if (this._anim && progress) this._anim.currentTime = progress * Number(this._anim.effect?.getTiming().duration || 0);\n this.sync();\n }\n\n private sync(): void {\n const a = this._anim;\n if (!a) return;\n const stop = this.flag('paused') || !this._visible || (this._hover && this.flag('pause-on-hover'));\n if (stop && a.playState === 'running') a.pause();\n else if (!stop && a.playState === 'paused') a.play();\n }\n\n pause(): void {\n this.setAttribute('paused', '');\n }\n resume(): void {\n this.removeAttribute('paused');\n }\n\n changed(name: string): void {\n if (name === 'paused') this.sync();\n else super.changed(name);\n }\n },\n { id: 'marquee', text: css }\n );\n}\n","import { defineElement, type UsaElement } from '../base';\nimport css from './acrylic.css?raw';\n\n/**\n * `<usa-acrylic>` — Windows Fluent materials for the web: `acrylic`\n * (frosted glass: backdrop blur + saturation + tint + subtle noise) and\n * `mica` (an opaque, wallpaper-tinted base for app backgrounds; on the web it\n * tints from `--usa-mica-source`, a gradient you control). Optional\n * `shimmer` adds a light sweep when it appears or on hover.\n *\n * Attributes: `variant` (`acrylic` default | `mica`), `tint` (colour),\n * `tint-opacity` (0–1, 0.55), `blur` (px, 30), `shimmer`\n * (`hover` | `load` | `none`, default `none`). Falls back to a solid tint\n * without `backdrop-filter` and under `prefers-reduced-transparency` or\n * forced colours, like Windows does when transparency effects are off.\n */\nexport type UsaAcrylicElement = UsaElement;\n\nexport function defineAcrylic(tag = 'usa-acrylic'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) =>\n class UsaAcrylic extends Base {\n static get observedAttributes(): string[] {\n return ['tint', 'tint-opacity', 'blur', 'shimmer'];\n }\n\n mount(): void {\n const tint = this.getAttribute('tint');\n if (tint) this.style.setProperty('--usa-acrylic-tint', tint);\n else this.style.removeProperty('--usa-acrylic-tint');\n this.style.setProperty('--usa-acrylic-opacity', `${Math.round(this.num('tint-opacity', 0.55) * 100)}%`);\n this.style.setProperty('--usa-acrylic-blur', `${this.num('blur', 30)}px`);\n if (this.str('shimmer') === 'load' && !this.reduced) {\n this.removeAttribute('data-shine');\n void this.offsetWidth;\n this.setAttribute('data-shine', '');\n }\n }\n },\n { id: 'acrylic', text: css }\n );\n}\n","/**\n * use-scroll-animate/components/background — backgrounds & decoration.\n * `<usa-aurora>`, `<usa-particles>`, `<usa-grain>`, `<usa-marquee>`,\n * `<usa-acrylic>`.\n */\nimport { defineAurora, type UsaAuroraElement } from './aurora';\nimport { defineParticles, type UsaParticlesElement } from './particles';\nimport { defineGrain, type UsaGrainElement } from './grain';\nimport { defineMarquee, type UsaMarqueeElement } from './marquee';\nimport { defineAcrylic, type UsaAcrylicElement } from './acrylic';\n\nexport { defineAurora, defineParticles, defineGrain, defineMarquee, defineAcrylic };\nexport type { UsaAuroraElement, UsaParticlesElement, UsaGrainElement, UsaMarqueeElement, UsaAcrylicElement };\nexport { configureComponents, prefersReducedMotion } from '../base';\nexport type { ComponentsConfig, UsaElement } from '../base';\n\n/** Register every component of this category under its default tag. */\nexport function defineBackgroundComponents(): void {\n defineAurora();\n defineParticles();\n defineGrain();\n defineMarquee();\n defineAcrylic();\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'usa-aurora': UsaAuroraElement;\n 'usa-particles': UsaParticlesElement;\n 'usa-grain': UsaGrainElement;\n 'usa-marquee': UsaMarqueeElement;\n 'usa-acrylic': UsaAcrylicElement;\n }\n}\n"],"names":["css"],"mappings":"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"}
1
+ {"version":3,"file":"background.js","sources":["../../src/components/background/aurora.ts","../../src/components/background/particles.ts","../../src/components/background/grain.ts","../../src/components/background/marquee.ts","../../src/components/background/acrylic.ts","../../src/components/background/bg-fx.ts","../../src/components/background/fluent.ts","../../src/components/background/index.ts"],"sourcesContent":["import { defineElement, type UsaElement } from '../base';\nimport css from './aurora.css?raw';\n\n/**\n * `<usa-aurora>` — a slow, drifting aurora / gradient-mesh backdrop behind\n * its content. Soft radial gradients moved with `transform` only (no\n * animated blur), paused while off-screen.\n *\n * Attributes: `colors` (comma-separated, default violet / cyan / pink),\n * `speed` (multiplier, 1), `intensity` (0–1 opacity, 0.7), `paused`.\n * Reduced motion: a still gradient.\n */\nexport type UsaAuroraElement = UsaElement;\n\nexport function defineAurora(tag = 'usa-aurora'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) =>\n class UsaAurora extends Base {\n static get observedAttributes(): string[] {\n return ['colors', 'speed', 'intensity'];\n }\n\n private _layer: HTMLElement | null = null;\n\n mount(): void {\n if (!this._layer) {\n this._layer = document.createElement('div');\n this._layer.className = 'usa-aurora-layer';\n this._layer.setAttribute('aria-hidden', 'true');\n this._layer.innerHTML = '<i></i><i></i><i></i><i></i>';\n this.prepend(this._layer);\n }\n const colors = this.str('colors', '#7c5cff,#22d3ee,#f472b6,#34d399').split(',').map((c) => c.trim()).filter(Boolean);\n Array.from(this._layer.children).forEach((blob, i) => {\n (blob as HTMLElement).style.setProperty('--c', colors[i % colors.length]);\n });\n const speed = this.num('speed', 1);\n this.style.setProperty('--usa-aurora-speed', `${(18 / Math.max(0.05, speed)).toFixed(2)}s`);\n this.style.setProperty('--usa-aurora-opacity', String(this.num('intensity', 0.7)));\n this.inView((v) => this.toggleAttribute('data-offscreen', !v));\n }\n },\n { id: 'aurora', text: css }\n );\n}\n","import { defineElement, raf, caf, type UsaElement } from '../base';\nimport css from './particles.css?raw';\n\n/**\n * `<usa-particles>` — a canvas of drifting particles, optionally linked by\n * lines when close (a \"constellation\"), that drift away from the pointer.\n * Fills its own box (place it as a background with\n * `position: absolute; inset: 0`, or give it a height).\n *\n * Attributes: `count` (60; scaled down on small boxes), `color`\n * (default `currentColor`), `size` (max radius px, 2.2), `speed` (0.35),\n * `links` (max link distance px, 110; `0` disables), `interactive`,\n * `paused`. Renders only while visible and the tab is shown, at device\n * pixel ratio ≤ 2. Reduced motion: one still frame.\n */\nexport interface UsaParticlesElement extends UsaElement {\n /** Re-seed the particles. */\n reset(): void;\n}\n\ninterface P {\n x: number;\n y: number;\n vx: number;\n vy: number;\n r: number;\n}\n\nexport function defineParticles(tag = 'usa-particles'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) =>\n class UsaParticles extends Base {\n static get observedAttributes(): string[] {\n return ['count', 'color', 'size', 'speed', 'links', 'interactive', 'paused'];\n }\n\n private _canvas: HTMLCanvasElement | null = null;\n private _ctx: CanvasRenderingContext2D | null = null;\n private _ps: P[] = [];\n private _frame = 0;\n private _w = 0;\n private _h = 0;\n private _visible = false;\n private _mx = -1e4;\n private _color = '#888';\n private _my = -1e4;\n\n mount(): void {\n if (!this._canvas) {\n this._canvas = document.createElement('canvas');\n this._canvas.setAttribute('aria-hidden', 'true');\n this.prepend(this._canvas);\n }\n this._ctx = this._canvas.getContext?.('2d') ?? null;\n if (!this._ctx) return;\n this.resize();\n if (typeof ResizeObserver !== 'undefined') {\n const ro = new ResizeObserver(() => {\n this.resize();\n if (!this._frame) this.draw();\n });\n ro.observe(this);\n this.onCleanup(() => ro.disconnect());\n }\n this.inView((v) => {\n this._visible = v;\n this.loop();\n });\n this.listen(document, 'visibilitychange', () => this.loop());\n if (this.flag('interactive')) {\n this.listen(window, 'pointermove', (e: PointerEvent) => {\n const r = this.getBoundingClientRect();\n this._mx = e.clientX - r.left;\n this._my = e.clientY - r.top;\n }, { passive: true });\n }\n this.draw();\n }\n\n unmount(): void {\n caf(this._frame);\n this._frame = 0;\n }\n\n reset(): void {\n this._ps = [];\n this.resize();\n this.draw();\n }\n\n private resize(): void {\n const c = this._canvas;\n if (!c || !this._ctx) return;\n const w = this.clientWidth || 300;\n const h = this.clientHeight || 150;\n const dpr = Math.min(2, (typeof devicePixelRatio === 'number' && devicePixelRatio) || 1);\n c.width = Math.round(w * dpr);\n c.height = Math.round(h * dpr);\n this._ctx.setTransform(dpr, 0, 0, dpr, 0, 0);\n this._w = w;\n this._h = h;\n this._color = this.getAttribute('color') || (typeof getComputedStyle === 'function' ? getComputedStyle(this).color : '') || '#888';\n const want = Math.round(Math.min(1, (w * h) / (900 * 500)) * Math.max(1, this.num('count', 60))) || 1;\n const speed = this.num('speed', 0.35);\n const size = this.num('size', 2.2);\n while (this._ps.length < want) {\n const a = Math.random() * Math.PI * 2;\n const s = speed * (0.3 + Math.random() * 0.7);\n this._ps.push({ x: Math.random() * w, y: Math.random() * h, vx: Math.cos(a) * s, vy: Math.sin(a) * s, r: 0.6 + Math.random() * (size - 0.6) });\n }\n this._ps.length = want;\n }\n\n private loop(): void {\n const run = this._visible && !this.reduced && !this.flag('paused') && !(typeof document !== 'undefined' && document.hidden);\n if (run && !this._frame) {\n const tick = () => {\n this.step();\n this.draw();\n this._frame = raf(tick);\n };\n this._frame = raf(tick);\n } else if (!run && this._frame) {\n caf(this._frame);\n this._frame = 0;\n }\n }\n\n private step(): void {\n const { _w: w, _h: h } = this;\n for (const p of this._ps) {\n const dx = p.x - this._mx;\n const dy = p.y - this._my;\n const d2 = dx * dx + dy * dy;\n if (d2 < 8100 && d2 > 0.01) {\n const f = (1 - Math.sqrt(d2) / 90) * 0.6;\n p.x += (dx / Math.sqrt(d2)) * f;\n p.y += (dy / Math.sqrt(d2)) * f;\n }\n p.x += p.vx;\n p.y += p.vy;\n if (p.x < -5) p.x = w + 5;\n else if (p.x > w + 5) p.x = -5;\n if (p.y < -5) p.y = h + 5;\n else if (p.y > h + 5) p.y = -5;\n }\n }\n\n private draw(): void {\n const ctx = this._ctx;\n if (!ctx) return;\n const color = this._color;\n ctx.clearRect(0, 0, this._w, this._h);\n ctx.fillStyle = color;\n ctx.strokeStyle = color;\n const ps = this._ps;\n const link = this.num('links', 110);\n if (link > 0) {\n const l2 = link * link;\n ctx.lineWidth = 0.6;\n for (let i = 0; i < ps.length; i++) {\n for (let j = i + 1; j < ps.length; j++) {\n const dx = ps[i].x - ps[j].x;\n const dy = ps[i].y - ps[j].y;\n const d2 = dx * dx + dy * dy;\n if (d2 < l2) {\n ctx.globalAlpha = (1 - d2 / l2) * 0.35;\n ctx.beginPath();\n ctx.moveTo(ps[i].x, ps[i].y);\n ctx.lineTo(ps[j].x, ps[j].y);\n ctx.stroke();\n }\n }\n }\n }\n ctx.globalAlpha = 0.85;\n for (const p of ps) {\n ctx.beginPath();\n ctx.arc(p.x, p.y, p.r, 0, Math.PI * 2);\n ctx.fill();\n }\n ctx.globalAlpha = 1;\n }\n },\n { id: 'particles', text: css }\n );\n}\n","import { defineElement, type UsaElement } from '../base';\nimport css from './grain.css?raw';\n\n/**\n * `<usa-grain>` — a film-grain / noise overlay on top of its content\n * (SVG `feTurbulence` texture, no images to ship). With `animated`, the\n * grain jitters like film (stepped `transform`, ~12 fps).\n *\n * Attributes: `opacity` (0.12), `animated`, `blend` (`mix-blend-mode`,\n * default `overlay`), `scale` (texture size px, 180). Never intercepts\n * pointer events. Reduced motion: static grain.\n */\nexport type UsaGrainElement = UsaElement;\n\nconst noise = (freq: number) =>\n `url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='256' height='256'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='${freq}' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.5 0 0 0 0 0.5 0 0 0 0 0.5 0 0 0 1.6 -0.3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E\")`;\n\nexport function defineGrain(tag = 'usa-grain'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) =>\n class UsaGrain extends Base {\n static get observedAttributes(): string[] {\n return ['opacity', 'blend', 'scale'];\n }\n\n private _layer: HTMLElement | null = null;\n\n mount(): void {\n if (!this._layer) {\n this._layer = document.createElement('div');\n this._layer.className = 'usa-grain-layer';\n this._layer.setAttribute('aria-hidden', 'true');\n this.append(this._layer);\n }\n const s = this._layer.style;\n s.backgroundImage = noise(0.8);\n s.backgroundSize = `${this.num('scale', 180)}px`;\n s.opacity = String(this.num('opacity', 0.12));\n s.mixBlendMode = this.str('blend', 'overlay');\n }\n },\n { id: 'grain', text: css }\n );\n}\n","import { defineElement, type UsaElement } from '../base';\nimport css from './marquee.css?raw';\n\n/**\n * `<usa-marquee>` — an infinite, seamless ticker of its children (logos,\n * testimonials, tags). The content is cloned (clones are `aria-hidden` and\n * `inert`) and the track slides with one WAAPI `transform` animation whose\n * duration follows the measured width, so the speed is constant.\n *\n * Attributes: `speed` (px/s, 50), `direction` (`left` default | `right` |\n * `up` | `down`), `gap` (px, 32), `pause-on-hover`, `fade` (soft edges),\n * `paused`. Pauses off-screen. Reduced motion: no movement; the row\n * becomes scrollable instead.\n */\nexport interface UsaMarqueeElement extends UsaElement {\n pause(): void;\n resume(): void;\n}\n\nexport function defineMarquee(tag = 'usa-marquee'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) =>\n class UsaMarquee extends Base {\n static get observedAttributes(): string[] {\n return ['speed', 'direction', 'gap', 'paused'];\n }\n\n private _track: HTMLElement | null = null;\n private _anim: Animation | null = null;\n private _hover = false;\n private _visible = true;\n private _size = 0;\n\n private get vertical(): boolean {\n const d = this.str('direction', 'left');\n return d === 'up' || d === 'down';\n }\n\n mount(): void {\n if (!this._track) {\n const track = document.createElement('div');\n track.className = 'usa-marquee-track';\n const group = document.createElement('div');\n group.className = 'usa-marquee-group';\n group.append(...Array.from(this.childNodes));\n track.append(group);\n this.append(track);\n this._track = track;\n }\n this.toggleAttribute('data-vertical', this.vertical);\n this.style.setProperty('--usa-marquee-gap', `${this.num('gap', 32)}px`);\n if (this.reduced) {\n this.setAttribute('data-static', '');\n this.syncClones(1);\n return;\n }\n this.removeAttribute('data-static');\n this.build();\n if (typeof ResizeObserver !== 'undefined') {\n const ro = new ResizeObserver(() => this.build());\n ro.observe(this._track.firstElementChild as Element);\n this.onCleanup(() => ro.disconnect());\n }\n this.inView((v) => {\n this._visible = v;\n this.sync();\n });\n this.listen(this, 'pointerenter', () => ((this._hover = true), this.sync()));\n this.listen(this, 'pointerleave', () => ((this._hover = false), this.sync()));\n this.listen(this, 'focusin', () => ((this._hover = true), this.sync()));\n this.listen(this, 'focusout', () => ((this._hover = false), this.sync()));\n }\n\n unmount(): void {\n this._anim?.cancel();\n this._anim = null;\n this._size = 0;\n }\n\n private syncClones(n: number): void {\n const track = this._track!;\n const group = track.firstElementChild as HTMLElement;\n while (track.children.length > n) track.lastElementChild!.remove();\n while (track.children.length < n) {\n const clone = group.cloneNode(true) as HTMLElement;\n clone.setAttribute('aria-hidden', 'true');\n clone.setAttribute('inert', '');\n track.append(clone);\n }\n }\n\n private build(): void {\n const track = this._track!;\n const group = track.firstElementChild as HTMLElement;\n const vertical = this.vertical;\n const gap = this.num('gap', 32);\n const measured = vertical ? group.offsetHeight : group.offsetWidth;\n if (!measured) return; // not laid out yet: the ResizeObserver calls back\n const size = measured + gap;\n if (this._anim && this._size === size) return;\n this._size = size;\n const box = (vertical ? this.clientHeight : this.clientWidth) || size;\n // Enough copies to cover the box twice\n this.syncClones(Math.min(50, Math.max(2, Math.ceil(box / size) + 1)));\n const progress = this._anim?.effect?.getComputedTiming().progress ?? 0;\n this._anim?.cancel();\n const axis = vertical ? 'Y' : 'X';\n const reverse = ['right', 'down'].includes(this.str('direction', 'left'));\n const frames = [{ transform: `translate${axis}(0)` }, { transform: `translate${axis}(${-size}px)` }];\n this._anim = this.motion(track, reverse ? frames.reverse() : frames, {\n duration: (Math.max(1, size) / Math.max(1, this.num('speed', 50))) * 1000,\n iterations: Infinity,\n });\n if (this._anim && progress) this._anim.currentTime = progress * Number(this._anim.effect?.getTiming().duration || 0);\n this.sync();\n }\n\n private sync(): void {\n const a = this._anim;\n if (!a) return;\n const stop = this.flag('paused') || !this._visible || (this._hover && this.flag('pause-on-hover'));\n if (stop && a.playState === 'running') a.pause();\n else if (!stop && a.playState === 'paused') a.play();\n }\n\n pause(): void {\n this.setAttribute('paused', '');\n }\n resume(): void {\n this.removeAttribute('paused');\n }\n\n changed(name: string): void {\n if (name === 'paused') this.sync();\n else super.changed(name);\n }\n },\n { id: 'marquee', text: css }\n );\n}\n","import { defineElement, type UsaElement } from '../base';\nimport css from './acrylic.css?raw';\n\n/**\n * `<usa-acrylic>` — Windows Fluent materials for the web: `acrylic`\n * (frosted glass: backdrop blur + saturation + tint + subtle noise) and\n * `mica` (an opaque, wallpaper-tinted base for app backgrounds; on the web it\n * tints from `--usa-mica-source`, a gradient you control). Optional\n * `shimmer` adds a light sweep when it appears or on hover.\n *\n * Attributes: `kind` (`acrylic` default | `mica`; `variant` is a deprecated alias until 3.0), `tint` (colour),\n * `tint-opacity` (0–1, 0.55), `blur` (px, 30), `shimmer`\n * (`hover` | `load` | `none`, default `none`). Falls back to a solid tint\n * without `backdrop-filter` and under `prefers-reduced-transparency` or\n * forced colours, like Windows does when transparency effects are off.\n */\nexport type UsaAcrylicElement = UsaElement;\n\nexport function defineAcrylic(tag = 'usa-acrylic'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) =>\n class UsaAcrylic extends Base {\n static get observedAttributes(): string[] {\n return ['tint', 'tint-opacity', 'blur', 'shimmer'];\n }\n\n mount(): void {\n const tint = this.getAttribute('tint');\n if (tint) this.style.setProperty('--usa-acrylic-tint', tint);\n else this.style.removeProperty('--usa-acrylic-tint');\n this.style.setProperty('--usa-acrylic-opacity', `${Math.round(this.num('tint-opacity', 0.55) * 100)}%`);\n this.style.setProperty('--usa-acrylic-blur', `${this.num('blur', 30)}px`);\n if (this.str('shimmer') === 'load' && !this.reduced) {\n this.removeAttribute('data-shine');\n void this.offsetWidth;\n this.setAttribute('data-shine', '');\n }\n }\n },\n { id: 'acrylic', text: css }\n );\n}\n","import { defineElement, raf, caf, type UsaElement } from '../base';\nimport css from './bg-fx.css?raw';\n\n/** Shared canvas setup: DPR ≤ 2, resize with the host, run only while visible & tab shown. */\nfunction canvasLoop(host: any, draw: (ctx: CanvasRenderingContext2D, w: number, h: number, t: number) => void, still: boolean): void {\n const c = document.createElement('canvas');\n c.className = 'usa-bg-canvas';\n c.setAttribute('aria-hidden', 'true');\n host.prepend(c);\n host.onCleanup(() => c.remove());\n const ctx = c.getContext?.('2d') as CanvasRenderingContext2D | null;\n if (!ctx) return;\n const dpr = Math.min(2, (typeof window !== 'undefined' && window.devicePixelRatio) || 1);\n let w = 0;\n let h = 0;\n const size = () => {\n const r = host.getBoundingClientRect();\n w = Math.max(1, r.width || 300);\n h = Math.max(1, r.height || 150);\n c.width = w * dpr;\n c.height = h * dpr;\n ctx.setTransform(dpr, 0, 0, dpr, 0, 0);\n };\n size();\n const ro = typeof ResizeObserver !== 'undefined' ? new ResizeObserver(size) : null;\n ro?.observe(host);\n host.onCleanup(() => ro?.disconnect());\n let id = 0;\n let on = false;\n const loop = (t: number) => {\n if (!document.hidden) draw(ctx, w, h, t);\n id = raf(loop);\n };\n if (still) {\n draw(ctx, w, h, 0);\n return;\n }\n host.inView((v: boolean) => {\n if (v && !on) {\n on = true;\n id = raf(loop);\n } else if (!v && on) {\n on = false;\n caf(id);\n }\n });\n host.onCleanup(() => caf(id));\n}\n\n/**\n * `<usa-grid-glow>` — a line grid behind its content that lights up around\n * the pointer. Attributes: `size` (cell px, 32), `color`, `radius` (px, 220).\n * Reduced motion: the grid stays, a soft static glow in the centre.\n */\nexport interface UsaGridGlowElement extends UsaElement {}\nexport function defineGridGlow(tag = 'usa-grid-glow'): CustomElementConstructor | undefined {\n return defineElement(tag, (Base) => class extends Base {\n mount(): void {\n this.style.setProperty('--usa-grid', `${this.num('size', 32)}px`);\n this.style.setProperty('--usa-grid-r', `${this.num('radius', 220)}px`);\n if (this.str('color')) this.style.setProperty('--usa-grid-color', this.str('color'));\n if (this.reduced) return;\n let f = 0;\n let x = 0;\n let y = 0;\n this.listen(this, 'pointermove', (e: PointerEvent) => {\n const r = this.getBoundingClientRect();\n x = e.clientX - r.left;\n y = e.clientY - r.top;\n if (!f) f = raf(() => {\n f = 0;\n this.style.setProperty('--usa-grid-x', `${x}px`);\n this.style.setProperty('--usa-grid-y', `${y}px`);\n });\n });\n this.onCleanup(() => caf(f));\n }\n }, { id: 'bg-fx', text: css });\n}\n\n/**\n * `<usa-blobs>` — soft, slowly morphing colour blobs (fluid gradient\n * backdrop). Attributes: `colors` (comma list), `speed` (1), `blur` (px, 60).\n * Reduced motion: still blobs.\n */\nexport interface UsaBlobsElement extends UsaElement {}\nexport function defineBlobs(tag = 'usa-blobs'): CustomElementConstructor | undefined {\n return defineElement(tag, (Base) => class extends Base {\n mount(): void {\n this.querySelector(':scope > .usa-blobs-layer')?.remove();\n const colors = this.str('colors', '#7c5cff,#22d3ee,#f472b6,#34d399').split(',');\n const layer = document.createElement('div');\n layer.className = 'usa-blobs-layer';\n layer.setAttribute('aria-hidden', 'true');\n layer.innerHTML = colors.map((c, i) => `<i style=\"--c:${c.trim()};--i:${i}\"></i>`).join('');\n this.prepend(layer);\n this.style.setProperty('--usa-blobs-speed', String(this.num('speed', 1)));\n this.style.setProperty('--usa-blobs-blur', `${this.num('blur', 60)}px`);\n }\n }, { id: 'bg-fx', text: css });\n}\n\n/**\n * `<usa-water-ripple>` — interactive water ripples on a canvas over its\n * content (pointer moves and taps disturb the surface). Low-resolution height\n * map, paused off-screen. Attributes: `damping` (0.96), `strength` (1),\n * `color` (highlight). Reduced motion: nothing is drawn.\n */\nexport interface UsaWaterRippleElement extends UsaElement {\n drop(x: number, y: number, strength?: number): void;\n}\nexport function defineWaterRipple(tag = 'usa-water-ripple'): CustomElementConstructor | undefined {\n return defineElement(tag, (Base) => class extends Base {\n private _drop: ((x: number, y: number, s?: number) => void) | null = null;\n drop(x: number, y: number, s = 1): void {\n this._drop?.(x, y, s);\n }\n mount(): void {\n if (this.reduced) return;\n const S = 4;\n let cols = 0;\n let rows = 0;\n let a = new Float32Array(0);\n let b = new Float32Array(0);\n const damp = this.num('damping', 0.96);\n const color = this.str('color', '255,255,255');\n this._drop = (x, y, s = 1) => {\n const cx = Math.floor(x / S);\n const cy = Math.floor(y / S);\n if (cx < 1 || cy < 1 || cx >= cols - 1 || cy >= rows - 1) return;\n a[cy * cols + cx] += 256 * s * this.num('strength', 1);\n };\n canvasLoop(this, (ctx, w, h) => {\n const nc = Math.ceil(w / S);\n const nr = Math.ceil(h / S);\n if (nc !== cols || nr !== rows) {\n cols = nc;\n rows = nr;\n a = new Float32Array(cols * rows);\n b = new Float32Array(cols * rows);\n }\n ctx.clearRect(0, 0, w, h);\n for (let y = 1; y < rows - 1; y++) {\n for (let x = 1; x < cols - 1; x++) {\n const i = y * cols + x;\n const v = ((a[i - 1] + a[i + 1] + a[i - cols] + a[i + cols]) / 2 - b[i]) * damp;\n b[i] = v;\n if (v > 2 || v < -2) {\n ctx.fillStyle = `rgba(${color},${Math.min(0.5, Math.abs(v) / 300).toFixed(3)})`;\n ctx.fillRect(x * S, y * S, S, S);\n }\n }\n }\n const t = a;\n a = b;\n b = t;\n }, false);\n this.listen(this, 'pointermove', (e: PointerEvent) => {\n const r = this.getBoundingClientRect();\n this.drop(e.clientX - r.left, e.clientY - r.top, 0.35);\n });\n this.listen(this, 'pointerdown', (e: PointerEvent) => {\n const r = this.getBoundingClientRect();\n this.drop(e.clientX - r.left, e.clientY - r.top, 1.5);\n });\n }\n }, { id: 'bg-fx', text: css });\n}\n\n/**\n * `<usa-dot-network>` — a grid of dots that swell and link up with lines\n * around the pointer (a living network backdrop). Attributes: `gap` (px,\n * 28), `color`, `radius` (px of influence, 140). Reduced motion: a static\n * dot grid.\n */\nexport interface UsaDotNetworkElement extends UsaElement {}\nexport function defineDotNetwork(tag = 'usa-dot-network'): CustomElementConstructor | undefined {\n return defineElement(tag, (Base) => class extends Base {\n mount(): void {\n const gap = Math.max(8, this.num('gap', 28));\n const R = this.num('radius', 140);\n const color = this.str('color', '124,92,255');\n let px = -1e4;\n let py = -1e4;\n this.listen(this, 'pointermove', (e: PointerEvent) => {\n const r = this.getBoundingClientRect();\n px = e.clientX - r.left;\n py = e.clientY - r.top;\n });\n this.listen(this, 'pointerleave', () => (px = py = -1e4));\n canvasLoop(this, (ctx, w, h) => {\n ctx.clearRect(0, 0, w, h);\n const near: [number, number, number][] = [];\n for (let y = gap / 2; y < h; y += gap) {\n for (let x = gap / 2; x < w; x += gap) {\n const d = Math.hypot(x - px, y - py);\n const k = d < R ? 1 - d / R : 0;\n const ox = k ? ((x - px) / (d || 1)) * k * 8 : 0;\n const oy = k ? ((y - py) / (d || 1)) * k * 8 : 0;\n ctx.fillStyle = `rgba(${color},${(0.25 + k * 0.75).toFixed(3)})`;\n ctx.beginPath();\n ctx.arc(x + ox, y + oy, 1.2 + k * 2.2, 0, Math.PI * 2);\n ctx.fill();\n if (k > 0.2) near.push([x + ox, y + oy, k]);\n }\n }\n ctx.lineWidth = 1;\n for (const [x, y, k] of near) {\n ctx.strokeStyle = `rgba(${color},${(k * 0.5).toFixed(3)})`;\n ctx.beginPath();\n ctx.moveTo(x, y);\n ctx.lineTo(px, py);\n ctx.stroke();\n }\n }, this.reduced);\n }\n }, { id: 'bg-fx', text: css });\n}\n","import { adoptStyles, raf, caf, prefersReducedMotion } from '../base';\nimport { setVariant } from '../ui/variants';\nimport css from './fluent.css?raw';\n\nexport interface FluentPresetOptions {\n /** Root to apply to (default `document.documentElement`). */\n root?: HTMLElement;\n /** Reveal highlight on interactive elements (default `true`). */\n reveal?: boolean;\n /** Reveal targets (default buttons, links, `[data-fluent-reveal]`). */\n selector?: string;\n /** Mica-style tinted window background on `<body>` (default `true`). */\n mica?: boolean;\n}\n\n/**\n * Windows 11 **Fluent preset** (v2.8): applies the `fluent` variant\n * (Segoe UI Variable, Windows accent, 8 px radii), a Mica-style tinted\n * window background, Acrylic on `.usa-acrylic` / `[data-acrylic]`, and\n * Reveal highlight (a light following the pointer on borders and\n * backgrounds of interactive elements). Ideal for WebView2 / Electron /\n * Tauri apps on Windows. Returns a function that removes it.\n * Respects reduced motion / transparency (no Reveal tracking; solid materials).\n */\nexport function fluentPreset(options: FluentPresetOptions = {}): () => void {\n if (typeof document === 'undefined') return () => undefined;\n const root = options.root || document.documentElement;\n adoptStyles('fluent-preset', css);\n setVariant('fluent', root);\n root.classList.add('usa-fluent');\n if (options.mica !== false) root.classList.add('usa-fluent-mica');\n const sel = options.selector || 'button, [role=\"button\"], a.usa-fluent-item, [data-fluent-reveal], .usa-fluent-item';\n let frame = 0;\n let last: HTMLElement | null = null;\n let ev: PointerEvent | null = null;\n const apply = () => {\n frame = 0;\n if (!ev) return;\n const t = (ev.target as Element)?.closest?.(sel) as HTMLElement | null;\n if (last && last !== t) last.removeAttribute('data-reveal');\n last = t;\n if (!t) return;\n const r = t.getBoundingClientRect();\n t.style.setProperty('--usa-reveal-x', `${ev.clientX - r.left}px`);\n t.style.setProperty('--usa-reveal-y', `${ev.clientY - r.top}px`);\n t.setAttribute('data-reveal', '');\n };\n const move = (e: PointerEvent) => {\n if (e.pointerType === 'touch') return;\n ev = e;\n if (!frame) frame = raf(apply);\n };\n const reveal = options.reveal !== false && !prefersReducedMotion();\n if (reveal) document.addEventListener('pointermove', move, { passive: true });\n return () => {\n document.removeEventListener('pointermove', move);\n caf(frame);\n last?.removeAttribute('data-reveal');\n root.classList.remove('usa-fluent', 'usa-fluent-mica');\n setVariant(null, root);\n };\n}\n","/**\n * use-scroll-animate/components/background — backgrounds & decoration.\n * `<usa-aurora>`, `<usa-particles>`, `<usa-grain>`, `<usa-marquee>`,\n * `<usa-acrylic>`.\n */\nimport { defineAurora, type UsaAuroraElement } from './aurora';\nimport { defineParticles, type UsaParticlesElement } from './particles';\nimport { defineGrain, type UsaGrainElement } from './grain';\nimport { defineMarquee, type UsaMarqueeElement } from './marquee';\nimport { defineAcrylic, type UsaAcrylicElement } from './acrylic';\n\nimport { defineGridGlow, defineBlobs, defineWaterRipple, defineDotNetwork } from './bg-fx';\nimport type { UsaGridGlowElement, UsaBlobsElement, UsaWaterRippleElement, UsaDotNetworkElement } from './bg-fx';\nexport { defineAurora, defineParticles, defineGrain, defineMarquee, defineAcrylic };\nexport type { UsaAuroraElement, UsaParticlesElement, UsaGrainElement, UsaMarqueeElement, UsaAcrylicElement };\nexport { defineGridGlow, defineBlobs, defineWaterRipple, defineDotNetwork };\nexport type { UsaGridGlowElement, UsaBlobsElement, UsaWaterRippleElement, UsaDotNetworkElement };\nexport { fluentPreset } from './fluent';\nexport type { FluentPresetOptions } from './fluent';\nexport { configureComponents, prefersReducedMotion } from '../base';\nexport type { ComponentsConfig, UsaElement } from '../base';\n\n/** Register every component of this category under its default tag. */\nexport function defineBackgroundComponents(): void {\n defineAurora();\n defineParticles();\n defineGrain();\n defineMarquee();\n defineAcrylic();\n defineGridGlow();\n defineBlobs();\n defineWaterRipple();\n defineDotNetwork();\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'usa-grid-glow': UsaGridGlowElement;\n 'usa-blobs': UsaBlobsElement;\n 'usa-water-ripple': UsaWaterRippleElement;\n 'usa-dot-network': UsaDotNetworkElement;\n 'usa-aurora': UsaAuroraElement;\n 'usa-particles': UsaParticlesElement;\n 'usa-grain': UsaGrainElement;\n 'usa-marquee': UsaMarqueeElement;\n 'usa-acrylic': UsaAcrylicElement;\n }\n}\n"],"names":["css"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var base = require('../chunks/base-BR6fYLBA.cjs');
4
- var spring = require('../chunks/spring-DyHe1Hfa.cjs');
3
+ var base = require('../chunks/base-BkQcvoSG.cjs');
4
+ var spring = require('../chunks/spring-7U9MC6yQ.cjs');
5
5
 
6
6
  var css$3 = "usa-card{--usa-card-radius:18px;--usa-card-bg:var(--usa-surface,#1b1e27);--usa-card-glow:var(--usa-accent,#7c5cff);--usa-card-x:50%;--usa-card-y:50%;--usa-card-nx:0;--usa-card-ny:0;position:relative;display:block;border-radius:var(--usa-card-radius);isolation:isolate;-webkit-tap-highlight-color:transparent}usa-card:focus-visible{outline:2px solid var(--usa-card-glow);outline-offset:3px}usa-card[effect~=\"lift\"]{transition:transform 0.45s cubic-bezier(0.34,1.56,0.64,1),box-shadow 0.45s ease}usa-card[effect~=\"lift\"][data-hover],usa-card[effect~=\"lift\"]:focus-visible{transform:translateY(-6px) perspective(900px) rotateX(calc(var(--usa-card-ny) * -4deg)) rotateY(calc(var(--usa-card-nx) * 4deg));box-shadow:0 22px 44px -18px rgb(0 0 0 / 0.55)}usa-card[effect~=\"glass\"]{background:color-mix(in srgb,var(--usa-card-bg) 45%,transparent);border:1px solid rgb(255 255 255 / 0.16);-webkit-backdrop-filter:blur(18px) saturate(1.5);backdrop-filter:blur(18px) saturate(1.5)}usa-card[effect~=\"spotlight\"]::before,usa-card[effect~=\"border-glow\"]::after{content:\"\";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity 0.3s ease}usa-card[effect~=\"spotlight\"]::before{z-index:-1;background:radial-gradient(260px circle at var(--usa-card-x) var(--usa-card-y),color-mix(in srgb,var(--usa-card-glow) 28%,transparent),transparent 70%)}usa-card[effect~=\"border-glow\"]::after{padding:1.5px;background:radial-gradient(180px circle at var(--usa-card-x) var(--usa-card-y),var(--usa-card-glow),transparent 70%);-webkit-mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}usa-card[data-hover]::before,usa-card[data-hover]::after{opacity:1}@property --usa-card-angle{syntax:\"<angle>\";inherits:false;initial-value:0deg}usa-card[effect~=\"conic-border\"]{border:2px solid transparent;background:linear-gradient(var(--usa-card-bg),var(--usa-card-bg)) padding-box,conic-gradient(from var(--usa-card-angle),var(--usa-card-glow),#22d3ee,#f472b6,var(--usa-card-glow)) border-box;animation:usa-card-spin 4s linear infinite}@keyframes usa-card-spin{to{--usa-card-angle:360deg}}usa-card .usa-card-sheen{position:absolute;inset:0;border-radius:inherit;overflow:hidden;pointer-events:none}usa-card .usa-card-sheen::before{content:\"\";position:absolute;top:0;bottom:0;width:45%;left:-60%;transform:skewX(-20deg);background:linear-gradient(90deg,transparent,rgb(255 255 255 / 0.35),transparent)}usa-card[effect~=\"sheen\"]:hover .usa-card-sheen::before,usa-card[effect~=\"sheen\"]:focus-visible .usa-card-sheen::before{left:130%;transition:left 0.8s cubic-bezier(0.22,1,0.36,1)}usa-card .usa-card-holo{position:absolute;inset:0;border-radius:inherit;pointer-events:none;mix-blend-mode:color-dodge;opacity:0.35;background:linear-gradient(115deg,transparent 20%,#ff7ad9 35%,#7af0ff 45%,#ffe27a 55%,transparent 70%) calc(var(--usa-card-x) * 1.4 - 20%) calc(var(--usa-card-y) * 1.4 - 20%) / 220% 220%;transition:opacity 0.3s ease}usa-card[data-hover] .usa-card-holo{opacity:0.7}usa-card[effect~=\"parallax-layers\"] [data-depth]{transition:transform 0.25s ease-out;will-change:transform}usa-card[effect~=\"flip\"]{perspective:1000px;display:grid}usa-card[effect~=\"flip\"]>[data-front],usa-card[effect~=\"flip\"]>[data-back]{grid-area:1 / 1;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:inherit;transition:transform 0.7s cubic-bezier(0.34,1.3,0.64,1),opacity 0.3s ease}usa-card[effect~=\"flip\"]>[data-back]{transform:rotateY(180deg)}usa-card[effect~=\"flip\"][axis=\"x\"]>[data-back]{transform:rotateX(180deg)}usa-card[effect~=\"flip\"][flipped]>[data-front],usa-card[effect~=\"flip\"]:not([trigger=\"click\"]):hover>[data-front]{transform:rotateY(-180deg)}usa-card[effect~=\"flip\"][flipped]>[data-back],usa-card[effect~=\"flip\"]:not([trigger=\"click\"]):hover>[data-back]{transform:rotateY(0deg)}usa-card[effect~=\"flip\"][axis=\"x\"][flipped]>[data-front],usa-card[effect~=\"flip\"][axis=\"x\"]:not([trigger=\"click\"]):hover>[data-front]{transform:rotateX(180deg)}usa-card[effect~=\"flip\"][axis=\"x\"][flipped]>[data-back],usa-card[effect~=\"flip\"][axis=\"x\"]:not([trigger=\"click\"]):hover>[data-back]{transform:rotateX(0deg)}usa-card[effect~=\"flip\"][trigger=\"click\"]{cursor:pointer}usa-card[effect~=\"expand\"]{cursor:zoom-in}usa-card[effect~=\"expand\"]:not([expanded]) [data-detail]{display:none}usa-card[expanded]{position:fixed;inset:6vh max(4vw,calc(50vw - 420px));z-index:1000;overflow:auto;cursor:default;background:var(--usa-card-bg);box-shadow:0 30px 80px -20px rgb(0 0 0 / 0.6)}.usa-card-backdrop{position:fixed;inset:0;z-index:999;background:rgb(0 0 0 / 0.45)}@media (prefers-reduced-motion:reduce){usa-card,usa-card *,usa-card .usa-card-sheen::before{transition-duration:0.01ms !important;animation:none !important}usa-card[effect~=\"lift\"][data-hover]{transform:none}usa-card[effect~=\"flip\"]>[data-front],usa-card[effect~=\"flip\"]>[data-back]{transform:none !important}usa-card[effect~=\"flip\"][flipped]>[data-front],usa-card[effect~=\"flip\"]:not([flipped])>[data-back]{opacity:0;visibility:hidden}usa-card[effect~=\"flip\"]:not([trigger=\"click\"]):hover>[data-front]{opacity:0;visibility:hidden}usa-card[effect~=\"flip\"]:not([trigger=\"click\"]):hover>[data-back]{opacity:1;visibility:visible}}@media (prefers-reduced-transparency:reduce),(forced-colors:active){usa-card[effect~=\"glass\"]{background:var(--usa-card-bg);-webkit-backdrop-filter:none;backdrop-filter:none}}";
7
7
 
@@ -1,6 +1,6 @@
1
- import { d as defineElement, r as raf, e as caf, E as EASE_OUT, b as clamp } from '../chunks/base-D6zLiNGH.js';
2
- export { a as configureComponents, p as prefersReducedMotion } from '../chunks/base-D6zLiNGH.js';
3
- import { d as springEasing, c as createSpring } from '../chunks/spring-C2Megtcf.js';
1
+ import { f as defineElement, r as raf, d as caf, i as EASE_OUT, h as clamp } from '../chunks/base-CB8gChoe.js';
2
+ export { a as configureComponents, p as prefersReducedMotion } from '../chunks/base-CB8gChoe.js';
3
+ import { d as springEasing, c as createSpring } from '../chunks/spring-ka0YJ_ZR.js';
4
4
 
5
5
  var css$3 = "usa-card{--usa-card-radius:18px;--usa-card-bg:var(--usa-surface,#1b1e27);--usa-card-glow:var(--usa-accent,#7c5cff);--usa-card-x:50%;--usa-card-y:50%;--usa-card-nx:0;--usa-card-ny:0;position:relative;display:block;border-radius:var(--usa-card-radius);isolation:isolate;-webkit-tap-highlight-color:transparent}usa-card:focus-visible{outline:2px solid var(--usa-card-glow);outline-offset:3px}usa-card[effect~=\"lift\"]{transition:transform 0.45s cubic-bezier(0.34,1.56,0.64,1),box-shadow 0.45s ease}usa-card[effect~=\"lift\"][data-hover],usa-card[effect~=\"lift\"]:focus-visible{transform:translateY(-6px) perspective(900px) rotateX(calc(var(--usa-card-ny) * -4deg)) rotateY(calc(var(--usa-card-nx) * 4deg));box-shadow:0 22px 44px -18px rgb(0 0 0 / 0.55)}usa-card[effect~=\"glass\"]{background:color-mix(in srgb,var(--usa-card-bg) 45%,transparent);border:1px solid rgb(255 255 255 / 0.16);-webkit-backdrop-filter:blur(18px) saturate(1.5);backdrop-filter:blur(18px) saturate(1.5)}usa-card[effect~=\"spotlight\"]::before,usa-card[effect~=\"border-glow\"]::after{content:\"\";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity 0.3s ease}usa-card[effect~=\"spotlight\"]::before{z-index:-1;background:radial-gradient(260px circle at var(--usa-card-x) var(--usa-card-y),color-mix(in srgb,var(--usa-card-glow) 28%,transparent),transparent 70%)}usa-card[effect~=\"border-glow\"]::after{padding:1.5px;background:radial-gradient(180px circle at var(--usa-card-x) var(--usa-card-y),var(--usa-card-glow),transparent 70%);-webkit-mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}usa-card[data-hover]::before,usa-card[data-hover]::after{opacity:1}@property --usa-card-angle{syntax:\"<angle>\";inherits:false;initial-value:0deg}usa-card[effect~=\"conic-border\"]{border:2px solid transparent;background:linear-gradient(var(--usa-card-bg),var(--usa-card-bg)) padding-box,conic-gradient(from var(--usa-card-angle),var(--usa-card-glow),#22d3ee,#f472b6,var(--usa-card-glow)) border-box;animation:usa-card-spin 4s linear infinite}@keyframes usa-card-spin{to{--usa-card-angle:360deg}}usa-card .usa-card-sheen{position:absolute;inset:0;border-radius:inherit;overflow:hidden;pointer-events:none}usa-card .usa-card-sheen::before{content:\"\";position:absolute;top:0;bottom:0;width:45%;left:-60%;transform:skewX(-20deg);background:linear-gradient(90deg,transparent,rgb(255 255 255 / 0.35),transparent)}usa-card[effect~=\"sheen\"]:hover .usa-card-sheen::before,usa-card[effect~=\"sheen\"]:focus-visible .usa-card-sheen::before{left:130%;transition:left 0.8s cubic-bezier(0.22,1,0.36,1)}usa-card .usa-card-holo{position:absolute;inset:0;border-radius:inherit;pointer-events:none;mix-blend-mode:color-dodge;opacity:0.35;background:linear-gradient(115deg,transparent 20%,#ff7ad9 35%,#7af0ff 45%,#ffe27a 55%,transparent 70%) calc(var(--usa-card-x) * 1.4 - 20%) calc(var(--usa-card-y) * 1.4 - 20%) / 220% 220%;transition:opacity 0.3s ease}usa-card[data-hover] .usa-card-holo{opacity:0.7}usa-card[effect~=\"parallax-layers\"] [data-depth]{transition:transform 0.25s ease-out;will-change:transform}usa-card[effect~=\"flip\"]{perspective:1000px;display:grid}usa-card[effect~=\"flip\"]>[data-front],usa-card[effect~=\"flip\"]>[data-back]{grid-area:1 / 1;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:inherit;transition:transform 0.7s cubic-bezier(0.34,1.3,0.64,1),opacity 0.3s ease}usa-card[effect~=\"flip\"]>[data-back]{transform:rotateY(180deg)}usa-card[effect~=\"flip\"][axis=\"x\"]>[data-back]{transform:rotateX(180deg)}usa-card[effect~=\"flip\"][flipped]>[data-front],usa-card[effect~=\"flip\"]:not([trigger=\"click\"]):hover>[data-front]{transform:rotateY(-180deg)}usa-card[effect~=\"flip\"][flipped]>[data-back],usa-card[effect~=\"flip\"]:not([trigger=\"click\"]):hover>[data-back]{transform:rotateY(0deg)}usa-card[effect~=\"flip\"][axis=\"x\"][flipped]>[data-front],usa-card[effect~=\"flip\"][axis=\"x\"]:not([trigger=\"click\"]):hover>[data-front]{transform:rotateX(180deg)}usa-card[effect~=\"flip\"][axis=\"x\"][flipped]>[data-back],usa-card[effect~=\"flip\"][axis=\"x\"]:not([trigger=\"click\"]):hover>[data-back]{transform:rotateX(0deg)}usa-card[effect~=\"flip\"][trigger=\"click\"]{cursor:pointer}usa-card[effect~=\"expand\"]{cursor:zoom-in}usa-card[effect~=\"expand\"]:not([expanded]) [data-detail]{display:none}usa-card[expanded]{position:fixed;inset:6vh max(4vw,calc(50vw - 420px));z-index:1000;overflow:auto;cursor:default;background:var(--usa-card-bg);box-shadow:0 30px 80px -20px rgb(0 0 0 / 0.6)}.usa-card-backdrop{position:fixed;inset:0;z-index:999;background:rgb(0 0 0 / 0.45)}@media (prefers-reduced-motion:reduce){usa-card,usa-card *,usa-card .usa-card-sheen::before{transition-duration:0.01ms !important;animation:none !important}usa-card[effect~=\"lift\"][data-hover]{transform:none}usa-card[effect~=\"flip\"]>[data-front],usa-card[effect~=\"flip\"]>[data-back]{transform:none !important}usa-card[effect~=\"flip\"][flipped]>[data-front],usa-card[effect~=\"flip\"]:not([flipped])>[data-back]{opacity:0;visibility:hidden}usa-card[effect~=\"flip\"]:not([trigger=\"click\"]):hover>[data-front]{opacity:0;visibility:hidden}usa-card[effect~=\"flip\"]:not([trigger=\"click\"]):hover>[data-back]{opacity:1;visibility:visible}}@media (prefers-reduced-transparency:reduce),(forced-colors:active){usa-card[effect~=\"glass\"]{background:var(--usa-card-bg);-webkit-backdrop-filter:none;backdrop-filter:none}}";
6
6
 
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var base = require('../chunks/base-BR6fYLBA.cjs');
4
- var spring = require('../chunks/spring-DyHe1Hfa.cjs');
3
+ var base = require('../chunks/base-BkQcvoSG.cjs');
4
+ var spring = require('../chunks/spring-7U9MC6yQ.cjs');
5
5
 
6
6
  /**
7
7
  * Click-effect helpers (v2.5): `burst()`, `confetti()`, `shake()`, `haptic()`.
@@ -1,6 +1,6 @@
1
- import { p as prefersReducedMotion, d as defineElement, E as EASE_OUT, b as clamp, e as caf, n as now, r as raf } from '../chunks/base-D6zLiNGH.js';
2
- export { a as configureComponents } from '../chunks/base-D6zLiNGH.js';
3
- import { d as springEasing, c as createSpring } from '../chunks/spring-C2Megtcf.js';
1
+ import { p as prefersReducedMotion, f as defineElement, i as EASE_OUT, h as clamp, d as caf, n as now, r as raf } from '../chunks/base-CB8gChoe.js';
2
+ export { a as configureComponents } from '../chunks/base-CB8gChoe.js';
3
+ import { d as springEasing, c as createSpring } from '../chunks/spring-ka0YJ_ZR.js';
4
4
 
5
5
  /**
6
6
  * Click-effect helpers (v2.5): `burst()`, `confetti()`, `shake()`, `haptic()`.
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var base = require('../chunks/base-BR6fYLBA.cjs');
3
+ var base = require('../chunks/base-BkQcvoSG.cjs');
4
4
 
5
5
  var css$4 = "usa-spinner{--usa-spinner-size:32px;--usa-spinner-color:currentColor;position:relative;display:inline-block;vertical-align:middle;flex:none;width:var(--usa-spinner-size);height:var(--usa-spinner-size);color:var(--usa-spinner-color)}usa-spinner i{position:absolute;display:block}usa-spinner[paused] *,usa-spinner[paused] *::after{animation-play-state:paused !important}usa-spinner svg{width:100%;height:100%;animation:usa-spin 2s linear infinite;overflow:visible}usa-spinner svg circle{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-dasharray:0.5 100;stroke-dashoffset:0;animation:usa-ring-arc 1.6s ease-in-out infinite}@keyframes usa-spin{to{transform:rotate(360deg)}}@keyframes usa-ring-arc{0%{stroke-dasharray:0.5 100;stroke-dashoffset:0}50%{stroke-dasharray:62 100;stroke-dashoffset:-20}100%{stroke-dasharray:0.5 100;stroke-dashoffset:-99}}usa-spinner[data-variant=\"windows\"] i{inset:0;opacity:0;animation:usa-orbit 5.5s infinite}usa-spinner[data-variant=\"windows\"] i::after{content:\"\";position:absolute;left:50%;top:0;width:12%;height:12%;margin-left:-6%;border-radius:50%;background:currentColor}usa-spinner[data-variant=\"windows\"] i:nth-child(2){animation-delay:240ms;--n:1}usa-spinner[data-variant=\"windows\"] i:nth-child(3){animation-delay:480ms;--n:2}usa-spinner[data-variant=\"windows\"] i:nth-child(4){animation-delay:720ms;--n:3}usa-spinner[data-variant=\"windows\"] i:nth-child(5){animation-delay:960ms;--n:4}@keyframes usa-orbit{0%{transform:rotate(225deg);opacity:1;animation-timing-function:ease-out}7%{transform:rotate(345deg);animation-timing-function:linear}30%{transform:rotate(455deg);animation-timing-function:ease-in-out}39%{transform:rotate(690deg);animation-timing-function:linear}70%{transform:rotate(815deg);opacity:1;animation-timing-function:ease-out}75%{transform:rotate(945deg);animation-timing-function:ease-out}76%,100%{transform:rotate(945deg);opacity:0}}usa-spinner[data-variant=\"ring\"] i{inset:0;border-radius:50%;border:calc(var(--usa-spinner-size) / 9) solid color-mix(in srgb,currentColor 20%,transparent);border-top-color:currentColor;animation:usa-spin 0.8s linear infinite}usa-spinner[data-variant=\"dots\"]{display:inline-flex;align-items:center;justify-content:space-between;height:calc(var(--usa-spinner-size) / 2.5)}usa-spinner[data-variant=\"dots\"] i{position:static;width:22%;aspect-ratio:1;border-radius:50%;background:currentColor;animation:usa-dot 1.2s ease-in-out infinite}usa-spinner[data-variant=\"dots\"] i:nth-child(2){animation-delay:0.15s}usa-spinner[data-variant=\"dots\"] i:nth-child(3){animation-delay:0.3s}@keyframes usa-dot{0%,60%,100%{transform:translateY(0);opacity:0.35}30%{transform:translateY(-70%);opacity:1}}usa-spinner[data-variant=\"pulse\"] i{inset:0;border-radius:50%;background:currentColor;opacity:0;animation:usa-pulse 1.6s cubic-bezier(0.22,1,0.36,1) infinite}usa-spinner[data-variant=\"pulse\"] i:nth-child(2){animation-delay:0.8s}@keyframes usa-pulse{from{transform:scale(0.1);opacity:0.8}to{transform:scale(1);opacity:0}}usa-spinner[data-variant=\"bars\"]{display:inline-flex;align-items:center;justify-content:space-between}usa-spinner[data-variant=\"bars\"] i{position:static;width:16%;height:100%;border-radius:2px;background:currentColor;transform:scaleY(0.35);animation:usa-bar 1s ease-in-out infinite}usa-spinner[data-variant=\"bars\"] i:nth-child(2){animation-delay:0.12s}usa-spinner[data-variant=\"bars\"] i:nth-child(3){animation-delay:0.24s}usa-spinner[data-variant=\"bars\"] i:nth-child(4){animation-delay:0.36s}@keyframes usa-bar{0%,100%{transform:scaleY(0.35)}40%{transform:scaleY(1)}}@media (prefers-reduced-motion:reduce){usa-spinner svg,usa-spinner i,usa-spinner i::after{animation:usa-calm 2.4s ease-in-out infinite !important}usa-spinner[data-variant=\"windows\"] i{transform:rotate(calc(var(--n,0) * 72deg))}usa-spinner svg circle{animation:none;stroke-dasharray:30 100}}@keyframes usa-calm{0%,100%{opacity:1}50%{opacity:0.4}}";
6
6
 
@@ -24,17 +24,24 @@ function markup(variant) {
24
24
  function defineSpinner(tag = 'usa-spinner') {
25
25
  return base.defineElement(tag, (Base) => class UsaSpinner extends Base {
26
26
  static get observedAttributes() {
27
- return ['variant', 'size', 'label'];
27
+ return ['kind', 'variant', 'size', 'label'];
28
28
  }
29
+ /** The spinner kind (`kind` attribute; `variant` is a deprecated alias until 3.0). */
30
+ get kind() {
31
+ return base.kindOf(this, SPINNER_VARIANTS, 'fluent');
32
+ }
33
+ set kind(v) {
34
+ this.setAttribute('kind', v);
35
+ }
36
+ /** @deprecated use `kind` (removed in 3.0). */
29
37
  get variant() {
30
- const v = this.str('variant', 'fluent');
31
- return SPINNER_VARIANTS.includes(v) ? v : 'fluent';
38
+ return this.kind;
32
39
  }
33
40
  set variant(v) {
34
- this.setAttribute('variant', v);
41
+ this.kind = v;
35
42
  }
36
43
  mount() {
37
- const variant = this.variant;
44
+ const variant = this.kind;
38
45
  if (this.getAttribute('data-variant') !== variant) {
39
46
  this.innerHTML = markup(variant);
40
47
  this.setAttribute('data-variant', variant);
@@ -351,10 +358,10 @@ function defineCheck(tag = 'usa-check') {
351
358
  this._anims = [];
352
359
  }
353
360
  static get observedAttributes() {
354
- return ['variant', 'size', 'label'];
361
+ return ['kind', 'variant', 'size', 'label'];
355
362
  }
356
363
  mount() {
357
- const variant = PATHS[this.str('variant', 'success')] ? this.str('variant', 'success') : 'success';
364
+ const variant = base.kindOf(this, PATHS, 'success');
358
365
  this.innerHTML = `<svg viewBox="0 0 52 52" aria-hidden="true"><circle class="usa-check-circle" cx="26" cy="26" r="23" pathLength="1"/><path class="usa-check-mark" d="${PATHS[variant]}" pathLength="1"/></svg>`;
359
366
  this.setAttribute('data-variant', variant);
360
367
  const size = this.getAttribute('size');
@@ -1 +1 @@
1
- {"version":3,"file":"feedback.cjs","sources":["../../src/components/feedback/spinner.ts","../../src/components/feedback/skeleton.ts","../../src/components/feedback/progress.ts","../../src/components/feedback/toast.ts","../../src/components/feedback/check.ts","../../src/components/feedback/index.ts"],"sourcesContent":["import { defineElement, type UsaElement } from '../base';\nimport css from './spinner.css?raw';\n\nexport const SPINNER_VARIANTS = ['fluent', 'windows', 'ring', 'dots', 'pulse', 'bars'] as const;\nexport type SpinnerVariant = (typeof SPINNER_VARIANTS)[number];\n\n/**\n * `<usa-spinner>` — indeterminate loading indicators, pure CSS animations\n * of `transform` / `opacity` (plus an SVG stroke for `fluent`).\n *\n * Variants (`variant`): `fluent` (default — the WinUI / Windows 11\n * ProgressRing arc), `windows` (the Windows 10 boot \"orbiting dots\"),\n * `ring` (classic border spinner), `dots` (three bouncing dots / typing\n * indicator), `pulse` (expanding ripple), `bars` (equalizer).\n * Attributes: `size` (px, 32), `label` (accessible name, \"Loading\"),\n * `paused`. Colour follows `color` / `--usa-spinner-color`.\n * `role=\"progressbar\"` without a value (indeterminate). Reduced motion:\n * a slow opacity pulse instead of movement.\n */\nexport interface UsaSpinnerElement extends UsaElement {\n variant: SpinnerVariant;\n}\n\nfunction markup(variant: string): string {\n switch (variant) {\n case 'windows':\n return '<i></i><i></i><i></i><i></i><i></i>';\n case 'dots':\n return '<i></i><i></i><i></i>';\n case 'bars':\n return '<i></i><i></i><i></i><i></i>';\n case 'pulse':\n return '<i></i><i></i>';\n case 'ring':\n return '<i></i>';\n default:\n return '<svg viewBox=\"0 0 16 16\" aria-hidden=\"true\"><circle cx=\"8\" cy=\"8\" r=\"7\" pathLength=\"100\"/></svg>';\n }\n}\n\nexport function defineSpinner(tag = 'usa-spinner'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) =>\n class UsaSpinner extends Base {\n static get observedAttributes(): string[] {\n return ['variant', 'size', 'label'];\n }\n\n get variant(): SpinnerVariant {\n const v = this.str('variant', 'fluent') as SpinnerVariant;\n return (SPINNER_VARIANTS as readonly string[]).includes(v) ? v : 'fluent';\n }\n set variant(v: SpinnerVariant) {\n this.setAttribute('variant', v);\n }\n\n mount(): void {\n const variant = this.variant;\n if (this.getAttribute('data-variant') !== variant) {\n this.innerHTML = markup(variant);\n this.setAttribute('data-variant', variant);\n }\n const size = this.getAttribute('size');\n if (size) this.style.setProperty('--usa-spinner-size', `${Number(size)}px`);\n else this.style.removeProperty('--usa-spinner-size');\n this.setAttribute('role', 'progressbar');\n if (!this.hasAttribute('aria-label') || this.hasAttribute('label')) this.setAttribute('aria-label', this.str('label', 'Loading'));\n }\n },\n { id: 'spinner', text: css }\n );\n}\n","import { defineElement, EASE_OUT, type UsaElement } from '../base';\nimport css from './skeleton.css?raw';\n\n/**\n * `<usa-skeleton>` — shimmering placeholders while content loads. With\n * `loading`, it shows `lines` bars (or one block of `width` × `height`,\n * or a `circle`) and hides its children; remove `loading` and the real\n * content fades in.\n *\n * Attributes: `loading`, `lines` (3), `width`, `height` (CSS lengths),\n * `circle`, `radius`, `avatar` (circle + lines, like a list row).\n * `aria-busy` follows `loading`. Reduced motion: no shimmer sweep.\n */\nexport interface UsaSkeletonElement extends UsaElement {\n loading: boolean;\n}\n\nexport function defineSkeleton(tag = 'usa-skeleton'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) =>\n class UsaSkeleton extends Base {\n static get observedAttributes(): string[] {\n return ['loading', 'lines', 'width', 'height', 'circle', 'avatar', 'radius'];\n }\n\n private _ph: HTMLElement | null = null;\n\n get loading(): boolean {\n return this.hasAttribute('loading');\n }\n set loading(v: boolean) {\n this.toggleAttribute('loading', !!v);\n }\n\n changed(name: string): void {\n if (name === 'loading') this.sync(true);\n else {\n this._ph?.remove();\n this._ph = null;\n this.sync(false);\n }\n }\n\n mount(): void {\n this.sync(false);\n }\n\n private build(): HTMLElement {\n const ph = document.createElement('div');\n ph.className = 'usa-skeleton-ph';\n ph.setAttribute('aria-hidden', 'true');\n const bone = (cls = '') => {\n const b = document.createElement('span');\n b.className = `usa-bone ${cls}`.trim();\n return b;\n };\n const radius = this.getAttribute('radius');\n if (radius) this.style.setProperty('--usa-skeleton-radius', radius);\n if (this.flag('circle') || this.hasAttribute('width') || this.hasAttribute('height')) {\n const b = bone(this.flag('circle') ? 'usa-bone-circle' : 'usa-bone-block');\n b.style.width = this.str('width', this.flag('circle') ? this.str('height', '48px') : '100%');\n b.style.height = this.str('height', this.flag('circle') ? b.style.width : '120px');\n ph.append(b);\n } else {\n if (this.flag('avatar')) ph.append(bone('usa-bone-circle usa-bone-avatar'));\n const col = document.createElement('div');\n col.className = 'usa-bone-lines';\n const n = Math.max(1, Math.min(20, this.num('lines', 3)));\n for (let i = 0; i < n; i++) col.append(bone(i === n - 1 && n > 1 ? 'usa-bone-last' : ''));\n ph.append(col);\n }\n return ph;\n }\n\n private sync(animate: boolean): void {\n const loading = this.loading;\n this.setAttribute('aria-busy', String(loading));\n if (loading) {\n if (!this._ph) {\n this._ph = this.build();\n this.prepend(this._ph);\n }\n return;\n }\n if (this._ph) {\n this._ph.remove();\n this._ph = null;\n }\n if (animate && !this.reduced) {\n for (const kid of Array.from(this.children)) {\n this.motion(kid, [{ opacity: 0, transform: 'translateY(4px)' }, { opacity: 1, transform: 'none' }], { duration: 360, easing: EASE_OUT });\n }\n }\n this.emit('loaded');\n }\n },\n { id: 'skeleton', text: css }\n );\n}\n","import { defineElement, clamp, type UsaElement } from '../base';\nimport css from './progress.css?raw';\n\n/**\n * `<usa-progress>` — a linear progress bar. Determinate (`value` / `max`)\n * bars glide between values with `transform: scaleX()`; without a value,\n * or with `indeterminate`, it shows the Windows Fluent indeterminate\n * animation (two sliding segments).\n *\n * Attributes: `value`, `max` (100), `indeterminate`, `state`\n * (`paused` | `error` — the WinUI states), `label` (accessible name).\n * `role=\"progressbar\"` with `aria-valuenow` when determinate.\n * Reduced motion: no glide; indeterminate becomes a gentle pulse.\n */\nexport interface UsaProgressElement extends UsaElement {\n value: number | null;\n max: number;\n /** 0–1, or `null` when indeterminate. */\n readonly ratio: number | null;\n}\n\nexport function defineProgress(tag = 'usa-progress'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) =>\n class UsaProgress extends Base {\n static get observedAttributes(): string[] {\n return ['value', 'max', 'indeterminate', 'label'];\n }\n\n private _fill: HTMLElement | null = null;\n\n get value(): number | null {\n const v = this.getAttribute('value');\n return v === null || v === '' || Number.isNaN(Number(v)) ? null : Number(v);\n }\n set value(v: number | null) {\n if (v === null || v === undefined) this.removeAttribute('value');\n else this.setAttribute('value', String(v));\n }\n get max(): number {\n const m = this.num('max', 100);\n return m > 0 ? m : 100;\n }\n set max(v: number) {\n this.setAttribute('max', String(v));\n }\n get ratio(): number | null {\n const v = this.value;\n return this.hasAttribute('indeterminate') || v === null ? null : clamp(v / this.max, 0, 1);\n }\n\n changed(): void {\n this.sync();\n }\n\n mount(): void {\n if (!this._fill) {\n this.innerHTML = '<span class=\"usa-progress-bar\"></span><span class=\"usa-progress-bar usa-progress-bar2\"></span>';\n this._fill = this.firstElementChild as HTMLElement;\n }\n this.setAttribute('role', 'progressbar');\n this.sync();\n }\n\n private sync(): void {\n const ratio = this.ratio;\n const label = this.getAttribute('label');\n if (label) this.setAttribute('aria-label', label);\n this.toggleAttribute('data-indeterminate', ratio === null);\n if (ratio === null) {\n this.removeAttribute('aria-valuenow');\n if (this._fill) this._fill.style.transform = '';\n return;\n }\n this.setAttribute('aria-valuemin', '0');\n this.setAttribute('aria-valuemax', String(this.max));\n this.setAttribute('aria-valuenow', String(this.value));\n if (this._fill) this._fill.style.transform = `scaleX(${ratio})`;\n if (ratio === 1) this.emit('complete');\n }\n },\n { id: 'progress', text: css }\n );\n}\n","import { defineElement, EASE_OUT, FLUENT_DECELERATE, type UsaElement } from '../base';\nimport css from './toast.css?raw';\n\nexport type ToastType = 'info' | 'success' | 'warning' | 'error';\n\nexport interface ToastOptions {\n /** ms before it hides itself; `0` keeps it until closed (default 4000). */\n duration?: number;\n type?: ToastType;\n /** Optional action button. */\n action?: { label: string; onClick: () => void };\n /** Show a close button (default `true`). */\n dismissible?: boolean;\n /** The toaster to use (default: the first `<usa-toaster>`, created if missing). */\n toaster?: UsaToasterElement | string;\n}\n\nexport interface ToastHandle {\n element: HTMLElement;\n close(): Promise<void>;\n}\n\n/**\n * `<usa-toaster>` — the region toasts slide into (`role=\"region\"`, each\n * toast `role=\"status\"`, errors `role=\"alert\"`). Toasts pause their timer\n * while hovered or focused, and the stack re-flows with a FLIP animation.\n *\n * Attributes: `position` (`bottom-right` default, `bottom-left`,\n * `bottom-center`, `top-right`, `top-left`, `top-center`), `max` (visible\n * toasts, 4), `label` (region name, \"Notifications\").\n * Reduced motion: toasts fade instead of sliding.\n */\nexport interface UsaToasterElement extends UsaElement {\n show(message: string, options?: ToastOptions): ToastHandle;\n clear(): void;\n}\n\nconst ICONS: Record<ToastType, string> = {\n info: '<path d=\"M12 8h.01M11 12h1v5h1\"/>',\n success: '<path d=\"m8 12.5 3 3 5-6\"/>',\n warning: '<path d=\"M12 8v5M12 16.5h.01\"/>',\n error: '<path d=\"m9 9 6 6M15 9l-6 6\"/>',\n};\n\nexport function defineToaster(tag = 'usa-toaster'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) =>\n class UsaToaster extends Base {\n static get observedAttributes(): string[] {\n return ['label'];\n }\n\n mount(): void {\n this.setAttribute('role', 'region');\n this.setAttribute('aria-label', this.str('label', 'Notifications'));\n }\n\n private flip(mutate: () => void): void {\n const kids = Array.from(this.children) as HTMLElement[];\n const before = new Map(kids.map((k) => [k, k.getBoundingClientRect().top]));\n mutate();\n if (this.reduced) return;\n for (const k of Array.from(this.children) as HTMLElement[]) {\n const top = before.get(k);\n if (top === undefined || k.hasAttribute('data-leaving')) continue;\n const dy = top - k.getBoundingClientRect().top;\n if (Math.abs(dy) > 0.5) this.motion(k, [{ transform: `translateY(${dy}px)` }, { transform: 'none' }], { duration: 320, easing: EASE_OUT, composite: 'add' } as KeyframeAnimationOptions);\n }\n }\n\n private enterFrames(): Keyframe[] {\n if (this.reduced) return [{ opacity: 0 }, { opacity: 1 }];\n const pos = this.str('position', 'bottom-right');\n const x = pos.endsWith('right') ? '110%' : pos.endsWith('left') ? '-110%' : '0';\n const y = pos.endsWith('center') ? (pos.startsWith('top') ? '-120%' : '120%') : '0';\n return [{ opacity: 0, transform: `translate(${x}, ${y}) scale(0.96)` }, { opacity: 1, transform: 'none' }];\n }\n\n show(message: string, options: ToastOptions = {}): ToastHandle {\n const type = options.type || 'info';\n const el = document.createElement('div');\n el.className = 'usa-toast';\n el.setAttribute('data-type', type);\n el.setAttribute('role', type === 'error' ? 'alert' : 'status');\n el.innerHTML = `<svg class=\"usa-toast-icon\" viewBox=\"0 0 24 24\" aria-hidden=\"true\"><circle cx=\"12\" cy=\"12\" r=\"9\"/>${ICONS[type] || ICONS.info}</svg><div class=\"usa-toast-msg\"></div>`;\n (el.querySelector('.usa-toast-msg') as HTMLElement).textContent = message;\n let closed: Promise<void> | null = null;\n let timer: ReturnType<typeof setTimeout> | 0 = 0;\n const close = (): Promise<void> => {\n if (closed) return closed;\n clearTimeout(timer as ReturnType<typeof setTimeout>);\n el.setAttribute('data-leaving', '');\n const frames = this.enterFrames().reverse();\n const a = el.isConnected ? this.motion(el, frames, { duration: 220, easing: 'cubic-bezier(0.7, 0, 0.84, 0)', fill: 'forwards' }) : null;\n closed = new Promise<void>((resolve) => {\n const done = () => {\n this.flip(() => el.remove());\n resolve();\n };\n if (a) a.onfinish = done;\n else done();\n });\n return closed;\n };\n if (options.action) {\n const btn = document.createElement('button');\n btn.type = 'button';\n btn.className = 'usa-toast-action';\n btn.textContent = options.action.label;\n btn.addEventListener('click', () => {\n options.action!.onClick();\n close();\n });\n el.append(btn);\n }\n if (options.dismissible !== false) {\n const x = document.createElement('button');\n x.type = 'button';\n x.className = 'usa-toast-close';\n x.setAttribute('aria-label', 'Close');\n x.innerHTML = '<svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><path d=\"m7 7 10 10M17 7 7 17\"/></svg>';\n x.addEventListener('click', () => close());\n el.append(x);\n }\n const duration = options.duration ?? 4000;\n const arm = () => {\n clearTimeout(timer as ReturnType<typeof setTimeout>);\n if (duration > 0) timer = setTimeout(close, duration);\n };\n const hold = () => clearTimeout(timer as ReturnType<typeof setTimeout>);\n el.addEventListener('pointerenter', hold);\n el.addEventListener('pointerleave', arm);\n el.addEventListener('focusin', hold);\n el.addEventListener('focusout', arm);\n const top = this.str('position', 'bottom-right').startsWith('top');\n this.flip(() => (top ? this.prepend(el) : this.append(el)));\n this.motion(el, this.enterFrames(), { duration: 420, easing: FLUENT_DECELERATE });\n arm();\n const live = Array.from(this.querySelectorAll<HTMLElement>('.usa-toast:not([data-leaving])'));\n const max = Math.max(1, this.num('max', 4));\n const extra = live.length - max;\n if (extra > 0) (top ? live.slice(-extra) : live.slice(0, extra)).forEach((t) => (t as any)._close?.());\n (el as any)._close = close;\n this.emit('toast', { element: el, message, type });\n return { element: el, close };\n }\n\n clear(): void {\n this.querySelectorAll<HTMLElement>('.usa-toast').forEach((t) => (t as any)._close?.());\n }\n },\n { id: 'toast', text: css }\n );\n}\n\n/**\n * Show a toast. Defines `<usa-toaster>` and adds one to `<body>` if the\n * page has none. Returns a handle with `close()`. No-op on the server.\n *\n * ```js\n * toast('Saved', { type: 'success' });\n * ```\n */\nexport function toast(message: string, options: ToastOptions = {}): ToastHandle | null {\n if (typeof document === 'undefined' || !defineToaster()) return null;\n let host: UsaToasterElement | null =\n typeof options.toaster === 'string' ? document.querySelector(options.toaster) : options.toaster || document.querySelector('usa-toaster');\n if (!host) {\n host = document.createElement('usa-toaster') as UsaToasterElement;\n document.body.append(host);\n }\n return host.show(message, options);\n}\n","import { defineElement, EASE_OUT, EASE_SPRING, type UsaElement } from '../base';\nimport css from './check.css?raw';\n\n/**\n * `<usa-check>` — an animated result icon: the circle draws itself, then the\n * check mark (or cross / exclamation) strokes in with a little pop.\n *\n * Attributes: `variant` (`success` default, `error`, `warning`), `size`\n * (px, 56), `start` (`view` default | `load` | `manual`), `label`\n * (accessible name, e.g. \"Payment complete\"; the icon is decorative\n * without it). Event: `usa:complete`. Reduced motion: drawn instantly.\n */\nexport interface UsaCheckElement extends UsaElement {\n play(): Promise<void>;\n reset(): void;\n}\n\nconst PATHS: Record<string, string> = {\n success: 'M15 27 l7 7 l14 -15',\n error: 'M18 18 L34 34 M34 18 L18 34',\n warning: 'M26 15 V30 M26 37 V37.5',\n};\n\nexport function defineCheck(tag = 'usa-check'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) =>\n class UsaCheck extends Base {\n static get observedAttributes(): string[] {\n return ['variant', 'size', 'label'];\n }\n\n private _anims: Animation[] = [];\n\n mount(): void {\n const variant = PATHS[this.str('variant', 'success')] ? this.str('variant', 'success') : 'success';\n this.innerHTML = `<svg viewBox=\"0 0 52 52\" aria-hidden=\"true\"><circle class=\"usa-check-circle\" cx=\"26\" cy=\"26\" r=\"23\" pathLength=\"1\"/><path class=\"usa-check-mark\" d=\"${PATHS[variant]}\" pathLength=\"1\"/></svg>`;\n this.setAttribute('data-variant', variant);\n const size = this.getAttribute('size');\n if (size) this.style.setProperty('--usa-check-size', `${Number(size)}px`);\n const label = this.getAttribute('label');\n if (label) {\n this.setAttribute('role', 'img');\n this.setAttribute('aria-label', label);\n }\n if (this.reduced) {\n this.setAttribute('data-state', 'done');\n return;\n }\n this.setAttribute('data-state', 'idle');\n const start = this.str('start', 'view');\n if (start === 'load') this.play();\n else if (start === 'view') {\n let done = false;\n this.inView((v) => v && !done && ((done = true), this.play()), { threshold: 0.5 });\n }\n }\n\n unmount(): void {\n this._anims.splice(0).forEach((a) => a.cancel());\n }\n\n reset(): void {\n this._anims.splice(0).forEach((a) => a.cancel());\n this.setAttribute('data-state', this.reduced ? 'done' : 'idle');\n }\n\n play(): Promise<void> {\n this.reset();\n this.setAttribute('data-state', 'done');\n const circle = this.querySelector('.usa-check-circle');\n const mark = this.querySelector('.usa-check-mark');\n const svg = this.querySelector('svg');\n if (this.reduced || !circle || !mark || !svg) {\n this.emit('complete');\n return Promise.resolve();\n }\n const draw = [{ strokeDashoffset: 1 }, { strokeDashoffset: 0 }];\n const anims = [\n this.motion(circle, draw, { duration: 520, easing: EASE_OUT, fill: 'backwards' }),\n this.motion(mark, draw, { duration: 340, delay: 420, easing: EASE_OUT, fill: 'backwards' }),\n this.motion(svg, [{ transform: 'scale(1)' }, { transform: 'scale(1.12)' }, { transform: 'scale(1)' }], { duration: 420, delay: 640, easing: EASE_SPRING }),\n ].filter((a): a is Animation => !!a);\n this._anims = anims;\n return new Promise((resolve) => {\n const last = anims[anims.length - 1];\n const done = () => {\n this.emit('complete');\n resolve();\n };\n if (last) last.onfinish = done;\n else done();\n });\n }\n },\n { id: 'check', text: css }\n );\n}\n","/**\n * use-scroll-animate/components/feedback — loading & feedback.\n * `<usa-spinner>`, `<usa-skeleton>`, `<usa-progress>`, `<usa-toaster>` +\n * `toast()`, `<usa-check>`.\n */\nimport { defineSpinner, type UsaSpinnerElement } from './spinner';\nimport { defineSkeleton, type UsaSkeletonElement } from './skeleton';\nimport { defineProgress, type UsaProgressElement } from './progress';\nimport { defineToaster, type UsaToasterElement } from './toast';\nimport { defineCheck, type UsaCheckElement } from './check';\n\nexport { defineSpinner, defineSkeleton, defineProgress, defineToaster, defineCheck };\nexport { toast } from './toast';\nexport { SPINNER_VARIANTS } from './spinner';\nexport type { SpinnerVariant } from './spinner';\nexport type { ToastOptions, ToastHandle, ToastType } from './toast';\nexport type { UsaSpinnerElement, UsaSkeletonElement, UsaProgressElement, UsaToasterElement, UsaCheckElement };\nexport { configureComponents, prefersReducedMotion } from '../base';\nexport type { ComponentsConfig, UsaElement } from '../base';\n\n/** Register every component of this category under its default tag. */\nexport function defineFeedbackComponents(): void {\n defineSpinner();\n defineSkeleton();\n defineProgress();\n defineToaster();\n defineCheck();\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'usa-spinner': UsaSpinnerElement;\n 'usa-skeleton': UsaSkeletonElement;\n 'usa-progress': UsaProgressElement;\n 'usa-toaster': UsaToasterElement;\n 'usa-check': UsaCheckElement;\n }\n}\n"],"names":["defineElement","css","EASE_OUT","clamp","FLUENT_DECELERATE","EASE_SPRING"],"mappings":"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"}
1
+ {"version":3,"file":"feedback.cjs","sources":["../../src/components/feedback/spinner.ts","../../src/components/feedback/skeleton.ts","../../src/components/feedback/progress.ts","../../src/components/feedback/toast.ts","../../src/components/feedback/check.ts","../../src/components/feedback/index.ts"],"sourcesContent":["import { kindOf, defineElement, type UsaElement } from '../base';\nimport css from './spinner.css?raw';\n\nexport const SPINNER_VARIANTS = ['fluent', 'windows', 'ring', 'dots', 'pulse', 'bars'] as const;\nexport type SpinnerVariant = (typeof SPINNER_VARIANTS)[number];\n\n/**\n * `<usa-spinner>` — indeterminate loading indicators, pure CSS animations\n * of `transform` / `opacity` (plus an SVG stroke for `fluent`).\n *\n * Kinds (`kind`; `variant` is a deprecated alias until 3.0): `fluent` (default — the WinUI / Windows 11\n * ProgressRing arc), `windows` (the Windows 10 boot \"orbiting dots\"),\n * `ring` (classic border spinner), `dots` (three bouncing dots / typing\n * indicator), `pulse` (expanding ripple), `bars` (equalizer).\n * Attributes: `size` (px, 32), `label` (accessible name, \"Loading\"),\n * `paused`. Colour follows `color` / `--usa-spinner-color`.\n * `role=\"progressbar\"` without a value (indeterminate). Reduced motion:\n * a slow opacity pulse instead of movement.\n */\nexport interface UsaSpinnerElement extends UsaElement {\n /** Spinner kind (`kind` attribute). */\n kind: SpinnerVariant;\n /** @deprecated alias of `kind`, removed in 3.0. */\n variant: SpinnerVariant;\n}\n\nfunction markup(variant: string): string {\n switch (variant) {\n case 'windows':\n return '<i></i><i></i><i></i><i></i><i></i>';\n case 'dots':\n return '<i></i><i></i><i></i>';\n case 'bars':\n return '<i></i><i></i><i></i><i></i>';\n case 'pulse':\n return '<i></i><i></i>';\n case 'ring':\n return '<i></i>';\n default:\n return '<svg viewBox=\"0 0 16 16\" aria-hidden=\"true\"><circle cx=\"8\" cy=\"8\" r=\"7\" pathLength=\"100\"/></svg>';\n }\n}\n\nexport function defineSpinner(tag = 'usa-spinner'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) =>\n class UsaSpinner extends Base {\n static get observedAttributes(): string[] {\n return ['kind', 'variant', 'size', 'label'];\n }\n\n /** The spinner kind (`kind` attribute; `variant` is a deprecated alias until 3.0). */\n get kind(): SpinnerVariant {\n return kindOf(this, SPINNER_VARIANTS, 'fluent') as SpinnerVariant;\n }\n set kind(v: SpinnerVariant) {\n this.setAttribute('kind', v);\n }\n /** @deprecated use `kind` (removed in 3.0). */\n get variant(): SpinnerVariant {\n return this.kind;\n }\n set variant(v: SpinnerVariant) {\n this.kind = v;\n }\n\n mount(): void {\n const variant = this.kind;\n if (this.getAttribute('data-variant') !== variant) {\n this.innerHTML = markup(variant);\n this.setAttribute('data-variant', variant);\n }\n const size = this.getAttribute('size');\n if (size) this.style.setProperty('--usa-spinner-size', `${Number(size)}px`);\n else this.style.removeProperty('--usa-spinner-size');\n this.setAttribute('role', 'progressbar');\n if (!this.hasAttribute('aria-label') || this.hasAttribute('label')) this.setAttribute('aria-label', this.str('label', 'Loading'));\n }\n },\n { id: 'spinner', text: css }\n );\n}\n","import { defineElement, EASE_OUT, type UsaElement } from '../base';\nimport css from './skeleton.css?raw';\n\n/**\n * `<usa-skeleton>` — shimmering placeholders while content loads. With\n * `loading`, it shows `lines` bars (or one block of `width` × `height`,\n * or a `circle`) and hides its children; remove `loading` and the real\n * content fades in.\n *\n * Attributes: `loading`, `lines` (3), `width`, `height` (CSS lengths),\n * `circle`, `radius`, `avatar` (circle + lines, like a list row).\n * `aria-busy` follows `loading`. Reduced motion: no shimmer sweep.\n */\nexport interface UsaSkeletonElement extends UsaElement {\n loading: boolean;\n}\n\nexport function defineSkeleton(tag = 'usa-skeleton'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) =>\n class UsaSkeleton extends Base {\n static get observedAttributes(): string[] {\n return ['loading', 'lines', 'width', 'height', 'circle', 'avatar', 'radius'];\n }\n\n private _ph: HTMLElement | null = null;\n\n get loading(): boolean {\n return this.hasAttribute('loading');\n }\n set loading(v: boolean) {\n this.toggleAttribute('loading', !!v);\n }\n\n changed(name: string): void {\n if (name === 'loading') this.sync(true);\n else {\n this._ph?.remove();\n this._ph = null;\n this.sync(false);\n }\n }\n\n mount(): void {\n this.sync(false);\n }\n\n private build(): HTMLElement {\n const ph = document.createElement('div');\n ph.className = 'usa-skeleton-ph';\n ph.setAttribute('aria-hidden', 'true');\n const bone = (cls = '') => {\n const b = document.createElement('span');\n b.className = `usa-bone ${cls}`.trim();\n return b;\n };\n const radius = this.getAttribute('radius');\n if (radius) this.style.setProperty('--usa-skeleton-radius', radius);\n if (this.flag('circle') || this.hasAttribute('width') || this.hasAttribute('height')) {\n const b = bone(this.flag('circle') ? 'usa-bone-circle' : 'usa-bone-block');\n b.style.width = this.str('width', this.flag('circle') ? this.str('height', '48px') : '100%');\n b.style.height = this.str('height', this.flag('circle') ? b.style.width : '120px');\n ph.append(b);\n } else {\n if (this.flag('avatar')) ph.append(bone('usa-bone-circle usa-bone-avatar'));\n const col = document.createElement('div');\n col.className = 'usa-bone-lines';\n const n = Math.max(1, Math.min(20, this.num('lines', 3)));\n for (let i = 0; i < n; i++) col.append(bone(i === n - 1 && n > 1 ? 'usa-bone-last' : ''));\n ph.append(col);\n }\n return ph;\n }\n\n private sync(animate: boolean): void {\n const loading = this.loading;\n this.setAttribute('aria-busy', String(loading));\n if (loading) {\n if (!this._ph) {\n this._ph = this.build();\n this.prepend(this._ph);\n }\n return;\n }\n if (this._ph) {\n this._ph.remove();\n this._ph = null;\n }\n if (animate && !this.reduced) {\n for (const kid of Array.from(this.children)) {\n this.motion(kid, [{ opacity: 0, transform: 'translateY(4px)' }, { opacity: 1, transform: 'none' }], { duration: 360, easing: EASE_OUT });\n }\n }\n this.emit('loaded');\n }\n },\n { id: 'skeleton', text: css }\n );\n}\n","import { defineElement, clamp, type UsaElement } from '../base';\nimport css from './progress.css?raw';\n\n/**\n * `<usa-progress>` — a linear progress bar. Determinate (`value` / `max`)\n * bars glide between values with `transform: scaleX()`; without a value,\n * or with `indeterminate`, it shows the Windows Fluent indeterminate\n * animation (two sliding segments).\n *\n * Attributes: `value`, `max` (100), `indeterminate`, `state`\n * (`paused` | `error` — the WinUI states), `label` (accessible name).\n * `role=\"progressbar\"` with `aria-valuenow` when determinate.\n * Reduced motion: no glide; indeterminate becomes a gentle pulse.\n */\nexport interface UsaProgressElement extends UsaElement {\n value: number | null;\n max: number;\n /** 0–1, or `null` when indeterminate. */\n readonly ratio: number | null;\n}\n\nexport function defineProgress(tag = 'usa-progress'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) =>\n class UsaProgress extends Base {\n static get observedAttributes(): string[] {\n return ['value', 'max', 'indeterminate', 'label'];\n }\n\n private _fill: HTMLElement | null = null;\n\n get value(): number | null {\n const v = this.getAttribute('value');\n return v === null || v === '' || Number.isNaN(Number(v)) ? null : Number(v);\n }\n set value(v: number | null) {\n if (v === null || v === undefined) this.removeAttribute('value');\n else this.setAttribute('value', String(v));\n }\n get max(): number {\n const m = this.num('max', 100);\n return m > 0 ? m : 100;\n }\n set max(v: number) {\n this.setAttribute('max', String(v));\n }\n get ratio(): number | null {\n const v = this.value;\n return this.hasAttribute('indeterminate') || v === null ? null : clamp(v / this.max, 0, 1);\n }\n\n changed(): void {\n this.sync();\n }\n\n mount(): void {\n if (!this._fill) {\n this.innerHTML = '<span class=\"usa-progress-bar\"></span><span class=\"usa-progress-bar usa-progress-bar2\"></span>';\n this._fill = this.firstElementChild as HTMLElement;\n }\n this.setAttribute('role', 'progressbar');\n this.sync();\n }\n\n private sync(): void {\n const ratio = this.ratio;\n const label = this.getAttribute('label');\n if (label) this.setAttribute('aria-label', label);\n this.toggleAttribute('data-indeterminate', ratio === null);\n if (ratio === null) {\n this.removeAttribute('aria-valuenow');\n if (this._fill) this._fill.style.transform = '';\n return;\n }\n this.setAttribute('aria-valuemin', '0');\n this.setAttribute('aria-valuemax', String(this.max));\n this.setAttribute('aria-valuenow', String(this.value));\n if (this._fill) this._fill.style.transform = `scaleX(${ratio})`;\n if (ratio === 1) this.emit('complete');\n }\n },\n { id: 'progress', text: css }\n );\n}\n","import { defineElement, EASE_OUT, FLUENT_DECELERATE, type UsaElement } from '../base';\nimport css from './toast.css?raw';\n\nexport type ToastType = 'info' | 'success' | 'warning' | 'error';\n\nexport interface ToastOptions {\n /** ms before it hides itself; `0` keeps it until closed (default 4000). */\n duration?: number;\n type?: ToastType;\n /** Optional action button. */\n action?: { label: string; onClick: () => void };\n /** Show a close button (default `true`). */\n dismissible?: boolean;\n /** The toaster to use (default: the first `<usa-toaster>`, created if missing). */\n toaster?: UsaToasterElement | string;\n}\n\nexport interface ToastHandle {\n element: HTMLElement;\n close(): Promise<void>;\n}\n\n/**\n * `<usa-toaster>` — the region toasts slide into (`role=\"region\"`, each\n * toast `role=\"status\"`, errors `role=\"alert\"`). Toasts pause their timer\n * while hovered or focused, and the stack re-flows with a FLIP animation.\n *\n * Attributes: `position` (`bottom-right` default, `bottom-left`,\n * `bottom-center`, `top-right`, `top-left`, `top-center`), `max` (visible\n * toasts, 4), `label` (region name, \"Notifications\").\n * Reduced motion: toasts fade instead of sliding.\n */\nexport interface UsaToasterElement extends UsaElement {\n show(message: string, options?: ToastOptions): ToastHandle;\n clear(): void;\n}\n\nconst ICONS: Record<ToastType, string> = {\n info: '<path d=\"M12 8h.01M11 12h1v5h1\"/>',\n success: '<path d=\"m8 12.5 3 3 5-6\"/>',\n warning: '<path d=\"M12 8v5M12 16.5h.01\"/>',\n error: '<path d=\"m9 9 6 6M15 9l-6 6\"/>',\n};\n\nexport function defineToaster(tag = 'usa-toaster'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) =>\n class UsaToaster extends Base {\n static get observedAttributes(): string[] {\n return ['label'];\n }\n\n mount(): void {\n this.setAttribute('role', 'region');\n this.setAttribute('aria-label', this.str('label', 'Notifications'));\n }\n\n private flip(mutate: () => void): void {\n const kids = Array.from(this.children) as HTMLElement[];\n const before = new Map(kids.map((k) => [k, k.getBoundingClientRect().top]));\n mutate();\n if (this.reduced) return;\n for (const k of Array.from(this.children) as HTMLElement[]) {\n const top = before.get(k);\n if (top === undefined || k.hasAttribute('data-leaving')) continue;\n const dy = top - k.getBoundingClientRect().top;\n if (Math.abs(dy) > 0.5) this.motion(k, [{ transform: `translateY(${dy}px)` }, { transform: 'none' }], { duration: 320, easing: EASE_OUT, composite: 'add' } as KeyframeAnimationOptions);\n }\n }\n\n private enterFrames(): Keyframe[] {\n if (this.reduced) return [{ opacity: 0 }, { opacity: 1 }];\n const pos = this.str('position', 'bottom-right');\n const x = pos.endsWith('right') ? '110%' : pos.endsWith('left') ? '-110%' : '0';\n const y = pos.endsWith('center') ? (pos.startsWith('top') ? '-120%' : '120%') : '0';\n return [{ opacity: 0, transform: `translate(${x}, ${y}) scale(0.96)` }, { opacity: 1, transform: 'none' }];\n }\n\n show(message: string, options: ToastOptions = {}): ToastHandle {\n const type = options.type || 'info';\n const el = document.createElement('div');\n el.className = 'usa-toast';\n el.setAttribute('data-type', type);\n el.setAttribute('role', type === 'error' ? 'alert' : 'status');\n el.innerHTML = `<svg class=\"usa-toast-icon\" viewBox=\"0 0 24 24\" aria-hidden=\"true\"><circle cx=\"12\" cy=\"12\" r=\"9\"/>${ICONS[type] || ICONS.info}</svg><div class=\"usa-toast-msg\"></div>`;\n (el.querySelector('.usa-toast-msg') as HTMLElement).textContent = message;\n let closed: Promise<void> | null = null;\n let timer: ReturnType<typeof setTimeout> | 0 = 0;\n const close = (): Promise<void> => {\n if (closed) return closed;\n clearTimeout(timer as ReturnType<typeof setTimeout>);\n el.setAttribute('data-leaving', '');\n const frames = this.enterFrames().reverse();\n const a = el.isConnected ? this.motion(el, frames, { duration: 220, easing: 'cubic-bezier(0.7, 0, 0.84, 0)', fill: 'forwards' }) : null;\n closed = new Promise<void>((resolve) => {\n const done = () => {\n this.flip(() => el.remove());\n resolve();\n };\n if (a) a.onfinish = done;\n else done();\n });\n return closed;\n };\n if (options.action) {\n const btn = document.createElement('button');\n btn.type = 'button';\n btn.className = 'usa-toast-action';\n btn.textContent = options.action.label;\n btn.addEventListener('click', () => {\n options.action!.onClick();\n close();\n });\n el.append(btn);\n }\n if (options.dismissible !== false) {\n const x = document.createElement('button');\n x.type = 'button';\n x.className = 'usa-toast-close';\n x.setAttribute('aria-label', 'Close');\n x.innerHTML = '<svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><path d=\"m7 7 10 10M17 7 7 17\"/></svg>';\n x.addEventListener('click', () => close());\n el.append(x);\n }\n const duration = options.duration ?? 4000;\n const arm = () => {\n clearTimeout(timer as ReturnType<typeof setTimeout>);\n if (duration > 0) timer = setTimeout(close, duration);\n };\n const hold = () => clearTimeout(timer as ReturnType<typeof setTimeout>);\n el.addEventListener('pointerenter', hold);\n el.addEventListener('pointerleave', arm);\n el.addEventListener('focusin', hold);\n el.addEventListener('focusout', arm);\n const top = this.str('position', 'bottom-right').startsWith('top');\n this.flip(() => (top ? this.prepend(el) : this.append(el)));\n this.motion(el, this.enterFrames(), { duration: 420, easing: FLUENT_DECELERATE });\n arm();\n const live = Array.from(this.querySelectorAll<HTMLElement>('.usa-toast:not([data-leaving])'));\n const max = Math.max(1, this.num('max', 4));\n const extra = live.length - max;\n if (extra > 0) (top ? live.slice(-extra) : live.slice(0, extra)).forEach((t) => (t as any)._close?.());\n (el as any)._close = close;\n this.emit('toast', { element: el, message, type });\n return { element: el, close };\n }\n\n clear(): void {\n this.querySelectorAll<HTMLElement>('.usa-toast').forEach((t) => (t as any)._close?.());\n }\n },\n { id: 'toast', text: css }\n );\n}\n\n/**\n * Show a toast. Defines `<usa-toaster>` and adds one to `<body>` if the\n * page has none. Returns a handle with `close()`. No-op on the server.\n *\n * ```js\n * toast('Saved', { type: 'success' });\n * ```\n */\nexport function toast(message: string, options: ToastOptions = {}): ToastHandle | null {\n if (typeof document === 'undefined' || !defineToaster()) return null;\n let host: UsaToasterElement | null =\n typeof options.toaster === 'string' ? document.querySelector(options.toaster) : options.toaster || document.querySelector('usa-toaster');\n if (!host) {\n host = document.createElement('usa-toaster') as UsaToasterElement;\n document.body.append(host);\n }\n return host.show(message, options);\n}\n","import { kindOf, defineElement, EASE_OUT, EASE_SPRING, type UsaElement } from '../base';\nimport css from './check.css?raw';\n\n/**\n * `<usa-check>` — an animated result icon: the circle draws itself, then the\n * check mark (or cross / exclamation) strokes in with a little pop.\n *\n * Attributes: `variant` (`success` default, `error`, `warning`), `size`\n * (px, 56), `start` (`view` default | `load` | `manual`), `label`\n * (accessible name, e.g. \"Payment complete\"; the icon is decorative\n * without it). Event: `usa:complete`. Reduced motion: drawn instantly.\n */\nexport interface UsaCheckElement extends UsaElement {\n play(): Promise<void>;\n reset(): void;\n}\n\nconst PATHS: Record<string, string> = {\n success: 'M15 27 l7 7 l14 -15',\n error: 'M18 18 L34 34 M34 18 L18 34',\n warning: 'M26 15 V30 M26 37 V37.5',\n};\n\nexport function defineCheck(tag = 'usa-check'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) =>\n class UsaCheck extends Base {\n static get observedAttributes(): string[] {\n return ['kind', 'variant', 'size', 'label'];\n }\n\n private _anims: Animation[] = [];\n\n mount(): void {\n const variant = kindOf(this, PATHS, 'success');\n this.innerHTML = `<svg viewBox=\"0 0 52 52\" aria-hidden=\"true\"><circle class=\"usa-check-circle\" cx=\"26\" cy=\"26\" r=\"23\" pathLength=\"1\"/><path class=\"usa-check-mark\" d=\"${PATHS[variant]}\" pathLength=\"1\"/></svg>`;\n this.setAttribute('data-variant', variant);\n const size = this.getAttribute('size');\n if (size) this.style.setProperty('--usa-check-size', `${Number(size)}px`);\n const label = this.getAttribute('label');\n if (label) {\n this.setAttribute('role', 'img');\n this.setAttribute('aria-label', label);\n }\n if (this.reduced) {\n this.setAttribute('data-state', 'done');\n return;\n }\n this.setAttribute('data-state', 'idle');\n const start = this.str('start', 'view');\n if (start === 'load') this.play();\n else if (start === 'view') {\n let done = false;\n this.inView((v) => v && !done && ((done = true), this.play()), { threshold: 0.5 });\n }\n }\n\n unmount(): void {\n this._anims.splice(0).forEach((a) => a.cancel());\n }\n\n reset(): void {\n this._anims.splice(0).forEach((a) => a.cancel());\n this.setAttribute('data-state', this.reduced ? 'done' : 'idle');\n }\n\n play(): Promise<void> {\n this.reset();\n this.setAttribute('data-state', 'done');\n const circle = this.querySelector('.usa-check-circle');\n const mark = this.querySelector('.usa-check-mark');\n const svg = this.querySelector('svg');\n if (this.reduced || !circle || !mark || !svg) {\n this.emit('complete');\n return Promise.resolve();\n }\n const draw = [{ strokeDashoffset: 1 }, { strokeDashoffset: 0 }];\n const anims = [\n this.motion(circle, draw, { duration: 520, easing: EASE_OUT, fill: 'backwards' }),\n this.motion(mark, draw, { duration: 340, delay: 420, easing: EASE_OUT, fill: 'backwards' }),\n this.motion(svg, [{ transform: 'scale(1)' }, { transform: 'scale(1.12)' }, { transform: 'scale(1)' }], { duration: 420, delay: 640, easing: EASE_SPRING }),\n ].filter((a): a is Animation => !!a);\n this._anims = anims;\n return new Promise((resolve) => {\n const last = anims[anims.length - 1];\n const done = () => {\n this.emit('complete');\n resolve();\n };\n if (last) last.onfinish = done;\n else done();\n });\n }\n },\n { id: 'check', text: css }\n );\n}\n","/**\n * use-scroll-animate/components/feedback — loading & feedback.\n * `<usa-spinner>`, `<usa-skeleton>`, `<usa-progress>`, `<usa-toaster>` +\n * `toast()`, `<usa-check>`.\n */\nimport { defineSpinner, type UsaSpinnerElement } from './spinner';\nimport { defineSkeleton, type UsaSkeletonElement } from './skeleton';\nimport { defineProgress, type UsaProgressElement } from './progress';\nimport { defineToaster, type UsaToasterElement } from './toast';\nimport { defineCheck, type UsaCheckElement } from './check';\n\nexport { defineSpinner, defineSkeleton, defineProgress, defineToaster, defineCheck };\nexport { toast } from './toast';\nexport { SPINNER_VARIANTS } from './spinner';\nexport type { SpinnerVariant } from './spinner';\nexport type { ToastOptions, ToastHandle, ToastType } from './toast';\nexport type { UsaSpinnerElement, UsaSkeletonElement, UsaProgressElement, UsaToasterElement, UsaCheckElement };\nexport { configureComponents, prefersReducedMotion } from '../base';\nexport type { ComponentsConfig, UsaElement } from '../base';\n\n/** Register every component of this category under its default tag. */\nexport function defineFeedbackComponents(): void {\n defineSpinner();\n defineSkeleton();\n defineProgress();\n defineToaster();\n defineCheck();\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'usa-spinner': UsaSpinnerElement;\n 'usa-skeleton': UsaSkeletonElement;\n 'usa-progress': UsaProgressElement;\n 'usa-toaster': UsaToasterElement;\n 'usa-check': UsaCheckElement;\n }\n}\n"],"names":["defineElement","kindOf","css","EASE_OUT","clamp","FLUENT_DECELERATE","EASE_SPRING"],"mappings":"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"}
@@ -49,7 +49,7 @@ type SpinnerVariant = (typeof SPINNER_VARIANTS)[number];
49
49
  * `<usa-spinner>` — indeterminate loading indicators, pure CSS animations
50
50
  * of `transform` / `opacity` (plus an SVG stroke for `fluent`).
51
51
  *
52
- * Variants (`variant`): `fluent` (default — the WinUI / Windows 11
52
+ * Kinds (`kind`; `variant` is a deprecated alias until 3.0): `fluent` (default — the WinUI / Windows 11
53
53
  * ProgressRing arc), `windows` (the Windows 10 boot "orbiting dots"),
54
54
  * `ring` (classic border spinner), `dots` (three bouncing dots / typing
55
55
  * indicator), `pulse` (expanding ripple), `bars` (equalizer).
@@ -59,6 +59,9 @@ type SpinnerVariant = (typeof SPINNER_VARIANTS)[number];
59
59
  * a slow opacity pulse instead of movement.
60
60
  */
61
61
  interface UsaSpinnerElement extends UsaElement {
62
+ /** Spinner kind (`kind` attribute). */
63
+ kind: SpinnerVariant;
64
+ /** @deprecated alias of `kind`, removed in 3.0. */
62
65
  variant: SpinnerVariant;
63
66
  }
64
67
  declare function defineSpinner(tag?: string): CustomElementConstructor | undefined;