@cdx-ui/primitives 0.0.1-beta.170 → 0.0.1-beta.172
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/lib/commonjs/accordion/Accordion.js +59 -0
- package/lib/commonjs/accordion/Accordion.js.map +1 -0
- package/lib/commonjs/accordion/AccordionItem.js +68 -0
- package/lib/commonjs/accordion/AccordionItem.js.map +1 -0
- package/lib/commonjs/accordion/AccordionPanel.js +71 -0
- package/lib/commonjs/accordion/AccordionPanel.js.map +1 -0
- package/lib/commonjs/accordion/AccordionTrigger.js +122 -0
- package/lib/commonjs/accordion/AccordionTrigger.js.map +1 -0
- package/lib/commonjs/accordion/context.js +26 -0
- package/lib/commonjs/accordion/context.js.map +1 -0
- package/lib/commonjs/accordion/index.js +59 -0
- package/lib/commonjs/accordion/index.js.map +1 -0
- package/lib/commonjs/accordion/types.js +6 -0
- package/lib/commonjs/accordion/types.js.map +1 -0
- package/lib/commonjs/accordion/utils.js +24 -0
- package/lib/commonjs/accordion/utils.js.map +1 -0
- package/lib/commonjs/index.js +12 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/slider/SliderRail.js +35 -9
- package/lib/commonjs/slider/SliderRail.js.map +1 -1
- package/lib/commonjs/slider/SliderRoot.js +155 -97
- package/lib/commonjs/slider/SliderRoot.js.map +1 -1
- package/lib/commonjs/slider/SliderThumb.js +182 -68
- package/lib/commonjs/slider/SliderThumb.js.map +1 -1
- package/lib/commonjs/slider/context.js +4 -1
- package/lib/commonjs/slider/context.js.map +1 -1
- package/lib/commonjs/slider/index.js +36 -0
- package/lib/commonjs/slider/index.js.map +1 -1
- package/lib/commonjs/slider/useSliderPointer.js +1 -1
- package/lib/commonjs/slider/useSliderPointer.js.map +1 -1
- package/lib/commonjs/slider/utils.js +68 -0
- package/lib/commonjs/slider/utils.js.map +1 -1
- package/lib/module/accordion/Accordion.js +55 -0
- package/lib/module/accordion/Accordion.js.map +1 -0
- package/lib/module/accordion/AccordionItem.js +64 -0
- package/lib/module/accordion/AccordionItem.js.map +1 -0
- package/lib/module/accordion/AccordionPanel.js +67 -0
- package/lib/module/accordion/AccordionPanel.js.map +1 -0
- package/lib/module/accordion/AccordionTrigger.js +118 -0
- package/lib/module/accordion/AccordionTrigger.js.map +1 -0
- package/lib/module/accordion/context.js +20 -0
- package/lib/module/accordion/context.js.map +1 -0
- package/lib/module/accordion/index.js +8 -0
- package/lib/module/accordion/index.js.map +1 -0
- package/lib/module/accordion/types.js +4 -0
- package/lib/module/accordion/types.js.map +1 -0
- package/lib/module/accordion/utils.js +19 -0
- package/lib/module/accordion/utils.js.map +1 -0
- package/lib/module/index.js +1 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/slider/SliderRail.js +35 -9
- package/lib/module/slider/SliderRail.js.map +1 -1
- package/lib/module/slider/SliderRoot.js +157 -99
- package/lib/module/slider/SliderRoot.js.map +1 -1
- package/lib/module/slider/SliderThumb.js +185 -71
- package/lib/module/slider/SliderThumb.js.map +1 -1
- package/lib/module/slider/context.js +1 -0
- package/lib/module/slider/context.js.map +1 -1
- package/lib/module/slider/index.js +2 -2
- package/lib/module/slider/index.js.map +1 -1
- package/lib/module/slider/useSliderPointer.js +1 -1
- package/lib/module/slider/useSliderPointer.js.map +1 -1
- package/lib/module/slider/utils.js +63 -0
- package/lib/module/slider/utils.js.map +1 -1
- package/lib/typescript/accordion/Accordion.d.ts +8 -0
- package/lib/typescript/accordion/Accordion.d.ts.map +1 -0
- package/lib/typescript/accordion/AccordionItem.d.ts +8 -0
- package/lib/typescript/accordion/AccordionItem.d.ts.map +1 -0
- package/lib/typescript/accordion/AccordionPanel.d.ts +7 -0
- package/lib/typescript/accordion/AccordionPanel.d.ts.map +1 -0
- package/lib/typescript/accordion/AccordionTrigger.d.ts +6 -0
- package/lib/typescript/accordion/AccordionTrigger.d.ts.map +1 -0
- package/lib/typescript/accordion/context.d.ts +6 -0
- package/lib/typescript/accordion/context.d.ts.map +1 -0
- package/lib/typescript/accordion/index.d.ts +7 -0
- package/lib/typescript/accordion/index.d.ts.map +1 -0
- package/lib/typescript/accordion/types.d.ts +50 -0
- package/lib/typescript/accordion/types.d.ts.map +1 -0
- package/lib/typescript/accordion/utils.d.ts +4 -0
- package/lib/typescript/accordion/utils.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +1 -0
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/slider/SliderRail.d.ts.map +1 -1
- package/lib/typescript/slider/SliderRoot.d.ts +2 -2
- package/lib/typescript/slider/SliderRoot.d.ts.map +1 -1
- package/lib/typescript/slider/SliderThumb.d.ts.map +1 -1
- package/lib/typescript/slider/context.d.ts +53 -9
- package/lib/typescript/slider/context.d.ts.map +1 -1
- package/lib/typescript/slider/index.d.ts +4 -4
- package/lib/typescript/slider/index.d.ts.map +1 -1
- package/lib/typescript/slider/types.d.ts +44 -8
- package/lib/typescript/slider/types.d.ts.map +1 -1
- package/lib/typescript/slider/utils.d.ts +8 -0
- package/lib/typescript/slider/utils.d.ts.map +1 -1
- package/package.json +5 -3
- package/src/accordion/Accordion.tsx +72 -0
- package/src/accordion/AccordionItem.tsx +70 -0
- package/src/accordion/AccordionPanel.tsx +72 -0
- package/src/accordion/AccordionTrigger.tsx +120 -0
- package/src/accordion/context.tsx +22 -0
- package/src/accordion/index.ts +21 -0
- package/src/accordion/types.ts +56 -0
- package/src/accordion/utils.ts +22 -0
- package/src/index.ts +1 -0
- package/src/slider/SliderRail.tsx +56 -8
- package/src/slider/SliderRoot.tsx +255 -136
- package/src/slider/SliderThumb.tsx +240 -88
- package/src/slider/context.tsx +53 -9
- package/src/slider/index.ts +9 -2
- package/src/slider/types.ts +49 -8
- package/src/slider/useSliderPointer.ts +1 -1
- package/src/slider/utils.ts +76 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["toPercentDimension","percent","String","SLIDER_MARKER_SIZE","exports","clamp","value","min","max","Math","getThumbTravel","trackSize","_thumbSize","percentToThumbOffset","thumbSize","percentToFillExtent","pointerCoordToRatio","pointerCoord","trackStart","pointerCoordToVerticalRatio","snapToStep","step","stepped","round","valueToPercent","percentToValue","ratio","formatSliderValue","Number","isInteger","toFixed","
|
|
1
|
+
{"version":3,"names":["toPercentDimension","percent","String","SLIDER_MARKER_SIZE","exports","clamp","value","min","max","Math","getThumbTravel","trackSize","_thumbSize","percentToThumbOffset","thumbSize","percentToFillExtent","pointerCoordToRatio","pointerCoord","trackStart","pointerCoordToVerticalRatio","snapToStep","step","stepped","round","valueToPercent","percentToValue","ratio","formatSliderValue","Number","isInteger","toFixed","arraysEqual","a","b","length","every","index","normalizeSliderValue","input","defaultScalar","Array","isArray","denormalizeSliderValue","values","asArray","getClosestValueIndex","target","closestIndex","closestDistance","abs","distance","getFillExtent","startPercent","endPercent","offset","start","end","span","halfThumb","endUnderThumb","getMarkerStepValues","decimals","getDecimalPlaces","stepCount","floor","from","_","roundTo","push","n","str","dotIndex","indexOf","factor","percentToMarkerCenterOffset","markerSize","getMarkerPositionStyle","orientation","trackLayout","width","height","position","left","bottom","marginLeft","top","marginTop","transform","translateY","translateX"],"sourceRoot":"../../../src","sources":["slider/utils.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { forwardRef, useMemo } from 'react';
|
|
4
|
+
import { View } from 'react-native';
|
|
5
|
+
import { useDisclosureGroupState } from '@react-stately/disclosure';
|
|
6
|
+
import { Slot } from '../slot';
|
|
7
|
+
import { dataAttributes, mergeDataAttributes } from '../utils/dataAttributes';
|
|
8
|
+
import { AccordionContext } from './context';
|
|
9
|
+
import { fromExpandedKeys, toExpandedKeys } from './utils';
|
|
10
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
11
|
+
export const AccordionRoot = /*#__PURE__*/forwardRef(({
|
|
12
|
+
asChild,
|
|
13
|
+
children,
|
|
14
|
+
className,
|
|
15
|
+
style,
|
|
16
|
+
type = 'single',
|
|
17
|
+
collapsible = true,
|
|
18
|
+
isDisabled = false,
|
|
19
|
+
value,
|
|
20
|
+
defaultValue,
|
|
21
|
+
onValueChange,
|
|
22
|
+
...props
|
|
23
|
+
}, ref) => {
|
|
24
|
+
const groupState = useDisclosureGroupState({
|
|
25
|
+
allowsMultipleExpanded: type === 'multiple',
|
|
26
|
+
isDisabled,
|
|
27
|
+
expandedKeys: toExpandedKeys(value),
|
|
28
|
+
defaultExpandedKeys: toExpandedKeys(defaultValue),
|
|
29
|
+
onExpandedChange: onValueChange ? keys => {
|
|
30
|
+
onValueChange(fromExpandedKeys(keys, type));
|
|
31
|
+
} : undefined
|
|
32
|
+
});
|
|
33
|
+
const contextValue = useMemo(() => ({
|
|
34
|
+
groupState,
|
|
35
|
+
type,
|
|
36
|
+
collapsible,
|
|
37
|
+
isDisabled
|
|
38
|
+
}), [groupState, type, collapsible, isDisabled]);
|
|
39
|
+
const Comp = asChild ? Slot : View;
|
|
40
|
+
return /*#__PURE__*/_jsx(AccordionContext.Provider, {
|
|
41
|
+
value: contextValue,
|
|
42
|
+
children: /*#__PURE__*/_jsx(Comp, {
|
|
43
|
+
ref: ref,
|
|
44
|
+
className: className,
|
|
45
|
+
style: style,
|
|
46
|
+
...props,
|
|
47
|
+
...mergeDataAttributes(props, dataAttributes({
|
|
48
|
+
slot: 'accordion'
|
|
49
|
+
})),
|
|
50
|
+
children: children
|
|
51
|
+
})
|
|
52
|
+
});
|
|
53
|
+
});
|
|
54
|
+
AccordionRoot.displayName = 'AccordionRoot';
|
|
55
|
+
//# sourceMappingURL=Accordion.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["forwardRef","useMemo","View","useDisclosureGroupState","Slot","dataAttributes","mergeDataAttributes","AccordionContext","fromExpandedKeys","toExpandedKeys","jsx","_jsx","AccordionRoot","asChild","children","className","style","type","collapsible","isDisabled","value","defaultValue","onValueChange","props","ref","groupState","allowsMultipleExpanded","expandedKeys","defaultExpandedKeys","onExpandedChange","keys","undefined","contextValue","Comp","Provider","slot","displayName"],"sourceRoot":"../../../src","sources":["accordion/Accordion.tsx"],"mappings":";;AAAA,SAASA,UAAU,EAAEC,OAAO,QAAQ,OAAO;AAC3C,SAASC,IAAI,QAAQ,cAAc;AACnC,SAASC,uBAAuB,QAAQ,2BAA2B;AACnE,SAASC,IAAI,QAAQ,SAAS;AAC9B,SAASC,cAAc,EAAEC,mBAAmB,QAAQ,yBAAyB;AAC7E,SAASC,gBAAgB,QAAQ,WAAW;AAE5C,SAASC,gBAAgB,EAAEC,cAAc,QAAQ,SAAS;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAO3D,OAAO,MAAMC,aAAa,gBAAGZ,UAAU,CACrC,CACE;EACEa,OAAO;EACPC,QAAQ;EACRC,SAAS;EACTC,KAAK;EACLC,IAAI,GAAG,QAAQ;EACfC,WAAW,GAAG,IAAI;EAClBC,UAAU,GAAG,KAAK;EAClBC,KAAK;EACLC,YAAY;EACZC,aAAa;EACb,GAAGC;AACL,CAAC,EACDC,GAAG,KACA;EACH,MAAMC,UAAU,GAAGtB,uBAAuB,CAAC;IACzCuB,sBAAsB,EAAET,IAAI,KAAK,UAAU;IAC3CE,UAAU;IACVQ,YAAY,EAAElB,cAAc,CAACW,KAAK,CAAC;IACnCQ,mBAAmB,EAAEnB,cAAc,CAACY,YAAY,CAAC;IACjDQ,gBAAgB,EAAEP,aAAa,GAC1BQ,IAAI,IAAK;MACRR,aAAa,CAACd,gBAAgB,CAACsB,IAAI,EAAEb,IAAI,CAAC,CAAC;IAC7C,CAAC,GACDc;EACN,CAAC,CAAC;EAEF,MAAMC,YAAY,GAAG/B,OAAO,CAC1B,OAAO;IACLwB,UAAU;IACVR,IAAI;IACJC,WAAW;IACXC;EACF,CAAC,CAAC,EACF,CAACM,UAAU,EAAER,IAAI,EAAEC,WAAW,EAAEC,UAAU,CAC5C,CAAC;EAED,MAAMc,IAAI,GAAGpB,OAAO,GAAGT,IAAI,GAAGF,IAAI;EAElC,oBACES,IAAA,CAACJ,gBAAgB,CAAC2B,QAAQ;IAACd,KAAK,EAAEY,YAAa;IAAAlB,QAAA,eAC7CH,IAAA,CAACsB,IAAI;MACHT,GAAG,EAAEA,GAAI;MACTT,SAAS,EAAEA,SAAU;MACrBC,KAAK,EAAEA,KAAM;MAAA,GACTO,KAAK;MAAA,GACLjB,mBAAmB,CAACiB,KAAK,EAAElB,cAAc,CAAC;QAAE8B,IAAI,EAAE;MAAY,CAAC,CAAC,CAAC;MAAArB,QAAA,EAEpEA;IAAQ,CACL;EAAC,CACkB,CAAC;AAEhC,CACF,CAAC;AAEDF,aAAa,CAACwB,WAAW,GAAG,eAAe","ignoreList":[]}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { forwardRef, useCallback, useId, useMemo } from 'react';
|
|
4
|
+
import { View } from 'react-native';
|
|
5
|
+
import { Slot } from '../slot';
|
|
6
|
+
import { dataAttributes, mergeDataAttributes } from '../utils/dataAttributes';
|
|
7
|
+
import { AccordionItemContext, useAccordionContext } from './context';
|
|
8
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
9
|
+
export const AccordionItemRoot = /*#__PURE__*/forwardRef(({
|
|
10
|
+
asChild,
|
|
11
|
+
children,
|
|
12
|
+
className,
|
|
13
|
+
style,
|
|
14
|
+
value,
|
|
15
|
+
disabled = false,
|
|
16
|
+
...props
|
|
17
|
+
}, ref) => {
|
|
18
|
+
const {
|
|
19
|
+
groupState,
|
|
20
|
+
type,
|
|
21
|
+
collapsible,
|
|
22
|
+
isDisabled: groupDisabled
|
|
23
|
+
} = useAccordionContext();
|
|
24
|
+
const reactId = useId().replace(/[^a-zA-Z0-9_-]/g, '');
|
|
25
|
+
const triggerId = `accordion-${reactId}-trigger`;
|
|
26
|
+
const panelId = `accordion-${reactId}-panel`;
|
|
27
|
+
const isExpanded = groupState.expandedKeys.has(value);
|
|
28
|
+
const isDisabled = disabled || groupDisabled;
|
|
29
|
+
const toggle = useCallback(() => {
|
|
30
|
+
if (isDisabled) {
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
if (type === 'single' && !collapsible && isExpanded) {
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
groupState.toggleKey(value);
|
|
37
|
+
}, [isDisabled, type, collapsible, isExpanded, groupState, value]);
|
|
38
|
+
const contextValue = useMemo(() => ({
|
|
39
|
+
value,
|
|
40
|
+
isExpanded,
|
|
41
|
+
isDisabled,
|
|
42
|
+
triggerId,
|
|
43
|
+
panelId,
|
|
44
|
+
toggle
|
|
45
|
+
}), [value, isExpanded, isDisabled, triggerId, panelId, toggle]);
|
|
46
|
+
const Comp = asChild ? Slot : View;
|
|
47
|
+
return /*#__PURE__*/_jsx(AccordionItemContext.Provider, {
|
|
48
|
+
value: contextValue,
|
|
49
|
+
children: /*#__PURE__*/_jsx(Comp, {
|
|
50
|
+
ref: ref,
|
|
51
|
+
className: className,
|
|
52
|
+
style: style,
|
|
53
|
+
...props,
|
|
54
|
+
...mergeDataAttributes(props, dataAttributes({
|
|
55
|
+
slot: 'accordion-item',
|
|
56
|
+
state: isExpanded ? 'open' : 'closed',
|
|
57
|
+
disabled: isDisabled
|
|
58
|
+
})),
|
|
59
|
+
children: children
|
|
60
|
+
})
|
|
61
|
+
});
|
|
62
|
+
});
|
|
63
|
+
AccordionItemRoot.displayName = 'AccordionItemRoot';
|
|
64
|
+
//# sourceMappingURL=AccordionItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["forwardRef","useCallback","useId","useMemo","View","Slot","dataAttributes","mergeDataAttributes","AccordionItemContext","useAccordionContext","jsx","_jsx","AccordionItemRoot","asChild","children","className","style","value","disabled","props","ref","groupState","type","collapsible","isDisabled","groupDisabled","reactId","replace","triggerId","panelId","isExpanded","expandedKeys","has","toggle","toggleKey","contextValue","Comp","Provider","slot","state","displayName"],"sourceRoot":"../../../src","sources":["accordion/AccordionItem.tsx"],"mappings":";;AAAA,SAASA,UAAU,EAAEC,WAAW,EAAEC,KAAK,EAAEC,OAAO,QAAQ,OAAO;AAC/D,SAASC,IAAI,QAAQ,cAAc;AACnC,SAASC,IAAI,QAAQ,SAAS;AAC9B,SAASC,cAAc,EAAEC,mBAAmB,QAAQ,yBAAyB;AAC7E,SAASC,oBAAoB,EAAEC,mBAAmB,QAAQ,WAAW;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAQtE,OAAO,MAAMC,iBAAiB,gBAAGZ,UAAU,CACzC,CAAC;EAAEa,OAAO;EAAEC,QAAQ;EAAEC,SAAS;EAAEC,KAAK;EAAEC,KAAK;EAAEC,QAAQ,GAAG,KAAK;EAAE,GAAGC;AAAM,CAAC,EAAEC,GAAG,KAAK;EACnF,MAAM;IAAEC,UAAU;IAAEC,IAAI;IAAEC,WAAW;IAAEC,UAAU,EAAEC;EAAc,CAAC,GAAGhB,mBAAmB,CAAC,CAAC;EAC1F,MAAMiB,OAAO,GAAGxB,KAAK,CAAC,CAAC,CAACyB,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC;EACtD,MAAMC,SAAS,GAAG,aAAaF,OAAO,UAAU;EAChD,MAAMG,OAAO,GAAG,aAAaH,OAAO,QAAQ;EAE5C,MAAMI,UAAU,GAAGT,UAAU,CAACU,YAAY,CAACC,GAAG,CAACf,KAAK,CAAC;EACrD,MAAMO,UAAU,GAAGN,QAAQ,IAAIO,aAAa;EAE5C,MAAMQ,MAAM,GAAGhC,WAAW,CAAC,MAAM;IAC/B,IAAIuB,UAAU,EAAE;MACd;IACF;IACA,IAAIF,IAAI,KAAK,QAAQ,IAAI,CAACC,WAAW,IAAIO,UAAU,EAAE;MACnD;IACF;IACAT,UAAU,CAACa,SAAS,CAACjB,KAAK,CAAC;EAC7B,CAAC,EAAE,CAACO,UAAU,EAAEF,IAAI,EAAEC,WAAW,EAAEO,UAAU,EAAET,UAAU,EAAEJ,KAAK,CAAC,CAAC;EAElE,MAAMkB,YAAY,GAAGhC,OAAO,CAC1B,OAAO;IACLc,KAAK;IACLa,UAAU;IACVN,UAAU;IACVI,SAAS;IACTC,OAAO;IACPI;EACF,CAAC,CAAC,EACF,CAAChB,KAAK,EAAEa,UAAU,EAAEN,UAAU,EAAEI,SAAS,EAAEC,OAAO,EAAEI,MAAM,CAC5D,CAAC;EAED,MAAMG,IAAI,GAAGvB,OAAO,GAAGR,IAAI,GAAGD,IAAI;EAElC,oBACEO,IAAA,CAACH,oBAAoB,CAAC6B,QAAQ;IAACpB,KAAK,EAAEkB,YAAa;IAAArB,QAAA,eACjDH,IAAA,CAACyB,IAAI;MACHhB,GAAG,EAAEA,GAAI;MACTL,SAAS,EAAEA,SAAU;MACrBC,KAAK,EAAEA,KAAM;MAAA,GACTG,KAAK;MAAA,GACLZ,mBAAmB,CACrBY,KAAK,EACLb,cAAc,CAAC;QACbgC,IAAI,EAAE,gBAAgB;QACtBC,KAAK,EAAET,UAAU,GAAG,MAAM,GAAG,QAAQ;QACrCZ,QAAQ,EAAEM;MACZ,CAAC,CACH,CAAC;MAAAV,QAAA,EAEAA;IAAQ,CACL;EAAC,CACsB,CAAC;AAEpC,CACF,CAAC;AAEDF,iBAAiB,CAAC4B,WAAW,GAAG,mBAAmB","ignoreList":[]}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { forwardRef } from 'react';
|
|
4
|
+
import { Platform, View } from 'react-native';
|
|
5
|
+
import { useDisclosure } from '@react-native-aria/disclosure';
|
|
6
|
+
import { Slot } from '../slot';
|
|
7
|
+
import { dataAttributes, mergeDataAttributes } from '../utils/dataAttributes';
|
|
8
|
+
import { useAccordionItemContext } from './context';
|
|
9
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
10
|
+
export const AccordionPanelRoot = /*#__PURE__*/forwardRef(({
|
|
11
|
+
asChild,
|
|
12
|
+
children,
|
|
13
|
+
className,
|
|
14
|
+
style,
|
|
15
|
+
...props
|
|
16
|
+
}, ref) => {
|
|
17
|
+
const {
|
|
18
|
+
isExpanded,
|
|
19
|
+
isDisabled,
|
|
20
|
+
triggerId,
|
|
21
|
+
panelId,
|
|
22
|
+
toggle
|
|
23
|
+
} = useAccordionItemContext();
|
|
24
|
+
const toggleState = {
|
|
25
|
+
isSelected: isExpanded,
|
|
26
|
+
defaultSelected: false,
|
|
27
|
+
setSelected: selected => {
|
|
28
|
+
if (selected !== isExpanded) {
|
|
29
|
+
toggle();
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
toggle
|
|
33
|
+
};
|
|
34
|
+
const {
|
|
35
|
+
disclosureProps
|
|
36
|
+
} = useDisclosure({}, toggleState);
|
|
37
|
+
const Comp = asChild ? Slot : View;
|
|
38
|
+
if (!isExpanded) {
|
|
39
|
+
return null;
|
|
40
|
+
}
|
|
41
|
+
const platformA11yProps = Platform.OS === 'web' ? {
|
|
42
|
+
id: panelId,
|
|
43
|
+
nativeID: panelId,
|
|
44
|
+
role: 'region',
|
|
45
|
+
'aria-labelledby': triggerId
|
|
46
|
+
} : {
|
|
47
|
+
nativeID: panelId,
|
|
48
|
+
accessibilityLabelledBy: triggerId,
|
|
49
|
+
accessibilityRole: 'none'
|
|
50
|
+
};
|
|
51
|
+
return /*#__PURE__*/_jsx(Comp, {
|
|
52
|
+
ref: ref,
|
|
53
|
+
className: className,
|
|
54
|
+
style: style,
|
|
55
|
+
...disclosureProps,
|
|
56
|
+
...props,
|
|
57
|
+
...mergeDataAttributes(props, dataAttributes({
|
|
58
|
+
slot: 'accordion-panel',
|
|
59
|
+
state: 'open',
|
|
60
|
+
disabled: isDisabled
|
|
61
|
+
})),
|
|
62
|
+
...platformA11yProps,
|
|
63
|
+
children: children
|
|
64
|
+
});
|
|
65
|
+
});
|
|
66
|
+
AccordionPanelRoot.displayName = 'AccordionPanelRoot';
|
|
67
|
+
//# sourceMappingURL=AccordionPanel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["forwardRef","Platform","View","useDisclosure","Slot","dataAttributes","mergeDataAttributes","useAccordionItemContext","jsx","_jsx","AccordionPanelRoot","asChild","children","className","style","props","ref","isExpanded","isDisabled","triggerId","panelId","toggle","toggleState","isSelected","defaultSelected","setSelected","selected","disclosureProps","Comp","platformA11yProps","OS","id","nativeID","role","accessibilityLabelledBy","accessibilityRole","slot","state","disabled","displayName"],"sourceRoot":"../../../src","sources":["accordion/AccordionPanel.tsx"],"mappings":";;AAAA,SAASA,UAAU,QAAQ,OAAO;AAClC,SAASC,QAAQ,EAAEC,IAAI,QAAQ,cAAc;AAC7C,SAASC,aAAa,QAAQ,+BAA+B;AAC7D,SAASC,IAAI,QAAQ,SAAS;AAC9B,SAASC,cAAc,EAAEC,mBAAmB,QAAQ,yBAAyB;AAC7E,SAASC,uBAAuB,QAAQ,WAAW;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAOpD,OAAO,MAAMC,kBAAkB,gBAAGV,UAAU,CAC1C,CAAC;EAAEW,OAAO;EAAEC,QAAQ;EAAEC,SAAS;EAAEC,KAAK;EAAE,GAAGC;AAAM,CAAC,EAAEC,GAAG,KAAK;EAC1D,MAAM;IAAEC,UAAU;IAAEC,UAAU;IAAEC,SAAS;IAAEC,OAAO;IAAEC;EAAO,CAAC,GAAGd,uBAAuB,CAAC,CAAC;EAExF,MAAMe,WAAW,GAAG;IAClBC,UAAU,EAAEN,UAAU;IACtBO,eAAe,EAAE,KAAK;IACtBC,WAAW,EAAGC,QAAiB,IAAK;MAClC,IAAIA,QAAQ,KAAKT,UAAU,EAAE;QAC3BI,MAAM,CAAC,CAAC;MACV;IACF,CAAC;IACDA;EACF,CAAC;EAED,MAAM;IAAEM;EAAgB,CAAC,GAAGxB,aAAa,CAAC,CAAC,CAAC,EAAEmB,WAAW,CAAC;EAC1D,MAAMM,IAAI,GAAGjB,OAAO,GAAGP,IAAI,GAAGF,IAAI;EAElC,IAAI,CAACe,UAAU,EAAE;IACf,OAAO,IAAI;EACb;EAEA,MAAMY,iBAAiB,GACrB5B,QAAQ,CAAC6B,EAAE,KAAK,KAAK,GACjB;IACEC,EAAE,EAAEX,OAAO;IACXY,QAAQ,EAAEZ,OAAO;IACjBa,IAAI,EAAE,QAAiB;IACvB,iBAAiB,EAAEd;EACrB,CAAC,GACD;IACEa,QAAQ,EAAEZ,OAAO;IACjBc,uBAAuB,EAAEf,SAAS;IAClCgB,iBAAiB,EAAE;EACrB,CAAC;EAEP,oBACE1B,IAAA,CAACmB,IAAI;IACHZ,GAAG,EAAEA,GAAI;IACTH,SAAS,EAAEA,SAAU;IACrBC,KAAK,EAAEA,KAAM;IAAA,GACTa,eAAe;IAAA,GACfZ,KAAK;IAAA,GACLT,mBAAmB,CACrBS,KAAK,EACLV,cAAc,CAAC;MACb+B,IAAI,EAAE,iBAAiB;MACvBC,KAAK,EAAE,MAAM;MACbC,QAAQ,EAAEpB;IACZ,CAAC,CACH,CAAC;IAAA,GACGW,iBAAiB;IAAAjB,QAAA,EAEpBA;EAAQ,CACL,CAAC;AAEX,CACF,CAAC;AAEDF,kBAAkB,CAAC6B,WAAW,GAAG,oBAAoB","ignoreList":[]}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { forwardRef, useMemo } from 'react';
|
|
4
|
+
import { Platform, Pressable } from 'react-native';
|
|
5
|
+
import { composeEventHandlers } from '@cdx-ui/utils';
|
|
6
|
+
import { useFocus, useFocusRing } from '@react-native-aria/focus';
|
|
7
|
+
import { usePress, useHover } from '@react-native-aria/interactions';
|
|
8
|
+
import { useDisclosureButton } from '@react-native-aria/disclosure';
|
|
9
|
+
import { Slot } from '../slot';
|
|
10
|
+
import { dataAttributes, mergeDataAttributes } from '../utils/dataAttributes';
|
|
11
|
+
import { useAccordionItemContext } from './context';
|
|
12
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
13
|
+
export const AccordionTriggerRoot = /*#__PURE__*/forwardRef(({
|
|
14
|
+
asChild,
|
|
15
|
+
children,
|
|
16
|
+
className,
|
|
17
|
+
style,
|
|
18
|
+
onPress,
|
|
19
|
+
onPressIn,
|
|
20
|
+
onPressOut,
|
|
21
|
+
onHoverIn,
|
|
22
|
+
onHoverOut,
|
|
23
|
+
onFocus,
|
|
24
|
+
onBlur,
|
|
25
|
+
accessibilityLabel,
|
|
26
|
+
...props
|
|
27
|
+
}, ref) => {
|
|
28
|
+
const {
|
|
29
|
+
isExpanded,
|
|
30
|
+
isDisabled,
|
|
31
|
+
triggerId,
|
|
32
|
+
panelId,
|
|
33
|
+
toggle
|
|
34
|
+
} = useAccordionItemContext();
|
|
35
|
+
const toggleState = useMemo(() => ({
|
|
36
|
+
isSelected: isExpanded,
|
|
37
|
+
defaultSelected: false,
|
|
38
|
+
setSelected: selected => {
|
|
39
|
+
if (selected !== isExpanded) {
|
|
40
|
+
toggle();
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
toggle
|
|
44
|
+
}), [isExpanded, toggle]);
|
|
45
|
+
const {
|
|
46
|
+
buttonProps
|
|
47
|
+
} = useDisclosureButton({}, toggleState);
|
|
48
|
+
const {
|
|
49
|
+
focusProps,
|
|
50
|
+
isFocused
|
|
51
|
+
} = useFocus();
|
|
52
|
+
const {
|
|
53
|
+
focusProps: focusRingProps,
|
|
54
|
+
isFocusVisible
|
|
55
|
+
} = useFocusRing();
|
|
56
|
+
const {
|
|
57
|
+
pressProps,
|
|
58
|
+
isPressed
|
|
59
|
+
} = usePress({
|
|
60
|
+
isDisabled
|
|
61
|
+
});
|
|
62
|
+
const {
|
|
63
|
+
hoverProps,
|
|
64
|
+
isHovered
|
|
65
|
+
} = useHover({
|
|
66
|
+
isDisabled
|
|
67
|
+
});
|
|
68
|
+
const Comp = asChild ? Slot : Pressable;
|
|
69
|
+
const platformA11yProps = Platform.OS === 'web' ? {
|
|
70
|
+
id: triggerId,
|
|
71
|
+
role: 'button',
|
|
72
|
+
'aria-expanded': isExpanded,
|
|
73
|
+
'aria-disabled': isDisabled || undefined,
|
|
74
|
+
'aria-controls': isExpanded ? panelId : undefined
|
|
75
|
+
} : {
|
|
76
|
+
nativeID: triggerId,
|
|
77
|
+
accessibilityRole: 'button',
|
|
78
|
+
accessibilityState: {
|
|
79
|
+
expanded: isExpanded,
|
|
80
|
+
disabled: isDisabled
|
|
81
|
+
},
|
|
82
|
+
accessibilityControls: isExpanded ? panelId : undefined
|
|
83
|
+
};
|
|
84
|
+
const {
|
|
85
|
+
onPress: disclosureOnPress,
|
|
86
|
+
...disclosureRestProps
|
|
87
|
+
} = buttonProps;
|
|
88
|
+
const disclosureProps = Platform.OS === 'web' ? {} : disclosureRestProps;
|
|
89
|
+
return /*#__PURE__*/_jsx(Comp, {
|
|
90
|
+
ref: ref,
|
|
91
|
+
disabled: isDisabled,
|
|
92
|
+
accessibilityLabel: accessibilityLabel,
|
|
93
|
+
className: className,
|
|
94
|
+
style: style,
|
|
95
|
+
...props,
|
|
96
|
+
...disclosureProps,
|
|
97
|
+
...platformA11yProps,
|
|
98
|
+
...mergeDataAttributes(props, dataAttributes({
|
|
99
|
+
slot: 'accordion-trigger',
|
|
100
|
+
state: isExpanded ? 'open' : 'closed',
|
|
101
|
+
disabled: isDisabled,
|
|
102
|
+
hover: isHovered,
|
|
103
|
+
active: isPressed,
|
|
104
|
+
focus: isFocused,
|
|
105
|
+
focusVisible: isFocusVisible
|
|
106
|
+
})),
|
|
107
|
+
onPressIn: composeEventHandlers(onPressIn, pressProps.onPressIn),
|
|
108
|
+
onPressOut: composeEventHandlers(onPressOut, pressProps.onPressOut),
|
|
109
|
+
onHoverIn: composeEventHandlers(onHoverIn, hoverProps.onHoverIn),
|
|
110
|
+
onHoverOut: composeEventHandlers(onHoverOut, hoverProps.onHoverOut),
|
|
111
|
+
onPress: composeEventHandlers(onPress, disclosureOnPress),
|
|
112
|
+
onFocus: composeEventHandlers(onFocus, focusProps.onFocus, focusRingProps.onFocus),
|
|
113
|
+
onBlur: composeEventHandlers(onBlur, focusProps.onBlur, focusRingProps.onBlur),
|
|
114
|
+
children: children
|
|
115
|
+
});
|
|
116
|
+
});
|
|
117
|
+
AccordionTriggerRoot.displayName = 'AccordionTriggerRoot';
|
|
118
|
+
//# sourceMappingURL=AccordionTrigger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["forwardRef","useMemo","Platform","Pressable","composeEventHandlers","useFocus","useFocusRing","usePress","useHover","useDisclosureButton","Slot","dataAttributes","mergeDataAttributes","useAccordionItemContext","jsx","_jsx","AccordionTriggerRoot","asChild","children","className","style","onPress","onPressIn","onPressOut","onHoverIn","onHoverOut","onFocus","onBlur","accessibilityLabel","props","ref","isExpanded","isDisabled","triggerId","panelId","toggle","toggleState","isSelected","defaultSelected","setSelected","selected","buttonProps","focusProps","isFocused","focusRingProps","isFocusVisible","pressProps","isPressed","hoverProps","isHovered","Comp","platformA11yProps","OS","id","role","undefined","nativeID","accessibilityRole","accessibilityState","expanded","disabled","accessibilityControls","disclosureOnPress","disclosureRestProps","disclosureProps","slot","state","hover","active","focus","focusVisible","displayName"],"sourceRoot":"../../../src","sources":["accordion/AccordionTrigger.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { createContext, useContext } from 'react';
|
|
4
|
+
export const AccordionContext = /*#__PURE__*/createContext(null);
|
|
5
|
+
export const AccordionItemContext = /*#__PURE__*/createContext(null);
|
|
6
|
+
export function useAccordionContext() {
|
|
7
|
+
const context = useContext(AccordionContext);
|
|
8
|
+
if (!context) {
|
|
9
|
+
throw new Error('Accordion compound components must be used within Accordion');
|
|
10
|
+
}
|
|
11
|
+
return context;
|
|
12
|
+
}
|
|
13
|
+
export function useAccordionItemContext() {
|
|
14
|
+
const context = useContext(AccordionItemContext);
|
|
15
|
+
if (!context) {
|
|
16
|
+
throw new Error('Accordion.Item sub-components must be used within Accordion.Item');
|
|
17
|
+
}
|
|
18
|
+
return context;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createContext","useContext","AccordionContext","AccordionItemContext","useAccordionContext","context","Error","useAccordionItemContext"],"sourceRoot":"../../../src","sources":["accordion/context.tsx"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,UAAU,QAAQ,OAAO;AAGjD,OAAO,MAAMC,gBAAgB,gBAAGF,aAAa,CAAgC,IAAI,CAAC;AAElF,OAAO,MAAMG,oBAAoB,gBAAGH,aAAa,CAAoC,IAAI,CAAC;AAE1F,OAAO,SAASI,mBAAmBA,CAAA,EAA2B;EAC5D,MAAMC,OAAO,GAAGJ,UAAU,CAACC,gBAAgB,CAAC;EAC5C,IAAI,CAACG,OAAO,EAAE;IACZ,MAAM,IAAIC,KAAK,CAAC,6DAA6D,CAAC;EAChF;EACA,OAAOD,OAAO;AAChB;AAEA,OAAO,SAASE,uBAAuBA,CAAA,EAA+B;EACpE,MAAMF,OAAO,GAAGJ,UAAU,CAACE,oBAAoB,CAAC;EAChD,IAAI,CAACE,OAAO,EAAE;IACZ,MAAM,IAAIC,KAAK,CAAC,kEAAkE,CAAC;EACrF;EACA,OAAOD,OAAO;AAChB","ignoreList":[]}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
export { AccordionContext, AccordionItemContext, useAccordionContext, useAccordionItemContext } from './context';
|
|
4
|
+
export { AccordionRoot } from './Accordion';
|
|
5
|
+
export { AccordionItemRoot } from './AccordionItem';
|
|
6
|
+
export { AccordionTriggerRoot } from './AccordionTrigger';
|
|
7
|
+
export { AccordionPanelRoot } from './AccordionPanel';
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["AccordionContext","AccordionItemContext","useAccordionContext","useAccordionItemContext","AccordionRoot","AccordionItemRoot","AccordionTriggerRoot","AccordionPanelRoot"],"sourceRoot":"../../../src","sources":["accordion/index.ts"],"mappings":";;AAUA,SACEA,gBAAgB,EAChBC,oBAAoB,EACpBC,mBAAmB,EACnBC,uBAAuB,QAClB,WAAW;AAElB,SAASC,aAAa,QAAiC,aAAa;AACpE,SAASC,iBAAiB,QAAqC,iBAAiB;AAChF,SAASC,oBAAoB,QAAwC,oBAAoB;AACzF,SAASC,kBAAkB,QAAsC,kBAAkB","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["accordion/types.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
export function toExpandedKeys(value) {
|
|
4
|
+
if (value === undefined) {
|
|
5
|
+
return undefined;
|
|
6
|
+
}
|
|
7
|
+
if (Array.isArray(value)) {
|
|
8
|
+
return new Set(value);
|
|
9
|
+
}
|
|
10
|
+
if (value === '') {
|
|
11
|
+
return new Set();
|
|
12
|
+
}
|
|
13
|
+
return new Set([value]);
|
|
14
|
+
}
|
|
15
|
+
export function fromExpandedKeys(keys, type) {
|
|
16
|
+
const values = Array.from(keys).map(String);
|
|
17
|
+
return type === 'single' ? values[0] ?? '' : values;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["toExpandedKeys","value","undefined","Array","isArray","Set","fromExpandedKeys","keys","type","values","from","map","String"],"sourceRoot":"../../../src","sources":["accordion/utils.ts"],"mappings":";;AAEA,OAAO,SAASA,cAAcA,CAACC,KAAoC,EAA2B;EAC5F,IAAIA,KAAK,KAAKC,SAAS,EAAE;IACvB,OAAOA,SAAS;EAClB;EACA,IAAIC,KAAK,CAACC,OAAO,CAACH,KAAK,CAAC,EAAE;IACxB,OAAO,IAAII,GAAG,CAACJ,KAAK,CAAC;EACvB;EACA,IAAIA,KAAK,KAAK,EAAE,EAAE;IAChB,OAAO,IAAII,GAAG,CAAS,CAAC;EAC1B;EACA,OAAO,IAAIA,GAAG,CAAS,CAACJ,KAAK,CAAC,CAAC;AACjC;AAEA,OAAO,SAASK,gBAAgBA,CAC9BC,IAA+B,EAC/BC,IAAmB,EACA;EACnB,MAAMC,MAAM,GAAGN,KAAK,CAACO,IAAI,CAACH,IAAI,CAAC,CAACI,GAAG,CAACC,MAAM,CAAC;EAC3C,OAAOJ,IAAI,KAAK,QAAQ,GAAIC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,GAAIA,MAAM;AACvD","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
|
@@ -34,6 +34,7 @@ export * from './tooltip';
|
|
|
34
34
|
export * from './portal';
|
|
35
35
|
export * from './progress-bar';
|
|
36
36
|
export * from './radio';
|
|
37
|
+
export * from './accordion';
|
|
37
38
|
export * from './slider';
|
|
38
39
|
export { FormControlContext, useFormControlContext } from '@cdx-ui/utils';
|
|
39
40
|
export { dataAttributes, mergeDataAttributes } from './utils/dataAttributes';
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["MODAL_OVERLAY_Z_INDEX","NOTIFICATION_OVERLAY_Z_INDEX","OVERLAY_PLACEMENTS","getAnchoredOverlayPosition","OverlayContainer","OverlayInsetsProvider","OverlayStackProvider","useAnchorPosition","useAnchoredOverlay","useDismissOverlay","useEscapeKey","useOverlayStackRegistration","useOverlayPosition","FormControlContext","useFormControlContext","dataAttributes","mergeDataAttributes","domDataAttributes","mergeDomDataAttributes","assignRef","createPortalFn","Slot"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;AAAA,cAAc,UAAU;AACxB,cAAc,eAAe;AAC7B,cAAc,UAAU;AACxB,cAAc,QAAQ;AACtB,cAAc,YAAY;AAC1B,cAAc,UAAU;AACxB,cAAc,SAAS;AACvB,cAAc,QAAQ;AACtB,cAAc,uBAAuB;AACrC,cAAc,SAAS;AACvB,cAAc,aAAa;AAC3B,cAAc,cAAc;AAC5B,cAAc,YAAY;AAC1B,cAAc,kBAAkB;AAChC,cAAc,kBAAkB;AAChC,cAAc,eAAe;AAC7B,cAAc,qBAAqB;AACnC,cAAc,gBAAgB;AAC9B,cAAc,mBAAmB;AACjC,cAAc,kBAAkB;AAChC,cAAc,oBAAoB;AAClC,cAAc,QAAQ;AACtB,cAAc,aAAa;AAC3B,cAAc,QAAQ;AACtB,SACEA,qBAAqB,EACrBC,4BAA4B,EAC5BC,kBAAkB,EAElBC,0BAA0B,EAC1BC,gBAAgB,EAChBC,qBAAqB,EACrBC,oBAAoB,EACpBC,iBAAiB,EACjBC,kBAAkB,EAClBC,iBAAiB,EACjBC,YAAY,EACZC,2BAA2B,EAC3BC,kBAAkB,QAmBb,WAAW;AAClB,cAAc,UAAU;AACxB,cAAc,UAAU;AACxB,cAAc,QAAQ;AACtB,cAAc,QAAQ;AACtB,cAAc,SAAS;AACvB,cAAc,WAAW;AACzB,cAAc,UAAU;AACxB,cAAc,gBAAgB;AAC9B,cAAc,SAAS;AACvB,cAAc,UAAU;AAExB,SAASC,kBAAkB,EAAEC,qBAAqB,QAAQ,eAAe;AACzE,SAASC,cAAc,EAAEC,mBAAmB,QAAQ,wBAAwB;AAC5E,SACEC,iBAAiB,EACjBC,sBAAsB,QAEjB,2BAA2B;AAClC,SAASC,SAAS,QAAQ,mBAAmB;AAC7C,SAASC,cAAc,QAAQ,sBAAsB;AACrD,SAASC,IAAI,QAAQ,QAAQ","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["MODAL_OVERLAY_Z_INDEX","NOTIFICATION_OVERLAY_Z_INDEX","OVERLAY_PLACEMENTS","getAnchoredOverlayPosition","OverlayContainer","OverlayInsetsProvider","OverlayStackProvider","useAnchorPosition","useAnchoredOverlay","useDismissOverlay","useEscapeKey","useOverlayStackRegistration","useOverlayPosition","FormControlContext","useFormControlContext","dataAttributes","mergeDataAttributes","domDataAttributes","mergeDomDataAttributes","assignRef","createPortalFn","Slot"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;AAAA,cAAc,UAAU;AACxB,cAAc,eAAe;AAC7B,cAAc,UAAU;AACxB,cAAc,QAAQ;AACtB,cAAc,YAAY;AAC1B,cAAc,UAAU;AACxB,cAAc,SAAS;AACvB,cAAc,QAAQ;AACtB,cAAc,uBAAuB;AACrC,cAAc,SAAS;AACvB,cAAc,aAAa;AAC3B,cAAc,cAAc;AAC5B,cAAc,YAAY;AAC1B,cAAc,kBAAkB;AAChC,cAAc,kBAAkB;AAChC,cAAc,eAAe;AAC7B,cAAc,qBAAqB;AACnC,cAAc,gBAAgB;AAC9B,cAAc,mBAAmB;AACjC,cAAc,kBAAkB;AAChC,cAAc,oBAAoB;AAClC,cAAc,QAAQ;AACtB,cAAc,aAAa;AAC3B,cAAc,QAAQ;AACtB,SACEA,qBAAqB,EACrBC,4BAA4B,EAC5BC,kBAAkB,EAElBC,0BAA0B,EAC1BC,gBAAgB,EAChBC,qBAAqB,EACrBC,oBAAoB,EACpBC,iBAAiB,EACjBC,kBAAkB,EAClBC,iBAAiB,EACjBC,YAAY,EACZC,2BAA2B,EAC3BC,kBAAkB,QAmBb,WAAW;AAClB,cAAc,UAAU;AACxB,cAAc,UAAU;AACxB,cAAc,QAAQ;AACtB,cAAc,QAAQ;AACtB,cAAc,SAAS;AACvB,cAAc,WAAW;AACzB,cAAc,UAAU;AACxB,cAAc,gBAAgB;AAC9B,cAAc,SAAS;AACvB,cAAc,aAAa;AAC3B,cAAc,UAAU;AAExB,SAASC,kBAAkB,EAAEC,qBAAqB,QAAQ,eAAe;AACzE,SAASC,cAAc,EAAEC,mBAAmB,QAAQ,wBAAwB;AAC5E,SACEC,iBAAiB,EACjBC,sBAAsB,QAEjB,2BAA2B;AAClC,SAASC,SAAS,QAAQ,mBAAmB;AAC7C,SAASC,cAAc,QAAQ,sBAAsB;AACrD,SAASC,IAAI,QAAQ,QAAQ","ignoreList":[]}
|
|
@@ -7,6 +7,7 @@ import { assignRef } from '../utils/assignRef';
|
|
|
7
7
|
import { dataAttributes } from '../utils/dataAttributes';
|
|
8
8
|
import { useSliderContext } from './context';
|
|
9
9
|
import { getPointerCoords, getRatioFromPagePoint, useWebSliderDrag } from './useSliderPointer';
|
|
10
|
+
import { clamp, getClosestValueIndex } from './utils';
|
|
10
11
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
11
12
|
export const SliderRail = /*#__PURE__*/forwardRef(({
|
|
12
13
|
asChild,
|
|
@@ -16,16 +17,22 @@ export const SliderRail = /*#__PURE__*/forwardRef(({
|
|
|
16
17
|
...props
|
|
17
18
|
}, ref) => {
|
|
18
19
|
const {
|
|
20
|
+
values,
|
|
21
|
+
min,
|
|
22
|
+
max,
|
|
23
|
+
step,
|
|
19
24
|
orientation,
|
|
20
25
|
isDisabled,
|
|
21
26
|
isDragging,
|
|
22
27
|
trackLayout,
|
|
23
28
|
thumbSize,
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
29
|
+
setNearestThumbValueFromRatio,
|
|
30
|
+
setThumbValueFromRatio,
|
|
31
|
+
setDraggingIndex,
|
|
32
|
+
setTrackLayout
|
|
27
33
|
} = useSliderContext();
|
|
28
34
|
const railRef = useRef(null);
|
|
35
|
+
const draggingThumbIndexRef = useRef(null);
|
|
29
36
|
const measureRail = useCallback(() => {
|
|
30
37
|
const node = railRef.current;
|
|
31
38
|
if (!node?.measureInWindow) {
|
|
@@ -44,12 +51,26 @@ export const SliderRail = /*#__PURE__*/forwardRef(({
|
|
|
44
51
|
measureRail();
|
|
45
52
|
onLayout?.(event);
|
|
46
53
|
}, [measureRail, onLayout]);
|
|
54
|
+
const setRatioForRailDrag = useCallback((ratio, complete) => {
|
|
55
|
+
const thumbIndex = draggingThumbIndexRef.current;
|
|
56
|
+
if (thumbIndex == null) {
|
|
57
|
+
setNearestThumbValueFromRatio(ratio, complete);
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
setThumbValueFromRatio(thumbIndex, ratio, complete);
|
|
61
|
+
if (complete) {
|
|
62
|
+
draggingThumbIndexRef.current = null;
|
|
63
|
+
}
|
|
64
|
+
}, [setNearestThumbValueFromRatio, setThumbValueFromRatio]);
|
|
65
|
+
const setDraggingForRail = useCallback(dragging => {
|
|
66
|
+
setDraggingIndex(dragging ? draggingThumbIndexRef.current : null);
|
|
67
|
+
}, [setDraggingIndex]);
|
|
47
68
|
const {
|
|
48
69
|
startDrag
|
|
49
70
|
} = useWebSliderDrag({
|
|
50
71
|
isDisabled,
|
|
51
|
-
setIsDragging,
|
|
52
|
-
setValueFromRatio,
|
|
72
|
+
setIsDragging: setDraggingForRail,
|
|
73
|
+
setValueFromRatio: setRatioForRailDrag,
|
|
53
74
|
trackLayout,
|
|
54
75
|
orientation,
|
|
55
76
|
thumbSize
|
|
@@ -62,8 +83,8 @@ export const SliderRail = /*#__PURE__*/forwardRef(({
|
|
|
62
83
|
x,
|
|
63
84
|
y
|
|
64
85
|
} = getPointerCoords(event.nativeEvent);
|
|
65
|
-
|
|
66
|
-
}, [isDisabled, orientation,
|
|
86
|
+
setNearestThumbValueFromRatio(getRatioFromPagePoint(x, y, trackLayout, orientation, thumbSize), true);
|
|
87
|
+
}, [isDisabled, orientation, setNearestThumbValueFromRatio, thumbSize, trackLayout]);
|
|
67
88
|
const handlePress = useCallback(event => {
|
|
68
89
|
updateFromEvent(event);
|
|
69
90
|
}, [updateFromEvent]);
|
|
@@ -86,8 +107,13 @@ export const SliderRail = /*#__PURE__*/forwardRef(({
|
|
|
86
107
|
x,
|
|
87
108
|
y
|
|
88
109
|
} = getPointerCoords(event.nativeEvent);
|
|
89
|
-
|
|
90
|
-
|
|
110
|
+
const ratio = getRatioFromPagePoint(x, y, freshLayout, orientation, thumbSize);
|
|
111
|
+
const target = min + clamp(ratio, 0, 1) * (max - min);
|
|
112
|
+
const nearestIndex = getClosestValueIndex(values, target);
|
|
113
|
+
draggingThumbIndexRef.current = nearestIndex;
|
|
114
|
+
setDraggingIndex(nearestIndex);
|
|
115
|
+
startDrag(x, y, ratio, freshLayout);
|
|
116
|
+
}, [isDisabled, max, min, orientation, setDraggingIndex, setTrackLayout, startDrag, step, thumbSize, values]);
|
|
91
117
|
const Comp = asChild ? Slot : View;
|
|
92
118
|
return /*#__PURE__*/_jsx(Pressable, {
|
|
93
119
|
accessibilityRole: "none",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["forwardRef","useCallback","useRef","Platform","Pressable","StyleSheet","View","Slot","assignRef","dataAttributes","useSliderContext","getPointerCoords","getRatioFromPagePoint","useWebSliderDrag","jsx","_jsx","SliderRail","asChild","style","onLayout","children","props","ref","orientation","isDisabled","isDragging","trackLayout","thumbSize","
|
|
1
|
+
{"version":3,"names":["forwardRef","useCallback","useRef","Platform","Pressable","StyleSheet","View","Slot","assignRef","dataAttributes","useSliderContext","getPointerCoords","getRatioFromPagePoint","useWebSliderDrag","clamp","getClosestValueIndex","jsx","_jsx","SliderRail","asChild","style","onLayout","children","props","ref","values","min","max","step","orientation","isDisabled","isDragging","trackLayout","thumbSize","setNearestThumbValueFromRatio","setThumbValueFromRatio","setDraggingIndex","setTrackLayout","railRef","draggingThumbIndexRef","measureRail","node","current","measureInWindow","x","y","width","height","handleLayout","event","setRatioForRailDrag","ratio","complete","thumbIndex","setDraggingForRail","dragging","startDrag","setIsDragging","setValueFromRatio","updateFromEvent","nativeEvent","handlePress","handlePointerDown","OS","preventDefault","rect","getBoundingClientRect","freshLayout","left","top","target","nearestIndex","Comp","accessibilityRole","accessible","disabled","onPress","undefined","onPointerDown","accessibilityElementsHidden","importantForAccessibility","tabIndex","styles","railHitArea","slot","displayName","create","absoluteFillObject","justifyContent","alignItems"],"sourceRoot":"../../../src","sources":["slider/SliderRail.tsx"],"mappings":"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","ignoreList":[]}
|