@react-spectrum/s2
Version:
Spectrum 2 UI components in React
272 lines (251 loc) • 10.6 kB
JavaScript
require("./InlineAlert.css");
var $7e7cdbd2b8ae2467$exports = require("../icons/AlertTriangle.cjs");
var $6391be254c189366$exports = require("../icons/CheckmarkCircle.cjs");
var $6367bc87eb7d24ad$exports = require("./Content.cjs");
var $bde97c91243ed164$exports = require("../icons/Icon.cjs");
var $0ed6e07b499b9797$exports = require("../icons/InfoCircle.cjs");
var $4526404114e78c80$exports = require("./intlStrings.cjs");
var $e861f394b642505b$exports = require("../icons/AlertDiamond.cjs");
var $ac757a4c2bd72aee$exports = require("../icons/useSpectrumContextProps.cjs");
var $3stts$reactjsxruntime = require("react/jsx-runtime");
var $3stts$react = require("react");
var $3stts$reactariacomponents = require("react-aria-components");
var $3stts$reactariautils = require("@react-aria/utils");
var $3stts$reactspectrumutils = require("@react-spectrum/utils");
var $3stts$reactaria = require("react-aria");
var $3stts$reactariai18n = require("@react-aria/i18n");
function $parcel$interopDefault(a) {
return a && a.__esModule ? a.default : a;
}
function $parcel$export(e, n, v, s) {
Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
}
$parcel$export(module.exports, "InlineAlertContext", () => $72bf3a9f94a75d9f$export$c0de4eca0a8bf011);
$parcel$export(module.exports, "InlineAlert", () => $72bf3a9f94a75d9f$export$a3b2c96db9b0eb71);
/*
* Copyright 2023 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 $72bf3a9f94a75d9f$export$c0de4eca0a8bf011 = /*#__PURE__*/ (0, $3stts$react.createContext)(null);
const $72bf3a9f94a75d9f$var$inlineAlert = function anonymous(props, overrides) {
let rules = " ";
let position = 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|_6|Z|N|L)[^\s]+/g);
for (let p of matches){
if (p[1] === "_P") position = true;
rules += p[0];
}
if (props.isFocusVisible) rules += ' _Lf1';
else rules += ' _Le1';
rules += ' Oh1';
rules += ' Olc1';
rules += ' _Mc1';
rules += ' _Kd1';
rules += ' sg1';
if (!position) rules += ' _Pc1';
rules += ' _oa1';
rules += ' Th1';
rules += ' Qh1';
rules += ' Sh1';
rules += ' Rh1';
rules += ' oc1';
rules += ' nc1';
rules += ' kc1';
rules += ' jc1';
rules += ' _jf1';
rules += ' _kc1';
rules += ' hc1';
rules += ' mc1';
rules += ' lc1';
if (props.fillStyle === "boldFill") rules += ' iA1';
else if (props.fillStyle === "subtleFill") rules += ' iA1';
else if (props.fillStyle === "border") {
if (props.variant === "neutral") rules += ' iy1';
else if (props.variant === "negative") rules += ' it1';
else if (props.variant === "notice") rules += ' is1';
else if (props.variant === "positive") rules += ' il1';
else if (props.variant === "informative") rules += ' ix1';
}
if (props.variant === "neutral") {
if (props.fillStyle === "boldFill") rules += ' g61';
else if (props.fillStyle === "subtleFill") rules += ' gI1';
else if (props.fillStyle === "border") rules += ' gX1';
} else if (props.variant === "negative") {
if (props.fillStyle === "boldFill") rules += ' gB1';
else if (props.fillStyle === "subtleFill") rules += ' gU1';
else if (props.fillStyle === "border") rules += ' gX1';
} else if (props.variant === "notice") {
if (props.fillStyle === "boldFill") rules += ' gQ1';
else if (props.fillStyle === "subtleFill") rules += ' gV1';
else if (props.fillStyle === "border") rules += ' gX1';
} else if (props.variant === "positive") {
if (props.fillStyle === "boldFill") rules += ' g11';
else if (props.fillStyle === "subtleFill") rules += ' gA1';
else if (props.fillStyle === "border") rules += ' gX1';
} else if (props.variant === "informative") {
if (props.fillStyle === "boldFill") rules += ' g21';
else if (props.fillStyle === "subtleFill") rules += ' gG1';
else if (props.fillStyle === "border") rules += ' gX1';
}
return rules;
};
const $72bf3a9f94a75d9f$var$icon = function anonymous(props) {
let rules = " ";
rules += ' __wa1';
if (props.fillStyle === "boldFill") {
if (props.variant === "notice") rules += ' -_8sjo0b-tcwrnr1';
else rules += ' -_8sjo0b-tw1';
} else if (props.fillStyle === "subtleFill") {
if (props.variant === "neutral") rules += ' -_8sjo0b-tf1';
else if (props.variant === "negative") rules += ' -_8sjo0b-tq1';
else if (props.variant === "notice") rules += ' -_8sjo0b-tq1';
else if (props.variant === "positive") rules += ' -_8sjo0b-tt1';
else if (props.variant === "informative") rules += ' -_8sjo0b-tu1';
} else if (props.fillStyle === "border") {
if (props.variant === "neutral") rules += ' -_8sjo0b-tf1';
else if (props.variant === "negative") rules += ' -_8sjo0b-tq1';
else if (props.variant === "notice") rules += ' -_8sjo0b-tm1';
else if (props.variant === "positive") rules += ' -_8sjo0b-tt1';
else if (props.variant === "informative") rules += ' -_8sjo0b-tu1';
}
return rules;
};
let $72bf3a9f94a75d9f$var$ICONS = {
informative: (0, $0ed6e07b499b9797$exports.default),
positive: (0, $6391be254c189366$exports.default),
notice: (0, $e861f394b642505b$exports.default),
negative: (0, $7e7cdbd2b8ae2467$exports.default),
neutral: undefined
};
const $72bf3a9f94a75d9f$var$heading = function anonymous(props) {
let rules = " ";
rules += ' Jy1';
rules += ' uk1';
rules += ' ucJ9TBTb1';
rules += ' ud3Euai1';
rules += ' uea1';
rules += ' ugb1';
rules += ' uhd1';
rules += ' uje1';
rules += ' u2NhKxcl1';
rules += ' uic1';
rules += ' -_6BNtrc-c1';
rules += ' vx1';
rules += ' xd1';
rules += ' _xa1';
rules += ' xX0cczbc1';
rules += ' _xX0cczba1';
rules += ' xfd1';
rules += ' _xfa1';
rules += ' xfX0cczbc1';
rules += ' _xfX0cczba1';
rules += ' _Fd1';
rules += ' _FnuYUweb1';
if (props.fillStyle === "boldFill") {
if (props.variant === "notice") rules += ' pg1';
else rules += ' px1';
} else rules += ' po1';
return rules;
};
const $72bf3a9f94a75d9f$var$content = function anonymous(props) {
let rules = " ";
rules += ' uk1';
rules += ' ucJ9TBTb1';
rules += ' ud3Euai1';
rules += ' uea1';
rules += ' ugb1';
rules += ' uhd1';
rules += ' uje1';
rules += ' u2NhKxcl1';
rules += ' uic1';
rules += ' -_6BNtrc-c1';
rules += ' vx1';
rules += ' xb1';
rules += ' _xa1';
rules += ' _Fb1';
rules += ' _FnuYUwec1';
if (props.fillStyle === "boldFill") {
if (props.variant === "notice") rules += ' pg1';
else rules += ' px1';
} else rules += ' pt1';
return rules;
};
const $72bf3a9f94a75d9f$export$a3b2c96db9b0eb71 = /*#__PURE__*/ (0, $3stts$react.forwardRef)(function InlineAlert(props, ref) {
let stringFormatter = (0, $3stts$reactariai18n.useLocalizedStringFormatter)((0, ($parcel$interopDefault($4526404114e78c80$exports))), '@react-spectrum/s2');
[props, ref] = (0, $ac757a4c2bd72aee$exports.useSpectrumContextProps)(props, ref, $72bf3a9f94a75d9f$export$c0de4eca0a8bf011);
let { children: children, variant: variant = 'neutral', fillStyle: fillStyle = 'border', autoFocus: autoFocus } = props;
let domRef = (0, $3stts$reactspectrumutils.useDOMRef)(ref);
let Icon = null;
let iconAlt = '';
if (variant in $72bf3a9f94a75d9f$var$ICONS) {
Icon = $72bf3a9f94a75d9f$var$ICONS[variant];
if (Icon) iconAlt = stringFormatter.format(`inlinealert.${variant}`);
}
let { isFocusVisible: isFocusVisible, focusProps: focusProps } = (0, $3stts$reactaria.useFocusRing)({
autoFocus: props.autoFocus
});
let autoFocusRef = (0, $3stts$react.useRef)(props.autoFocus);
(0, $3stts$react.useEffect)(()=>{
if (autoFocusRef.current && domRef.current) domRef.current.focus();
autoFocusRef.current = false;
}, [
domRef
]);
return /*#__PURE__*/ (0, $3stts$reactjsxruntime.jsx)("div", {
...(0, $3stts$reactariautils.filterDOMProps)(props),
...focusProps,
ref: domRef,
tabIndex: autoFocus ? -1 : undefined,
autoFocus: autoFocus,
role: "alert",
style: props.UNSAFE_style,
className: (props.UNSAFE_className || '') + $72bf3a9f94a75d9f$var$inlineAlert({
variant: variant,
fillStyle: fillStyle,
isFocusVisible: isFocusVisible
}, props.styles),
children: /*#__PURE__*/ (0, $3stts$reactjsxruntime.jsxs)((0, $3stts$reactariacomponents.Provider), {
values: [
[
(0, $6367bc87eb7d24ad$exports.HeadingContext),
{
styles: $72bf3a9f94a75d9f$var$heading({
fillStyle: fillStyle
})
}
],
[
(0, $6367bc87eb7d24ad$exports.ContentContext),
{
styles: $72bf3a9f94a75d9f$var$content({
fillStyle: fillStyle
})
}
],
[
(0, $bde97c91243ed164$exports.IconContext),
{
styles: $72bf3a9f94a75d9f$var$icon({
variant: variant,
fillStyle: fillStyle
})
}
]
],
children: [
Icon && /*#__PURE__*/ (0, $3stts$reactjsxruntime.jsx)(Icon, {
"aria-label": iconAlt
}),
children
]
})
});
});
//# sourceMappingURL=InlineAlert.cjs.map