@sarunyu/system-one 4.9.39 → 4.9.40

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/llms.txt CHANGED
@@ -926,17 +926,24 @@ Three variants for different scroll/paging patterns:
926
926
  // Banner slide dots
927
927
  <PaginationBanner count={5} activeIndex={bannerIndex} onIndexChange={setBannerIndex} />
928
928
 
929
- // Carousel scrollbar — progress 0 (start) to 1 (end)
930
- <PaginationCarousel progress={scrollProgress} />
931
- <PaginationCarousel progress={0.5} trackWidth={60} />
929
+ // Carousel scrollbar — pill slides as user scrolls
930
+ <PaginationCarousel
931
+ count={total}
932
+ activeIndex={activeIndex}
933
+ viewRatio={clientWidth / scrollWidth} // pill width = viewRatio × 40px track
934
+ scrollProgress={scrollLeft / maxScroll} // pill position 0–1
935
+ onIndexChange={goToSlide}
936
+ />
932
937
  ```
933
938
 
934
939
  **Numbered pagination** — when `totalPages > 5`, pages 4…(n-1) collapse behind a `…` button that opens a scrollable dropdown to jump to any hidden page. Do not use `<Pagination>` inside a horizontal card carousel — use `<PaginationCarousel>` instead.
935
940
 
941
+ **Carousel pagination** — a fixed-width sliding pill (width proportional to `viewRatio`) that moves along a 40 px track. Pair with a scrollable container: derive `viewRatio = clientWidth / scrollWidth` and `scrollProgress = scrollLeft / maxScroll` from the container's scroll events. Navigation arrows are built-in.
942
+
936
943
  Props:
937
944
  - `Pagination` — `totalPages`, `currentPage`, `onPageChange?(page: number)`, `className?`
938
945
  - `PaginationBanner` — `count`, `activeIndex`, `onIndexChange?(index: number)`, `className?`
939
- - `PaginationCarousel` — `progress` (0–1, clamped), `trackWidth?` (default 40), `className?`
946
+ - `PaginationCarousel` — `count`, `activeIndex`, `viewRatio?` (pill width ratio, default `1/count`), `scrollProgress?` (0–1, overrides index-based pill position), `onIndexChange?(index: number)`, `className?`
940
947
 
941
948
  ---
942
949
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sarunyu/system-one",
3
- "version": "4.9.39",
3
+ "version": "4.9.40",
4
4
  "type": "module",
5
5
  "description": "A production-ready React design system built for AI-powered web generation tools (Figma Make, Lovable, V0). Tailwind CSS v4 + CSS custom properties for full theming support.",
6
6
  "keywords": [