UNPKG

@react-spectrum/s2

Version:
133 lines (123 loc) 5.34 kB
import "./Link.css"; import {SkeletonContext as $5ad421ec19460c48$export$74e166679b1f49ee, useSkeletonText as $5ad421ec19460c48$export$a05a0b8a311cd65f} from "../icons/Skeleton.mjs"; import {useSpectrumContextProps as $5ce63c423902f47d$export$764f6146fadd77f7} from "../icons/useSpectrumContextProps.mjs"; import {jsx as $d6Kqa$jsx} from "react/jsx-runtime"; import {Link as $d6Kqa$Link} from "react-aria-components"; import {createContext as $d6Kqa$createContext, forwardRef as $d6Kqa$forwardRef, useContext as $d6Kqa$useContext} from "react"; import {useFocusableRef as $d6Kqa$useFocusableRef} from "@react-spectrum/utils"; import {useLayoutEffect as $d6Kqa$useLayoutEffect} from "@react-aria/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 $f50c78733c21bfe2$export$e2509388b49734e7 = /*#__PURE__*/ (0, $d6Kqa$createContext)(null); const $f50c78733c21bfe2$var$link = function anonymous(props, overrides) { let rules = " "; rules += ((overrides || '').match(/(?:^|\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) || []).join(''); if (props.isFocusVisible) rules += ' _Lf91'; else rules += ' _Le91'; if (props.isStaticColor) rules += ' Oe91'; else rules += ' Oh91'; rules += ' Olc91'; rules += ' _Mc91'; rules += ' _Kd91'; if (props.staticColor === "white") rules += ' -Ovbhqd-gcwrnr91'; else if (props.staticColor === "black") rules += ' -Ovbhqd-g4hn3s91'; rules += ' oa91'; rules += ' na91'; rules += ' ka91'; rules += ' ja91'; if (props.isStandalone) { rules += ' ug91'; rules += ' uch91'; rules += ' udi91'; rules += ' uea91'; rules += ' ugb91'; rules += ' uhd91'; rules += ' uje91'; rules += ' uic91'; } if (props.isStandalone) { rules += ' vd91'; rules += ' vsf91'; } if (props.isStandalone) { rules += ' wc91'; rules += ' xc91'; rules += ' _xa91'; } if (props.isStandalone) { rules += ' _Fa91'; rules += ' _Ffb91'; } if (props.isStaticColor) rules += ' pl91'; else if (props.variant === "secondary") { if (props.isPressed) rules += ' po91'; else if (props.isFocusVisible) rules += ' po91'; else if (props.isHovered) rules += ' po91'; else rules += ' pt91'; } else if (props.variant === "primary") { if (props.isPressed) rules += ' ps91'; else if (props.isFocusVisible) rules += ' ps91'; else if (props.isHovered) rules += ' ps91'; else rules += ' pu91'; } rules += ' plf91'; rules += ' Yd91'; rules += ' Xb91'; rules += ' _2b91'; if (props.isStandalone) { if (props.isQuiet) { if (props.isFocusVisible) { rules += ' _Xb91'; rules += ' __Va91'; } else if (props.isHovered) { rules += ' _Xb91'; rules += ' __Va91'; } else rules += ' _Xa91'; } } else { rules += ' _Xb91'; rules += ' __Va91'; } rules += ' __ca91'; return rules; }; const $f50c78733c21bfe2$export$a6c7ac8248d6e38a = /*#__PURE__*/ (0, $d6Kqa$forwardRef)(function Link(props, ref) { [props, ref] = (0, $5ce63c423902f47d$export$764f6146fadd77f7)(props, ref, $f50c78733c21bfe2$export$e2509388b49734e7); let { variant: variant = 'primary', staticColor: staticColor, isQuiet: isQuiet, isStandalone: isStandalone, UNSAFE_style: UNSAFE_style, UNSAFE_className: UNSAFE_className = '', styles: styles, children: children } = props; let domRef = (0, $d6Kqa$useFocusableRef)(ref); let isSkeleton = (0, $d6Kqa$useContext)((0, $5ad421ec19460c48$export$74e166679b1f49ee)) || false; [children, UNSAFE_style] = (0, $5ad421ec19460c48$export$a05a0b8a311cd65f)(children, UNSAFE_style); (0, $d6Kqa$useLayoutEffect)(()=>{ if (domRef.current) // TODO: should RAC Link pass through inert? domRef.current.inert = isSkeleton; }, [ domRef, isSkeleton ]); return /*#__PURE__*/ (0, $d6Kqa$jsx)((0, $d6Kqa$Link), { ...props, ref: domRef, style: UNSAFE_style, className: (renderProps)=>UNSAFE_className + $f50c78733c21bfe2$var$link({ ...renderProps, variant: variant, staticColor: staticColor, isStaticColor: !!staticColor, isQuiet: isQuiet, isStandalone: isStandalone, isSkeleton: isSkeleton }, styles), children: children }); }); export {$f50c78733c21bfe2$export$e2509388b49734e7 as LinkContext, $f50c78733c21bfe2$export$a6c7ac8248d6e38a as Link}; //# sourceMappingURL=Link.mjs.map