@cdx-ui/components 0.0.1-beta.138 → 0.0.1-beta.139

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 (42) hide show
  1. package/lib/commonjs/components/Carousel/context.js +13 -0
  2. package/lib/commonjs/components/Carousel/context.js.map +1 -0
  3. package/lib/commonjs/components/Carousel/index.js +12 -7
  4. package/lib/commonjs/components/Carousel/index.js.map +1 -1
  5. package/lib/commonjs/components/Carousel/navButton.js +119 -0
  6. package/lib/commonjs/components/Carousel/navButton.js.map +1 -0
  7. package/lib/commonjs/components/Carousel/styles.js +24 -1
  8. package/lib/commonjs/components/Carousel/styles.js.map +1 -1
  9. package/lib/commonjs/components/Carousel/useCarouselActiveIndex.js +52 -0
  10. package/lib/commonjs/components/Carousel/useCarouselActiveIndex.js.map +1 -0
  11. package/lib/commonjs/components/IconButton/index.js +4 -2
  12. package/lib/commonjs/components/IconButton/index.js.map +1 -1
  13. package/lib/module/components/Carousel/context.js +7 -0
  14. package/lib/module/components/Carousel/context.js.map +1 -0
  15. package/lib/module/components/Carousel/index.js +11 -6
  16. package/lib/module/components/Carousel/index.js.map +1 -1
  17. package/lib/module/components/Carousel/navButton.js +114 -0
  18. package/lib/module/components/Carousel/navButton.js.map +1 -0
  19. package/lib/module/components/Carousel/styles.js +23 -0
  20. package/lib/module/components/Carousel/styles.js.map +1 -1
  21. package/lib/module/components/Carousel/useCarouselActiveIndex.js +48 -0
  22. package/lib/module/components/Carousel/useCarouselActiveIndex.js.map +1 -0
  23. package/lib/module/components/IconButton/index.js +4 -2
  24. package/lib/module/components/IconButton/index.js.map +1 -1
  25. package/lib/typescript/components/Carousel/context.d.ts +15 -0
  26. package/lib/typescript/components/Carousel/context.d.ts.map +1 -0
  27. package/lib/typescript/components/Carousel/index.d.ts +5 -2
  28. package/lib/typescript/components/Carousel/index.d.ts.map +1 -1
  29. package/lib/typescript/components/Carousel/navButton.d.ts +40 -0
  30. package/lib/typescript/components/Carousel/navButton.d.ts.map +1 -0
  31. package/lib/typescript/components/Carousel/styles.d.ts +8 -0
  32. package/lib/typescript/components/Carousel/styles.d.ts.map +1 -1
  33. package/lib/typescript/components/Carousel/useCarouselActiveIndex.d.ts +12 -0
  34. package/lib/typescript/components/Carousel/useCarouselActiveIndex.d.ts.map +1 -0
  35. package/lib/typescript/components/IconButton/index.d.ts.map +1 -1
  36. package/package.json +4 -4
  37. package/src/components/Carousel/context.ts +15 -0
  38. package/src/components/Carousel/index.tsx +18 -13
  39. package/src/components/Carousel/navButton.tsx +160 -0
  40. package/src/components/Carousel/styles.ts +27 -0
  41. package/src/components/Carousel/useCarouselActiveIndex.ts +54 -0
  42. package/src/components/IconButton/index.tsx +5 -1
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useCarouselProgressContext = exports.CarouselProgressProvider = void 0;
7
+ var _utils = require("@cdx-ui/utils");
8
+ const [CarouselProgressProvider, useCarouselProgressContext] = (0, _utils.createContext)('CarouselProgress', {
9
+ strict: false
10
+ });
11
+ exports.useCarouselProgressContext = useCarouselProgressContext;
12
+ exports.CarouselProgressProvider = CarouselProgressProvider;
13
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_utils","require","CarouselProgressProvider","useCarouselProgressContext","createContext","strict","exports"],"sourceRoot":"../../../../src","sources":["components/Carousel/context.ts"],"mappings":";;;;;;AAGA,IAAAA,MAAA,GAAAC,OAAA;AAUO,MAAM,CAACC,wBAAwB,EAAEC,0BAA0B,CAAC,GACjE,IAAAC,oBAAa,EAAuB,kBAAkB,EAAE;EAAEC,MAAM,EAAE;AAAM,CAAC,CAAC;AAACC,OAAA,CAAAH,0BAAA,GAAAA,0BAAA;AAAAG,OAAA,CAAAJ,wBAAA,GAAAA,wBAAA","ignoreList":[]}
@@ -10,6 +10,8 @@ var _reactNativeReanimated = require("react-native-reanimated");
10
10
  var _reactNativeReanimatedCarousel = _interopRequireWildcard(require("react-native-reanimated-carousel"));
11
11
  var _uniwind = require("uniwind");
12
12
  var _utils = require("@cdx-ui/utils");
13
+ var _context = require("./context");
14
+ var _navButton = require("./navButton");
13
15
  var _paginationNavigation = require("./paginationNavigation");
14
16
  var _styles = require("./styles");
15
17
  var _jsxRuntime = require("react/jsx-runtime");
@@ -23,9 +25,6 @@ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r
23
25
 
24
26
  /** Mirrors the adopted library's private `DotStyle` shape (not exported) without importing it. */
25
27
 
26
- const [CarouselProgressProvider, useCarouselProgressContext] = (0, _utils.createContext)('CarouselProgress', {
27
- strict: false
28
- });
29
28
  function isSharedValueProgress(value) {
30
29
  return typeof value === 'object' && value !== null && 'value' in value;
31
30
  }
