Skip to content

Split the Motion reference into one page per component - #636

Merged
titouanmathis merged 3 commits into
mainfrom
feature/motion-ambient-stories
Aug 13, 2026
Merged

Split the Motion reference into one page per component#636
titouanmathis merged 3 commits into
mainfrom
feature/motion-ambient-stories

Conversation

@titouanmathis

Copy link
Copy Markdown
Contributor

What

  • Split the monolithic Motion reference item into four items, one page per component: Motion, MotionScrollTimeline, MotionSequence and MotionView — each with its own index.md, js-api.md, examples.md and stories/ (story directories moved with git mv so history follows). The package-level "Providing the Motion dependency" section stays on the Motion JS API page and every sibling links to it.
  • Add two new, browser-verified live stories for the ambient MotionView integrations: a zero-wiring exit animation for data-bind:if and ambient view transitions in a Dialog.
  • Update everything that pointed at the old anchors: the reference catalog (one entry per item, symbols and hrefs moved, items related to each other and motion-view to view-transition/dialog/data-bind), the public contracts (Motion*Props hrefs), the @link docblocks in packages/ui-motion/src, and the MotionView mentions in the Fetch, DataBind and Dialog JS API pages (including dropping the stale "upcoming").
  • Remove a duplicated DomUpdateRunner/DomUpdateTransitioner type re-export in packages/ui/src/index.ts (merge artifact) so lint:types passes again.

Test plan

  • node scripts/validate-reference.ts: passes with 66 Reference entries, 273 symbols and 5 concepts.
  • npm run lint: 0 errors, 20 warnings.
  • npm run build --workspace=@studiometa/ui-motion: passes.
  • npm run test -- -- Motion/: 8 files, 58 tests, all green.
  • Both ambient stories were driven in a real Chromium: the data-bind:if panel animates in and out, and the dialog opens and closes through the ambient join.

🤖 Generated with Claude Code

https://claude.ai/code/session_01FVXrJ8idMfvt667yJadvB8

titouanmathis and others added 3 commits August 13, 2026 13:21
@codecov

codecov Bot commented Aug 13, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 87.75%. Comparing base (bc99299) to head (a70de5d).

Additional details and impacted files
@@            Coverage Diff            @@
##               main     #636   +/-   ##
=========================================
  Coverage     87.75%   87.75%           
  Complexity      145      145           
=========================================
  Files           153      153           
  Lines          5415     5415           
  Branches       1030     1030           
=========================================
  Hits           4752     4752           
  Misses          579      579           
  Partials         84       84           
Flag Coverage Δ
unittests 87.75% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
packages/ui-motion/src/MotionScrollTimeline.ts 92.30% <ø> (ø)
packages/ui-motion/src/MotionSequence.ts 100.00% <ø> (ø)
packages/ui-motion/src/MotionView.ts 100.00% <ø> (ø)
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@github-actions

Copy link
Copy Markdown

Code Review

Risk: Low — The reference split and documentation updates are safe to merge; no concrete defects are visible in the supplied diff.

The MR separates the Motion reference into four component-specific pages, relocates their examples and stories, and updates catalog, contract, and source documentation links. It also adds ambient MotionView integration stories and removes the duplicated DomUpdate type re-export.


Review usage: 201,355 in (174,691 cached) / 1,359 out tokens — $0.0295 (openrouter/openai/gpt-5.6-luna, thinking: low)

Reviewed by @weareikko/code-review v0.9.5 for commit a70de5d.

@github-actions

Copy link
Copy Markdown

Export size

Bundled per export with peer dependencies left external, dynamic imports excluded and the output minified; sizes are gzipped.

✅ No export size changes.

Unchanged (133)

@studiometa/ui

