UNPKG

@react-spectrum/s2

Version:
230 lines (220 loc) 12.6 kB
import "./ColorSlider.css"; import {ColorHandle as $b4f7db7c45cd3de9$export$92862704de639678} from "./ColorHandle.mjs"; import {FieldLabel as $9afd80978c252040$export$1acdcf5a973a8414} from "./Field.mjs"; import {useSpectrumContextProps as $5ce63c423902f47d$export$764f6146fadd77f7} from "../icons/useSpectrumContextProps.mjs"; import {jsx as $3i9ps$jsx, jsxs as $3i9ps$jsxs, Fragment as $3i9ps$Fragment} from "react/jsx-runtime"; import {useLocale as $3i9ps$useLocale, ColorSlider as $3i9ps$ColorSlider, SliderOutput as $3i9ps$SliderOutput, SliderTrack as $3i9ps$SliderTrack} from "react-aria-components"; import {createContext as $3i9ps$createContext, forwardRef as $3i9ps$forwardRef, useRef as $3i9ps$useRef} from "react"; import {useDOMRef as $3i9ps$useDOMRef} from "@react-spectrum/utils"; /* * Copyright 2024 Adobe. All rights reserved. * This file is licensed to you under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. You may obtain a copy * of the License at http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software distributed under * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS * OF ANY KIND, either express or implied. See the License for the specific language * governing permissions and limitations under the License. */ const $495db619596088aa$export$717b2c0a523a0b53 = /*#__PURE__*/ (0, $3i9ps$createContext)(null); const $495db619596088aa$export$44fd664bcca5b6fb = /*#__PURE__*/ (0, $3i9ps$forwardRef)(function ColorSlider(props, ref) { [props, ref] = (0, $5ce63c423902f47d$export$764f6146fadd77f7)(props, ref, $495db619596088aa$export$717b2c0a523a0b53); let { UNSAFE_className: UNSAFE_className = '', UNSAFE_style: UNSAFE_style, styles: styles } = props; let containerRef = (0, $3i9ps$useDOMRef)(ref); let trackRef = (0, $3i9ps$useRef)(null); let { locale: locale } = (0, $3i9ps$useLocale)(); return /*#__PURE__*/ (0, $3i9ps$jsx)((0, $3i9ps$ColorSlider), { ...props, ref: containerRef, style: UNSAFE_style, // The visual label is hidden when vertical, so make it an aria-label instead. "aria-label": props['aria-label'] || (props.orientation === 'vertical' ? props.label : undefined), className: (renderProps)=>UNSAFE_className + function anonymous(props, overrides) { let rules = " "; let width = false; let matches = (overrides || '').matchAll(/(?:^|\s)(J|G|I|H|_u|_v|_s|__A|_d|_J|z|y|B|A|_P|_9|W|_l|_A|_z|Z|N|L)[^\s]+/g); for (let p of matches){ if (p[1] === "Z") width = true; rules += p[0]; } if (props.orientation === "horizontal") { if (!width) rules += ' Zr91'; } if (props.orientation === "vertical") rules += ' Fs91'; if (props.orientation === "vertical") rules += ' sb91'; else if (props.orientation === "horizontal") rules += ' se91'; rules += ' Dxumf9b91'; rules += ' CmAQJSd91'; rules += ' Ub91'; return rules; }(renderProps, styles), children: ({ isDisabled: isDisabled, orientation: orientation, state: state })=>/*#__PURE__*/ (0, $3i9ps$jsxs)((0, $3i9ps$Fragment), { children: [ orientation === 'horizontal' && (props.label || props.label === undefined && !props['aria-label'] && !props['aria-labelledby']) && // If no external label, aria-label or aria-labelledby is provided, // default to displaying the localized channel value. // Specifically check if label is undefined. If label is `null` then display no visible label. // A default aria-label is provided by useColorSlider in that case. /*#__PURE__*/ (0, $3i9ps$jsx)((0, $9afd80978c252040$export$1acdcf5a973a8414), { isDisabled: isDisabled, contextualHelp: props.contextualHelp, children: props.label || state.value.getChannelName(props.channel, locale) }), orientation === 'horizontal' && /*#__PURE__*/ (0, $3i9ps$jsx)((0, $3i9ps$SliderOutput), { className: function anonymous(props) { let rules = " "; rules += ' zChk6v91'; rules += ' yChk6v91'; rules += ' BChk6v91'; rules += ' AChk6v91'; if (props.size === "XL") { rules += ' ug91'; rules += ' uch91'; rules += ' udi91'; rules += ' uea91'; rules += ' ugb91'; rules += ' uhd91'; rules += ' uje91'; rules += ' uic91'; } else if (props.size === "L") { rules += ' ug91'; rules += ' uch91'; rules += ' udi91'; rules += ' uea91'; rules += ' ugb91'; rules += ' uhd91'; rules += ' uje91'; rules += ' uic91'; } else if (props.size === "S") { rules += ' ug91'; rules += ' uch91'; rules += ' udi91'; rules += ' uea91'; rules += ' ugb91'; rules += ' uhd91'; rules += ' uje91'; rules += ' uic91'; } else if (props.size === "XS") { rules += ' ug91'; rules += ' uch91'; rules += ' udi91'; rules += ' uea91'; rules += ' ugb91'; rules += ' uhd91'; rules += ' uje91'; rules += ' uic91'; } else { rules += ' ug91'; rules += ' uch91'; rules += ' udi91'; rules += ' uea91'; rules += ' ugb91'; rules += ' uhd91'; rules += ' uje91'; rules += ' uic91'; } if (props.size === "XL") { rules += ' vg91'; rules += ' vsj91'; } else if (props.size === "L") { rules += ' vp91'; rules += ' vsh91'; } else if (props.size === "S") { rules += ' vb91'; rules += ' vse91'; } else if (props.size === "XS") { rules += ' va91'; rules += ' vsc91'; } else { rules += ' vd91'; rules += ' vsf91'; } if (props.size === "XL") { rules += ' wb91'; rules += ' xb91'; rules += ' _xa91'; } else if (props.size === "L") { rules += ' wb91'; rules += ' xb91'; rules += ' _xa91'; } else if (props.size === "S") { rules += ' wb91'; rules += ' xb91'; rules += ' _xa91'; } else if (props.size === "XS") { rules += ' wb91'; rules += ' xb91'; rules += ' _xa91'; } else { rules += ' wb91'; rules += ' xb91'; rules += ' _xa91'; } if (props.size === "XL") { rules += ' _Fa91'; rules += ' _Ffb91'; } else if (props.size === "L") { rules += ' _Fa91'; rules += ' _Ffb91'; } else if (props.size === "S") { rules += ' _Fa91'; rules += ' _Ffb91'; } else if (props.size === "XS") { rules += ' _Fa91'; rules += ' _Ffb91'; } else { rules += ' _Fa91'; rules += ' _Ffb91'; } if (props.isDisabled) rules += ' pp91'; else rules += ' pv91'; rules += ' ri91'; return rules; } }), /*#__PURE__*/ (0, $3i9ps$jsx)((0, $3i9ps$SliderTrack), { ref: trackRef, style: ({ defaultStyle: defaultStyle, isDisabled: isDisabled })=>({ background: isDisabled ? undefined : `${defaultStyle.background}, repeating-conic-gradient(#E1E1E1 0% 25%, white 0% 50%) 50% / 16px 16px` }), className: function anonymous(props) { let rules = " "; rules += ' zCPUPs91'; rules += ' yCPUPs91'; rules += ' BCPUPs91'; rules += ' ACPUPs91'; if (props.orientation === "vertical") rules += ' Zo91'; else if (props.orientation === "horizontal") rules += ' Za91'; if (props.orientation === "vertical") rules += ' Fb91'; else if (props.orientation === "horizontal") rules += ' Fp91'; rules += ' ob91'; rules += ' nb91'; rules += ' kb91'; rules += ' jb91'; rules += ' Oi91'; rules += ' Ola91'; rules += ' _Mb91'; rules += ' _Ka91'; if (props.isDisabled) rules += ' _Le91'; else rules += ' _Lf91'; if (props.isDisabled) rules += ' gH91'; return rules; }, children: /*#__PURE__*/ (0, $3i9ps$jsx)((0, $b4f7db7c45cd3de9$export$92862704de639678), { containerRef: trackRef, getPosition: ()=>{ let x = state.orientation === 'horizontal' ? state.getThumbPercent(0) : 0.5; let y = state.orientation === 'horizontal' ? 0.5 : 1 - state.getThumbPercent(0); return { x: x, y: y }; } }) }) ] }) }); }); export {$495db619596088aa$export$717b2c0a523a0b53 as ColorSliderContext, $495db619596088aa$export$44fd664bcca5b6fb as ColorSlider}; //# sourceMappingURL=ColorSlider.mjs.map