use-scroll-animate 6.2.0 → 6.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (104) hide show
  1. package/CHANGELOG.md +33 -2
  2. package/README.md +2 -2
  3. package/README_ja.md +2 -2
  4. package/README_zh.md +2 -2
  5. package/dist/chunks/{base-C_3cAoRz.js → base-DchG4q_S.js} +2 -2
  6. package/dist/chunks/{base-C_3cAoRz.js.map → base-DchG4q_S.js.map} +1 -1
  7. package/dist/chunks/{core-ps8uvYuN.js → core-D2vF8kZb.js} +2 -2
  8. package/dist/chunks/{core-ps8uvYuN.js.map → core-D2vF8kZb.js.map} +1 -1
  9. package/dist/chunks/{core-VEBw36QK.js → core-DVyTlo9Q.js} +2 -2
  10. package/dist/chunks/{core-VEBw36QK.js.map → core-DVyTlo9Q.js.map} +1 -1
  11. package/dist/chunks/{fx-Bs6IrV4Q.js → fx-DUMVKSvg.js} +2 -2
  12. package/dist/chunks/{fx-Bs6IrV4Q.js.map → fx-DUMVKSvg.js.map} +1 -1
  13. package/dist/chunks/{generative-D2YyhaeO.js → generative-2LhxG5BJ.js} +3 -49
  14. package/dist/chunks/generative-2LhxG5BJ.js.map +1 -0
  15. package/dist/chunks/{generative-DzIZq-_g.cjs → generative-BHIj-NU0.cjs} +3 -56
  16. package/dist/chunks/generative-BHIj-NU0.cjs.map +1 -0
  17. package/dist/chunks/{gpu-CenK2l6b.cjs → gpu-BBRLgEzM.cjs} +13 -12
  18. package/dist/chunks/gpu-BBRLgEzM.cjs.map +1 -0
  19. package/dist/chunks/{gpu-Bu7qwugO.js → gpu-EjV49FQk.js} +4 -3
  20. package/dist/chunks/gpu-EjV49FQk.js.map +1 -0
  21. package/dist/chunks/{registry-CKNLQpwd.js → registry-Bu5NrAyA.js} +2 -2
  22. package/dist/chunks/{registry-CKNLQpwd.js.map → registry-Bu5NrAyA.js.map} +1 -1
  23. package/dist/chunks/shared-CkKHWrtJ.js +50 -0
  24. package/dist/chunks/shared-CkKHWrtJ.js.map +1 -0
  25. package/dist/chunks/shared-jkgRH-Hx.cjs +58 -0
  26. package/dist/chunks/shared-jkgRH-Hx.cjs.map +1 -0
  27. package/dist/chunks/{spring-CbvHfVtP.js → spring-BhoT09Qb.js} +2 -2
  28. package/dist/chunks/{spring-CbvHfVtP.js.map → spring-BhoT09Qb.js.map} +1 -1
  29. package/dist/chunks/{variants-DRlKVHvu.js → variants-C_hv_s23.js} +2 -2
  30. package/dist/chunks/{variants-DRlKVHvu.js.map → variants-C_hv_s23.js.map} +1 -1
  31. package/dist/components/a11y.js +2 -2
  32. package/dist/components/angular.js +7 -7
  33. package/dist/components/background.js +2 -2
  34. package/dist/components/bridge.js +1 -1
  35. package/dist/components/cards.js +2 -2
  36. package/dist/components/click.js +3 -3
  37. package/dist/components/depth.js +3 -3
  38. package/dist/components/effects.cjs +45 -44
  39. package/dist/components/effects.cjs.map +1 -1
  40. package/dist/components/effects.js +7 -6
  41. package/dist/components/effects.js.map +1 -1
  42. package/dist/components/feedback.js +1 -1
  43. package/dist/components/fx-gpu.cjs +3 -2
  44. package/dist/components/fx-gpu.cjs.map +1 -1
  45. package/dist/components/fx-gpu.js +5 -4
  46. package/dist/components/fx-gpu.js.map +1 -1
  47. package/dist/components/fx-light.cjs +221 -0
  48. package/dist/components/fx-light.cjs.map +1 -0
  49. package/dist/components/fx-light.d.cts +72 -0
  50. package/dist/components/fx-light.d.ts +72 -0
  51. package/dist/components/fx-light.js +217 -0
  52. package/dist/components/fx-light.js.map +1 -0
  53. package/dist/components/fx-text.cjs +267 -0
  54. package/dist/components/fx-text.cjs.map +1 -0
  55. package/dist/components/fx-text.d.cts +70 -0
  56. package/dist/components/fx-text.d.ts +70 -0
  57. package/dist/components/fx-text.js +263 -0
  58. package/dist/components/fx-text.js.map +1 -0
  59. package/dist/components/fx.js +5 -5
  60. package/dist/components/fx2.cjs +15 -2
  61. package/dist/components/fx2.cjs.map +1 -1
  62. package/dist/components/fx2.d.cts +55 -1
  63. package/dist/components/fx2.d.ts +55 -1
  64. package/dist/components/fx2.js +15 -6
  65. package/dist/components/fx2.js.map +1 -1
  66. package/dist/components/gesture.js +4 -4
  67. package/dist/components/interaction.js +1 -1
  68. package/dist/components/layout.js +1 -1
  69. package/dist/components/packs.js +1 -1
  70. package/dist/components/page.js +3 -3
  71. package/dist/components/perf.js +2 -2
  72. package/dist/components/physics.js +3 -3
  73. package/dist/components/reveal.js +1 -1
  74. package/dist/components/solid.js +7 -7
  75. package/dist/components/svelte.js +7 -7
  76. package/dist/components/svg.js +1 -1
  77. package/dist/components/text.js +2 -2
  78. package/dist/components/timeline.js +3 -3
  79. package/dist/components/transitions.js +1 -1
  80. package/dist/components/ui.js +4 -4
  81. package/dist/components/vue.js +7 -7
  82. package/dist/components/webgl.js +1 -1
  83. package/dist/components/widgets.cjs +1096 -8
  84. package/dist/components/widgets.cjs.map +1 -1
  85. package/dist/components/widgets.d.cts +163 -2
  86. package/dist/components/widgets.d.ts +163 -2
  87. package/dist/components/widgets.js +1084 -11
  88. package/dist/components/widgets.js.map +1 -1
  89. package/dist/components.js +9 -9
  90. package/dist/index.cjs +1 -1
  91. package/dist/index.cjs.map +1 -1
  92. package/dist/index.js +3 -3
  93. package/dist/index.js.map +1 -1
  94. package/dist/index.umd.js +1 -1
  95. package/dist/index.umd.js.map +1 -1
  96. package/dist/widgets.umd.js +1 -1
  97. package/dist/widgets.umd.js.map +1 -1
  98. package/docs/ROADMAP.md +2 -2
  99. package/docs/components.md +61 -1
  100. package/package.json +24 -4
  101. package/dist/chunks/generative-D2YyhaeO.js.map +0 -1
  102. package/dist/chunks/generative-DzIZq-_g.cjs.map +0 -1
  103. package/dist/chunks/gpu-Bu7qwugO.js.map +0 -1
  104. package/dist/chunks/gpu-CenK2l6b.cjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"widgets.js","sources":["../../src/components/widgets/shared.ts","../../src/components/widgets/carousel.ts","../../src/components/widgets/tab-bar.ts","../../src/components/widgets/disclosure.ts","../../src/components/widgets/stories.ts","../../src/components/widgets/index.ts"],"sourcesContent":["/** Helpers shared by the 6.x widgets (`motionary/components/widgets`). */\nexport const clampN = (v: number, a: number, b: number): number => Math.min(b, Math.max(a, v));\n\n/** Children of `el` that are elements and not created by the widget itself. */\nexport const ownChildren = (el: Element, skip = '[data-usa-part]'): HTMLElement[] =>\n Array.from(el.children).filter((c): c is HTMLElement => c instanceof HTMLElement && !c.matches(skip));\n\n/** Create a part element (marked so re-mounts can find / skip it). */\nexport function part<K extends keyof HTMLElementTagNameMap>(tag: K, cls: string, attrs: Record<string, string> = {}, html = ''): HTMLElementTagNameMap[K] {\n const n = document.createElement(tag);\n n.className = cls;\n n.setAttribute('data-usa-part', '');\n for (const [k, v] of Object.entries(attrs)) n.setAttribute(k, v);\n if (html) n.innerHTML = html;\n return n;\n}\n\n/** Remove the parts a previous mount created. */\nexport const dropParts = (el: Element): void => el.querySelectorAll(':scope > [data-usa-part]').forEach((n) => n.remove());\n\nlet uid = 0;\n/** A document-unique id with a prefix. */\nexport const nextId = (p: string): string => `${p}-${++uid}`;\n\n/** Roving arrow-key focus over `items` (horizontal or vertical); returns the new index or -1. */\nexport function arrowIndex(e: KeyboardEvent, i: number, n: number, vertical = false): number {\n const prev = vertical ? 'ArrowUp' : 'ArrowLeft';\n const next = vertical ? 'ArrowDown' : 'ArrowRight';\n if (e.key === prev) return (i - 1 + n) % n;\n if (e.key === next) return (i + 1) % n;\n if (e.key === 'Home') return 0;\n if (e.key === 'End') return n - 1;\n return -1;\n}\n","import { defineElement, type UsaElement } from '../base';\nimport { clampN, ownChildren, part, dropParts } from './shared';\nimport css from './carousel.css?raw';\n\n/**\n * `<usa-carousel>` (6.2) — swipeable carousel / slider. Each child is a slide.\n * Attributes: `effect` (`slide` · `fade` · `scale` · `cards` — 3D coverflow),\n * `autoplay` (ms; pauses on hover, focus, when off screen and under reduced\n * motion), `loop`, `index`, `label` (\"Carousel\"), `no-controls`, `no-dots`.\n * Drag / swipe with a pointer, arrow keys when focused. API: `next()`,\n * `prev()`, `goTo(i)`, `index`, `length`. Events: `usa:change` (`{ index, from }`).\n * Reduced motion: slides switch without movement.\n */\nexport interface UsaCarouselElement extends UsaElement {\n index: number;\n readonly length: number;\n next(): void;\n prev(): void;\n goTo(i: number): void;\n}\n\nexport const CAROUSEL_EFFECTS = ['slide', 'fade', 'scale', 'cards'] as const;\n\nexport function defineCarousel(tag = 'usa-carousel'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) => {\n class UsaCarousel extends Base {\n static get observedAttributes(): string[] {\n return ['effect', 'autoplay', 'loop', 'no-controls', 'no-dots'];\n }\n private _i = 0;\n private _slides: HTMLElement[] = [];\n private _track: HTMLElement | null = null;\n private _timer = 0;\n private _hold = false;\n private _dots: HTMLButtonElement[] = [];\n\n get length(): number {\n return this._slides.length;\n }\n get index(): number {\n return this._i;\n }\n set index(v: number) {\n this.goTo(v);\n }\n get effect(): string {\n const e = this.str('effect', 'slide');\n return (CAROUSEL_EFFECTS as readonly string[]).includes(e) ? e : 'slide';\n }\n\n mount(): void {\n this.dataset.effect = this.effect; // (not the observed attribute: no re-mount loop)\n this.toggleAttribute('data-reduced', this.reduced);\n const old = this.querySelector<HTMLElement>(':scope > .usa-carousel-viewport');\n this._slides = old ? ownChildren(old.firstElementChild as HTMLElement) : ownChildren(this);\n dropParts(this);\n const vp = part('div', 'usa-carousel-viewport', { 'aria-live': this.num('autoplay', 0) ? 'off' : 'polite' });\n const track = part('div', 'usa-carousel-track');\n this._track = track;\n vp.append(track);\n const n = this._slides.length;\n this._slides.forEach((s, i) => {\n s.setAttribute('role', 'group');\n s.setAttribute('aria-roledescription', 'slide');\n s.setAttribute('aria-label', `${i + 1} of ${n}`);\n track.append(s);\n });\n this.prepend(vp);\n this.setAttribute('role', 'region');\n this.setAttribute('aria-roledescription', 'carousel');\n this.setAttribute('aria-label', this.str('label', 'Carousel'));\n if (!this.hasAttribute('tabindex')) this.tabIndex = 0;\n if (n > 1 && !this.flag('no-controls')) {\n const prev = part('button', 'usa-carousel-nav usa-carousel-prev', { type: 'button', 'aria-label': 'Previous slide' }, '‹');\n const next = part('button', 'usa-carousel-nav usa-carousel-next', { type: 'button', 'aria-label': 'Next slide' }, '›');\n this.listen(prev, 'click', () => this.prev());\n this.listen(next, 'click', () => this.next());\n this.append(prev, next);\n }\n this._dots = [];\n if (n > 1 && !this.flag('no-dots')) {\n const dots = part('div', 'usa-carousel-dots', { role: 'group', 'aria-label': 'Choose slide' });\n for (let i = 0; i < n; i++) {\n const d = part('button', 'usa-carousel-dot', { type: 'button', 'aria-label': `Slide ${i + 1}` });\n this.listen(d, 'click', () => this.goTo(i));\n this._dots.push(d);\n dots.append(d);\n }\n this.append(dots);\n }\n this._i = clampN(Math.round(this.num('index', 0)), 0, Math.max(0, n - 1));\n this.layout(0);\n this.listen(this, 'keydown', (e: KeyboardEvent) => {\n if (e.key === 'ArrowRight') (e.preventDefault(), this.next());\n else if (e.key === 'ArrowLeft') (e.preventDefault(), this.prev());\n });\n this.drag(vp);\n const ms = this.num('autoplay', 0);\n if (ms > 0 && n > 1 && !this.reduced) {\n let visible = true;\n this.inView((v) => (visible = v));\n const pause = (on: boolean) => () => (this._hold = on);\n this.listen(this, 'pointerenter', pause(true));\n this.listen(this, 'pointerleave', pause(false));\n this.listen(this, 'focusin', pause(true));\n this.listen(this, 'focusout', pause(false));\n this._timer = window.setInterval(() => {\n if (visible && !this._hold && !document.hidden) this.next();\n }, Math.max(1200, ms));\n this.onCleanup(() => clearInterval(this._timer));\n }\n }\n\n private drag(vp: HTMLElement): void {\n let x0 = 0;\n let dx = 0;\n let id = -1;\n this.listen(vp, 'pointerdown', (e: PointerEvent) => {\n if (this.length < 2 || (e.target as Element).closest('button,a,input')) return;\n id = e.pointerId;\n x0 = e.clientX;\n dx = 0;\n this.setAttribute('data-dragging', '');\n });\n this.listen(window, 'pointermove', (e: PointerEvent) => {\n if (e.pointerId !== id) return;\n dx = e.clientX - x0;\n this.layout(dx / Math.max(1, vp.clientWidth));\n });\n const end = (e: PointerEvent) => {\n if (e.pointerId !== id) return;\n id = -1;\n this.removeAttribute('data-dragging');\n const w = Math.max(1, vp.clientWidth);\n if (Math.abs(dx) > w * 0.18) dx < 0 ? this.next() : this.prev();\n else this.layout(0);\n };\n this.listen(window, 'pointerup', end);\n this.listen(window, 'pointercancel', end);\n }\n\n /** Position the slides (`drag` = fraction of a slide the pointer moved). */\n private layout(drag: number): void {\n const n = this.length;\n const i = this._i;\n const fx = this.effect;\n if (this._track) this._track.style.transform = fx === 'slide' ? `translateX(${(-i + drag) * 100}%)` : '';\n this._slides.forEach((s, k) => {\n let off = k - i + drag;\n if (this.flag('loop') && n > 2) {\n if (off > n / 2) off -= n;\n if (off < -n / 2) off += n;\n }\n const active = k === i;\n s.toggleAttribute('data-active', active);\n s.setAttribute('aria-hidden', String(!active));\n s.inert = !active;\n if (fx === 'slide') {\n s.style.transform = s.style.opacity = s.style.zIndex = s.style.filter = '';\n return;\n }\n const a = Math.abs(off);\n if (fx === 'fade') {\n s.style.opacity = String(clampN(1 - a, 0, 1));\n s.style.transform = '';\n } else if (fx === 'scale') {\n s.style.opacity = String(clampN(1 - a, 0, 1));\n s.style.transform = `scale(${1 + Math.min(1, a) * (off < 0 ? 0.12 : -0.12)})`;\n } else {\n s.style.opacity = a > 2.2 ? '0' : String(1 - Math.min(a, 2) * 0.28);\n s.style.transform = `translateX(${off * 58}%) translateZ(${-a * 140}px) rotateY(${clampN(-off * 38, -60, 60)}deg)`;\n s.style.filter = a > 0.5 ? `brightness(${1 - Math.min(a, 2) * 0.18})` : '';\n }\n s.style.zIndex = String(100 - Math.round(a * 10));\n });\n this._dots.forEach((d, k) => d.setAttribute('aria-current', String(k === i)));\n }\n\n goTo(to: number): void {\n const n = this.length;\n if (!n) return;\n const t = this.flag('loop') ? ((Math.round(to) % n) + n) % n : clampN(Math.round(to), 0, n - 1);\n const from = this._i;\n this._i = t;\n this.layout(0);\n if (t !== from) this.emit('change', { index: t, from });\n }\n next(): void {\n this.goTo(this._i + 1 >= this.length && !this.flag('loop') ? 0 : this._i + 1);\n }\n prev(): void {\n this.goTo(this._i - 1 < 0 && !this.flag('loop') ? this.length - 1 : this._i - 1);\n }\n }\n return UsaCarousel as unknown as CustomElementConstructor;\n },\n { id: 'carousel', text: css }\n );\n}\n","import { defineElement, type UsaElement } from '../base';\nimport { ownChildren, part, nextId, arrowIndex } from './shared';\nimport css from './tab-bar.css?raw';\n\n/**\n * `<usa-tab-bar>` (6.2) — tabs with an animated indicator that stretches\n * from the old tab to the new one (leading edge first, then the trailing edge\n * catches up). Children: `<button>` tabs, and optional panels marked\n * `data-panel` (in the same order). Attributes: `indicator` (`pill` ·\n * `underline` · `glow` · `gooey`), `selected` (index), `label`. Arrow keys,\n * Home/End. API: `select(i)`, `selected`. Events: `usa:change` (`{ index, from }`).\n * Panels slide in from the side of travel. Reduced motion: no stretch / slide.\n */\nexport interface UsaTabBarElement extends UsaElement {\n selected: number;\n select(i: number): void;\n}\n\nexport const TAB_INDICATORS = ['pill', 'underline', 'glow', 'gooey'] as const;\n\nexport function defineTabBar(tag = 'usa-tab-bar'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) => {\n class UsaTabBar extends Base {\n static get observedAttributes(): string[] {\n return ['indicator'];\n }\n private _tabs: HTMLElement[] = [];\n private _panels: HTMLElement[] = [];\n private _ink: HTMLElement | null = null;\n private _i = 0;\n\n get selected(): number {\n return this._i;\n }\n set selected(v: number) {\n this.select(v);\n }\n\n mount(): void {\n const ind = this.str('indicator', 'pill');\n this.dataset.indicator = (TAB_INDICATORS as readonly string[]).includes(ind) ? ind : 'pill';\n let list = this.querySelector<HTMLElement>(':scope > .usa-tab-bar-list');\n if (!list) {\n list = part('div', 'usa-tab-bar-list');\n this.prepend(list);\n }\n list.setAttribute('role', 'tablist');\n list.setAttribute('aria-label', this.str('label', 'Tabs'));\n const kids = ownChildren(this);\n this._panels = kids.filter((k) => k.hasAttribute('data-panel'));\n for (const k of kids) if (!k.hasAttribute('data-panel') && k.matches('button,[data-tab]')) list.append(k);\n this._tabs = Array.from(list.children).filter((c): c is HTMLElement => c instanceof HTMLElement && !c.classList.contains('usa-tab-bar-ink'));\n this._ink = list.querySelector('.usa-tab-bar-ink') || part('span', 'usa-tab-bar-ink', { 'aria-hidden': 'true' });\n list.prepend(this._ink);\n this._tabs.forEach((t, i) => {\n t.setAttribute('role', 'tab');\n if (t.localName === 'button' && !t.hasAttribute('type')) t.setAttribute('type', 'button');\n t.id ||= nextId('usa-tab');\n const p = this._panels[i];\n if (p) {\n p.id ||= nextId('usa-tabpanel');\n p.classList.add('usa-tab-bar-panel');\n p.setAttribute('role', 'tabpanel');\n p.setAttribute('aria-labelledby', t.id);\n p.tabIndex = 0;\n t.setAttribute('aria-controls', p.id);\n }\n this.listen(t, 'click', () => this.select(i));\n });\n this.listen(list, 'keydown', (e: KeyboardEvent) => {\n const n = arrowIndex(e, this._i, this._tabs.length);\n if (n < 0) return;\n e.preventDefault();\n this.select(n);\n this._tabs[n].focus();\n });\n this._i = Math.min(Math.max(0, Math.round(this.num('selected', 0))), Math.max(0, this._tabs.length - 1));\n this.sync(-1);\n if (typeof ResizeObserver === 'function') {\n const ro = new ResizeObserver(() => this.place());\n ro.observe(list);\n this.onCleanup(() => ro.disconnect());\n }\n }\n\n private rect(i: number): [number, number] {\n const t = this._tabs[i];\n return t ? [t.offsetLeft, t.offsetWidth] : [0, 0];\n }\n private place(): void {\n if (!this._ink) return;\n const [x, w] = this.rect(this._i);\n this._ink.style.transform = `translateX(${x}px)`;\n this._ink.style.width = `${w}px`;\n }\n\n private sync(from: number): void {\n this._tabs.forEach((t, k) => {\n t.setAttribute('aria-selected', String(k === this._i));\n t.tabIndex = k === this._i ? 0 : -1;\n });\n this._panels.forEach((p, k) => (p.hidden = k !== this._i));\n this.place();\n if (from < 0 || from === this._i || !this._ink || this.reduced) return;\n // stretchy travel: the leading edge arrives first, the trailing edge follows\n const [x0, w0] = this.rect(from);\n const [x1, w1] = this.rect(this._i);\n const right = x1 > x0;\n const mid = right ? { transform: `translateX(${x0}px)`, width: `${x1 + w1 - x0}px` } : { transform: `translateX(${x1}px)`, width: `${x0 + w0 - x1}px` };\n this.motion(this._ink, [{ transform: `translateX(${x0}px)`, width: `${w0}px` }, { ...mid, offset: 0.45 }, { transform: `translateX(${x1}px)`, width: `${w1}px` }], { duration: 480, easing: 'cubic-bezier(.22,1,.36,1)' });\n const p = this._panels[this._i];\n if (p) this.motion(p, [{ opacity: 0, transform: `translateX(${right ? 24 : -24}px)` }, { opacity: 1, transform: 'none' }], { duration: 320, easing: 'cubic-bezier(.22,1,.36,1)' });\n }\n\n select(i: number): void {\n const n = Math.min(Math.max(0, Math.round(i)), this._tabs.length - 1);\n if (n === this._i || n < 0) return;\n const from = this._i;\n this._i = n;\n this.sync(from);\n this.emit('change', { index: n, from });\n }\n }\n return UsaTabBar as unknown as CustomElementConstructor;\n },\n { id: 'tab-bar', text: css }\n );\n}\n","import { defineElement, type UsaElement } from '../base';\nimport { springEasing } from '../physics/spring';\nimport css from './disclosure.css?raw';\n\n/**\n * `<usa-disclosure>` (6.2) — accordion 2.0 on native `<details>`: the\n * content springs open / closed (height + fade), the chevron flips with an\n * overshoot. Children: `<details><summary>…</summary>…</details>`.\n * Attributes: `multiple` (allow several open; default: one at a time),\n * `spring` (preset, default `gentle`), `variant=\"cards\"`. API: `openAll()`,\n * `closeAll()`, `toggle(i, force?)`. Events: `usa:toggle` (`{ index, open }`).\n * Native semantics (keyboard, find-in-page) kept. Reduced motion: instant.\n */\nexport interface UsaDisclosureElement extends UsaElement {\n toggle(i: number, force?: boolean): void;\n openAll(): void;\n closeAll(): void;\n}\n\nexport function defineDisclosure(tag = 'usa-disclosure'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) => {\n class UsaDisclosure extends Base {\n private _anims = new WeakMap<HTMLDetailsElement, Animation>();\n get items(): HTMLDetailsElement[] {\n return Array.from(this.children).filter((c): c is HTMLDetailsElement => c.localName === 'details');\n }\n mount(): void {\n this.listen(this, 'click', (e: MouseEvent) => {\n const s = (e.target as Element).closest('summary');\n const d = s?.parentElement as HTMLDetailsElement | null;\n if (!s || !d || d.parentElement !== this) return;\n e.preventDefault();\n this.set(d, !d.open);\n });\n }\n private set(d: HTMLDetailsElement, open: boolean): void {\n if (open && !this.flag('multiple')) for (const o of this.items) if (o !== d && o.open) this.set(o, false);\n if (d.open === open && !this._anims.get(d)) return;\n const summary = d.querySelector('summary');\n const closedH = summary ? summary.offsetHeight : 0;\n const startH = d.offsetHeight;\n this._anims.get(d)?.cancel();\n if (open) d.open = true;\n const endH = open ? d.scrollHeight : closedH;\n const sp = springEasing(this.str('spring', 'gentle'));\n const a = this.reduced ? null : this.motion(d, [{ height: `${startH}px` }, { height: `${endH}px` }], { duration: Math.min(sp.duration, 700), easing: sp.easing, fill: 'forwards' });\n const body = Array.from(d.children).filter((c) => c.localName !== 'summary');\n if (open && !this.reduced) body.forEach((b) => this.motion(b, [{ opacity: 0, transform: 'translateY(-6px)' }, { opacity: 1, transform: 'none' }], { duration: 300, delay: 60, easing: 'ease-out' }));\n const done = () => {\n this._anims.delete(d);\n if (!open) d.open = false;\n a?.cancel();\n };\n if (a) {\n this._anims.set(d, a);\n a.finished.then(() => this._anims.get(d) === a && done(), () => undefined);\n } else done();\n this.emit('toggle', { index: this.items.indexOf(d), open });\n }\n toggle(i: number, force?: boolean): void {\n const d = this.items[i];\n if (d) this.set(d, force ?? !d.open);\n }\n openAll(): void {\n this.items.forEach((d) => (d.open = true));\n }\n closeAll(): void {\n this.items.forEach((d) => this.set(d, false));\n }\n }\n return UsaDisclosure as unknown as CustomElementConstructor;\n },\n { id: 'disclosure', text: css }\n );\n}\n","import { defineElement, type UsaElement } from '../base';\nimport { ownChildren, part, dropParts } from './shared';\nimport css from './stories.css?raw';\n\n/**\n * `<usa-stories>` (6.2) — story viewer: segmented progress bars at the top,\n * auto-advance, tap the left / right third to go back / forward, press and\n * hold to pause, a pause button (WCAG 2.2.2). Each child is one story.\n * Attributes: `duration` (ms per story, 5000), `loop`, `paused`.\n * API: `next()`, `prev()`, `goTo(i)`, `pause()`, `play()`, `index`.\n * Events: `usa:change` (`{ index }`), `usa:end`. Reduced motion: no\n * auto-advance (paused until the user navigates), cross-fade only.\n */\nexport interface UsaStoriesElement extends UsaElement {\n readonly index: number;\n next(): void;\n prev(): void;\n goTo(i: number): void;\n pause(): void;\n play(): void;\n}\n\nexport function defineStories(tag = 'usa-stories'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) => {\n class UsaStories extends Base {\n static get observedAttributes(): string[] {\n return ['duration', 'loop'];\n }\n private _i = 0;\n private _items: HTMLElement[] = [];\n private _bars: HTMLElement[] = [];\n private _fill: Animation | null = null;\n private _btn: HTMLButtonElement | null = null;\n get index(): number {\n return this._i;\n }\n mount(): void {\n dropParts(this);\n this._items = ownChildren(this);\n const bars = part('div', 'usa-stories-bars', { 'aria-hidden': 'true' });\n this._bars = this._items.map(() => {\n const b = part('div', 'usa-stories-bar', {}, '<i></i>');\n bars.append(b);\n return b;\n });\n this._btn = part('button', 'usa-stories-toggle', { type: 'button' });\n this.listen(this._btn, 'click', (e: Event) => {\n e.stopPropagation();\n this.hasAttribute('paused') ? this.play() : this.pause();\n });\n this.append(bars, this._btn);\n this.setAttribute('role', 'region');\n this.setAttribute('aria-roledescription', 'stories');\n if (!this.hasAttribute('aria-label')) this.setAttribute('aria-label', 'Stories');\n if (!this.hasAttribute('tabindex')) this.tabIndex = 0;\n if (this.reduced) this.setAttribute('paused', '');\n let held = false;\n let downAt = 0;\n this.listen(this, 'pointerdown', (e: PointerEvent) => {\n if ((e.target as Element).closest('button,a')) return;\n downAt = performance.now();\n held = !this.hasAttribute('paused');\n if (held) this._fill?.pause();\n });\n this.listen(this, 'pointerup', (e: PointerEvent) => {\n if ((e.target as Element).closest('button,a') || !downAt) return;\n const long = performance.now() - downAt > 350;\n downAt = 0;\n if (held && !this.hasAttribute('paused')) this._fill?.play();\n if (long) return;\n const r = this.getBoundingClientRect();\n e.clientX - r.left < r.width / 3 ? this.prev() : this.next();\n });\n this.listen(this, 'keydown', (e: KeyboardEvent) => {\n if (e.key === 'ArrowRight') this.next();\n else if (e.key === 'ArrowLeft') this.prev();\n else if (e.key === ' ') (e.preventDefault(), this.hasAttribute('paused') ? this.play() : this.pause());\n });\n this.onCleanup(() => this._fill?.cancel());\n this.goTo(Math.min(this._i, Math.max(0, this._items.length - 1)), true);\n }\n private label(): void {\n if (this._btn) {\n const p = this.hasAttribute('paused');\n this._btn.textContent = p ? '▶' : '❚❚';\n this._btn.setAttribute('aria-label', p ? 'Play stories' : 'Pause stories');\n }\n }\n goTo(i: number, initial = false): void {\n const n = this._items.length;\n if (!n) return;\n if (i >= n && !this.flag('loop')) {\n this.emit('end');\n this.pause();\n return;\n }\n const t = ((i % n) + n) % n;\n const changed = t !== this._i || initial;\n this._i = t;\n this._items.forEach((s, k) => {\n s.toggleAttribute('data-active', k === t);\n s.setAttribute('aria-hidden', String(k !== t));\n });\n this._bars.forEach((b, k) => b.toggleAttribute('data-done', k < t));\n this._fill?.cancel();\n const fillEl = this._bars[t]?.firstElementChild as HTMLElement | undefined;\n this._fill = fillEl ? fillEl.animate?.([{ transform: 'scaleX(0)' }, { transform: 'scaleX(1)' }], { duration: Math.max(800, this.num('duration', 5000)), fill: 'forwards' }) ?? null : null;\n if (this._fill) {\n const a = this._fill;\n a.onfinish = () => this._fill === a && this.goTo(this._i + 1);\n if (this.hasAttribute('paused')) a.pause();\n }\n this.label();\n if (changed && !initial) this.emit('change', { index: t });\n }\n next(): void {\n this.goTo(this._i + 1);\n }\n prev(): void {\n this.goTo(Math.max(0, this._i - 1));\n }\n pause(): void {\n this.setAttribute('paused', '');\n this._fill?.pause();\n this.label();\n }\n play(): void {\n this.removeAttribute('paused');\n if (this._fill?.playState === 'finished') this.goTo(this._i + 1 >= this._items.length ? 0 : this._i + 1);\n else this._fill?.play();\n this.label();\n }\n }\n return UsaStories as unknown as CustomElementConstructor;\n },\n { id: 'stories', text: css }\n );\n}\n","/**\n * motionary/components/widgets — the 6.x animated UI widgets, in their own\n * entry so `motionary/components` and `components/lite` keep their size\n * budgets. Every widget is reduced-motion safe and keyboard accessible.\n *\n * ```ts\n * import { defineWidgets } from 'motionary/components/widgets';\n * defineWidgets(); // or defineCarousel(), defineTabBar(), …\n * ```\n * No build step: `<script src=\"https://unpkg.com/motionary@6/dist/widgets.umd.js\">`\n * (registers every widget and every 6.x effect pack; `window.UsaWidgets`).\n */\nimport { defineCarousel, CAROUSEL_EFFECTS, type UsaCarouselElement } from './carousel';\nimport { defineTabBar, TAB_INDICATORS, type UsaTabBarElement } from './tab-bar';\nimport { defineDisclosure, type UsaDisclosureElement } from './disclosure';\nimport { defineStories, type UsaStoriesElement } from './stories';\n\nexport { defineCarousel, defineTabBar, defineDisclosure, defineStories, CAROUSEL_EFFECTS, TAB_INDICATORS };\nexport type { UsaCarouselElement, UsaTabBarElement, UsaDisclosureElement, UsaStoriesElement };\n\n/** The widgets by release (tag → define function). */\nexport const WIDGETS: Record<string, Record<string, (tag?: string) => CustomElementConstructor | undefined>> = {\n '6.2': { 'usa-carousel': defineCarousel, 'usa-tab-bar': defineTabBar, 'usa-disclosure': defineDisclosure, 'usa-stories': defineStories },\n};\n\n/** Every widget tag, in release order. */\nexport const WIDGET_TAGS: string[] = Object.values(WIDGETS).flatMap((g) => Object.keys(g));\n\n/** Register every widget (or only those of one release, e.g. `'6.2'`) under its default tag. */\nexport function defineWidgets(release?: string): void {\n for (const [v, group] of Object.entries(WIDGETS)) if (!release || release === v) for (const [tag, fn] of Object.entries(group)) fn(tag);\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'usa-carousel': UsaCarouselElement;\n 'usa-tab-bar': UsaTabBarElement;\n 'usa-disclosure': UsaDisclosureElement;\n 'usa-stories': UsaStoriesElement;\n }\n}\n"],"names":["css"],"mappings":"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"}