Export Size (gzip) Diff
(barrel) 30.77 kB
AbstractCarouselChild 542 B
AbstractCarouselComponent 219 B
AbstractFrameTrigger 1.11 kB
AbstractPrefetch 438 B
AbstractScrollAnimation 651 B
AbstractSliderChild 489 B
Accordion 1.11 kB
AccordionItem 995 B
Action 1.22 kB
AnchorNav 1018 B
AnchorNavLink 867 B
AnchorNavTarget 166 B
AnchorScrollTo 222 B
Carousel 2.89 kB
CarouselBtn 720 B
CarouselDrag 735 B
CarouselItem 786 B
CarouselWrapper 670 B
CircularMarquee 313 B
ClickOutside 219 B
Cursor 676 B
DataBind 3.97 kB
DataComputed 4.06 kB
DataEffect 4.04 kB
DataModel 4.07 kB
DataScope 1.4 kB
Dialog 1.79 kB
Disclosure 2.39 kB
DisclosureGroup 1.16 kB
Draggable 1.14 kB
Fetch 2.45 kB
FetchShopifyPartial 2.98 kB
FetchShopifySection 2.71 kB
Figure 1.07 kB
FigureShopify 1.35 kB
FigureTwicpics 1.6 kB
FigureVideo 1.27 kB
FigureVideoTwicpics 1.85 kB
Frame 2.51 kB
FrameAnchor 1.2 kB
FrameForm 1.32 kB
FrameLoader 788 B
FrameTarget 1.1 kB
FrameTriggerLoader 801 B
Hoverable 624 B
InView 204 B
InViewOnce 245 B
Indexable 1022 B
LargeText 499 B
LazyInclude 421 B
Menu 1.72 kB
MenuBtn 186 B
MenuList 1.28 kB
Modal 1.13 kB
ModalWithTransition 1.26 kB
Panel 1.52 kB
PrefetchWhenOver 485 B
PrefetchWhenVisible 510 B
ScrollAnimation 806 B
ScrollAnimationChild 979 B
ScrollAnimationChildWithEase 1.25 kB
ScrollAnimationParent 1.05 kB
ScrollAnimationTarget 898 B
ScrollAnimationTimeline 983 B
ScrollAnimationWithEase 1.08 kB
ScrollReveal 1005 B
Sentinel 175 B
Slider 2.28 kB
SliderBtn 745 B
SliderCount 549 B
SliderDots 1.15 kB
SliderDrag 348 B
SliderItem 574 B
SliderProgress 612 B
Sticky 929 B
Tabs 663 B
Target 125 B
Timer 589 B
TimerProgress 731 B
Toast 968 B
Toaster 1.3 kB
Track 1.61 kB
TrackContext 416 B
TrackShopify 1.71 kB
Transition 746 B
ViewTransition 658 B
animationScrollWithEase 438 B
autoload 3.04 kB
manifest 2.99 kB
scheduler 324 B
types 20 B
viewTransition 325 B
withDeprecation 250 B
withIndex 986 B
withScrollAnimationDebug 1.63 kB
withTransition 717 B

@studiometa/ui-mapbox

Export Size (gzip) Diff
(barrel) 6.41 kB
AbstractMapboxControl 1.02 kB
AbstractMapboxMapChild 848 B
MAPBOX_CLUSTER_CONNECTED 143 B
MAPBOX_MAP_CONNECTED 128 B
MapboxCluster 2.13 kB
MapboxClusterItem 644 B
MapboxFullscreenControl 1.17 kB
MapboxGeocoder 1.21 kB
MapboxGeolocateControl 1.23 kB
MapboxImage 1.34 kB
MapboxImages 1.38 kB
MapboxLayer 1.36 kB
MapboxMap 723 B
MapboxMarker 1.11 kB
MapboxNavigationControl 1.21 kB
MapboxPopup 1.17 kB
MapboxSource 1.32 kB
StoreLocator 1.96 kB
autoload 681 B
dependencies 342 B
manifest 639 B
provideMapboxGeocoder 107 B
provideMapboxGl 104 B
resolveMapboxGeocoder 148 B
resolveMapboxGl 139 B

@studiometa/ui-motion

Export Size (gzip) Diff
(barrel) 2.44 kB
Motion 1.34 kB
MotionScrollTimeline 1.57 kB
MotionSequence 1.54 kB
MotionView 1010 B
autoload 363 B
dependencies 257 B
manifest 324 B
provideMotion 102 B
resolveMotion 115 B

@titouanmathis
titouanmathis merged commit a8c462a into main Aug 13, 2026
20 checks passed
@titouanmathis
titouanmathis deleted the feature/motion-ambient-stories branch August 13, 2026 13:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant