UNPKG

@primer/react

Version:

An implementation of GitHub's Primer Design System using React

136 lines (135 loc) 3.51 kB
import { Tooltip } from "../TooltipV2/Tooltip.js"; import SegmentedControl_module_css_default from "./SegmentedControl.module.css.js"; import { c } from "react-compiler-runtime"; import { clsx } from "clsx"; import { jsx } from "react/jsx-runtime"; import { isElement } from "react-is"; //#region src/SegmentedControl/SegmentedControlIconButton.tsx const SegmentedControlIconButton = (t0) => { const $ = c(35); let Icon; let ariaLabel; let className; let description; let disabled; let props; let selected; let tooltipDirection; if ($[0] !== t0) { ({"aria-label": ariaLabel, icon: Icon, selected, className, description, tooltipDirection, disabled, ...props} = t0); $[0] = t0; $[1] = Icon; $[2] = ariaLabel; $[3] = className; $[4] = description; $[5] = disabled; $[6] = props; $[7] = selected; $[8] = tooltipDirection; } else { Icon = $[1]; ariaLabel = $[2]; className = $[3]; description = $[4]; disabled = $[5]; props = $[6]; selected = $[7]; tooltipDirection = $[8]; } let ariaDisabled; let rest; if ($[9] !== props) { ({"aria-disabled": ariaDisabled, ...rest} = props); $[9] = props; $[10] = ariaDisabled; $[11] = rest; } else { ariaDisabled = $[10]; rest = $[11]; } let t1; if ($[12] !== className) { t1 = clsx(SegmentedControl_module_css_default.Item, className); $[12] = className; $[13] = t1; } else t1 = $[13]; const t2 = selected || void 0; const t3 = description ? void 0 : "label"; const t4 = description ? description : ariaLabel; const t5 = description ? ariaLabel : void 0; const t6 = disabled || ariaDisabled || void 0; let t7; if ($[14] === Symbol.for("react.memo_cache_sentinel")) { t7 = clsx(SegmentedControl_module_css_default.Button, SegmentedControl_module_css_default.IconButton); $[14] = t7; } else t7 = $[14]; let t8; if ($[15] === Symbol.for("react.memo_cache_sentinel")) { t8 = clsx(SegmentedControl_module_css_default.Content, "segmentedControl-content"); $[15] = t8; } else t8 = $[15]; let t9; if ($[16] !== Icon) { t9 = isElement(Icon) ? Icon : /*#__PURE__*/ jsx(Icon, {}); $[16] = Icon; $[17] = t9; } else t9 = $[17]; let t10; if ($[18] !== t9) { t10 = /*#__PURE__*/ jsx("span", { className: t8, children: t9 }); $[18] = t9; $[19] = t10; } else t10 = $[19]; let t11; if ($[20] !== rest || $[21] !== selected || $[22] !== t10 || $[23] !== t5 || $[24] !== t6) { t11 = /*#__PURE__*/ jsx("button", { type: "button", "aria-current": selected, "aria-label": t5, "aria-disabled": t6, className: t7, ...rest, children: t10 }); $[20] = rest; $[21] = selected; $[22] = t10; $[23] = t5; $[24] = t6; $[25] = t11; } else t11 = $[25]; let t12; if ($[26] !== t11 || $[27] !== t3 || $[28] !== t4 || $[29] !== tooltipDirection) { t12 = /*#__PURE__*/ jsx(Tooltip, { type: t3, text: t4, direction: tooltipDirection, children: t11 }); $[26] = t11; $[27] = t3; $[28] = t4; $[29] = tooltipDirection; $[30] = t12; } else t12 = $[30]; let t13; if ($[31] !== t1 || $[32] !== t12 || $[33] !== t2) { t13 = /*#__PURE__*/ jsx("li", { className: t1, "data-selected": t2, "data-component": "SegmentedControl.IconButton", children: t12 }); $[31] = t1; $[32] = t12; $[33] = t2; $[34] = t13; } else t13 = $[34]; return t13; }; SegmentedControlIconButton.__SLOT__ = Symbol("SegmentedControl.IconButton"); //#endregion export { SegmentedControlIconButton, SegmentedControlIconButton as default };