1
+ {"version":3,"file":"widgets.js","sources":["../../src/components/widgets/shared.ts","../../src/components/widgets/carousel.ts","../../src/components/widgets/tab-bar.ts","../../src/components/widgets/disclosure.ts","../../src/components/widgets/stories.ts","../../src/components/widgets/overlay.ts","../../src/components/widgets/toast.ts","../../src/components/widgets/menu.ts","../../src/components/widgets/meters.ts","../../src/components/widgets/skeleton-reveal.ts","../../src/components/widgets/star-rating.ts","../../src/components/widgets/index.ts"],"sourcesContent":["/** Helpers shared by the 6.x widgets (`motionary/components/widgets`). */\nexport const clampN = (v: number, a: number, b: number): number => Math.min(b, Math.max(a, v));\n\n/** Children of `el` that are elements and not created by the widget itself. */\nexport const ownChildren = (el: Element, skip = '[data-usa-part]'): HTMLElement[] =>\n Array.from(el.children).filter((c): c is HTMLElement => c instanceof HTMLElement && !c.matches(skip));\n\n/** Create a part element (marked so re-mounts can find / skip it). */\nexport function part<K extends keyof HTMLElementTagNameMap>(tag: K, cls: string, attrs: Record<string, string> = {}, html = ''): HTMLElementTagNameMap[K] {\n const n = document.createElement(tag);\n n.className = cls;\n n.setAttribute('data-usa-part', '');\n for (const [k, v] of Object.entries(attrs)) n.setAttribute(k, v);\n if (html) n.innerHTML = html;\n return n;\n}\n\n/** Remove the parts a previous mount created. */\nexport const dropParts = (el: Element): void => el.querySelectorAll(':scope > [data-usa-part]').forEach((n) => n.remove());\n\nlet uid = 0;\n/** A document-unique id with a prefix. */\nexport const nextId = (p: string): string => `${p}-${++uid}`;\n\n/** Roving arrow-key focus over `items` (horizontal or vertical); returns the new index or -1. */\nexport function arrowIndex(e: KeyboardEvent, i: number, n: number, vertical = false): number {\n const prev = vertical ? 'ArrowUp' : 'ArrowLeft';\n const next = vertical ? 'ArrowDown' : 'ArrowRight';\n if (e.key === prev) return (i - 1 + n) % n;\n if (e.key === next) return (i + 1) % n;\n if (e.key === 'Home') return 0;\n if (e.key === 'End') return n - 1;\n return -1;\n}\n","import { defineElement, type UsaElement } from '../base';\nimport { clampN, ownChildren, part, dropParts } from './shared';\nimport css from './carousel.css?raw';\n\n/**\n * `<usa-carousel>` (6.2) — swipeable carousel / slider. Each child is a slide.\n * Attributes: `effect` (`slide` · `fade` · `scale` · `cards` — 3D coverflow),\n * `autoplay` (ms; pauses on hover, focus, when off screen and under reduced\n * motion), `loop`, `index`, `label` (\"Carousel\"), `no-controls`, `no-dots`.\n * Drag / swipe with a pointer, arrow keys when focused. API: `next()`,\n * `prev()`, `goTo(i)`, `index`, `length`. Events: `usa:change` (`{ index, from }`).\n * Reduced motion: slides switch without movement.\n */\nexport interface UsaCarouselElement extends UsaElement {\n index: number;\n readonly length: number;\n next(): void;\n prev(): void;\n goTo(i: number): void;\n}\n\nexport const CAROUSEL_EFFECTS = ['slide', 'fade', 'scale', 'cards'] as const;\n\nexport function defineCarousel(tag = 'usa-carousel'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) => {\n class UsaCarousel extends Base {\n static get observedAttributes(): string[] {\n return ['effect', 'autoplay', 'loop', 'no-controls', 'no-dots'];\n }\n private _i = 0;\n private _slides: HTMLElement[] = [];\n private _track: HTMLElement | null = null;\n private _timer = 0;\n private _hold = false;\n private _dots: HTMLButtonElement[] = [];\n\n get length(): number {\n return this._slides.length;\n }\n get index(): number {\n return this._i;\n }\n set index(v: number) {\n this.goTo(v);\n }\n get effect(): string {\n const e = this.str('effect', 'slide');\n return (CAROUSEL_EFFECTS as readonly string[]).includes(e) ? e : 'slide';\n }\n\n mount(): void {\n this.dataset.effect = this.effect; // (not the observed attribute: no re-mount loop)\n this.toggleAttribute('data-reduced', this.reduced);\n const old = this.querySelector<HTMLElement>(':scope > .usa-carousel-viewport');\n this._slides = old ? ownChildren(old.firstElementChild as HTMLElement) : ownChildren(this);\n dropParts(this);\n const vp = part('div', 'usa-carousel-viewport', { 'aria-live': this.num('autoplay', 0) ? 'off' : 'polite' });\n const track = part('div', 'usa-carousel-track');\n this._track = track;\n vp.append(track);\n const n = this._slides.length;\n this._slides.forEach((s, i) => {\n s.setAttribute('role', 'group');\n s.setAttribute('aria-roledescription', 'slide');\n s.setAttribute('aria-label', `${i + 1} of ${n}`);\n track.append(s);\n });\n this.prepend(vp);\n this.setAttribute('role', 'region');\n this.setAttribute('aria-roledescription', 'carousel');\n this.setAttribute('aria-label', this.str('label', 'Carousel'));\n if (!this.hasAttribute('tabindex')) this.tabIndex = 0;\n if (n > 1 && !this.flag('no-controls')) {\n const prev = part('button', 'usa-carousel-nav usa-carousel-prev', { type: 'button', 'aria-label': 'Previous slide' }, '‹');\n const next = part('button', 'usa-carousel-nav usa-carousel-next', { type: 'button', 'aria-label': 'Next slide' }, '›');\n this.listen(prev, 'click', () => this.prev());\n this.listen(next, 'click', () => this.next());\n this.append(prev, next);\n }\n this._dots = [];\n if (n > 1 && !this.flag('no-dots')) {\n const dots = part('div', 'usa-carousel-dots', { role: 'group', 'aria-label': 'Choose slide' });\n for (let i = 0; i < n; i++) {\n const d = part('button', 'usa-carousel-dot', { type: 'button', 'aria-label': `Slide ${i + 1}` });\n this.listen(d, 'click', () => this.goTo(i));\n this._dots.push(d);\n dots.append(d);\n }\n this.append(dots);\n }\n this._i = clampN(Math.round(this.num('index', 0)), 0, Math.max(0, n - 1));\n this.layout(0);\n this.listen(this, 'keydown', (e: KeyboardEvent) => {\n if (e.key === 'ArrowRight') (e.preventDefault(), this.next());\n else if (e.key === 'ArrowLeft') (e.preventDefault(), this.prev());\n });\n this.drag(vp);\n const ms = this.num('autoplay', 0);\n if (ms > 0 && n > 1 && !this.reduced) {\n let visible = true;\n this.inView((v) => (visible = v));\n const pause = (on: boolean) => () => (this._hold = on);\n this.listen(this, 'pointerenter', pause(true));\n this.listen(this, 'pointerleave', pause(false));\n this.listen(this, 'focusin', pause(true));\n this.listen(this, 'focusout', pause(false));\n this._timer = window.setInterval(() => {\n if (visible && !this._hold && !document.hidden) this.next();\n }, Math.max(1200, ms));\n this.onCleanup(() => clearInterval(this._timer));\n }\n }\n\n private drag(vp: HTMLElement): void {\n let x0 = 0;\n let dx = 0;\n let id = -1;\n this.listen(vp, 'pointerdown', (e: PointerEvent) => {\n if (this.length < 2 || (e.target as Element).closest('button,a,input')) return;\n id = e.pointerId;\n x0 = e.clientX;\n dx = 0;\n this.setAttribute('data-dragging', '');\n });\n this.listen(window, 'pointermove', (e: PointerEvent) => {\n if (e.pointerId !== id) return;\n dx = e.clientX - x0;\n this.layout(dx / Math.max(1, vp.clientWidth));\n });\n const end = (e: PointerEvent) => {\n if (e.pointerId !== id) return;\n id = -1;\n this.removeAttribute('data-dragging');\n const w = Math.max(1, vp.clientWidth);\n if (Math.abs(dx) > w * 0.18) dx < 0 ? this.next() : this.prev();\n else this.layout(0);\n };\n this.listen(window, 'pointerup', end);\n this.listen(window, 'pointercancel', end);\n }\n\n /** Position the slides (`drag` = fraction of a slide the pointer moved). */\n private layout(drag: number): void {\n const n = this.length;\n const i = this._i;\n const fx = this.effect;\n if (this._track) this._track.style.transform = fx === 'slide' ? `translateX(${(-i + drag) * 100}%)` : '';\n this._slides.forEach((s, k) => {\n let off = k - i + drag;\n if (this.flag('loop') && n > 2) {\n if (off > n / 2) off -= n;\n if (off < -n / 2) off += n;\n }\n const active = k === i;\n s.toggleAttribute('data-active', active);\n s.setAttribute('aria-hidden', String(!active));\n s.inert = !active;\n if (fx === 'slide') {\n s.style.transform = s.style.opacity = s.style.zIndex = s.style.filter = '';\n return;\n }\n const a = Math.abs(off);\n if (fx === 'fade') {\n s.style.opacity = String(clampN(1 - a, 0, 1));\n s.style.transform = '';\n } else if (fx === 'scale') {\n s.style.opacity = String(clampN(1 - a, 0, 1));\n s.style.transform = `scale(${1 + Math.min(1, a) * (off < 0 ? 0.12 : -0.12)})`;\n } else {\n s.style.opacity = a > 2.2 ? '0' : String(1 - Math.min(a, 2) * 0.28);\n s.style.transform = `translateX(${off * 58}%) translateZ(${-a * 140}px) rotateY(${clampN(-off * 38, -60, 60)}deg)`;\n s.style.filter = a > 0.5 ? `brightness(${1 - Math.min(a, 2) * 0.18})` : '';\n }\n s.style.zIndex = String(100 - Math.round(a * 10));\n });\n this._dots.forEach((d, k) => d.setAttribute('aria-current', String(k === i)));\n }\n\n goTo(to: number): void {\n const n = this.length;\n if (!n) return;\n const t = this.flag('loop') ? ((Math.round(to) % n) + n) % n : clampN(Math.round(to), 0, n - 1);\n const from = this._i;\n this._i = t;\n this.layout(0);\n if (t !== from) this.emit('change', { index: t, from });\n }\n next(): void {\n this.goTo(this._i + 1 >= this.length && !this.flag('loop') ? 0 : this._i + 1);\n }\n prev(): void {\n this.goTo(this._i - 1 < 0 && !this.flag('loop') ? this.length - 1 : this._i - 1);\n }\n }\n return UsaCarousel as unknown as CustomElementConstructor;\n },\n { id: 'carousel', text: css }\n );\n}\n","import { defineElement, type UsaElement } from '../base';\nimport { ownChildren, part, nextId, arrowIndex } from './shared';\nimport css from './tab-bar.css?raw';\n\n/**\n * `<usa-tab-bar>` (6.2) — tabs with an animated indicator that stretches\n * from the old tab to the new one (leading edge first, then the trailing edge\n * catches up). Children: `<button>` tabs, and optional panels marked\n * `data-panel` (in the same order). Attributes: `indicator` (`pill` ·\n * `underline` · `glow` · `gooey`), `selected` (index), `label`. Arrow keys,\n * Home/End. API: `select(i)`, `selected`. Events: `usa:change` (`{ index, from }`).\n * Panels slide in from the side of travel. Reduced motion: no stretch / slide.\n */\nexport interface UsaTabBarElement extends UsaElement {\n selected: number;\n select(i: number): void;\n}\n\nexport const TAB_INDICATORS = ['pill', 'underline', 'glow', 'gooey'] as const;\n\nexport function defineTabBar(tag = 'usa-tab-bar'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) => {\n class UsaTabBar extends Base {\n static get observedAttributes(): string[] {\n return ['indicator'];\n }\n private _tabs: HTMLElement[] = [];\n private _panels: HTMLElement[] = [];\n private _ink: HTMLElement | null = null;\n private _i = 0;\n\n get selected(): number {\n return this._i;\n }\n set selected(v: number) {\n this.select(v);\n }\n\n mount(): void {\n const ind = this.str('indicator', 'pill');\n this.dataset.indicator = (TAB_INDICATORS as readonly string[]).includes(ind) ? ind : 'pill';\n let list = this.querySelector<HTMLElement>(':scope > .usa-tab-bar-list');\n if (!list) {\n list = part('div', 'usa-tab-bar-list');\n this.prepend(list);\n }\n list.setAttribute('role', 'tablist');\n list.setAttribute('aria-label', this.str('label', 'Tabs'));\n const kids = ownChildren(this);\n this._panels = kids.filter((k) => k.hasAttribute('data-panel'));\n for (const k of kids) if (!k.hasAttribute('data-panel') && k.matches('button,[data-tab]')) list.append(k);\n this._tabs = Array.from(list.children).filter((c): c is HTMLElement => c instanceof HTMLElement && !c.classList.contains('usa-tab-bar-ink'));\n this._ink = list.querySelector('.usa-tab-bar-ink') || part('span', 'usa-tab-bar-ink', { 'aria-hidden': 'true' });\n list.prepend(this._ink);\n this._tabs.forEach((t, i) => {\n t.setAttribute('role', 'tab');\n if (t.localName === 'button' && !t.hasAttribute('type')) t.setAttribute('type', 'button');\n t.id ||= nextId('usa-tab');\n const p = this._panels[i];\n if (p) {\n p.id ||= nextId('usa-tabpanel');\n p.classList.add('usa-tab-bar-panel');\n p.setAttribute('role', 'tabpanel');\n p.setAttribute('aria-labelledby', t.id);\n p.tabIndex = 0;\n t.setAttribute('aria-controls', p.id);\n }\n this.listen(t, 'click', () => this.select(i));\n });\n this.listen(list, 'keydown', (e: KeyboardEvent) => {\n const n = arrowIndex(e, this._i, this._tabs.length);\n if (n < 0) return;\n e.preventDefault();\n this.select(n);\n this._tabs[n].focus();\n });\n this._i = Math.min(Math.max(0, Math.round(this.num('selected', 0))), Math.max(0, this._tabs.length - 1));\n this.sync(-1);\n if (typeof ResizeObserver === 'function') {\n const ro = new ResizeObserver(() => this.place());\n ro.observe(list);\n this.onCleanup(() => ro.disconnect());\n }\n }\n\n private rect(i: number): [number, number] {\n const t = this._tabs[i];\n return t ? [t.offsetLeft, t.offsetWidth] : [0, 0];\n }\n private place(): void {\n if (!this._ink) return;\n const [x, w] = this.rect(this._i);\n this._ink.style.transform = `translateX(${x}px)`;\n this._ink.style.width = `${w}px`;\n }\n\n private sync(from: number): void {\n this._tabs.forEach((t, k) => {\n t.setAttribute('aria-selected', String(k === this._i));\n t.tabIndex = k === this._i ? 0 : -1;\n });\n this._panels.forEach((p, k) => (p.hidden = k !== this._i));\n this.place();\n if (from < 0 || from === this._i || !this._ink || this.reduced) return;\n // stretchy travel: the leading edge arrives first, the trailing edge follows\n const [x0, w0] = this.rect(from);\n const [x1, w1] = this.rect(this._i);\n const right = x1 > x0;\n const mid = right ? { transform: `translateX(${x0}px)`, width: `${x1 + w1 - x0}px` } : { transform: `translateX(${x1}px)`, width: `${x0 + w0 - x1}px` };\n this.motion(this._ink, [{ transform: `translateX(${x0}px)`, width: `${w0}px` }, { ...mid, offset: 0.45 }, { transform: `translateX(${x1}px)`, width: `${w1}px` }], { duration: 480, easing: 'cubic-bezier(.22,1,.36,1)' });\n const p = this._panels[this._i];\n if (p) this.motion(p, [{ opacity: 0, transform: `translateX(${right ? 24 : -24}px)` }, { opacity: 1, transform: 'none' }], { duration: 320, easing: 'cubic-bezier(.22,1,.36,1)' });\n }\n\n select(i: number): void {\n const n = Math.min(Math.max(0, Math.round(i)), this._tabs.length - 1);\n if (n === this._i || n < 0) return;\n const from = this._i;\n this._i = n;\n this.sync(from);\n this.emit('change', { index: n, from });\n }\n }\n return UsaTabBar as unknown as CustomElementConstructor;\n },\n { id: 'tab-bar', text: css }\n );\n}\n","import { defineElement, type UsaElement } from '../base';\nimport { springEasing } from '../physics/spring';\nimport css from './disclosure.css?raw';\n\n/**\n * `<usa-disclosure>` (6.2) — accordion 2.0 on native `<details>`: the\n * content springs open / closed (height + fade), the chevron flips with an\n * overshoot. Children: `<details><summary>…</summary>…</details>`.\n * Attributes: `multiple` (allow several open; default: one at a time),\n * `spring` (preset, default `gentle`), `variant=\"cards\"`. API: `openAll()`,\n * `closeAll()`, `toggle(i, force?)`. Events: `usa:toggle` (`{ index, open }`).\n * Native semantics (keyboard, find-in-page) kept. Reduced motion: instant.\n */\nexport interface UsaDisclosureElement extends UsaElement {\n toggle(i: number, force?: boolean): void;\n openAll(): void;\n closeAll(): void;\n}\n\nexport function defineDisclosure(tag = 'usa-disclosure'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) => {\n class UsaDisclosure extends Base {\n private _anims = new WeakMap<HTMLDetailsElement, Animation>();\n get items(): HTMLDetailsElement[] {\n return Array.from(this.children).filter((c): c is HTMLDetailsElement => c.localName === 'details');\n }\n mount(): void {\n this.listen(this, 'click', (e: MouseEvent) => {\n const s = (e.target as Element).closest('summary');\n const d = s?.parentElement as HTMLDetailsElement | null;\n if (!s || !d || d.parentElement !== this) return;\n e.preventDefault();\n this.set(d, !d.open);\n });\n }\n private set(d: HTMLDetailsElement, open: boolean): void {\n if (open && !this.flag('multiple')) for (const o of this.items) if (o !== d && o.open) this.set(o, false);\n if (d.open === open && !this._anims.get(d)) return;\n const summary = d.querySelector('summary');\n const closedH = summary ? summary.offsetHeight : 0;\n const startH = d.offsetHeight;\n this._anims.get(d)?.cancel();\n if (open) d.open = true;\n const endH = open ? d.scrollHeight : closedH;\n const sp = springEasing(this.str('spring', 'gentle'));\n const a = this.reduced ? null : this.motion(d, [{ height: `${startH}px` }, { height: `${endH}px` }], { duration: Math.min(sp.duration, 700), easing: sp.easing, fill: 'forwards' });\n const body = Array.from(d.children).filter((c) => c.localName !== 'summary');\n if (open && !this.reduced) body.forEach((b) => this.motion(b, [{ opacity: 0, transform: 'translateY(-6px)' }, { opacity: 1, transform: 'none' }], { duration: 300, delay: 60, easing: 'ease-out' }));\n const done = () => {\n this._anims.delete(d);\n if (!open) d.open = false;\n a?.cancel();\n };\n if (a) {\n this._anims.set(d, a);\n a.finished.then(() => this._anims.get(d) === a && done(), () => undefined);\n } else done();\n this.emit('toggle', { index: this.items.indexOf(d), open });\n }\n toggle(i: number, force?: boolean): void {\n const d = this.items[i];\n if (d) this.set(d, force ?? !d.open);\n }\n openAll(): void {\n this.items.forEach((d) => (d.open = true));\n }\n closeAll(): void {\n this.items.forEach((d) => this.set(d, false));\n }\n }\n return UsaDisclosure as unknown as CustomElementConstructor;\n },\n { id: 'disclosure', text: css }\n );\n}\n","import { defineElement, type UsaElement } from '../base';\nimport { ownChildren, part, dropParts } from './shared';\nimport css from './stories.css?raw';\n\n/**\n * `<usa-stories>` (6.2) — story viewer: segmented progress bars at the top,\n * auto-advance, tap the left / right third to go back / forward, press and\n * hold to pause, a pause button (WCAG 2.2.2). Each child is one story.\n * Attributes: `duration` (ms per story, 5000), `loop`, `paused`.\n * API: `next()`, `prev()`, `goTo(i)`, `pause()`, `play()`, `index`.\n * Events: `usa:change` (`{ index }`), `usa:end`. Reduced motion: no\n * auto-advance (paused until the user navigates), cross-fade only.\n */\nexport interface UsaStoriesElement extends UsaElement {\n readonly index: number;\n next(): void;\n prev(): void;\n goTo(i: number): void;\n pause(): void;\n play(): void;\n}\n\nexport function defineStories(tag = 'usa-stories'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) => {\n class UsaStories extends Base {\n static get observedAttributes(): string[] {\n return ['duration', 'loop'];\n }\n private _i = 0;\n private _items: HTMLElement[] = [];\n private _bars: HTMLElement[] = [];\n private _fill: Animation | null = null;\n private _btn: HTMLButtonElement | null = null;\n get index(): number {\n return this._i;\n }\n mount(): void {\n dropParts(this);\n this._items = ownChildren(this);\n const bars = part('div', 'usa-stories-bars', { 'aria-hidden': 'true' });\n this._bars = this._items.map(() => {\n const b = part('div', 'usa-stories-bar', {}, '<i></i>');\n bars.append(b);\n return b;\n });\n this._btn = part('button', 'usa-stories-toggle', { type: 'button' });\n this.listen(this._btn, 'click', (e: Event) => {\n e.stopPropagation();\n this.hasAttribute('paused') ? this.play() : this.pause();\n });\n this.append(bars, this._btn);\n this.setAttribute('role', 'region');\n this.setAttribute('aria-roledescription', 'stories');\n if (!this.hasAttribute('aria-label')) this.setAttribute('aria-label', 'Stories');\n if (!this.hasAttribute('tabindex')) this.tabIndex = 0;\n if (this.reduced) this.setAttribute('paused', '');\n let held = false;\n let downAt = 0;\n this.listen(this, 'pointerdown', (e: PointerEvent) => {\n if ((e.target as Element).closest('button,a')) return;\n downAt = performance.now();\n held = !this.hasAttribute('paused');\n if (held) this._fill?.pause();\n });\n this.listen(this, 'pointerup', (e: PointerEvent) => {\n if ((e.target as Element).closest('button,a') || !downAt) return;\n const long = performance.now() - downAt > 350;\n downAt = 0;\n if (held && !this.hasAttribute('paused')) this._fill?.play();\n if (long) return;\n const r = this.getBoundingClientRect();\n e.clientX - r.left < r.width / 3 ? this.prev() : this.next();\n });\n this.listen(this, 'keydown', (e: KeyboardEvent) => {\n if (e.key === 'ArrowRight') this.next();\n else if (e.key === 'ArrowLeft') this.prev();\n else if (e.key === ' ') (e.preventDefault(), this.hasAttribute('paused') ? this.play() : this.pause());\n });\n this.onCleanup(() => this._fill?.cancel());\n this.goTo(Math.min(this._i, Math.max(0, this._items.length - 1)), true);\n }\n private label(): void {\n if (this._btn) {\n const p = this.hasAttribute('paused');\n this._btn.textContent = p ? '▶' : '❚❚';\n this._btn.setAttribute('aria-label', p ? 'Play stories' : 'Pause stories');\n }\n }\n goTo(i: number, initial = false): void {\n const n = this._items.length;\n if (!n) return;\n if (i >= n && !this.flag('loop')) {\n this.emit('end');\n this.pause();\n return;\n }\n const t = ((i % n) + n) % n;\n const changed = t !== this._i || initial;\n this._i = t;\n this._items.forEach((s, k) => {\n s.toggleAttribute('data-active', k === t);\n s.setAttribute('aria-hidden', String(k !== t));\n });\n this._bars.forEach((b, k) => b.toggleAttribute('data-done', k < t));\n this._fill?.cancel();\n const fillEl = this._bars[t]?.firstElementChild as HTMLElement | undefined;\n this._fill = fillEl ? fillEl.animate?.([{ transform: 'scaleX(0)' }, { transform: 'scaleX(1)' }], { duration: Math.max(800, this.num('duration', 5000)), fill: 'forwards' }) ?? null : null;\n if (this._fill) {\n const a = this._fill;\n a.onfinish = () => this._fill === a && this.goTo(this._i + 1);\n if (this.hasAttribute('paused')) a.pause();\n }\n this.label();\n if (changed && !initial) this.emit('change', { index: t });\n }\n next(): void {\n this.goTo(this._i + 1);\n }\n prev(): void {\n this.goTo(Math.max(0, this._i - 1));\n }\n pause(): void {\n this.setAttribute('paused', '');\n this._fill?.pause();\n this.label();\n }\n play(): void {\n this.removeAttribute('paused');\n if (this._fill?.playState === 'finished') this.goTo(this._i + 1 >= this._items.length ? 0 : this._i + 1);\n else this._fill?.play();\n this.label();\n }\n }\n return UsaStories as unknown as CustomElementConstructor;\n },\n { id: 'stories', text: css }\n );\n}\n","import { defineElement, type UsaElement } from '../base';\nimport { ownChildren, part } from './shared';\nimport css from './overlay.css?raw';\n\n/**\n * `<usa-modal>` and `<usa-sheet>` (6.3) — modal overlays on the native\n * `<dialog>` (top layer, focus trap, Esc, inert page), with animated open\n * and close and a fading, blurred backdrop.\n *\n * - `<usa-modal effect=\"scale | slide-up | flip | origin\">` — `origin`\n * grows the dialog out of the button that opened it.\n * - `<usa-sheet side=\"right | left | bottom | top\">` — a side sheet; a\n * bottom sheet can be dragged down to dismiss (`<div data-handle>` or the\n * built-in grab handle).\n *\n * Attributes: `open` (initial), `label`, `persistent` (backdrop click / Esc\n * don't close). Any element with `data-usa-open=\"<id>\"` opens the overlay\n * with that id; `[data-usa-close]` inside closes it. API: `show(trigger?)`,\n * `close(value?)`, `toggle()`, `opened`. Events: `usa:open`, `usa:close`\n * (`{ value }`). Focus returns to the opener. Reduced motion: no movement,\n * a short fade.\n */\nexport interface UsaOverlayElement extends UsaElement {\n readonly opened: boolean;\n readonly returnValue: string;\n show(trigger?: Element | null): void;\n close(value?: string): Promise<void>;\n toggle(): void;\n}\nexport type UsaModalElement = UsaOverlayElement;\nexport type UsaSheetElement = UsaOverlayElement;\n\nexport const MODAL_EFFECTS = ['scale', 'slide-up', 'flip', 'origin'] as const;\nexport const SHEET_SIDES = ['right', 'left', 'bottom', 'top'] as const;\n\nconst EASE_OUT = 'cubic-bezier(.22,1,.36,1)';\n\n// one delegated listener for [data-usa-open] / [data-usa-toast] triggers anywhere on the page\nlet delegated = false;\nexport function delegateTriggers(): void {\n if (delegated || typeof document === 'undefined') return;\n delegated = true;\n document.addEventListener('click', (e) => {\n const t = (e.target as Element | null)?.closest?.('[data-usa-open]');\n if (!t) return;\n const target = document.getElementById(t.getAttribute('data-usa-open') || '') as (HTMLElement & Partial<UsaOverlayElement>) | null;\n if (target && typeof target.show === 'function') {\n e.preventDefault();\n if (target.opened) void target.close?.();\n else target.show(t);\n }\n });\n}\n\nfunction defineOverlay(tag: string, kind: 'modal' | 'sheet'): CustomElementConstructor | undefined {\n delegateTriggers();\n return defineElement(\n tag,\n (Base) => {\n class UsaOverlay extends Base {\n static get observedAttributes(): string[] {\n return kind === 'modal' ? ['effect'] : ['side'];\n }\n private _dlg: HTMLDialogElement | null = null;\n private _panel: HTMLElement | null = null;\n private _open = false;\n private _ret: Element | null = null;\n private _origin: DOMRect | null = null;\n private _value = '';\n private _closing: Promise<void> | null = null;\n\n get opened(): boolean {\n return this._open;\n }\n get returnValue(): string {\n return this._value;\n }\n\n mount(): void {\n let d = this.querySelector<HTMLDialogElement>(':scope > dialog.usa-ov');\n if (!d) {\n d = part('dialog', `usa-ov usa-${kind}-panel`);\n const body = part('div', 'usa-ov-body');\n body.append(...ownChildren(this));\n d.append(body);\n this.append(d);\n }\n this._dlg = d;\n this._panel = d.querySelector('.usa-ov-body');\n if (kind === 'modal') {\n const ef = this.str('effect', 'scale');\n this.dataset.effect = (MODAL_EFFECTS as readonly string[]).includes(ef) ? ef : 'scale';\n } else {\n const side = this.str('side', 'right');\n this.dataset.side = (SHEET_SIDES as readonly string[]).includes(side) ? side : 'right';\n if (this.dataset.side === 'bottom' && this._panel && !this._panel.querySelector('[data-handle]')) this._panel.prepend(part('div', 'usa-ov-grab', { 'data-handle': '', 'aria-hidden': 'true' }));\n this.drag();\n }\n if (!d.hasAttribute('aria-labelledby')) d.setAttribute('aria-label', this.str('label', kind === 'modal' ? 'Dialog' : 'Panel'));\n this.listen(d, 'cancel', (e: Event) => {\n e.preventDefault();\n if (!this.flag('persistent')) void this.close();\n });\n this.listen(d, 'click', (e: MouseEvent) => {\n const t = e.target as Element;\n const c = t.closest?.('[data-usa-close]');\n if (c) return void this.close(c.getAttribute('data-usa-close') || '');\n if (t === d && !this.flag('persistent')) void this.close(); // the ::backdrop\n });\n if (this.flag('open') && !this._open) this.show();\n }\n\n unmount(): void {\n if (this._open && this._dlg?.open) this._dlg.close?.();\n this._open = false;\n }\n\n private frames(opening: boolean): Keyframe[] {\n const fade: Keyframe[] = [{ opacity: 0 }, { opacity: 1 }];\n if (this.reduced) return opening ? fade : [...fade].reverse();\n let f: Keyframe[];\n if (kind === 'sheet') {\n const s = this.dataset.side;\n const off = s === 'left' ? 'translateX(-100%)' : s === 'bottom' ? 'translateY(100%)' : s === 'top' ? 'translateY(-100%)' : 'translateX(100%)';\n f = [{ transform: off }, { transform: 'none' }];\n } else {\n const e = this.dataset.effect;\n const o = this._origin;\n const r = this._dlg?.getBoundingClientRect();\n if (e === 'origin' && o && r && r.width) {\n const dx = o.left + o.width / 2 - (r.left + r.width / 2);\n const dy = o.top + o.height / 2 - (r.top + r.height / 2);\n f = [{ transform: `translate(${dx}px,${dy}px) scale(${Math.max(0.05, o.width / r.width).toFixed(3)},${Math.max(0.05, o.height / r.height).toFixed(3)})`, opacity: 0, borderRadius: '40px' }, { transform: 'none', opacity: 1 }];\n } else if (e === 'slide-up') f = [{ transform: 'translateY(48px)', opacity: 0 }, { transform: 'none', opacity: 1 }];\n else if (e === 'flip') f = [{ transform: 'perspective(900px) rotateX(-28deg) translateY(30px)', opacity: 0 }, { transform: 'none', opacity: 1 }];\n else f = [{ transform: 'scale(.88)', opacity: 0 }, { transform: 'scale(1.015)', opacity: 1, offset: 0.7 }, { transform: 'none', opacity: 1 }];\n }\n return opening ? f : [f[0], f[f.length - 1]].reverse();\n }\n\n private backdrop(opening: boolean): void {\n if (!this._dlg) return;\n const k: Keyframe[] = [{ opacity: 0 }, { opacity: 1 }];\n try {\n this._dlg.animate?.(opening ? k : k.reverse(), { duration: opening ? 280 : 200, pseudoElement: '::backdrop', fill: 'forwards' } as KeyframeAnimationOptions);\n } catch {\n /* no ::backdrop animation support */\n }\n }\n\n show(trigger?: Element | null): void {\n const d = this._dlg;\n if (!d || this._open) return;\n this._open = true;\n this._ret = trigger || (document.activeElement as Element | null);\n this._origin = trigger ? trigger.getBoundingClientRect() : null;\n if (typeof d.showModal === 'function') {\n try {\n d.showModal();\n } catch {\n d.setAttribute('open', '');\n }\n } else d.setAttribute('open', '');\n this.setAttribute('data-open', '');\n this.backdrop(true);\n this.motion(d, this.frames(true), { duration: this.reduced ? 150 : kind === 'sheet' ? 420 : 460, easing: EASE_OUT });\n const f = d.querySelector<HTMLElement>('[autofocus]') || d.querySelector<HTMLElement>('button,[href],input,select,textarea,[tabindex]:not([tabindex=\"-1\"])');\n f?.focus?.();\n this.emit('open', { trigger: trigger || null });\n }\n\n close(value = ''): Promise<void> {\n const d = this._dlg;\n if (!d || !this._open) return Promise.resolve();\n if (this._closing) return this._closing;\n this._value = value;\n this.backdrop(false);\n const a = this.motion(d, this.frames(false), { duration: this.reduced ? 120 : 260, easing: 'cubic-bezier(.4,0,1,1)', fill: 'forwards' });\n const done = () => {\n this._closing = null;\n this._open = false;\n this.removeAttribute('data-open');\n if (d.open && typeof d.close === 'function') d.close(value);\n else d.removeAttribute('open');\n a?.cancel?.();\n d.style.transform = '';\n (this._ret as HTMLElement | null)?.focus?.();\n this.emit('close', { value });\n };\n this._closing = a ? a.finished.then(done, done) : Promise.resolve().then(done);\n return this._closing;\n }\n\n toggle(): void {\n if (this._open) void this.close();\n else this.show();\n }\n\n // bottom sheet: drag down to dismiss, springs back otherwise\n private drag(): void {\n const p = this._panel;\n const d = this._dlg;\n if (!p || !d || this.dataset.side !== 'bottom') return;\n let y0 = -1;\n let dy = 0;\n let t0 = 0;\n this.listen(p, 'pointerdown', (e: PointerEvent) => {\n if (!(e.target as Element).closest('[data-handle]')) return;\n y0 = e.clientY;\n dy = 0;\n t0 = performance.now();\n (e.target as Element).setPointerCapture?.(e.pointerId);\n });\n this.listen(p, 'pointermove', (e: PointerEvent) => {\n if (y0 < 0) return;\n dy = Math.max(0, e.clientY - y0);\n d.style.transform = `translateY(${dy}px)`;\n });\n const up = () => {\n if (y0 < 0) return;\n y0 = -1;\n const v = dy / Math.max(1, performance.now() - t0);\n if (dy > d.offsetHeight * 0.3 || v > 0.6) void this.close();\n else {\n this.motion(d, [{ transform: `translateY(${dy}px)` }, { transform: 'translateY(-6px)', offset: 0.6 }, { transform: 'none' }], { duration: 380, easing: EASE_OUT });\n d.style.transform = '';\n }\n };\n this.listen(p, 'pointerup', up);\n this.listen(p, 'pointercancel', up);\n }\n }\n return UsaOverlay as unknown as CustomElementConstructor;\n },\n { id: 'overlay', text: css }\n );\n}\n\nexport const defineModal = (tag = 'usa-modal'): CustomElementConstructor | undefined => defineOverlay(tag, 'modal');\nexport const defineSheet = (tag = 'usa-sheet'): CustomElementConstructor | undefined => defineOverlay(tag, 'sheet');\n","import { defineElement, type UsaElement } from '../base';\nimport { part } from './shared';\nimport { delegateTriggers } from './overlay';\nimport css from './toast.css?raw';\n\n/**\n * `<usa-toast-stack>` (6.3) — notifications that pile up into a collapsed\n * stack (newest in front, older ones peeking behind), fan out on hover or\n * focus, auto-dismiss (paused while hovered), and can be swiped away.\n *\n * Attributes: `position` (`bottom-right` · `bottom-left` · `bottom-center` ·\n * `top-right` · `top-left` · `top-center`), `duration` (ms, `0` = sticky),\n * `max` (visible in the stack), `contained` (positioned inside its parent\n * instead of the viewport). API: `show(message | options)` → id,\n * `dismiss(id)`, `clear()`; module helper `stackToast()` uses the first stack on\n * the page (creating one). Any `[data-usa-toast=\"message\"]` element shows a\n * toast on click (`data-usa-toast-type`, `data-usa-target`). Events:\n * `usa:show`, `usa:dismiss` (`{ id, reason }`). Toasts live in a polite live\n * region. Reduced motion: no slide or swipe animation.\n */\nexport interface StackToastOptions {\n message?: string;\n title?: string;\n type?: 'info' | 'success' | 'warning' | 'error';\n /** ms; 0 = stays until dismissed. Defaults to the stack's `duration`. */\n duration?: number;\n /** An action button. */\n action?: { label: string; onClick?: () => void };\n}\nexport interface UsaToastStackElement extends UsaElement {\n show(input: string | StackToastOptions): string;\n dismiss(id: string, reason?: string): void;\n clear(): void;\n readonly count: number;\n}\n\nexport const TOAST_POSITIONS = ['bottom-right', 'bottom-left', 'bottom-center', 'top-right', 'top-left', 'top-center'] as const;\nconst ICONS: Record<string, string> = { info: 'ℹ', success: '✓', warning: '!', error: '✕' };\nlet tid = 0;\n\nexport function defineToastStack(tag = 'usa-toast-stack'): CustomElementConstructor | undefined {\n installToastTriggers();\n return defineElement(\n tag,\n (Base) => {\n class UsaToastStack extends Base {\n static get observedAttributes(): string[] {\n return ['position'];\n }\n private _list: HTMLOListElement | null = null;\n private _timers = new Map<string, { left: number; start: number; h: ReturnType<typeof setTimeout> | 0 }>();\n private _hover = false;\n\n get count(): number {\n return this._list ? this._list.querySelectorAll(':scope > .usa-tstack:not([data-leaving])').length : 0;\n }\n\n mount(): void {\n const pos = this.str('position', 'bottom-right');\n this.dataset.position = (TOAST_POSITIONS as readonly string[]).includes(pos) ? pos : 'bottom-right';\n this.setAttribute('role', 'region');\n if (!this.hasAttribute('aria-label')) this.setAttribute('aria-label', 'Notifications');\n this._list = this.querySelector(':scope > .usa-tstack-list') || part('ol', 'usa-tstack-list', { 'aria-live': 'polite', 'aria-relevant': 'additions' });\n if (!this._list.isConnected) this.append(this._list);\n const expand = (on: boolean) => {\n this._hover = on;\n this.toggleAttribute('data-expanded', on);\n this.layout();\n for (const [id, t] of this._timers) on ? this.pause(id, t) : this.resume(id);\n };\n this.listen(this, 'pointerenter', () => expand(true));\n this.listen(this, 'pointerleave', () => expand(false));\n this.listen(this, 'focusin', () => expand(true));\n this.listen(this, 'focusout', (e: FocusEvent) => !this.contains(e.relatedTarget as Node) && expand(false));\n this.onCleanup(() => this._timers.forEach((t) => t.h && clearTimeout(t.h)));\n }\n\n private pause(_id: string, t: { left: number; start: number; h: ReturnType<typeof setTimeout> | 0 }): void {\n if (!t.h) return;\n clearTimeout(t.h);\n t.h = 0;\n t.left -= Date.now() - t.start;\n }\n private resume(id: string): void {\n const t = this._timers.get(id);\n if (!t || t.h) return;\n t.start = Date.now();\n t.h = setTimeout(() => this.dismiss(id, 'timeout'), Math.max(400, t.left));\n }\n\n show(input: string | StackToastOptions): string {\n const o: StackToastOptions = typeof input === 'string' ? { message: input } : input || {};\n const id = `usa-tstack-${++tid}`;\n const type = o.type && ICONS[o.type] ? o.type : 'info';\n const li = part('li', `usa-tstack usa-tstack-${type}`, { id, role: type === 'error' ? 'alert' : 'status' });\n li.append(part('span', 'usa-tstack-icon', { 'aria-hidden': 'true' }, ICONS[type]));\n const txt = part('div', 'usa-tstack-text');\n if (o.title) txt.append(Object.assign(document.createElement('strong'), { textContent: o.title }));\n if (o.message) txt.append(Object.assign(document.createElement('span'), { textContent: o.message }));\n li.append(txt);\n if (o.action) {\n const b = part('button', 'usa-tstack-action', { type: 'button' });\n b.textContent = o.action.label;\n b.addEventListener('click', () => {\n o.action?.onClick?.();\n this.dismiss(id, 'action');\n });\n li.append(b);\n }\n const x = part('button', 'usa-tstack-close', { type: 'button', 'aria-label': 'Dismiss' }, '×');\n x.addEventListener('click', () => this.dismiss(id, 'close'));\n li.append(x);\n this.swipe(li, id);\n this._list?.prepend(li);\n const top = this.dataset.position?.startsWith('top');\n this.motion(li, this.reduced ? [{ opacity: 0 }, { opacity: 1 }] : [{ opacity: 0, translate: `0 ${top ? -110 : 110}%`, scale: '0.9' }, { opacity: 1, translate: '0 0', scale: '1' }], { duration: this.reduced ? 150 : 420, easing: 'cubic-bezier(.22,1,.36,1)' });\n this.layout();\n const dur = o.duration ?? this.num('duration', 4000);\n if (dur > 0) {\n this._timers.set(id, { left: dur, start: Date.now(), h: 0 });\n if (!this._hover) this.resume(id);\n }\n this.emit('show', { id, ...o });\n return id;\n }\n\n dismiss(id: string, reason = 'api'): void {\n const li = this._list?.querySelector<HTMLElement>(`#${id}`);\n const t = this._timers.get(id);\n if (t?.h) clearTimeout(t.h);\n this._timers.delete(id);\n if (!li || li.hasAttribute('data-leaving')) return;\n li.setAttribute('data-leaving', '');\n const dx = Number(li.dataset.dx || 0);\n const a = this.motion(li, this.reduced ? [{ opacity: 1 }, { opacity: 0 }] : [{ opacity: 1, transform: `translateX(${dx}px)` }, { opacity: 0, transform: `translateX(${dx >= 0 ? 120 : -120}%)` }], { duration: this.reduced ? 120 : 260, easing: 'cubic-bezier(.4,0,1,1)', fill: 'forwards' });\n const rm = () => {\n li.remove();\n this.layout();\n };\n if (a) a.finished.then(rm, rm);\n else rm();\n this.emit('dismiss', { id, reason });\n }\n\n clear(): void {\n this._list?.querySelectorAll<HTMLElement>(':scope > .usa-tstack').forEach((li) => this.dismiss(li.id, 'clear'));\n }\n\n /** Collapsed: newest in front, older ones scaled down peeking behind. Expanded: a list. */\n private layout(): void {\n if (!this._list) return;\n const items = Array.from(this._list.querySelectorAll<HTMLElement>(':scope > .usa-tstack:not([data-leaving])'));\n const max = Math.max(1, this.num('max', 3));\n const dir = this.dataset.position?.startsWith('top') ? 1 : -1;\n let y = 0;\n items.forEach((li, k) => {\n const h = li.offsetHeight || 56;\n const tf = this._hover ? `translateY(${dir * y}px)` : `translateY(${dir * k * 10}px) scale(${(1 - k * 0.05).toFixed(3)})`;\n li.style.transform = tf;\n li.style.zIndex = String(100 - k);\n li.style.opacity = !this._hover && k >= max ? '0' : '';\n li.toggleAttribute('inert', !this._hover && k > 0);\n y += h + 10;\n });\n this._list.style.height = this._hover && items.length ? `${y}px` : '';\n }\n\n private swipe(li: HTMLElement, id: string): void {\n let x0 = NaN;\n li.addEventListener('pointerdown', (e) => {\n if ((e.target as Element).closest('button')) return;\n x0 = e.clientX;\n li.setPointerCapture?.(e.pointerId);\n });\n li.addEventListener('pointermove', (e) => {\n if (Number.isNaN(x0)) return;\n const dx = e.clientX - x0;\n li.dataset.dx = String(dx);\n li.style.translate = `${dx}px 0`;\n li.style.opacity = String(Math.max(0.2, 1 - Math.abs(dx) / 240));\n });\n const up = () => {\n if (Number.isNaN(x0)) return;\n x0 = NaN;\n const dx = Number(li.dataset.dx || 0);\n li.style.translate = '';\n li.style.opacity = '';\n if (Math.abs(dx) > 80) this.dismiss(id, 'swipe');\n else li.dataset.dx = '0';\n };\n li.addEventListener('pointerup', up);\n li.addEventListener('pointercancel', up);\n }\n }\n return UsaToastStack as unknown as CustomElementConstructor;\n },\n { id: 'toast', text: css }\n );\n}\n\n/** Show a toast on the first `<usa-toast-stack>` of the page (one is created when missing). */\nexport function stackToast(input: string | StackToastOptions, stack?: UsaToastStackElement | null): string {\n defineToastStack();\n let s = stack || document.querySelector<UsaToastStackElement>('usa-toast-stack');\n if (!s) {\n s = document.createElement('usa-toast-stack') as UsaToastStackElement;\n document.body.append(s);\n }\n return s.show(input);\n}\n\nlet trig = false;\nfunction installToastTriggers(): void {\n delegateTriggers();\n if (trig || typeof document === 'undefined') return;\n trig = true;\n document.addEventListener('click', (e) => {\n const t = (e.target as Element | null)?.closest?.('[data-usa-toast]');\n if (!t) return;\n const target = t.getAttribute('data-usa-target');\n const s = target ? (document.getElementById(target) as UsaToastStackElement | null) : null;\n stackToast({ message: t.getAttribute('data-usa-toast') || '', title: t.getAttribute('data-usa-toast-title') || undefined, type: (t.getAttribute('data-usa-toast-type') as StackToastOptions['type']) || 'info' }, s);\n });\n}\n","import { defineElement, type UsaElement } from '../base';\nimport { ownChildren, part, nextId } from './shared';\nimport css from './menu.css?raw';\n\n/**\n * `<usa-menu>` (6.3) — a dropdown menu that unfolds from its button: the\n * list scales out of the trigger corner and the items cascade in. The first\n * child is the trigger (or `[data-trigger]`); the other children (`<button>`,\n * `<a>`, `<hr>` separators) become menu items.\n *\n * Attributes: `placement` (`bottom-start` · `bottom-end` · `top-start` ·\n * `top-end`), `effect` (`scale` · `fold` · `slide`). Keyboard: Enter / Space /\n * ArrowDown open, arrows and Home / End move, Esc closes, Tab leaves; outside\n * clicks close. API: `open()`, `close()`, `toggle()`, `opened`. Events:\n * `usa:select` (`{ index, value, item }`), `usa:open`, `usa:close`. Reduced\n * motion: a short fade.\n */\nexport interface UsaMenuElement extends UsaElement {\n readonly opened: boolean;\n open(focus?: 'first' | 'last'): void;\n close(focusTrigger?: boolean): void;\n toggle(): void;\n}\n\nexport const MENU_EFFECTS = ['scale', 'fold', 'slide'] as const;\n\nexport function defineMenu(tag = 'usa-menu'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) => {\n class UsaMenu extends Base {\n static get observedAttributes(): string[] {\n return ['placement', 'effect'];\n }\n private _btn: HTMLElement | null = null;\n private _list: HTMLElement | null = null;\n private _items: HTMLElement[] = [];\n private _open = false;\n\n get opened(): boolean {\n return this._open;\n }\n\n mount(): void {\n const kids = ownChildren(this);\n this._btn = kids.find((k) => k.hasAttribute('data-trigger')) || kids[0] || null;\n let list = this.querySelector<HTMLElement>(':scope > .usa-menu-list');\n if (!list) {\n list = part('div', 'usa-menu-list', { role: 'menu' });\n for (const k of kids) if (k !== this._btn) list.append(k);\n this.append(list);\n }\n this._list = list;\n list.id ||= nextId('usa-menu');\n list.hidden = !this._open;\n const pl = this.str('placement', 'bottom-start');\n this.dataset.placement = /^(bottom|top)-(start|end)$/.test(pl) ? pl : 'bottom-start';\n const ef = this.str('effect', 'scale');\n this.dataset.effect = (MENU_EFFECTS as readonly string[]).includes(ef) ? ef : 'scale';\n this._items = Array.from(list.children).filter((c): c is HTMLElement => c instanceof HTMLElement && !c.matches('hr,[role=\"separator\"]'));\n list.querySelectorAll('hr').forEach((h) => h.setAttribute('role', 'separator'));\n this._items.forEach((it, i) => {\n it.setAttribute('role', 'menuitem');\n it.tabIndex = -1;\n if (it.localName === 'button' && !it.hasAttribute('type')) it.setAttribute('type', 'button');\n this.listen(it, 'click', () => {\n this.emit('select', { index: i, value: it.dataset.value || (it.textContent || '').trim(), item: it });\n this.close(true);\n });\n });\n const b = this._btn;\n if (b) {\n b.setAttribute('aria-haspopup', 'menu');\n b.setAttribute('aria-expanded', String(this._open));\n b.setAttribute('aria-controls', list.id);\n if (b.localName === 'button' && !b.hasAttribute('type')) b.setAttribute('type', 'button');\n this.listen(b, 'click', () => this.toggle());\n this.listen(b, 'keydown', (e: KeyboardEvent) => {\n if (e.key === 'ArrowDown' || e.key === 'ArrowUp') {\n e.preventDefault();\n this.open(e.key === 'ArrowUp' ? 'last' : 'first');\n }\n });\n }\n this.listen(list, 'keydown', (e: KeyboardEvent) => {\n const n = this._items.length;\n const i = this._items.indexOf(document.activeElement as HTMLElement);\n let j = -1;\n if (e.key === 'ArrowDown') j = (i + 1) % n;\n else if (e.key === 'ArrowUp') j = (i - 1 + n) % n;\n else if (e.key === 'Home') j = 0;\n else if (e.key === 'End') j = n - 1;\n else if (e.key === 'Escape') {\n e.preventDefault();\n return this.close(true);\n } else if (e.key === 'Tab') return this.close(false);\n if (j >= 0) {\n e.preventDefault();\n this._items[j]?.focus();\n }\n });\n this.listen(document, 'pointerdown', (e: PointerEvent) => {\n if (this._open && !this.contains(e.target as Node)) this.close(false);\n });\n }\n\n open(focus: 'first' | 'last' = 'first'): void {\n const l = this._list;\n if (!l || this._open) return;\n this._open = true;\n l.hidden = false;\n this._btn?.setAttribute('aria-expanded', 'true');\n this.setAttribute('data-open', '');\n const ef = this.dataset.effect;\n if (this.reduced) this.motion(l, [{ opacity: 0 }, { opacity: 1 }], { duration: 120 });\n else {\n const f: Keyframe[] = ef === 'fold' ? [{ transform: 'perspective(600px) rotateX(-70deg)', opacity: 0 }, { transform: 'none', opacity: 1 }] : ef === 'slide' ? [{ transform: 'translateY(-10px)', opacity: 0, clipPath: 'inset(0 0 100% 0 round 12px)' }, { transform: 'none', opacity: 1, clipPath: 'inset(0 0 0 0 round 12px)' }] : [{ transform: 'scale(.6)', opacity: 0 }, { transform: 'scale(1.03)', opacity: 1, offset: 0.7 }, { transform: 'none', opacity: 1 }];\n this.motion(l, f, { duration: 300, easing: 'cubic-bezier(.22,1,.36,1)' });\n this._items.forEach((it, i) => this.motion(it, [{ opacity: 0, transform: 'translateY(-6px)' }, { opacity: 1, transform: 'none' }], { duration: 260, delay: 40 + i * 35, easing: 'cubic-bezier(.22,1,.36,1)', fill: 'backwards' }));\n }\n (focus === 'last' ? this._items[this._items.length - 1] : this._items[0])?.focus();\n this.emit('open');\n }\n\n close(focusTrigger = false): void {\n const l = this._list;\n if (!l || !this._open) return;\n this._open = false;\n this._btn?.setAttribute('aria-expanded', 'false');\n this.removeAttribute('data-open');\n const a = this.motion(l, [{ opacity: 1, transform: 'none' }, { opacity: 0, transform: this.reduced ? 'none' : 'scale(.96)' }], { duration: this.reduced ? 80 : 150, easing: 'ease-in' });\n const hide = () => {\n if (!this._open) l.hidden = true;\n };\n if (a) a.finished.then(hide, hide);\n else hide();\n if (focusTrigger) this._btn?.focus();\n this.emit('close');\n }\n\n toggle(): void {\n if (this._open) this.close(true);\n else this.open();\n }\n }\n return UsaMenu as unknown as CustomElementConstructor;\n },\n { id: 'menu', text: css }\n );\n}\n","import { defineElement, type UsaElement } from '../base';\nimport { clampN, part } from './shared';\nimport css from './meters.css?raw';\n\n/**\n * 6.4 meters: `<usa-progress-ring>` and `<usa-odometer>`.\n *\n * `<usa-progress-ring value=\"64\" max=\"100\">` — a ring, `bar` or `semi`\n * (semicircle gauge) `variant`; the arc eases (with a little overshoot) to\n * each new value while the centre label counts; `gradient=\"#a,#b\"`;\n * no `value` = indeterminate (spinning arc). `role=\"progressbar\"`.\n * Event `usa:complete` when it reaches max.\n *\n * `<usa-odometer value=\"1234\">` — rolling digit wheels: every digit column\n * spins to its new digit (lower digits travel further), columns slide in /\n * out when the length changes; `locale` grouping via Intl.NumberFormat,\n * `decimals`, `prefix` / `suffix`, `duration`. The accessible name is the\n * formatted number.\n *\n * Reduced motion: values switch without animation.\n */\nexport interface UsaProgressRingElement extends UsaElement {\n value: number | null;\n max: number;\n}\nexport interface UsaOdometerElement extends UsaElement {\n value: number;\n readonly text: string;\n}\n\nexport const PROGRESS_VARIANTS = ['ring', 'bar', 'semi'] as const;\nconst NS = 'http://www.w3.org/2000/svg';\n\nexport function defineProgressRing(tag = 'usa-progress-ring'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) => {\n class UsaProgressRing extends Base {\n static get observedAttributes(): string[] {\n return ['variant', 'value', 'max', 'gradient'];\n }\n private _shown = 0;\n private _arc: SVGPathElement | SVGCircleElement | HTMLElement | null = null;\n private _label: HTMLElement | null = null;\n private _len = 1;\n private _raf = 0;\n\n get value(): number | null {\n return this.hasAttribute('value') ? this.num('value', 0) : null;\n }\n set value(v: number | null) {\n if (v === null) this.removeAttribute('value');\n else this.setAttribute('value', String(v));\n }\n get max(): number {\n return Math.max(1e-9, this.num('max', 100));\n }\n set max(v: number) {\n this.setAttribute('max', String(v));\n }\n\n changed(name: string): void {\n if (name === 'value' && this._arc) return this.update();\n super.changed(name);\n }\n\n mount(): void {\n const v = this.str('variant', 'ring');\n const variant = (PROGRESS_VARIANTS as readonly string[]).includes(v) ? v : 'ring';\n this.dataset.variant = variant;\n this.setAttribute('role', 'progressbar');\n this.setAttribute('aria-valuemin', '0');\n this.querySelectorAll(':scope > [data-usa-part]').forEach((n) => n.remove());\n const stops = this.str('gradient', '').split(',').map((s) => s.trim()).filter(Boolean);\n const gid = `usa-pr-${Math.random().toString(36).slice(2, 8)}`;\n if (variant === 'bar') {\n const track = part('div', 'usa-pr-track');\n const fill = part('div', 'usa-pr-fill');\n if (stops.length) fill.style.background = `linear-gradient(90deg,${stops.join(',')})`;\n track.append(fill);\n this.append(track);\n this._arc = fill;\n } else {\n const svg = document.createElementNS(NS, 'svg');\n svg.setAttribute('data-usa-part', '');\n svg.setAttribute('aria-hidden', 'true');\n svg.setAttribute('class', 'usa-pr-svg');\n svg.setAttribute('width', '100%');\n svg.setAttribute('height', '100%');\n const semi = variant === 'semi';\n svg.setAttribute('viewBox', semi ? '0 0 100 56' : '0 0 100 100');\n const d = semi ? 'M 8 50 A 42 42 0 0 1 92 50' : 'M 50 8 A 42 42 0 1 1 49.99 8';\n const grad = stops.length ? `<defs><linearGradient id=\"${gid}\" x1=\"0\" y1=\"0\" x2=\"1\" y2=\"1\">${stops.map((c, i) => `<stop offset=\"${stops.length > 1 ? i / (stops.length - 1) : 0}\" stop-color=\"${c}\"/>`).join('')}</linearGradient></defs>` : '';\n svg.innerHTML = `${grad}<path class=\"usa-pr-track\" d=\"${d}\"/><path class=\"usa-pr-arc\" d=\"${d}\"${stops.length ? ` stroke=\"url(#${gid})\"` : ''}/>`;\n this.append(svg);\n this._arc = svg.querySelector('.usa-pr-arc');\n this._len = semi ? Math.PI * 42 : Math.PI * 2 * 42;\n (this._arc as SVGPathElement).style.strokeDasharray = `${this._len}`;\n (this._arc as SVGPathElement).style.strokeDashoffset = `${this._len}`;\n }\n this._label = part('span', 'usa-pr-label', { 'aria-hidden': 'true' });\n if (this.flag('no-label')) this._label.hidden = true;\n this.append(this._label);\n this._shown = 0;\n this.onCleanup(() => {\n if (this._raf && typeof cancelAnimationFrame === 'function') cancelAnimationFrame(this._raf);\n });\n this.update();\n }\n\n private paint(frac: number): void {\n const f = clampN(frac, 0, 1.08);\n if (this._arc instanceof HTMLElement) this._arc.style.transform = `scaleX(${Math.min(1, f)})`;\n else if (this._arc) (this._arc as SVGPathElement).style.strokeDashoffset = `${(this._len * (1 - Math.min(1, f))).toFixed(2)}`;\n }\n\n private update(): void {\n const v = this.value;\n const max = this.max;\n this.setAttribute('aria-valuemax', String(max));\n this.toggleAttribute('data-indeterminate', v === null);\n if (v === null) {\n this.removeAttribute('aria-valuenow');\n if (this._label) this._label.textContent = '';\n this.paint(0.28);\n return;\n }\n const target = clampN(v, 0, max) / max;\n this.setAttribute('aria-valuenow', String(clampN(v, 0, max)));\n const from = this._shown;\n this._shown = target;\n const label = (f: number) => {\n if (this._label) this._label.textContent = `${Math.round(f * 100)}%`;\n };\n if (this._raf && typeof cancelAnimationFrame === 'function') cancelAnimationFrame(this._raf);\n if (this.reduced || typeof requestAnimationFrame !== 'function') {\n this.paint(target);\n label(target);\n } else {\n const t0 = performance.now();\n const dur = this.num('duration', 900);\n const step = (now: number) => {\n const k = Math.min(1, (now - t0) / dur);\n // ease-out-back: a little overshoot, then settle\n const c = 1.4;\n const e = 1 + (c + 1) * Math.pow(k - 1, 3) + c * Math.pow(k - 1, 2);\n const f = from + (target - from) * e;\n this.paint(f);\n label(from + (target - from) * Math.min(1, k * 1.15));\n this._raf = k < 1 ? requestAnimationFrame(step) : 0;\n if (k >= 1) this.paint(target);\n };\n this._raf = requestAnimationFrame(step);\n }\n if (target >= 1 && from < 1) this.emit('complete', { value: v });\n }\n }\n return UsaProgressRing as unknown as CustomElementConstructor;\n },\n { id: 'meters', text: css }\n );\n}\n\nexport function defineOdometer(tag = 'usa-odometer'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) => {\n class UsaOdometer extends Base {\n static get observedAttributes(): string[] {\n return ['value', 'locale', 'decimals', 'prefix', 'suffix'];\n }\n private _row: HTMLElement | null = null;\n private _text = '';\n\n get value(): number {\n return this.num('value', 0);\n }\n set value(v: number) {\n this.setAttribute('value', String(v));\n }\n get text(): string {\n return this._text;\n }\n\n changed(name: string): void {\n if (name === 'value' && this._row) return this.render(true);\n super.changed(name);\n }\n\n mount(): void {\n this.querySelectorAll(':scope > [data-usa-part]').forEach((n) => n.remove());\n this._row = part('span', 'usa-odo-row', { 'aria-hidden': 'true' });\n this.append(this._row);\n this.setAttribute('role', 'img');\n this._text = '';\n this.render(false);\n }\n\n private format(): string {\n const d = Math.max(0, Math.min(6, Math.round(this.num('decimals', 0))));\n let s: string;\n try {\n s = new Intl.NumberFormat(this.str('locale', '') || undefined, { minimumFractionDigits: d, maximumFractionDigits: d }).format(this.value);\n } catch {\n s = this.value.toFixed(d);\n }\n return `${this.str('prefix', '')}${s}${this.str('suffix', '')}`;\n }\n\n private column(ch: string): HTMLElement {\n const isDigit = /\\d/.test(ch);\n const col = part('span', isDigit ? 'usa-odo-col' : 'usa-odo-sym');\n if (isDigit) {\n const strip = document.createElement('span');\n strip.className = 'usa-odo-strip';\n strip.textContent = '01234567890123456789'.split('').join('\\n');\n col.append(strip);\n col.dataset.d = ch;\n strip.style.transform = `translateY(${-Number(ch) * 5}%)`;\n } else col.textContent = ch;\n return col;\n }\n\n private render(animate: boolean): void {\n const row = this._row;\n if (!row) return;\n const next = this.format();\n this._text = next;\n this.setAttribute('aria-label', next);\n const anim = animate && !this.reduced;\n const dur = this.num('duration', 1100);\n const chars = next.split('');\n const old = Array.from(row.children) as HTMLElement[];\n const off = chars.length - old.length; // right-aligned: digits keep their place value\n const fresh = new Set<HTMLElement>();\n const cols = chars.map((ch, i) => {\n const o = old[i - off];\n const digit = /\\d/.test(ch);\n if (o && digit && o.dataset.d !== undefined) return o;\n if (o && !digit && o.dataset.d === undefined) {\n o.textContent = ch;\n return o;\n }\n const c = this.column(ch);\n fresh.add(c);\n return c;\n });\n row.replaceChildren(...cols);\n cols.forEach((c, i) => {\n if (fresh.has(c)) {\n if (anim) this.motion(c, [{ opacity: 0, transform: 'translateY(-60%)' }, { opacity: 1, transform: 'none' }], { duration: 420, easing: 'cubic-bezier(.22,1,.36,1)' });\n return;\n }\n if (c.dataset.d === undefined) return;\n const to = Number(chars[i]);\n const from = Number(c.dataset.d);\n c.dataset.d = String(to);\n const strip = c.firstElementChild as HTMLElement;\n strip.style.transform = `translateY(${-to * 5}%)`;\n if (!anim || from === to) return;\n const end = to >= from ? -to * 5 : -(to + 10) * 5; // always roll forward\n const place = cols.length - i;\n this.motion(strip, [{ transform: `translateY(${-from * 5}%)` }, { transform: `translateY(${end}%)` }], { duration: Math.max(400, dur - place * 60), easing: 'cubic-bezier(.2,.9,.25,1.04)' });\n });\n }\n }\n return UsaOdometer as unknown as CustomElementConstructor;\n },\n { id: 'meters', text: css }\n );\n}\n","import { defineElement, type UsaElement } from '../base';\nimport { part } from './shared';\nimport css from './skeleton-reveal.css?raw';\n\n/**\n * `<usa-skeleton-reveal loading>` (6.4) — a skeleton generated from the\n * real content: while `loading`, every text line, image and marked block\n * (`[data-skeleton]`) of the children is measured and covered by a\n * placeholder with one synchronized shimmer (`variant=\"wave | pulse |\n * glow\"`). Remove `loading` (or call `reveal()`) and the placeholders\n * dissolve top-to-bottom while the content fades in from a blur.\n *\n * `aria-busy` follows `loading`. Event `usa:reveal`. Reduced motion: no\n * shimmer, a plain crossfade.\n */\nexport interface UsaSkeletonRevealElement extends UsaElement {\n loading: boolean;\n reveal(): Promise<void>;\n}\n\nexport const SKELETON_VARIANTS = ['wave', 'pulse', 'glow'] as const;\n\nexport function defineSkeletonReveal(tag = 'usa-skeleton-reveal'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) => {\n class UsaSkeletonReveal extends Base {\n static get observedAttributes(): string[] {\n return ['loading', 'variant'];\n }\n private _layer: HTMLElement | null = null;\n\n get loading(): boolean {\n return this.flag('loading');\n }\n set loading(v: boolean) {\n this.setFlag('loading', v);\n }\n\n changed(name: string): void {\n if (name === 'loading') {\n if (this.loading) this.build();\n else void this.reveal();\n return;\n }\n super.changed(name);\n }\n\n mount(): void {\n const v = this.str('variant', 'wave');\n this.dataset.variant = (SKELETON_VARIANTS as readonly string[]).includes(v) ? v : 'wave';\n if (this.loading) this.build();\n if (typeof ResizeObserver === 'function') {\n const ro = new ResizeObserver(() => this.loading && this.build());\n ro.observe(this);\n this.onCleanup(() => ro.disconnect());\n }\n this.onCleanup(() => this._layer?.remove());\n }\n\n /** Measure the content and lay placeholders over it. */\n private build(): void {\n this.setAttribute('aria-busy', 'true');\n this.setAttribute('data-loading', '');\n this._layer?.remove();\n const layer = part('div', 'usa-sk-layer', { 'aria-hidden': 'true' });\n const host = this.getBoundingClientRect();\n const boxes: [number, number, number, number, boolean][] = [];\n const add = (r: DOMRect | { left: number; top: number; width: number; height: number }, round = false) => {\n if (r.width < 2 || r.height < 2) return;\n boxes.push([r.left - host.left, r.top - host.top, r.width, r.height, round]);\n };\n const marked = Array.from(this.querySelectorAll<HTMLElement>('[data-skeleton], img, svg, video, canvas, button, input'));\n for (const m of marked) if (!m.closest('.usa-sk-layer')) add(m.getBoundingClientRect(), m.dataset.skeleton === 'circle' || getComputedStyle(m).borderRadius === '50%');\n // text: one bar per rendered line (Range client rects), skipping marked elements\n const walker = document.createTreeWalker(this, NodeFilter.SHOW_TEXT);\n for (let n = walker.nextNode(); n; n = walker.nextNode()) {\n if (!n.textContent?.trim() || (n.parentElement && marked.some((m) => m.contains(n!.parentElement)))) continue;\n const range = document.createRange();\n range.selectNodeContents(n);\n const rects = typeof range.getClientRects === 'function' ? Array.from(range.getClientRects()) : [];\n for (const r of rects) add({ left: r.left, top: r.top + r.height * 0.18, width: r.width, height: r.height * 0.64 });\n }\n for (const [x, y, w, h, round] of boxes) {\n const b = document.createElement('span');\n b.className = 'usa-sk-box';\n b.style.cssText = `left:${x.toFixed(1)}px;top:${y.toFixed(1)}px;width:${w.toFixed(1)}px;height:${h.toFixed(1)}px;${round ? 'border-radius:50%' : ''}`;\n b.style.setProperty('--usa-sk-x', `${(-x).toFixed(1)}px`);\n layer.append(b);\n }\n this.append(layer);\n this._layer = layer;\n }\n\n reveal(): Promise<void> {\n const layer = this._layer;\n this.removeAttribute('aria-busy');\n if (this.hasAttribute('loading')) this.removeAttribute('loading');\n this._layer = null;\n if (!layer) {\n this.removeAttribute('data-loading');\n return Promise.resolve();\n }\n const boxes = Array.from(layer.children) as HTMLElement[];\n const kids = Array.from(this.children).filter((c) => c !== layer) as HTMLElement[];\n this.removeAttribute('data-loading');\n const done: Promise<unknown>[] = [];\n if (this.reduced) {\n const a = this.motion(layer, [{ opacity: 1 }, { opacity: 0 }], { duration: 200, fill: 'forwards' });\n if (a) done.push(a.finished);\n } else {\n const top = Math.min(...boxes.map((b) => parseFloat(b.style.top) || 0), 0);\n for (const b of boxes) {\n const a = this.motion(b, [{ opacity: 1, transform: 'none', filter: 'blur(0)' }, { opacity: 0, transform: 'scale(1.04)', filter: 'blur(6px)' }], { duration: 420, delay: Math.min(500, ((parseFloat(b.style.top) || 0) - top) * 1.2), easing: 'cubic-bezier(.4,0,.2,1)', fill: 'forwards' });\n if (a) done.push(a.finished);\n }\n kids.forEach((k, i) => this.motion(k, [{ opacity: 0, filter: 'blur(8px)', transform: 'translateY(6px)' }, { opacity: 1, filter: 'blur(0)', transform: 'none' }], { duration: 520, delay: 60 + i * 70, easing: 'cubic-bezier(.22,1,.36,1)', fill: 'backwards' }));\n }\n const end = () => {\n layer.remove();\n this.emit('reveal');\n };\n return Promise.all(done).then(end, end);\n }\n }\n return UsaSkeletonReveal as unknown as CustomElementConstructor;\n },\n { id: 'skeleton-reveal', text: css }\n );\n}\n","import { defineElement, type UsaElement } from '../base';\nimport { clampN, part } from './shared';\nimport css from './star-rating.css?raw';\n\n/**\n * `<usa-star-rating value=\"3.5\">` (6.4) — rating stars 2.0: the fill\n * follows the pointer (hover preview, `step=\"0.5\"` half stars), a click\n * pops the chosen star and throws a small sparkle burst, the other stars\n * ripple in sequence. `max`, `step` (`1` · `0.5`), `readonly`, `label`,\n * `icon` (`star` · `heart`). Keyboard: it is a `role=\"slider\"` — arrows,\n * Home / End. Event `usa:change` (`{ value }`). Reduced motion: no pop,\n * burst or ripple.\n */\nexport interface UsaStarRatingElement extends UsaElement {\n value: number;\n}\n\nconst PATHS: Record<string, string> = {\n star: 'M12 2.5l2.9 6.1 6.6.8-4.9 4.6 1.3 6.6L12 17.3l-5.9 3.3 1.3-6.6L2.5 9.4l6.6-.8z',\n heart: 'M12 21s-7.5-4.6-9.6-9.2C.9 8.4 2.9 4.5 6.6 4.5c2.1 0 3.6 1.2 5.4 3.1 1.8-1.9 3.3-3.1 5.4-3.1 3.7 0 5.7 3.9 4.2 7.3C19.5 16.4 12 21 12 21z',\n};\n\nexport function defineStarRating(tag = 'usa-star-rating'): CustomElementConstructor | undefined {\n return defineElement(\n tag,\n (Base) => {\n class UsaStarRating extends Base {\n static get observedAttributes(): string[] {\n return ['max', 'icon', 'readonly', 'step'];\n }\n private _v = 0;\n private _stars: HTMLElement[] = [];\n\n get value(): number {\n return this._v;\n }\n set value(v: number) {\n this.set(v, false);\n }\n\n private get max(): number {\n return Math.max(1, Math.round(this.num('max', 5)));\n }\n private get step(): number {\n return this.num('step', 1) === 0.5 ? 0.5 : 1;\n }\n\n mount(): void {\n this.querySelectorAll(':scope > [data-usa-part]').forEach((n) => n.remove());\n const icon = PATHS[this.str('icon', 'star')] || PATHS.star;\n this._stars = [];\n for (let i = 0; i < this.max; i++) {\n const s = part('span', 'usa-star', { 'aria-hidden': 'true' }, `<svg viewBox=\"0 0 24 24\" width=\"100%\" height=\"100%\"><path class=\"usa-star-bg\" d=\"${icon}\"/></svg><span class=\"usa-star-fg\"><svg viewBox=\"0 0 24 24\" width=\"24\" height=\"24\"><path d=\"${icon}\"/></svg></span>`);\n this._stars.push(s);\n this.append(s);\n }\n const ro = this.flag('readonly');\n this.setAttribute('role', ro ? 'img' : 'slider');\n if (!ro) {\n this.tabIndex = 0;\n this.setAttribute('aria-valuemin', '0');\n this.setAttribute('aria-valuemax', String(this.max));\n }\n if (!this.hasAttribute('aria-label')) this.setAttribute('aria-label', this.str('label', 'Rating'));\n this._v = clampN(this.num('value', 0), 0, this.max);\n this.paint(this._v);\n this.sync();\n if (ro) return;\n const at = (e: PointerEvent) => {\n const r = this._stars[0].getBoundingClientRect();\n const last = this._stars[this._stars.length - 1].getBoundingClientRect();\n const w = last.right - r.left || 1;\n const raw = ((e.clientX - r.left) / w) * this.max;\n return clampN(Math.ceil(raw / this.step) * this.step, this.step, this.max);\n };\n this.listen(this, 'pointermove', (e: PointerEvent) => {\n this.setAttribute('data-preview', '');\n this.paint(at(e));\n });\n this.listen(this, 'pointerleave', () => {\n this.removeAttribute('data-preview');\n this.paint(this._v);\n });\n this.listen(this, 'click', (e: MouseEvent) => this.set(at(e as PointerEvent), true));\n this.listen(this, 'keydown', (e: KeyboardEvent) => {\n const k = e.key;\n let v = this._v;\n if (k === 'ArrowRight' || k === 'ArrowUp') v += this.step;\n else if (k === 'ArrowLeft' || k === 'ArrowDown') v -= this.step;\n else if (k === 'Home') v = 0;\n else if (k === 'End') v = this.max;\n else return;\n e.preventDefault();\n this.set(v, true);\n });\n }\n\n private sync(): void {\n this.setAttribute('aria-valuenow', String(this._v));\n this.setAttribute('aria-valuetext', `${this._v} of ${this.max}`);\n if (this.flag('readonly')) this.setAttribute('aria-label', `${this.str('label', 'Rating')}: ${this._v} of ${this.max}`);\n }\n\n private paint(v: number): void {\n this._stars.forEach((s, i) => s.style.setProperty('--usa-star-fill', `${(clampN(v - i, 0, 1) * 100).toFixed(0)}%`));\n }\n\n private set(v: number, user: boolean): void {\n const nv = clampN(Math.round(v / this.step) * this.step, 0, this.max);\n const changed = nv !== this._v;\n this._v = nv;\n this.paint(nv);\n this.sync();\n if (!user) return;\n const idx = Math.ceil(nv) - 1;\n if (!this.reduced && idx >= 0) {\n const star = this._stars[idx];\n this.motion(star, [{ transform: 'scale(1)' }, { transform: 'scale(1.45) rotate(-12deg)', offset: 0.35 }, { transform: 'scale(.92)', offset: 0.7 }, { transform: 'none' }], { duration: 520, easing: 'cubic-bezier(.3,1.4,.5,1)' });\n this._stars.slice(0, idx).forEach((s, i) => this.motion(s, [{ transform: 'none' }, { transform: 'translateY(-5px)' }, { transform: 'none' }], { duration: 320, delay: i * 45, easing: 'ease-out' }));\n for (let k = 0; k < 8; k++) {\n const sp = part('span', 'usa-star-spark', { 'aria-hidden': 'true' });\n star.append(sp);\n const a = (k / 8) * Math.PI * 2;\n const anim = this.motion(sp, [{ transform: 'translate(-50%,-50%) scale(1)', opacity: 1 }, { transform: `translate(calc(-50% + ${(Math.cos(a) * 22).toFixed(1)}px), calc(-50% + ${(Math.sin(a) * 22).toFixed(1)}px)) scale(.2)`, opacity: 0 }], { duration: 520, easing: 'cubic-bezier(.2,.8,.3,1)', fill: 'forwards' });\n const rm = () => sp.remove();\n if (anim) anim.finished.then(rm, rm);\n else rm();\n }\n }\n if (changed) this.emit('change', { value: nv });\n }\n }\n return UsaStarRating as unknown as CustomElementConstructor;\n },\n { id: 'star-rating', text: css }\n );\n}\n","/**\n * motionary/components/widgets — the 6.x animated UI widgets, in their own\n * entry so `motionary/components` and `components/lite` keep their size\n * budgets. Every widget is reduced-motion safe and keyboard accessible.\n *\n * ```ts\n * import { defineWidgets } from 'motionary/components/widgets';\n * defineWidgets(); // or defineCarousel(), defineTabBar(), …\n * ```\n * No build step: `<script src=\"https://unpkg.com/motionary@6/dist/widgets.umd.js\">`\n * (registers every widget and every 6.x effect pack; `window.UsaWidgets`).\n */\nimport { defineCarousel, CAROUSEL_EFFECTS, type UsaCarouselElement } from './carousel';\nimport { defineTabBar, TAB_INDICATORS, type UsaTabBarElement } from './tab-bar';\nimport { defineDisclosure, type UsaDisclosureElement } from './disclosure';\nimport { defineStories, type UsaStoriesElement } from './stories';\nimport { defineToastStack, stackToast, TOAST_POSITIONS, type UsaToastStackElement, type StackToastOptions } from './toast';\nimport { defineModal, defineSheet, MODAL_EFFECTS, SHEET_SIDES, type UsaModalElement, type UsaSheetElement } from './overlay';\nimport { defineMenu, MENU_EFFECTS, type UsaMenuElement } from './menu';\nimport { defineProgressRing, defineOdometer, PROGRESS_VARIANTS, type UsaProgressRingElement, type UsaOdometerElement } from './meters';\nimport { defineSkeletonReveal, SKELETON_VARIANTS, type UsaSkeletonRevealElement } from './skeleton-reveal';\nimport { defineStarRating, type UsaStarRatingElement } from './star-rating';\n\nexport { defineCarousel, defineTabBar, defineDisclosure, defineStories, CAROUSEL_EFFECTS, TAB_INDICATORS };\nexport type { UsaCarouselElement, UsaTabBarElement, UsaDisclosureElement, UsaStoriesElement };\nexport { defineToastStack, stackToast, TOAST_POSITIONS, defineModal, defineSheet, MODAL_EFFECTS, SHEET_SIDES, defineMenu, MENU_EFFECTS };\nexport type { UsaToastStackElement, StackToastOptions, UsaModalElement, UsaSheetElement, UsaMenuElement };\n\nexport { defineProgressRing, defineOdometer, PROGRESS_VARIANTS, defineSkeletonReveal, SKELETON_VARIANTS, defineStarRating };\nexport type { UsaProgressRingElement, UsaOdometerElement, UsaSkeletonRevealElement, UsaStarRatingElement };\n\n/** The widgets by release (tag → define function). */\nexport const WIDGETS: Record<string, Record<string, (tag?: string) => CustomElementConstructor | undefined>> = {\n '6.2': { 'usa-carousel': defineCarousel, 'usa-tab-bar': defineTabBar, 'usa-disclosure': defineDisclosure, 'usa-stories': defineStories },\n '6.3': { 'usa-toast-stack': defineToastStack, 'usa-modal': defineModal, 'usa-sheet': defineSheet, 'usa-menu': defineMenu },\n '6.4': { 'usa-progress-ring': defineProgressRing, 'usa-odometer': defineOdometer, 'usa-skeleton-reveal': defineSkeletonReveal, 'usa-star-rating': defineStarRating },\n};\n\n/** Every widget tag, in release order. */\nexport const WIDGET_TAGS: string[] = Object.values(WIDGETS).flatMap((g) => Object.keys(g));\n\n/** Register every widget (or only those of one release, e.g. `'6.2'`) under its default tag. */\nexport function defineWidgets(release?: string): void {\n for (const [v, group] of Object.entries(WIDGETS)) if (!release || release === v) for (const [tag, fn] of Object.entries(group)) fn(tag);\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'usa-carousel': UsaCarouselElement;\n 'usa-tab-bar': UsaTabBarElement;\n 'usa-disclosure': UsaDisclosureElement;\n 'usa-stories': UsaStoriesElement;\n 'usa-toast-stack': UsaToastStackElement;\n 'usa-modal': UsaModalElement;\n 'usa-sheet': UsaSheetElement;\n 'usa-menu': UsaMenuElement;\n 'usa-progress-ring': UsaProgressRingElement;\n 'usa-odometer': UsaOdometerElement;\n 'usa-skeleton-reveal': UsaSkeletonRevealElement;\n 'usa-star-rating': UsaStarRatingElement;\n }\n}\n"],"names":["css"],"mappings":"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"}
@@ -36,20 +36,20 @@ import { definePacksComponents } from './components/packs.js';
36
36
  export { PACKS, PACK_PRIMITIVES, applyPack, countUp, definePack, flyToCart } from './components/packs.js';