@@ -41,6 +40,8 @@ function CarouselInner({
41
40
  const internalRef = (0, _react.useRef)(null);
42
41
  const internalProgress = (0, _reactNativeReanimated.useSharedValue)(defaultIndex);
43
42
  const resolvedClassNameStyle = (0, _uniwind.useResolveClassNames)((0, _utils.cn)(className));
43
+ const vertical = rest.vertical ?? false;
44
+ const itemCount = rest.data.length;
44
45
  const handleProgressChange = (0, _react.useCallback)((offsetProgress, absoluteProgress) => {
45
46
  internalProgress.value = absoluteProgress;
46
47
  if (typeof onProgressChange === 'function') {
@@ -51,9 +52,11 @@ function CarouselInner({
51
52
  const contextValue = {
52
53
  progress: consumerProgress ?? internalProgress,
53
54
  carouselRef: internalRef,
54
- loop
55
+ loop,
56
+ itemCount,
57
+ vertical
55
58
  };
56
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(CarouselProgressProvider, {
59
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_context.CarouselProgressProvider, {
57
60
  value: contextValue,
58
61
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimatedCarousel.default, {
59
62
  ref: (0, _utils.mergeRefs)(ref, internalRef),
@@ -82,7 +85,7 @@ function CarouselPaginationComponent({
82
85
  // `strict: false` with no `defaultValue` means this returns `undefined` outside a
83
86
  // `<Carousel>` provider at runtime; cast to communicate that to TypeScript, since
84
87
  // `createContext`'s helper type always reports `T` (see `@cdx-ui/utils`).
85
- const context = useCarouselProgressContext();
88
+ const context = (0, _context.useCarouselProgressContext)();
86
89
  const progress = progressProp ?? context?.progress;
87
90
  const carouselRef = carouselRefProp ?? context?.carouselRef;
88
91
  const loop = loopProp ?? context?.loop ?? true;
@@ -131,7 +134,9 @@ function CarouselPaginationComponent({
131
134
  CarouselPaginationComponent.displayName = 'Carousel.Pagination';
132
135
  const CarouselPagination = CarouselPaginationComponent;
133
136
  const Carousel = exports.Carousel = Object.assign(CarouselRoot, {
134
- Pagination: CarouselPagination
137
+ Pagination: CarouselPagination,
138
+ PrevButton: _navButton.CarouselPrevButton,
139
+ NextButton: _navButton.CarouselNextButton
135
140
  });
136
141
 
137
142
  // =============================================================================
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNativeReanimated","_reactNativeReanimatedCarousel","_interopRequireWildcard","_uniwind","_utils","_paginationNavigation","_styles","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","CarouselProgressProvider","useCarouselProgressContext","createContext","strict","isSharedValueProgress","value","CarouselInner","className","style","onProgressChange","children","loop","defaultIndex","rest","ref","internalRef","useRef","internalProgress","useSharedValue","resolvedClassNameStyle","useResolveClassNames","cn","handleProgressChange","useCallback","offsetProgress","absoluteProgress","consumerProgress","undefined","contextValue","progress","carouselRef","jsxs","jsx","mergeRefs","CarouselRoot","forwardRef","CarouselPaginationComponent","progressProp","carouselRefProp","loopProp","onPress","context","Error","handlePress","index","carousel","current","scrollAction","resolveCarouselPaginationScrollAction","getCurrentIndex","data","length","scrollTo","containerStyle","carouselPaginationContainerClassName","dotStyle","carouselPaginationDotVariants","active","activeDotStyle","Pagination","Custom","width","height","displayName","CarouselPagination","Carousel","exports","assign","useCarousel","options","next","opts","prev"],"sourceRoot":"../../../../src","sources":["components/Carousel/index.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_reactNativeReanimated","_reactNativeReanimatedCarousel","_interopRequireWildcard","_uniwind","_utils","_context","_navButton","_paginationNavigation","_styles","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","isSharedValueProgress","value","CarouselInner","className","style","onProgressChange","children","loop","defaultIndex","rest","ref","internalRef","useRef","internalProgress","useSharedValue","resolvedClassNameStyle","useResolveClassNames","cn","vertical","itemCount","data","length","handleProgressChange","useCallback","offsetProgress","absoluteProgress","consumerProgress","undefined","contextValue","progress","carouselRef","jsxs","CarouselProgressProvider","jsx","mergeRefs","CarouselRoot","forwardRef","CarouselPaginationComponent","progressProp","carouselRefProp","loopProp","onPress","context","useCarouselProgressContext","Error","handlePress","index","carousel","current","scrollAction","resolveCarouselPaginationScrollAction","getCurrentIndex","scrollTo","containerStyle","carouselPaginationContainerClassName","dotStyle","carouselPaginationDotVariants","active","activeDotStyle","Pagination","Custom","width","height","displayName","CarouselPagination","Carousel","exports","assign","PrevButton","CarouselPrevButton","NextButton","CarouselNextButton","useCarousel","options","next","opts","prev"],"sourceRoot":"../../../../src","sources":["components/Carousel/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,119 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.CarouselNextButton = CarouselNextButton;
7
+ exports.CarouselPrevButton = CarouselPrevButton;
8
+ var _react = require("react");
9
+ var _icons = require("@cdx-ui/icons");
10
+ var _primitives = require("@cdx-ui/primitives");
11
+ var _utils = require("@cdx-ui/utils");
12
+ var _IconButton = require("../IconButton");
13
+ var _context = require("./context");
14
+ var _styles = require("./styles");
15
+ var _useCarouselActiveIndex = require("./useCarouselActiveIndex");
16
+ var _jsxRuntime = require("react/jsx-runtime");
17
+ function resolveDefaultIcon(vertical, direction) {
18
+ if (vertical) {
19
+ return direction === 'prev' ? _icons.KeyboardArrowUp : _icons.KeyboardArrowDown;
20
+ }
21
+ return direction === 'prev' ? _icons.ChevronLeft : _icons.ChevronRight;
22
+ }
23
+ function resolveDefaultAccessibilityLabel(vertical, direction) {
24
+ if (vertical) {
25
+ return direction === 'prev' ? 'Previous item' : 'Next item';
26
+ }
27
+ return direction === 'prev' ? 'Previous slide' : 'Next slide';
28
+ }
29
+ function CarouselNavButton({
30
+ direction,
31
+ progress: progressProp,
32
+ carouselRef: carouselRefProp,
33
+ itemCount: itemCountProp,
34
+ loop: loopProp,
35
+ vertical: verticalProp,
36
+ onPress,
37
+ disabled: disabledProp,
38
+ as,
39
+ accessibilityLabel,
40
+ color = 'neutral',
41
+ size = 'default',
42
+ className,
43
+ iconClassName,
44
+ ...iconButtonProps
45
+ }) {
46
+ const context = (0, _context.useCarouselProgressContext)();
47
+ const progress = progressProp ?? context?.progress;
48
+ const carouselRef = carouselRefProp ?? context?.carouselRef;
49
+ const itemCount = itemCountProp ?? context?.itemCount;
50
+ const loop = loopProp ?? context?.loop ?? true;
51
+ const vertical = verticalProp ?? context?.vertical ?? false;
52
+ if (!progress) {
53
+ throw new Error(`Carousel.${direction === 'prev' ? 'PrevButton' : 'NextButton'} must be rendered inside <Carousel> or receive an explicit \`progress\` prop.`);
54
+ }
55
+ if (!onPress && !carouselRef) {
56
+ throw new Error(`Carousel.${direction === 'prev' ? 'PrevButton' : 'NextButton'} must be rendered inside <Carousel> or receive an explicit \`carouselRef\` prop (or a custom \`onPress\`).`);
57
+ }
58
+ if (itemCount == null) {
59
+ throw new Error(`Carousel.${direction === 'prev' ? 'PrevButton' : 'NextButton'} must be rendered inside <Carousel> or receive an explicit \`itemCount\` prop.`);
60
+ }
61
+ const activeIndex = (0, _useCarouselActiveIndex.useCarouselActiveIndex)(progress);
62
+ const atStart = activeIndex <= 0;
63
+ const atEnd = activeIndex >= itemCount - 1;
64
+ const autoDisabled = !loop && (direction === 'prev' ? atStart : atEnd);
65
+ const disabled = disabledProp ?? autoDisabled;
66
+ const handlePress = (0, _react.useCallback)(() => {
67
+ if (onPress) {
68
+ onPress();
69
+ return;
70
+ }
71
+ if (direction === 'prev') {
72
+ carouselRef?.current?.prev({
73
+ animated: true
74
+ });
75
+ } else {
76
+ carouselRef?.current?.next({
77
+ animated: true
78
+ });
79
+ }
80
+ }, [onPress, carouselRef, direction]);
81
+ const dataSlot = direction === 'prev' ? 'carousel-prev-button' : 'carousel-next-button';
82
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconButton.IconButton, {
83
+ as: as ?? resolveDefaultIcon(vertical, direction),
84
+ variant: "ghost",
85
+ color: color,
86
+ size: size,
87
+ isDisabled: disabled,
88
+ onPress: handlePress,
89
+ accessibilityLabel: accessibilityLabel ?? resolveDefaultAccessibilityLabel(vertical, direction),
90
+ accessibilityState: {
91
+ disabled
92
+ },
93
+ className: (0, _utils.cn)((0, _styles.carouselNavButtonRootVariants)({
94
+ disabled
95
+ }), className),
96
+ iconClassName: (0, _utils.cn)((0, _styles.carouselNavButtonIconVariants)({
97
+ disabled
98
+ }), iconClassName),
99
+ ...iconButtonProps,
100
+ ...(0, _primitives.mergeDataAttributes)(iconButtonProps, (0, _primitives.dataAttributes)({
101
+ slot: dataSlot
102
+ }))
103
+ });
104
+ }
105
+ function CarouselPrevButton(props) {
106
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(CarouselNavButton, {
107
+ direction: "prev",
108
+ ...props
109
+ });
110
+ }
111
+ CarouselPrevButton.displayName = 'Carousel.PrevButton';
112
+ function CarouselNextButton(props) {
113
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(CarouselNavButton, {
114
+ direction: "next",
115
+ ...props
116
+ });
117
+ }
118
+ CarouselNextButton.displayName = 'Carousel.NextButton';
119
+ //# sourceMappingURL=navButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_icons","_primitives","_utils","_IconButton","_context","_styles","_useCarouselActiveIndex","_jsxRuntime","resolveDefaultIcon","vertical","direction","KeyboardArrowUp","KeyboardArrowDown","ChevronLeft","ChevronRight","resolveDefaultAccessibilityLabel","CarouselNavButton","progress","progressProp","carouselRef","carouselRefProp","itemCount","itemCountProp","loop","loopProp","verticalProp","onPress","disabled","disabledProp","as","accessibilityLabel","color","size","className","iconClassName","iconButtonProps","context","useCarouselProgressContext","Error","activeIndex","useCarouselActiveIndex","atStart","atEnd","autoDisabled","handlePress","useCallback","current","prev","animated","next","dataSlot","jsx","IconButton","variant","isDisabled","accessibilityState","cn","carouselNavButtonRootVariants","carouselNavButtonIconVariants","mergeDataAttributes","dataAttributes","slot","CarouselPrevButton","props","displayName","CarouselNextButton"],"sourceRoot":"../../../../src","sources":["components/Carousel/navButton.tsx"],"mappings":"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","ignoreList":[]}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.carouselPaginationDotVariants = exports.carouselPaginationContainerClassName = void 0;
6
+ exports.carouselPaginationDotVariants = exports.carouselPaginationContainerClassName = exports.carouselNavButtonRootVariants = exports.carouselNavButtonIconVariants = void 0;
7
7
  var _classVarianceAuthority = require("class-variance-authority");
8
8
  /** Small default gap between dots — the library ships no default spacing between pagination items. */
9
9
  const carouselPaginationContainerClassName = exports.carouselPaginationContainerClassName = 'gap-2 py-1';
@@ -18,4 +18,27 @@ const carouselPaginationDotVariants = exports.carouselPaginationDotVariants = (0
18
18
  active: false
19
19
  }
20
20
  });
21
+ /** Overrides IconButton's default disabled opacity so tertiary icon color reads clearly at bounds. */
22
+ const carouselNavButtonRootVariants = exports.carouselNavButtonRootVariants = (0, _classVarianceAuthority.cva)([], {
23
+ variants: {
24
+ disabled: {
25
+ true: 'data-[disabled=true]:opacity-100',
26
+ false: ''
27
+ }
28
+ },
29
+ defaultVariants: {
30
+ disabled: false
31
+ }
32
+ });
33
+ const carouselNavButtonIconVariants = exports.carouselNavButtonIconVariants = (0, _classVarianceAuthority.cva)([], {
34
+ variants: {
35
+ disabled: {
36
+ true: 'text-content-tertiary',
37
+ false: ''
38
+ }
39
+ },
40
+ defaultVariants: {
41
+ disabled: false
42
+ }
43
+ });
21
44
  //# sourceMappingURL=styles.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_classVarianceAuthority","require","carouselPaginationContainerClassName","exports","carouselPaginationDotVariants","cva","variants","active","true","false","defaultVariants"],"sourceRoot":"../../../../src","sources":["components/Carousel/styles.ts"],"mappings":";;;;;;AAAA,IAAAA,uBAAA,GAAAC,OAAA;AAEA;AACO,MAAMC,oCAAoC,GAAAC,OAAA,CAAAD,oCAAA,GAAG,YAAY;AAEzD,MAAME,6BAA6B,GAAAD,OAAA,CAAAC,6BAAA,GAAG,IAAAC,2BAAG,EAAC,cAAc,EAAE;EAC/DC,QAAQ,EAAE;IACRC,MAAM,EAAE;MACNC,IAAI,EAAE,2BAA2B;MACjCC,KAAK,EAAE;IACT;EACF,CAAC;EACDC,eAAe,EAAE;IACfH,MAAM,EAAE;EACV;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_classVarianceAuthority","require","carouselPaginationContainerClassName","exports","carouselPaginationDotVariants","cva","variants","active","true","false","defaultVariants","carouselNavButtonRootVariants","disabled","carouselNavButtonIconVariants"],"sourceRoot":"../../../../src","sources":["components/Carousel/styles.ts"],"mappings":";;;;;;AAAA,IAAAA,uBAAA,GAAAC,OAAA;AAEA;AACO,MAAMC,oCAAoC,GAAAC,OAAA,CAAAD,oCAAA,GAAG,YAAY;AAEzD,MAAME,6BAA6B,GAAAD,OAAA,CAAAC,6BAAA,GAAG,IAAAC,2BAAG,EAAC,cAAc,EAAE;EAC/DC,QAAQ,EAAE;IACRC,MAAM,EAAE;MACNC,IAAI,EAAE,2BAA2B;MACjCC,KAAK,EAAE;IACT;EACF,CAAC;EACDC,eAAe,EAAE;IACfH,MAAM,EAAE;EACV;AACF,CAAC,CAAC;AAIF;AACO,MAAMI,6BAA6B,GAAAR,OAAA,CAAAQ,6BAAA,GAAG,IAAAN,2BAAG,EAAC,EAAE,EAAE;EACnDC,QAAQ,EAAE;IACRM,QAAQ,EAAE;MACRJ,IAAI,EAAE,kCAAkC;MACxCC,KAAK,EAAE;IACT;EACF,CAAC;EACDC,eAAe,EAAE;IACfE,QAAQ,EAAE;EACZ;AACF,CAAC,CAAC;AAEK,MAAMC,6BAA6B,GAAAV,OAAA,CAAAU,6BAAA,GAAG,IAAAR,2BAAG,EAAC,EAAE,EAAE;EACnDC,QAAQ,EAAE;IACRM,QAAQ,EAAE;MACRJ,IAAI,EAAE,uBAAuB;MAC7BC,KAAK,EAAE;IACT;EACF,CAAC;EACDC,eAAe,EAAE;IACfE,QAAQ,EAAE;EACZ;AACF,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useCarouselActiveIndex = useCarouselActiveIndex;
7
+ var _react = require("react");
8
+ var _reactNativeReanimated = require("react-native-reanimated");
9
+ var _reactNativeWorklets = require("react-native-worklets");
10
+ let nextListenerId = 1;
11
+
12
+ /**
13
+ * Syncs `Math.round(progress)` into React state for bounds-aware disabled state.
14
+ * Do not call `getCurrentIndex()` during render — the adopted library warns against it.
15
+ *
16
+ * Uses both:
17
+ * - `useAnimatedReaction` + `scheduleOnRN` (native / Babel-transformed web worklets)
18
+ * - SharedValue `addListener` (JS-thread fallback for web hosts that serve bob-built
19
+ * `lib/` without the Reanimated Babel plugin — e.g. the docs Vite SPA)
20
+ */
21
+ function useCarouselActiveIndex(progress) {
22
+ const [activeIndex, setActiveIndex] = (0, _react.useState)(() => Math.round(progress.get()));
23
+ const setActiveIndexRef = (0, _react.useRef)(setActiveIndex);
24
+ setActiveIndexRef.current = setActiveIndex;
25
+ (0, _reactNativeReanimated.useAnimatedReaction)(() => Math.round(progress.get()), (current, previous) => {
26
+ if (current !== previous) {
27
+ (0, _reactNativeWorklets.scheduleOnRN)(setActiveIndexRef.current, current);
28
+ }
29
+ });
30
+ (0, _react.useEffect)(() => {
31
+ const listenerId = nextListenerId++;
32
+ const onChange = value => {
33
+ const next = Math.round(value);
34
+ setActiveIndexRef.current(prev => prev === next ? prev : next);
35
+ };
36
+ try {
37
+ progress.addListener(listenerId, onChange);
38
+ } catch {
39
+ // Native JS runtime rejects addListener — the worklet path above handles it.
40
+ return;
41
+ }
42
+ return () => {
43
+ try {
44
+ progress.removeListener(listenerId);
45
+ } catch {
46
+ // ignore
47
+ }
48
+ };
49
+ }, [progress]);
50
+ return activeIndex;
51
+ }
52
+ //# sourceMappingURL=useCarouselActiveIndex.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_reactNativeReanimated","_reactNativeWorklets","nextListenerId","useCarouselActiveIndex","progress","activeIndex","setActiveIndex","useState","Math","round","get","setActiveIndexRef","useRef","current","useAnimatedReaction","previous","scheduleOnRN","useEffect","listenerId","onChange","value","next","prev","addListener","removeListener"],"sourceRoot":"../../../../src","sources":["components/Carousel/useCarouselActiveIndex.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAD,OAAA;AACA,IAAAE,oBAAA,GAAAF,OAAA;AAEA,IAAIG,cAAc,GAAG,CAAC;;AAEtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,sBAAsBA,CAACC,QAA6B,EAAU;EAC5E,MAAM,CAACC,WAAW,EAAEC,cAAc,CAAC,GAAG,IAAAC,eAAQ,EAAC,MAAMC,IAAI,CAACC,KAAK,CAACL,QAAQ,CAACM,GAAG,CAAC,CAAC,CAAC,CAAC;EAChF,MAAMC,iBAAiB,GAAG,IAAAC,aAAM,EAACN,cAAc,CAAC;EAChDK,iBAAiB,CAACE,OAAO,GAAGP,cAAc;EAE1C,IAAAQ,0CAAmB,EACjB,MAAMN,IAAI,CAACC,KAAK,CAACL,QAAQ,CAACM,GAAG,CAAC,CAAC,CAAC,EAChC,CAACG,OAAO,EAAEE,QAAQ,KAAK;IACrB,IAAIF,OAAO,KAAKE,QAAQ,EAAE;MACxB,IAAAC,iCAAY,EAACL,iBAAiB,CAACE,OAAO,EAAEA,OAAO,CAAC;IAClD;EACF,CACF,CAAC;EAED,IAAAI,gBAAS,EAAC,MAAM;IACd,MAAMC,UAAU,GAAGhB,cAAc,EAAE;IACnC,MAAMiB,QAAQ,GAAIC,KAAa,IAAK;MAClC,MAAMC,IAAI,GAAGb,IAAI,CAACC,KAAK,CAACW,KAAK,CAAC;MAC9BT,iBAAiB,CAACE,OAAO,CAAES,IAAI,IAAMA,IAAI,KAAKD,IAAI,GAAGC,IAAI,GAAGD,IAAK,CAAC;IACpE,CAAC;IAED,IAAI;MACFjB,QAAQ,CAACmB,WAAW,CAACL,UAAU,EAAEC,QAAQ,CAAC;IAC5C,CAAC,CAAC,MAAM;MACN;MACA;IACF;IAEA,OAAO,MAAM;MACX,IAAI;QACFf,QAAQ,CAACoB,cAAc,CAACN,UAAU,CAAC;MACrC,CAAC,CAAC,MAAM;QACN;MAAA;IAEJ,CAAC;EACH,CAAC,EAAE,CAACd,QAAQ,CAAC,CAAC;EAEd,OAAOC,WAAW;AACpB","ignoreList":[]}
@@ -48,9 +48,11 @@ const IconButtonRoot = /*#__PURE__*/(0, _react.forwardRef)(({
48
48
  className: rootClassName,
49
49
  style: style,
50
50
  ...props,
51
- ...(0, _primitives.mergeDataAttributes)(props, (0, _primitives.dataAttributes)({
51
+ ...(0, _primitives.mergeDataAttributes)((0, _primitives.dataAttributes)({
52
52
  slot: 'icon-button'
53
- })),
53
+ }),
54
+ // Consumer/parent compound slots (e.g. carousel-prev-button) win over the default.
55
+ props),
54
56
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Icon.Icon, {
55
57
  as: IconComponent,
56
58
  className: glyphClassName
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_primitives","_utils","_Icon","_styles","_jsxRuntime","hasWarnedIconButtonTintVariant","IconButtonRoot","forwardRef","variant","variantProp","color","size","className","style","as","IconComponent","iconClassName","accessibilityRole","props","ref","useEffect","__DEV__","console","warn","rootClassName","cn","iconButtonRootVariants","glyphClassName","iconButtonGlyphVariants","iconButtonIconColorVariants","jsx","ButtonRoot","mergeDataAttributes","dataAttributes","slot","children","Icon","displayName","IconButton","exports"],"sourceRoot":"../../../../src","sources":["components/IconButton/index.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,WAAA,GAAAD,OAAA;AAOA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AAKkB,IAAAK,WAAA,GAAAL,OAAA;AAIlB;;AAGA,IAAIM,8BAA8B,GAAG,KAAK;AAmB1C,MAAMC,cAAc,gBAAG,IAAAC,iBAAU,EAC/B,CACE;EACEC,OAAO,EAAEC,WAAW,GAAG,OAAO;EAC9BC,KAAK,GAAG,SAAS;EACjBC,IAAI,GAAG,SAAS;EAChBC,SAAS;EACTC,KAAK;EACLC,EAAE,EAAEC,aAAa;EACjBC,aAAa;EACbC,iBAAiB,GAAG,QAAQ;EAC5B,GAAGC;AACL,CAAC,EACDC,GAAG,KACA;EACH,IAAAC,gBAAS,EAAC,MAAM;IACd,IAAIC,OAAO,IAAIZ,WAAW,KAAK,MAAM,IAAI,CAACJ,8BAA8B,EAAE;MACxEA,8BAA8B,GAAG,IAAI;MACrCiB,OAAO,CAACC,IAAI,CACV,oHACF,CAAC;IACH;EACF,CAAC,EAAE,CAACd,WAAW,CAAC,CAAC;EAEjB,MAAMD,OAAO,GAAGC,WAAW,KAAK,MAAM,GAAG,QAAQ,GAAGA,WAAW;EAE/D,MAAMe,aAAa,GAAG,IAAAC,SAAE,EAAC,IAAAC,8BAAsB,EAAC;IAAElB,OAAO;IAAEE,KAAK;IAAEC;EAAK,CAAC,CAAC,EAAEC,SAAS,CAAC;EAErF,MAAMe,cAAc,GAAG,IAAAF,SAAE,EACvB,IAAAG,+BAAuB,EAAC;IAAEjB;EAAK,CAAC,CAAC,EACjC,IAAAkB,mCAA2B,EAAC;IAAErB,OAAO;IAAEE;EAAM,CAAC,CAAC,EAC/CM,aACF,CAAC;EAED,oBACE,IAAAZ,WAAA,CAAA0B,GAAA,EAAC9B,WAAA,CAAA+B,UAAU;IACTZ,GAAG,EAAEA,GAAI;IACTF,iBAAiB,EAAEA,iBAAkB;IACrCL,SAAS,EAAEY,aAAc;IACzBX,KAAK,EAAEA,KAAM;IAAA,GACTK,KAAK;IAAA,GACL,IAAAc,+BAAmB,EAACd,KAAK,EAAE,IAAAe,0BAAc,EAAC;MAAEC,IAAI,EAAE;IAAc,CAAC,CAAC,CAAC;IAAAC,QAAA,eAEvE,IAAA/B,WAAA,CAAA0B,GAAA,EAAC5B,KAAA,CAAAkC,IAAI;MAACtB,EAAE,EAAEC,aAAc;MAACH,SAAS,EAAEe;IAAe,CAAE;EAAC,CAC5C,CAAC;AAEjB,CACF,CAAC;AAEDrB,cAAc,CAAC+B,WAAW,GAAG,YAAY;AAElC,MAAMC,UAAU,GAAAC,OAAA,CAAAD,UAAA,GAAGhC,cAAc","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_primitives","_utils","_Icon","_styles","_jsxRuntime","hasWarnedIconButtonTintVariant","IconButtonRoot","forwardRef","variant","variantProp","color","size","className","style","as","IconComponent","iconClassName","accessibilityRole","props","ref","useEffect","__DEV__","console","warn","rootClassName","cn","iconButtonRootVariants","glyphClassName","iconButtonGlyphVariants","iconButtonIconColorVariants","jsx","ButtonRoot","mergeDataAttributes","dataAttributes","slot","children","Icon","displayName","IconButton","exports"],"sourceRoot":"../../../../src","sources":["components/IconButton/index.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,WAAA,GAAAD,OAAA;AAOA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AAKkB,IAAAK,WAAA,GAAAL,OAAA;AAIlB;;AAGA,IAAIM,8BAA8B,GAAG,KAAK;AAmB1C,MAAMC,cAAc,gBAAG,IAAAC,iBAAU,EAC/B,CACE;EACEC,OAAO,EAAEC,WAAW,GAAG,OAAO;EAC9BC,KAAK,GAAG,SAAS;EACjBC,IAAI,GAAG,SAAS;EAChBC,SAAS;EACTC,KAAK;EACLC,EAAE,EAAEC,aAAa;EACjBC,aAAa;EACbC,iBAAiB,GAAG,QAAQ;EAC5B,GAAGC;AACL,CAAC,EACDC,GAAG,KACA;EACH,IAAAC,gBAAS,EAAC,MAAM;IACd,IAAIC,OAAO,IAAIZ,WAAW,KAAK,MAAM,IAAI,CAACJ,8BAA8B,EAAE;MACxEA,8BAA8B,GAAG,IAAI;MACrCiB,OAAO,CAACC,IAAI,CACV,oHACF,CAAC;IACH;EACF,CAAC,EAAE,CAACd,WAAW,CAAC,CAAC;EAEjB,MAAMD,OAAO,GAAGC,WAAW,KAAK,MAAM,GAAG,QAAQ,GAAGA,WAAW;EAE/D,MAAMe,aAAa,GAAG,IAAAC,SAAE,EAAC,IAAAC,8BAAsB,EAAC;IAAElB,OAAO;IAAEE,KAAK;IAAEC;EAAK,CAAC,CAAC,EAAEC,SAAS,CAAC;EAErF,MAAMe,cAAc,GAAG,IAAAF,SAAE,EACvB,IAAAG,+BAAuB,EAAC;IAAEjB;EAAK,CAAC,CAAC,EACjC,IAAAkB,mCAA2B,EAAC;IAAErB,OAAO;IAAEE;EAAM,CAAC,CAAC,EAC/CM,aACF,CAAC;EAED,oBACE,IAAAZ,WAAA,CAAA0B,GAAA,EAAC9B,WAAA,CAAA+B,UAAU;IACTZ,GAAG,EAAEA,GAAI;IACTF,iBAAiB,EAAEA,iBAAkB;IACrCL,SAAS,EAAEY,aAAc;IACzBX,KAAK,EAAEA,KAAM;IAAA,GACTK,KAAK;IAAA,GACL,IAAAc,+BAAmB,EACrB,IAAAC,0BAAc,EAAC;MAAEC,IAAI,EAAE;IAAc,CAAC,CAAC;IACvC;IACAhB,KACF,CAAC;IAAAiB,QAAA,eAED,IAAA/B,WAAA,CAAA0B,GAAA,EAAC5B,KAAA,CAAAkC,IAAI;MAACtB,EAAE,EAAEC,aAAc;MAACH,SAAS,EAAEe;IAAe,CAAE;EAAC,CAC5C,CAAC;AAEjB,CACF,CAAC;AAEDrB,cAAc,CAAC+B,WAAW,GAAG,YAAY;AAElC,MAAMC,UAAU,GAAAC,OAAA,CAAAD,UAAA,GAAGhC,cAAc","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+
3
+ import { createContext } from '@cdx-ui/utils';
4
+ export const [CarouselProgressProvider, useCarouselProgressContext] = createContext('CarouselProgress', {
5
+ strict: false
6
+ });
7
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createContext","CarouselProgressProvider","useCarouselProgressContext","strict"],"sourceRoot":"../../../../src","sources":["components/Carousel/context.ts"],"mappings":";;AAGA,SAASA,aAAa,QAAQ,eAAe;AAU7C,OAAO,MAAM,CAACC,wBAAwB,EAAEC,0BAA0B,CAAC,GACjEF,aAAa,CAAuB,kBAAkB,EAAE;EAAEG,MAAM,EAAE;AAAM,CAAC,CAAC","ignoreList":[]}
@@ -4,7 +4,9 @@ import { forwardRef, useCallback, useRef } from 'react';
4
4
  import { useSharedValue } from 'react-native-reanimated';
5
5
  import RNCarousel, { Pagination as RNCarouselPagination } from 'react-native-reanimated-carousel';
6
6
  import { useResolveClassNames } from 'uniwind';
7
- import { cn, createContext, mergeRefs } from '@cdx-ui/utils';
7
+ import { cn, mergeRefs } from '@cdx-ui/utils';
8
+ import { CarouselProgressProvider, useCarouselProgressContext } from './context';
9
+ import { CarouselNextButton, CarouselPrevButton } from './navButton';
8
10
  import { resolveCarouselPaginationScrollAction } from './paginationNavigation';
9
11
  import { carouselPaginationContainerClassName, carouselPaginationDotVariants } from './styles';
10
12
 
@@ -17,9 +19,6 @@ import { carouselPaginationContainerClassName, carouselPaginationDotVariants } f
17
19
 
18
20
  /** Mirrors the adopted library's private `DotStyle` shape (not exported) without importing it. */
19
21
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
20
- const [CarouselProgressProvider, useCarouselProgressContext] = createContext('CarouselProgress', {
21
- strict: false
22
- });
23
22
  function isSharedValueProgress(value) {
24
23
  return typeof value === 'object' && value !== null && 'value' in value;
25
24
  }
@@ -35,6 +34,8 @@ function CarouselInner({
35
34
  const internalRef = useRef(null);
36
35
  const internalProgress = useSharedValue(defaultIndex);
37
36
  const resolvedClassNameStyle = useResolveClassNames(cn(className));
37
+ const vertical = rest.vertical ?? false;
38
+ const itemCount = rest.data.length;
38
39
  const handleProgressChange = useCallback((offsetProgress, absoluteProgress) => {
39
40
  internalProgress.value = absoluteProgress;
40
41
  if (typeof onProgressChange === 'function') {
@@ -45,7 +46,9 @@ function CarouselInner({
45
46
  const contextValue = {
46
47
  progress: consumerProgress ?? internalProgress,
47
48
  carouselRef: internalRef,
48
- loop
49
+ loop,
50
+ itemCount,
51
+ vertical
49
52
  };
50
53
  return /*#__PURE__*/_jsxs(CarouselProgressProvider, {
51
54
  value: contextValue,
@@ -125,7 +128,9 @@ function CarouselPaginationComponent({
125
128
  CarouselPaginationComponent.displayName = 'Carousel.Pagination';
126
129
  const CarouselPagination = CarouselPaginationComponent;
127
130
  export const Carousel = Object.assign(CarouselRoot, {
128
- Pagination: CarouselPagination
131
+ Pagination: CarouselPagination,
132
+ PrevButton: CarouselPrevButton,
133
+ NextButton: CarouselNextButton
129
134
  });
130
135
 
131
136
  // =============================================================================
@@ -1 +1 @@
1
- {"version":3,"names":["forwardRef","useCallback","useRef","useSharedValue","RNCarousel","Pagination","RNCarouselPagination","useResolveClassNames","cn","createContext","mergeRefs","resolveCarouselPaginationScrollAction","carouselPaginationContainerClassName","carouselPaginationDotVariants","jsx","_jsx","jsxs","_jsxs","CarouselProgressProvider","useCarouselProgressContext","strict","isSharedValueProgress","value","CarouselInner","className","style","onProgressChange","children","loop","defaultIndex","rest","ref","internalRef","internalProgress","resolvedClassNameStyle","handleProgressChange","offsetProgress","absoluteProgress","consumerProgress","undefined","contextValue","progress","carouselRef","CarouselRoot","CarouselPaginationComponent","progressProp","carouselRefProp","loopProp","onPress","context","Error","handlePress","index","carousel","current","scrollAction","getCurrentIndex","data","length","scrollTo","containerStyle","dotStyle","active","activeDotStyle","Custom","width","height","displayName","CarouselPagination","Carousel","Object","assign","useCarousel","options","next","opts","prev"],"sourceRoot":"../../../../src","sources":["components/Carousel/index.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["forwardRef","useCallback","useRef","useSharedValue","RNCarousel","Pagination","RNCarouselPagination","useResolveClassNames","cn","mergeRefs","CarouselProgressProvider","useCarouselProgressContext","CarouselNextButton","CarouselPrevButton","resolveCarouselPaginationScrollAction","carouselPaginationContainerClassName","carouselPaginationDotVariants","jsx","_jsx","jsxs","_jsxs","isSharedValueProgress","value","CarouselInner","className","style","onProgressChange","children","loop","defaultIndex","rest","ref","internalRef","internalProgress","resolvedClassNameStyle","vertical","itemCount","data","length","handleProgressChange","offsetProgress","absoluteProgress","consumerProgress","undefined","contextValue","progress","carouselRef","CarouselRoot","CarouselPaginationComponent","progressProp","carouselRefProp","loopProp","onPress","context","Error","handlePress","index","carousel","current","scrollAction","getCurrentIndex","scrollTo","containerStyle","dotStyle","active","activeDotStyle","Custom","width","height","displayName","CarouselPagination","Carousel","Object","assign","PrevButton","NextButton","useCarousel","options","next","opts","prev"],"sourceRoot":"../../../../src","sources":["components/Carousel/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,114 @@
1
+ "use strict";
2
+
3
+ import { useCallback } from 'react';
4
+ import { ChevronLeft, ChevronRight, KeyboardArrowDown, KeyboardArrowUp } from '@cdx-ui/icons';
5
+ import { dataAttributes, mergeDataAttributes } from '@cdx-ui/primitives';
6
+ import { cn } from '@cdx-ui/utils';
7
+ import { IconButton } from '../IconButton';
8
+ import { useCarouselProgressContext } from './context';
9
+ import { carouselNavButtonIconVariants, carouselNavButtonRootVariants } from './styles';
10
+ import { useCarouselActiveIndex } from './useCarouselActiveIndex';
11
+ import { jsx as _jsx } from "react/jsx-runtime";
12
+ function resolveDefaultIcon(vertical, direction) {
13
+ if (vertical) {
14
+ return direction === 'prev' ? KeyboardArrowUp : KeyboardArrowDown;
15
+ }
16
+ return direction === 'prev' ? ChevronLeft : ChevronRight;
17
+ }
18
+ function resolveDefaultAccessibilityLabel(vertical, direction) {
19
+ if (vertical) {
20
+ return direction === 'prev' ? 'Previous item' : 'Next item';
21
+ }
22
+ return direction === 'prev' ? 'Previous slide' : 'Next slide';
23
+ }
24
+ function CarouselNavButton({
25
+ direction,
26
+ progress: progressProp,
27
+ carouselRef: carouselRefProp,
28
+ itemCount: itemCountProp,
29
+ loop: loopProp,
30
+ vertical: verticalProp,
31
+ onPress,
32
+ disabled: disabledProp,
33
+ as,
34
+ accessibilityLabel,
35
+ color = 'neutral',
36
+ size = 'default',
37
+ className,
38
+ iconClassName,
39
+ ...iconButtonProps
40
+ }) {
41
+ const context = useCarouselProgressContext();
42
+ const progress = progressProp ?? context?.progress;
43
+ const carouselRef = carouselRefProp ?? context?.carouselRef;
44
+ const itemCount = itemCountProp ?? context?.itemCount;
45
+ const loop = loopProp ?? context?.loop ?? true;
46
+ const vertical = verticalProp ?? context?.vertical ?? false;
47
+ if (!progress) {
48
+ throw new Error(`Carousel.${direction === 'prev' ? 'PrevButton' : 'NextButton'} must be rendered inside <Carousel> or receive an explicit \`progress\` prop.`);
49
+ }
50
+ if (!onPress && !carouselRef) {
51
+ throw new Error(`Carousel.${direction === 'prev' ? 'PrevButton' : 'NextButton'} must be rendered inside <Carousel> or receive an explicit \`carouselRef\` prop (or a custom \`onPress\`).`);
52
+ }
53
+ if (itemCount == null) {
54
+ throw new Error(`Carousel.${direction === 'prev' ? 'PrevButton' : 'NextButton'} must be rendered inside <Carousel> or receive an explicit \`itemCount\` prop.`);
55
+ }
56
+ const activeIndex = useCarouselActiveIndex(progress);
57
+ const atStart = activeIndex <= 0;
58
+ const atEnd = activeIndex >= itemCount - 1;
59
+ const autoDisabled = !loop && (direction === 'prev' ? atStart : atEnd);
60
+ const disabled = disabledProp ?? autoDisabled;
61
+ const handlePress = useCallback(() => {
62
+ if (onPress) {
63
+ onPress();
64
+ return;
65
+ }
66
+ if (direction === 'prev') {
67
+ carouselRef?.current?.prev({
68
+ animated: true
69
+ });
70
+ } else {
71
+ carouselRef?.current?.next({
72
+ animated: true
73
+ });
74
+ }
75
+ }, [onPress, carouselRef, direction]);
76
+ const dataSlot = direction === 'prev' ? 'carousel-prev-button' : 'carousel-next-button';
77
+ return /*#__PURE__*/_jsx(IconButton, {
78
+ as: as ?? resolveDefaultIcon(vertical, direction),
79
+ variant: "ghost",
80
+ color: color,
81
+ size: size,
82
+ isDisabled: disabled,
83
+ onPress: handlePress,
84
+ accessibilityLabel: accessibilityLabel ?? resolveDefaultAccessibilityLabel(vertical, direction),
85
+ accessibilityState: {
86
+ disabled
87
+ },
88
+ className: cn(carouselNavButtonRootVariants({
89
+ disabled
90
+ }), className),
91
+ iconClassName: cn(carouselNavButtonIconVariants({
92
+ disabled
93
+ }), iconClassName),
94
+ ...iconButtonProps,
95
+ ...mergeDataAttributes(iconButtonProps, dataAttributes({
96
+ slot: dataSlot
97
+ }))
98
+ });
99
+ }
100
+ export function CarouselPrevButton(props) {
101
+ return /*#__PURE__*/_jsx(CarouselNavButton, {
102
+ direction: "prev",
103
+ ...props
104
+ });
105
+ }
106
+ CarouselPrevButton.displayName = 'Carousel.PrevButton';
107
+ export function CarouselNextButton(props) {
108
+ return /*#__PURE__*/_jsx(CarouselNavButton, {
109
+ direction: "next",
110
+ ...props
111
+ });
112
+ }
113
+ CarouselNextButton.displayName = 'Carousel.NextButton';
114
+ //# sourceMappingURL=navButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useCallback","ChevronLeft","ChevronRight","KeyboardArrowDown","KeyboardArrowUp","dataAttributes","mergeDataAttributes","cn","IconButton","useCarouselProgressContext","carouselNavButtonIconVariants","carouselNavButtonRootVariants","useCarouselActiveIndex","jsx","_jsx","resolveDefaultIcon","vertical","direction","resolveDefaultAccessibilityLabel","CarouselNavButton","progress","progressProp","carouselRef","carouselRefProp","itemCount","itemCountProp","loop","loopProp","verticalProp","onPress","disabled","disabledProp","as","accessibilityLabel","color","size","className","iconClassName","iconButtonProps","context","Error","activeIndex","atStart","atEnd","autoDisabled","handlePress","current","prev","animated","next","dataSlot","variant","isDisabled","accessibilityState","slot","CarouselPrevButton","props","displayName","CarouselNextButton"],"sourceRoot":"../../../../src","sources":["components/Carousel/navButton.tsx"],"mappings":"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","ignoreList":[]}
@@ -15,4 +15,27 @@ export const carouselPaginationDotVariants = cva('rounded-full', {
15
15
  active: false
16
16
  }
17
17
  });
18
+ /** Overrides IconButton's default disabled opacity so tertiary icon color reads clearly at bounds. */
19
+ export const carouselNavButtonRootVariants = cva([], {
20
+ variants: {
21
+ disabled: {
22
+ true: 'data-[disabled=true]:opacity-100',
23
+ false: ''
24
+ }
25
+ },
26
+ defaultVariants: {
27
+ disabled: false
28
+ }
29
+ });
30
+ export const carouselNavButtonIconVariants = cva([], {
31
+ variants: {
32
+ disabled: {
33
+ true: 'text-content-tertiary',
34
+ false: ''
35
+ }
36
+ },
37
+ defaultVariants: {
38
+ disabled: false
39
+ }
40
+ });
18
41
  //# sourceMappingURL=styles.js.map