@cdx-ui/components 0.0.1-beta.115 → 0.0.1-beta.117

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 (30) hide show
  1. package/README.md +1 -1
  2. package/lib/commonjs/components/Slider/getSliderPopupPosition.js +43 -0
  3. package/lib/commonjs/components/Slider/getSliderPopupPosition.js.map +1 -0
  4. package/lib/commonjs/components/Slider/index.js +363 -0
  5. package/lib/commonjs/components/Slider/index.js.map +1 -0
  6. package/lib/commonjs/components/Slider/styles.js +112 -0
  7. package/lib/commonjs/components/Slider/styles.js.map +1 -0
  8. package/lib/commonjs/components/index.js +12 -0
  9. package/lib/commonjs/components/index.js.map +1 -1
  10. package/lib/module/components/Slider/getSliderPopupPosition.js +38 -0
  11. package/lib/module/components/Slider/getSliderPopupPosition.js.map +1 -0
  12. package/lib/module/components/Slider/index.js +359 -0
  13. package/lib/module/components/Slider/index.js.map +1 -0
  14. package/lib/module/components/Slider/styles.js +108 -0
  15. package/lib/module/components/Slider/styles.js.map +1 -0
  16. package/lib/module/components/index.js +1 -0
  17. package/lib/module/components/index.js.map +1 -1
  18. package/lib/typescript/components/Slider/getSliderPopupPosition.d.ts +10 -0
  19. package/lib/typescript/components/Slider/getSliderPopupPosition.d.ts.map +1 -0
  20. package/lib/typescript/components/Slider/index.d.ts +61 -0
  21. package/lib/typescript/components/Slider/index.d.ts.map +1 -0
  22. package/lib/typescript/components/Slider/styles.d.ts +30 -0
  23. package/lib/typescript/components/Slider/styles.d.ts.map +1 -0
  24. package/lib/typescript/components/index.d.ts +1 -0
  25. package/lib/typescript/components/index.d.ts.map +1 -1
  26. package/package.json +4 -4
  27. package/src/components/Slider/getSliderPopupPosition.ts +37 -0
  28. package/src/components/Slider/index.tsx +456 -0
  29. package/src/components/Slider/styles.ts +147 -0
  30. package/src/components/index.ts +1 -0
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+
3
+ import { Platform } from 'react-native';
4
+ export const SLIDER_POPUP_OFFSET = 8;
5
+ export const SLIDER_POPUP_Z_INDEX = 9999;
6
+
7
+ /**
8
+ * Popover-style placement for the slider value tooltip, modeled after anchored
9
+ * popover content positioning (placement + offset relative to a measured trigger).
10
+ */
11
+ export function getSliderPopupAnchorStyle(anchor, orientation, offset = SLIDER_POPUP_OFFSET) {
12
+ const position = Platform.OS === 'web' ? 'fixed' : 'absolute';
13
+ if (orientation === 'vertical') {
14
+ const centerY = anchor.y + anchor.height / 2;
15
+ return {
16
+ position,
17
+ left: anchor.x + anchor.width + offset,
18
+ top: centerY,
19
+ zIndex: SLIDER_POPUP_Z_INDEX,
20
+ transform: [{
21
+ translateY: '-50%'
22
+ }]
23
+ };
24
+ }
25
+ const centerX = anchor.x + anchor.width / 2;
26
+ return {
27
+ position,
28
+ left: centerX,
29
+ top: anchor.y - offset,
30
+ zIndex: SLIDER_POPUP_Z_INDEX,
31
+ transform: [{
32
+ translateX: '-50%'
33
+ }, {
34
+ translateY: '-100%'
35
+ }]
36
+ };
37
+ }
38
+ //# sourceMappingURL=getSliderPopupPosition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Platform","SLIDER_POPUP_OFFSET","SLIDER_POPUP_Z_INDEX","getSliderPopupAnchorStyle","anchor","orientation","offset","position","OS","centerY","y","height","left","x","width","top","zIndex","transform","translateY","centerX","translateX"],"sourceRoot":"../../../../src","sources":["components/Slider/getSliderPopupPosition.ts"],"mappings":";;AAAA,SAASA,QAAQ,QAAwB,cAAc;AAGvD,OAAO,MAAMC,mBAAmB,GAAG,CAAC;AACpC,OAAO,MAAMC,oBAAoB,GAAG,IAAI;;AAExC;AACA;AACA;AACA;AACA,OAAO,SAASC,yBAAyBA,CACvCC,MAAoB,EACpBC,WAA8B,EAC9BC,MAAM,GAAGL,mBAAmB,EACjB;EACX,MAAMM,QAAQ,GAAIP,QAAQ,CAACQ,EAAE,KAAK,KAAK,GAAG,OAAO,GAAG,UAAoC;EAExF,IAAIH,WAAW,KAAK,UAAU,EAAE;IAC9B,MAAMI,OAAO,GAAGL,MAAM,CAACM,CAAC,GAAGN,MAAM,CAACO,MAAM,GAAG,CAAC;IAC5C,OAAO;MACLJ,QAAQ;MACRK,IAAI,EAAER,MAAM,CAACS,CAAC,GAAGT,MAAM,CAACU,KAAK,GAAGR,MAAM;MACtCS,GAAG,EAAEN,OAAO;MACZO,MAAM,EAAEd,oBAAoB;MAC5Be,SAAS,EAAE,CAAC;QAAEC,UAAU,EAAE;MAAO,CAAC;IACpC,CAAC;EACH;EAEA,MAAMC,OAAO,GAAGf,MAAM,CAACS,CAAC,GAAGT,MAAM,CAACU,KAAK,GAAG,CAAC;EAC3C,OAAO;IACLP,QAAQ;IACRK,IAAI,EAAEO,OAAO;IACbJ,GAAG,EAAEX,MAAM,CAACM,CAAC,GAAGJ,MAAM;IACtBU,MAAM,EAAEd,oBAAoB;IAC5Be,SAAS,EAAE,CAAC;MAAEG,UAAU,EAAE;IAAO,CAAC,EAAE;MAAEF,UAAU,EAAE;IAAQ,CAAC;EAC7D,CAAC;AACH","ignoreList":[]}
@@ -0,0 +1,359 @@
1
+ "use strict";
2
+
3
+ import { Children, cloneElement, forwardRef, isValidElement, useId, useMemo } from 'react';
4
+ import { Platform, StyleSheet, Text, View } from 'react-native';
5
+ import { SliderRoot as SliderRootPrimitive, SliderRail as SliderRailPrimitive, SliderThumb as SliderThumbPrimitive, Slot, Portal, createPortalFn, useAnchorPosition, dataAttributes, getMarkerPositionStyle, getMarkerStepValues, mergeDataAttributes, percentToFillExtent, useSliderContext, valueToPercent } from '@cdx-ui/primitives';
6
+ import { cn, ParentContext, useParentContext, useStyleContext } from '@cdx-ui/utils';
7
+ import { sliderMarkerVariants, sliderPopupBaseVariants, sliderRootVariants, sliderRailVariants, sliderRailColorVariants, sliderTrackColorVariants, sliderTrackVariants, sliderThumbVariants } from './styles';
8
+ import { getSliderPopupAnchorStyle, SLIDER_POPUP_Z_INDEX } from './getSliderPopupPosition';
9
+ import { jsx as _jsx } from "react/jsx-runtime";
10
+ const SCOPE = 'SLIDER';
11
+ const useSliderStyleContext = () => {
12
+ const {
13
+ color,
14
+ orientation
15
+ } = useStyleContext(SCOPE);
16
+ return {
17
+ color,
18
+ orientation: orientation ?? 'horizontal'
19
+ };
20
+ };
21
+ const SliderRoot = /*#__PURE__*/forwardRef(({
22
+ className,
23
+ style,
24
+ color = 'action',
25
+ orientation = 'horizontal',
26
+ children,
27
+ isDisabled,
28
+ ...props
29
+ }, ref) => {
30
+ const parent = useParentContext();
31
+ const ctx = useMemo(() => ({
32
+ ...parent,
33
+ [SCOPE]: {
34
+ color,
35
+ orientation
36
+ }
37
+ }), [color, orientation, parent]);
38
+ const computedClassName = cn(sliderRootVariants({
39
+ orientation
40
+ }), className);
41
+ return /*#__PURE__*/_jsx(ParentContext.Provider, {
42
+ value: ctx,
43
+ children: /*#__PURE__*/_jsx(SliderRootPrimitive, {
44
+ ref: ref,
45
+ className: computedClassName,
46
+ style: style,
47
+ orientation: orientation,
48
+ isDisabled: isDisabled,
49
+ ...props,
50
+ children: children
51
+ })
52
+ });
53
+ });
54
+ SliderRoot.displayName = 'Slider';
55
+ const SliderRail = /*#__PURE__*/forwardRef(({
56
+ className,
57
+ style,
58
+ children,
59
+ ...props
60
+ }, ref) => {
61
+ const {
62
+ orientation,
63
+ color
64
+ } = useSliderStyleContext();
65
+ const computedClassName = cn(sliderRailVariants({
66
+ orientation
67
+ }), sliderRailColorVariants({
68
+ color
69
+ }), className);
70
+ return /*#__PURE__*/_jsx(SliderRailPrimitive, {
71
+ ref: ref,
72
+ className: computedClassName,
73
+ style: style,
74
+ ...props,
75
+ children: children
76
+ });
77
+ });
78
+ SliderRail.displayName = 'Slider.Rail';
79
+ const SliderTrack = /*#__PURE__*/forwardRef(({
80
+ asChild,
81
+ className,
82
+ style,
83
+ children,
84
+ testID,
85
+ ...props
86
+ }, ref) => {
87
+ const {
88
+ color,
89
+ orientation
90
+ } = useSliderStyleContext();
91
+ const {
92
+ percent,
93
+ isDragging,
94
+ trackLayout,
95
+ thumbSize
96
+ } = useSliderContext();
97
+ const fillStyle = useMemo(() => {
98
+ const trackSize = trackLayout == null ? 0 : orientation === 'horizontal' ? trackLayout.width : trackLayout.height;
99
+ if (trackSize <= 0) {
100
+ return orientation === 'vertical' ? {
101
+ position: 'absolute',
102
+ left: 0,
103
+ right: 0,
104
+ bottom: 0,
105
+ height: 0
106
+ } : {
107
+ position: 'absolute',
108
+ top: 0,
109
+ bottom: 0,
110
+ left: 0,
111
+ width: 0
112
+ };
113
+ }
114
+ const extent = percentToFillExtent(percent, trackSize, thumbSize);
115
+ if (orientation === 'vertical') {
116
+ return {
117
+ position: 'absolute',
118
+ left: 0,
119
+ right: 0,
120
+ bottom: 0,
121
+ height: extent
122
+ };
123
+ }
124
+ return {
125
+ position: 'absolute',
126
+ top: 0,
127
+ bottom: 0,
128
+ left: 0,
129
+ width: extent
130
+ };
131
+ }, [orientation, percent, thumbSize, trackLayout]);
132
+ const computedClassName = cn(sliderTrackVariants({
133
+ orientation
134
+ }), sliderTrackColorVariants({
135
+ color
136
+ }), className);
137
+ const Comp = asChild ? Slot : View;
138
+ return /*#__PURE__*/_jsx(Comp, {
139
+ ref: ref,
140
+ testID: testID,
141
+ className: computedClassName,
142
+ pointerEvents: "none",
143
+ style: [fillStyle, style],
144
+ accessibilityElementsHidden: true,
145
+ importantForAccessibility: "no-hide-descendants",
146
+ ...mergeDataAttributes(props, dataAttributes({
147
+ slot: 'slider-track',
148
+ dragging: isDragging
149
+ })),
150
+ children: children
151
+ });
152
+ });
153
+ SliderTrack.displayName = 'Slider.Track';
154
+ const SliderThumb = /*#__PURE__*/forwardRef(({
155
+ className,
156
+ style,
157
+ children,
158
+ ...props
159
+ }, ref) => {
160
+ const {
161
+ color
162
+ } = useSliderStyleContext();
163
+ const computedClassName = cn(sliderThumbVariants({
164
+ color
165
+ }), className);
166
+ return /*#__PURE__*/_jsx(SliderThumbPrimitive, {
167
+ ref: ref,
168
+ className: computedClassName,
169
+ style: style,
170
+ ...props,
171
+ children: children
172
+ });
173
+ });
174
+ SliderThumb.displayName = 'Slider.Thumb';
175
+ function dataOrientation(orientation) {
176
+ return {
177
+ 'data-orientation': orientation ?? 'horizontal'
178
+ };
179
+ }
180
+ function renderPopupLabel(children, getValueLabel) {
181
+ if (children == null || typeof children === 'string' || typeof children === 'number') {
182
+ return /*#__PURE__*/_jsx(Text, {
183
+ className: "text-content-primary text-xs font-medium select-none",
184
+ selectable: false,
185
+ children: children ?? getValueLabel()
186
+ });
187
+ }
188
+ return children;
189
+ }
190
+ const SliderPopup = /*#__PURE__*/forwardRef(({
191
+ asChild,
192
+ className,
193
+ style,
194
+ children,
195
+ ...props
196
+ }, ref) => {
197
+ const {
198
+ orientation
199
+ } = useSliderStyleContext();
200
+ const {
201
+ isDragging,
202
+ isHovered,
203
+ isFocused,
204
+ getValueLabel,
205
+ thumbRef,
206
+ percent
207
+ } = useSliderContext();
208
+ const portalName = useId();
209
+ const visible = isDragging || isHovered || isFocused;
210
+ const anchorLayout = useAnchorPosition(thumbRef, visible, {
211
+ remeasureKey: percent,
212
+ trackWhileOpen: true
213
+ });
214
+ if (!visible || anchorLayout == null) {
215
+ return null;
216
+ }
217
+ const label = renderPopupLabel(children, getValueLabel);
218
+ const computedClassName = cn(sliderPopupBaseVariants(), className);
219
+ const Comp = asChild ? Slot : View;
220
+ const anchorStyle = getSliderPopupAnchorStyle(anchorLayout, orientation);
221
+ const popup = /*#__PURE__*/_jsx(View, {
222
+ pointerEvents: "none",
223
+ style: anchorStyle,
224
+ children: /*#__PURE__*/_jsx(Comp, {
225
+ ref: ref,
226
+ className: computedClassName,
227
+ style: style,
228
+ accessibilityElementsHidden: true,
229
+ importantForAccessibility: "no-hide-descendants",
230
+ ...mergeDataAttributes(props, dataAttributes({
231
+ slot: 'slider-popup',
232
+ visible: true
233
+ }), dataOrientation(orientation)),
234
+ children: label
235
+ })
236
+ });
237
+ if (Platform.OS === 'web' && createPortalFn && typeof document !== 'undefined') {
238
+ return createPortalFn(popup, document.body);
239
+ }
240
+ return /*#__PURE__*/_jsx(Portal, {
241
+ name: portalName,
242
+ children: /*#__PURE__*/_jsx(View, {
243
+ pointerEvents: "box-none",
244
+ style: [StyleSheet.absoluteFill, {
245
+ zIndex: SLIDER_POPUP_Z_INDEX
246
+ }],
247
+ children: popup
248
+ })
249
+ });
250
+ });
251
+ SliderPopup.displayName = 'Slider.Popup';
252
+ const SliderMarker = /*#__PURE__*/forwardRef(({
253
+ asChild,
254
+ className,
255
+ style,
256
+ value,
257
+ testID,
258
+ ...props
259
+ }, ref) => {
260
+ const {
261
+ value: currentValue,
262
+ min,
263
+ max,
264
+ orientation,
265
+ trackLayout,
266
+ thumbSize
267
+ } = useSliderContext();
268
+ const markerStyle = useMemo(() => {
269
+ if (value == null) {
270
+ return undefined;
271
+ }
272
+ const percent = valueToPercent(value, min, max);
273
+ return getMarkerPositionStyle(percent, orientation, trackLayout, thumbSize);
274
+ }, [max, min, orientation, thumbSize, trackLayout, value]);
275
+ const isFilled = value != null && value <= currentValue;
276
+ const computedClassName = cn(sliderMarkerVariants({
277
+ filled: isFilled
278
+ }), className);
279
+ const Comp = asChild ? Slot : View;
280
+ return /*#__PURE__*/_jsx(Comp, {
281
+ ref: ref,
282
+ testID: testID,
283
+ className: computedClassName,
284
+ style: [markerStyle, style],
285
+ accessibilityElementsHidden: true,
286
+ importantForAccessibility: "no-hide-descendants",
287
+ ...mergeDataAttributes(props, dataAttributes({
288
+ slot: 'slider-marker',
289
+ value: value == null ? undefined : String(value),
290
+ filled: isFilled
291
+ }))
292
+ });
293
+ });
294
+ SliderMarker.displayName = 'Slider.Marker';
295
+ function isSliderMarkerElement(child) {
296
+ if (! /*#__PURE__*/isValidElement(child)) {
297
+ return false;
298
+ }
299
+ const type = child.type;
300
+ return type.displayName === 'Slider.Marker';
301
+ }
302
+ const SliderMarkerGroup = /*#__PURE__*/forwardRef(({
303
+ asChild,
304
+ className,
305
+ style,
306
+ children,
307
+ testID,
308
+ ...props
309
+ }, ref) => {
310
+ const {
311
+ min,
312
+ max,
313
+ step
314
+ } = useSliderContext();
315
+ const markers = useMemo(() => {
316
+ if (step <= 0 || max <= min) {
317
+ return null;
318
+ }
319
+ const childList = Children.toArray(children);
320
+ if (childList.length === 0) {
321
+ return null;
322
+ }
323
+ const templateMarker = childList.find(child => isSliderMarkerElement(child) && child.props.value == null);
324
+ if (templateMarker) {
325
+ return getMarkerStepValues(min, max, step).map(markerValue => /*#__PURE__*/cloneElement(templateMarker, {
326
+ key: markerValue,
327
+ value: markerValue
328
+ }));
329
+ }
330
+ return childList;
331
+ }, [children, max, min, step]);
332
+ if (!markers) {
333
+ return null;
334
+ }
335
+ const Comp = asChild ? Slot : View;
336
+ return /*#__PURE__*/_jsx(Comp, {
337
+ ref: ref,
338
+ testID: testID,
339
+ className: cn('absolute inset-0 z-[1]', className),
340
+ style: style,
341
+ pointerEvents: "none",
342
+ accessibilityElementsHidden: true,
343
+ importantForAccessibility: "no-hide-descendants",
344
+ ...mergeDataAttributes(props, dataAttributes({
345
+ slot: 'slider-marker-group'
346
+ })),
347
+ children: markers
348
+ });
349
+ });
350
+ SliderMarkerGroup.displayName = 'Slider.MarkerGroup';
351
+ export const Slider = Object.assign(SliderRoot, {
352
+ Rail: SliderRail,
353
+ Track: SliderTrack,
354
+ Thumb: SliderThumb,
355
+ Popup: SliderPopup,
356
+ MarkerGroup: SliderMarkerGroup,
357
+ Marker: SliderMarker
358
+ });
359
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Children","cloneElement","forwardRef","isValidElement","useId","useMemo","Platform","StyleSheet","Text","View","SliderRoot","SliderRootPrimitive","SliderRail","SliderRailPrimitive","SliderThumb","SliderThumbPrimitive","Slot","Portal","createPortalFn","useAnchorPosition","dataAttributes","getMarkerPositionStyle","getMarkerStepValues","mergeDataAttributes","percentToFillExtent","useSliderContext","valueToPercent","cn","ParentContext","useParentContext","useStyleContext","sliderMarkerVariants","sliderPopupBaseVariants","sliderRootVariants","sliderRailVariants","sliderRailColorVariants","sliderTrackColorVariants","sliderTrackVariants","sliderThumbVariants","getSliderPopupAnchorStyle","SLIDER_POPUP_Z_INDEX","jsx","_jsx","SCOPE","useSliderStyleContext","color","orientation","className","style","children","isDisabled","props","ref","parent","ctx","computedClassName","Provider","value","displayName","SliderTrack","asChild","testID","percent","isDragging","trackLayout","thumbSize","fillStyle","trackSize","width","height","position","left","right","bottom","top","extent","Comp","pointerEvents","accessibilityElementsHidden","importantForAccessibility","slot","dragging","dataOrientation","renderPopupLabel","getValueLabel","selectable","SliderPopup","isHovered","isFocused","thumbRef","portalName","visible","anchorLayout","remeasureKey","trackWhileOpen","label","anchorStyle","popup","OS","document","body","name","absoluteFill","zIndex","SliderMarker","currentValue","min","max","markerStyle","undefined","isFilled","filled","String","isSliderMarkerElement","child","type","SliderMarkerGroup","step","markers","childList","toArray","length","templateMarker","find","map","markerValue","key","Slider","Object","assign","Rail","Track","Thumb","Popup","MarkerGroup","Marker"],"sourceRoot":"../../../../src","sources":["components/Slider/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+
3
+ import { Platform } from 'react-native';
4
+ import { cva } from 'class-variance-authority';
5
+ import { DISABLED_CURSOR, TRANSITION_COLORS } from '../../styles/constants';
6
+ export const sliderColorOptions = ['action', 'danger', 'warning', 'success', 'info'];
7
+ export const sliderRootVariants = cva(['relative w-full touch-none select-none', 'data-[disabled=true]:opacity-[var(--opacity-disabled)]', DISABLED_CURSOR, 'web:outline-none'], {
8
+ variants: {
9
+ orientation: {
10
+ horizontal: 'h-5 overflow-visible',
11
+ vertical: 'flex h-48 w-8 items-center justify-center overflow-visible'
12
+ }
13
+ },
14
+ defaultVariants: {
15
+ orientation: 'horizontal'
16
+ }
17
+ });
18
+ export const sliderRailVariants = cva(['relative w-full overflow-hidden rounded-full', TRANSITION_COLORS], {
19
+ variants: {
20
+ orientation: {
21
+ horizontal: 'h-1.5',
22
+ vertical: 'h-full w-1.5'
23
+ }
24
+ },
25
+ defaultVariants: {
26
+ orientation: 'horizontal'
27
+ }
28
+ });
29
+ export const sliderRailColorVariants = cva([], {
30
+ variants: {
31
+ color: {
32
+ action: 'bg-surface-action-subtle',
33
+ danger: 'bg-surface-danger-subtle',
34
+ warning: 'bg-surface-warning-subtle',
35
+ success: 'bg-surface-success-subtle',
36
+ info: 'bg-surface-info-subtle'
37
+ }
38
+ },
39
+ defaultVariants: {
40
+ color: 'action'
41
+ }
42
+ });
43
+ export const sliderTrackVariants = cva(['rounded-full transition-none'], {
44
+ variants: {
45
+ orientation: {
46
+ horizontal: '',
47
+ vertical: ''
48
+ }
49
+ },
50
+ defaultVariants: {
51
+ orientation: 'horizontal'
52
+ }
53
+ });
54
+ export const sliderTrackColorVariants = cva([], {
55
+ variants: {
56
+ color: {
57
+ action: 'bg-surface-action-strong',
58
+ danger: 'bg-surface-danger-strong',
59
+ warning: 'bg-surface-warning-strong',
60
+ success: 'bg-surface-success-strong',
61
+ info: 'bg-surface-info-strong'
62
+ }
63
+ },
64
+ defaultVariants: {
65
+ color: 'action'
66
+ }
67
+ });
68
+ export const sliderThumbVariants = cva(['box-border size-5 z-2 overflow-visible rounded-full bg-white border-3 border-solid shadow-md', 'web:cursor-grab web:active:cursor-grabbing', 'transition-[transform,box-shadow,opacity] duration-150', 'data-[dragging=true]:transition-none', Platform.select({
69
+ default: 'data-[active=true]:scale-105',
70
+ web: 'data-[hover=true]:scale-110 data-[dragging=true]:scale-110 data-[hover=true]:shadow-lg web:data-[focus-visible=true]:ring-4 web:data-[focus-visible=true]:ring-stroke-focus'
71
+ })], {
72
+ variants: {
73
+ color: {
74
+ action: 'border-surface-action-strong',
75
+ danger: 'border-surface-danger-strong',
76
+ warning: 'border-surface-warning-strong',
77
+ success: 'border-surface-success-strong',
78
+ info: 'border-surface-info-strong'
79
+ }
80
+ },
81
+ defaultVariants: {
82
+ color: 'action'
83
+ }
84
+ });
85
+ export const sliderThumbHaloVariants = cva(['hidden'], {
86
+ variants: {
87
+ visible: {
88
+ true: '',
89
+ false: ''
90
+ }
91
+ },
92
+ defaultVariants: {
93
+ visible: false
94
+ }
95
+ });
96
+ export const sliderPopupBaseVariants = cva(['rounded-md bg-white px-2 py-1', 'text-content-primary text-xs font-medium shadow-md select-none pointer-events-none']);
97
+ export const sliderMarkerVariants = cva(['rounded-full size-0.5 shrink-0', 'data-[value=0]:hidden data-[value=100]:hidden'], {
98
+ variants: {
99
+ filled: {
100
+ true: 'bg-surface-action-subtle',
101
+ false: 'bg-content-action'
102
+ }
103
+ },
104
+ defaultVariants: {
105
+ filled: false
106
+ }
107
+ });
108
+ //# sourceMappingURL=styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Platform","cva","DISABLED_CURSOR","TRANSITION_COLORS","sliderColorOptions","sliderRootVariants","variants","orientation","horizontal","vertical","defaultVariants","sliderRailVariants","sliderRailColorVariants","color","action","danger","warning","success","info","sliderTrackVariants","sliderTrackColorVariants","sliderThumbVariants","select","default","web","sliderThumbHaloVariants","visible","true","false","sliderPopupBaseVariants","sliderMarkerVariants","filled"],"sourceRoot":"../../../../src","sources":["components/Slider/styles.ts"],"mappings":"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","ignoreList":[]}
@@ -28,6 +28,7 @@ export * from './ProgressSegmented';
28
28
  export * from './Radio';
29
29
  export * from './ScopedTheme';
30
30
  export * from './Select';
31
+ export * from './Slider';
31
32
  export * from './VirtualizedList';
32
33
  export * from './Switch';
33
34
  export * from './Textarea';
@@ -1 +1 @@
1
- {"version":3,"names":["HStack","VStack"],"sourceRoot":"../../../src","sources":["components/index.ts"],"mappings":";;AAAA,cAAc,SAAS;AACvB,cAAc,eAAe;AAC7B,cAAc,UAAU;AACxB,cAAc,SAAS;AACvB,cAAc,eAAe;AAC7B,cAAc,OAAO;AACrB,cAAc,UAAU;AACxB,cAAc,QAAQ;AACtB,cAAc,YAAY;AAC1B,cAAc,YAAY;AAC1B,cAAc,QAAQ;AACtB,cAAc,iBAAiB;AAC/B,cAAc,UAAU;AACxB,cAAc,WAAW;AACzB,cAAc,SAAS;AACvB,cAAc,QAAQ;AACtB,cAAc,SAAS;AACvB,cAAc,uBAAuB;AACrC,cAAc,SAAS;AACvB,cAAc,YAAY;AAC1B,cAAc,QAAQ;AACtB,cAAc,YAAY;AAC1B,cAAc,eAAe;AAC7B,cAAc,YAAY;AAC1B,cAAc,qBAAqB;AACnC,cAAc,SAAS;AACvB,cAAc,eAAe;AAC7B,cAAc,UAAU;AACxB,cAAc,mBAAmB;AACjC,cAAc,UAAU;AACxB,cAAc,YAAY;AAC1B,cAAc,QAAQ;AACtB,cAAc,SAAS;AACvB,SAASA,MAAM,EAAEC,MAAM,QAAQ,SAAS;AACxC,cAAc,WAAW;AACzB,cAAc,QAAQ;AACtB,cAAc,QAAQ;AACtB,cAAc,cAAc;AAC5B,cAAc,qBAAqB","ignoreList":[]}
1
+ {"version":3,"names":["HStack","VStack"],"sourceRoot":"../../../src","sources":["components/index.ts"],"mappings":";;AAAA,cAAc,SAAS;AACvB,cAAc,eAAe;AAC7B,cAAc,UAAU;AACxB,cAAc,SAAS;AACvB,cAAc,eAAe;AAC7B,cAAc,OAAO;AACrB,cAAc,UAAU;AACxB,cAAc,QAAQ;AACtB,cAAc,YAAY;AAC1B,cAAc,YAAY;AAC1B,cAAc,QAAQ;AACtB,cAAc,iBAAiB;AAC/B,cAAc,UAAU;AACxB,cAAc,WAAW;AACzB,cAAc,SAAS;AACvB,cAAc,QAAQ;AACtB,cAAc,SAAS;AACvB,cAAc,uBAAuB;AACrC,cAAc,SAAS;AACvB,cAAc,YAAY;AAC1B,cAAc,QAAQ;AACtB,cAAc,YAAY;AAC1B,cAAc,eAAe;AAC7B,cAAc,YAAY;AAC1B,cAAc,qBAAqB;AACnC,cAAc,SAAS;AACvB,cAAc,eAAe;AAC7B,cAAc,UAAU;AACxB,cAAc,UAAU;AACxB,cAAc,mBAAmB;AACjC,cAAc,UAAU;AACxB,cAAc,YAAY;AAC1B,cAAc,QAAQ;AACtB,cAAc,SAAS;AACvB,SAASA,MAAM,EAAEC,MAAM,QAAQ,SAAS;AACxC,cAAc,WAAW;AACzB,cAAc,QAAQ;AACtB,cAAc,QAAQ;AACtB,cAAc,cAAc;AAC5B,cAAc,qBAAqB","ignoreList":[]}
@@ -0,0 +1,10 @@
1
+ import { type ViewStyle } from 'react-native';
2
+ import type { AnchorLayout, SliderOrientation } from '@cdx-ui/primitives';
3
+ export declare const SLIDER_POPUP_OFFSET = 8;
4
+ export declare const SLIDER_POPUP_Z_INDEX = 9999;
5
+ /**
6
+ * Popover-style placement for the slider value tooltip, modeled after anchored
7
+ * popover content positioning (placement + offset relative to a measured trigger).
8
+ */
9
+ export declare function getSliderPopupAnchorStyle(anchor: AnchorLayout, orientation: SliderOrientation, offset?: number): ViewStyle;
10
+ //# sourceMappingURL=getSliderPopupPosition.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getSliderPopupPosition.d.ts","sourceRoot":"","sources":["../../../../src/components/Slider/getSliderPopupPosition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE1E,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,oBAAoB,OAAO,CAAC;AAEzC;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,YAAY,EACpB,WAAW,EAAE,iBAAiB,EAC9B,MAAM,SAAsB,GAC3B,SAAS,CAsBX"}
@@ -0,0 +1,61 @@
1
+ import { type ReactNode } from 'react';
2
+ import { View, type ViewProps } from 'react-native';
3
+ import { type ISliderProps, type ISliderRailProps, type ISliderThumbProps, type SliderOrientation } from '@cdx-ui/primitives';
4
+ import { type SliderColor, type SliderVariantProps } from './styles';
5
+ export interface SliderProps extends Omit<ISliderProps, 'orientation'> {
6
+ className?: string;
7
+ /**
8
+ * Semantic color token for the track fill and thumb border.
9
+ * @default `action`
10
+ */
11
+ color?: SliderColor;
12
+ orientation?: SliderOrientation;
13
+ children?: ReactNode;
14
+ }
15
+ declare const SliderRoot: import("react").ForwardRefExoticComponent<SliderProps & import("react").RefAttributes<View>>;
16
+ export interface SliderRailProps extends ISliderRailProps {
17
+ className?: string;
18
+ children?: ReactNode;
19
+ }
20
+ declare const SliderRail: import("react").ForwardRefExoticComponent<SliderRailProps & import("react").RefAttributes<View>>;
21
+ export interface SliderTrackProps extends ViewProps {
22
+ asChild?: boolean;
23
+ className?: string;
24
+ children?: ReactNode;
25
+ }
26
+ declare const SliderTrack: import("react").ForwardRefExoticComponent<SliderTrackProps & import("react").RefAttributes<View>>;
27
+ export interface SliderThumbProps extends ISliderThumbProps {
28
+ className?: string;
29
+ children?: ReactNode;
30
+ }
31
+ declare const SliderThumb: import("react").ForwardRefExoticComponent<SliderThumbProps & import("react").RefAttributes<View>>;
32
+ export interface SliderPopupProps extends ViewProps {
33
+ asChild?: boolean;
34
+ className?: string;
35
+ children?: ReactNode;
36
+ }
37
+ declare const SliderPopup: import("react").ForwardRefExoticComponent<SliderPopupProps & import("react").RefAttributes<View>>;
38
+ export interface SliderMarkerProps extends ViewProps {
39
+ asChild?: boolean;
40
+ className?: string;
41
+ value?: number;
42
+ children?: ReactNode;
43
+ }
44
+ declare const SliderMarker: import("react").ForwardRefExoticComponent<SliderMarkerProps & import("react").RefAttributes<View>>;
45
+ export interface SliderMarkerGroupProps extends ViewProps {
46
+ asChild?: boolean;
47
+ className?: string;
48
+ children?: ReactNode;
49
+ }
50
+ declare const SliderMarkerGroup: import("react").ForwardRefExoticComponent<SliderMarkerGroupProps & import("react").RefAttributes<View>>;
51
+ type SliderCompoundComponent = typeof SliderRoot & {
52
+ Rail: typeof SliderRail;
53
+ Track: typeof SliderTrack;
54
+ Thumb: typeof SliderThumb;
55
+ Popup: typeof SliderPopup;
56
+ MarkerGroup: typeof SliderMarkerGroup;
57
+ Marker: typeof SliderMarker;
58
+ };
59
+ export declare const Slider: SliderCompoundComponent;
60
+ export type { SliderColor, SliderVariantProps };
61
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/Slider/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAQL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,EAA8B,IAAI,EAAE,KAAK,SAAS,EAAkB,MAAM,cAAc,CAAC;AAChG,OAAO,EAeL,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACvB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EASL,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACxB,MAAM,UAAU,CAAC;AAiBlB,MAAM,WAAW,WAAY,SAAQ,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC;IACpE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,QAAA,MAAM,UAAU,8FAuCf,CAAC;AAIF,MAAM,WAAW,eAAgB,SAAQ,gBAAgB;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,QAAA,MAAM,UAAU,kGAgBf,CAAC;AAIF,MAAM,WAAW,gBAAiB,SAAQ,SAAS;IACjD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,QAAA,MAAM,WAAW,mGAiEhB,CAAC;AAIF,MAAM,WAAW,gBAAiB,SAAQ,iBAAiB;IACzD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,QAAA,MAAM,WAAW,mGAYhB,CAAC;AAoBF,MAAM,WAAW,gBAAiB,SAAQ,SAAS;IACjD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,QAAA,MAAM,WAAW,mGAwDhB,CAAC;AAIF,MAAM,WAAW,iBAAkB,SAAQ,SAAS;IAClD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,QAAA,MAAM,YAAY,oGA0CjB,CAAC;AAYF,MAAM,WAAW,sBAAuB,SAAQ,SAAS;IACvD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,QAAA,MAAM,iBAAiB,yGAiDtB,CAAC;AAIF,KAAK,uBAAuB,GAAG,OAAO,UAAU,GAAG;IACjD,IAAI,EAAE,OAAO,UAAU,CAAC;IACxB,KAAK,EAAE,OAAO,WAAW,CAAC;IAC1B,KAAK,EAAE,OAAO,WAAW,CAAC;IAC1B,KAAK,EAAE,OAAO,WAAW,CAAC;IAC1B,WAAW,EAAE,OAAO,iBAAiB,CAAC;IACtC,MAAM,EAAE,OAAO,YAAY,CAAC;CAC7B,CAAC;AAEF,eAAO,MAAM,MAAM,EAOb,uBAAuB,CAAC;AAE9B,YAAY,EAAE,WAAW,EAAE,kBAAkB,EAAE,CAAC"}