37
37
  import { defineFxComponents } from './components/fx.js';
38
38
  export { BUILTIN_EFFECTS, defineFx, registerBuiltinEffects } from './components/fx.js';
39
- import { a as adoptVariants } from './chunks/variants-DRlKVHvu.js';
40
- export { V as VARIANTS, s as setVariant } from './chunks/variants-DRlKVHvu.js';
41
- import { c as canDefine } from './chunks/base-C_3cAoRz.js';
42
- export { M as MOTION_SCALE, a as MOTION_SENSITIVITY_LEVELS, b as activeAnimations, d as adaptKeyframes, e as animateWithMotion, f as animationBudget, g as configureComponents, h as getMotionIntensity, i as getMotionSensitivity, m as motionScale, o as onFrame, p as prefersReducedMotion, s as schedulerStats, j as setAnimationBudget, w as withoutDeprecations } from './chunks/base-C_3cAoRz.js';
39
+ import { a as adoptVariants } from './chunks/variants-C_hv_s23.js';
40
+ export { V as VARIANTS, s as setVariant } from './chunks/variants-C_hv_s23.js';
41
+ import { c as canDefine } from './chunks/base-DchG4q_S.js';
42
+ export { M as MOTION_SCALE, a as MOTION_SENSITIVITY_LEVELS, b as activeAnimations, d as adaptKeyframes, e as animateWithMotion, f as animationBudget, g as configureComponents, h as getMotionIntensity, i as getMotionSensitivity, m as motionScale, o as onFrame, p as prefersReducedMotion, s as schedulerStats, j as setAnimationBudget, w as withoutDeprecations } from './chunks/base-DchG4q_S.js';
43
43
  export { MOTION_TOKENS, applyMotionTokens, getMotionTokens, importMotionTokens, mergeMotionTokens, motionToken, motionTokensToCss, motionTokensToJSON, motionTokensToVars, motionVar, parseDuration, parseEasing, resolveDurationToken, resolveEasingToken } from './components/tokens.js';
