@cdx-ui/primitives 0.1.7 → 0.2.1
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/calendar/CalendarRoot.js +3 -1
- package/lib/commonjs/calendar/CalendarRoot.js.map +1 -1
- package/lib/commonjs/calendar/context.js.map +1 -1
- package/lib/commonjs/color/Color.js +69 -0
- package/lib/commonjs/color/Color.js.map +1 -0
- package/lib/commonjs/color/index.js +13 -0
- package/lib/commonjs/color/index.js.map +1 -0
- package/lib/commonjs/color/types.js +2 -0
- package/lib/commonjs/color/types.js.map +1 -0
- package/lib/commonjs/color-area/ColorAreaAccessibility.js +100 -0
- package/lib/commonjs/color-area/ColorAreaAccessibility.js.map +1 -0
- package/lib/commonjs/color-area/ColorAreaAccessibility.web.js +58 -0
- package/lib/commonjs/color-area/ColorAreaAccessibility.web.js.map +1 -0
- package/lib/commonjs/color-area/ColorAreaRoot.js +240 -0
- package/lib/commonjs/color-area/ColorAreaRoot.js.map +1 -0
- package/lib/commonjs/color-area/ColorAreaThumb.js +71 -0
- package/lib/commonjs/color-area/ColorAreaThumb.js.map +1 -0
- package/lib/commonjs/color-area/context.js +11 -0
- package/lib/commonjs/color-area/context.js.map +1 -0
- package/lib/commonjs/color-area/index.js +27 -0
- package/lib/commonjs/color-area/index.js.map +1 -0
- package/lib/commonjs/color-area/types.js +6 -0
- package/lib/commonjs/color-area/types.js.map +1 -0
- package/lib/commonjs/color-area/utils.js +51 -0
- package/lib/commonjs/color-area/utils.js.map +1 -0
- package/lib/commonjs/color-field/ColorFieldInput.js +67 -0
- package/lib/commonjs/color-field/ColorFieldInput.js.map +1 -0
- package/lib/commonjs/color-field/ColorFieldRoot.js +104 -0
- package/lib/commonjs/color-field/ColorFieldRoot.js.map +1 -0
- package/lib/commonjs/color-field/context.js +11 -0
- package/lib/commonjs/color-field/context.js.map +1 -0
- package/lib/commonjs/color-field/index.js +27 -0
- package/lib/commonjs/color-field/index.js.map +1 -0
- package/lib/commonjs/color-field/types.js +6 -0
- package/lib/commonjs/color-field/types.js.map +1 -0
- package/lib/commonjs/color-field/utils.js +60 -0
- package/lib/commonjs/color-field/utils.js.map +1 -0
- package/lib/commonjs/color-picker/ColorPickerRoot.js +69 -0
- package/lib/commonjs/color-picker/ColorPickerRoot.js.map +1 -0
- package/lib/commonjs/color-picker/ColorPickerTrigger.js +98 -0
- package/lib/commonjs/color-picker/ColorPickerTrigger.js.map +1 -0
- package/lib/commonjs/color-picker/context.js +32 -0
- package/lib/commonjs/color-picker/context.js.map +1 -0
- package/lib/commonjs/color-picker/index.js +51 -0
- package/lib/commonjs/color-picker/index.js.map +1 -0
- package/lib/commonjs/color-picker/types.js +6 -0
- package/lib/commonjs/color-picker/types.js.map +1 -0
- package/lib/commonjs/color-slider/ColorSliderRail.js +119 -0
- package/lib/commonjs/color-slider/ColorSliderRail.js.map +1 -0
- package/lib/commonjs/color-slider/ColorSliderRoot.js +153 -0
- package/lib/commonjs/color-slider/ColorSliderRoot.js.map +1 -0
- package/lib/commonjs/color-slider/ColorSliderThumb.js +265 -0
- package/lib/commonjs/color-slider/ColorSliderThumb.js.map +1 -0
- package/lib/commonjs/color-slider/context.js +11 -0
- package/lib/commonjs/color-slider/context.js.map +1 -0
- package/lib/commonjs/color-slider/index.js +34 -0
- package/lib/commonjs/color-slider/index.js.map +1 -0
- package/lib/commonjs/color-slider/types.js +6 -0
- package/lib/commonjs/color-slider/types.js.map +1 -0
- package/lib/commonjs/color-slider/utils.js +75 -0
- package/lib/commonjs/color-slider/utils.js.map +1 -0
- package/lib/commonjs/color-swatch-picker/ColorSwatchPickerItem.js +46 -0
- package/lib/commonjs/color-swatch-picker/ColorSwatchPickerItem.js.map +1 -0
- package/lib/commonjs/color-swatch-picker/ColorSwatchPickerRoot.js +71 -0
- package/lib/commonjs/color-swatch-picker/ColorSwatchPickerRoot.js.map +1 -0
- package/lib/commonjs/color-swatch-picker/context.js +22 -0
- package/lib/commonjs/color-swatch-picker/context.js.map +1 -0
- package/lib/commonjs/color-swatch-picker/index.js +33 -0
- package/lib/commonjs/color-swatch-picker/index.js.map +1 -0
- package/lib/commonjs/color-swatch-picker/types.js +6 -0
- package/lib/commonjs/color-swatch-picker/types.js.map +1 -0
- package/lib/commonjs/date-field/DateFieldRoot.js +5 -1
- package/lib/commonjs/date-field/DateFieldRoot.js.map +1 -1
- package/lib/commonjs/date-field/DateFieldSegment.js +7 -1
- package/lib/commonjs/date-field/DateFieldSegment.js.map +1 -1
- package/lib/commonjs/date-field/context.js.map +1 -1
- package/lib/commonjs/date-picker/DatePickerRoot.js +59 -13
- package/lib/commonjs/date-picker/DatePickerRoot.js.map +1 -1
- package/lib/commonjs/date-picker/context.js.map +1 -1
- package/lib/commonjs/index.js +80 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/react-native-web.d.js +2 -0
- package/lib/commonjs/react-native-web.d.js.map +1 -0
- package/lib/commonjs/slider/useSliderPointer.js +2 -0
- package/lib/commonjs/slider/useSliderPointer.js.map +1 -1
- package/lib/commonjs/utils/createPortal.web.js +10 -1
- package/lib/commonjs/utils/createPortal.web.js.map +1 -1
- package/lib/commonjs/utils/textAncestor.js +25 -0
- package/lib/commonjs/utils/textAncestor.js.map +1 -0
- package/lib/commonjs/utils/textAncestor.web.js +27 -0
- package/lib/commonjs/utils/textAncestor.web.js.map +1 -0
- package/lib/module/calendar/CalendarRoot.js +3 -1
- package/lib/module/calendar/CalendarRoot.js.map +1 -1
- package/lib/module/calendar/context.js.map +1 -1
- package/lib/module/color/Color.js +65 -0
- package/lib/module/color/Color.js.map +1 -0
- package/lib/module/color/index.js +4 -0
- package/lib/module/color/index.js.map +1 -0
- package/lib/module/color/types.js +2 -0
- package/lib/module/color/types.js.map +1 -0
- package/lib/module/color-area/ColorAreaAccessibility.js +96 -0
- package/lib/module/color-area/ColorAreaAccessibility.js.map +1 -0
- package/lib/module/color-area/ColorAreaAccessibility.web.js +54 -0
- package/lib/module/color-area/ColorAreaAccessibility.web.js.map +1 -0
- package/lib/module/color-area/ColorAreaRoot.js +236 -0
- package/lib/module/color-area/ColorAreaRoot.js.map +1 -0
- package/lib/module/color-area/ColorAreaThumb.js +67 -0
- package/lib/module/color-area/ColorAreaThumb.js.map +1 -0
- package/lib/module/color-area/context.js +5 -0
- package/lib/module/color-area/context.js.map +1 -0
- package/lib/module/color-area/index.js +6 -0
- package/lib/module/color-area/index.js.map +1 -0
- package/lib/module/color-area/types.js +4 -0
- package/lib/module/color-area/types.js.map +1 -0
- package/lib/module/color-area/utils.js +45 -0
- package/lib/module/color-area/utils.js.map +1 -0
- package/lib/module/color-field/ColorFieldInput.js +63 -0
- package/lib/module/color-field/ColorFieldInput.js.map +1 -0
- package/lib/module/color-field/ColorFieldRoot.js +100 -0
- package/lib/module/color-field/ColorFieldRoot.js.map +1 -0
- package/lib/module/color-field/context.js +5 -0
- package/lib/module/color-field/context.js.map +1 -0
- package/lib/module/color-field/index.js +6 -0
- package/lib/module/color-field/index.js.map +1 -0
- package/lib/module/color-field/types.js +4 -0
- package/lib/module/color-field/types.js.map +1 -0
- package/lib/module/color-field/utils.js +55 -0
- package/lib/module/color-field/utils.js.map +1 -0
- package/lib/module/color-picker/ColorPickerRoot.js +65 -0
- package/lib/module/color-picker/ColorPickerRoot.js.map +1 -0
- package/lib/module/color-picker/ColorPickerTrigger.js +94 -0
- package/lib/module/color-picker/ColorPickerTrigger.js.map +1 -0
- package/lib/module/color-picker/context.js +25 -0
- package/lib/module/color-picker/context.js.map +1 -0
- package/lib/module/color-picker/index.js +6 -0
- package/lib/module/color-picker/index.js.map +1 -0
- package/lib/module/color-picker/types.js +4 -0
- package/lib/module/color-picker/types.js.map +1 -0
- package/lib/module/color-slider/ColorSliderRail.js +115 -0
- package/lib/module/color-slider/ColorSliderRail.js.map +1 -0
- package/lib/module/color-slider/ColorSliderRoot.js +149 -0
- package/lib/module/color-slider/ColorSliderRoot.js.map +1 -0
- package/lib/module/color-slider/ColorSliderThumb.js +261 -0
- package/lib/module/color-slider/ColorSliderThumb.js.map +1 -0
- package/lib/module/color-slider/context.js +5 -0
- package/lib/module/color-slider/context.js.map +1 -0
- package/lib/module/color-slider/index.js +7 -0
- package/lib/module/color-slider/index.js.map +1 -0
- package/lib/module/color-slider/types.js +4 -0
- package/lib/module/color-slider/types.js.map +1 -0
- package/lib/module/color-slider/utils.js +66 -0
- package/lib/module/color-slider/utils.js.map +1 -0
- package/lib/module/color-swatch-picker/ColorSwatchPickerItem.js +42 -0
- package/lib/module/color-swatch-picker/ColorSwatchPickerItem.js.map +1 -0
- package/lib/module/color-swatch-picker/ColorSwatchPickerRoot.js +67 -0
- package/lib/module/color-swatch-picker/ColorSwatchPickerRoot.js.map +1 -0
- package/lib/module/color-swatch-picker/context.js +15 -0
- package/lib/module/color-swatch-picker/context.js.map +1 -0
- package/lib/module/color-swatch-picker/index.js +6 -0
- package/lib/module/color-swatch-picker/index.js.map +1 -0
- package/lib/module/color-swatch-picker/types.js +4 -0
- package/lib/module/color-swatch-picker/types.js.map +1 -0
- package/lib/module/date-field/DateFieldRoot.js +6 -2
- package/lib/module/date-field/DateFieldRoot.js.map +1 -1
- package/lib/module/date-field/DateFieldSegment.js +7 -1
- package/lib/module/date-field/DateFieldSegment.js.map +1 -1
- package/lib/module/date-field/context.js.map +1 -1
- package/lib/module/date-picker/DatePickerRoot.js +62 -16
- package/lib/module/date-picker/DatePickerRoot.js.map +1 -1
- package/lib/module/date-picker/context.js.map +1 -1
- package/lib/module/index.js +7 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/react-native-web.d.js +2 -0
- package/lib/module/react-native-web.d.js.map +1 -0
- package/lib/module/slider/useSliderPointer.js +2 -0
- package/lib/module/slider/useSliderPointer.js.map +1 -1
- package/lib/module/utils/createPortal.web.js +9 -1
- package/lib/module/utils/createPortal.web.js.map +1 -1
- package/lib/module/utils/textAncestor.js +20 -0
- package/lib/module/utils/textAncestor.js.map +1 -0
- package/lib/module/utils/textAncestor.web.js +22 -0
- package/lib/module/utils/textAncestor.web.js.map +1 -0
- package/lib/typescript/calendar/CalendarRoot.d.ts.map +1 -1
- package/lib/typescript/calendar/context.d.ts +1 -0
- package/lib/typescript/calendar/context.d.ts.map +1 -1
- package/lib/typescript/calendar/types.d.ts +7 -0
- package/lib/typescript/calendar/types.d.ts.map +1 -1
- package/lib/typescript/color/Color.d.ts +3 -0
- package/lib/typescript/color/Color.d.ts.map +1 -0
- package/lib/typescript/color/index.d.ts +3 -0
- package/lib/typescript/color/index.d.ts.map +1 -0
- package/lib/typescript/color/types.d.ts +13 -0
- package/lib/typescript/color/types.d.ts.map +1 -0
- package/lib/typescript/color-area/ColorAreaAccessibility.d.ts +8 -0
- package/lib/typescript/color-area/ColorAreaAccessibility.d.ts.map +1 -0
- package/lib/typescript/color-area/ColorAreaAccessibility.web.d.ts +8 -0
- package/lib/typescript/color-area/ColorAreaAccessibility.web.d.ts.map +1 -0
- package/lib/typescript/color-area/ColorAreaRoot.d.ts +7 -0
- package/lib/typescript/color-area/ColorAreaRoot.d.ts.map +1 -0
- package/lib/typescript/color-area/ColorAreaThumb.d.ts +6 -0
- package/lib/typescript/color-area/ColorAreaThumb.d.ts.map +1 -0
- package/lib/typescript/color-area/context.d.ts +6 -0
- package/lib/typescript/color-area/context.d.ts.map +1 -0
- package/lib/typescript/color-area/index.d.ts +5 -0
- package/lib/typescript/color-area/index.d.ts.map +1 -0
- package/lib/typescript/color-area/types.d.ts +65 -0
- package/lib/typescript/color-area/types.d.ts.map +1 -0
- package/lib/typescript/color-area/utils.d.ts +5 -0
- package/lib/typescript/color-area/utils.d.ts.map +1 -0
- package/lib/typescript/color-field/ColorFieldInput.d.ts +5 -0
- package/lib/typescript/color-field/ColorFieldInput.d.ts.map +1 -0
- package/lib/typescript/color-field/ColorFieldRoot.d.ts +7 -0
- package/lib/typescript/color-field/ColorFieldRoot.d.ts.map +1 -0
- package/lib/typescript/color-field/context.d.ts +6 -0
- package/lib/typescript/color-field/context.d.ts.map +1 -0
- package/lib/typescript/color-field/index.d.ts +7 -0
- package/lib/typescript/color-field/index.d.ts.map +1 -0
- package/lib/typescript/color-field/types.d.ts +39 -0
- package/lib/typescript/color-field/types.d.ts.map +1 -0
- package/lib/typescript/color-field/utils.d.ts +5 -0
- package/lib/typescript/color-field/utils.d.ts.map +1 -0
- package/lib/typescript/color-picker/ColorPickerRoot.d.ts +7 -0
- package/lib/typescript/color-picker/ColorPickerRoot.d.ts.map +1 -0
- package/lib/typescript/color-picker/ColorPickerTrigger.d.ts +4 -0
- package/lib/typescript/color-picker/ColorPickerTrigger.d.ts.map +1 -0
- package/lib/typescript/color-picker/context.d.ts +19 -0
- package/lib/typescript/color-picker/context.d.ts.map +1 -0
- package/lib/typescript/color-picker/index.d.ts +5 -0
- package/lib/typescript/color-picker/index.d.ts.map +1 -0
- package/lib/typescript/color-picker/types.d.ts +24 -0
- package/lib/typescript/color-picker/types.d.ts.map +1 -0
- package/lib/typescript/color-slider/ColorSliderRail.d.ts +6 -0
- package/lib/typescript/color-slider/ColorSliderRail.d.ts.map +1 -0
- package/lib/typescript/color-slider/ColorSliderRoot.d.ts +7 -0
- package/lib/typescript/color-slider/ColorSliderRoot.d.ts.map +1 -0
- package/lib/typescript/color-slider/ColorSliderThumb.d.ts +6 -0
- package/lib/typescript/color-slider/ColorSliderThumb.d.ts.map +1 -0
- package/lib/typescript/color-slider/context.d.ts +6 -0
- package/lib/typescript/color-slider/context.d.ts.map +1 -0
- package/lib/typescript/color-slider/index.d.ts +6 -0
- package/lib/typescript/color-slider/index.d.ts.map +1 -0
- package/lib/typescript/color-slider/types.d.ts +82 -0
- package/lib/typescript/color-slider/types.d.ts.map +1 -0
- package/lib/typescript/color-slider/utils.d.ts +12 -0
- package/lib/typescript/color-slider/utils.d.ts.map +1 -0
- package/lib/typescript/color-swatch-picker/ColorSwatchPickerItem.d.ts +6 -0
- package/lib/typescript/color-swatch-picker/ColorSwatchPickerItem.d.ts.map +1 -0
- package/lib/typescript/color-swatch-picker/ColorSwatchPickerRoot.d.ts +7 -0
- package/lib/typescript/color-swatch-picker/ColorSwatchPickerRoot.d.ts.map +1 -0
- package/lib/typescript/color-swatch-picker/context.d.ts +8 -0
- package/lib/typescript/color-swatch-picker/context.d.ts.map +1 -0
- package/lib/typescript/color-swatch-picker/index.d.ts +5 -0
- package/lib/typescript/color-swatch-picker/index.d.ts.map +1 -0
- package/lib/typescript/color-swatch-picker/types.d.ts +26 -0
- package/lib/typescript/color-swatch-picker/types.d.ts.map +1 -0
- package/lib/typescript/date-field/DateFieldRoot.d.ts.map +1 -1
- package/lib/typescript/date-field/DateFieldSegment.d.ts.map +1 -1
- package/lib/typescript/date-field/context.d.ts +2 -0
- package/lib/typescript/date-field/context.d.ts.map +1 -1
- package/lib/typescript/date-picker/DatePickerRoot.d.ts +29 -3
- package/lib/typescript/date-picker/DatePickerRoot.d.ts.map +1 -1
- package/lib/typescript/date-picker/context.d.ts +1 -0
- package/lib/typescript/date-picker/context.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +7 -0
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/slider/useSliderPointer.d.ts.map +1 -1
- package/lib/typescript/utils/createPortal.web.d.ts +6 -2
- package/lib/typescript/utils/createPortal.web.d.ts.map +1 -1
- package/lib/typescript/utils/textAncestor.d.ts +13 -0
- package/lib/typescript/utils/textAncestor.d.ts.map +1 -0
- package/lib/typescript/utils/textAncestor.web.d.ts +15 -0
- package/lib/typescript/utils/textAncestor.web.d.ts.map +1 -0
- package/package.json +4 -3
- package/src/calendar/CalendarRoot.tsx +3 -0
- package/src/calendar/context.tsx +1 -0
- package/src/calendar/types.ts +7 -0
- package/src/color/Color.ts +95 -0
- package/src/color/index.ts +2 -0
- package/src/color/types.ts +19 -0
- package/src/color-area/ColorAreaAccessibility.tsx +94 -0
- package/src/color-area/ColorAreaAccessibility.web.tsx +52 -0
- package/src/color-area/ColorAreaRoot.tsx +326 -0
- package/src/color-area/ColorAreaThumb.tsx +56 -0
- package/src/color-area/context.tsx +5 -0
- package/src/color-area/index.ts +10 -0
- package/src/color-area/types.ts +69 -0
- package/src/color-area/utils.ts +51 -0
- package/src/color-field/ColorFieldInput.tsx +66 -0
- package/src/color-field/ColorFieldRoot.tsx +132 -0
- package/src/color-field/context.tsx +5 -0
- package/src/color-field/index.ts +11 -0
- package/src/color-field/types.ts +46 -0
- package/src/color-field/utils.ts +75 -0
- package/src/color-picker/ColorPickerRoot.tsx +91 -0
- package/src/color-picker/ColorPickerTrigger.tsx +96 -0
- package/src/color-picker/context.tsx +47 -0
- package/src/color-picker/index.ts +12 -0
- package/src/color-picker/types.ts +25 -0
- package/src/color-slider/ColorSliderRail.tsx +130 -0
- package/src/color-slider/ColorSliderRoot.tsx +222 -0
- package/src/color-slider/ColorSliderThumb.tsx +294 -0
- package/src/color-slider/context.tsx +5 -0
- package/src/color-slider/index.ts +16 -0
- package/src/color-slider/types.ts +94 -0
- package/src/color-slider/utils.ts +79 -0
- package/src/color-swatch-picker/ColorSwatchPickerItem.tsx +54 -0
- package/src/color-swatch-picker/ColorSwatchPickerRoot.tsx +94 -0
- package/src/color-swatch-picker/context.tsx +22 -0
- package/src/color-swatch-picker/index.ts +4 -0
- package/src/color-swatch-picker/types.ts +29 -0
- package/src/date-field/DateFieldRoot.tsx +4 -1
- package/src/date-field/DateFieldSegment.tsx +19 -3
- package/src/date-field/context.tsx +2 -0
- package/src/date-picker/DatePickerRoot.tsx +127 -18
- package/src/date-picker/context.tsx +1 -0
- package/src/index.ts +7 -0
- package/src/react-native-web.d.ts +6 -0
- package/src/slider/useSliderPointer.ts +3 -0
- package/src/utils/createPortal.web.ts +9 -3
- package/src/utils/textAncestor.ts +19 -0
- package/src/utils/textAncestor.web.ts +19 -0
|
@@ -0,0 +1,265 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.ColorSliderThumb = void 0;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _utils = require("@cdx-ui/utils");
|
|
10
|
+
var _focus = require("@react-native-aria/focus");
|
|
11
|
+
var _interactions = require("@react-native-aria/interactions");
|
|
12
|
+
var _slot = require("../slot");
|
|
13
|
+
var _useSliderPointer = require("../slider/useSliderPointer");
|
|
14
|
+
var _utils2 = require("../slider/utils");
|
|
15
|
+
var _dataAttributes = require("../utils/dataAttributes");
|
|
16
|
+
var _context = require("./context");
|
|
17
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
18
|
+
const ColorSliderThumb = exports.ColorSliderThumb = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
19
|
+
asChild,
|
|
20
|
+
style,
|
|
21
|
+
accessibilityLabel: accessibilityLabelProp,
|
|
22
|
+
onLayout,
|
|
23
|
+
onFocus,
|
|
24
|
+
onBlur,
|
|
25
|
+
onHoverIn,
|
|
26
|
+
onHoverOut,
|
|
27
|
+
children,
|
|
28
|
+
...props
|
|
29
|
+
}, ref) => {
|
|
30
|
+
const {
|
|
31
|
+
channel,
|
|
32
|
+
channelValue,
|
|
33
|
+
valueLabel,
|
|
34
|
+
min,
|
|
35
|
+
max,
|
|
36
|
+
step,
|
|
37
|
+
pageStep,
|
|
38
|
+
percent,
|
|
39
|
+
orientation,
|
|
40
|
+
isDisabled,
|
|
41
|
+
isDragging,
|
|
42
|
+
layout,
|
|
43
|
+
thumbSize,
|
|
44
|
+
accessibilityLabel: rootAccessibilityLabel,
|
|
45
|
+
setThumbSize,
|
|
46
|
+
setIsDragging,
|
|
47
|
+
setChannelValue,
|
|
48
|
+
setValueFromRatio
|
|
49
|
+
} = (0, _context.useColorSliderContext)();
|
|
50
|
+
const {
|
|
51
|
+
focusProps,
|
|
52
|
+
isFocused
|
|
53
|
+
} = (0, _focus.useFocus)();
|
|
54
|
+
const {
|
|
55
|
+
focusProps: focusRingProps,
|
|
56
|
+
isFocusVisible
|
|
57
|
+
} = (0, _focus.useFocusRing)();
|
|
58
|
+
const {
|
|
59
|
+
hoverProps,
|
|
60
|
+
isHovered
|
|
61
|
+
} = (0, _interactions.useHover)();
|
|
62
|
+
const percentRef = (0, _react.useRef)(percent);
|
|
63
|
+
percentRef.current = percent;
|
|
64
|
+
const dragStartRatioRef = (0, _react.useRef)(0);
|
|
65
|
+
const lastRatioRef = (0, _react.useRef)(percent / 100);
|
|
66
|
+
const orientationRef = (0, _react.useRef)(orientation);
|
|
67
|
+
orientationRef.current = orientation;
|
|
68
|
+
const layoutRef = (0, _react.useRef)(layout);
|
|
69
|
+
layoutRef.current = layout;
|
|
70
|
+
const thumbSizeRef = (0, _react.useRef)(thumbSize);
|
|
71
|
+
thumbSizeRef.current = thumbSize;
|
|
72
|
+
const isDisabledRef = (0, _react.useRef)(isDisabled);
|
|
73
|
+
isDisabledRef.current = isDisabled;
|
|
74
|
+
const setIsDraggingRef = (0, _react.useRef)(setIsDragging);
|
|
75
|
+
setIsDraggingRef.current = setIsDragging;
|
|
76
|
+
const setValueFromRatioRef = (0, _react.useRef)(setValueFromRatio);
|
|
77
|
+
setValueFromRatioRef.current = setValueFromRatio;
|
|
78
|
+
const thumbAxisSize = orientation === 'horizontal' ? thumbSize.width : thumbSize.height;
|
|
79
|
+
const {
|
|
80
|
+
startDrag
|
|
81
|
+
} = (0, _useSliderPointer.useWebSliderDrag)({
|
|
82
|
+
isDisabled,
|
|
83
|
+
setIsDragging,
|
|
84
|
+
setValueFromRatio,
|
|
85
|
+
trackLayout: layout,
|
|
86
|
+
orientation,
|
|
87
|
+
thumbSize: thumbAxisSize
|
|
88
|
+
});
|
|
89
|
+
const panResponder = (0, _react.useMemo)(() => _reactNative.PanResponder.create({
|
|
90
|
+
onStartShouldSetPanResponder: () => !isDisabledRef.current,
|
|
91
|
+
onMoveShouldSetPanResponder: () => !isDisabledRef.current,
|
|
92
|
+
onPanResponderTerminationRequest: () => false,
|
|
93
|
+
onShouldBlockNativeResponder: () => true,
|
|
94
|
+
onPanResponderGrant: () => {
|
|
95
|
+
if (isDisabledRef.current) {
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
setIsDraggingRef.current(true);
|
|
99
|
+
dragStartRatioRef.current = percentRef.current / 100;
|
|
100
|
+
lastRatioRef.current = dragStartRatioRef.current;
|
|
101
|
+
},
|
|
102
|
+
onPanResponderMove: (_event, gestureState) => {
|
|
103
|
+
const currentLayout = layoutRef.current;
|
|
104
|
+
if (!currentLayout) {
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
const isHorizontal = orientationRef.current === 'horizontal';
|
|
108
|
+
const trackSize = isHorizontal ? currentLayout.width : currentLayout.height;
|
|
109
|
+
const currentThumbSize = isHorizontal ? thumbSizeRef.current.width : thumbSizeRef.current.height;
|
|
110
|
+
const travel = (0, _utils2.getThumbTravel)(trackSize, currentThumbSize);
|
|
111
|
+
if (travel <= 0) {
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
114
|
+
const delta = isHorizontal ? gestureState.dx : -gestureState.dy;
|
|
115
|
+
const nextRatio = (0, _utils2.clamp)(dragStartRatioRef.current + delta / travel, 0, 1);
|
|
116
|
+
lastRatioRef.current = nextRatio;
|
|
117
|
+
setValueFromRatioRef.current(nextRatio);
|
|
118
|
+
},
|
|
119
|
+
onPanResponderRelease: () => {
|
|
120
|
+
setIsDraggingRef.current(false);
|
|
121
|
+
setValueFromRatioRef.current(lastRatioRef.current, true);
|
|
122
|
+
},
|
|
123
|
+
onPanResponderTerminate: () => {
|
|
124
|
+
setIsDraggingRef.current(false);
|
|
125
|
+
setValueFromRatioRef.current(lastRatioRef.current, true);
|
|
126
|
+
}
|
|
127
|
+
}), []);
|
|
128
|
+
const positionStyle = (0, _react.useMemo)(() => {
|
|
129
|
+
const trackWidth = layout?.width ?? 0;
|
|
130
|
+
const trackHeight = layout?.height ?? 0;
|
|
131
|
+
if (orientation === 'vertical') {
|
|
132
|
+
return {
|
|
133
|
+
position: 'absolute',
|
|
134
|
+
left: '50%',
|
|
135
|
+
bottom: (0, _utils2.percentToThumbOffset)(percent, trackHeight, thumbSize.height),
|
|
136
|
+
marginLeft: -thumbSize.width / 2
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
return {
|
|
140
|
+
position: 'absolute',
|
|
141
|
+
top: '50%',
|
|
142
|
+
left: (0, _utils2.percentToThumbOffset)(percent, trackWidth, thumbSize.width),
|
|
143
|
+
transform: [{
|
|
144
|
+
translateY: -thumbSize.height / 2
|
|
145
|
+
}]
|
|
146
|
+
};
|
|
147
|
+
}, [layout, orientation, percent, thumbSize.height, thumbSize.width]);
|
|
148
|
+
const handleKeyDown = (0, _react.useCallback)(event => {
|
|
149
|
+
if (isDisabled) {
|
|
150
|
+
return;
|
|
151
|
+
}
|
|
152
|
+
const key = event.nativeEvent?.key ?? event.key;
|
|
153
|
+
const shiftKey = event.nativeEvent?.shiftKey ?? event.shiftKey;
|
|
154
|
+
const increment = shiftKey ? pageStep : step;
|
|
155
|
+
let next = channelValue;
|
|
156
|
+
let handled = true;
|
|
157
|
+
if (key === 'ArrowUp' || key === 'ArrowRight') {
|
|
158
|
+
next += increment;
|
|
159
|
+
} else if (key === 'ArrowDown' || key === 'ArrowLeft') {
|
|
160
|
+
next -= increment;
|
|
161
|
+
} else if (key === 'PageUp') {
|
|
162
|
+
next += pageStep;
|
|
163
|
+
} else if (key === 'PageDown') {
|
|
164
|
+
next -= pageStep;
|
|
165
|
+
} else if (key === 'Home') {
|
|
166
|
+
next = min;
|
|
167
|
+
} else if (key === 'End') {
|
|
168
|
+
next = max;
|
|
169
|
+
} else {
|
|
170
|
+
handled = false;
|
|
171
|
+
}
|
|
172
|
+
if (handled) {
|
|
173
|
+
event.preventDefault?.();
|
|
174
|
+
setChannelValue(next, true);
|
|
175
|
+
}
|
|
176
|
+
}, [channelValue, isDisabled, max, min, pageStep, setChannelValue, step]);
|
|
177
|
+
const handleAccessibilityAction = (0, _react.useCallback)(event => {
|
|
178
|
+
if (event.nativeEvent.actionName === 'increment') {
|
|
179
|
+
setChannelValue(channelValue + step, true);
|
|
180
|
+
} else if (event.nativeEvent.actionName === 'decrement') {
|
|
181
|
+
setChannelValue(channelValue - step, true);
|
|
182
|
+
}
|
|
183
|
+
}, [channelValue, setChannelValue, step]);
|
|
184
|
+
const handleLayout = (0, _react.useCallback)(event => {
|
|
185
|
+
const {
|
|
186
|
+
width,
|
|
187
|
+
height
|
|
188
|
+
} = event.nativeEvent.layout;
|
|
189
|
+
setThumbSize({
|
|
190
|
+
width,
|
|
191
|
+
height
|
|
192
|
+
});
|
|
193
|
+
onLayout?.(event);
|
|
194
|
+
}, [onLayout, setThumbSize]);
|
|
195
|
+
const isWeb = _reactNative.Platform.OS === 'web';
|
|
196
|
+
const Comp = asChild ? _slot.Slot : isWeb ? _reactNative.Pressable : _reactNative.View;
|
|
197
|
+
const accessibilityLabel = accessibilityLabelProp ?? rootAccessibilityLabel ?? channel;
|
|
198
|
+
const handlePointerDown = (0, _react.useCallback)(event => {
|
|
199
|
+
if (_reactNative.Platform.OS !== 'web' || isDisabled) {
|
|
200
|
+
return;
|
|
201
|
+
}
|
|
202
|
+
event.preventDefault();
|
|
203
|
+
event.stopPropagation();
|
|
204
|
+
const {
|
|
205
|
+
x,
|
|
206
|
+
y
|
|
207
|
+
} = (0, _useSliderPointer.getPointerCoords)(event.nativeEvent);
|
|
208
|
+
startDrag(x, y, percentRef.current / 100);
|
|
209
|
+
}, [isDisabled, startDrag]);
|
|
210
|
+
const pointerProps = _reactNative.Platform.OS === 'web' ? {
|
|
211
|
+
onPointerDown: handlePointerDown,
|
|
212
|
+
disabled: isDisabled
|
|
213
|
+
} : panResponder.panHandlers;
|
|
214
|
+
const webAccessibilityProps = isWeb ? {
|
|
215
|
+
onKeyDown: handleKeyDown,
|
|
216
|
+
tabIndex: isDisabled ? -1 : 0,
|
|
217
|
+
role: 'slider',
|
|
218
|
+
'aria-valuemin': min,
|
|
219
|
+
'aria-valuemax': max,
|
|
220
|
+
'aria-valuenow': channelValue,
|
|
221
|
+
'aria-valuetext': valueLabel,
|
|
222
|
+
'aria-orientation': orientation,
|
|
223
|
+
'aria-disabled': isDisabled
|
|
224
|
+
} : {};
|
|
225
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(Comp, {
|
|
226
|
+
ref: ref,
|
|
227
|
+
...props,
|
|
228
|
+
...pointerProps,
|
|
229
|
+
...webAccessibilityProps,
|
|
230
|
+
onLayout: handleLayout,
|
|
231
|
+
onFocus: (0, _utils.composeEventHandlers)((0, _utils.composeEventHandlers)(onFocus, focusProps.onFocus), focusRingProps.onFocus),
|
|
232
|
+
onBlur: (0, _utils.composeEventHandlers)((0, _utils.composeEventHandlers)(onBlur, focusProps.onBlur), focusRingProps.onBlur),
|
|
233
|
+
onHoverIn: (0, _utils.composeEventHandlers)(onHoverIn, hoverProps.onHoverIn),
|
|
234
|
+
onHoverOut: (0, _utils.composeEventHandlers)(onHoverOut, hoverProps.onHoverOut),
|
|
235
|
+
accessibilityRole: "adjustable",
|
|
236
|
+
accessibilityLabel: accessibilityLabel,
|
|
237
|
+
accessibilityValue: {
|
|
238
|
+
min,
|
|
239
|
+
max,
|
|
240
|
+
now: Math.round(channelValue),
|
|
241
|
+
text: valueLabel
|
|
242
|
+
},
|
|
243
|
+
accessibilityState: {
|
|
244
|
+
disabled: isDisabled
|
|
245
|
+
},
|
|
246
|
+
accessibilityActions: [{
|
|
247
|
+
name: 'increment'
|
|
248
|
+
}, {
|
|
249
|
+
name: 'decrement'
|
|
250
|
+
}],
|
|
251
|
+
onAccessibilityAction: handleAccessibilityAction,
|
|
252
|
+
style: [positionStyle, style],
|
|
253
|
+
...(0, _dataAttributes.mergeDataAttributes)(props, (0, _dataAttributes.dataAttributes)({
|
|
254
|
+
slot: 'color-slider-thumb',
|
|
255
|
+
disabled: isDisabled,
|
|
256
|
+
hover: isHovered,
|
|
257
|
+
focus: isFocused,
|
|
258
|
+
focusVisible: isFocusVisible,
|
|
259
|
+
dragging: isDragging
|
|
260
|
+
})),
|
|
261
|
+
children: children
|
|
262
|
+
});
|
|
263
|
+
});
|
|
264
|
+
ColorSliderThumb.displayName = 'ColorSliderThumb';
|
|
265
|
+
//# sourceMappingURL=ColorSliderThumb.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_utils","_focus","_interactions","_slot","_useSliderPointer","_utils2","_dataAttributes","_context","_jsxRuntime","ColorSliderThumb","exports","forwardRef","asChild","style","accessibilityLabel","accessibilityLabelProp","onLayout","onFocus","onBlur","onHoverIn","onHoverOut","children","props","ref","channel","channelValue","valueLabel","min","max","step","pageStep","percent","orientation","isDisabled","isDragging","layout","thumbSize","rootAccessibilityLabel","setThumbSize","setIsDragging","setChannelValue","setValueFromRatio","useColorSliderContext","focusProps","isFocused","useFocus","focusRingProps","isFocusVisible","useFocusRing","hoverProps","isHovered","useHover","percentRef","useRef","current","dragStartRatioRef","lastRatioRef","orientationRef","layoutRef","thumbSizeRef","isDisabledRef","setIsDraggingRef","setValueFromRatioRef","thumbAxisSize","width","height","startDrag","useWebSliderDrag","trackLayout","panResponder","useMemo","PanResponder","create","onStartShouldSetPanResponder","onMoveShouldSetPanResponder","onPanResponderTerminationRequest","onShouldBlockNativeResponder","onPanResponderGrant","onPanResponderMove","_event","gestureState","currentLayout","isHorizontal","trackSize","currentThumbSize","travel","getThumbTravel","delta","dx","dy","nextRatio","clamp","onPanResponderRelease","onPanResponderTerminate","positionStyle","trackWidth","trackHeight","position","left","bottom","percentToThumbOffset","marginLeft","top","transform","translateY","handleKeyDown","useCallback","event","key","nativeEvent","shiftKey","increment","next","handled","preventDefault","handleAccessibilityAction","actionName","handleLayout","isWeb","Platform","OS","Comp","Slot","Pressable","View","handlePointerDown","stopPropagation","x","y","getPointerCoords","pointerProps","onPointerDown","disabled","panHandlers","webAccessibilityProps","onKeyDown","tabIndex","role","jsx","composeEventHandlers","accessibilityRole","accessibilityValue","now","Math","round","text","accessibilityState","accessibilityActions","name","onAccessibilityAction","mergeDataAttributes","dataAttributes","slot","hover","focus","focusVisible","dragging","displayName"],"sourceRoot":"../../../src","sources":["color-slider/ColorSliderThumb.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.useColorSliderContext = exports.ColorSliderProvider = void 0;
|
|
7
|
+
var _utils = require("@cdx-ui/utils");
|
|
8
|
+
const [ColorSliderProvider, useColorSliderContext] = (0, _utils.createContext)('ColorSliderContext');
|
|
9
|
+
exports.useColorSliderContext = useColorSliderContext;
|
|
10
|
+
exports.ColorSliderProvider = ColorSliderProvider;
|
|
11
|
+
//# sourceMappingURL=context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_utils","require","ColorSliderProvider","useColorSliderContext","createContext","exports"],"sourceRoot":"../../../src","sources":["color-slider/context.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAGO,MAAM,CAACC,mBAAmB,EAAEC,qBAAqB,CAAC,GACvD,IAAAC,oBAAa,EAA0B,oBAAoB,CAAC;AAACC,OAAA,CAAAF,qBAAA,GAAAA,qBAAA;AAAAE,OAAA,CAAAH,mBAAA,GAAAA,mBAAA","ignoreList":[]}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "ColorSliderRail", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _ColorSliderRail.ColorSliderRail;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
Object.defineProperty(exports, "ColorSliderRoot", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _ColorSliderRoot.ColorSliderRoot;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
Object.defineProperty(exports, "ColorSliderThumb", {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function () {
|
|
21
|
+
return _ColorSliderThumb.ColorSliderThumb;
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
Object.defineProperty(exports, "useColorSliderContext", {
|
|
25
|
+
enumerable: true,
|
|
26
|
+
get: function () {
|
|
27
|
+
return _context.useColorSliderContext;
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
var _ColorSliderRoot = require("./ColorSliderRoot");
|
|
31
|
+
var _ColorSliderRail = require("./ColorSliderRail");
|
|
32
|
+
var _ColorSliderThumb = require("./ColorSliderThumb");
|
|
33
|
+
var _context = require("./context");
|
|
34
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_ColorSliderRoot","require","_ColorSliderRail","_ColorSliderThumb","_context"],"sourceRoot":"../../../src","sources":["color-slider/index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,gBAAA,GAAAC,OAAA;AACA,IAAAC,gBAAA,GAAAD,OAAA;AACA,IAAAE,iBAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["color-slider/types.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.clampColorSliderValue = clampColorSliderValue;
|
|
7
|
+
exports.formatColorSliderValue = formatColorSliderValue;
|
|
8
|
+
exports.getColorSliderChannelValue = getColorSliderChannelValue;
|
|
9
|
+
exports.getColorSliderGradientColors = getColorSliderGradientColors;
|
|
10
|
+
exports.getColorSliderRange = getColorSliderRange;
|
|
11
|
+
exports.withColorSliderChannel = withColorSliderChannel;
|
|
12
|
+
const HUE_STOPS = [0, 60, 120, 180, 240, 300, 360];
|
|
13
|
+
function clampColorSliderValue(value, min, max) {
|
|
14
|
+
return Math.min(max, Math.max(min, value));
|
|
15
|
+
}
|
|
16
|
+
function getColorSliderRange({
|
|
17
|
+
colorSpace,
|
|
18
|
+
channel
|
|
19
|
+
}) {
|
|
20
|
+
if (colorSpace === 'rgb') {
|
|
21
|
+
return {
|
|
22
|
+
min: 0,
|
|
23
|
+
max: 255
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
if (channel === 'hue') {
|
|
27
|
+
return {
|
|
28
|
+
min: 0,
|
|
29
|
+
max: 360
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
return {
|
|
33
|
+
min: 0,
|
|
34
|
+
max: 100
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
function getColorSliderChannelValue(color, configuration) {
|
|
38
|
+
if (configuration.colorSpace === 'rgb') {
|
|
39
|
+
return color.getChannel('rgb', configuration.channel);
|
|
40
|
+
}
|
|
41
|
+
if (configuration.colorSpace === 'hsl') {
|
|
42
|
+
return color.getChannel('hsl', configuration.channel);
|
|
43
|
+
}
|
|
44
|
+
return color.getChannel('hsb', configuration.channel);
|
|
45
|
+
}
|
|
46
|
+
function withColorSliderChannel(color, configuration, value) {
|
|
47
|
+
if (configuration.colorSpace === 'rgb') {
|
|
48
|
+
return color.withChannel('rgb', configuration.channel, value);
|
|
49
|
+
}
|
|
50
|
+
if (configuration.colorSpace === 'hsl') {
|
|
51
|
+
return color.withChannel('hsl', configuration.channel, value);
|
|
52
|
+
}
|
|
53
|
+
return color.withChannel('hsb', configuration.channel, value);
|
|
54
|
+
}
|
|
55
|
+
function formatColorSliderValue(value, configuration) {
|
|
56
|
+
const formatted = Number.isInteger(value) ? String(value) : value.toFixed(1);
|
|
57
|
+
if (configuration.channel === 'hue') {
|
|
58
|
+
return `${formatted}°`;
|
|
59
|
+
}
|
|
60
|
+
if (configuration.colorSpace !== 'rgb') {
|
|
61
|
+
return `${formatted}%`;
|
|
62
|
+
}
|
|
63
|
+
return formatted;
|
|
64
|
+
}
|
|
65
|
+
function getColorSliderGradientColors(color, configuration) {
|
|
66
|
+
if (configuration.channel === 'hue') {
|
|
67
|
+
return HUE_STOPS.map(value => withColorSliderChannel(color, configuration, value).toString('hex'));
|
|
68
|
+
}
|
|
69
|
+
const {
|
|
70
|
+
min,
|
|
71
|
+
max
|
|
72
|
+
} = getColorSliderRange(configuration);
|
|
73
|
+
return [withColorSliderChannel(color, configuration, min).toString('hex'), withColorSliderChannel(color, configuration, max).toString('hex')];
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["HUE_STOPS","clampColorSliderValue","value","min","max","Math","getColorSliderRange","colorSpace","channel","getColorSliderChannelValue","color","configuration","getChannel","withColorSliderChannel","withChannel","formatColorSliderValue","formatted","Number","isInteger","String","toFixed","getColorSliderGradientColors","map","toString"],"sourceRoot":"../../../src","sources":["color-slider/utils.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.ColorSwatchPickerItem = void 0;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
var _radio = require("../radio");
|
|
9
|
+
var _context = require("./context");
|
|
10
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
11
|
+
const ColorSwatchPickerItem = exports.ColorSwatchPickerItem = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
12
|
+
asChild,
|
|
13
|
+
color,
|
|
14
|
+
isDisabled,
|
|
15
|
+
disabled,
|
|
16
|
+
accessibilityLabel,
|
|
17
|
+
'aria-label': ariaLabelProp,
|
|
18
|
+
children,
|
|
19
|
+
...props
|
|
20
|
+
}, ref) => {
|
|
21
|
+
const {
|
|
22
|
+
registerColor
|
|
23
|
+
} = (0, _context.useColorSwatchPickerContext)();
|
|
24
|
+
const colorValue = color.toString('hex');
|
|
25
|
+
const label = ariaLabelProp ?? accessibilityLabel ?? colorValue;
|
|
26
|
+
const contextValue = (0, _react.useMemo)(() => ({
|
|
27
|
+
color
|
|
28
|
+
}), [color]);
|
|
29
|
+
(0, _react.useEffect)(() => registerColor(color), [color, registerColor]);
|
|
30
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_context.ColorSwatchPickerItemProvider, {
|
|
31
|
+
value: contextValue,
|
|
32
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_radio.RadioRoot, {
|
|
33
|
+
ref: ref,
|
|
34
|
+
asChild: asChild,
|
|
35
|
+
value: colorValue,
|
|
36
|
+
isDisabled: !!(isDisabled || disabled),
|
|
37
|
+
disabled: disabled,
|
|
38
|
+
"aria-label": label,
|
|
39
|
+
accessibilityLabel: label,
|
|
40
|
+
...props,
|
|
41
|
+
children: children
|
|
42
|
+
})
|
|
43
|
+
});
|
|
44
|
+
});
|
|
45
|
+
ColorSwatchPickerItem.displayName = 'ColorSwatchPickerItem';
|
|
46
|
+
//# sourceMappingURL=ColorSwatchPickerItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","_radio","_context","_jsxRuntime","ColorSwatchPickerItem","exports","forwardRef","asChild","color","isDisabled","disabled","accessibilityLabel","ariaLabelProp","children","props","ref","registerColor","useColorSwatchPickerContext","colorValue","toString","label","contextValue","useMemo","useEffect","jsx","ColorSwatchPickerItemProvider","value","RadioRoot","displayName"],"sourceRoot":"../../../src","sources":["color-swatch-picker/ColorSwatchPickerItem.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAAuF,IAAAG,WAAA,GAAAH,OAAA;AAOhF,MAAMI,qBAAqB,GAAAC,OAAA,CAAAD,qBAAA,gBAAG,IAAAE,iBAAU,EAI7C,CACE;EACEC,OAAO;EACPC,KAAK;EACLC,UAAU;EACVC,QAAQ;EACRC,kBAAkB;EAClB,YAAY,EAAEC,aAAa;EAC3BC,QAAQ;EACR,GAAGC;AACL,CAAC,EACDC,GAAG,KACA;EACH,MAAM;IAAEC;EAAc,CAAC,GAAG,IAAAC,oCAA2B,EAAC,CAAC;EACvD,MAAMC,UAAU,GAAGV,KAAK,CAACW,QAAQ,CAAC,KAAK,CAAC;EACxC,MAAMC,KAAK,GAAGR,aAAa,IAAID,kBAAkB,IAAIO,UAAU;EAC/D,MAAMG,YAAY,GAAG,IAAAC,cAAO,EAAC,OAAO;IAAEd;EAAM,CAAC,CAAC,EAAE,CAACA,KAAK,CAAC,CAAC;EAExD,IAAAe,gBAAS,EAAC,MAAMP,aAAa,CAACR,KAAK,CAAC,EAAE,CAACA,KAAK,EAAEQ,aAAa,CAAC,CAAC;EAE7D,oBACE,IAAAb,WAAA,CAAAqB,GAAA,EAACtB,QAAA,CAAAuB,6BAA6B;IAACC,KAAK,EAAEL,YAAa;IAAAR,QAAA,eACjD,IAAAV,WAAA,CAAAqB,GAAA,EAACvB,MAAA,CAAA0B,SAAS;MACRZ,GAAG,EAAEA,GAAI;MACTR,OAAO,EAAEA,OAAQ;MACjBmB,KAAK,EAAER,UAAW;MAClBT,UAAU,EAAE,CAAC,EAAEA,UAAU,IAAIC,QAAQ,CAAE;MACvCA,QAAQ,EAAEA,QAAS;MACnB,cAAYU,KAAM;MAClBT,kBAAkB,EAAES,KAAM;MAAA,GACtBN,KAAK;MAAAD,QAAA,EAERA;IAAQ,CACA;EAAC,CACiB,CAAC;AAEpC,CACF,CAAC;AAEDT,qBAAqB,CAACwB,WAAW,GAAG,uBAAuB","ignoreList":[]}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.ColorSwatchPickerRoot = void 0;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
var _utils = require("@cdx-ui/utils");
|
|
9
|
+
var _radio = require("../radio");
|
|
10
|
+
var _colorPicker = require("../color-picker");
|
|
11
|
+
var _context = require("./context");
|
|
12
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
13
|
+
const ColorSwatchPickerRoot = exports.ColorSwatchPickerRoot = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
14
|
+
asChild,
|
|
15
|
+
value: valueProp,
|
|
16
|
+
defaultValue,
|
|
17
|
+
onValueChange,
|
|
18
|
+
isDisabled,
|
|
19
|
+
accessibilityLabel,
|
|
20
|
+
children,
|
|
21
|
+
...props
|
|
22
|
+
}, ref) => {
|
|
23
|
+
const picker = (0, _colorPicker.useOptionalColorPickerContext)();
|
|
24
|
+
const usesPickerContext = picker !== null && valueProp === undefined && defaultValue === undefined;
|
|
25
|
+
const [localValue, setLocalValue] = (0, _utils.useControllableState)({
|
|
26
|
+
prop: valueProp,
|
|
27
|
+
defaultProp: defaultValue,
|
|
28
|
+
onChange: onValueChange
|
|
29
|
+
});
|
|
30
|
+
const value = usesPickerContext ? picker.value : localValue;
|
|
31
|
+
const colorsRef = (0, _react.useRef)(new Map());
|
|
32
|
+
const registerColor = (0, _react.useCallback)(color => {
|
|
33
|
+
const key = color.toString('hex');
|
|
34
|
+
colorsRef.current.set(key, color);
|
|
35
|
+
return () => {
|
|
36
|
+
if (colorsRef.current.get(key) === color) {
|
|
37
|
+
colorsRef.current.delete(key);
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
}, []);
|
|
41
|
+
const handleValueChange = (0, _react.useCallback)(key => {
|
|
42
|
+
const color = colorsRef.current.get(key);
|
|
43
|
+
if (!color) {
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
if (usesPickerContext) {
|
|
47
|
+
onValueChange?.(color);
|
|
48
|
+
picker.onValueChange(color);
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
setLocalValue(color);
|
|
52
|
+
}, [onValueChange, picker, setLocalValue, usesPickerContext]);
|
|
53
|
+
const contextValue = (0, _react.useMemo)(() => ({
|
|
54
|
+
registerColor
|
|
55
|
+
}), [registerColor]);
|
|
56
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_context.ColorSwatchPickerProvider, {
|
|
57
|
+
value: contextValue,
|
|
58
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_radio.RadioGroup, {
|
|
59
|
+
ref: ref,
|
|
60
|
+
asChild: asChild,
|
|
61
|
+
value: value?.toString('hex'),
|
|
62
|
+
onChange: handleValueChange,
|
|
63
|
+
isDisabled: isDisabled,
|
|
64
|
+
"aria-label": props['aria-label'] ?? accessibilityLabel,
|
|
65
|
+
...props,
|
|
66
|
+
children: children
|
|
67
|
+
})
|
|
68
|
+
});
|
|
69
|
+
});
|
|
70
|
+
ColorSwatchPickerRoot.displayName = 'ColorSwatchPickerRoot';
|
|
71
|
+
//# sourceMappingURL=ColorSwatchPickerRoot.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","_utils","_radio","_colorPicker","_context","_jsxRuntime","ColorSwatchPickerRoot","exports","forwardRef","asChild","value","valueProp","defaultValue","onValueChange","isDisabled","accessibilityLabel","children","props","ref","picker","useOptionalColorPickerContext","usesPickerContext","undefined","localValue","setLocalValue","useControllableState","prop","defaultProp","onChange","colorsRef","useRef","Map","registerColor","useCallback","color","key","toString","current","set","get","delete","handleValueChange","contextValue","useMemo","jsx","ColorSwatchPickerProvider","RadioGroup","displayName"],"sourceRoot":"../../../src","sources":["color-swatch-picker/ColorSwatchPickerRoot.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.useColorSwatchPickerContext = exports.ColorSwatchPickerProvider = exports.ColorSwatchPickerItemProvider = void 0;
|
|
7
|
+
exports.useColorSwatchPickerItemContext = useColorSwatchPickerItemContext;
|
|
8
|
+
var _react = require("react");
|
|
9
|
+
var _utils = require("@cdx-ui/utils");
|
|
10
|
+
const [ColorSwatchPickerProvider, useColorSwatchPickerContext] = (0, _utils.createContext)('ColorSwatchPickerContext');
|
|
11
|
+
exports.useColorSwatchPickerContext = useColorSwatchPickerContext;
|
|
12
|
+
exports.ColorSwatchPickerProvider = ColorSwatchPickerProvider;
|
|
13
|
+
const ColorSwatchPickerItemContext = /*#__PURE__*/(0, _react.createContext)(null);
|
|
14
|
+
const ColorSwatchPickerItemProvider = exports.ColorSwatchPickerItemProvider = ColorSwatchPickerItemContext.Provider;
|
|
15
|
+
function useColorSwatchPickerItemContext() {
|
|
16
|
+
const context = (0, _react.useContext)(ColorSwatchPickerItemContext);
|
|
17
|
+
if (!context) {
|
|
18
|
+
throw new Error('ColorSwatchPicker item slots must be used within ColorSwatchPicker.Item');
|
|
19
|
+
}
|
|
20
|
+
return context;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","_utils","ColorSwatchPickerProvider","useColorSwatchPickerContext","createContext","exports","ColorSwatchPickerItemContext","createReactContext","ColorSwatchPickerItemProvider","Provider","useColorSwatchPickerItemContext","context","useContext","Error"],"sourceRoot":"../../../src","sources":["color-swatch-picker/context.tsx"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAGO,MAAM,CAACE,yBAAyB,EAAEC,2BAA2B,CAAC,GACnE,IAAAC,oBAAa,EAAgC,0BAA0B,CAAC;AAACC,OAAA,CAAAF,2BAAA,GAAAA,2BAAA;AAAAE,OAAA,CAAAH,yBAAA,GAAAA,yBAAA;AAE3E,MAAMI,4BAA4B,gBAAG,IAAAC,oBAAkB,EACrD,IACF,CAAC;AAEM,MAAMC,6BAA6B,GAAAH,OAAA,CAAAG,6BAAA,GAAGF,4BAA4B,CAACG,QAAQ;AAE3E,SAASC,+BAA+BA,CAAA,EAAsC;EACnF,MAAMC,OAAO,GAAG,IAAAC,iBAAU,EAACN,4BAA4B,CAAC;EAExD,IAAI,CAACK,OAAO,EAAE;IACZ,MAAM,IAAIE,KAAK,CAAC,yEAAyE,CAAC;EAC5F;EAEA,OAAOF,OAAO;AAChB","ignoreList":[]}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "ColorSwatchPickerItem", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _ColorSwatchPickerItem.ColorSwatchPickerItem;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
Object.defineProperty(exports, "ColorSwatchPickerRoot", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _ColorSwatchPickerRoot.ColorSwatchPickerRoot;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
Object.defineProperty(exports, "useColorSwatchPickerContext", {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function () {
|
|
21
|
+
return _context.useColorSwatchPickerContext;
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
Object.defineProperty(exports, "useColorSwatchPickerItemContext", {
|
|
25
|
+
enumerable: true,
|
|
26
|
+
get: function () {
|
|
27
|
+
return _context.useColorSwatchPickerItemContext;
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
var _ColorSwatchPickerRoot = require("./ColorSwatchPickerRoot");
|
|
31
|
+
var _ColorSwatchPickerItem = require("./ColorSwatchPickerItem");
|
|
32
|
+
var _context = require("./context");
|
|
33
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_ColorSwatchPickerRoot","require","_ColorSwatchPickerItem","_context"],"sourceRoot":"../../../src","sources":["color-swatch-picker/index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,sBAAA,GAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["color-swatch-picker/types.ts"],"mappings":"","ignoreList":[]}
|