44
44
  export { ALL_TAGS, LIVE_REGION_IDS, MOTION_SENSITIVITY, SENSITIVITY_CSS, STATIC_ALTERNATIVES, announce, auditMotionA11y, baselineReport, liveRegion, motionAllowed, restoreMotionSensitivity, setMotionSensitivity, staticAlternative, warnBaseline } from './components/a11y.js';
45
45
  export { autoDegrade, categoryOf, loadCategoryStyles, loadedStyles, onDemandStyles } from './components/perf.js';
46
46
  export { BRIDGE_PROTOCOL_VERSION, applyNativeSettings, connectNativeShell, detectNativeHost, parseNativeSettings, postToNative } from './components/bridge.js';
47
47
  export { C as COMPONENT_CATEGORIES } from './chunks/index-tags-DucKMQr_.js';
48
- export { E as EFFECT_KINDS, a as EFFECT_TRIGGERS, b as bindEffect, g as getEffect, h as hasEffect, l as listEffects, p as playEffect, r as registerEffect, c as registerEffects } from './chunks/registry-CKNLQpwd.js';
49
- export { S as SPRING_PRESETS, c as createSpring, l as linearEasing, p as projectInertia, r as resolveSpring, a as rubberBand, s as snapTo, b as spring, d as springEasing, e as springSamples, f as stepSpring, g as supportsLinearEasing } from './chunks/spring-CbvHfVtP.js';
50
- export { T as TIMELINE_PRESETS, r as resolvePosition, s as supportsNativeScrub, t as timeline } from './chunks/core-VEBw36QK.js';
51
- export { g as gesture, p as pinchScale, s as swipeDirection } from './chunks/core-ps8uvYuN.js';
52
- export { h as haptic } from './chunks/fx-Bs6IrV4Q.js';
48
+ export { E as EFFECT_KINDS, a as EFFECT_TRIGGERS, b as bindEffect, g as getEffect, h as hasEffect, l as listEffects, p as playEffect, r as registerEffect, c as registerEffects } from './chunks/registry-Bu5NrAyA.js';
49
+ export { S as SPRING_PRESETS, c as createSpring, l as linearEasing, p as projectInertia, r as resolveSpring, a as rubberBand, s as snapTo, b as spring, d as springEasing, e as springSamples, f as stepSpring, g as supportsLinearEasing } from './chunks/spring-BhoT09Qb.js';
50
+ export { T as TIMELINE_PRESETS, r as resolvePosition, s as supportsNativeScrub, t as timeline } from './chunks/core-DVyTlo9Q.js';
51
+ export { g as gesture, p as pinchScale, s as swipeDirection } from './chunks/core-D2vF8kZb.js';
52
+ export { h as haptic } from './chunks/fx-DUMVKSvg.js';
53
53
 
54
54
  /**
55
55
  * motionary/components
package/dist/index.cjs CHANGED
@@ -111,7 +111,7 @@ function parallax(target, options = {}) {
111
111
  * `motionary/react`, `/vue`, `/svelte`, `/solid`, `/element`.
112
112
  *
113
113
  * @license MIT
114
- * @see https://github.com/HarrisonCN/motionary
114
+ * @see https://github.com/HarrisonCN/Motionary
115
115
  */
116
116
  /**
117
117
  * Default singleton instance of ScrollAnimate.