Github Frontend dist sources and package bundles. TS JS CSS MJS HTML TSX CJS PY C++
import './_VisuallyHidden-5c0a2499.css';
var classes = {"InternalVisuallyHidden":"prc-src-InternalVisuallyHidden-2YaI6"};
export { classes as default };
import { Stack as Stack$1, StackItem } from './Stack.js';
const Stack = Object.assign(Stack$1, { Item: StackItem });
export { Stack };
import { forwardRef } from 'react';
// Mostly taken from https://github.com/total-typescript/react-typescript-tutorial/blob/main/src/08-advanced-patterns/72-as-prop-with-forward-ref.solution.tsx
/**
- Distributive Omit utility type that works correctly with union types */
/**
- Fixed version of forwardRef that provides better type inference for polymorphic components */ // TODO: figure out how to change this type so we can set displayName // like this: `ComponentName.displayName = 'DisplayName' instead of using workarounds
/**
- Cast forwardRef to the fixed version with better type inference */ const fixedForwardRef = forwardRef;
/**
- Simplified polymorphic props type that handles the common pattern of
DistributiveOmit<ComponentPropsWithRef<ElementType extends As ? DefaultElement : As>, 'as'>*/
export { fixedForwardRef };
import { forwardRef } from 'react'; import { ActionList as ActionList$1 } from '@primer/react/deprecated'; import { sx } from '../../sx.js'; import { Box } from '../Box.js'; import styled from 'styled-components'; import { jsx } from 'react/jsx-runtime';
const ActionListImpl = /#PURE/forwardRef(function ActionList(props, ref) { return /#PURE/jsx(Box, { as: ActionList$1, ref: ref, ...props }); }); const StyledActionListItem = styled(ActionList$1.Item).withConfig({ shouldForwardProp: prop => prop !== 'sx' }).withConfig({ displayName: "ActionList__StyledActionListItem", componentId: "sc-1ugfmds-0" })(["", ""], sx); const ActionListItem = /#PURE/forwardRef(({ as, ...props }, ref) => /#PURE/jsx(StyledActionListItem, { ...props, ...(as ? { forwardedAs: as } : {}), ref: ref })); function ActionListGroup(props) { return /#PURE/jsx(Box, { as: ActionList$1.Group, ...props }); } function ActionListDivider(props) { return /#PURE/jsx(Box, { as: ActionList$1.Divider, ...props }); } const ActionList = Object.assign(ActionListImpl, { Item: ActionListItem, Group: ActionListGroup, Divider: ActionListDivider });
export { ActionList };
import { forwardRef } from 'react'; import { ActionList as ActionList$1 } from '@primer/react/deprecated'; import { sx } from '../../sx.js'; import { Box } from '../Box.js'; import styled from 'styled-components'; import { jsx } from 'react/jsx-runtime';
const ActionListImpl = /#PURE/forwardRef(function ActionList(props, ref) { return /#PURE/jsx(Box, { as: ActionList$1, ref: ref, ...props }); }); const StyledActionListItem = styled(ActionList$1.Item).withConfig({ shouldForwardProp: prop => prop !== 'sx' }).withConfig({ displayName: "ActionList__StyledActionListItem", componentId: "sc-1ugfmds-0" })(["", ""], sx); const ActionListItem = /#PURE/forwardRef(({ as, ...props }, ref) => /#PURE/jsx(StyledActionListItem, { ...props, ...(as ? { forwardedAs: as } : {}), ref: ref })); function ActionListGroup(props) { return /#PURE/jsx(Box, { as: ActionList$1.Group, ...props }); } function ActionListDivider(props) { return /#PURE/jsx(Box, { as: ActionList$1.Divider, ...props }); } const ActionList = Object.assign(ActionListImpl, { Item: ActionListItem, Group: ActionListGroup, Divider: ActionListDivider });
export { ActionList };
import { ActionMenu as ActionMenu$1 } from '@primer/react'; import { sx } from '../sx.js'; import styled from 'styled-components';
const ActionMenuOverlay = styled(ActionMenu$1.Overlay).withConfig({ shouldForwardProp: prop => prop !== 'sx' }).withConfig({ displayName: "ActionMenu__ActionMenuOverlay", componentId: "sc-w5s60e-0" })(["", ""], sx); const ActionMenu = Object.assign(ActionMenu$1, { Button: ActionMenu$1.Button, Anchor: ActionMenu$1.Anchor, Overlay: ActionMenuOverlay, Divider: ActionMenu$1.Divider }); ActionMenuOverlay.SLOT = ActionMenu$1.Overlay.SLOT;
export { ActionMenu };
import { ActionBar as ActionBar$1, ActionBarMenu, ActionBarGroup, VerticalDivider, ActionBarIconButton } from './ActionBar.js';
const ActionBar = Object.assign(ActionBar$1, { IconButton: ActionBarIconButton, Divider: VerticalDivider, Group: ActionBarGroup, Menu: ActionBarMenu });
export { ActionBar };
import { forwardRef } from 'react'; import { ActionList as ActionList$1 } from '@primer/react/deprecated'; import { sx } from '../../sx.js'; import { Box } from '../Box.js'; import styled from 'styled-components'; import { jsx } from 'react/jsx-runtime';
const ActionListImpl = /#PURE/forwardRef(function ActionList(props, ref) { return /#PURE/jsx(Box, { as: ActionList$1, ref: ref, ...props }); }); const StyledActionListItem = styled(ActionList$1.Item).withConfig({ shouldForwardProp: prop => prop !== 'sx' }).withConfig({ displayName: "ActionList__StyledActionListItem", componentId: "sc-1ugfmds-0" })(["", ""], sx); const ActionListItem = /#PURE/forwardRef(({ as, ...props }, ref) => /#PURE/jsx(StyledActionListItem, { ...props, ...(as ? { forwardedAs: as } : {}), ref: ref })); function ActionListGroup(props) { return /#PURE/jsx(Box, { as: ActionList$1.Group, ...props }); } function ActionListDivider(props) { return /#PURE/jsx(Box, { as: ActionList$1.Divider, ...props }); } const ActionList = Object.assign(ActionListImpl, { Item: ActionListItem, Group: ActionListGroup, Divider: ActionListDivider });
export { ActionList };
import './ActionList-c04a02d6.css';
var classes = {"ActionList":"prc-ActionList-ActionList-rPFF2","ActionListItem":"prc-ActionList-ActionListItem-So4vC","ActionListSubContent":"prc-ActionList-ActionListSubContent-gKsFp","Divider":"prc-ActionList-Divider-taVfb","ItemLabel":"prc-ActionList-ItemLabel-81ohH","TrailingAction":"prc-ActionList-TrailingAction-dMRxe","focus-visible":"prc-ActionList-focus-visible-OJCTY","LeadingAction":"prc-ActionList-LeadingAction-hbWbh","LeadingVisual":"prc-ActionList-LeadingVisual-NBr28","InactiveWarning":"prc-ActionList-InactiveWarning-1Dszv","Description":"prc-ActionList-Description-Z-EZJ","TrailingVisual":"prc-ActionList-TrailingVisual-jwT9C","VisualWrap":"prc-ActionList-VisualWrap-bdCsS","ActionListContent":"prc-ActionList-ActionListContent-KBb8-","Spacer":"prc-ActionList-Spacer-4tR2m","MultiSelectCheckbox":"prc-ActionList-MultiSelectCheckbox-2OqxZ","checkmarkOut":"prc-ActionList-checkmarkOut-GbMf4","checkmarkIn":"prc-ActionList-checkmarkIn-gjsPG","SingleSelectCheckmark":"prc-ActionList-SingleSelectCheckmark-zMd8d","ExpandIcon":"prc-ActionList-ExpandIcon-J4OqB","SubGroup":"prc-ActionList-SubGroup-5Zje2","ItemDescriptionWrap":"prc-ActionList-ItemDescriptionWrap-ujC8S","TrailingActionButton":"prc-ActionList-TrailingActionButton-UUAk6","InactiveButtonWrap":"prc-ActionList-InactiveButtonWrap-Ia-xM","InactiveButtonReset":"prc-ActionList-InactiveButtonReset-uK4-x"};
export { classes as default };
import React from 'react';
/** This context can be used by components that compose ActionList inside a Menu */
const ActionListContainerContext = /#PURE/React.createContext({});
export { ActionListContainerContext };
import React, { useContext, useState, useEffect, useCallback, useMemo } from 'react'; import { ChevronRightIcon, TriangleDownIcon } from '@primer/octicons-react'; import { Divider } from '../ActionList/Divider.js'; import { ActionListContainerContext } from '../ActionList/ActionListContainerContext.js'; import { useId } from '../hooks/useId.js'; import { Tooltip } from '../TooltipV2/Tooltip.js'; import styles from './ActionMenu.module.css.js'; import { useResponsiveValue } from '../hooks/useResponsiveValue.js'; import { isSlot } from '../utils/is-slot.js'; import { jsx } from 'react/jsx-runtime'; import { useProvidedStateOrCreate } from '../hooks/useProvidedStateOrCreate.js'; import { useProvidedRefOrCreate } from '../hooks/useProvidedRefOrCreate.js'; import { useMenuKeyboardNavigation } from '../hooks/useMenuKeyboardNavigation.js'; import { AnchoredOverlay } from '../AnchoredOverlay/AnchoredOverlay.js'; import { ButtonComponent } from '../Button/Button.js';
const MenuContext = /#PURE/React.createContext({ renderAnchor: null, open: false }); // anchorProps adds onClick and onKeyDown, so we need to merge them with buttonProps const mergeAnchorHandlers = (anchorProps, buttonProps) => { const mergedAnchorProps = { ...anchorProps }; if (typeof buttonProps.onClick === 'function') { const anchorOnClick = anchorProps.onClick; const mergedOnClick = event => { var _buttonProps$onClick; (_buttonProps$onClick = buttonProps.onClick) === null || _buttonProps$onClick === void 0 ? void 0 : _buttonProps$onClick.call(buttonProps, event); anchorOnClick === null || anchorOnClick === void 0 ? void 0 : anchorOnClick(event); }; mergedAnchorProps.onClick = mergedOnClick; } if (typeof buttonProps.onKeyDown === 'function') { const anchorOnKeyDown = anchorProps.onKeyDown; const mergedOnAnchorKeyDown = event => { var _buttonProps$onKeyDow; (_buttonProps$onKeyDow = buttonProps.onKeyDown) === null || _buttonProps$onKeyDow === void 0 ? void 0 : _buttonProps$onKeyDow.call(buttonProps, event); anchorOnKeyDown === null || anchorOnKeyDown === void 0 ? void 0 : anchorOnKeyDown(event); }; mergedAnchorProps.onKeyDown = mergedOnAnchorKeyDown; } return mergedAnchorProps; }; const Menu = ({ anchorRef: externalAnchorRef, open, onOpenChange, children }) => { const parentMenuContext = useContext(MenuContext); const [combinedOpenState, setCombinedOpenState] = useProvidedStateOrCreate(open, onOpenChange, false); const onOpen = React.useCallback(() => setCombinedOpenState(true), [setCombinedOpenState]); const isNarrow = useResponsiveValue({ narrow: true }, false); const onClose = React.useCallback(gesture => { var _parentMenuContext$on; if (isNarrow && open && gesture === 'tab') { return; } setCombinedOpenState(false); // Close the parent stack when an item is selected or the user tabs out of the menu entirely switch (gesture) { case 'tab': case 'item-select': (_parentMenuContext$on = parentMenuContext.onClose) === null || _parentMenuContext$on === void 0 ? void 0 : _parentMenuContext$on.call(parentMenuContext, gesture); } }, [setCombinedOpenState, parentMenuContext, open, isNarrow]); const menuButtonChild = React.Children.toArray(children).find(child => /#PURE/React.isValidElement(child) && (child.type === MenuButton || child.type === Anchor || isSlot(child, Anchor) || isSlot(child, MenuButton))); const menuButtonChildId = /#PURE/React.isValidElement(menuButtonChild) ? menuButtonChild.props.id : undefined; const anchorRef = useProvidedRefOrCreate(externalAnchorRef); const anchorId = useId(menuButtonChildId); let renderAnchor = null; // 🚨 Hack for good API! // we strip out Anchor from children and pass it to AnchoredOverlay to render // with additional props for accessibility // 🚨 Accounting for Tooltip wrapping ActionMenu.Button or being a direct child of ActionMenu.Anchor. const contents = React.Children.map(children, child => { // Is ActionMenu.Button wrapped with Tooltip? If this is the case, our anchor is the tooltip's trigger (ActionMenu.Button's grandchild) if (child.type === Tooltip || isSlot(child, Tooltip)) { // tooltip trigger const anchorChildren = child.props.children; if (anchorChildren.type === MenuButton || isSlot(anchorChildren, MenuButton)) { // eslint-disable-next-line react-hooks/immutability renderAnchor = anchorProps => { // We need to attach the anchor props to the tooltip trigger (ActionMenu.Button's grandchild) not the tooltip itself. const triggerButton = /#PURE/React.cloneElement(anchorChildren, mergeAnchorHandlers({ ...anchorProps }, anchorChildren.props)); return /#PURE/React.cloneElement(child, { children: triggerButton, ref: anchorRef }); }; } return null; } else if (child.type === Anchor || isSlot(child, Anchor)) { const anchorChildren = child.props.children; const isWrappedWithTooltip = anchorChildren !== undefined ? anchorChildren.type === Tooltip || isSlot(anchorChildren, Tooltip) : false; if (isWrappedWithTooltip) { if (anchorChildren.props.children !== null) { renderAnchor = anchorProps => { // ActionMenu.Anchor's children can be wrapped with Tooltip. If this is the case, our anchor is the tooltip's trigger const tooltipTrigger = anchorChildren.props.children; // We need to attach the anchor props to the tooltip trigger not the tooltip itself. const tooltipTriggerEl = /#PURE/React.cloneElement(tooltipTrigger, mergeAnchorHandlers({ ...anchorProps }, tooltipTrigger.props)); const tooltip = /#PURE/React.cloneElement(anchorChildren, { children: tooltipTriggerEl }); return /#PURE/React.cloneElement(child, { children: tooltip, ref: anchorRef }); }; } } else { renderAnchor = anchorProps => /#PURE/React.cloneElement(child, anchorProps); } return null; } else if (child.type === MenuButton || isSlot(child, MenuButton)) { renderAnchor = anchorProps => /#PURE/React.cloneElement(child, mergeAnchorHandlers(anchorProps, child.props)); return null; } else { return child; } }); return /#PURE/jsx(MenuContext.Provider, { value: { anchorRef, renderAnchor, anchorId, open: combinedOpenState, onOpen, onClose, // will be undefined for the outermost level, then false for the top menu, then true inside that isSubmenu: parentMenuContext.isSubmenu !== undefined }, children: contents }); }; Menu.displayName = "Menu"; // eslint-disable-next-line @typescript-eslint/no-explicit-any const Anchor = /#PURE/React.forwardRef(({ children: child, ...anchorProps }, anchorRef) => { const { onOpen, isSubmenu } = React.useContext(MenuContext); const openSubmenuOnRightArrow = useCallback(event => { if (isSubmenu && event.key === 'ArrowRight' && !event.defaultPrevented) onOpen === null || onOpen === void 0 ? void 0 : onOpen('anchor-key-press'); }, [isSubmenu, onOpen]); const onButtonClick = event => { var _child$props$onClick, _child$props, _anchorProps$onClick; (_child$props$onClick = (_child$props = child.props).onClick) === null || _child$props$onClick === void 0 ? void 0 : _child$props$onClick.call(_child$props, event); (_anchorProps$onClick = anchorProps.onClick) === null || _anchorProps$onClick === void 0 ? void 0 : _anchorProps$onClick.call(anchorProps, event); // onClick is passed from AnchoredOverlay }; const onButtonKeyDown = event => { var _child$props$onKeyDow, _child$props2, _anchorProps$onKeyDow; (_child$props$onKeyDow = (_child$props2 = child.props).onKeyDown) === null || _child$props$onKeyDow === void 0 ? void 0 : _child$props$onKeyDow.call(_child$props2, event); openSubmenuOnRightArrow(event); (_anchorProps$onKeyDow = anchorProps.onKeyDown) === null || _anchorProps$onKeyDow === void 0 ? void 0 : _anchorProps$onKeyDow.call(anchorProps, event); // onKeyDown is passed from AnchoredOverlay };
// Add right chevron icon to submenu anchors rendered using ActionList.Item
const parentActionListContext = useContext(ActionListContainerContext);
const thisActionListContext = useMemo(() => isSubmenu ? {
...parentActionListContext,
defaultTrailingVisual: /#PURE/jsx(ChevronRightIcon, {}),
// Default behavior is to close after selecting; we want to open the submenu instead
afterSelect: () => onOpen === null || onOpen === void 0 ? void 0 : onOpen('anchor-click')
} : parentActionListContext, [isSubmenu, onOpen, parentActionListContext]);
return /#PURE/jsx(ActionListContainerContext.Provider, {
value: thisActionListContext,
children: /#PURE/React.cloneElement(child, {
...anchorProps,
ref: anchorRef,
onClick: onButtonClick,
onKeyDown: onButtonKeyDown
})
});
});
/** this component is syntactical sugar 🍭 */
const MenuButton = /#PURE/React.forwardRef(({ ...props }, anchorRef) => { return /#PURE/jsx(Anchor, { ref: anchorRef, children: /#PURE/jsx(ButtonComponent, { type: "button", trailingAction: TriangleDownIcon, ...props }) }); }); const defaultVariant = { regular: 'anchored', narrow: 'anchored' }; const Overlay = ({ children, align = 'start', side, onPositionChange, displayInViewport, 'aria-labelledby': ariaLabelledby, variant = defaultVariant, ...overlayProps }) => { // we typecast anchorRef as required instead of optional // because we know that we're setting it in context in Menu const { anchorRef, renderAnchor, anchorId, open, onOpen, onClose, isSubmenu = false } = React.useContext(MenuContext); const containerRef = React.useRef(null); const isNarrow = useResponsiveValue({ narrow: true }, false); const isNarrowFullscreen = !!isNarrow && variant.narrow === 'fullscreen'; const handleClose = React.useCallback(gesture => { // In narrow fullscreen mode, don't close on tab, let focus stay in the menu if (isNarrowFullscreen && gesture === 'tab') { return; } onClose === null || onClose === void 0 ? void 0 : onClose(gesture); }, [isNarrowFullscreen, onClose]); useMenuKeyboardNavigation(open, handleClose, containerRef, anchorRef, isSubmenu); const responsiveVariant = useResponsiveValue(variant, { regular: 'anchored', narrow: 'anchored' });
// If the menu anchor is an icon button, we need to label the menu by tooltip that also labelled the anchor.
const [anchorAriaLabelledby, setAnchorAriaLabelledby] = useState(null);
useEffect(() => {
// Necessary for HMR reloads
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
if (anchorRef !== null && anchorRef !== void 0 && anchorRef.current) {
const ariaLabelledby = anchorRef.current.getAttribute('aria-labelledby');
if (ariaLabelledby) {
setAnchorAriaLabelledby(ariaLabelledby);
}
}
}, [anchorRef]);
return /#PURE/jsx(AnchoredOverlay, {
anchorRef: anchorRef,
renderAnchor: renderAnchor,
anchorId: anchorId,
open: open,
onOpen: onOpen,
onClose: handleClose,
align: align,
side: side !== null && side !== void 0 ? side : isSubmenu ? 'outside-right' : 'outside-bottom',
overlayProps: overlayProps,
focusZoneSettings: isNarrowFullscreen ? {
disabled: true
} : {
focusOutBehavior: 'wrap'
},
onPositionChange: onPositionChange,
variant: variant,
displayInViewport: displayInViewport,
children: /#PURE/jsx("div", {
ref: containerRef,
className: styles.ActionMenuContainer,
"data-variant": responsiveVariant,
...(overlayProps.overflow ? {
[data-overflow-${overlayProps.overflow}]: ''
} : {}),
...(overlayProps.maxHeight ? {
[data-max-height-${overlayProps.maxHeight}]: ''
} : {}),
children: /#PURE/jsx(ActionListContainerContext.Provider, {
value: {
container: 'ActionMenu',
listRole: 'menu',
// If there is a custom aria-labelledby, use that. Otherwise, if exists, use the id that labels the anchor such as tooltip. If none of them exist, use anchor id.
listLabelledBy: ariaLabelledby || anchorAriaLabelledby || anchorId,
selectionAttribute: 'aria-checked',
// Should this be here?
afterSelect: () => onClose === null || onClose === void 0 ? void 0 : onClose('item-select'),
enableFocusZone: isNarrowFullscreen // AnchoredOverlay takes care of focus zone. We only want to enable this if menu is narrow fullscreen.
},
children: children
})
})
});
};
Overlay.displayName = "Overlay";
Menu.displayName = 'ActionMenu';
Menu.SLOT = Symbol('ActionMenu');
MenuButton.SLOT = Symbol('ActionMenu.Button');
Anchor.SLOT = Symbol('ActionMenu.Anchor');
Overlay.SLOT = Symbol('ActionMenu.Overlay');
const ActionMenu = Object.assign(Menu, {
Button: MenuButton,
Anchor,
Overlay,
Divider
});
export { ActionMenu };
import './ActionMenu-53493541.css';
var styles = {"ActionMenuContainer":"prc-ActionMenu-ActionMenuContainer-Om1Qz"};
export { styles as default };
import { useCallback, useEffect } from 'react'; import { useFocusTrap } from '../hooks/useFocusTrap.js'; import { useFocusZone } from '../hooks/useFocusZone.js'; import { useId } from '../hooks/useId.js'; import { IconButton } from '../Button/IconButton.js'; import { XIcon } from '@primer/octicons-react'; import classes from './AnchoredOverlay.module.css.js'; import { clsx } from 'clsx'; import { jsxs, Fragment, jsx } from 'react/jsx-runtime'; import { useProvidedRefOrCreate } from '../hooks/useProvidedRefOrCreate.js'; import { useRenderForcingRef } from '../hooks/useRenderForcingRef.js'; import { useAnchoredPosition } from '../hooks/useAnchoredPosition.js'; import Overlay from '../Overlay/Overlay.js';
const defaultVariant = { regular: 'anchored', narrow: 'anchored' }; const defaultCloseButtonProps = {};
/**
- An
AnchoredOverlayprovides an anchor that will open a floating overlay positioned relative to the anchor. - The overlay can be opened and navigated using keyboard or mouse. / const AnchoredOverlay = ({ renderAnchor, anchorRef: externalAnchorRef, anchorId: externalAnchorId, children, open, onOpen, onClose, height, width, overlayProps, focusTrapSettings, focusZoneSettings, side = (overlayProps === null || overlayProps === void 0 ? void 0 : overlayProps['anchorSide']) || 'outside-bottom', align = 'start', alignmentOffset, anchorOffset, displayInViewport, className, pinPosition, variant = defaultVariant, preventOverflow = true, onPositionChange, displayCloseButton = true, closeButtonProps = defaultCloseButtonProps }) => { const anchorRef = useProvidedRefOrCreate(externalAnchorRef); const [overlayRef, updateOverlayRef] = useRenderForcingRef(); const anchorId = useId(externalAnchorId); const onClickOutside = useCallback(() => onClose === null || onClose === void 0 ? void 0 : onClose('click-outside'), [onClose]); const onEscape = useCallback(() => onClose === null || onClose === void 0 ? void 0 : onClose('escape'), [onClose]); const onAnchorKeyDown = useCallback(event => { if (!event.defaultPrevented) { if (!open && ['ArrowDown', 'ArrowUp', ' ', 'Enter'].includes(event.key)) { onOpen === null || onOpen === void 0 ? void 0 : onOpen('anchor-key-press', event); event.preventDefault(); } } }, [open, onOpen]); const onAnchorClick = useCallback(event_0 => { if (event_0.defaultPrevented || event_0.button !== 0) { return; } if (!open) { onOpen === null || onOpen === void 0 ? void 0 : onOpen('anchor-click'); } else { onClose === null || onClose === void 0 ? void 0 : onClose('anchor-click'); } }, [open, onOpen, onClose]); const positionChange = position => { if (onPositionChange && position) { onPositionChange({ position }); } }; const { position: position_0 } = useAnchoredPosition({ anchorElementRef: anchorRef, floatingElementRef: overlayRef, pinPosition, side, align, alignmentOffset, anchorOffset, displayInViewport, onPositionChange: positionChange }, [overlayRef.current]); useEffect(() => { // ensure overlay ref gets cleared when closed, so position can reset between closing/re-opening if (!open && overlayRef.current) { updateOverlayRef(null); } }, [open, overlayRef, updateOverlayRef]); useFocusZone({ containerRef: overlayRef, disabled: !open || !position_0, ...focusZoneSettings }); useFocusTrap({ containerRef: overlayRef, disabled: !open || !position_0, ...focusTrapSettings }); const showXIcon = onClose && variant.narrow === 'fullscreen' && displayCloseButton; const XButtonAriaLabelledBy = closeButtonProps['aria-labelledby']; const XButtonAriaLabel = closeButtonProps['aria-label']; return /#PURE/jsxs(Fragment, { children: [renderAnchor && renderAnchor({ ref: anchorRef, id: anchorId, 'aria-haspopup': 'true', 'aria-expanded': open, tabIndex: 0, onClick: onAnchorClick, onKeyDown: onAnchorKeyDown }), open ? /#PURE/jsxs(Overlay, { returnFocusRef: anchorRef, onClickOutside: onClickOutside, ignoreClickRefs: [anchorRef], onEscape: onEscape, role: "none", visibility: position_0 ? 'visible' : 'hidden', height: height, width: width, top: (position_0 === null || position_0 === void 0 ? void 0 : position_0.top) || 0, left: (position_0 === null || position_0 === void 0 ? void 0 : position_0.left) || 0, responsiveVariant: variant.narrow === 'fullscreen' ? 'fullscreen' : undefined, anchorSide: position_0 === null || position_0 === void 0 ? void 0 : position_0.anchorSide, className: className, preventOverflow: preventOverflow, "data-component": "AnchoredOverlay", ...overlayProps, ref: node => { if (overlayProps !== null && overlayProps !== void 0 && overlayProps.ref) { assignRef(overlayProps.ref, node); } updateOverlayRef(node); }, children: [showXIcon ? /#PURE/jsx("div", { className: classes.ResponsiveCloseButtonContainer, children: /#PURE*/jsx(IconButton, { ...closeButtonProps, type: "button", variant: "invisible", icon: XIcon, ...(XButtonAriaLabelledBy ? { 'aria-labelledby': XButtonAriaLabelledBy, 'aria-label': undefined } : { 'aria-label': XButtonAriaLabel !== null && XButtonAriaLabel !== void 0 ? XButtonAriaLabel : 'Close', 'aria-labelledby': undefined }), className: clsx(classes.ResponsiveCloseButton, closeButtonProps.className), onClick: () => { onClose('close'); } }) }) : null, children] }) : null] }); }; function assignRef(ref, value) { if (typeof ref === 'function') { ref(value); } else if (ref) { ref.current = value; } } AnchoredOverlay.displayName = 'AnchoredOverlay';
export { AnchoredOverlay };
import './AnchoredOverlay-73c1b2d1.css';
var classes = {"ResponsiveCloseButtonContainer":"prc-AnchoredOverlay-ResponsiveCloseButtonContainer-nuium","ResponsiveCloseButton":"prc-AnchoredOverlay-ResponsiveCloseButton-z-2rx"};
export { classes as default };
const alternateOrders = { 'outside-top': ['outside-bottom', 'outside-right', 'outside-left', 'outside-bottom'], 'outside-bottom': ['outside-top', 'outside-right', 'outside-left', 'outside-bottom'], 'outside-left': ['outside-right', 'outside-bottom', 'outside-top', 'outside-bottom'], 'outside-right': ['outside-left', 'outside-bottom', 'outside-top', 'outside-bottom'], }; const alternateAlignments = { start: ['end', 'center'], end: ['start', 'center'], center: ['end', 'start'], }; function getAnchoredPosition(floatingElement, anchorElement, settings = {}) { const { positionedParent: parentElement, clippingNode, positionedParentStyle, clippingNodeStyle, } = getPositionedParentAndClippingNode(floatingElement); const clippingRect = getClippingRect(clippingNode, clippingNodeStyle); const parentElementStyle = positionedParentStyle || getComputedStyle(parentElement); const parentElementRect = parentElement.getBoundingClientRect(); const [borderTop, borderLeft] = [parentElementStyle.borderTopWidth, parentElementStyle.borderLeftWidth].map(v => parseInt(v, 10) || 0); const relativeRect = { top: parentElementRect.top + borderTop, left: parentElementRect.left + borderLeft, }; return pureCalculateAnchoredPosition(clippingRect, relativeRect, floatingElement.getBoundingClientRect(), anchorElement instanceof Element ? anchorElement.getBoundingClientRect() : anchorElement, getDefaultSettings(settings), { width: window.innerWidth, height: window.innerHeight }); } function getPositionedParentAndClippingNode(element) { if (isOnTopLayer(element)) { return { positionedParent: document.body, clippingNode: document.body, positionedParentStyle: null, clippingNodeStyle: null, }; } let positionedParent = null; let clippingNode = null; let positionedParentStyle = null; let clippingNodeStyle = null; let parentNode = element.parentNode; while (parentNode !== null && parentNode !== document.body) { if (parentNode instanceof HTMLElement) { const style = getComputedStyle(parentNode); if (!positionedParent && style.position !== 'static') { positionedParent = parentNode; positionedParentStyle = style; } if (!clippingNode && style.overflow !== 'visible') { clippingNode = parentNode; clippingNodeStyle = style; } if (positionedParent && clippingNode) { break; } } parentNode = parentNode.parentNode; } return { positionedParent: positionedParent !== null && positionedParent !== void 0 ? positionedParent : document.body, clippingNode: clippingNode !== null && clippingNode !== void 0 ? clippingNode : document.body, positionedParentStyle, clippingNodeStyle, }; } function isOnTopLayer(element) { var _a; if (element.tagName === 'DIALOG') { return true; } try { if (element.matches(':popover-open') && /native code/.test((_a = document.body.showPopover) === null || _a === void 0 ? void 0 : _a.toString())) { return true; } } catch (_b) { return false; } return false; } function getClippingRect(clippingNode, cachedStyle = null) { const elemRect = clippingNode.getBoundingClientRect(); const elemStyle = cachedStyle || getComputedStyle(clippingNode); const borderTop = parseInt(elemStyle.borderTopWidth, 10) || 0; const borderLeft = parseInt(elemStyle.borderLeftWidth, 10) || 0; const borderRight = parseInt(elemStyle.borderRightWidth, 10) || 0; const borderBottom = parseInt(elemStyle.borderBottomWidth, 10) || 0; return { top: elemRect.top + borderTop, left: elemRect.left + borderLeft, width: elemRect.width - borderRight - borderLeft, height: Math.max(elemRect.height - borderTop - borderBottom, clippingNode === document.body ? window.innerHeight : -Infinity), }; } const positionDefaults = { side: 'outside-bottom', align: 'start', anchorOffset: 4, alignmentOffset: 4, allowOutOfBounds: false, displayInViewport: false, }; function getDefaultSettings(settings = {}) { var _a, _b, _c, _d, _e, _f; const side = (_a = settings.side) !== null && _a !== void 0 ? _a : positionDefaults.side; const align = (_b = settings.align) !== null && _b !== void 0 ? _b : positionDefaults.align; return { side, align, anchorOffset: (_c = settings.anchorOffset) !== null && _c !== void 0 ? _c : (side === 'inside-center' ? 0 : positionDefaults.anchorOffset), alignmentOffset: (_d = settings.alignmentOffset) !== null && _d !== void 0 ? _d : (align !== 'center' && side.startsWith('inside') ? positionDefaults.alignmentOffset : 0), allowOutOfBounds: (_e = settings.allowOutOfBounds) !== null && _e !== void 0 ? _e : positionDefaults.allowOutOfBounds, displayInViewport: (_f = settings.displayInViewport) !== null && _f !== void 0 ? _f : positionDefaults.displayInViewport, }; } function pureCalculateAnchoredPosition(viewportRect, relativePosition, floatingRect, anchorRect, { side, align, allowOutOfBounds, anchorOffset, alignmentOffset, displayInViewport }, visibleViewportSize) { let effectiveViewportRect = viewportRect; if (displayInViewport) { effectiveViewportRect = { top: 0, left: 0, width: visibleViewportSize.width, height: visibleViewportSize.height, }; } const relativeViewportRect = { top: effectiveViewportRect.top - relativePosition.top, left: effectiveViewportRect.left - relativePosition.left, width: effectiveViewportRect.width, height: effectiveViewportRect.height, }; let pos = calculatePosition(floatingRect, anchorRect, side, align, anchorOffset, alignmentOffset); let anchorSide = side; let anchorAlign = align; pos.top -= relativePosition.top; pos.left -= relativePosition.left; if (!allowOutOfBounds) { const alternateOrder = alternateOrders[side]; let positionAttempt = 0; if (alternateOrder) { let prevSide = side; while (positionAttempt < alternateOrder.length && shouldRecalculatePosition(prevSide, pos, relativeViewportRect, floatingRect)) { const nextSide = alternateOrder[positionAttempt++]; prevSide = nextSide; pos = calculatePosition(floatingRect, anchorRect, nextSide, align, anchorOffset, alignmentOffset); pos.top -= relativePosition.top; pos.left -= relativePosition.left; anchorSide = nextSide; } } const alternateAlignment = alternateAlignments[align]; let alignmentAttempt = 0; if (alternateAlignment) { let prevAlign = align; while (alignmentAttempt < alternateAlignment.length && shouldRecalculateAlignment(prevAlign, pos, relativeViewportRect, floatingRect)) { const nextAlign = alternateAlignment[alignmentAttempt++]; prevAlign = nextAlign; pos = calculatePosition(floatingRect, anchorRect, anchorSide, nextAlign, anchorOffset, alignmentOffset); pos.top -= relativePosition.top; pos.left -= relativePosition.left; anchorAlign = nextAlign; } } if (pos.top < relativeViewportRect.top) { pos.top = relativeViewportRect.top; } if (pos.left < relativeViewportRect.left) { pos.left = relativeViewportRect.left; } if (pos.left + floatingRect.width > effectiveViewportRect.width + relativeViewportRect.left) { pos.left = effectiveViewportRect.width + relativeViewportRect.left - floatingRect.width; } if (displayInViewport || (alternateOrder && positionAttempt < alternateOrder.length)) { if (pos.top + floatingRect.height > effectiveViewportRect.height + relativeViewportRect.top) { pos.top = Math.max(effectiveViewportRect.height + relativeViewportRect.top - floatingRect.height, 0); } } } return Object.assign(Object.assign({}, pos), { anchorSide, anchorAlign }); } function calculatePosition(elementDimensions, anchorPosition, side, align, anchorOffset, alignmentOffset) { const anchorRight = anchorPosition.left + anchorPosition.width; const anchorBottom = anchorPosition.top + anchorPosition.height; let top = -1; let left = -1; if (side === 'outside-top') { top = anchorPosition.top - anchorOffset - elementDimensions.height; } else if (side === 'outside-bottom') { top = anchorBottom + anchorOffset; } else if (side === 'outside-left') { left = anchorPosition.left - anchorOffset - elementDimensions.width; } else if (side === 'outside-right') { left = anchorRight + anchorOffset; } if (side === 'outside-top' || side === 'outside-bottom') { if (align === 'start') { left = anchorPosition.left + alignmentOffset; } else if (align === 'center') { left = anchorPosition.left - (elementDimensions.width - anchorPosition.width) / 2 + alignmentOffset; } else { left = anchorRight - elementDimensions.width - alignmentOffset; } } if (side === 'outside-left' || side === 'outside-right') { if (align === 'start') { top = anchorPosition.top + alignmentOffset; } else if (align === 'center') { top = anchorPosition.top - (elementDimensions.height - anchorPosition.height) / 2 + alignmentOffset; } else { top = anchorBottom - elementDimensions.height - alignmentOffset; } } if (side === 'inside-top') { top = anchorPosition.top + anchorOffset; } else if (side === 'inside-bottom') { top = anchorBottom - anchorOffset - elementDimensions.height; } else if (side === 'inside-left') { left = anchorPosition.left + anchorOffset; } else if (side === 'inside-right') { left = anchorRight - anchorOffset - elementDimensions.width; } else if (side === 'inside-center') { left = (anchorRight + anchorPosition.left) / 2 - elementDimensions.width / 2 + anchorOffset; } if (side === 'inside-top' || side === 'inside-bottom') { if (align === 'start') { left = anchorPosition.left + alignmentOffset; } else if (align === 'center') { left = anchorPosition.left - (elementDimensions.width - anchorPosition.width) / 2 + alignmentOffset; } else { left = anchorRight - elementDimensions.width - alignmentOffset; } } else if (side === 'inside-left' || side === 'inside-right' || side === 'inside-center') { if (align === 'start') { top = anchorPosition.top + alignmentOffset; } else if (align === 'center') { top = anchorPosition.top - (elementDimensions.height - anchorPosition.height) / 2 + alignmentOffset; } else { top = anchorBottom - elementDimensions.height - alignmentOffset; } } return { top, left }; } function shouldRecalculatePosition(side, currentPos, containerDimensions, elementDimensions) { if (side === 'outside-top' || side === 'outside-bottom') { return (currentPos.top < containerDimensions.top || currentPos.top + elementDimensions.height > containerDimensions.height + containerDimensions.top); } else { return (currentPos.left < containerDimensions.left || currentPos.left + elementDimensions.width > containerDimensions.width + containerDimensions.left); } } function shouldRecalculateAlignment(align, currentPos, containerDimensions, elementDimensions) { if (align === 'end') { return currentPos.left < containerDimensions.left; } else if (align === 'start' || align === 'center') { return (currentPos.left + elementDimensions.width > containerDimensions.left + containerDimensions.width || currentPos.left < containerDimensions.left); } }
export { getAnchoredPosition };
import { c } from 'react-compiler-runtime'; import { announceFromElement } from '@primer/live-region-element'; import { useRef, useState, useEffect } from 'react'; import { useEffectOnce } from '../internal/hooks/useEffectOnce.js'; import { useEffectCallback } from '../internal/hooks/useEffectCallback.js'; import { jsx } from 'react/jsx-runtime';
/**
-
Announceis a component that will announce the text content of the -
childrenpassed in to screen readers using the given politeness level. It - will also announce any changes to the text content of
children/ function Announce(props) { const $ = c(25); let children; let delayMs; let rest; let t0; let t1; let t2; let t3; if ($[0] !== props) { ({ as: t0, announceOnShow: t1, children, delayMs, hidden: t2, politeness: t3, ...rest } = props); $[0] = props; $[1] = children; $[2] = delayMs; $[3] = rest; $[4] = t0; $[5] = t1; $[6] = t2; $[7] = t3; } else { children = $[1]; delayMs = $[2]; rest = $[3]; t0 = $[4]; t1 = $[5]; t2 = $[6]; t3 = $[7]; } const BaseComponent = t0 === undefined ? "div" : t0; const announceOnShow = t1 === undefined ? true : t1; const hidden = t2 === undefined ? false : t2; const politeness = t3 === undefined ? "polite" : t3; const ref = useRef(null); const [previousAnnouncementText, setPreviousAnnouncementText] = useState(null); const savedAnnouncement = useRef(null); let t4; if ($[8] !== delayMs || $[9] !== hidden || $[10] !== politeness || $[11] !== previousAnnouncementText) { t4 = () => { var _savedAnnouncement$cu; const { current: element } = ref; if (!element) { return; } if (hidden) { return; } const textContent = getTextContent(element); if (!textContent) { return; } if (textContent === previousAnnouncementText) { return; } const style = window.getComputedStyle(element); if (style.display === "none") { return; } if (style.visibility === "hidden") { return; } (_savedAnnouncement$cu = savedAnnouncement.current) === null || _savedAnnouncement$cu === void 0 ? void 0 : _savedAnnouncement$cu.cancel(); savedAnnouncement.current = announceFromElement(element, politeness === "assertive" ? { politeness } : { politeness, delayMs }); setPreviousAnnouncementText(textContent); }; $[8] = delayMs; $[9] = hidden; $[10] = politeness; $[11] = previousAnnouncementText; $[12] = t4; } else { t4 = $[12]; } const announce = useEffectCallback(t4); let t5; if ($[13] !== announce || $[14] !== announceOnShow) { t5 = () => { if (announceOnShow) { announce(); } }; $[13] = announce; $[14] = announceOnShow; $[15] = t5; } else { t5 = $[15]; } useEffectOnce(t5); let t6; let t7; if ($[16] !== announce) { t6 = () => { const { current: container } = ref; if (container === null) { return; } const observer = new MutationObserver(() => { announce(); }); observer.observe(container, { subtree: true, childList: true, characterData: true }); return () => { observer.disconnect(); }; }; t7 = [announce]; $[16] = announce; $[17] = t6; $[18] = t7; } else { t6 = $[17]; t7 = $[18]; } useEffect(t6, t7); let t8; let t9; if ($[19] === Symbol.for("react.memo_cache_sentinel")) { t8 = () => () => { if (savedAnnouncement.current !== null) { savedAnnouncement.current.cancel(); savedAnnouncement.current = null; } }; t9 = []; $[19] = t8; $[20] = t9; } else { t8 = $[19]; t9 = $[20]; } useEffect(t8, t9); let t10; if ($[21] !== BaseComponent || $[22] !== children || $[23] !== rest) { t10 = /#PURE*/jsx(BaseComponent, { ...rest, ref: ref, children: children });$[21] = BaseComponent; $ [22] = children;$[23] = rest; $ [24] = t10; } else { t10 = $[24]; } return t10; } function getTextContent(element) { let value = ''; if (element.hasAttribute('aria-label')) { value = element.getAttribute('aria-label'); } else if (element.textContent) { value = element.textContent; } return value ? value.trim() : ''; }
export { Announce };
import { c } from 'react-compiler-runtime'; import { Announce } from './Announce.js'; import { jsx } from 'react/jsx-runtime';
function AriaAlert(props) {
var _props$announceOnShow;
const $ = c(3);
const t0 = (_props$announceOnShow = props.announceOnShow) !== null && _props$announceOnShow !== void 0 ? _props$announceOnShow : true;
let t1;
if (
export { AriaAlert };
import { c } from 'react-compiler-runtime'; import { Announce } from './Announce.js'; import { jsx } from 'react/jsx-runtime';
function AriaStatus(props) {
var _props$announceOnShow;
const $ = c(3);
const t0 = (_props$announceOnShow = props.announceOnShow) !== null && _props$announceOnShow !== void 0 ? _props$announceOnShow : false;
let t1;
if (
export { AriaStatus };
import { c } from 'react-compiler-runtime'; import { useRef, useReducer, useDeferredValue } from 'react'; import { AutocompleteContext, AutocompleteDeferredInputContext, AutocompleteInputContext } from './AutocompleteContext.js'; import AutocompleteInput from './AutocompleteInput.js'; import AutocompleteMenu from './AutocompleteMenu.js'; import AutocompleteOverlay from './AutocompleteOverlay.js'; import { useId } from '../hooks/useId.js'; import { jsx } from 'react/jsx-runtime';
const initialState = {
inputValue: '',
showMenu: false,
isMenuDirectlyActivated: false,
autocompleteSuggestion: '',
selectedItemLength: 0
};
const reducer = (state, action) => {
const {
type,
payload
} = action;
switch (type) {
case 'inputValue':
return {
...state,
inputValue: payload
};
case 'showMenu':
return {
...state,
showMenu: payload
};
case 'isMenuDirectlyActivated':
return {
...state,
isMenuDirectlyActivated: payload
};
case 'autocompleteSuggestion':
return {
...state,
autocompleteSuggestion: payload
};
case 'selectedItemLength':
return {
...state,
selectedItemLength: payload
};
default:
return state;
}
};
const Autocomplete = t0 => {
const $ = c(24);
const {
children,
id: idProp
} = t0;
const activeDescendantRef = useRef(null);
const scrollContainerRef = useRef(null);
const inputRef = useRef(null);
const [state, dispatch] = useReducer(reducer, initialState);
const {
inputValue,
showMenu,
autocompleteSuggestion,
isMenuDirectlyActivated,
selectedItemLength
} = state;
let t1;
if (
export { Autocomplete$1 as default };
import { createContext } from 'react';
/**
- Base context containing refs, stable IDs, menu visibility state, and callbacks.
- This context changes when menu opens/closes or selection changes, but NOT on every keystroke.
- Consumers like AutocompleteOverlay that don't need input text should use only this context. / const AutocompleteContext = /#PURE*/createContext(null);
/**
- Input-related state that changes on every keystroke.
- Only AutocompleteInput needs this for immediate text display and suggestion highlighting. / const AutocompleteInputContext = /#PURE*/createContext(null);
/**
- Deferred input value for expensive operations like filtering.
- Uses React's useDeferredValue to allow typing to remain responsive while
- filtering large lists at lower priority.
- AutocompleteMenu uses this to avoid blocking keystrokes during filtering. / const AutocompleteDeferredInputContext = /#PURE*/createContext(null);
export { AutocompleteContext, AutocompleteDeferredInputContext, AutocompleteInputContext };
import React, { useContext, useState, useCallback, useEffect } from 'react'; import { AutocompleteContext, AutocompleteInputContext } from './AutocompleteContext.js'; import { useRefObjectAsForwardedRef } from '../hooks/useRefObjectAsForwardedRef.js'; import useSafeTimeout from '../hooks/useSafeTimeout.js'; import { jsx } from 'react/jsx-runtime'; import TextInput from '../TextInput/TextInput.js';
const ARROW_KEYS_NAV = new Set(['ArrowUp', 'ArrowDown']); const AutocompleteInput = /#PURE/React.forwardRef(({ as: Component = TextInput, onFocus, onBlur, onChange, onKeyDown, onKeyUp, onKeyPress, value, openOnFocus = false, ...props }, forwardedRef) => { const autocompleteContext = useContext(AutocompleteContext); const inputContext = useContext(AutocompleteInputContext); if (autocompleteContext === null || inputContext === null) { throw new Error('AutocompleteContext returned null values'); } const { activeDescendantRef, id, inputRef, setInputValue, setShowMenu, showMenu } = autocompleteContext; const { autocompleteSuggestion = '', inputValue = '', isMenuDirectlyActivated } = inputContext; useRefObjectAsForwardedRef(forwardedRef, inputRef); const [highlightRemainingText, setHighlightRemainingText] = useState(true); const { safeSetTimeout } = useSafeTimeout(); const handleInputFocus = event => { onFocus === null || onFocus === void 0 ? void 0 : onFocus(event); if (openOnFocus) { setShowMenu(true); } }; const handleInputBlur = useCallback(event => { onBlur && onBlur(event);
// HACK: wait a tick and check the focused element before hiding the autocomplete menu
// this prevents the menu from hiding when the user is clicking an option in the Autoselect.Menu,
// but still hides the menu when the user blurs the input by tabbing out or clicking somewhere else on the page
safeSetTimeout(() => {
if (document.activeElement !== inputRef.current) {
setShowMenu(false);
}
}, 0);
}, [onBlur, setShowMenu, inputRef, safeSetTimeout]); const handleInputChange = event => { onChange && onChange(event); setInputValue(event.currentTarget.value); if (!showMenu) { setShowMenu(true); } }; const handleInputKeyDown = useCallback(event => { var _inputRef$current; onKeyDown && onKeyDown(event); if (event.key === 'Backspace') { setHighlightRemainingText(false); } if (event.key === 'Escape' && (_inputRef$current = inputRef.current) !== null && _inputRef$current !== void 0 && _inputRef$current.value) { setInputValue(''); inputRef.current.value = ''; } if (!showMenu && ARROW_KEYS_NAV.has(event.key) && !event.altKey) { setShowMenu(true); } }, [inputRef, setInputValue, setHighlightRemainingText, onKeyDown, showMenu, setShowMenu]); const handleInputKeyUp = useCallback(event => { onKeyUp && onKeyUp(event); if (event.key === 'Backspace') { setHighlightRemainingText(true); } }, [setHighlightRemainingText, onKeyUp]); const onInputKeyPress = useCallback(event => { onKeyPress && onKeyPress(event); if (showMenu && event.key === 'Enter' && activeDescendantRef.current) { event.preventDefault(); event.nativeEvent.stopImmediatePropagation();
// Forward Enter key press to active descendant so that item gets activated
const activeDescendantEvent = new KeyboardEvent(event.type, event.nativeEvent);
activeDescendantRef.current.dispatchEvent(activeDescendantEvent);
}
}, [activeDescendantRef, showMenu, onKeyPress]); useEffect(() => { if (!inputRef.current) { return; }
// resets input value to being empty after a selection has been made
if (!autocompleteSuggestion) {
inputRef.current.value = inputValue;
}
// TODO: fix bug where this function prevents `onChange` from being triggered if the highlighted item text
// is the same as what I'm typing
// e.g.: typing 'tw' highlights 'two', but when I 'two', the text input change does not get triggered
if (highlightRemainingText && autocompleteSuggestion && (inputValue || isMenuDirectlyActivated)) {
inputRef.current.value = autocompleteSuggestion;
if (autocompleteSuggestion.toLowerCase().indexOf(inputValue.toLowerCase()) === 0) {
inputRef.current.setSelectionRange(inputValue.length, autocompleteSuggestion.length);
}
}
// calling this useEffect when `highlightRemainingText` changes breaks backspace functionality
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [autocompleteSuggestion, inputValue, inputRef, isMenuDirectlyActivated]);
useEffect(() => {
setInputValue(typeof value !== 'undefined' ? value.toString() : '');
}, [value, setInputValue]);
return /#PURE/jsx(Component, {
onFocus: handleInputFocus,
onBlur: handleInputBlur,
onChange: handleInputChange,
onKeyDown: handleInputKeyDown,
onKeyPress: onInputKeyPress,
onKeyUp: handleInputKeyUp,
ref: inputRef,
"aria-controls": ${id}-listbox,
"aria-autocomplete": "both",
role: "combobox",
"aria-expanded": showMenu,
"aria-haspopup": "listbox",
"aria-owns": ${id}-listbox,
autoComplete: "off",
id: id,
...props
});
});
AutocompleteInput.displayName = 'AutocompleteInput';
AutocompleteInput.SLOT = Symbol('Autocomplete.Input');
export { AutocompleteInput as default };
import { c } from 'react-compiler-runtime'; import React, { useContext, useRef, useState, useEffect } from 'react'; import { debounce } from '@github/mini-throttle'; import { announce } from '@primer/live-region-element'; import { scrollIntoView } from '@primer/behaviors'; import { ActionList } from '../ActionList/index.js'; import { useFocusZone } from '../hooks/useFocusZone.js'; import { useId } from '../hooks/useId.js'; import { AutocompleteContext, AutocompleteDeferredInputContext } from './AutocompleteContext.js'; import { PlusIcon } from '@primer/octicons-react'; import VisuallyHidden from '../_VisuallyHidden.js'; import { isElement } from 'react-is'; import classes from './AutocompleteMenu.module.css.js'; import { jsx, jsxs } from 'react/jsx-runtime'; import Spinner from '../Spinner/Spinner.js';
const getDefaultSortFn = isItemSelectedFn => (itemIdA, itemIdB) => isItemSelectedFn(itemIdA) === isItemSelectedFn(itemIdB) ? 0 : isItemSelectedFn(itemIdA) ? -1 : 1; const menuScrollMargins = { startMargin: 0, endMargin: 8 }; function getDefaultItemFilter(filterValue) { return function (item, _i) { var _item$text; return Boolean((_item$text = item.text) === null || _item$text === void 0 ? void 0 : _item$text.toLowerCase().startsWith(filterValue.toLowerCase())); }; } function getdefaultCheckedSelectionChange(setInputValueFn) { return function (itemOrItems) { const { text = '' } = Array.isArray(itemOrItems) ? itemOrItems.slice(-1)[0] : itemOrItems; setInputValueFn(text); }; } const isItemSelected = (itemId, selectedItemIds) => selectedItemIds.includes(itemId); function getItemById(itemId, items) { return items.find(item => item.id === itemId); }
// eslint-disable-next-line @typescript-eslint/no-explicit-any
/**
- Announces a message to screen readers at a slowed-down rate. This is useful when you want to announce don't want to
- overwhelm the user with too many announcements in rapid succession.
/
const debounceAnnouncement = debounce(announcement => {
announce(announcement);
}, 250);
function AutocompleteMenu(props) {
const $ = c(78);
const autocompleteContext = useContext(AutocompleteContext);
const deferredInputContext = useContext(AutocompleteDeferredInputContext);
if (autocompleteContext === null || deferredInputContext === null) {
throw new Error("AutocompleteContext returned null values");
}
const {
activeDescendantRef,
id,
inputRef,
scrollContainerRef,
setAutocompleteSuggestion,
setShowMenu,
setInputValue,
setIsMenuDirectlyActivated,
setSelectedItemLength,
showMenu
} = autocompleteContext;
const {
deferredInputValue
} = deferredInputContext;
const {
items,
selectedItemIds,
sortOnCloseFn,
emptyStateText: t0,
addNewItem,
loading,
selectionVariant: t1,
filterFn,
"aria-labelledby": ariaLabelledBy,
onOpenChange,
onSelectedChange,
customScrollContainerRef
} = props;
const emptyStateText = t0 === undefined ? "No selectable options" : t0;
const selectionVariant = t1 === undefined ? "single" : t1;
const listContainerRef = useRef(null);
let t2;
if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
t2 = [];
$[0] = t2;
} else {
t2 = $[0];
}
const allItemsToRenderRef = useRef(t2);
const [highlightedItem, setHighlightedItem] = useState();
let t3;
if ($[1] !== items) {
t3 = items.map(_temp);
$[1] = items;
$[2] = t3;
} else {
t3 = $[2];
}
const [sortedItemIds, setSortedItemIds] = useState(t3);
const generatedUniqueId = useId(id);
let t4;
if ($[3] !== (highlightedItem === null || highlightedItem === void 0 ? void 0 : highlightedItem.id) || $[4] !== inputRef || $[5] !== items || $[6] !== onSelectedChange || $[7] !== selectedItemIds || $[8] !== selectionVariant || $[9] !== setAutocompleteSuggestion || $[10] !== setInputValue || $[11] !== setShowMenu) {
t4 = items.map(selectableItem => ({
...selectableItem,
role: "option",
id: selectableItem.id,
active: (highlightedItem === null || highlightedItem === void 0 ? void 0 : highlightedItem.id) === selectableItem.id,
selected: selectionVariant === "multiple" ? selectedItemIds.includes(selectableItem.id) : undefined,
onAction: item => {
const otherSelectedItemIds = selectedItemIds.filter(selectedItemId => selectedItemId !== item.id);
const newSelectedItemIds = selectedItemIds.includes(item.id) ? otherSelectedItemIds : [...otherSelectedItemIds, item.id];
const onSelectedChangeFn = onSelectedChange ? onSelectedChange : getdefaultCheckedSelectionChange(setInputValue);
onSelectedChangeFn(newSelectedItemIds.map(newSelectedItemId => getItemById(newSelectedItemId, items)));
if (selectionVariant === "multiple") {
setInputValue("");
setAutocompleteSuggestion("");
} else {
var _inputRef$current;
setShowMenu(false);
(_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.setSelectionRange(inputRef.current.value.length, inputRef.current.value.length);
}
}
}));
$[3] = highlightedItem === null || highlightedItem === void 0 ? void 0 : highlightedItem.id;
$[4] = inputRef;
$[5] = items;
$[6] = onSelectedChange;
$[7] = selectedItemIds;
$[8] = selectionVariant;
$[9] = setAutocompleteSuggestion;
$[10] = setInputValue;
$[11] = setShowMenu;
$[12] = t4;
} else {
t4 = $[12];
}
const selectableItems = t4;
let t5;
if ($[13] !== sortedItemIds) {
t5 = sortedItemIds.reduce(_temp2, {});
$[13] = sortedItemIds;
$[14] = t5;
} else {
t5 = $[14];
}
const itemSortOrderData = t5;
let t6;
if ($[15] !== deferredInputValue || $[16] !== filterFn || $[17] !== itemSortOrderData || $[18] !== selectableItems) {
let t7;
if ($[20] !== itemSortOrderData) {
t7 = (a, b) => itemSortOrderData[a.id] - itemSortOrderData[b.id];
$[20] = itemSortOrderData;
$[21] = t7;
} else {
t7 = $[21];
}
t6 = selectableItems.filter(filterFn ? filterFn : getDefaultItemFilter(deferredInputValue)).sort(t7);
$[15] = deferredInputValue;
$[16] = filterFn;
$[17] = itemSortOrderData;
$[18] = selectableItems;
$[19] = t6;
} else {
t6 = $[19];
}
const sortedAndFilteredItemsToRender = t6;
let t7;
if ($[22] !== addNewItem || $[23] !== generatedUniqueId || $[24] !== (highlightedItem === null || highlightedItem === void 0 ? void 0 : highlightedItem.id) || $[25] !== selectedItemIds || $[26] !== selectionVariant || $[27] !== setAutocompleteSuggestion || $[28] !== setInputValue) {
t7 = addNewItem ? [{
...addNewItem,
role: "option",
key: addNewItem.id,
active: (highlightedItem === null || highlightedItem === void 0 ? void 0 : highlightedItem.id) === addNewItem.id,
selected: selectionVariant === "multiple" ? selectedItemIds.includes(addNewItem.id) : undefined,
leadingVisual: _temp3,
onAction: item_0 => {
addNewItem.handleAddItem({
...item_0,
id: item_0.id || generatedUniqueId,
leadingVisual: undefined
});
if (selectionVariant === "multiple") {
setInputValue("");
setAutocompleteSuggestion("");
}
}
}] : [];
$[22] = addNewItem;
$[23] = generatedUniqueId;
$[24] = highlightedItem === null || highlightedItem === void 0 ? void 0 : highlightedItem.id;
$[25] = selectedItemIds;
$[26] = selectionVariant;
$[27] = setAutocompleteSuggestion;
$[28] = setInputValue;
$[29] = t7;
} else {
t7 = $[29];
}
let t8;
if ($[30] !== sortedAndFilteredItemsToRender || $[31] !== t7) {
t8 = [...sortedAndFilteredItemsToRender, ...t7];
$[30] = sortedAndFilteredItemsToRender;
$[31] = t7;
$[32] = t8;
} else {
t8 = $[32];
}
const allItemsToRender = t8;
let t9;
if ($[33] !== allItemsToRender) {
t9 = () => {
allItemsToRenderRef.current = allItemsToRender;
};
$[33] = allItemsToRender;
$[34] = t9;
} else {
t9 = $[34];
}
React.useEffect(t9);
let t10;
let t11;
if ($[35] !== allItemsToRender || $[36] !== emptyStateText) {
t10 = () => {
if (allItemsToRender.length === 0) {
debounceAnnouncement(emptyStateText);
}
};
t11 = [allItemsToRender, emptyStateText];
$[35] = allItemsToRender;
$[36] = emptyStateText;
$[37] = t10;
$[38] = t11;
} else {
t10 = $[37];
t11 = $[38];
}
React.useEffect(t10, t11);
let t12;
if ($[39] !== activeDescendantRef || $[40] !== customScrollContainerRef || $[41] !== scrollContainerRef || $[42] !== setIsMenuDirectlyActivated) {
t12 = (current, _previous, directlyActivated) => {
activeDescendantRef.current = current || null;
if (current) {
const selectedItem = allItemsToRenderRef.current.find(item_1 => {
var _current$closest;
return item_1.id === ((_current$closest = current.closest("li")) === null || _current$closest === void 0 ? void 0 : _current$closest.getAttribute("data-id"));
});
setHighlightedItem(selectedItem);
setIsMenuDirectlyActivated(directlyActivated);
}
if (current && customScrollContainerRef && customScrollContainerRef.current && directlyActivated) {
scrollIntoView(current, customScrollContainerRef.current, menuScrollMargins);
} else {
if (current && scrollContainerRef.current && directlyActivated) {
scrollIntoView(current, scrollContainerRef.current, menuScrollMargins);
}
}
};
$[39] = activeDescendantRef;
$[40] = customScrollContainerRef;
$[41] = scrollContainerRef;
$[42] = setIsMenuDirectlyActivated;
$[43] = t12;
} else {
t12 = $[43];
}
let t13;
if ($[44] !== inputRef || $[45] !== t12) {
t13 = {
containerRef: listContainerRef,
focusOutBehavior: "wrap",
focusableElementFilter: _temp4,
activeDescendantFocus: inputRef,
onActiveDescendantChanged: t12
};
$[44] = inputRef;
$[45] = t12;
$[46] = t13;
} else {
t13 = $[46];
}
let t14;
if ($[47] !== loading) {
t14 = [loading];
$[47] = loading;
$[48] = t14;
} else {
t14 = $[48];
}
useFocusZone(t13, t14);
let t15;
let t16;
if ($[49] !== deferredInputValue || $[50] !== highlightedItem || $[51] !== selectedItemIds || $[52] !== setAutocompleteSuggestion) {
t15 = () => {
var _highlightedItem$text;
if (highlightedItem !== null && highlightedItem !== void 0 && (_highlightedItem$text = highlightedItem.text) !== null && _highlightedItem$text !== void 0 && _highlightedItem$text.startsWith(deferredInputValue) && !selectedItemIds.includes(highlightedItem.id)) {
setAutocompleteSuggestion(highlightedItem.text);
} else {
setAutocompleteSuggestion("");
}
};
t16 = [highlightedItem, deferredInputValue, selectedItemIds, setAutocompleteSuggestion];
$[49] = deferredInputValue;
$[50] = highlightedItem;
$[51] = selectedItemIds;
$[52] = setAutocompleteSuggestion;
$[53] = t15;
$[54] = t16;
} else {
t15 = $[53];
t16 = $[54];
}
useEffect(t15, t16);
let t17;
let t18;
if ($[55] !== onOpenChange || $[56] !== selectedItemIds || $[57] !== showMenu || $[58] !== sortOnCloseFn || $[59] !== sortedItemIds) {
t17 = () => {
const itemIdSortResult = [...sortedItemIds].sort(sortOnCloseFn ? sortOnCloseFn : getDefaultSortFn(itemId_0 => isItemSelected(itemId_0, selectedItemIds)));
const sortResultMatchesState = itemIdSortResult.length === sortedItemIds.length && itemIdSortResult.every((element_0, index) => element_0 === sortedItemIds[index]);
if (showMenu === false && !sortResultMatchesState) {
setSortedItemIds(itemIdSortResult);
}
onOpenChange && onOpenChange(Boolean(showMenu));
};
t18 = [showMenu, onOpenChange, selectedItemIds, sortOnCloseFn, sortedItemIds];
$[55] = onOpenChange;
$[56] = selectedItemIds;
$[57] = showMenu;
$[58] = sortOnCloseFn;
$[59] = sortedItemIds;
$[60] = t17;
$[61] = t18;
} else {
t17 = $[60];
t18 = $[61];
}
useEffect(t17, t18);
let t19;
if ($[62] !== selectedItemIds.length || $[63] !== setSelectedItemLength) {
t19 = () => {
if (selectedItemIds.length) {
setSelectedItemLength(selectedItemIds.length);
}
};
$[62] = selectedItemIds.length;
$[63] = setSelectedItemLength;
$[64] = t19;
} else {
t19 = $[64];
}
let t20;
if ($[65] !== selectedItemIds || $[66] !== setSelectedItemLength) {
t20 = [selectedItemIds, setSelectedItemLength];
$[65] = selectedItemIds;
$[66] = setSelectedItemLength;
$[67] = t20;
} else {
t20 = $[67];
}
useEffect(t19, t20);
if (selectionVariant === "single" && selectedItemIds.length > 1) {
throw new Error("Autocomplete: selectionVariant "single" cannot be used with multiple selected items");
}
let t21;
if ($[68] !== allItemsToRender || $[69] !== ariaLabelledBy || $[70] !== emptyStateText || $[71] !== id || $[72] !== loading || $[73] !== selectionVariant) {
t21 = loading ? /#PURE/jsx("div", {
className: classes.SpinnerWrapper,
children: /#PURE/jsx(Spinner, {})
}) : /#PURE/jsx("div", {
ref: listContainerRef,
children: allItemsToRender.length ? /#PURE/jsx(ActionList, {
selectionVariant: selectionVariant,
role: "listbox",
id:
${id}-listbox, "aria-labelledby": ariaLabelledBy, children: allItemsToRender.map(_temp5) }) : emptyStateText !== false && emptyStateText !== null ? /#PURE/jsx("div", { className: classes.EmptyStateWrapper, children: emptyStateText }) : null }); $[68] = allItemsToRender; $[69] = ariaLabelledBy; $[70] = emptyStateText; $[71] = id; $[72] = loading; $[73] = selectionVariant; $[74] = t21; } else { t21 = $[74]; } let t22; if ($[75] !== showMenu || $[76] !== t21) { t22 = /#PURE/jsx(VisuallyHidden, { isVisible: showMenu, children: t21 }); $[75] = showMenu; $[76] = t21; $[77] = t22; } else { t22 = $[77]; } return t22; } function _temp5(item_2) { const { id: id_0, onAction, children, text, leadingVisual: LeadingVisual, trailingVisual: TrailingVisual, key, role, ...itemProps } = item_2; return /#PURE/jsxs(ActionList.Item, { onSelect: () => onAction(item_2), ...itemProps, id: id_0, "data-id": id_0, role: role, children: [LeadingVisual && /#PURE/jsx(ActionList.LeadingVisual, { children: isElement(LeadingVisual) ? LeadingVisual : /#PURE/jsx(LeadingVisual, {}) }), children !== null && children !== void 0 ? children : text, TrailingVisual && /#PURE/jsx(ActionList.TrailingVisual, { children: isElement(TrailingVisual) ? TrailingVisual : /#PURE/jsx(TrailingVisual, {}) })] }, key !== null && key !== void 0 ? key : id_0); } _temp5.displayName = "_temp5"; function _temp4(element) { return !(element instanceof HTMLInputElement); } function _temp3() { return /#PURE*/jsx(PlusIcon, {}); } _temp3.displayName = "_temp3"; function _temp2(acc, curr, i) { acc[curr] = i; return acc; } function _temp(t0) { const { id: itemId } = t0; return itemId; } AutocompleteMenu.displayName = 'AutocompleteMenu'; AutocompleteMenu.SLOT = Symbol('Autocomplete.Menu');
export { AutocompleteMenu as default };
import './AutocompleteMenu-7f135c03.css';
var classes = {"SpinnerWrapper":"prc-Autocomplete-SpinnerWrapper-DJN3d","EmptyStateWrapper":"prc-Autocomplete-EmptyStateWrapper-OoIjW"};
export { classes as default };
import { c } from 'react-compiler-runtime'; import { useContext, useRef, useEffect } from 'react'; import { AutocompleteContext } from './AutocompleteContext.js'; import { useRefObjectAsForwardedRef } from '../hooks/useRefObjectAsForwardedRef.js'; import VisuallyHidden from '../_VisuallyHidden.js'; import classes from './AutocompleteOverlay.module.css.js'; import { clsx } from 'clsx'; import { jsx } from 'react/jsx-runtime'; import { useAnchoredPosition } from '../hooks/useAnchoredPosition.js'; import Overlay from '../Overlay/Overlay.js';
// TODO: consider making 'aria-labelledby' required
function AutocompleteOverlay(t0) {
const $ = c(29);
let children;
let className;
let menuAnchorRef;
let newOverlayProps;
let oldOverlayProps;
if (
export { AutocompleteOverlay as default };
import './AutocompleteOverlay-d99d778c.css';
var classes = {"Overlay":"prc-Autocomplete-Overlay-bwNcB"};
export { classes as default };
import { c } from 'react-compiler-runtime'; import { clsx } from 'clsx'; import React from 'react'; import { isResponsiveValue } from '../hooks/useResponsiveValue.js'; import classes from './Avatar.module.css.js'; import { jsx } from 'react/jsx-runtime';
const DEFAULT_AVATAR_SIZE = 20;
const Avatar = /#PURE/React.forwardRef(function Avatar(t0, ref) {
const $ = c(29);
let className;
let rest;
let style;
let t1;
let t2;
let t3;
if (--avatarSize-${key}] = ${value}px;
}
} else {
cssSizeVars["--avatarSize-regular"] = ${size}px;
}
export { DEFAULT_AVATAR_SIZE, Avatar as default };
import './Avatar-61b19061.css';
var classes = {"Avatar":"prc-Avatar-Avatar-0xaUi"};
export { classes as default };
import { clsx } from 'clsx'; import React, { useState, useRef, useEffect } from 'react'; import { DEFAULT_AVATAR_SIZE } from '../Avatar/Avatar.js'; import { isResponsiveValue } from '../hooks/useResponsiveValue.js'; import classes from './AvatarStack.module.css.js'; import { hasInteractiveNodes } from '../internal/utils/hasInteractiveNodes.js'; import { jsx, jsxs } from 'react/jsx-runtime';
const transformChildren = (children, shape) => {
return React.Children.map(children, child => {
if (! /#PURE/React.isValidElement(child)) return child;
return /#PURE/React.cloneElement(child, {
...child.props,
square: (shape === 'square' ? true : undefined) || child.props.square,
className: clsx(child.props.className, 'pc-AvatarItem', classes.AvatarItem)
});
});
};
const AvatarStackBody = ({
disableExpand,
hasInteractiveChildren,
stackContainer,
children
}) => {
return /#PURE/jsx("div", {
"data-disable-expand": disableExpand ? '' : undefined,
className: clsx({
'pc-AvatarStack--disableExpand': disableExpand
}, 'pc-AvatarStackBody', classes.AvatarStackBody),
tabIndex: !hasInteractiveChildren && !disableExpand ? 0 : undefined,
ref: stackContainer,
children: children
});
};
AvatarStackBody.displayName = "AvatarStackBody";
const AvatarStack = ({
children,
variant = 'cascade',
shape = 'circle',
alignRight,
disableExpand,
size,
className,
style
}) => {
const [hasInteractiveChildren, setHasInteractiveChildren] = useState(false);
const stackContainer = useRef(null);
const count = React.Children.count(children);
const getAvatarChildSizes = () => {
const avatarSizeMap = {
narrow: [],
regular: [],
wide: []
};
return React.Children.toArray(children).reduce((acc, child) => {
// if child is not an Avatar, return the default avatar sizes from the accumulator
if (! /#PURE/React.isValidElement(child)) return acc;
for (const responsiveKey of Object.keys(avatarSizeMap)) {
// if the child has responsive size prop values, push the value to the appropriate viewport property in the avatarSizeMap
if (isResponsiveValue(child.props.size)) {
avatarSizeMap[responsiveKey].push(child.props.size[responsiveKey] || DEFAULT_AVATAR_SIZE);
}
// otherwise, the size is a number (or undefined), so push the value to all viewport properties in the avatarSizeMap
else {
avatarSizeMap[responsiveKey].push(child.props.size || DEFAULT_AVATAR_SIZE);
}
// set the smallest size in each viewport property as the value for that viewport property in the accumulator
acc[responsiveKey] = Math.min(...avatarSizeMap[responsiveKey]);
}
return acc;
}, {
narrow: DEFAULT_AVATAR_SIZE,
regular: DEFAULT_AVATAR_SIZE,
wide: DEFAULT_AVATAR_SIZE
});
}; const childSizes = getAvatarChildSizes(); useEffect(() => { if (stackContainer.current) { const interactiveChildren = () => { setHasInteractiveChildren(hasInteractiveNodes(stackContainer.current)); }; const observer = new MutationObserver(interactiveChildren); observer.observe(stackContainer.current, { childList: true });
// Call on initial render, then call it again only if there's a mutation
interactiveChildren();
return () => {
observer.disconnect();
};
}
}, []);
const getResponsiveAvatarSizeStyles = () => {
// if there is no size set on the AvatarStack, use the size props of the Avatar children to set the --avatar-stack-size CSS variable
if (!size) {
return {
'--stackSize-narrow': ${childSizes.narrow}px,
'--stackSize-regular': ${childSizes.regular}px,
'--stackSize-wide': ${childSizes.wide}px
};
}
// if the `size` prop is set and responsive, set the `--avatar-stack-size` CSS variable for each viewport
if (isResponsiveValue(size)) {
return {
'--stackSize-narrow': `${size.narrow || DEFAULT_AVATAR_SIZE}px`,
'--stackSize-regular': `${size.regular || DEFAULT_AVATAR_SIZE}px`,
'--stackSize-wide': `${size.wide || DEFAULT_AVATAR_SIZE}px`
};
}
// if the `size` prop is set and not responsive, it is a number, so we can just set the `--avatar-stack-size` CSS variable to that number
return {
'--avatar-stack-size': `${size}px`
};
}; return /#PURE/jsx("span", { "data-variant": variant, "data-shape": shape, "data-avatar-count": count > 3 ? '3+' : count, "data-align-right": alignRight ? '' : undefined, "data-responsive": !size || isResponsiveValue(size) ? '' : undefined, className: clsx({ 'pc-AvatarStack--variant': variant, 'pc-AvatarStack--shape': shape, 'pc-AvatarStack--two': count === 2, 'pc-AvatarStack--three': count === 3, 'pc-AvatarStack--three-plus': count > 3, 'pc-AvatarStack--right': alignRight }, className, classes.AvatarStack), style: { ...getResponsiveAvatarSizeStyles(), ...style }, children: /#PURE/jsxs(AvatarStackBody, { disableExpand: disableExpand, hasInteractiveChildren: hasInteractiveChildren, stackContainer: stackContainer, children: [' ', transformChildren(children, shape)] }) }); }; AvatarStack.displayName = "AvatarStack";
export { AvatarStack as default };
import './AvatarStack-0eeea299.css';
var classes = {"AvatarStack":"prc-AvatarStack-AvatarStack-vkIK2","AvatarItem":"prc-AvatarStack-AvatarItem-70eW3","AvatarStackBody":"prc-AvatarStack-AvatarStackBody-JFK4u"};
export { classes as default };
import { c } from 'react-compiler-runtime'; import { clsx } from 'clsx'; import React, { useEffect, forwardRef } from 'react'; import { XIcon, AlertIcon, InfoIcon, CheckCircleIcon, StopIcon } from '@primer/octicons-react'; import { IconButton } from '../Button/IconButton.js'; import { ButtonComponent } from '../Button/Button.js'; import { useMergedRefs } from '../internal/hooks/useMergedRefs.js'; import { useId } from '../hooks/useId.js'; import classes from './Banner.module.css.js'; import { jsx, jsxs } from 'react/jsx-runtime'; import { VisuallyHidden } from '../VisuallyHidden/VisuallyHidden.js';
const BannerContext = /#PURE/React.createContext(undefined);
const iconForVariant = {
critical: /#PURE/jsx(StopIcon, {}),
info: /#PURE/jsx(InfoIcon, {}),
success: /#PURE/jsx(CheckCircleIcon, {}),
upsell: /#PURE/jsx(InfoIcon, {}),
warning: /#PURE/jsx(AlertIcon, {})
};
const Banner = /#PURE/React.forwardRef(function Banner({
'aria-label': label,
'aria-labelledby': labelledBy,
children,
className,
description,
hideTitle,
icon,
leadingVisual,
onDismiss,
primaryAction,
secondaryAction,
title,
variant = 'info',
actionsLayout = 'default',
flush = false,
...rest
}, forwardRef) {
const dismissible = !!onDismiss;
const hasActions = primaryAction || secondaryAction;
const bannerRef = React.useRef(null);
const ref = useMergedRefs(forwardRef, bannerRef);
const supportsCustomIcon = variant === 'info' || variant === 'upsell';
const titleId = useId();
const visual = leadingVisual !== null && leadingVisual !== void 0 ? leadingVisual : icon;
if (process.env.NODE_ENV !== "production") {
// This hook is called consistently depending on the environment
// eslint-disable-next-line react-hooks/rules-of-hooks
useEffect(() => {
if (title) {
return;
}
const {
current: banner
} = bannerRef;
if (!banner) {
return;
}
const hasTitle = banner.querySelector('[data-banner-title]');
if (!hasTitle) {
throw new Error('Expected a title to be provided to the component with the title prop or through <Banner.Title> but no title was found');
}
}, [title]);
}
return /#PURE/jsx(BannerContext.Provider, {
value: {
titleId
},
children: /#PURE/jsxs("section", {
...rest,
"aria-labelledby": labelledBy !== null && labelledBy !== void 0 ? labelledBy : label ? undefined : titleId,
"aria-label": labelledBy ? undefined : label,
className: clsx(className, classes.Banner),
"data-dismissible": onDismiss ? '' : undefined,
"data-title-hidden": hideTitle ? '' : undefined,
"data-variant": variant,
"data-actions-layout": actionsLayout,
tabIndex: -1,
ref: ref,
"data-layout": rest.layout || 'default',
"data-flush": flush ? '' : undefined,
children: [/#PURE/jsx("div", {
className: classes.BannerIcon,
children: visual && supportsCustomIcon ? visual : iconForVariant[variant]
}), /#PURE/jsxs("div", {
className: classes.BannerContainer,
children: [/#PURE/jsxs("div", {
className: classes.BannerContent,
children: [title ? hideTitle ? /#PURE/jsx(VisuallyHidden, {
children: /#PURE/jsx(BannerTitle, {
children: title
})
}) : /#PURE/jsx(BannerTitle, {
children: title
}) : null, description ? /#PURE/jsx(BannerDescription, {
children: description
}) : null, children]
}), hasActions ? /#PURE/jsx(BannerActions, {
primaryAction: primaryAction,
secondaryAction: secondaryAction
}) : null]
}), dismissible ? /#PURE/jsx(IconButton, {
"aria-label": "Dismiss banner",
onClick: onDismiss,
className: classes.BannerDismiss,
icon: XIcon,
variant: "invisible"
}) : null]
})
});
});
function BannerTitle(props) {
var _id;
const $ = c(14);
let children;
let className;
let id;
let rest;
let t0;
if (
export { Banner, BannerActions, BannerDescription, BannerPrimaryAction, BannerSecondaryAction, BannerTitle };
import './Banner-f672cdf9.css';
var classes = {"Banner":"prc-Banner-Banner-IPLJ2","BannerContainer":"prc-Banner-BannerContainer-T-Siu","BannerActions":"prc-Banner-BannerActions-gvCLf","BannerContent":"prc-Banner-BannerContent-LraS2","BannerTitle":"prc-Banner-BannerTitle-T4z0L","BannerIcon":"prc-Banner-BannerIcon-o4ayx","BannerDismiss":"prc-Banner-BannerDismiss-b12FL","BannerActionsContainer":"prc-Banner-BannerActionsContainer-PdBu1"};
export { classes as default };
import { c } from 'react-compiler-runtime'; import { clsx } from 'clsx'; import classes from './BranchName.module.css.js'; import { fixedForwardRef } from '../utils/modern-polymorphic.js'; import { jsx } from 'react/jsx-runtime';
// eslint-disable-next-line @typescript-eslint/no-explicit-any
function BranchName(props, ref) {
const $ = c(13);
let children;
let className;
let rest;
let t0;
if (
export { BranchName_default as default };
import './BranchName-2fad4f4b.css';
var classes = {"BranchName":"prc-BranchName-BranchName-CMTaU"};
export { classes as default };
import { clsx } from 'clsx'; import { useTheme } from './ThemeProvider.js'; import 'focus-visible'; import { createGlobalStyle } from 'styled-components'; import { jsxs, jsx } from 'react/jsx-runtime';
const GlobalStyle = createGlobalStyle(["{box-sizing:border-box;}body{margin:0;}table{border-collapse:collapse;}[data-color-mode='light'] input{color-scheme:light;}[data-color-mode='dark'] input{color-scheme:dark;}@media (prefers-color-scheme:light){[data-color-mode='auto'][data-light-theme='light']{color-scheme:light;}}@media (prefers-color-scheme:dark){[data-color-mode='auto'][data-dark-theme*='dark']{color-scheme:dark;}}[role='button']:focus:not(:focus-visible):not(:global(.focus-visible)),[role='tabpanel'][tabindex='0']:focus:not(:focus-visible):not(:global(.focus-visible)),button:focus:not(:focus-visible):not(:global(.focus-visible)),summary:focus:not(:focus-visible):not(:global(.focus-visible)),a:focus:not(:focus-visible):not(:global(.focus-visible)){outline:none;box-shadow:none;}[tabindex='0']:focus:not(:focus-visible):not(:global(.focus-visible)),details-dialog:focus:not(:focus-visible):not(:global(.focus-visible)){outline:none;}.BaseStyles{font-family:var(--BaseStyles-fontFamily,var(--fontStack-system));line-height:var(--BaseStyles-lineHeight,1.5);color:var(--BaseStyles-fgColor,var(--fgColor-default));&:has([data-color-mode='light']){input &{color-scheme:light;}}&:has([data-color-mode='dark']){input &{color-scheme:dark;}}:where(a:not([class*='prc-']):not([class*='PRC-']):not([class*='Primer_Brand__'])){color:var(--fgColor-accent,var(--color-accent-fg));text-decoration:none;&:hover{text-decoration:underline;}}}"]); function BaseStyles({ children, color, fontFamily, lineHeight, className, as: Component = 'div', style, ...rest }) { const { colorMode, colorScheme, dayScheme, nightScheme } = useTheme(); const baseStyles = { ['--BaseStyles-fgColor']: color, ['--BaseStyles-fontFamily']: fontFamily, ['--BaseStyles-lineHeight']: lineHeight }; return /#PURE/jsxs(Component, { className: clsx('BaseStyles', className), "data-portal-root": true /** * We need to map valid primer/react color modes onto valid color modes for primer/primitives * valid color modes for primer/primitives: auto | light | dark * valid color modes for primer/primer: auto | day | night | light | dark /, "data-color-mode": colorMode === 'auto' ? 'auto' : colorScheme?.includes('dark') ? 'dark' : 'light', "data-light-theme": dayScheme, "data-dark-theme": nightScheme, style: { ...baseStyles, ...style }, ...rest, children: [/#PURE*/jsx(GlobalStyle, { colorScheme: colorScheme?.includes('dark') ? 'dark' : 'light' }), children] }); }
export { BaseStyles };
import { c } from 'react-compiler-runtime'; import { clsx } from 'clsx'; import React, { useEffect, forwardRef } from 'react'; import { XIcon, AlertIcon, InfoIcon, CheckCircleIcon, StopIcon } from '@primer/octicons-react'; import { IconButton } from '../Button/IconButton.js'; import { ButtonComponent } from '../Button/Button.js'; import { useMergedRefs } from '../internal/hooks/useMergedRefs.js'; import { useId } from '../hooks/useId.js'; import classes from './Banner.module.css.js'; import { jsx, jsxs } from 'react/jsx-runtime'; import { VisuallyHidden } from '../VisuallyHidden/VisuallyHidden.js';
const BannerContext = /#PURE/React.createContext(undefined);
const iconForVariant = {
critical: /#PURE/jsx(StopIcon, {}),
info: /#PURE/jsx(InfoIcon, {}),
success: /#PURE/jsx(CheckCircleIcon, {}),
upsell: /#PURE/jsx(InfoIcon, {}),
warning: /#PURE/jsx(AlertIcon, {})
};
const Banner = /#PURE/React.forwardRef(function Banner({
'aria-label': label,
'aria-labelledby': labelledBy,
children,
className,
description,
hideTitle,
icon,
leadingVisual,
onDismiss,
primaryAction,
secondaryAction,
title,
variant = 'info',
actionsLayout = 'default',
flush = false,
...rest
}, forwardRef) {
const dismissible = !!onDismiss;
const hasActions = primaryAction || secondaryAction;
const bannerRef = React.useRef(null);
const ref = useMergedRefs(forwardRef, bannerRef);
const supportsCustomIcon = variant === 'info' || variant === 'upsell';
const titleId = useId();
const visual = leadingVisual !== null && leadingVisual !== void 0 ? leadingVisual : icon;
if (process.env.NODE_ENV !== "production") {
// This hook is called consistently depending on the environment
// eslint-disable-next-line react-hooks/rules-of-hooks
useEffect(() => {
if (title) {
return;
}
const {
current: banner
} = bannerRef;
if (!banner) {
return;
}
const hasTitle = banner.querySelector('[data-banner-title]');
if (!hasTitle) {
throw new Error('Expected a title to be provided to the component with the title prop or through <Banner.Title> but no title was found');
}
}, [title]);
}
return /#PURE/jsx(BannerContext.Provider, {
value: {
titleId
},
children: /#PURE/jsxs("section", {
...rest,
"aria-labelledby": labelledBy !== null && labelledBy !== void 0 ? labelledBy : label ? undefined : titleId,
"aria-label": labelledBy ? undefined : label,
className: clsx(className, classes.Banner),
"data-dismissible": onDismiss ? '' : undefined,
"data-title-hidden": hideTitle ? '' : undefined,
"data-variant": variant,
"data-actions-layout": actionsLayout,
tabIndex: -1,
ref: ref,
"data-layout": rest.layout || 'default',
"data-flush": flush ? '' : undefined,
children: [/#PURE/jsx("div", {
className: classes.BannerIcon,
children: visual && supportsCustomIcon ? visual : iconForVariant[variant]
}), /#PURE/jsxs("div", {
className: classes.BannerContainer,
children: [/#PURE/jsxs("div", {
className: classes.BannerContent,
children: [title ? hideTitle ? /#PURE/jsx(VisuallyHidden, {
children: /#PURE/jsx(BannerTitle, {
children: title
})
}) : /#PURE/jsx(BannerTitle, {
children: title
}) : null, description ? /#PURE/jsx(BannerDescription, {
children: description
}) : null, children]
}), hasActions ? /#PURE/jsx(BannerActions, {
primaryAction: primaryAction,
secondaryAction: secondaryAction
}) : null]
}), dismissible ? /#PURE/jsx(IconButton, {
"aria-label": "Dismiss banner",
onClick: onDismiss,
className: classes.BannerDismiss,
icon: XIcon,
variant: "invisible"
}) : null]
})
});
});
function BannerTitle(props) {
var _id;
const $ = c(14);
let children;
let className;
let id;
let rest;
let t0;
if (
export { Banner, BannerActions, BannerDescription, BannerPrimaryAction, BannerSecondaryAction, BannerTitle };
import './Banner-f672cdf9.css';
var classes = {"Banner":"prc-Banner-Banner-IPLJ2","BannerContainer":"prc-Banner-BannerContainer-T-Siu","BannerActions":"prc-Banner-BannerActions-gvCLf","BannerContent":"prc-Banner-BannerContent-LraS2","BannerTitle":"prc-Banner-BannerTitle-T4z0L","BannerIcon":"prc-Banner-BannerIcon-o4ayx","BannerDismiss":"prc-Banner-BannerDismiss-b12FL","BannerActionsContainer":"prc-Banner-BannerActionsContainer-PdBu1"};
export { classes as default };
import { c } from 'react-compiler-runtime'; import { clsx } from 'clsx'; import classes from './BaseStyles.module.css.js'; import 'focus-visible'; import { jsx } from 'react/jsx-runtime';
function BaseStyles(t0) {
const $ = c(20);
let children;
let className;
let color;
let rest;
let style;
let t1;
if (
export { BaseStyles as default };
import './BaseStyles-7e59cc50.css';
var classes = {"BaseStyles":"prc-src-BaseStyles-aopSS"};
export { classes as default };
import { c } from 'react-compiler-runtime'; import { clsx } from 'clsx'; import 'react'; import { useBlankslate, Provider } from './BlankslateContext.js'; import classes from './Blankslate.module.css.js'; import { jsx } from 'react/jsx-runtime'; import { ButtonComponent } from '../Button/Button.js'; import Link from '../Link/Link.js';
function Blankslate(t0) {
const $ = c(25);
let border;
let children;
let className;
let narrow;
let rest;
let spacious;
let t1;
if (
export { Blankslate, Description, Heading, PrimaryAction, SecondaryAction, Visual };
import './Blankslate-a039d79a.css';
var classes = {"Container":"prc-Blankslate-Container-Vr9Ce","Blankslate":"prc-Blankslate-Blankslate-Eihy3","Description":"prc-Blankslate-Description-nqiRV","Heading":"prc-Blankslate-Heading-tVZsq","Visual":"prc-Blankslate-Visual-10aPl","Action":"prc-Blankslate-Action-RsgHG"};
export { classes as default };
import { useContext, createContext } from 'react';
const BlankslateContext = /#PURE/createContext(null); function useBlankslate() { const context = useContext(BlankslateContext); if (!context) { throw new Error("useBlankslate must be used within a BlankslateProvider"); } return context; } const Provider = BlankslateContext.Provider;
export { Provider, useBlankslate };
import { c } from 'react-compiler-runtime'; import { clsx } from 'clsx'; import 'react'; import { useBlankslate, Provider } from './BlankslateContext.js'; import classes from './Blankslate.module.css.js'; import { jsx } from 'react/jsx-runtime'; import { ButtonComponent } from '../Button/Button.js'; import Link from '../Link/Link.js';
function Blankslate(t0) {
const $ = c(25);
let border;
let children;
let className;
let narrow;
let rest;
let spacious;
let t1;
if (
export { Blankslate, Description, Heading, PrimaryAction, SecondaryAction, Visual };
import './Blankslate-a039d79a.css';
var classes = {"Container":"prc-Blankslate-Container-Vr9Ce","Blankslate":"prc-Blankslate-Blankslate-Eihy3","Description":"prc-Blankslate-Description-nqiRV","Heading":"prc-Blankslate-Heading-tVZsq","Visual":"prc-Blankslate-Visual-10aPl","Action":"prc-Blankslate-Action-RsgHG"};
export { classes as default };
import { useContext, createContext } from 'react';
const BlankslateContext = /#PURE/createContext(null); function useBlankslate() { const context = useContext(BlankslateContext); if (!context) { throw new Error("useBlankslate must be used within a BlankslateProvider"); } return context; } const Provider = BlankslateContext.Provider;
export { Provider, useBlankslate };
import styled from 'styled-components'; import { space, color, typography, layout, flexbox, grid, background, border, position, shadow } from 'styled-system'; import { sx } from '../sx.js';
/**
- @deprecated The Box component is deprecated. Replace with a
divor - appropriate HTML element instead, with CSS modules for styling.
- @see https://github.com/primer/react/blob/main/contributor-docs/migration-from-box.md */ const Box = styled.div.withConfig({ displayName: "Box", componentId: "sc-62in7e-0" })(space, color, typography, layout, flexbox, grid, background, border, position, shadow, sx);
export { Box };
import { c } from 'react-compiler-runtime'; import { clsx } from 'clsx'; import React, { useRef, useCallback, useState, useMemo, useEffect } from 'react'; import classes from './Breadcrumbs.module.css.js'; import { ActionList } from '../ActionList/index.js'; import { IconButton } from '../Button/IconButton.js'; import { KebabHorizontalIcon } from '@primer/octicons-react'; import { useResizeObserver } from '../hooks/useResizeObserver.js'; import { useOnEscapePress } from '../hooks/useOnEscapePress.js'; import { useOnOutsideClick } from '../hooks/useOnOutsideClick.js'; import { jsx, jsxs } from 'react/jsx-runtime'; import { useFeatureFlag } from '../FeatureFlags/useFeatureFlag.js'; import Details from '../Details/Details.js';
const BreadcrumbsList = t0 => {
const $ = c(2);
const {
children
} = t0;
let t1;
if ($[0] !== children) {
t1 = /#PURE/jsx("ol", {
className: classes.BreadcrumbsList,
children: children
});
${items.length} more breadcrumb items;
const t9 = isOpen ? "true" : "false";
let t10;
if (
// eslint-disable-next-line @typescript-eslint/no-explicit-any const [visibleItems, setVisibleItems] = useState(() => childArray); const [childArrayWidths, setChildArrayWidths] = useState(() => []);
// eslint-disable-next-line @typescript-eslint/no-explicit-any
const [menuItems, setMenuItems] = useState([]);
const [rootItemWidth, setRootItemWidth] = useState(0);
const MENU_BUTTON_FALLBACK_WIDTH = 32; // Design system small IconButton
const [menuButtonWidth, setMenuButtonWidth] = useState(MENU_BUTTON_FALLBACK_WIDTH);
useEffect(() => {
var _containerRef$current;
const listElement = (_containerRef$current = containerRef.current) === null || _containerRef$current === void 0 ? void 0 : _containerRef$current.querySelector('ol');
if (overflowMenuEnabled && listElement && listElement.children.length > 0 && listElement.children.length === childArray.length) {
const listElementArray = Array.from(listElement.children);
const widths = listElementArray.map(child_0 => child_0.offsetWidth);
setChildArrayWidths(widths);
setRootItemWidth(listElementArray[0].offsetWidth);
}
}, [childArray, overflowMenuEnabled]);
const calculateOverflow = useCallback(availableWidth => {
let eHideRoot = effectiveHideRoot;
const MENU_BUTTON_WIDTH = menuButtonWidth;
const MIN_VISIBLE_ITEMS = !eHideRoot ? 3 : 4;
const calculateVisibleItemsWidth = w => {
const widths_0 = w.reduce((sum, width) => sum + width + 16, 0);
return !eHideRoot ? rootItemWidth + widths_0 : widths_0;
};
let currentVisibleItems = [...childArray];
let currentVisibleItemWidths = [...childArrayWidths];
// eslint-disable-next-line @typescript-eslint/no-explicit-any
let currentMenuItems = [];
let currentMenuItemsWidths = [];
if (availableWidth > 0 && currentVisibleItemWidths.length > 0) {
let visibleItemsWidthTotal = calculateVisibleItemsWidth(currentVisibleItemWidths);
if (currentMenuItems.length > 0) {
visibleItemsWidthTotal += MENU_BUTTON_WIDTH;
}
while ((overflow === 'menu' || overflow === 'menu-with-root') && (visibleItemsWidthTotal > availableWidth || currentVisibleItems.length > MIN_VISIBLE_ITEMS)) {
const itemToHide = currentVisibleItems[0];
const itemToHideWidth = currentVisibleItemWidths[0];
currentMenuItems = [...currentMenuItems, itemToHide];
currentMenuItemsWidths = [...currentMenuItemsWidths, itemToHideWidth];
currentVisibleItems = currentVisibleItems.slice(1);
currentVisibleItemWidths = currentVisibleItemWidths.slice(1);
visibleItemsWidthTotal = calculateVisibleItemsWidth(currentVisibleItemWidths);
if (currentMenuItems.length > 0) {
visibleItemsWidthTotal += MENU_BUTTON_WIDTH;
}
if (currentVisibleItems.length === 1 && visibleItemsWidthTotal > availableWidth) {
eHideRoot = true;
break;
} else {
eHideRoot = hideRoot;
}
}
}
return {
visibleItems: currentVisibleItems,
menuItems: currentMenuItems,
effectiveHideRoot: eHideRoot
};
}, [childArray, childArrayWidths, effectiveHideRoot, hideRoot, overflow, rootItemWidth, menuButtonWidth]);
const handleResize = useCallback(entries => {
if (overflowMenuEnabled && entries[0]) {
const containerWidth = entries[0].contentRect.width;
const result = calculateOverflow(containerWidth);
if (visibleItems.length !== result.visibleItems.length && menuItems.length !== result.menuItems.length || result.effectiveHideRoot !== effectiveHideRoot) {
setVisibleItems(result.visibleItems);
setMenuItems(result.menuItems);
setEffectiveHideRoot(result.effectiveHideRoot);
}
}
}, [calculateOverflow, effectiveHideRoot, menuItems.length, overflowMenuEnabled, visibleItems.length]);
useResizeObserver(handleResize, containerRef);
useEffect(() => {
if (overflowMenuEnabled && (overflow === 'menu' || overflow === 'menu-with-root') && childArray.length > 5 && menuItems.length === 0) {
var _containerRef$current2;
const containerWidth_0 = ((_containerRef$current2 = containerRef.current) === null || _containerRef$current2 === void 0 ? void 0 : _containerRef$current2.offsetWidth) || 800;
const result_0 = calculateOverflow(containerWidth_0);
setVisibleItems(result_0.visibleItems);
setMenuItems(result_0.menuItems);
setEffectiveHideRoot(result_0.effectiveHideRoot);
}
}, [overflow, childArray, calculateOverflow, menuItems.length, overflowMenuEnabled]);
const finalChildren = React.useMemo(() => {
if (overflowMenuEnabled) {
if (overflow === 'wrap' || menuItems.length === 0) {
return React.Children.map(children, child_1 => /#PURE/jsx("li", {
className: classes.ItemWrapper,
children: child_1
}));
}
let effectiveMenuItems = [...menuItems];
// In 'menu-with-root' mode, include the root item inside the menu even if it's visible in the breadcrumbs
if (!effectiveHideRoot) {
effectiveMenuItems = [...menuItems.slice(1)];
}
const menuElement = /#PURE/jsxs("li", {
className: classes.BreadcrumbsItem,
children: [/#PURE/jsx(BreadcrumbsMenuItem, {
ref: measureMenuButton,
items: effectiveMenuItems,
"aria-label": ${effectiveMenuItems.length} more breadcrumb items
}), /#PURE/jsx(ItemSeparator, {})]
}, "breadcrumbs-menu");
const visibleElements = visibleItems.map((child_2, index) => /#PURE/jsxs("li", {
className: classes.BreadcrumbsItem,
children: [child_2, /#PURE/jsx(ItemSeparator, {})]
}, visible + ${index}));
const rootElement = /#PURE/jsxs("li", {
className: classes.BreadcrumbsItem,
children: [rootItem, /#PURE/jsx(ItemSeparator, {})]
}, rootElement);
if (effectiveHideRoot) {
// Show: [overflow menu, leaf breadcrumb]
return [menuElement, ...visibleElements];
} else {
// Show: [root breadcrumb, overflow menu, leaf breadcrumb]
return [rootElement, menuElement, ...visibleElements];
}
}
}, [overflowMenuEnabled, overflow, menuItems, effectiveHideRoot, measureMenuButton, visibleItems, rootItem, children]);
return overflowMenuEnabled ? /#PURE/jsx("nav", {
className: clsx(className, classes.BreadcrumbsBase),
"aria-label": "Breadcrumbs",
style: style,
ref: containerRef,
"data-overflow": overflow,
"data-variant": variant,
children: /#PURE/jsx(BreadcrumbsList, {
children: finalChildren
})
}) : /#PURE/jsx("nav", {
className: clsx(className, classes.BreadcrumbsBase),
"aria-label": "Breadcrumbs",
style: style,
"data-variant": variant,
children: /#PURE/jsx(BreadcrumbsList, {
children: wrappedChildren
})
});
}
const ItemSeparator = () => {
const $ = c(1);
let t0;
if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
t0 = /#PURE/jsx("span", {
className: classes.ItemSeparator,
children: /#PURE/jsx("svg", {
width: "16",
height: "16",
viewBox: "0 0 16 16",
xmlns: "http://www.w3.org/2000/svg",
"aria-hidden": "true",
children: /#PURE/jsx("path", {
d: "M10.956 1.27994L6.06418 14.7201L5 14.7201L9.89181 1.27994L10.956 1.27994Z",
fill: "currentcolor"
})
})
});
// eslint-disable-next-line @typescript-eslint/no-explicit-any
function BreadcrumbsItemComponent(props, ref) {
const $ = c(14);
let className;
let rest;
let selected;
let t0;
if ($[0] !== props) {
({
as: t0,
selected,
className,
...rest
} = props);
$[0] = props;
/**
- @deprecated Use the
Breadcrumbscomponent instead (i.e.<Breadcrumb>→<Breadcrumbs>) */ const Breadcrumb = Object.assign(Breadcrumbs, { Item: BreadcrumbsItem });
/**
- @deprecated Use the
BreadcrumbsPropstype instead */
/**
- @deprecated Use the
BreadcrumbsItemPropstype instead / function _temp(item, index) { const href = item.props.href; const children = item.props.children; const selected = item.props.selected; return /#PURE*/jsx(ActionList.LinkItem, { href: href, "aria-current": selected ? "page" : undefined, className: classes.MenuItem, children: children }, index); } _temp.displayName = "_temp";
export { Breadcrumb, Breadcrumbs_default as default };
import './Breadcrumbs-dbfc9d95.css';
var classes = {"BreadcrumbsBase":"prc-Breadcrumbs-BreadcrumbsBase-3Gb-B","BreadcrumbsList":"prc-Breadcrumbs-BreadcrumbsList-BKjpe","ItemSeparator":"prc-Breadcrumbs-ItemSeparator-kjXqh","ItemWrapper":"prc-Breadcrumbs-ItemWrapper-k0NLn","Item":"prc-Breadcrumbs-Item-jcraJ","BreadcrumbsItem":"prc-Breadcrumbs-BreadcrumbsItem-L-Xrs","MenuOverlay":"prc-Breadcrumbs-MenuOverlay--ayLx","MenuDetails":"prc-Breadcrumbs-MenuDetails-JOGTj","overlay-appear":"prc-Breadcrumbs-overlay-appear-CSLnF"};
export { classes as default };
import { Breadcrumbs as Breadcrumbs$1 } from '@primer/react'; import { sx } from '../sx.js'; import styled from 'styled-components'; import { jsx } from 'react/jsx-runtime';
const BreadcrumbsImpl = styled(Breadcrumbs$1).withConfig({ shouldForwardProp: prop => prop !== 'sx' }).withConfig({ displayName: "Breadcrumbs__BreadcrumbsImpl", componentId: "sc-1qj8pw-0" })(["", ""], sx); const StyledBreadcrumbsItem = styled(Breadcrumbs$1.Item).withConfig({ shouldForwardProp: prop => prop !== 'sx' }).withConfig({ displayName: "Breadcrumbs__StyledBreadcrumbsItem", componentId: "sc-1qj8pw-1" })(["", ""], sx); function BreadcrumbsItem({ as, ...props }) { return /#PURE/jsx(StyledBreadcrumbsItem, { ...props, ...(as ? { forwardedAs: as } : {}) }); } const Breadcrumbs = Object.assign(BreadcrumbsImpl, { Item: BreadcrumbsItem });
/**
- @deprecated Use the
Breadcrumbscomponent instead (i.e.<Breadcrumb>→<Breadcrumbs>) */ const Breadcrumb = Breadcrumbs;
export { Breadcrumb, Breadcrumbs };
import { c } from 'react-compiler-runtime'; import { clsx } from 'clsx'; import React, { useRef, useCallback, useState, useMemo, useEffect } from 'react'; import classes from './Breadcrumbs.module.css.js'; import { ActionList } from '../ActionList/index.js'; import { IconButton } from '../Button/IconButton.js'; import { KebabHorizontalIcon } from '@primer/octicons-react'; import { useResizeObserver } from '../hooks/useResizeObserver.js'; import { useOnEscapePress } from '../hooks/useOnEscapePress.js'; import { useOnOutsideClick } from '../hooks/useOnOutsideClick.js'; import { jsx, jsxs } from 'react/jsx-runtime'; import { useFeatureFlag } from '../FeatureFlags/useFeatureFlag.js'; import Details from '../Details/Details.js';
const BreadcrumbsList = t0 => {
const $ = c(2);
const {
children
} = t0;
let t1;
if ($[0] !== children) {
t1 = /#PURE/jsx("ol", {
className: classes.BreadcrumbsList,
children: children
});
${items.length} more breadcrumb items;
const t9 = isOpen ? "true" : "false";
let t10;
if (
// eslint-disable-next-line @typescript-eslint/no-explicit-any const [visibleItems, setVisibleItems] = useState(() => childArray); const [childArrayWidths, setChildArrayWidths] = useState(() => []);
// eslint-disable-next-line @typescript-eslint/no-explicit-any
const [menuItems, setMenuItems] = useState([]);
const [rootItemWidth, setRootItemWidth] = useState(0);
const MENU_BUTTON_FALLBACK_WIDTH = 32; // Design system small IconButton
const [menuButtonWidth, setMenuButtonWidth] = useState(MENU_BUTTON_FALLBACK_WIDTH);
useEffect(() => {
var _containerRef$current;
const listElement = (_containerRef$current = containerRef.current) === null || _containerRef$current === void 0 ? void 0 : _containerRef$current.querySelector('ol');
if (overflowMenuEnabled && listElement && listElement.children.length > 0 && listElement.children.length === childArray.length) {
const listElementArray = Array.from(listElement.children);
const widths = listElementArray.map(child_0 => child_0.offsetWidth);
setChildArrayWidths(widths);
setRootItemWidth(listElementArray[0].offsetWidth);
}
}, [childArray, overflowMenuEnabled]);
const calculateOverflow = useCallback(availableWidth => {
let eHideRoot = effectiveHideRoot;
const MENU_BUTTON_WIDTH = menuButtonWidth;
const MIN_VISIBLE_ITEMS = !eHideRoot ? 3 : 4;
const calculateVisibleItemsWidth = w => {
const widths_0 = w.reduce((sum, width) => sum + width + 16, 0);
return !eHideRoot ? rootItemWidth + widths_0 : widths_0;
};
let currentVisibleItems = [...childArray];
let currentVisibleItemWidths = [...childArrayWidths];
// eslint-disable-next-line @typescript-eslint/no-explicit-any
let currentMenuItems = [];
let currentMenuItemsWidths = [];
if (availableWidth > 0 && currentVisibleItemWidths.length > 0) {
let visibleItemsWidthTotal = calculateVisibleItemsWidth(currentVisibleItemWidths);
if (currentMenuItems.length > 0) {
visibleItemsWidthTotal += MENU_BUTTON_WIDTH;
}
while ((overflow === 'menu' || overflow === 'menu-with-root') && (visibleItemsWidthTotal > availableWidth || currentVisibleItems.length > MIN_VISIBLE_ITEMS)) {
const itemToHide = currentVisibleItems[0];
const itemToHideWidth = currentVisibleItemWidths[0];
currentMenuItems = [...currentMenuItems, itemToHide];
currentMenuItemsWidths = [...currentMenuItemsWidths, itemToHideWidth];
currentVisibleItems = currentVisibleItems.slice(1);
currentVisibleItemWidths = currentVisibleItemWidths.slice(1);
visibleItemsWidthTotal = calculateVisibleItemsWidth(currentVisibleItemWidths);
if (currentMenuItems.length > 0) {
visibleItemsWidthTotal += MENU_BUTTON_WIDTH;
}
if (currentVisibleItems.length === 1 && visibleItemsWidthTotal > availableWidth) {
eHideRoot = true;
break;
} else {
eHideRoot = hideRoot;
}
}
}
return {
visibleItems: currentVisibleItems,
menuItems: currentMenuItems,
effectiveHideRoot: eHideRoot
};
}, [childArray, childArrayWidths, effectiveHideRoot, hideRoot, overflow, rootItemWidth, menuButtonWidth]);
const handleResize = useCallback(entries => {
if (overflowMenuEnabled && entries[0]) {
const containerWidth = entries[0].contentRect.width;
const result = calculateOverflow(containerWidth);
if (visibleItems.length !== result.visibleItems.length && menuItems.length !== result.menuItems.length || result.effectiveHideRoot !== effectiveHideRoot) {
setVisibleItems(result.visibleItems);
setMenuItems(result.menuItems);
setEffectiveHideRoot(result.effectiveHideRoot);
}
}
}, [calculateOverflow, effectiveHideRoot, menuItems.length, overflowMenuEnabled, visibleItems.length]);
useResizeObserver(handleResize, containerRef);
useEffect(() => {
if (overflowMenuEnabled && (overflow === 'menu' || overflow === 'menu-with-root') && childArray.length > 5 && menuItems.length === 0) {
var _containerRef$current2;
const containerWidth_0 = ((_containerRef$current2 = containerRef.current) === null || _containerRef$current2 === void 0 ? void 0 : _containerRef$current2.offsetWidth) || 800;
const result_0 = calculateOverflow(containerWidth_0);
setVisibleItems(result_0.visibleItems);
setMenuItems(result_0.menuItems);
setEffectiveHideRoot(result_0.effectiveHideRoot);
}
}, [overflow, childArray, calculateOverflow, menuItems.length, overflowMenuEnabled]);
const finalChildren = React.useMemo(() => {
if (overflowMenuEnabled) {
if (overflow === 'wrap' || menuItems.length === 0) {
return React.Children.map(children, child_1 => /#PURE/jsx("li", {
className: classes.ItemWrapper,
children: child_1
}));
}
let effectiveMenuItems = [...menuItems];
// In 'menu-with-root' mode, include the root item inside the menu even if it's visible in the breadcrumbs
if (!effectiveHideRoot) {
effectiveMenuItems = [...menuItems.slice(1)];
}
const menuElement = /#PURE/jsxs("li", {
className: classes.BreadcrumbsItem,
children: [/#PURE/jsx(BreadcrumbsMenuItem, {
ref: measureMenuButton,
items: effectiveMenuItems,
"aria-label": ${effectiveMenuItems.length} more breadcrumb items
}), /#PURE/jsx(ItemSeparator, {})]
}, "breadcrumbs-menu");
const visibleElements = visibleItems.map((child_2, index) => /#PURE/jsxs("li", {
className: classes.BreadcrumbsItem,
children: [child_2, /#PURE/jsx(ItemSeparator, {})]
}, visible + ${index}));
const rootElement = /#PURE/jsxs("li", {
className: classes.BreadcrumbsItem,
children: [rootItem, /#PURE/jsx(ItemSeparator, {})]
}, rootElement);
if (effectiveHideRoot) {
// Show: [overflow menu, leaf breadcrumb]
return [menuElement, ...visibleElements];
} else {
// Show: [root breadcrumb, overflow menu, leaf breadcrumb]
return [rootElement, menuElement, ...visibleElements];
}
}
}, [overflowMenuEnabled, overflow, menuItems, effectiveHideRoot, measureMenuButton, visibleItems, rootItem, children]);
return overflowMenuEnabled ? /#PURE/jsx("nav", {
className: clsx(className, classes.BreadcrumbsBase),
"aria-label": "Breadcrumbs",
style: style,
ref: containerRef,
"data-overflow": overflow,
"data-variant": variant,
children: /#PURE/jsx(BreadcrumbsList, {
children: finalChildren
})
}) : /#PURE/jsx("nav", {
className: clsx(className, classes.BreadcrumbsBase),
"aria-label": "Breadcrumbs",
style: style,
"data-variant": variant,
children: /#PURE/jsx(BreadcrumbsList, {
children: wrappedChildren
})
});
}
const ItemSeparator = () => {
const $ = c(1);
let t0;
if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
t0 = /#PURE/jsx("span", {
className: classes.ItemSeparator,
children: /#PURE/jsx("svg", {
width: "16",
height: "16",
viewBox: "0 0 16 16",
xmlns: "http://www.w3.org/2000/svg",
"aria-hidden": "true",
children: /#PURE/jsx("path", {
d: "M10.956 1.27994L6.06418 14.7201L5 14.7201L9.89181 1.27994L10.956 1.27994Z",
fill: "currentcolor"
})
})
});
// eslint-disable-next-line @typescript-eslint/no-explicit-any
function BreadcrumbsItemComponent(props, ref) {
const $ = c(14);
let className;
let rest;
let selected;
let t0;
if ($[0] !== props) {
({
as: t0,
selected,
className,
...rest
} = props);
$[0] = props;
/**
- @deprecated Use the
Breadcrumbscomponent instead (i.e.<Breadcrumb>→<Breadcrumbs>) */ const Breadcrumb = Object.assign(Breadcrumbs, { Item: BreadcrumbsItem });
/**
- @deprecated Use the
BreadcrumbsPropstype instead */
/**
- @deprecated Use the
BreadcrumbsItemPropstype instead / function _temp(item, index) { const href = item.props.href; const children = item.props.children; const selected = item.props.selected; return /#PURE*/jsx(ActionList.LinkItem, { href: href, "aria-current": selected ? "page" : undefined, className: classes.MenuItem, children: children }, index); } _temp.displayName = "_temp";
export { Breadcrumb, Breadcrumbs_default as default };
import { c } from 'react-compiler-runtime'; import { clsx } from 'clsx'; import classes from './BranchName.module.css.js'; import { fixedForwardRef } from '../utils/modern-polymorphic.js'; import { jsx } from 'react/jsx-runtime';
// eslint-disable-next-line @typescript-eslint/no-explicit-any
function BranchName(props, ref) {
const $ = c(13);
let children;
let className;
let rest;
let t0;
if (
export { BranchName_default as default };
import './BranchName-2fad4f4b.css';
var classes = {"BranchName":"prc-BranchName-BranchName-CMTaU"};
export { classes as default };
import { c } from 'react-compiler-runtime'; import { clsx } from 'clsx'; import React, { useRef, useCallback, useState, useMemo, useEffect } from 'react'; import classes from './Breadcrumbs.module.css.js'; import { ActionList } from '../ActionList/index.js'; import { IconButton } from '../Button/IconButton.js'; import { KebabHorizontalIcon } from '@primer/octicons-react'; import { useResizeObserver } from '../hooks/useResizeObserver.js'; import { useOnEscapePress } from '../hooks/useOnEscapePress.js'; import { useOnOutsideClick } from '../hooks/useOnOutsideClick.js'; import { jsx, jsxs } from 'react/jsx-runtime'; import { useFeatureFlag } from '../FeatureFlags/useFeatureFlag.js'; import Details from '../Details/Details.js';
const BreadcrumbsList = t0 => {
const $ = c(2);
const {
children
} = t0;
let t1;
if ($[0] !== children) {
t1 = /#PURE/jsx("ol", {
className: classes.BreadcrumbsList,
children: children
});
${items.length} more breadcrumb items;
const t9 = isOpen ? "true" : "false";
let t10;
if (
// eslint-disable-next-line @typescript-eslint/no-explicit-any const [visibleItems, setVisibleItems] = useState(() => childArray); const [childArrayWidths, setChildArrayWidths] = useState(() => []);
// eslint-disable-next-line @typescript-eslint/no-explicit-any
const [menuItems, setMenuItems] = useState([]);
const [rootItemWidth, setRootItemWidth] = useState(0);
const MENU_BUTTON_FALLBACK_WIDTH = 32; // Design system small IconButton
const [menuButtonWidth, setMenuButtonWidth] = useState(MENU_BUTTON_FALLBACK_WIDTH);
useEffect(() => {
var _containerRef$current;
const listElement = (_containerRef$current = containerRef.current) === null || _containerRef$current === void 0 ? void 0 : _containerRef$current.querySelector('ol');
if (overflowMenuEnabled && listElement && listElement.children.length > 0 && listElement.children.length === childArray.length) {
const listElementArray = Array.from(listElement.children);
const widths = listElementArray.map(child_0 => child_0.offsetWidth);
setChildArrayWidths(widths);
setRootItemWidth(listElementArray[0].offsetWidth);
}
}, [childArray, overflowMenuEnabled]);
const calculateOverflow = useCallback(availableWidth => {
let eHideRoot = effectiveHideRoot;
const MENU_BUTTON_WIDTH = menuButtonWidth;
const MIN_VISIBLE_ITEMS = !eHideRoot ? 3 : 4;
const calculateVisibleItemsWidth = w => {
const widths_0 = w.reduce((sum, width) => sum + width + 16, 0);
return !eHideRoot ? rootItemWidth + widths_0 : widths_0;
};
let currentVisibleItems = [...childArray];
let currentVisibleItemWidths = [...childArrayWidths];
// eslint-disable-next-line @typescript-eslint/no-explicit-any
let currentMenuItems = [];
let currentMenuItemsWidths = [];
if (availableWidth > 0 && currentVisibleItemWidths.length > 0) {
let visibleItemsWidthTotal = calculateVisibleItemsWidth(currentVisibleItemWidths);
if (currentMenuItems.length > 0) {
visibleItemsWidthTotal += MENU_BUTTON_WIDTH;
}
while ((overflow === 'menu' || overflow === 'menu-with-root') && (visibleItemsWidthTotal > availableWidth || currentVisibleItems.length > MIN_VISIBLE_ITEMS)) {
const itemToHide = currentVisibleItems[0];
const itemToHideWidth = currentVisibleItemWidths[0];
currentMenuItems = [...currentMenuItems, itemToHide];
currentMenuItemsWidths = [...currentMenuItemsWidths, itemToHideWidth];
currentVisibleItems = currentVisibleItems.slice(1);
currentVisibleItemWidths = currentVisibleItemWidths.slice(1);
visibleItemsWidthTotal = calculateVisibleItemsWidth(currentVisibleItemWidths);
if (currentMenuItems.length > 0) {
visibleItemsWidthTotal += MENU_BUTTON_WIDTH;
}
if (currentVisibleItems.length === 1 && visibleItemsWidthTotal > availableWidth) {
eHideRoot = true;
break;
} else {
eHideRoot = hideRoot;
}
}
}
return {
visibleItems: currentVisibleItems,
menuItems: currentMenuItems,
effectiveHideRoot: eHideRoot
};
}, [childArray, childArrayWidths, effectiveHideRoot, hideRoot, overflow, rootItemWidth, menuButtonWidth]);
const handleResize = useCallback(entries => {
if (overflowMenuEnabled && entries[0]) {
const containerWidth = entries[0].contentRect.width;
const result = calculateOverflow(containerWidth);
if (visibleItems.length !== result.visibleItems.length && menuItems.length !== result.menuItems.length || result.effectiveHideRoot !== effectiveHideRoot) {
setVisibleItems(result.visibleItems);
setMenuItems(result.menuItems);
setEffectiveHideRoot(result.effectiveHideRoot);
}
}
}, [calculateOverflow, effectiveHideRoot, menuItems.length, overflowMenuEnabled, visibleItems.length]);
useResizeObserver(handleResize, containerRef);
useEffect(() => {
if (overflowMenuEnabled && (overflow === 'menu' || overflow === 'menu-with-root') && childArray.length > 5 && menuItems.length === 0) {
var _containerRef$current2;
const containerWidth_0 = ((_containerRef$current2 = containerRef.current) === null || _containerRef$current2 === void 0 ? void 0 : _containerRef$current2.offsetWidth) || 800;
const result_0 = calculateOverflow(containerWidth_0);
setVisibleItems(result_0.visibleItems);
setMenuItems(result_0.menuItems);
setEffectiveHideRoot(result_0.effectiveHideRoot);
}
}, [overflow, childArray, calculateOverflow, menuItems.length, overflowMenuEnabled]);
const finalChildren = React.useMemo(() => {
if (overflowMenuEnabled) {
if (overflow === 'wrap' || menuItems.length === 0) {
return React.Children.map(children, child_1 => /#PURE/jsx("li", {
className: classes.ItemWrapper,
children: child_1
}));
}
let effectiveMenuItems = [...menuItems];
// In 'menu-with-root' mode, include the root item inside the menu even if it's visible in the breadcrumbs
if (!effectiveHideRoot) {
effectiveMenuItems = [...menuItems.slice(1)];
}
const menuElement = /#PURE/jsxs("li", {
className: classes.BreadcrumbsItem,
children: [/#PURE/jsx(BreadcrumbsMenuItem, {
ref: measureMenuButton,
items: effectiveMenuItems,
"aria-label": ${effectiveMenuItems.length} more breadcrumb items
}), /#PURE/jsx(ItemSeparator, {})]
}, "breadcrumbs-menu");
const visibleElements = visibleItems.map((child_2, index) => /#PURE/jsxs("li", {
className: classes.BreadcrumbsItem,
children: [child_2, /#PURE/jsx(ItemSeparator, {})]
}, visible + ${index}));
const rootElement = /#PURE/jsxs("li", {
className: classes.BreadcrumbsItem,
children: [rootItem, /#PURE/jsx(ItemSeparator, {})]
}, rootElement);
if (effectiveHideRoot) {
// Show: [overflow menu, leaf breadcrumb]
return [menuElement, ...visibleElements];
} else {
// Show: [root breadcrumb, overflow menu, leaf breadcrumb]
return [rootElement, menuElement, ...visibleElements];
}
}
}, [overflowMenuEnabled, overflow, menuItems, effectiveHideRoot, measureMenuButton, visibleItems, rootItem, children]);
return overflowMenuEnabled ? /#PURE/jsx("nav", {
className: clsx(className, classes.BreadcrumbsBase),
"aria-label": "Breadcrumbs",
style: style,
ref: containerRef,
"data-overflow": overflow,
"data-variant": variant,
children: /#PURE/jsx(BreadcrumbsList, {
children: finalChildren
})
}) : /#PURE/jsx("nav", {
className: clsx(className, classes.BreadcrumbsBase),
"aria-label": "Breadcrumbs",
style: style,
"data-variant": variant,
children: /#PURE/jsx(BreadcrumbsList, {
children: wrappedChildren
})
});
}
const ItemSeparator = () => {
const $ = c(1);
let t0;
if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
t0 = /#PURE/jsx("span", {
className: classes.ItemSeparator,
children: /#PURE/jsx("svg", {
width: "16",
height: "16",
viewBox: "0 0 16 16",
xmlns: "http://www.w3.org/2000/svg",
"aria-hidden": "true",
children: /#PURE/jsx("path", {
d: "M10.956 1.27994L6.06418 14.7201L5 14.7201L9.89181 1.27994L10.956 1.27994Z",
fill: "currentcolor"
})
})
});
// eslint-disable-next-line @typescript-eslint/no-explicit-any
function BreadcrumbsItemComponent(props, ref) {
const $ = c(14);
let className;
let rest;
let selected;
let t0;
if ($[0] !== props) {
({
as: t0,
selected,
className,
...rest
} = props);
$[0] = props;
/**
- @deprecated Use the
Breadcrumbscomponent instead (i.e.<Breadcrumb>→<Breadcrumbs>) */ const Breadcrumb = Object.assign(Breadcrumbs, { Item: BreadcrumbsItem });
/**
- @deprecated Use the
BreadcrumbsPropstype instead */
/**
- @deprecated Use the
BreadcrumbsItemPropstype instead / function _temp(item, index) { const href = item.props.href; const children = item.props.children; const selected = item.props.selected; return /#PURE*/jsx(ActionList.LinkItem, { href: href, "aria-current": selected ? "page" : undefined, className: classes.MenuItem, children: children }, index); } _temp.displayName = "_temp";
export { Breadcrumb, Breadcrumbs_default as default };
import './Breadcrumbs-dbfc9d95.css';
var classes = {"BreadcrumbsBase":"prc-Breadcrumbs-BreadcrumbsBase-3Gb-B","BreadcrumbsList":"prc-Breadcrumbs-BreadcrumbsList-BKjpe","ItemSeparator":"prc-Breadcrumbs-ItemSeparator-kjXqh","ItemWrapper":"prc-Breadcrumbs-ItemWrapper-k0NLn","Item":"prc-Breadcrumbs-Item-jcraJ","BreadcrumbsItem":"prc-Breadcrumbs-BreadcrumbsItem-L-Xrs","MenuOverlay":"prc-Breadcrumbs-MenuOverlay--ayLx","MenuDetails":"prc-Breadcrumbs-MenuDetails-JOGTj","overlay-appear":"prc-Breadcrumbs-overlay-appear-CSLnF"};
export { classes as default };
import { c } from 'react-compiler-runtime'; import { forwardRef } from 'react'; import { ButtonBase } from './ButtonBase.js'; import { jsx } from 'react/jsx-runtime';
const ButtonComponent = /#PURE/forwardRef((t0, forwardedRef) => {
const $ = c(7);
let children;
let props;
if (
export { ButtonComponent };
import { Button } from '@primer/react'; import { forwardRef } from 'react'; import styled from 'styled-components'; import { sx } from '../sx.js'; import { jsx } from 'react/jsx-runtime';
const StyledButtonComponent = styled(Button).withConfig({ shouldForwardProp: prop => prop !== 'sx' }).withConfig({ displayName: "Button__StyledButtonComponent", componentId: "sc-vqy3e4-0" })(["", ""], sx); const ButtonComponent = /#PURE/forwardRef(({ as, sx, style: propStyle, ...props }, ref) => { const { block, size = 'medium', leadingVisual, trailingVisual, trailingAction } = props; let sxStyles = {}; const style = { ...(propStyle || {}) }; if (sx !== null && Object.keys(sx || {}).length > 0) { sxStyles = generateCustomSxProp({ block, size, leadingVisual, trailingVisual, trailingAction }, sx); const { color } = sx; if (color) style['--button-color'] = color; } return /#PURE/jsx(StyledButtonComponent, { style: style, sx: sxStyles, ref: ref, ...props, ...(as ? { forwardedAs: as } : {}) }); });
// This function is used to generate a custom cssSelector for the sxProp
// The usual sx prop can like this:
// sx={{
// [@media (max-width: 768px)]: {
// '& > ul': {
// backgroundColor: 'deeppink',
// },
// '&:hover': {
// backgroundColor: 'yellow',
// },
// },
// '&:hover': {
// backgroundColor: 'yellow',
// },
// '&': {
// width : 320px
// }
// }}
//*
/* What we want for Button styles is this:
sx={{
// [@media (max-width: 768px)]: {
// '&[data-attribute="something"] > ul': {
// backgroundColor: 'deeppink',
// },
// '&[data-attribute="something"]:hover': {
// backgroundColor: 'yellow',
// },
// },
// '&[data-attribute="something"]:hover': {
// backgroundColor: 'yellow',
// },
// '&[data-attribute="something"]': {
// width : 320px
// }
// }}
// We need to make sure we append the customCSSSelector to the original class selector. i.e & - > &[data-attribute="Icon"][data-size="small"]
*/
function generateCustomSxProp(props, providedSx) {
// Possible data attributes: data-size, data-block, data-no-visuals
const size = [data-size="${props.size}"];
const block = props.block ? [data-block="block"] : '';
const noVisuals = props.leadingVisual || props.trailingVisual || props.trailingAction ? '' : '[data-no-visuals]';
// this is a custom selector. We need to make sure we add the data attributes to the base css class (& -> &[data-attributename="value"]])
const cssSelector = &${size}${block}${noVisuals}; // &[data-size="small"][data-block="block"][data-no-visuals]
const customSxProp = {}; if (!providedSx) return customSxProp;else { customSxProp[cssSelector] = providedSx; return customSxProp; } } ButtonComponent.displayName = 'Button'; ButtonComponent.SLOT = Button.SLOT;
export { ButtonComponent, generateCustomSxProp };
import { c } from 'react-compiler-runtime'; import { forwardRef } from 'react'; import { ButtonBase } from './ButtonBase.js'; import { jsx } from 'react/jsx-runtime';
const ButtonComponent = /#PURE/forwardRef((t0, forwardedRef) => {
const $ = c(7);
let children;
let props;
if (
export { ButtonComponent };
import React, { forwardRef } from 'react'; import { useRefObjectAsForwardedRef } from '../hooks/useRefObjectAsForwardedRef.js'; import { ConditionalWrapper } from '../internal/components/ConditionalWrapper.js'; import { clsx } from 'clsx'; import classes from './ButtonBase.module.css.js'; import { isElement } from 'react-is'; import { jsxs, jsx, Fragment } from 'react/jsx-runtime'; import { useId } from '../hooks/useId.js'; import Spinner from '../Spinner/Spinner.js'; import { VisuallyHidden } from '../VisuallyHidden/VisuallyHidden.js'; import { AriaStatus } from '../live-region/AriaStatus.js'; import CounterLabel from '../CounterLabel/CounterLabel.js';
const renderModuleVisual = (Visual, loading, visualName, counterLabel) => /#PURE/jsx("span", {
"data-component": visualName,
className: clsx(!counterLabel && classes.Visual, loading ? classes.LoadingSpinner : classes.VisualWrap),
children: loading ? /#PURE/jsx(Spinner, {
size: "small"
}) : isElement(Visual) ? Visual : /#PURE/jsx(Visual, {})
});
renderModuleVisual.displayName = "renderModuleVisual";
const ButtonBase = /#PURE/forwardRef(({
children,
as: Component = 'button',
...props
}, forwardedRef) => {
const {
leadingVisual: LeadingVisual,
trailingVisual: TrailingVisual,
trailingAction: TrailingAction,
['aria-describedby']: ariaDescribedBy,
['aria-labelledby']: ariaLabelledBy,
count,
icon: Icon,
id,
variant = 'default',
size = 'medium',
alignContent = 'center',
block = false,
loading,
loadingAnnouncement = 'Loading',
inactive,
onClick,
labelWrap,
className,
...rest
} = props;
const innerRef = React.useRef(null);
useRefObjectAsForwardedRef(forwardedRef, innerRef);
const uuid = useId(id);
const loadingAnnouncementID = ${uuid}-loading-announcement;
// Only include the loading aria-describedby if there is a loading state
const ariaDescribedByIds = loading ? [loadingAnnouncementID, ariaDescribedBy] : [ariaDescribedBy];
if (process.env.NODE_ENV !== "production") {
// Validate that the element is a semantic button/anchor.
// This runs during render (not in an effect) to avoid a conditional hook call
// that prevents React Compiler from optimizing this component.
const el = innerRef.current;
if (el && !(el instanceof HTMLButtonElement) && !(el instanceof HTMLAnchorElement) && !(el.tagName === 'SUMMARY')) {
// eslint-disable-next-line no-console
console.warn('This component should be an instanceof a semantic button or anchor');
}
}
return /#PURE/jsxs(ConditionalWrapper
// If anything is passed to loading, we need the wrapper:
// If we just checked for loading as a boolean, the wrapper wouldn't be rendered
// when loading is false.
// Then, the component re-renders in a way that the button will lose focus when switching between loading states.
, {
if: typeof loading !== 'undefined',
className: block ? classes.ConditionalWrapper : undefined,
"data-loading-wrapper": true,
children: [/#PURE/jsx(Component, {
"aria-disabled": loading ? true : undefined,
...rest,
// @ts-ignore temporary disable as we migrate to css modules, until we remove PolymorphicForwardRefComponent
ref: innerRef,
className: clsx(classes.ButtonBase, className),
"data-block": block ? 'block' : null,
"data-inactive": inactive ? true : undefined,
"data-loading": Boolean(loading),
"data-no-visuals": !LeadingVisual && !TrailingVisual && !TrailingAction ? true : undefined,
"data-size": size,
"data-variant": variant,
"data-label-wrap": labelWrap,
"data-has-count": count !== undefined ? true : undefined,
"aria-describedby": ariaDescribedByIds.filter(descriptionID => Boolean(descriptionID)).join(' ') || undefined
// aria-labelledby is needed because the accessible name becomes unset when the button is in a loading state.
// We only set it when the button is in a loading state because it will supersede the aria-label when the screen
// reader announces the button name.
,
"aria-labelledby": loading ? [${uuid}-label, ariaLabelledBy].filter(labelID => Boolean(labelID)).join(' ') : ariaLabelledBy,
id: id
// @ts-ignore temporary disable as we migrate to css modules, until we remove PolymorphicForwardRefComponent
,
onClick: loading ? undefined : onClick,
children: Icon ? loading ? /#PURE/jsx(Spinner, {
size: "small"
}) : isElement(Icon) ? Icon : /#PURE/jsx(Icon, {}) : /#PURE/jsxs(Fragment, {
children: [/#PURE/jsxs("span", {
"data-component": "buttonContent",
"data-align": alignContent,
className: classes.ButtonContent,
children: [
/* If there are no leading/trailing visuals/actions to replace with a loading spinner,
render a loading spiner in place of the button content. /
loading && !LeadingVisual && !TrailingVisual && !TrailingAction && count === undefined && renderModuleVisual(Spinner, loading, 'loadingSpinner', false),
/ Render a leading visual unless the button is in a loading state.
Then replace the leading visual with a loading spinner. /
LeadingVisual && renderModuleVisual(LeadingVisual, Boolean(loading), 'leadingVisual', false), children && /#PURE/jsx("span", {
"data-component": "text",
className: classes.Label,
id: loading ? ${uuid}-label : undefined,
children: children
}),
/ If there is a count, render a counter label unless there is a trailing visual.
Then render the counter label as a trailing visual.
Replace the counter label or the trailing visual with a loading spinner if:
- the button is in a loading state
- there is no leading visual to replace with a loading spinner
/
count !== undefined && !TrailingVisual ? renderModuleVisual(/#PURE/jsx(CounterLabel, {
className: classes.CounterLabel,
"data-component": "ButtonCounter",
children: count
}), Boolean(loading) && !LeadingVisual, 'trailingVisual', true) : TrailingVisual ? renderModuleVisual(TrailingVisual, Boolean(loading) && !LeadingVisual, 'trailingVisual', false) : null]
}),
/ If there is a trailing action, render it unless the button is in a loading state
and there is no leading or trailing visual to replace with a loading spinner. /
TrailingAction && renderModuleVisual(TrailingAction, Boolean(loading) && !LeadingVisual && !TrailingVisual, 'trailingAction', false)]
})
}), loading && /#PURE/jsx(VisuallyHidden, {
children: /#PURE*/jsx(AriaStatus, {
id: loadingAnnouncementID,
children: loadingAnnouncement
})
})]
});
});
export { ButtonBase };
import './ButtonBase-781fba8b.css';
var classes = {"ButtonBase":"prc-Button-ButtonBase-9n-Xk","CounterLabel":"prc-Button-CounterLabel-5hAs4","Visual":"prc-Button-Visual-YNt2F","VisualWrap":"prc-Button-VisualWrap-E4cnq","IconButton":"prc-Button-IconButton-fyge7","ButtonContent":"prc-Button-ButtonContent-Iohp5","Label":"prc-Button-Label-FWkx3","LoadingSpinner":"prc-Button-LoadingSpinner-6KfaT","ConditionalWrapper":"prc-Button-ConditionalWrapper-Rvbgb"};
export { classes as default };
import { c } from 'react-compiler-runtime'; import React from 'react'; import classes from './ButtonGroup.module.css.js'; import { clsx } from 'clsx'; import { useFocusZone } from '../hooks/useFocusZone.js'; import { jsx } from 'react/jsx-runtime'; import { useProvidedRefOrCreate } from '../hooks/useProvidedRefOrCreate.js'; import { FocusKeys } from '@primer/behaviors';
const ButtonGroup = /#PURE/React.forwardRef(function ButtonGroup(t0, forwardRef) {
const $ = c(20);
let children;
let className;
let rest;
let role;
let t1;
if (
export { ButtonGroup as default };
import './ButtonGroup-10292330.css';
var classes = {"ButtonGroup":"prc-ButtonGroup-ButtonGroup-vFUrY"};
export { classes as default };
import { c } from 'react-compiler-runtime'; import classes from './ButtonReset.module.css.js'; import { clsx } from 'clsx'; import { jsx } from 'react/jsx-runtime';
const Button = t0 => {
const $ = c(10);
let children;
let className;
let rest;
if (
export { Button };
import './ButtonReset-904f2483.css';
var classes = {"ButtonReset":"prc-components-ButtonReset-O-bEI"};
export { classes as default };
import { CounterLabel as CounterLabel$1 } from '@primer/react'; import { Box } from './Box.js'; import { forwardRef } from 'react'; import { jsx } from 'react/jsx-runtime';
const CounterLabel = /#PURE/forwardRef(function CounterLabel(props, ref) { return /#PURE/jsx(Box, { as: CounterLabel$1, ref: ref, ...props }); });
export { CounterLabel };
/**
- Shared character counting functionality for text inputs with character limits.
- Handles real-time character count updates, validation, and aria-live announcements. */
const SCREEN_READER_DELAY = 500; class CharacterCounter { announceTimeout = null; isInitialLoad = true; constructor(callbacks) { this.callbacks = callbacks; }
/**
- Update the character count based on current input value
*/
updateCharacterCount(currentLength, maxLength) {
const charactersRemaining = maxLength - currentLength;
let message = '';
if (charactersRemaining >= 0) {
const characterText = charactersRemaining === 1 ? 'character' : 'characters';
message =
${charactersRemaining} ${characterText} remaining; this.callbacks.onCountUpdate(charactersRemaining, false, message); } else { const charactersOver = -charactersRemaining; const characterText = charactersOver === 1 ? 'character' : 'characters'; message =${charactersOver} ${characterText} over; this.callbacks.onCountUpdate(charactersOver, true, message); } if (!this.isInitialLoad) { this.announceToScreenReader(message); }
// After first update, set isInitialLoad to false
if (this.isInitialLoad) {
this.isInitialLoad = false;
}
}
/**
- Announce character count to screen readers with debouncing */ announceToScreenReader(message) { if (this.announceTimeout) { clearTimeout(this.announceTimeout); } if (typeof window === 'undefined' || typeof window.setTimeout !== 'function') { return; } this.announceTimeout = window.setTimeout(() => { this.callbacks.onScreenReaderAnnounce(message); }, SCREEN_READER_DELAY); }
/**
- Clean up any pending timeouts */ cleanup() { if (this.announceTimeout) { clearTimeout(this.announceTimeout); } } }
export { CharacterCounter };
import { c } from 'react-compiler-runtime'; import { clsx } from 'clsx'; import React, { useContext, useEffect } from 'react'; import useIsomorphicLayoutEffect from '../utils/useIsomorphicLayoutEffect.js'; import { CheckboxGroupContext } from '../CheckboxGroup/CheckboxGroupContext.js'; import classes from './Checkbox.module.css.js'; import sharedClasses from './shared.module.css.js'; import { jsx } from 'react/jsx-runtime'; import { useProvidedRefOrCreate } from '../hooks/useProvidedRefOrCreate.js';
/**
- An accessible, native checkbox component
/
const Checkbox = /#PURE/React.forwardRef((t0, ref) => {
const $ = c(40);
let checked;
let className;
let defaultChecked;
let disabled;
let indeterminate;
let onChange;
let required;
let rest;
let validationStatus;
let value;
if ($[0] !== t0) {
({
checked,
className,
defaultChecked,
indeterminate,
disabled,
onChange,
required,
validationStatus,
value,
...rest
} = t0);
$[0] = t0;
$[1] = checked;
$[2] = className;
$[3] = defaultChecked;
$[4] = disabled;
$[5] = indeterminate;
$[6] = onChange;
$[7] = required;
$[8] = rest;
$[9] = validationStatus;
$[10] = value;
} else {
checked = $[1];
className = $[2];
defaultChecked = $[3];
disabled = $[4];
indeterminate = $[5];
onChange = $[6];
required = $[7];
rest = $[8];
validationStatus = $[9];
value = $[10];
}
const checkboxRef = useProvidedRefOrCreate(ref);
const checkboxGroupContext = useContext(CheckboxGroupContext);
let t1;
if ($[11] !== checkboxGroupContext || $[12] !== onChange) {
t1 = e => {
checkboxGroupContext.onChange && checkboxGroupContext.onChange(e);
onChange && onChange(e);
};
$[11] = checkboxGroupContext;
$[12] = onChange;
$[13] = t1;
} else {
t1 = $[13];
}
const handleOnChange = t1;
const t2 = indeterminate ? false : checked;
const t3 = required ? "true" : "false";
const t4 = validationStatus === "error" ? "true" : "false";
let t5;
if ($[14] !== checkboxRef || $[15] !== defaultChecked || $[16] !== disabled || $[17] !== handleOnChange || $[18] !== required || $[19] !== rest || $[20] !== t2 || $[21] !== t3 || $[22] !== t4 || $[23] !== value) {
t5 = {
type: "checkbox",
disabled,
ref: checkboxRef,
checked: t2,
defaultChecked,
required,
"aria-required": t3,
"aria-invalid": t4,
onChange: handleOnChange,
value,
name: value,
...rest
};
$[14] = checkboxRef;
$[15] = defaultChecked;
$[16] = disabled;
$[17] = handleOnChange;
$[18] = required;
$[19] = rest;
$[20] = t2;
$[21] = t3;
$[22] = t4;
$[23] = value;
$[24] = t5;
} else {
t5 = $[24];
}
const inputProps = t5;
let t6;
if ($[25] !== checkboxRef || $[26] !== indeterminate) {
t6 = () => {
if (checkboxRef.current) {
checkboxRef.current.indeterminate = indeterminate || false;
}
};
$[25] = checkboxRef;
$[26] = indeterminate;
$[27] = t6;
} else {
t6 = $[27];
}
let t7;
if ($[28] !== checkboxRef || $[29] !== checked || $[30] !== indeterminate) {
t7 = [indeterminate, checked, checkboxRef];
$[28] = checkboxRef;
$[29] = checked;
$[30] = indeterminate;
$[31] = t7;
} else {
t7 = $[31];
}
useIsomorphicLayoutEffect(t6, t7);
let t8;
if ($[32] !== checkboxRef || $[33] !== indeterminate) {
t8 = () => {
const {
current: checkbox
} = checkboxRef;
if (!checkbox) {
return;
}
if (indeterminate) {
checkbox.setAttribute("aria-checked", "mixed");
} else {
checkbox.setAttribute("aria-checked", checkbox.checked ? "true" : "false");
}
};
$[32] = checkboxRef;
$[33] = indeterminate;
$[34] = t8;
} else {
t8 = $[34];
}
useEffect(t8);
let t9;
if ($[35] !== className) {
t9 = clsx(className, sharedClasses.Input, classes.Checkbox);
$[35] = className;
$[36] = t9;
} else {
t9 = $[36];
}
let t10;
if ($[37] !== inputProps || $[38] !== t9) {
t10 = /#PURE*/jsx("input", {
...inputProps,
className: t9
});
$[37] = inputProps; $ [38] = t9;$[39] = t10; } else { t10 = $ [39]; } return t10; }); Checkbox.displayName = 'Checkbox'; Checkbox.SLOT = Symbol('Checkbox');
export { Checkbox as default };
import './Checkbox-edc5dc3e.css';
var classes = {"Checkbox":"prc-Checkbox-Checkbox-jjOgT","checkmarkOut":"prc-Checkbox-checkmarkOut-mrgEX","checkmarkIn":"prc-Checkbox-checkmarkIn-73iWj"};
export { classes as default };
import { c } from 'react-compiler-runtime'; import React from 'react'; import CheckboxOrRadioGroupCaption from '../internal/components/CheckboxOrRadioGroup/CheckboxOrRadioGroupCaption.js'; import CheckboxOrRadioGroupLabel from '../internal/components/CheckboxOrRadioGroup/CheckboxOrRadioGroupLabel.js'; import CheckboxOrRadioGroupValidation from '../internal/components/CheckboxOrRadioGroup/CheckboxOrRadioGroupValidation.js'; import Checkbox from '../Checkbox/Checkbox.js'; import { CheckboxGroupContext } from './CheckboxGroupContext.js'; import { isSlot } from '../utils/is-slot.js'; import { jsx } from 'react/jsx-runtime'; import { useRenderForcingRef } from '../hooks/useRenderForcingRef.js'; import CheckboxOrRadioGroup from '../internal/components/CheckboxOrRadioGroup/CheckboxOrRadioGroup.js'; import FormControl from '../FormControl/FormControl.js';
const CheckboxGroup = t0 => {
const $ = c(24);
let children;
let disabled;
let onChange;
let rest;
if (
export { CheckboxGroupContext, CheckboxGroup_default as default };
import { createContext } from 'react';
const CheckboxGroupContext = /#PURE/createContext({});
export { CheckboxGroupContext };
import React from 'react'; import ValidationAnimationContainer from '../ValidationAnimationContainer.js'; import { useId } from '../../../hooks/useId.js'; import CheckboxOrRadioGroupCaption from './CheckboxOrRadioGroupCaption.js'; import CheckboxOrRadioGroupLabel from './CheckboxOrRadioGroupLabel.js'; import CheckboxOrRadioGroupValidation from './CheckboxOrRadioGroupValidation.js'; import CheckboxOrRadioGroupContext from './CheckboxOrRadioGroupContext.js'; import VisuallyHidden from '../../../_VisuallyHidden.js'; import { useSlots } from '../../../hooks/useSlots.js'; import classes from './CheckboxOrRadioGroup.module.css.js'; import { clsx } from 'clsx'; import { isSlot } from '../../../utils/is-slot.js'; import { jsx, jsxs } from 'react/jsx-runtime';
const CheckboxOrRadioGroup = ({
'aria-labelledby': ariaLabelledby,
children,
disabled = false,
id: idProp,
required = false,
className
}) => {
const [slots, rest] = useSlots(children, {
caption: CheckboxOrRadioGroupCaption,
label: CheckboxOrRadioGroupLabel,
validation: CheckboxOrRadioGroupValidation
});
const labelChild = React.Children.toArray(children).find(child => /#PURE/React.isValidElement(child) && (child.type === CheckboxOrRadioGroupLabel || isSlot(child, CheckboxOrRadioGroupLabel)));
const validationChild = React.Children.toArray(children).find(child => /#PURE/React.isValidElement(child) && (child.type === CheckboxOrRadioGroupValidation || isSlot(child, CheckboxOrRadioGroupValidation)) ? child : null);
const captionChild = React.Children.toArray(children).find(child => /#PURE/React.isValidElement(child) && (child.type === CheckboxOrRadioGroupCaption || isSlot(child, CheckboxOrRadioGroupCaption)) ? child : null);
const id = useId(idProp);
const validationMessageId = validationChild ? ${id}-validationMessage : undefined;
const captionId = captionChild ? ${id}-caption : undefined;
if (!labelChild && !ariaLabelledby) {
// eslint-disable-next-line no-console
console.warn('A choice group must be labelled using a CheckboxOrRadioGroup.Label child, or by passing aria-labelledby to the CheckboxOrRadioGroup component.');
}
const isLegendVisible = /#PURE/React.isValidElement(labelChild) && !labelChild.props.visuallyHidden;
const Component = labelChild ? 'fieldset' : 'div';
return /#PURE/jsx(CheckboxOrRadioGroupContext.Provider, {
value: {
disabled,
required,
captionId,
validationMessageId
},
children: /#PURE/jsxs("div", {
children: [/#PURE/jsxs(Component, {
className: clsx(className, classes.GroupFieldset),
"data-validation": validationChild ? '' : undefined,
...(labelChild ? {
disabled
} : {}),
children: [labelChild ?
/#PURE/
/*
Placing the caption text and validation text in the provides a better user
experience for more screenreaders.
Reference: https://blog.tenon.io/accessible-validation-of-checkbox-and-radiobutton-groups/
/
jsxs("legend", {
className: classes.GroupLegend,
"data-legend-visible": isLegendVisible ? '' : undefined,
children: [slots.label, slots.caption, /#PURE/React.isValidElement(slots.validation) && slots.validation.props.children && /#PURE/jsx(VisuallyHidden, {
children: slots.validation.props.children
})]
}) : (
/
If CheckboxOrRadioGroup.Label wasn't passed as a child, we don't render a
but we still want to render a caption
/
slots.caption), /#PURE/jsx("div", {
className: classes.Body,
...(!labelChild ? {
['aria-labelledby']: ariaLabelledby,
['aria-describedby']: [validationMessageId, captionId].filter(Boolean).join(' '),
as: 'div',
role: 'group'
} : {}),
children: React.Children.toArray(rest).filter(child => /#PURE/React.isValidElement(child))
})]
}), validationChild && /#PURE*/jsx(ValidationAnimationContainer
// If we have CheckboxOrRadioGroup.Label as a child, we render a screenreader-accessible validation message in the
, {
"aria-hidden": Boolean(labelChild),
show: true,
children: slots.validation
})]
})
});
};
CheckboxOrRadioGroup.displayName = "CheckboxOrRadioGroup";
var CheckboxOrRadioGroup$1 = Object.assign(CheckboxOrRadioGroup, {
Caption: CheckboxOrRadioGroupCaption,
Label: CheckboxOrRadioGroupLabel,
Validation: CheckboxOrRadioGroupValidation
});
export { CheckboxOrRadioGroup$1 as default };
import './CheckboxOrRadioGroup-e38b5339.css';
var classes = {"Body":"prc-CheckboxOrRadioGroup-Body-S3dlj","GroupFieldset":"prc-CheckboxOrRadioGroup-GroupFieldset-wQbrJ","GroupLegend":"prc-CheckboxOrRadioGroup-GroupLegend-qbh-X","CheckboxOrRadioGroupCaption":"prc-CheckboxOrRadioGroup-CheckboxOrRadioGroupCaption-txKKq","RadioGroupLabel":"prc-CheckboxOrRadioGroup-RadioGroupLabel-C-0pm","GroupLabelChildren":"prc-CheckboxOrRadioGroup-GroupLabelChildren-ObjCg"};
export { classes as default };
import React from 'react'; import CheckboxOrRadioGroupContext from './CheckboxOrRadioGroupContext.js'; import classes from './CheckboxOrRadioGroup.module.css.js'; import { clsx } from 'clsx'; import { jsx } from 'react/jsx-runtime'; import Text from '../../../Text/Text.js';
const CheckboxOrRadioGroupCaption = ({ className, children }) => { const { captionId } = React.useContext(CheckboxOrRadioGroupContext); return /#PURE/jsx(Text, { className: clsx(className, classes.CheckboxOrRadioGroupCaption), id: captionId, children: children }); }; CheckboxOrRadioGroupCaption.displayName = "CheckboxOrRadioGroupCaption"; CheckboxOrRadioGroupCaption.SLOT = Symbol('CheckboxOrRadioGroupCaption');
export { CheckboxOrRadioGroupCaption as default };
import React from 'react';
const CheckboxOrRadioGroupContext = /#PURE/React.createContext({});
export { CheckboxOrRadioGroupContext as default };
import React from 'react'; import VisuallyHidden from '../../../_VisuallyHidden.js'; import CheckboxOrRadioGroupContext from './CheckboxOrRadioGroupContext.js'; import classes from './CheckboxOrRadioGroup.module.css.js'; import { Stack } from '../../../Stack/index.js'; import { clsx } from 'clsx'; import { jsx, jsxs } from 'react/jsx-runtime';
const CheckboxOrRadioGroupLabel = ({ children, className, visuallyHidden = false }) => { const { required, disabled } = React.useContext(CheckboxOrRadioGroupContext); return /#PURE/jsx(VisuallyHidden, { className: clsx(className, classes.RadioGroupLabel), isVisible: !visuallyHidden, title: required ? 'required field' : undefined, "data-label-disabled": disabled ? '' : undefined, children: required ? /#PURE/jsxs(Stack, { direction: "horizontal", gap: "none", children: [/#PURE/jsx("div", { className: classes.GroupLabelChildren, children: children }), /#PURE/jsx("span", { children: "*" })] }) : children }); }; CheckboxOrRadioGroupLabel.displayName = "CheckboxOrRadioGroupLabel"; CheckboxOrRadioGroupLabel.SLOT = Symbol('CheckboxOrRadioGroupLabel');
export { CheckboxOrRadioGroupLabel as default };
import React from 'react'; import InputValidation from '../InputValidation.js'; import CheckboxOrRadioGroupContext from './CheckboxOrRadioGroupContext.js'; import { jsx } from 'react/jsx-runtime';
const CheckboxOrRadioGroupValidation = ({ children, variant }) => { const { validationMessageId = '' } = React.useContext(CheckboxOrRadioGroupContext); return /#PURE/jsx(InputValidation, { validationStatus: variant, id: validationMessageId, children: children }); }; CheckboxOrRadioGroupValidation.displayName = "CheckboxOrRadioGroupValidation"; CheckboxOrRadioGroupValidation.SLOT = Symbol('CheckboxOrRadioGroupValidation');
export { CheckboxOrRadioGroupValidation as default };
import { c } from 'react-compiler-runtime'; import { Fragment } from 'react'; import { Key } from './Key.js'; import { accessibleKeyName } from '../key-names.js'; import { clsx } from 'clsx'; import classes from './Chord.module.css.js'; import { jsxs, jsx } from 'react/jsx-runtime'; import Text from '../../Text/Text.js';
const keySortPriorities = { control: 1, meta: 2, alt: 3, option: 4, shift: 5, function: 6 }; const keySortPriority = priority => { var _keySortPriorities$pr; return (_keySortPriorities$pr = keySortPriorities[priority]) !== null && _keySortPriorities$pr !== void 0 ? _keySortPriorities$pr : Infinity; }; const compareLowercaseKeys = (a, b) => keySortPriority(a) - keySortPriority(b);
/** Split and sort the chord keys in standard order. /
const splitChord = chord => chord.split('+').map(k => k.toLowerCase()).sort(compareLowercaseKeys);
const Chord = t0 => {
const $ = c(13);
const {
keys,
format: t1,
variant: t2,
size: t3
} = t0;
const format = t1 === undefined ? "condensed" : t1;
const variant = t2 === undefined ? "normal" : t2;
const size = t3 === undefined ? "normal" : t3;
const t4 = variant === "normal";
const t5 = variant === "onEmphasis";
const t6 = variant === "onPrimary";
const t7 = size === "small";
let t8;
if ($[0] !== t4 || $[1] !== t5 || $[2] !== t6 || $[3] !== t7) {
t8 = clsx(classes.Chord, {
[classes.ChordNormal]: t4,
[classes.ChordOnEmphasis]: t5,
[classes.ChordOnPrimary]: t6,
[classes.ChordSmall]: t7
});
$[0] = t4;
$[1] = t5;
$[2] = t6;
$[3] = t7;
$[4] = t8;
} else {
t8 = $[4];
}
let t9;
if ($[5] !== format || $[6] !== keys) {
let t10;
if ($[8] !== format) {
t10 = (k, i) => /#PURE/jsxs(Fragment, {
children: [i > 0 && format === "full" ? /#PURE/jsx("span", {
"aria-hidden": true,
children: " + "
}) : " ", /#PURE/jsx(Key, {
name: k,
format: format
})]
}, i);
$[8] = format;
$[9] = t10;
} else {
t10 = $[9];
}
t9 = splitChord(keys).map(t10);
$[5] = format;
$[6] = keys;
$[7] = t9;
} else {
t9 = $[7];
}
let t10;
if ($[10] !== t8 || $[11] !== t9) {
t10 = /#PURE*/jsx(Text, {
"data-kbd-chord": true,
className: t8,
children: t9
});
/** Plain string version of Chord for use in aria string attributes. */
const accessibleChordString = (chord, isMacOS) => splitChord(chord).map(key => accessibleKeyName(key, isMacOS)).join(' ');
export { Chord, accessibleChordString };
import './Chord-d4edcc89.css';
var classes = {"Chord":"prc-components-Chord-DdhWN","ChordNormal":"prc-components-ChordNormal-Ov9XG","ChordOnEmphasis":"prc-components-ChordOnEmphasis-O-4BS","ChordOnPrimary":"prc-components-ChordOnPrimary-J2XUj","ChordSmall":"prc-components-ChordSmall-c-P-x"};
export { classes as default };
import { c } from 'react-compiler-runtime'; import isNumeric from '../utils/isNumeric.js'; import styles from './CircleBadge.module.css.js'; import { clsx } from 'clsx'; import { jsx } from 'react/jsx-runtime'; import Octicon from '../Octicon/Octicon.js';
const variantSizes = {
small: 56,
medium: 96,
large: 128
};
const sizeStyles = ({
size,
variant = 'medium'
}) => {
const calc = isNumeric(size) ? size : variantSizes[variant];
return {
width: calc,
height: calc
};
};
const CircleBadge = t0 => {
const $ = c(12);
let T0;
let t1;
let t2;
let t3;
let t4;
if (
- @deprecated This component is deprecated.
- Replace component with specific icon imports from
@primer/octicons-reactand customized styling. */ var CircleBadge_default = Object.assign(CircleBadge, { Icon: CircleBadgeIcon });
export { CircleBadge_default as default };
import './CircleBadge-87549d20.css';
var styles = {"CircleBadge":"prc-CircleBadge-CircleBadge-tNGX1","CircleBadgeIcon":"prc-CircleBadge-CircleBadgeIcon-h73Dg"};
export { styles as default };
// This file is auto-generated by precompile-color-schemes.ts
// run npm run build:precompile-color-schemes to regenerate
const colors = { "light": { "colors": { "canvasDefaultTransparent": "var(--bgColor-transparent, var(--color-canvas-default-transparent, rgba(255,255,255,0)))", "pageHeaderBg": "var(--page-header-bgColor, var(--color-page-header-bg, #f6f8fa))", "marketingIcon": { "primary": "var(--color-marketing-icon-primary, #218bff)", "secondary": "var(--color-marketing-icon-secondary, #54aeff)" }, "diffBlob": { "addition": { "numText": "var(--diffBlob-addition-fgColor-num, var(--color-diff-blob-addition-num-text, #1F2328))", "fg": "var(--diffBlob-addition-fgColor-text, var(--color-diff-blob-addition-fg, #1F2328))", "numBg": "var(--diffBlob-addition-bgColor-num, var(--color-diff-blob-addition-num-bg, #ccffd8))", "lineBg": "var(--diffBlob-addition-bgColor-line, var(--color-diff-blob-addition-line-bg, #e6ffec))", "wordBg": "var(--diffBlob-addition-bgColor-word, var(--color-diff-blob-addition-word-bg, #abf2bc))" }, "deletion": { "numText": "var(--diffBlob-deletion-fgColor-num, var(--color-diff-blob-deletion-num-text, #1F2328))", "fg": "var(--diffBlob-deletion-fgColor-text, var(--color-diff-blob-deletion-fg, #1F2328))", "numBg": "var(--diffBlob-deletion-bgColor-num, var(--color-diff-blob-deletion-num-bg, #ffd7d5))", "lineBg": "var(--diffBlob-deletion-bgColor-line, var(--color-diff-blob-deletion-line-bg, #ffebe9))", "wordBg": "var(--diffBlob-deletion-bgColor-word, var(--color-diff-blob-deletion-word-bg, rgba(255,129,130,0.4)))" }, "hunk": { "numBg": "var(--diffBlob-hunk-bgColor-num, var(--color-diff-blob-hunk-num-bg, rgba(84,174,255,0.4)))" }, "expander": { "icon": "var(--diffBlob-expander-iconColor, var(--color-diff-blob-expander-icon, #656d76))" }, "selectedLineHighlightMixBlendMode": "var(--color-diff-blob-selected-line-highlight-mix-blend-mode, multiply)" }, "diffstat": { "deletionBorder": "var(--color-diffstat-deletion-border, rgba(31,35,40,0.15))", "additionBorder": "var(--color-diffstat-addition-border, rgba(31,35,40,0.15))", "additionBg": "var(undefined, var(--color-diffstat-addition-bg, #1f883d))" }, "searchKeyword": { "hl": "var(--highlight-neutral-bgColor, var(--color-search-keyword-hl, #fff8c5))" }, "prettylights": { "syntax": { "comment": "var(--color-prettylights-syntax-comment, #57606a)", "constant": "var(--color-prettylights-syntax-constant, #0550ae)", "entity": "var(--color-prettylights-syntax-entity, #6639ba)", "storageModifierImport": "var(--color-prettylights-syntax-storage-modifier-import, #24292f)", "entityTag": "var(--color-prettylights-syntax-entity-tag, #116329)", "keyword": "var(--color-prettylights-syntax-keyword, #cf222e)", "string": "var(--color-prettylights-syntax-string, #0a3069)", "variable": "var(--color-prettylights-syntax-variable, #953800)", "brackethighlighterUnmatched": "var(--color-prettylights-syntax-brackethighlighter-unmatched, #82071e)", "invalidIllegalText": "var(--color-prettylights-syntax-invalid-illegal-text, #f6f8fa)", "invalidIllegalBg": "var(--color-prettylights-syntax-invalid-illegal-bg, #82071e)", "carriageReturnText": "var(--color-prettylights-syntax-carriage-return-text, #f6f8fa)", "carriageReturnBg": "var(--color-prettylights-syntax-carriage-return-bg, #cf222e)", "stringRegexp": "var(--color-prettylights-syntax-string-regexp, #116329)", "markupList": "var(--color-prettylights-syntax-markup-list, #3b2300)", "markupHeading": "var(--color-prettylights-syntax-markup-heading, #0550ae)", "markupItalic": "var(--color-prettylights-syntax-markup-italic, #24292f)", "markupBold": "var(--color-prettylights-syntax-markup-bold, #24292f)", "markupDeletedText": "var(--color-prettylights-syntax-markup-deleted-text, #82071e)", "markupDeletedBg": "var(--color-prettylights-syntax-markup-deleted-bg, #ffebe9)", "markupInsertedText": "var(--color-prettylights-syntax-markup-inserted-text, #116329)", "markupInsertedBg": "var(--color-prettylights-syntax-markup-inserted-bg, #dafbe1)", "markupChangedText": "var(--color-prettylights-syntax-markup-changed-text, #953800)", "markupChangedBg": "var(--color-prettylights-syntax-markup-changed-bg, #ffd8b5)", "markupIgnoredText": "var(--color-prettylights-syntax-markup-ignored-text, #eaeef2)", "markupIgnoredBg": "var(--color-prettylights-syntax-markup-ignored-bg, #0550ae)", "metaDiffRange": "var(--color-prettylights-syntax-meta-diff-range, #8250df)", "brackethighlighterAngle": "var(--color-prettylights-syntax-brackethighlighter-angle, #57606a)", "sublimelinterGutterMark": "var(--color-prettylights-syntax-sublimelinter-gutter-mark, #8c959f)", "constantOtherReferenceLink": "var(--color-prettylights-syntax-constant-other-reference-link, #0a3069)" } }, "codemirror": { "text": "var(--codeMirror-fgColor, var(--color-codemirror-text, #1F2328))", "bg": "var(--codeMirror-bgColor, var(--color-codemirror-bg, #ffffff))", "guttersBg": "var(--codeMirror-gutters-bgColor, var(--color-codemirror-gutters-bg, #ffffff))", "guttermarkerText": "var(--codeMirror-gutterMarker-fgColor-default, var(--color-codemirror-guttermarker-text, #ffffff))", "guttermarkerSubtleText": "var(--codeMirror-gutterMarker-fgColor-muted, var(--color-codemirror-guttermarker-subtle-text, #6e7781))", "linenumberText": "var(--codeMirror-lineNumber-fgColor, var(--color-codemirror-linenumber-text, #656d76))", "cursor": "var(--codeMirror-cursor-fgColor, var(--color-codemirror-cursor, #1F2328))", "selectionBg": "var(--codeMirror-selection-bgColor, var(--color-codemirror-selection-bg, rgba(84,174,255,0.4)))", "activelineBg": "var(--codeMirror-activeline-bgColor, var(--color-codemirror-activeline-bg, rgba(234,238,242,0.5)))", "matchingbracketText": "var(--codeMirror-matchingBracket-fgColor, var(--color-codemirror-matchingbracket-text, #1F2328))", "linesBg": "var(--codeMirror-lines-bgColor, var(--color-codemirror-lines-bg, #ffffff))", "syntax": { "comment": "var(--codeMirror-syntax-fgColor-comment, var(--color-codemirror-syntax-comment, #24292f))", "constant": "var(--codeMirror-syntax-fgColor-constant, var(--color-codemirror-syntax-constant, #0550ae))", "entity": "var(--codeMirror-syntax-fgColor-entity, var(--color-codemirror-syntax-entity, #8250df))", "keyword": "var(--codeMirror-syntax-fgColor-keyword, var(--color-codemirror-syntax-keyword, #cf222e))", "storage": "var(--codeMirror-syntax-fgColor-storage, var(--color-codemirror-syntax-storage, #cf222e))", "string": "var(--codeMirror-syntax-fgColor-string, var(--color-codemirror-syntax-string, #0a3069))", "support": "var(--codeMirror-syntax-fgColor-support, var(--color-codemirror-syntax-support, #0550ae))", "variable": "var(--codeMirror-syntax-fgColor-variable, var(--color-codemirror-syntax-variable, #953800))" } }, "checks": { "bg": "var(--color-checks-bg, #24292f)", "runBorderWidth": "var(--color-checks-run-border-width, 0px)", "containerBorderWidth": "var(--color-checks-container-border-width, 0px)", "textPrimary": "var(--color-checks-text-primary, #f6f8fa)", "textSecondary": "var(--color-checks-text-secondary, #8c959f)", "textLink": "var(--color-checks-text-link, #54aeff)", "btnIcon": "var(--color-checks-btn-icon, #afb8c1)", "btnHoverIcon": "var(--color-checks-btn-hover-icon, #f6f8fa)", "btnHoverBg": "var(--color-checks-btn-hover-bg, rgba(255,255,255,0.125))", "inputText": "var(--color-checks-input-text, #eaeef2)", "inputPlaceholderText": "var(--color-checks-input-placeholder-text, #8c959f)", "inputFocusText": "var(--color-checks-input-focus-text, #8c959f)", "inputBg": "var(--color-checks-input-bg, #32383f)", "inputShadow": "var(--color-checks-input-shadow, none)", "donutError": "var(--color-checks-donut-error, #fa4549)", "donutPending": "var(--color-checks-donut-pending, #bf8700)", "donutSuccess": "var(--color-checks-donut-success, #1f883d)", "donutNeutral": "var(--color-checks-donut-neutral, #afb8c1)", "dropdownText": "var(--color-checks-dropdown-text, #afb8c1)", "dropdownBg": "var(--color-checks-dropdown-bg, #32383f)", "dropdownBorder": "var(--color-checks-dropdown-border, #424a53)", "dropdownShadow": "var(--color-checks-dropdown-shadow, rgba(31,35,40,0.3))", "dropdownHoverText": "var(--color-checks-dropdown-hover-text, #f6f8fa)", "dropdownHoverBg": "var(--color-checks-dropdown-hover-bg, #424a53)", "dropdownBtnHoverText": "var(--color-checks-dropdown-btn-hover-text, #f6f8fa)", "dropdownBtnHoverBg": "var(--color-checks-dropdown-btn-hover-bg, #32383f)", "scrollbarThumbBg": "var(--color-checks-scrollbar-thumb-bg, #57606a)", "headerLabelText": "var(--color-checks-header-label-text, #d0d7de)", "headerLabelOpenText": "var(--color-checks-header-label-open-text, #f6f8fa)", "headerBorder": "var(--color-checks-header-border, #32383f)", "headerIcon": "var(--color-checks-header-icon, #8c959f)", "lineText": "var(--color-checks-line-text, #d0d7de)", "lineNumText": "var(--color-checks-line-num-text, rgba(140,149,159,0.75))", "lineTimestampText": "var(--color-checks-line-timestamp-text, #8c959f)", "lineHoverBg": "var(--color-checks-line-hover-bg, #32383f)", "lineSelectedBg": "var(--color-checks-line-selected-bg, rgba(33,139,255,0.15))", "lineSelectedNumText": "var(--color-checks-line-selected-num-text, #54aeff)", "lineDtFmText": "var(--color-checks-line-dt-fm-text, #24292f)", "lineDtFmBg": "var(--color-checks-line-dt-fm-bg, #9a6700)", "gateBg": "var(--color-checks-gate-bg, rgba(125,78,0,0.15))", "gateText": "var(--color-checks-gate-text, #d0d7de)", "gateWaitingText": "var(--color-checks-gate-waiting-text, #d4a72c)", "stepHeaderOpenBg": "var(--color-checks-step-header-open-bg, #32383f)", "stepErrorText": "var(--color-checks-step-error-text, #ff8182)", "stepWarningText": "var(--color-checks-step-warning-text, #d4a72c)", "loglineText": "var(--color-checks-logline-text, #8c959f)", "loglineNumText": "var(--color-checks-logline-num-text, rgba(140,149,159,0.75))", "loglineDebugText": "var(--color-checks-logline-debug-text, #c297ff)", "loglineErrorText": "var(--color-checks-logline-error-text, #d0d7de)", "loglineErrorNumText": "var(--color-checks-logline-error-num-text, #ff8182)", "loglineErrorBg": "var(--color-checks-logline-error-bg, rgba(164,14,38,0.15))", "loglineWarningText": "var(--color-checks-logline-warning-text, #d0d7de)", "loglineWarningNumText": "var(--color-checks-logline-warning-num-text, #d4a72c)", "loglineWarningBg": "var(--color-checks-logline-warning-bg, rgba(125,78,0,0.15))", "loglineCommandText": "var(--color-checks-logline-command-text, #54aeff)", "loglineSectionText": "var(--color-checks-logline-section-text, #4ac26b)", "ansi": { "black": "var(--color-checks-ansi-black, #24292f)", "blackBright": "var(--color-checks-ansi-black-bright, #32383f)", "white": "var(--color-checks-ansi-white, #d0d7de)", "whiteBright": "var(--color-checks-ansi-white-bright, #d0d7de)", "gray": "var(--color-checks-ansi-gray, #8c959f)", "red": "var(--color-checks-ansi-red, #ff8182)", "redBright": "var(--color-checks-ansi-red-bright, #ffaba8)", "green": "var(--color-checks-ansi-green, #4ac26b)", "greenBright": "var(--color-checks-ansi-green-bright, #6fdd8b)", "yellow": "var(--color-checks-ansi-yellow, #d4a72c)", "yellowBright": "var(--color-checks-ansi-yellow-bright, #eac54f)", "blue": "var(--color-checks-ansi-blue, #54aeff)", "blueBright": "var(--color-checks-ansi-blue-bright, #80ccff)", "magenta": "var(--color-checks-ansi-magenta, #c297ff)", "magentaBright": "var(--color-checks-ansi-magenta-bright, #d8b9ff)", "cyan": "var(--color-checks-ansi-cyan, #76e3ea)", "cyanBright": "var(--color-checks-ansi-cyan-bright, #b3f0ff)" } }, "project": { "headerBg": "var(--color-project-header-bg, #24292f)", "sidebarBg": "var(--color-project-sidebar-bg, #ffffff)", "gradientIn": "var(--color-project-gradient-in, #ffffff)", "gradientOut": "var(--color-project-gradient-out, rgba(255,255,255,0))" }, "mktg": { "btn": { "bg": "var(--color-mktg-btn-bg, #1b1f23))" } }, "control": { "borderColor": { "emphasis": "var(--control-borderColor-emphasis, var(--color-control-border-color-emphasis, #858F99))" } }, "avatar": { "bg": "var(--avatar-bgColor, var(--color-avatar-bg, #ffffff))", "border": "var(--avatar-borderColor, var(--color-avatar-border, rgba(31,35,40,0.15)))", "stackFade": "var(--avatarStack-fade-bgColor-default, var(--color-avatar-stack-fade, #afb8c1))", "stackFadeMore": "var(--avatarStack-fade-bgColor-muted, var(--color-avatar-stack-fade-more, #d0d7de))" }, "topicTag": { "border": "var(--topicTag-borderColor, var(--color-topic-tag-border, transparent))" }, "counter": { "border": "var(--counter-borderColor, var(--color-counter-border, transparent))" }, "selectMenu": { "backdropBorder": "var(--selectMenu-borderColor, var(--color-select-menu-backdrop-border, transparent))", "tapHighlight": "var(--control-bgColor-active, var(--color-select-menu-tap-highlight, rgba(175,184,193,0.5)))", "tapFocusBg": "var(--selectMenu-bgColor-active, var(--color-select-menu-tap-focus-bg, #b6e3ff))" }, "overlay": { "backdrop": "var(--overlay-backdrop-bgColor, var(--color-overlay-backdrop, rgba(140,149,159,0.2)))" }, "header": { "text": "var(--header-fgColor-default, var(--color-header-text, rgba(255,255,255,0.7)))", "bg": "var(--header-bgColor, var(--color-header-bg, #24292f))", "divider": "var(--header-borderColor-divider, var(--color-header-divider, #57606a))", "logo": "var(--header-fgColor-logo, var(--color-header-logo, #ffffff))" }, "headerSearch": { "bg": "var(--headerSearch-bgColor, var(--color-header-search-bg, #24292f))", "border": "var(--headerSearch-borderColor, var(--color-header-search-border, #57606a))" }, "sidenav": { "selectedBg": "var(--sideNav-bgColor-selected, var(--color-sidenav-selected-bg, #ffffff))" }, "menu": { "bgActive": "var(--menu-bgColor-active, var(--color-menu-bg-active, transparent))" }, "input": { "disabledBg": "var(--control-bgColor-disabled, var(--color-input-disabled-bg, rgba(175,184,193,0.2)))" }, "timeline": { "badgeBg": "var(--timelineBadge-bgColor, var(--color-timeline-badge-bg, #eaeef2))" }, "ansi": { "black": "var(--color-ansi-black, #24292f)", "blackBright": "var(--color-ansi-black-bright, #57606a)", "white": "var(--color-ansi-white, #6e7781)", "whiteBright": "var(--color-ansi-white-bright, #8c959f)", "gray": "var(--color-ansi-gray, #6e7781)", "red": "var(--color-ansi-red, #cf222e)", "redBright": "var(--color-ansi-red-bright, #a40e26)", "green": "var(--color-ansi-green, #116329)", "greenBright": "var(--color-ansi-green-bright, #1a7f37)", "yellow": "var(--color-ansi-yellow, #4d2d00)", "yellowBright": "var(--color-ansi-yellow-bright, #633c01)", "blue": "var(--color-ansi-blue, #0969da)", "blueBright": "var(--color-ansi-blue-bright, #218bff)", "magenta": "var(--color-ansi-magenta, #8250df)", "magentaBright": "var(--color-ansi-magenta-bright, #a475f9)", "cyan": "var(--color-ansi-cyan, #1b7c83)", "cyanBright": "var(--color-ansi-cyan-bright, #3192aa)" }, "btn": { "text": "var(--button-default-fgColor-rest, var(--color-btn-text, #24292f))", "bg": "var(--button-default-bgColor-rest, var(--color-btn-bg, #f6f8fa))", "border": "var(--button-default-borderColor-rest, var(--color-btn-border, rgba(31,35,40,0.15)))", "hoverBg": "var(--button-default-bgColor-hover, var(--color-btn-hover-bg, #f3f4f6))", "hoverBorder": "var(--button-default-borderColor-hover, var(--color-btn-hover-border, rgba(31,35,40,0.15)))", "activeBg": "var(--button-default-bgColor-active, var(--color-btn-active-bg, hsla(220,14%,93%,1)))", "activeBorder": "var(--button-default-borderColor-active, var(--color-btn-active-border, rgba(31,35,40,0.15)))", "selectedBg": "var(--button-default-bgColor-selected, var(--color-btn-selected-bg, hsla(220,14%,94%,1)))", "counterBg": "var(--buttonCounter-default-bgColor-rest, var(--color-btn-counter-bg, rgba(31,35,40,0.08)))", "primary": { "text": "var(--button-primary-fgColor-rest, var(--color-btn-primary-text, #ffffff))", "bg": "var(--button-primary-bgColor-rest, var(--color-btn-primary-bg, #1f883d))", "border": "var(--button-primary-borderColor-rest, var(--color-btn-primary-border, rgba(31,35,40,0.15)))", "hoverBg": "var(--button-primary-bgColor-hover, var(--color-btn-primary-hover-bg, #1a7f37))", "hoverBorder": "var(--button-primary-borderColor-hover, var(--color-btn-primary-hover-border, rgba(31,35,40,0.15)))", "selectedBg": "var(--button-primary-bgColor-active, var(--color-btn-primary-selected-bg, hsla(137,66%,28%,1)))", "disabledText": "var(--button-primary-fgColor-disabled, var(--color-btn-primary-disabled-text, rgba(255,255,255,0.8)))", "disabledBg": "var(--button-primary-bgColor-disabled, var(--color-btn-primary-disabled-bg, #94d3a2))", "disabledBorder": "var(--button-primary-borderColor-disabled, var(--color-btn-primary-disabled-border, rgba(31,35,40,0.15)))", "icon": "var(--button-primary-iconColor-rest, var(--color-btn-primary-icon, rgba(255,255,255,0.8)))", "counterBg": "var(--buttonCounter-primary-bgColor-rest, var(--color-btn-primary-counter-bg, rgba(0,45,17,0.2)))" }, "outline": { "text": "var(--button-outline-fgColor-rest, var(--color-btn-outline-text, #0969da))", "hoverText": "var(--button-outline-fgColor-hover, var(--color-btn-outline-hover-text, #ffffff))", "hoverBg": "var(--button-outline-bgColor-hover, var(--color-btn-outline-hover-bg, #0969da))", "hoverBorder": "var(--button-outline-borderColor-hover, var(--color-btn-outline-hover-border, rgba(31,35,40,0.15)))", "hoverCounterBg": "var(--buttonCounter-outline-bgColor-hover, var(--color-btn-outline-hover-counter-bg, rgba(255,255,255,0.2)))", "selectedText": "var(--button-outline-fgColor-active, var(--color-btn-outline-selected-text, #ffffff))", "selectedBg": "var(--button-outline-bgColor-active, var(--color-btn-outline-selected-bg, hsla(212,92%,42%,1)))", "selectedBorder": "var(--button-outline-borderColor-active, var(--color-btn-outline-selected-border, rgba(31,35,40,0.15)))", "disabledText": "var(--button-outline-fgColor-disabled, var(--color-btn-outline-disabled-text, rgba(9,105,218,0.5)))", "disabledBg": "var(--button-outline-bgColor-disabled, var(--color-btn-outline-disabled-bg, #f6f8fa))", "disabledCounterBg": "var(--buttonCounter-outline-bgColor-disabled, var(--color-btn-outline-disabled-counter-bg, rgba(9,105,218,0.05)))", "counterBg": "var(--buttonCounter-outline-bgColor-rest, var(--color-btn-outline-counter-bg, #0969da1a))", "counterFg": "var(--buttonCounter-outline-fgColor-rest, var(--color-btn-outline-counter-fg, #0550ae))", "hoverCounterFg": "var(--buttonCounter-outline-fgColor-hover, var(--color-btn-outline-hover-counter-fg, #ffffff))", "disabledCounterFg": "var(--buttonCounter-outline-fgColor-disabled, var(--color-btn-outline-disabled-counter-fg, rgba(9,105,218,0.5)))" }, "danger": { "text": "var(--button-danger-fgColor-rest, var(--color-btn-danger-text, #cf222e))", "hoverText": "var(--button-danger-fgColor-hover, var(--color-btn-danger-hover-text, #ffffff))", "hoverBg": "var(--button-danger-bgColor-hover, var(--color-btn-danger-hover-bg, #a40e26))", "hoverBorder": "var(--button-danger-borderColor-hover, var(--color-btn-danger-hover-border, rgba(31,35,40,0.15)))", "hoverCounterBg": "var(--buttonCounter-danger-bgColor-hover, var(--color-btn-danger-hover-counter-bg, rgba(255,255,255,0.2)))", "selectedText": "var(--button-danger-fgColor-active, var(--color-btn-danger-selected-text, #ffffff))", "selectedBg": "var(--button-danger-bgColor-active, var(--color-btn-danger-selected-bg, hsla(356,72%,44%,1)))", "selectedBorder": "var(--button-danger-borderColor-active, var(--color-btn-danger-selected-border, rgba(31,35,40,0.15)))", "disabledText": "var(--button-danger-fgColor-disabled, var(--color-btn-danger-disabled-text, rgba(207,34,46,0.5)))", "disabledBg": "var(--button-danger-bgColor-disabled, var(--color-btn-danger-disabled-bg, #f6f8fa))", "disabledCounterBg": "var(--buttonCounter-danger-bgColor-disabled, var(--color-btn-danger-disabled-counter-bg, rgba(207,34,46,0.05)))", "counterBg": "var(--buttonCounter-danger-bgColor-rest, var(--color-btn-danger-counter-bg, rgba(207,34,46,0.1)))", "icon": "var(--button-danger-iconColor-rest, var(--color-btn-danger-icon, #cf222e))", "hoverIcon": "var(--button-danger-iconColor-hover, var(--color-btn-danger-hover-icon, #ffffff))", "counterFg": "var(--buttonCounter-danger-fgColor-rest, var(--color-btn-danger-counter-fg, #a40e26))", "hoverCounterFg": "var(--buttonCounter-danger-fgColor-hover, var(--color-btn-danger-hover-counter-fg, #ffffff))", "disabledCounterFg": "var(--buttonCounter-danger-fgColor-disabled, var(--color-btn-danger-disabled-counter-fg, rgba(207,34,46,0.5)))" }, "inactive": { "bg": "var(--button-inactive-bgColor-rest, var(--color-btn-inactive-bg, #eaeef2))", "text": "var(--button-inactive-fgColor-rest, var(--color-btn-inactive-text, #57606a))" } }, "underlinenav": { "icon": "var(--underlineNav-iconColor-rest, var(--color-underlinenav-icon, #6e7781))", "borderHover": "var(--underlineNav-borderColor-hover, var(--color-underlinenav-border-hover, rgba(175,184,193,0.2)))" }, "actionListItem": { "inlineDivider": "var(--borderColor-muted, var(--color-action-list-item-inline-divider, rgba(208,215,222,0.48)))", "default": { "hoverBg": "var(--control-transparent-bgColor-hover, var(--color-action-list-item-default-hover-bg, rgba(208,215,222,0.32)))", "hoverBorder": "var(--control-transparent-borderColor-hover, var(--color-action-list-item-default-hover-border, transparent))", "activeBg": "var(--control-transparent-bgColor-active, var(--color-action-list-item-default-active-bg, rgba(208,215,222,0.48)))", "activeBorder": "var(--control-transparent-borderColor-active, var(--color-action-list-item-default-active-border, transparent))", "selectedBg": "var(--control-transparent-bgColor-selected, var(--color-action-list-item-default-selected-bg, rgba(208,215,222,0.24)))" }, "danger": { "hoverBg": "var(--control-danger-bgColor-hover, var(--color-action-list-item-default-danger-hover-bg, rgba(255,235,233,0.64)))", "activeBg": "var(--control-danger-bgColor-active, var(--color-action-list-item-default-danger-active-bg, #ffebe9))", "hoverText": "var(--control-danger-fgColor-hover, var(--color-action-list-item-default-danger-hover-text, #d1242f))" } }, "switchTrack": { "bg": "var(--controlTrack-bgColor-rest, var(--color-switch-track-bg, #eaeef2))", "hoverBg": "var(--controlTrack-bgColor-hover, var(--color-switch-track-hover-bg, hsla(210,24%,90%,1)))", "activeBg": "var(--controlTrack-bgColor-active, var(--color-switch-track-active-bg, hsla(210,24%,88%,1)))", "disabledBg": "var(--controlTrack-bgColor-disabled, var(--color-switch-track-disabled-bg, #8c959f))", "fg": "var(--controlTrack-fgColor-rest, var(--color-switch-track-fg, #656d76))", "disabledFg": "var(--controlTrack-fgColor-disabled, var(--color-switch-track-disabled-fg, #ffffff))", "border": "var(--controlTrack-borderColor-rest, var(--color-switch-track-border, transparent))", "checked": { "bg": "var(--control-checked-bgColor-rest, var(--color-switch-track-checked-bg, #0969da))", "hoverBg": "var(--control-checked-bgColor-hover, var(--color-switch-track-checked-hover-bg, #0860CA))", "activeBg": "var(--control-checked-bgColor-active, var(--color-switch-track-checked-active-bg, #0757BA))", "fg": "var(--control-checked-fgColor-rest, var(--color-switch-track-checked-fg, #ffffff))", "disabledFg": "var(--control-checked-fgColor-disabled, var(--color-switch-track-checked-disabled-fg, #ffffff))", "border": "var(--borderColor-transparent, var(--color-switch-track-checked-border, transparent))" } }, "switchKnob": { "bg": "var(--controlKnob-bgColor-rest, var(--color-switch-knob-bg, #ffffff))", "disabledBg": "var(--controlKnob-bgColor-disabled, var(--color-switch-knob-disabled-bg, #f6f8fa))", "border": "var(--controlKnob-borderColor-rest, var(--color-switch-knob-border, #858F99))", "checked": { "bg": "var(--controlKnob-bgColor-checked, var(--color-switch-knob-checked-bg, #ffffff))", "disabledBg": "var(--controlKnob-bgColor-disabled, var(--color-switch-knob-checked-disabled-bg, #f6f8fa))", "border": "var(--controlKnob-borderColor-checked, var(--color-switch-knob-checked-border, #0969da))" } }, "segmentedControl": { "bg": "var(--controlTrack-bgColor-rest, var(--color-segmented-control-bg, #eaeef2))", "button": { "bg": "var(--controlKnob-bgColor-rest, var(--color-segmented-control-button-bg, #ffffff))", "hover": { "bg": "var(--controlTrack-bgColor-hover, var(--color-segmented-control-button-hover-bg, rgba(175,184,193,0.2)))" }, "active": { "bg": "var(--controlTrack-bgColor-active, var(--color-segmented-control-button-hover-active-bg, rgba(175,184,193,0.4)))" }, "selected": { "border": "var(--controlKnob-borderColor-rest, var(--color-segmented-control-button-hover-active-selected-border, #8c959f))" } } }, "treeViewItem": { "chevron": { "hoverBg": "var(--control-transparent-bgColor-hover, var(--color-tree-view-item-chevron-hover-bg, rgba(208,215,222,0.32)))" }, "directory": { "fill": "var(--treeViewItem-leadingVisual-iconColor-rest, var(--color-tree-view-item-chevron-directory-fill, #54aeff))" } }, "fg": { "default": "var(--fgColor-default, var(--color-fg-default, #1F2328))", "muted": "var(--fgColor-muted, var(--color-fg-muted, #656d76))", "subtle": "var(--fgColor-muted, var(--color-fg-subtle, #6e7781))", "onEmphasis": "var(--fgColor-onEmphasis, var(--color-fg-on-emphasis, #ffffff))" }, "canvas": { "default": "var(--bgColor-default, var(--color-canvas-default, #ffffff))", "overlay": "var(--overlay-bgColor, var(--color-canvas-overlay, #ffffff))", "inset": "var(--bgColor-inset, var(--color-canvas-inset, #f6f8fa))", "subtle": "var(--bgColor-muted, var(--color-canvas-subtle, #f6f8fa))" }, "border": { "default": "var(--borderColor-default, var(--color-border-default, #d0d7de))", "muted": "var(--borderColor-muted, var(--color-border-muted, hsla(210,18%,87%,1)))", "subtle": "var(--borderColor-muted, var(--color-border-subtle, rgba(31,35,40,0.15)))" }, "neutral": { "emphasisPlus": "var(--bgColor-emphasis, var(--color-neutral-emphasis-plus, #24292f))", "emphasis": "var(--bgColor-neutral-emphasis, var(--color-neutral-emphasis, #6e7781))", "muted": "var(--bgColor-neutral-muted, var(--color-neutral-muted, rgba(175,184,193,0.2)))", "subtle": "var(--bgColor-neutral-muted, var(--color-neutral-subtle, rgba(234,238,242,0.5)))" }, "accent": { "fg": "var(--fgColor-accent, var(--color-accent-fg, #0969da))", "emphasis": "var(--bgColor-accent-emphasis, var(--color-accent-emphasis, #0969da))", "muted": "var(--borderColor-accent-muted, var(--color-accent-muted, rgba(84,174,255,0.4)))", "subtle": "var(--bgColor-accent-muted, var(--color-accent-subtle, #ddf4ff))" }, "success": { "fg": "var(--fgColor-success, var(--color-success-fg, #1a7f37))", "emphasis": "var(--bgColor-success-emphasis, var(--color-success-emphasis, #1f883d))", "muted": "var(--borderColor-success-muted, var(--color-success-muted, rgba(74,194,107,0.4)))", "subtle": "var(--bgColor-success-muted, var(--color-success-subtle, #dafbe1))" }, "attention": { "fg": "var(--fgColor-attention, var(--color-attention-fg, #9a6700))", "emphasis": "var(--bgColor-attention-emphasis, var(--color-attention-emphasis, #9a6700))", "muted": "var(--borderColor-attention-muted, var(--color-attention-muted, rgba(212,167,44,0.4)))", "subtle": "var(--bgColor-attention-muted, var(--color-attention-subtle, #fff8c5))" }, "severe": { "fg": "var(--fgColor-severe, var(--color-severe-fg, #bc4c00))", "emphasis": "var(--bgColor-severe-emphasis, var(--color-severe-emphasis, #bc4c00))", "muted": "var(--borderColor-severe-muted, var(--color-severe-muted, rgba(251,143,68,0.4)))", "subtle": "var(--bgColor-severe-muted, var(--color-severe-subtle, #fff1e5))" }, "danger": { "fg": "var(--fgColor-danger, var(--color-danger-fg, #d1242f))", "emphasis": "var(--borderColor-danger-emphasis, var(--color-danger-emphasis, #cf222e))", "muted": "var(--borderColor-danger-muted, var(--color-danger-muted, rgba(255,129,130,0.4)))", "subtle": "var(--bgColor-danger-muted, var(--color-danger-subtle, #ffebe9))" }, "open": { "fg": "var(--fgColor-open, var(--color-open-fg, #1a7f37))", "emphasis": "var(--bgColor-open-emphasis, var(--color-open-emphasis, #1f883d))", "muted": "var(--borderColor-open-muted, var(--color-open-muted, rgba(74,194,107,0.4)))", "subtle": "var(--bgColor-open-muted, var(--color-open-subtle, #dafbe1))" }, "closed": { "fg": "var(--fgColor-closed, var(--color-closed-fg, #d1242f))", "emphasis": "var(--bgColor-closed-emphasis, var(--color-closed-emphasis, #cf222e))", "muted": "var(--borderColor-closed-muted, var(--color-closed-muted, rgba(255,129,130,0.4)))", "subtle": "var(--bgColor-closed-muted, var(--color-closed-subtle, #ffebe9))" }, "done": { "fg": "var(--fgColor-done, var(--color-done-fg, #8250df))", "emphasis": "var(--bgColor-done-emphasis, var(--color-done-emphasis, #8250df))", "muted": "var(--borderColor-done-muted, var(--color-done-muted, rgba(194,151,255,0.4)))", "subtle": "var(--bgColor-done-muted, var(--color-done-subtle, #fbefff))" }, "sponsors": { "fg": "var(--fgColor-sponsors, var(--color-sponsors-fg, #bf3989))", "emphasis": "var(--bgColor-sponsors-emphasis, var(--color-sponsors-emphasis, #bf3989))", "muted": "var(--borderColor-sponsors-muted, var(--color-sponsors-muted, rgba(255,128,200,0.4)))", "subtle": "var(--bgColor-sponsors-muted, var(--color-sponsors-subtle, #ffeff7))" }, "primer": { "fg": { "disabled": "var(--fgColor-disabled, var(--color-primer-fg-disabled, #8c959f))" }, "canvas": { "backdrop": "var(--overlay-backdrop-bgColor, var(--color-primer-fg-canvas-backdrop, rgba(31,35,40,0.5)))", "sticky": "var(--color-primer-canvas-sticky, rgba(255,255,255,0.95))" }, "border": { "active": "var(--underlineNav-borderColor-active, var(--color-primer-border-active, #fd8c73))", "contrast": "var(--borderColor-muted, var(--color-primer-border-contrast, rgba(31,35,40,0.1)))" } } }, "shadows": { "mktg": { "btn": { "shadow": { "outline": "var(--color-mktg-btn-shadow-outline, rgb(0 0 0 / 15%) 0 0 0 1px inset))", "focus": "var(--color-mktg-btn-shadow-focus, rgb(0 0 0 / 15%) 0 0 0 4px))", "hover": "var(--color-mktg-btn-shadow-hover, 0 3px 2px rgba(0, 0, 0, 0.07), 0 7px 5px rgba(0, 0, 0, 0.04), 0 12px 10px rgba(0, 0, 0, 0.03), 0 22px 18px rgba(0, 0, 0, 0.03), 0 42px 33px rgba(0, 0, 0, 0.02), 0 100px 80px rgba(0, 0, 0, 0.02)))", "hoverMuted": "var(--color-mktg-btn-shadow-hover-muted, rgb(0 0 0 / 70%) 0 0 0 2px inset))" } } }, "avatar": { "childShadow": "var(--avatar-shadow, var(--color-avatar-child-shadow, 0 0 0 2px rgba(255,255,255,0.8)))" }, "overlay": { "shadow": "var(--shadow-floating-small, var(--color-overlay-shadow, 0 1px 3px rgba(31,35,40,0.12), 0 8px 24px rgba(66,74,83,0.12)))" }, "btn": { "shadow": "var(--button-default-shadow-resting, var(--color-btn-shadow, 0 1px 0 rgba(31,35,40,0.04)))", "insetShadow": "var(--button-default-shadow-inset, var(--color-btn-inset-shadow, inset 0 1px 0 rgba(255,255,255,0.25)))", "primary": { "shadow": "var(--shadow-resting-small, var(--color-btn-primary-shadow, 0 1px 0 rgba(31,35,40,0.1)))", "insetShadow": "var(--shadow-highlight, var(--color-btn-primary-inset-shadow, inset 0 1px 0 rgba(255,255,255,0.03)))", "selectedShadow": "var(--button-primary-shadow-selected, var(--color-btn-primary-selected-shadow, inset 0 1px 0 rgba(0,45,17,0.2)))" }, "outline": { "hoverShadow": "var(--shadow-resting-small, var(--color-btn-outline-hover-shadow, 0 1px 0 rgba(31,35,40,0.1)))", "hoverInsetShadow": "var(--shadow-highlight, var(--color-btn-outline-hover-inset-shadow, inset 0 1px 0 rgba(255,255,255,0.03)))", "selectedShadow": "var(--button-outline-shadow-selected, var(--color-btn-outline-selected-shadow, inset 0 1px 0 rgba(0,33,85,0.2)))" }, "danger": { "hoverShadow": "var(--shadow-resting-small, var(--color-btn-danger-hover-shadow, 0 1px 0 rgba(31,35,40,0.1)))", "hoverInsetShadow": "var(--shadow-highlight, var(--color-btn-danger-hover-inset-shadow, inset 0 1px 0 rgba(255,255,255,0.03)))", "selectedShadow": "var(--button-danger-shadow-selected, var(--color-btn-danger-selected-shadow, inset 0 1px 0 rgba(76,0,20,0.2)))" } }, "shadow": { "small": "var(--shadow-resting-small, var(--color-shadow-small, 0 1px 0 rgba(31,35,40,0.04)))", "medium": "var(--shadow-resting-medium, var(--color-shadow-medium, 0 3px 6px rgba(140,149,159,0.15)))", "large": "var(--shadow-floating-large, var(--color-shadow-large, 0 8px 24px rgba(140,149,159,0.2)))", "extraLarge": "var(--shadow-floating-xlarge, var(--color-shadow-extra-large, 0 12px 28px rgba(140,149,159,0.3)))" }, "primer": { "shadow": { "highlight": "var(--shadow-highlight, var(--color-primer-shadow-highlight, inset 0 1px 0 rgba(255,255,255,0.25)))", "inset": "var(--shadow-inset, var(--color-primer-shadow-inset, inset 0 1px 0 rgba(208,215,222,0.2)))" } } } }, "light_high_contrast": { "colors": { "canvasDefaultTransparent": "var(--bgColor-transparent, var(--color-canvas-default-transparent, rgba(255,255,255,0)))", "pageHeaderBg": "var(--page-header-bgColor, var(--color-page-header-bg, #ffffff))", "marketingIcon": { "primary": "var(--color-marketing-icon-primary, #1168e3)", "secondary": "var(--color-marketing-icon-secondary, #368cf9)" }, "diffBlob": { "addition": { "numText": "var(--diffBlob-addition-fgColor-num, var(--color-diff-blob-addition-num-text, #0e1116))", "fg": "var(--diffBlob-addition-fgColor-text, var(--color-diff-blob-addition-fg, #ffffff))", "numBg": "var(--diffBlob-addition-bgColor-num, var(--color-diff-blob-addition-num-bg, #ccffd8))", "lineBg": "var(--diffBlob-addition-bgColor-line, var(--color-diff-blob-addition-line-bg, #e6ffec))", "wordBg": "var(--diffBlob-addition-bgColor-word, var(--color-diff-blob-addition-word-bg, #055d20))" }, "deletion": { "numText": "var(--diffBlob-deletion-fgColor-num, var(--color-diff-blob-deletion-num-text, #0e1116))", "fg": "var(--diffBlob-deletion-fgColor-text, var(--color-diff-blob-deletion-fg, #ffffff))", "numBg": "var(--diffBlob-deletion-bgColor-num, var(--color-diff-blob-deletion-num-bg, #ffd7d5))", "lineBg": "var(--diffBlob-deletion-bgColor-line, var(--color-diff-blob-deletion-line-bg, #fff0ee))", "wordBg": "var(--diffBlob-deletion-bgColor-word, var(--color-diff-blob-deletion-word-bg, #a0111f))" }, "hunk": { "numBg": "var(--diffBlob-hunk-bgColor-num, var(--color-diff-blob-hunk-num-bg, #9cd7ff))" }, "expander": { "icon": "var(--diffBlob-expander-iconColor, var(--color-diff-blob-expander-icon, #0e1116))" }, "selectedLineHighlightMixBlendMode": "var(--color-diff-blob-selected-line-highlight-mix-blend-mode, multiply)" }, "diffstat": { "deletionBorder": "var(--color-diffstat-deletion-border, rgba(1,4,9,0.8))", "additionBorder": "var(--color-diffstat-addition-border, rgba(1,4,9,0.8))", "additionBg": "var(undefined, var(--color-diffstat-addition-bg, #055d20))" }, "searchKeyword": { "hl": "var(--highlight-neutral-bgColor, var(--color-search-keyword-hl, #fcf7be))" }, "prettylights": { "syntax": { "comment": "var(--color-prettylights-syntax-comment, #4b535d)", "constant": "var(--color-prettylights-syntax-constant, #023b95)", "entity": "var(--color-prettylights-syntax-entity, #512598)", "storageModifierImport": "var(--color-prettylights-syntax-storage-modifier-import, #0e1116)", "entityTag": "var(--color-prettylights-syntax-entity-tag, #024c1a)", "keyword": "var(--color-prettylights-syntax-keyword, #a0111f)", "string": "var(--color-prettylights-syntax-string, #032563)", "variable": "var(--color-prettylights-syntax-variable, #702c00)", "brackethighlighterUnmatched": "var(--color-prettylights-syntax-brackethighlighter-unmatched, #6e011a)", "invalidIllegalText": "var(--color-prettylights-syntax-invalid-illegal-text, #ffffff)", "invalidIllegalBg": "var(--color-prettylights-syntax-invalid-illegal-bg, #6e011a)", "carriageReturnText": "var(--color-prettylights-syntax-carriage-return-text, #ffffff)", "carriageReturnBg": "var(--color-prettylights-syntax-carriage-return-bg, #a0111f)", "stringRegexp": "var(--color-prettylights-syntax-string-regexp, #024c1a)", "markupList": "var(--color-prettylights-syntax-markup-list, #2e1800)", "markupHeading": "var(--color-prettylights-syntax-markup-heading, #023b95)", "markupItalic": "var(--color-prettylights-syntax-markup-italic, #0e1116)", "markupBold": "var(--color-prettylights-syntax-markup-bold, #0e1116)", "markupDeletedText": "var(--color-prettylights-syntax-markup-deleted-text, #6e011a)", "markupDeletedBg": "var(--color-prettylights-syntax-markup-deleted-bg, #fff0ee)", "markupInsertedText": "var(--color-prettylights-syntax-markup-inserted-text, #024c1a)", "markupInsertedBg": "var(--color-prettylights-syntax-markup-inserted-bg, #d2fedb)", "markupChangedText": "var(--color-prettylights-syntax-markup-changed-text, #702c00)", "markupChangedBg": "var(--color-prettylights-syntax-markup-changed-bg, #ffc67b)", "markupIgnoredText": "var(--color-prettylights-syntax-markup-ignored-text, #e7ecf0)", "markupIgnoredBg": "var(--color-prettylights-syntax-markup-ignored-bg, #023b95)", "metaDiffRange": "var(--color-prettylights-syntax-meta-diff-range, #622cbc)", "brackethighlighterAngle": "var(--color-prettylights-syntax-brackethighlighter-angle, #4b535d)", "sublimelinterGutterMark": "var(--color-prettylights-syntax-sublimelinter-gutter-mark, #88929d)", "constantOtherReferenceLink": "var(--color-prettylights-syntax-constant-other-reference-link, #032563)" } }, "codemirror": { "text": "var(--codeMirror-fgColor, var(--color-codemirror-text, #0e1116))", "bg": "var(--codeMirror-bgColor, var(--color-codemirror-bg, #ffffff))", "guttersBg": "var(--codeMirror-gutters-bgColor, var(--color-codemirror-gutters-bg, #ffffff))", "guttermarkerText": "var(--codeMirror-gutterMarker-fgColor-default, var(--color-codemirror-guttermarker-text, #ffffff))", "guttermarkerSubtleText": "var(--codeMirror-gutterMarker-fgColor-muted, var(--color-codemirror-guttermarker-subtle-text, #66707b))", "linenumberText": "var(--codeMirror-lineNumber-fgColor, var(--color-codemirror-linenumber-text, #0e1116))", "cursor": "var(--codeMirror-cursor-fgColor, var(--color-codemirror-cursor, #0e1116))", "selectionBg": "var(--codeMirror-selection-bgColor, var(--color-codemirror-selection-bg, #368cf9))", "activelineBg": "var(--codeMirror-activeline-bgColor, var(--color-codemirror-activeline-bg, #e7ecf0))", "matchingbracketText": "var(--codeMirror-matchingBracket-fgColor, var(--color-codemirror-matchingbracket-text, #0e1116))", "linesBg": "var(--codeMirror-lines-bgColor, var(--color-codemirror-lines-bg, #ffffff))", "syntax": { "comment": "var(--codeMirror-syntax-fgColor-comment, var(--color-codemirror-syntax-comment, #0e1116))", "constant": "var(--codeMirror-syntax-fgColor-constant, var(--color-codemirror-syntax-constant, #023b95))", "entity": "var(--codeMirror-syntax-fgColor-entity, var(--color-codemirror-syntax-entity, #622cbc))", "keyword": "var(--codeMirror-syntax-fgColor-keyword, var(--color-codemirror-syntax-keyword, #a0111f))", "storage": "var(--codeMirror-syntax-fgColor-storage, var(--color-codemirror-syntax-storage, #a0111f))", "string": "var(--codeMirror-syntax-fgColor-string, var(--color-codemirror-syntax-string, #032563))", "support": "var(--codeMirror-syntax-fgColor-support, var(--color-codemirror-syntax-support, #023b95))", "variable": "var(--codeMirror-syntax-fgColor-variable, var(--color-codemirror-syntax-variable, #702c00))" } }, "checks": { "bg": "var(--color-checks-bg, #0e1116)", "runBorderWidth": "var(--color-checks-run-border-width, 0px)", "containerBorderWidth": "var(--color-checks-container-border-width, 0px)", "textPrimary": "var(--color-checks-text-primary, #ffffff)", "textSecondary": "var(--color-checks-text-secondary, #88929d)", "textLink": "var(--color-checks-text-link, #368cf9)", "btnIcon": "var(--color-checks-btn-icon, #acb6c0)", "btnHoverIcon": "var(--color-checks-btn-hover-icon, #ffffff)", "btnHoverBg": "var(--color-checks-btn-hover-bg, rgba(255,255,255,0.125))", "inputText": "var(--color-checks-input-text, #e7ecf0)", "inputPlaceholderText": "var(--color-checks-input-placeholder-text, #88929d)", "inputFocusText": "var(--color-checks-input-focus-text, #88929d)", "inputBg": "var(--color-checks-input-bg, #20252c)", "inputShadow": "var(--color-checks-input-shadow, none)", "donutError": "var(--color-checks-donut-error, #d5232c)", "donutPending": "var(--color-checks-donut-pending, #956400)", "donutSuccess": "var(--color-checks-donut-success, #055d20)", "donutNeutral": "var(--color-checks-donut-neutral, #acb6c0)", "dropdownText": "var(--color-checks-dropdown-text, #acb6c0)", "dropdownBg": "var(--color-checks-dropdown-bg, #20252c)", "dropdownBorder": "var(--color-checks-dropdown-border, #343b43)", "dropdownShadow": "var(--color-checks-dropdown-shadow, rgba(1,4,9,0.3))", "dropdownHoverText": "var(--color-checks-dropdown-hover-text, #ffffff)", "dropdownHoverBg": "var(--color-checks-dropdown-hover-bg, #343b43)", "dropdownBtnHoverText": "var(--color-checks-dropdown-btn-hover-text, #ffffff)", "dropdownBtnHoverBg": "var(--color-checks-dropdown-btn-hover-bg, #20252c)", "scrollbarThumbBg": "var(--color-checks-scrollbar-thumb-bg, #4b535d)", "headerLabelText": "var(--color-checks-header-label-text, #ced5dc)", "headerLabelOpenText": "var(--color-checks-header-label-open-text, #ffffff)", "headerBorder": "var(--color-checks-header-border, #20252c)", "headerIcon": "var(--color-checks-header-icon, #88929d)", "lineText": "var(--color-checks-line-text, #ced5dc)", "lineNumText": "var(--color-checks-line-num-text, rgba(136,146,157,0.75))", "lineTimestampText": "var(--color-checks-line-timestamp-text, #88929d)", "lineHoverBg": "var(--color-checks-line-hover-bg, #20252c)", "lineSelectedBg": "var(--color-checks-line-selected-bg, rgba(17,104,227,0.15))", "lineSelectedNumText": "var(--color-checks-line-selected-num-text, #368cf9)", "lineDtFmText": "var(--color-checks-line-dt-fm-text, #0e1116)", "lineDtFmBg": "var(--color-checks-line-dt-fm-bg, #744500)", "gateBg": "var(--color-checks-gate-bg, rgba(96,55,0,0.15))", "gateText": "var(--color-checks-gate-text, #ced5dc)", "gateWaitingText": "var(--color-checks-gate-waiting-text, #b58407)", "stepHeaderOpenBg": "var(--color-checks-step-header-open-bg, #20252c)", "stepErrorText": "var(--color-checks-step-error-text, #ee5a5d)", "stepWarningText": "var(--color-checks-step-warning-text, #b58407)", "loglineText": "var(--color-checks-logline-text, #88929d)", "loglineNumText": "var(--color-checks-logline-num-text, rgba(136,146,157,0.75))", "loglineDebugText": "var(--color-checks-logline-debug-text, #a371f7)", "loglineErrorText": "var(--color-checks-logline-error-text, #ced5dc)", "loglineErrorNumText": "var(--color-checks-logline-error-num-text, #ee5a5d)", "loglineErrorBg": "var(--color-checks-logline-error-bg, rgba(134,6,29,0.15))", "loglineWarningText": "var(--color-checks-logline-warning-text, #ced5dc)", "loglineWarningNumText": "var(--color-checks-logline-warning-num-text, #b58407)", "loglineWarningBg": "var(--color-checks-logline-warning-bg, rgba(96,55,0,0.15))", "loglineCommandText": "var(--color-checks-logline-command-text, #368cf9)", "loglineSectionText": "var(--color-checks-logline-section-text, #26a148)", "ansi": { "black": "var(--color-checks-ansi-black, #0e1116)", "blackBright": "var(--color-checks-ansi-black-bright, #20252c)", "white": "var(--color-checks-ansi-white, #ced5dc)", "whiteBright": "var(--color-checks-ansi-white-bright, #ced5dc)", "gray": "var(--color-checks-ansi-gray, #88929d)", "red": "var(--color-checks-ansi-red, #ee5a5d)", "redBright": "var(--color-checks-ansi-red-bright, #ff8e8a)", "green": "var(--color-checks-ansi-green, #26a148)", "greenBright": "var(--color-checks-ansi-green-bright, #43c663)", "yellow": "var(--color-checks-ansi-yellow, #b58407)", "yellowBright": "var(--color-checks-ansi-yellow-bright, #d5a824)", "blue": "var(--color-checks-ansi-blue, #368cf9)", "blueBright": "var(--color-checks-ansi-blue-bright, #67b3fd)", "magenta": "var(--color-checks-ansi-magenta, #a371f7)", "magentaBright": "var(--color-checks-ansi-magenta-bright, #c49bff)", "cyan": "var(--color-checks-ansi-cyan, #76e3ea)", "cyanBright": "var(--color-checks-ansi-cyan-bright, #b3f0ff)" } }, "project": { "headerBg": "var(--color-project-header-bg, #0e1116)", "sidebarBg": "var(--color-project-sidebar-bg, #ffffff)", "gradientIn": "var(--color-project-gradient-in, #ffffff)", "gradientOut": "var(--color-project-gradient-out, rgba(255,255,255,0))" }, "mktg": { "btn": { "bg": "var(--color-mktg-btn-bg, #1b1f23))" } }, "control": { "borderColor": { "emphasis": "var(--control-borderColor-emphasis, var(--color-control-border-color-emphasis, #20252c))" } }, "avatar": { "bg": "var(--avatar-bgColor, var(--color-avatar-bg, #ffffff))", "border": "var(--avatar-borderColor, var(--color-avatar-border, rgba(1,4,9,0.8)))", "stackFade": "var(--avatarStack-fade-bgColor-default, var(--color-avatar-stack-fade, #acb6c0))", "stackFadeMore": "var(--avatarStack-fade-bgColor-muted, var(--color-avatar-stack-fade-more, #ced5dc))" }, "topicTag": { "border": "var(--topicTag-borderColor, var(--color-topic-tag-border, #0349b4))" }, "counter": { "border": "var(--counter-borderColor, var(--color-counter-border, #20252c))" }, "selectMenu": { "backdropBorder": "var(--selectMenu-borderColor, var(--color-select-menu-backdrop-border, transparent))", "tapHighlight": "var(--control-bgColor-active, var(--color-select-menu-tap-highlight, rgba(172,182,192,0.5)))", "tapFocusBg": "var(--selectMenu-bgColor-active, var(--color-select-menu-tap-focus-bg, #9cd7ff))" }, "overlay": { "backdrop": "var(--overlay-backdrop-bgColor, var(--color-overlay-backdrop, rgba(136,146,157,0.2)))" }, "header": { "text": "var(--header-fgColor-default, var(--color-header-text, rgba(255,255,255,0.7)))", "bg": "var(--header-bgColor, var(--color-header-bg, #0e1116))", "divider": "var(--header-borderColor-divider, var(--color-header-divider, #acb6c0))", "logo": "var(--header-fgColor-logo, var(--color-header-logo, #ffffff))" }, "headerSearch": { "bg": "var(--headerSearch-bgColor, var(--color-header-search-bg, #0e1116))", "border": "var(--headerSearch-borderColor, var(--color-header-search-border, #4b535d))" }, "sidenav": { "selectedBg": "var(--sideNav-bgColor-selected, var(--color-sidenav-selected-bg, #ffffff))" }, "menu": { "bgActive": "var(--menu-bgColor-active, var(--color-menu-bg-active, transparent))" }, "input": { "disabledBg": "var(--control-bgColor-disabled, var(--color-input-disabled-bg, rgba(172,182,192,0.2)))" }, "timeline": { "badgeBg": "var(--timelineBadge-bgColor, var(--color-timeline-badge-bg, #e7ecf0))" }, "ansi": { "black": "var(--color-ansi-black, #0e1116)", "blackBright": "var(--color-ansi-black-bright, #4b535d)", "white": "var(--color-ansi-white, #66707b)", "whiteBright": "var(--color-ansi-white-bright, #88929d)", "gray": "var(--color-ansi-gray, #66707b)", "red": "var(--color-ansi-red, #a0111f)", "redBright": "var(--color-ansi-red-bright, #86061d)", "green": "var(--color-ansi-green, #024c1a)", "greenBright": "var(--color-ansi-green-bright, #055d20)", "yellow": "var(--color-ansi-yellow, #3f2200)", "yellowBright": "var(--color-ansi-yellow-bright, #4e2c00)", "blue": "var(--color-ansi-blue, #0349b4)", "blueBright": "var(--color-ansi-blue-bright, #1168e3)", "magenta": "var(--color-ansi-magenta, #622cbc)", "magentaBright": "var(--color-ansi-magenta-bright, #844ae7)", "cyan": "var(--color-ansi-cyan, #1b7c83)", "cyanBright": "var(--color-ansi-cyan-bright, #3192aa)" }, "btn": { "text": "var(--button-default-fgColor-rest, var(--color-btn-text, #0e1116))", "bg": "var(--button-default-bgColor-rest, var(--color-btn-bg, #e7ecf0))", "border": "var(--button-default-borderColor-rest, var(--color-btn-border, rgba(1,4,9,0.8)))", "hoverBg": "var(--button-default-bgColor-hover, var(--color-btn-hover-bg, #ced5dc))", "hoverBorder": "var(--button-default-borderColor-hover, var(--color-btn-hover-border, rgba(1,4,9,0.8)))", "activeBg": "var(--button-default-bgColor-active, var(--color-btn-active-bg, #acb6c0))", "activeBorder": "var(--button-default-borderColor-active, var(--color-btn-active-border, rgba(1,4,9,0.8)))", "selectedBg": "var(--button-default-bgColor-selected, var(--color-btn-selected-bg, #acb6c0))", "counterBg": "var(--buttonCounter-default-bgColor-rest, var(--color-btn-counter-bg, rgba(1,4,9,0.08)))", "primary": { "text": "var(--button-primary-fgColor-rest, var(--color-btn-primary-text, #ffffff))", "bg": "var(--button-primary-bgColor-rest, var(--color-btn-primary-bg, #055d20))", "border": "var(--button-primary-borderColor-rest, var(--color-btn-primary-border, #013d14))", "hoverBg": "var(--button-primary-bgColor-hover, var(--color-btn-primary-hover-bg, #024c1a))", "hoverBorder": "var(--button-primary-borderColor-hover, var(--color-btn-primary-hover-border, #013d14))", "selectedBg": "var(--button-primary-bgColor-active, var(--color-btn-primary-selected-bg, hsla(139,95%,13%,1)))", "disabledText": "var(--button-primary-fgColor-disabled, var(--color-btn-primary-disabled-text, rgba(255,255,255,0.8)))", "disabledBg": "var(--button-primary-bgColor-disabled, var(--color-btn-primary-disabled-bg, #94d3a2))", "disabledBorder": "var(--button-primary-borderColor-disabled, var(--color-btn-primary-disabled-border, rgba(1,4,9,0.8)))", "icon": "var(--button-primary-iconColor-rest, var(--color-btn-primary-icon, rgba(255,255,255,0.8)))", "counterBg": "var(--buttonCounter-primary-bgColor-rest, var(--color-btn-primary-counter-bg, rgba(0,35,11,0.2)))" }, "outline": { "text": "var(--button-outline-fgColor-rest, var(--color-btn-outline-text, #023b95))", "hoverText": "var(--button-outline-fgColor-hover, var(--color-btn-outline-hover-text, #ffffff))", "hoverBg": "var(--button-outline-bgColor-hover, var(--color-btn-outline-hover-bg, #0349b4))", "hoverBorder": "var(--button-outline-borderColor-hover, var(--color-btn-outline-hover-border, #022f7a))", "hoverCounterBg": "var(--buttonCounter-outline-bgColor-hover, var(--color-btn-outline-hover-counter-bg, rgba(255,255,255,0.2)))", "selectedText": "var(--button-outline-fgColor-active, var(--color-btn-outline-selected-text, #ffffff))", "selectedBg": "var(--button-outline-bgColor-active, var(--color-btn-outline-selected-bg, #022f7a))", "selectedBorder": "var(--button-outline-borderColor-active, var(--color-btn-outline-selected-border, #022f7a))", "disabledText": "var(--button-outline-fgColor-disabled, var(--color-btn-outline-disabled-text, rgba(3,73,180,0.5)))", "disabledBg": "var(--button-outline-bgColor-disabled, var(--color-btn-outline-disabled-bg, #e7ecf0))", "disabledCounterBg": "var(--buttonCounter-outline-bgColor-disabled, var(--color-btn-outline-disabled-counter-bg, rgba(3,73,180,0.05)))", "counterBg": "var(--buttonCounter-outline-bgColor-rest, var(--color-btn-outline-counter-bg, #0969da1a))", "counterFg": "var(--buttonCounter-outline-fgColor-rest, var(--color-btn-outline-counter-fg, #023b95))", "hoverCounterFg": "var(--buttonCounter-outline-fgColor-hover, var(--color-btn-outline-hover-counter-fg, #ffffff))", "disabledCounterFg": "var(--buttonCounter-outline-fgColor-disabled, var(--color-btn-outline-disabled-counter-fg, rgba(3,73,180,0.5)))" }, "danger": { "text": "var(--button-danger-fgColor-rest, var(--color-btn-danger-text, #86061d))", "hoverText": "var(--button-danger-fgColor-hover, var(--color-btn-danger-hover-text, #ffffff))", "hoverBg": "var(--button-danger-bgColor-hover, var(--color-btn-danger-hover-bg, #a0111f))", "hoverBorder": "var(--button-danger-borderColor-hover, var(--color-btn-danger-hover-border, #6e011a))", "hoverCounterBg": "var(--buttonCounter-danger-bgColor-hover, var(--color-btn-danger-hover-counter-bg, rgba(255,255,255,0.2)))", "selectedText": "var(--button-danger-fgColor-active, var(--color-btn-danger-selected-text, #ffffff))", "selectedBg": "var(--button-danger-bgColor-active, var(--color-btn-danger-selected-bg, #6e011a))", "selectedBorder": "var(--button-danger-borderColor-active, var(--color-btn-danger-selected-border, #6e011a))", "disabledText": "var(--button-danger-fgColor-disabled, var(--color-btn-danger-disabled-text, rgba(160,17,31,0.5)))", "disabledBg": "var(--button-danger-bgColor-disabled, var(--color-btn-danger-disabled-bg, #e7ecf0))", "disabledCounterBg": "var(--buttonCounter-danger-bgColor-disabled, var(--color-btn-danger-disabled-counter-bg, rgba(160,17,31,0.05)))", "counterBg": "var(--buttonCounter-danger-bgColor-rest, var(--color-btn-danger-counter-bg, rgba(160,17,31,0.1)))", "icon": "var(--button-danger-iconColor-rest, var(--color-btn-danger-icon, #86061d))", "hoverIcon": "var(--button-danger-iconColor-hover, var(--color-btn-danger-hover-icon, #ffffff))", "counterFg": "var(--buttonCounter-danger-fgColor-rest, var(--color-btn-danger-counter-fg, #86061d))", "hoverCounterFg": "var(--buttonCounter-danger-fgColor-hover, var(--color-btn-danger-hover-counter-fg, #ffffff))", "disabledCounterFg": "var(--buttonCounter-danger-fgColor-disabled, var(--color-btn-danger-disabled-counter-fg, rgba(160,17,31,0.5)))" }, "inactive": { "bg": "var(--button-inactive-bgColor-rest, var(--color-btn-inactive-bg, #e7ecf0))", "text": "var(--button-inactive-fgColor-rest, var(--color-btn-inactive-text, #4b535d))" } }, "underlinenav": { "icon": "var(--underlineNav-iconColor-rest, var(--color-underlinenav-icon, #66707b))", "borderHover": "var(--underlineNav-borderColor-hover, var(--color-underlinenav-border-hover, rgba(172,182,192,0.2)))" }, "actionListItem": { "inlineDivider": "var(--borderColor-muted, var(--color-action-list-item-inline-divider, #88929d))", "default": { "hoverBg": "var(--control-transparent-bgColor-hover, var(--color-action-list-item-default-hover-bg, #e7ecf0))", "hoverBorder": "var(--control-transparent-borderColor-hover, var(--color-action-list-item-default-hover-border, #88929d))", "activeBg": "var(--control-transparent-bgColor-active, var(--color-action-list-item-default-active-bg, #ced5dc))", "activeBorder": "var(--control-transparent-borderColor-active, var(--color-action-list-item-default-active-border, #20252c))", "selectedBg": "var(--control-transparent-bgColor-selected, var(--color-action-list-item-default-selected-bg, #ced5dc))" }, "danger": { "hoverBg": "var(--control-danger-bgColor-hover, var(--color-action-list-item-danger-hover-bg, #a0111f))", "activeBg": "var(--control-danger-bgColor-active, var(--color-action-list-item-danger-active-bg, #6e011a))", "hoverText": "var(--control-danger-fgColor-hover, var(--color-action-list-item-danger-hover-text, #ffffff))" } }, "switchTrack": { "bg": "var(--controlTrack-bgColor-rest, var(--color-switch-track-bg, #66707b))", "hoverBg": "var(--controlTrack-bgColor-hover, var(--color-switch-track-hover-bg, hsla(211,9%,47%,1)))", "activeBg": "var(--controlTrack-bgColor-active, var(--color-switch-track-active-bg, hsla(211,9%,49%,1)))", "disabledBg": "var(--controlTrack-bgColor-disabled, var(--color-switch-track-disabled-bg, #88929d))", "fg": "var(--controlTrack-fgColor-rest, var(--color-switch-track-fg, #ffffff))", "disabledFg": "var(--controlTrack-fgColor-disabled, var(--color-switch-track-disabled-fg, #ffffff))", "border": "var(--controlTrack-borderColor-rest, var(--color-switch-track-border, transparent))", "checked": { "bg": "var(--control-checked-bgColor-rest, var(--color-switch-track-checked-bg, #0349b4))", "hoverBg": "var(--control-checked-bgColor-hover, var(--color-switch-track-checked-hover-bg, #0860CA))", "activeBg": "var(--control-checked-bgColor-active, var(--color-switch-track-checked-active-bg, #0757BA))", "fg": "var(--control-checked-fgColor-rest, var(--color-switch-track-checked-fg, #ffffff))", "disabledFg": "var(--control-checked-fgColor-disabled, var(--color-switch-track-checked-disabled-fg, #ffffff))", "border": "var(--borderColor-transparent, var(--color-switch-track-checked-border, transparent))" } }, "switchKnob": { "bg": "var(--controlKnob-bgColor-rest, var(--color-switch-knob-bg, #ffffff))", "disabledBg": "var(--controlKnob-bgColor-disabled, var(--color-switch-knob-disabled-bg, #e7ecf0))", "border": "var(--controlKnob-borderColor-rest, var(--color-switch-knob-border, #20252c))", "checked": { "bg": "var(--controlKnob-bgColor-checked, var(--color-switch-knob-checked-bg, #ffffff))", "disabledBg": "var(--controlKnob-bgColor-disabled, var(--color-switch-knob-checked-disabled-bg, #e7ecf0))", "border": "var(--controlKnob-borderColor-checked, var(--color-switch-knob-checked-border, #0349b4))" } }, "segmentedControl": { "bg": "var(--controlTrack-bgColor-rest, var(--color-segmented-control-bg, #e7ecf0))", "button": { "bg": "var(--controlKnob-bgColor-rest, var(--color-segmented-control-button-bg, #ffffff))", "hover": { "bg": "var(--controlTrack-bgColor-hover, var(--color-segmented-control-button-hover-bg, rgba(172,182,192,0.2)))" }, "active": { "bg": "var(--controlTrack-bgColor-active, var(--color-segmented-control-button-hover-active-bg, rgba(172,182,192,0.4)))" }, "selected": { "border": "var(--controlKnob-borderColor-rest, var(--color-segmented-control-button-hover-active-selected-border, #88929d))" } } }, "treeViewItem": { "chevron": { "hoverBg": "var(--control-transparent-bgColor-hover, var(--color-tree-view-item-chevron-hover-bg, #ced5dc))" }, "directory": { "fill": "var(--treeViewItem-leadingVisual-iconColor-rest, var(--color-tree-view-item-chevron-directory-fill, #368cf9))" } }, "fg": { "default": "var(--fgColor-default, var(--color-fg-default, #0e1116))", "muted": "var(--fgColor-muted, var(--color-fg-muted, #0e1116))", "subtle": "var(--fgColor-muted, var(--color-fg-subtle, #66707b))", "onEmphasis": "var(--fgColor-onEmphasis, var(--color-fg-on-emphasis, #ffffff))" }, "canvas": { "default": "var(--bgColor-default, var(--color-canvas-default, #ffffff))", "overlay": "var(--overlay-bgColor, var(--color-canvas-overlay, #ffffff))", "inset": "var(--bgColor-inset, var(--color-canvas-inset, #ffffff))", "subtle": "var(--bgColor-muted, var(--color-canvas-subtle, #e7ecf0))" }, "border": { "default": "var(--borderColor-default, var(--color-border-default, #20252c))", "muted": "var(--borderColor-muted, var(--color-border-muted, #88929d))", "subtle": "var(--borderColor-muted, var(--color-border-subtle, rgba(1,4,9,0.8)))" }, "neutral": { "emphasisPlus": "var(--bgColor-emphasis, var(--color-neutral-emphasis-plus, #0e1116))", "emphasis": "var(--bgColor-neutral-emphasis, var(--color-neutral-emphasis, #66707b))", "muted": "var(--bgColor-neutral-muted, var(--color-neutral-muted, rgba(172,182,192,0.2)))", "subtle": "var(--bgColor-neutral-muted, var(--color-neutral-subtle, #e7ecf0))" }, "accent": { "fg": "var(--fgColor-accent, var(--color-accent-fg, #0349b4))", "emphasis": "var(--bgColor-accent-emphasis, var(--color-accent-emphasis, #0349b4))", "muted": "var(--borderColor-accent-muted, var(--color-accent-muted, #368cf9))", "subtle": "var(--bgColor-accent-muted, var(--color-accent-subtle, #dff7ff))" }, "success": { "fg": "var(--fgColor-success, var(--color-success-fg, #055d20))", "emphasis": "var(--bgColor-success-emphasis, var(--color-success-emphasis, #055d20))", "muted": "var(--borderColor-success-muted, var(--color-success-muted, #26a148))", "subtle": "var(--bgColor-success-muted, var(--color-success-subtle, #d2fedb))" }, "attention": { "fg": "var(--fgColor-attention, var(--color-attention-fg, #744500))", "emphasis": "var(--bgColor-attention-emphasis, var(--color-attention-emphasis, #744500))", "muted": "var(--borderColor-attention-muted, var(--color-attention-muted, #b58407))", "subtle": "var(--bgColor-attention-muted, var(--color-attention-subtle, #fcf7be))" }, "severe": { "fg": "var(--fgColor-severe, var(--color-severe-fg, #873800))", "emphasis": "var(--bgColor-severe-emphasis, var(--color-severe-emphasis, #873800))", "muted": "var(--borderColor-severe-muted, var(--color-severe-muted, #dc6d1a))", "subtle": "var(--bgColor-severe-muted, var(--color-severe-subtle, #fff2d5))" }, "danger": { "fg": "var(--fgColor-danger, var(--color-danger-fg, #d1242f))", "emphasis": "var(--borderColor-danger-emphasis, var(--color-danger-emphasis, #a0111f))", "muted": "var(--borderColor-danger-muted, var(--color-danger-muted, #ee5a5d))", "subtle": "var(--bgColor-danger-muted, var(--color-danger-subtle, #fff0ee))" }, "open": { "fg": "var(--fgColor-open, var(--color-open-fg, #055d20))", "emphasis": "var(--bgColor-open-emphasis, var(--color-open-emphasis, #055d20))", "muted": "var(--borderColor-open-muted, var(--color-open-muted, rgba(38,161,72,0.4)))", "subtle": "var(--bgColor-open-muted, var(--color-open-subtle, #d2fedb))" }, "closed": { "fg": "var(--fgColor-closed, var(--color-closed-fg, #d1242f))", "emphasis": "var(--bgColor-closed-emphasis, var(--color-closed-emphasis, #a0111f))", "muted": "var(--borderColor-closed-muted, var(--color-closed-muted, rgba(238,90,93,0.4)))", "subtle": "var(--bgColor-closed-muted, var(--color-closed-subtle, #fff0ee))" }, "done": { "fg": "var(--fgColor-done, var(--color-done-fg, #622cbc))", "emphasis": "var(--bgColor-done-emphasis, var(--color-done-emphasis, #622cbc))", "muted": "var(--borderColor-done-muted, var(--color-done-muted, #a371f7))", "subtle": "var(--bgColor-done-muted, var(--color-done-subtle, #faf0fe))" }, "sponsors": { "fg": "var(--fgColor-sponsors, var(--color-sponsors-fg, #971368))", "emphasis": "var(--bgColor-sponsors-emphasis, var(--color-sponsors-emphasis, #971368))", "muted": "var(--borderColor-sponsors-muted, var(--color-sponsors-muted, #ed4baf))", "subtle": "var(--bgColor-sponsors-muted, var(--color-sponsors-subtle, #feeff7))" }, "primer": { "fg": { "disabled": "var(--fgColor-disabled, var(--color-primer-fg-disabled, #88929d))" }, "canvas": { "backdrop": "var(--overlay-backdrop-bgColor, var(--color-primer-fg-canvas-backdrop, rgba(1,4,9,0.5)))", "sticky": "var(--color-primer-canvas-sticky, rgba(255,255,255,0.95))" }, "border": { "active": "var(--underlineNav-borderColor-active, var(--color-primer-border-active, #ef5b48))", "contrast": "var(--borderColor-muted, var(--color-primer-border-contrast, rgba(1,4,9,0.1)))" } } }, "shadows": { "mktg": { "btn": { "shadow": { "outline": "var(--color-mktg-btn-shadow-outline, rgb(0 0 0 / 15%) 0 0 0 1px inset))", "focus": "var(--color-mktg-btn-shadow-focus, rgb(0 0 0 / 15%) 0 0 0 4px))", "hover": "var(--color-mktg-btn-shadow-hover, 0 3px 2px rgba(0, 0, 0, 0.07), 0 7px 5px rgba(0, 0, 0, 0.04), 0 12px 10px rgba(0, 0, 0, 0.03), 0 22px 18px rgba(0, 0, 0, 0.03), 0 42px 33px rgba(0, 0, 0, 0.02), 0 100px 80px rgba(0, 0, 0, 0.02)))", "hoverMuted": "var(--color-mktg-btn-shadow-hover-muted, rgb(0 0 0 / 70%) 0 0 0 2px inset))" } } }, "avatar": { "childShadow": "var(--avatar-shadow, var(--color-avatar-child-shadow, 0 0 0 2px rgba(255,255,255,0.8)))" }, "overlay": { "shadow": "var(--shadow-floating-small, var(--color-overlay-shadow, 0 1px 3px rgba(1,4,9,0.12), 0 8px 24px rgba(52,59,67,0.12)))" }, "btn": { "shadow": "var(--button-default-shadow-resting, var(--color-btn-shadow, 0 1px 0 rgba(1,4,9,0.04)))", "insetShadow": "var(--button-default-shadow-inset, var(--color-btn-inset-shadow, inset 0 1px 0 rgba(255,255,255,0.25)))", "primary": { "shadow": "var(--shadow-resting-small, var(--color-btn-primary-shadow, 0 1px 0 rgba(1,4,9,0.1)))", "insetShadow": "var(--shadow-highlight, var(--color-btn-primary-inset-shadow, inset 0 1px 0 rgba(255,255,255,0.03)))", "selectedShadow": "var(--button-primary-shadow-selected, var(--color-btn-primary-selected-shadow, inset 0 1px 0 rgba(0,35,11,0.2)))" }, "outline": { "hoverShadow": "var(--shadow-resting-small, var(--color-btn-outline-hover-shadow, 0 1px 0 rgba(1,4,9,0.1)))", "hoverInsetShadow": "var(--shadow-highlight, var(--color-btn-outline-hover-inset-shadow, inset 0 1px 0 rgba(255,255,255,0.03)))", "selectedShadow": "var(--button-outline-shadow-selected, var(--color-btn-outline-selected-shadow, inset 0 1px 0 rgba(2,26,74,0.2)))" }, "danger": { "hoverShadow": "var(--shadow-resting-small, var(--color-btn-danger-hover-shadow, 0 1px 0 rgba(1,4,9,0.1)))", "hoverInsetShadow": "var(--shadow-highlight, var(--color-btn-danger-hover-inset-shadow, inset 0 1px 0 rgba(255,255,255,0.03)))", "selectedShadow": "var(--button-danger-shadow-selected, var(--color-btn-danger-selected-shadow, inset 0 1px 0 rgba(67,0,17,0.2)))" } }, "shadow": { "small": "var(--shadow-resting-small, var(--color-shadow-small, 0 1px 0 rgba(1,4,9,0.04)))", "medium": "var(--shadow-resting-medium, var(--color-shadow-medium, 0 3px 6px rgba(136,146,157,0.15)))", "large": "var(--shadow-floating-large, var(--color-shadow-large, 0 8px 24px rgba(136,146,157,0.2)))", "extraLarge": "var(--shadow-floating-xlarge, var(--color-shadow-extra-large, 0 12px 28px rgba(136,146,157,0.3)))" }, "primer": { "shadow": { "highlight": "var(--shadow-highlight, var(--color-primer-shadow-highlight, inset 0 1px 0 rgba(255,255,255,0.25)))", "inset": "var(--shadow-inset, var(--color-primer-shadow-inset, inset 0 1px 0 rgba(206,213,220,0.2)))" } } } }, "light_colorblind": { "colors": { "canvasDefaultTransparent": "var(--bgColor-transparent, var(--color-canvas-default-transparent, rgba(255,255,255,0)))", "pageHeaderBg": "var(--page-header-bgColor, var(--color-page-header-bg, #f6f8fa))", "marketingIcon": { "primary": "var(--color-marketing-icon-primary, #218bff)", "secondary": "var(--color-marketing-icon-secondary, #54aeff)" }, "diffBlob": { "addition": { "numText": "var(--diffBlob-addition-fgColor-num, var(--color-diff-blob-addition-num-text, #24292f))", "fg": "var(--diffBlob-addition-fgColor-text, var(--color-diff-blob-addition-fg, #24292f))", "numBg": "var(--diffBlob-addition-bgColor-num, var(--color-diff-blob-addition-num-bg, rgba(84,174,255,0.4)))", "lineBg": "var(--diffBlob-addition-bgColor-line, var(--color-diff-blob-addition-line-bg, rgba(221,244,255,0.5)))", "wordBg": "var(--diffBlob-addition-bgColor-word, var(--color-diff-blob-addition-word-bg, rgba(84,174,255,0.4)))" }, "deletion": { "numText": "var(--diffBlob-deletion-fgColor-num, var(--color-diff-blob-deletion-num-text, #24292f))", "fg": "var(--diffBlob-deletion-fgColor-text, var(--color-diff-blob-deletion-fg, #24292f))", "numBg": "var(--diffBlob-deletion-bgColor-num, var(--color-diff-blob-deletion-num-bg, rgba(247,153,57,0.4)))", "lineBg": "var(--diffBlob-deletion-bgColor-line, var(--color-diff-blob-deletion-line-bg, rgba(255,245,232,0.5)))", "wordBg": "var(--diffBlob-deletion-bgColor-word, var(--color-diff-blob-deletion-word-bg, rgba(255,188,109,0.5)))" }, "hunk": { "numBg": "var(--diffBlob-hunk-bgColor-num, var(--color-diff-blob-hunk-num-bg, rgba(84,174,255,0.4)))" }, "expander": { "icon": "var(--diffBlob-expander-iconColor, var(--color-diff-blob-expander-icon, #57606a))" }, "selectedLineHighlightMixBlendMode": "var(--color-diff-blob-selected-line-highlight-mix-blend-mode, multiply)" }, "diffstat": { "deletionBorder": "var(--color-diffstat-deletion-border, rgba(27,31,36,0.15))", "additionBorder": "var(--color-diffstat-addition-border, rgba(27,31,36,0.15))", "additionBg": "var(undefined, var(--color-diffstat-addition-bg, #0969da))" }, "searchKeyword": { "hl": "var(--highlight-neutral-bgColor, var(--color-search-keyword-hl, #fff8c5))" }, "prettylights": { "syntax": { "comment": "var(--color-prettylights-syntax-comment, #57606a)", "constant": "var(--color-prettylights-syntax-constant, #0550ae)", "entity": "var(--color-prettylights-syntax-entity, #6639ba)", "storageModifierImport": "var(--color-prettylights-syntax-storage-modifier-import, #24292f)", "entityTag": "var(--color-prettylights-syntax-entity-tag, #0550ae)", "keyword": "var(--color-prettylights-syntax-keyword, #b35900)", "string": "var(--color-prettylights-syntax-string, #0a3069)", "variable": "var(--color-prettylights-syntax-variable, #8a4600)", "brackethighlighterUnmatched": "var(--color-prettylights-syntax-brackethighlighter-unmatched, #6f3800)", "invalidIllegalText": "var(--color-prettylights-syntax-invalid-illegal-text, #f6f8fa)", "invalidIllegalBg": "var(--color-prettylights-syntax-invalid-illegal-bg, #6f3800)", "carriageReturnText": "var(--color-prettylights-syntax-carriage-return-text, #f6f8fa)", "carriageReturnBg": "var(--color-prettylights-syntax-carriage-return-bg, #b35900)", "stringRegexp": "var(--color-prettylights-syntax-string-regexp, #0550ae)", "markupList": "var(--color-prettylights-syntax-markup-list, #3b2300)", "markupHeading": "var(--color-prettylights-syntax-markup-heading, #0550ae)", "markupItalic": "var(--color-prettylights-syntax-markup-italic, #24292f)", "markupBold": "var(--color-prettylights-syntax-markup-bold, #24292f)", "markupDeletedText": "var(--color-prettylights-syntax-markup-deleted-text, #6f3800)", "markupDeletedBg": "var(--color-prettylights-syntax-markup-deleted-bg, #fff5e8)", "markupInsertedText": "var(--color-prettylights-syntax-markup-inserted-text, #0550ae)", "markupInsertedBg": "var(--color-prettylights-syntax-markup-inserted-bg, #ddf4ff)", "markupChangedText": "var(--color-prettylights-syntax-markup-changed-text, #8a4600)", "markupChangedBg": "var(--color-prettylights-syntax-markup-changed-bg, #ffddb0)", "markupIgnoredText": "var(--color-prettylights-syntax-markup-ignored-text, #eaeef2)", "markupIgnoredBg": "var(--color-prettylights-syntax-markup-ignored-bg, #0550ae)", "metaDiffRange": "var(--color-prettylights-syntax-meta-diff-range, #8250df)", "brackethighlighterAngle": "var(--color-prettylights-syntax-brackethighlighter-angle, #57606a)", "sublimelinterGutterMark": "var(--color-prettylights-syntax-sublimelinter-gutter-mark, #8c959f)", "constantOtherReferenceLink": "var(--color-prettylights-syntax-constant-other-reference-link, #0a3069)" } }, "codemirror": { "text": "var(--codeMirror-fgColor, var(--color-codemirror-text, #24292f))", "bg": "var(--codeMirror-bgColor, var(--color-codemirror-bg, #ffffff))", "guttersBg": "var(--codeMirror-gutters-bgColor, var(--color-codemirror-gutters-bg, #ffffff))", "guttermarkerText": "var(--codeMirror-gutterMarker-fgColor-default, var(--color-codemirror-guttermarker-text, #ffffff))", "guttermarkerSubtleText": "var(--codeMirror-gutterMarker-fgColor-muted, var(--color-codemirror-guttermarker-subtle-text, #6e7781))", "linenumberText": "var(--codeMirror-lineNumber-fgColor, var(--color-codemirror-linenumber-text, #57606a))", "cursor": "var(--codeMirror-cursor-fgColor, var(--color-codemirror-cursor, #24292f))", "selectionBg": "var(--codeMirror-selection-bgColor, var(--color-codemirror-selection-bg, rgba(84,174,255,0.4)))", "activelineBg": "var(--codeMirror-activeline-bgColor, var(--color-codemirror-activeline-bg, rgba(234,238,242,0.5)))", "matchingbracketText": "var(--codeMirror-matchingBracket-fgColor, var(--color-codemirror-matchingbracket-text, #24292f))", "linesBg": "var(--codeMirror-lines-bgColor, var(--color-codemirror-lines-bg, #ffffff))", "syntax": { "comment": "var(--codeMirror-syntax-fgColor-comment, var(--color-codemirror-syntax-comment, #24292f))", "constant": "var(--codeMirror-syntax-fgColor-constant, var(--color-codemirror-syntax-constant, #0550ae))", "entity": "var(--codeMirror-syntax-fgColor-entity, var(--color-codemirror-syntax-entity, #8250df))", "keyword": "var(--codeMirror-syntax-fgColor-keyword, var(--color-codemirror-syntax-keyword, #b35900))", "storage": "var(--codeMirror-syntax-fgColor-storage, var(--color-codemirror-syntax-storage, #b35900))", "string": "var(--codeMirror-syntax-fgColor-string, var(--color-codemirror-syntax-string, #0a3069))", "support": "var(--codeMirror-syntax-fgColor-support, var(--color-codemirror-syntax-support, #0550ae))", "variable": "var(--codeMirror-syntax-fgColor-variable, var(--color-codemirror-syntax-variable, #8a4600))" } }, "checks": { "bg": "var(--color-checks-bg, #24292f)", "runBorderWidth": "var(--color-checks-run-border-width, 0px)", "containerBorderWidth": "var(--color-checks-container-border-width, 0px)", "textPrimary": "var(--color-checks-text-primary, #f6f8fa)", "textSecondary": "var(--color-checks-text-secondary, #8c959f)", "textLink": "var(--color-checks-text-link, #54aeff)", "btnIcon": "var(--color-checks-btn-icon, #afb8c1)", "btnHoverIcon": "var(--color-checks-btn-hover-icon, #f6f8fa)", "btnHoverBg": "var(--color-checks-btn-hover-bg, rgba(255,255,255,0.125))", "inputText": "var(--color-checks-input-text, #eaeef2)", "inputPlaceholderText": "var(--color-checks-input-placeholder-text, #8c959f)", "inputFocusText": "var(--color-checks-input-focus-text, #8c959f)", "inputBg": "var(--color-checks-input-bg, #32383f)", "inputShadow": "var(--color-checks-input-shadow, none)", "donutError": "var(--color-checks-donut-error, #dd7815)", "donutPending": "var(--color-checks-donut-pending, #bf8700)", "donutSuccess": "var(--color-checks-donut-success, #0969da)", "donutNeutral": "var(--color-checks-donut-neutral, #afb8c1)", "dropdownText": "var(--color-checks-dropdown-text, #afb8c1)", "dropdownBg": "var(--color-checks-dropdown-bg, #32383f)", "dropdownBorder": "var(--color-checks-dropdown-border, #424a53)", "dropdownShadow": "var(--color-checks-dropdown-shadow, rgba(27,31,36,0.3))", "dropdownHoverText": "var(--color-checks-dropdown-hover-text, #f6f8fa)", "dropdownHoverBg": "var(--color-checks-dropdown-hover-bg, #424a53)", "dropdownBtnHoverText": "var(--color-checks-dropdown-btn-hover-text, #f6f8fa)", "dropdownBtnHoverBg": "var(--color-checks-dropdown-btn-hover-bg, #32383f)", "scrollbarThumbBg": "var(--color-checks-scrollbar-thumb-bg, #57606a)", "headerLabelText": "var(--color-checks-header-label-text, #d0d7de)", "headerLabelOpenText": "var(--color-checks-header-label-open-text, #f6f8fa)", "headerBorder": "var(--color-checks-header-border, #32383f)", "headerIcon": "var(--color-checks-header-icon, #8c959f)", "lineText": "var(--color-checks-line-text, #d0d7de)", "lineNumText": "var(--color-checks-line-num-text, rgba(140,149,159,0.75))", "lineTimestampText": "var(--color-checks-line-timestamp-text, #8c959f)", "lineHoverBg": "var(--color-checks-line-hover-bg, #32383f)", "lineSelectedBg": "var(--color-checks-line-selected-bg, rgba(33,139,255,0.15))", "lineSelectedNumText": "var(--color-checks-line-selected-num-text, #54aeff)", "lineDtFmText": "var(--color-checks-line-dt-fm-text, #24292f)", "lineDtFmBg": "var(--color-checks-line-dt-fm-bg, #9a6700)", "gateBg": "var(--color-checks-gate-bg, rgba(125,78,0,0.15))", "gateText": "var(--color-checks-gate-text, #d0d7de)", "gateWaitingText": "var(--color-checks-gate-waiting-text, #d4a72c)", "stepHeaderOpenBg": "var(--color-checks-step-header-open-bg, #32383f)", "stepErrorText": "var(--color-checks-step-error-text, #f79939)", "stepWarningText": "var(--color-checks-step-warning-text, #d4a72c)", "loglineText": "var(--color-checks-logline-text, #8c959f)", "loglineNumText": "var(--color-checks-logline-num-text, rgba(140,149,159,0.75))", "loglineDebugText": "var(--color-checks-logline-debug-text, #c297ff)", "loglineErrorText": "var(--color-checks-logline-error-text, #d0d7de)", "loglineErrorNumText": "var(--color-checks-logline-error-num-text, #f79939)", "loglineErrorBg": "var(--color-checks-logline-error-bg, rgba(138,70,0,0.15))", "loglineWarningText": "var(--color-checks-logline-warning-text, #d0d7de)", "loglineWarningNumText": "var(--color-checks-logline-warning-num-text, #d4a72c)", "loglineWarningBg": "var(--color-checks-logline-warning-bg, rgba(125,78,0,0.15))", "loglineCommandText": "var(--color-checks-logline-command-text, #54aeff)", "loglineSectionText": "var(--color-checks-logline-section-text, #54aeff)", "ansi": { "black": "var(--color-checks-ansi-black, #24292f)", "blackBright": "var(--color-checks-ansi-black-bright, #32383f)", "white": "var(--color-checks-ansi-white, #d0d7de)", "whiteBright": "var(--color-checks-ansi-white-bright, #d0d7de)", "gray": "var(--color-checks-ansi-gray, #8c959f)", "red": "var(--color-checks-ansi-red, #f79939)", "redBright": "var(--color-checks-ansi-red-bright, #ffbc6d)", "green": "var(--color-checks-ansi-green, #54aeff)", "greenBright": "var(--color-checks-ansi-green-bright, #80ccff)", "yellow": "var(--color-checks-ansi-yellow, #d4a72c)", "yellowBright": "var(--color-checks-ansi-yellow-bright, #eac54f)", "blue": "var(--color-checks-ansi-blue, #54aeff)", "blueBright": "var(--color-checks-ansi-blue-bright, #80ccff)", "magenta": "var(--color-checks-ansi-magenta, #c297ff)", "magentaBright": "var(--color-checks-ansi-magenta-bright, #d8b9ff)", "cyan": "var(--color-checks-ansi-cyan, #76e3ea)", "cyanBright": "var(--color-checks-ansi-cyan-bright, #b3f0ff)" } }, "project": { "headerBg": "var(--color-project-header-bg, #24292f)", "sidebarBg": "var(--color-project-sidebar-bg, #ffffff)", "gradientIn": "var(--color-project-gradient-in, #ffffff)", "gradientOut": "var(--color-project-gradient-out, rgba(255,255,255,0))" }, "mktg": { "btn": { "bg": "var(--color-mktg-btn-bg, #1b1f23))" } }, "control": { "borderColor": { "emphasis": "var(--control-borderColor-emphasis, var(--color-control-border-color-emphasis, #858F99))" } }, "avatar": { "bg": "var(--avatar-bgColor, var(--color-avatar-bg, #ffffff))", "border": "var(--avatar-borderColor, var(--color-avatar-border, rgba(27,31,36,0.15)))", "stackFade": "var(--avatarStack-fade-bgColor-default, var(--color-avatar-stack-fade, #afb8c1))", "stackFadeMore": "var(--avatarStack-fade-bgColor-muted, var(--color-avatar-stack-fade-more, #d0d7de))" }, "topicTag": { "border": "var(--topicTag-borderColor, var(--color-topic-tag-border, transparent))" }, "counter": { "border": "var(--counter-borderColor, var(--color-counter-border, transparent))" }, "selectMenu": { "backdropBorder": "var(--selectMenu-borderColor, var(--color-select-menu-backdrop-border, transparent))", "tapHighlight": "var(--control-bgColor-active, var(--color-select-menu-tap-highlight, rgba(175,184,193,0.5)))", "tapFocusBg": "var(--selectMenu-bgColor-active, var(--color-select-menu-tap-focus-bg, #b6e3ff))" }, "overlay": { "backdrop": "var(--overlay-backdrop-bgColor, var(--color-overlay-backdrop, rgba(140,149,159,0.2)))" }, "header": { "text": "var(--header-fgColor-default, var(--color-header-text, rgba(255,255,255,0.7)))", "bg": "var(--header-bgColor, var(--color-header-bg, #24292f))", "divider": "var(--header-borderColor-divider, var(--color-header-divider, #57606a))", "logo": "var(--header-fgColor-logo, var(--color-header-logo, #ffffff))" }, "headerSearch": { "bg": "var(--headerSearch-bgColor, var(--color-header-search-bg, #24292f))", "border": "var(--headerSearch-borderColor, var(--color-header-search-border, #57606a))" }, "sidenav": { "selectedBg": "var(--sideNav-bgColor-selected, var(--color-sidenav-selected-bg, #ffffff))" }, "menu": { "bgActive": "var(--menu-bgColor-active, var(--color-menu-bg-active, transparent))" }, "input": { "disabledBg": "var(--control-bgColor-disabled, var(--color-input-disabled-bg, rgba(175,184,193,0.2)))" }, "timeline": { "badgeBg": "var(--timelineBadge-bgColor, var(--color-timeline-badge-bg, #eaeef2))" }, "ansi": { "black": "var(--color-ansi-black, #24292f)", "blackBright": "var(--color-ansi-black-bright, #57606a)", "white": "var(--color-ansi-white, #6e7781)", "whiteBright": "var(--color-ansi-white-bright, #8c959f)", "gray": "var(--color-ansi-gray, #6e7781)", "red": "var(--color-ansi-red, #b35900)", "redBright": "var(--color-ansi-red-bright, #8a4600)", "green": "var(--color-ansi-green, #0550ae)", "greenBright": "var(--color-ansi-green-bright, #0969da)", "yellow": "var(--color-ansi-yellow, #4d2d00)", "yellowBright": "var(--color-ansi-yellow-bright, #633c01)", "blue": "var(--color-ansi-blue, #0969da)", "blueBright": "var(--color-ansi-blue-bright, #218bff)", "magenta": "var(--color-ansi-magenta, #8250df)", "magentaBright": "var(--color-ansi-magenta-bright, #a475f9)", "cyan": "var(--color-ansi-cyan, #1b7c83)", "cyanBright": "var(--color-ansi-cyan-bright, #3192aa)" }, "btn": { "text": "var(--button-default-fgColor-rest, var(--color-btn-text, #24292f))", "bg": "var(--button-default-bgColor-rest, var(--color-btn-bg, #f6f8fa))", "border": "var(--button-default-borderColor-rest, var(--color-btn-border, rgba(27,31,36,0.15)))", "hoverBg": "var(--button-default-bgColor-hover, var(--color-btn-hover-bg, #f3f4f6))", "hoverBorder": "var(--button-default-borderColor-hover, var(--color-btn-hover-border, rgba(27,31,36,0.15)))", "activeBg": "var(--button-default-bgColor-active, var(--color-btn-active-bg, hsla(220,14%,93%,1)))", "activeBorder": "var(--button-default-borderColor-active, var(--color-btn-active-border, rgba(27,31,36,0.15)))", "selectedBg": "var(--button-default-bgColor-selected, var(--color-btn-selected-bg, hsla(220,14%,94%,1)))", "counterBg": "var(--buttonCounter-default-bgColor-rest, var(--color-btn-counter-bg, rgba(27,31,36,0.08)))", "primary": { "text": "var(--button-primary-fgColor-rest, var(--color-btn-primary-text, #ffffff))", "bg": "var(--button-primary-bgColor-rest, var(--color-btn-primary-bg, #0969da))", "border": "var(--button-primary-borderColor-rest, var(--color-btn-primary-border, rgba(27,31,36,0.15)))", "hoverBg": "var(--button-primary-bgColor-hover, var(--color-btn-primary-hover-bg, #0969da))", "hoverBorder": "var(--button-primary-borderColor-hover, var(--color-btn-primary-hover-border, rgba(27,31,36,0.15)))", "selectedBg": "var(--button-primary-bgColor-active, var(--color-btn-primary-selected-bg, hsla(212,92%,43%,1)))", "disabledText": "var(--button-primary-fgColor-disabled, var(--color-btn-primary-disabled-text, rgba(255,255,255,0.8)))", "disabledBg": "var(--button-primary-bgColor-disabled, var(--color-btn-primary-disabled-bg, #80ccff))", "disabledBorder": "var(--button-primary-borderColor-disabled, var(--color-btn-primary-disabled-border, rgba(27,31,36,0.15)))", "icon": "var(--button-primary-iconColor-rest, var(--color-btn-primary-icon, rgba(255,255,255,0.8)))", "counterBg": "var(--buttonCounter-primary-bgColor-rest, var(--color-btn-primary-counter-bg, rgba(0,33,85,0.2)))" }, "outline": { "text": "var(--button-outline-fgColor-rest, var(--color-btn-outline-text, #0969da))", "hoverText": "var(--button-outline-fgColor-hover, var(--color-btn-outline-hover-text, #ffffff))", "hoverBg": "var(--button-outline-bgColor-hover, var(--color-btn-outline-hover-bg, #0969da))", "hoverBorder": "var(--button-outline-borderColor-hover, var(--color-btn-outline-hover-border, rgba(27,31,36,0.15)))", "hoverCounterBg": "var(--buttonCounter-outline-bgColor-hover, var(--color-btn-outline-hover-counter-bg, rgba(255,255,255,0.2)))", "selectedText": "var(--button-outline-fgColor-active, var(--color-btn-outline-selected-text, #ffffff))", "selectedBg": "var(--button-outline-bgColor-active, var(--color-btn-outline-selected-bg, hsla(212,92%,42%,1)))", "selectedBorder": "var(--button-outline-borderColor-active, var(--color-btn-outline-selected-border, rgba(27,31,36,0.15)))", "disabledText": "var(--button-outline-fgColor-disabled, var(--color-btn-outline-disabled-text, rgba(9,105,218,0.5)))", "disabledBg": "var(--button-outline-bgColor-disabled, var(--color-btn-outline-disabled-bg, #f6f8fa))", "disabledCounterBg": "var(--buttonCounter-outline-bgColor-disabled, var(--color-btn-outline-disabled-counter-bg, rgba(9,105,218,0.05)))", "counterBg": "var(--buttonCounter-outline-bgColor-rest, var(--color-btn-outline-counter-bg, #0969da1a))", "counterFg": "var(--buttonCounter-outline-fgColor-rest, var(--color-btn-outline-counter-fg, #0550ae))", "hoverCounterFg": "var(--buttonCounter-outline-fgColor-hover, var(--color-btn-outline-hover-counter-fg, #ffffff))", "disabledCounterFg": "var(--buttonCounter-outline-fgColor-disabled, var(--color-btn-outline-disabled-counter-fg, rgba(9,105,218,0.5)))" }, "danger": { "text": "var(--button-danger-fgColor-rest, var(--color-btn-danger-text, #b35900))", "hoverText": "var(--button-danger-fgColor-hover, var(--color-btn-danger-hover-text, #ffffff))", "hoverBg": "var(--button-danger-bgColor-hover, var(--color-btn-danger-hover-bg, #8a4600))", "hoverBorder": "var(--button-danger-borderColor-hover, var(--color-btn-danger-hover-border, rgba(27,31,36,0.15)))", "hoverCounterBg": "var(--buttonCounter-danger-bgColor-hover, var(--color-btn-danger-hover-counter-bg, rgba(255,255,255,0.2)))", "selectedText": "var(--button-danger-fgColor-active, var(--color-btn-danger-selected-text, #ffffff))", "selectedBg": "var(--button-danger-bgColor-active, var(--color-btn-danger-selected-bg, hsla(30,100%,32%,1)))", "selectedBorder": "var(--button-danger-borderColor-active, var(--color-btn-danger-selected-border, rgba(27,31,36,0.15)))", "disabledText": "var(--button-danger-fgColor-disabled, var(--color-btn-danger-disabled-text, rgba(179,89,0,0.5)))", "disabledBg": "var(--button-danger-bgColor-disabled, var(--color-btn-danger-disabled-bg, #f6f8fa))", "disabledCounterBg": "var(--buttonCounter-danger-bgColor-disabled, var(--color-btn-danger-disabled-counter-bg, rgba(179,89,0,0.05)))", "counterBg": "var(--buttonCounter-danger-bgColor-rest, var(--color-btn-danger-counter-bg, rgba(179,89,0,0.1)))", "icon": "var(--button-danger-iconColor-rest, var(--color-btn-danger-icon, #b35900))", "hoverIcon": "var(--button-danger-iconColor-hover, var(--color-btn-danger-hover-icon, #ffffff))", "counterFg": "var(--buttonCounter-danger-fgColor-rest, var(--color-btn-danger-counter-fg, #8a4600))", "hoverCounterFg": "var(--buttonCounter-danger-fgColor-hover, var(--color-btn-danger-hover-counter-fg, #ffffff))", "disabledCounterFg": "var(--buttonCounter-danger-fgColor-disabled, var(--color-btn-danger-disabled-counter-fg, rgba(179,89,0,0.5)))" }, "inactive": { "bg": "var(--button-inactive-bgColor-rest, var(--color-btn-inactive-bg, #eaeef2))", "text": "var(--button-inactive-fgColor-rest, var(--color-btn-inactive-text, #57606a))" } }, "underlinenav": { "icon": "var(--underlineNav-iconColor-rest, var(--color-underlinenav-icon, #6e7781))", "borderHover": "var(--underlineNav-borderColor-hover, var(--color-underlinenav-border-hover, rgba(175,184,193,0.2)))" }, "actionListItem": { "inlineDivider": "var(--borderColor-muted, var(--color-action-list-item-inline-divider, rgba(208,215,222,0.48)))", "default": { "hoverBg": "var(--control-transparent-bgColor-hover, var(--color-action-list-item-default-hover-bg, rgba(208,215,222,0.32)))", "hoverBorder": "var(--control-transparent-borderColor-hover, var(--color-action-list-item-default-hover-border, transparent))", "activeBg": "var(--control-transparent-bgColor-active, var(--color-action-list-item-default-active-bg, rgba(208,215,222,0.48)))", "activeBorder": "var(--control-transparent-borderColor-active, var(--color-action-list-item-default-active-border, transparent))", "selectedBg": "var(--control-transparent-bgColor-selected, var(--color-action-list-item-default-selected-bg, rgba(208,215,222,0.24)))" }, "danger": { "hoverBg": "var(--control-danger-bgColor-hover, var(--color-action-list-item-default-danger-hover-bg, rgba(255,245,232,0.64)))", "activeBg": "var(--control-danger-bgColor-active, var(--color-action-list-item-default-danger-active-bg, #fff5e8))", "hoverText": "var(--control-danger-fgColor-hover, var(--color-action-list-item-default-danger-hover-text, #b35900))" } }, "switchTrack": { "bg": "var(--controlTrack-bgColor-rest, var(--color-switch-track-bg, #eaeef2))", "hoverBg": "var(--controlTrack-bgColor-hover, var(--color-switch-track-hover-bg, hsla(210,24%,90%,1)))", "activeBg": "var(--controlTrack-bgColor-active, var(--color-switch-track-active-bg, hsla(210,24%,88%,1)))", "disabledBg": "var(--controlTrack-bgColor-disabled, var(--color-switch-track-disabled-bg, #8c959f))", "fg": "var(--controlTrack-fgColor-rest, var(--color-switch-track-fg, #57606a))", "disabledFg": "var(--controlTrack-fgColor-disabled, var(--color-switch-track-disabled-fg, #ffffff))", "border": "var(--controlTrack-borderColor-rest, var(--color-switch-track-border, transparent))", "checked": { "bg": "var(--control-checked-bgColor-rest, var(--color-switch-track-checked-bg, #0969da))", "hoverBg": "var(--control-checked-bgColor-hover, var(--color-switch-track-checked-hover-bg, #0860CA))", "activeBg": "var(--control-checked-bgColor-active, var(--color-switch-track-checked-active-bg, #0757BA))", "fg": "var(--control-checked-fgColor-rest, var(--color-switch-track-checked-fg, #ffffff))", "disabledFg": "var(--control-checked-fgColor-disabled, var(--color-switch-track-checked-disabled-fg, #ffffff))", "border": "var(--borderColor-transparent, var(--color-switch-track-checked-border, transparent))" } }, "switchKnob": { "bg": "var(--controlKnob-bgColor-rest, var(--color-switch-knob-bg, #ffffff))", "disabledBg": "var(--controlKnob-bgColor-disabled, var(--color-switch-knob-disabled-bg, #f6f8fa))", "border": "var(--controlKnob-borderColor-rest, var(--color-switch-knob-border, #858F99))", "checked": { "bg": "var(--controlKnob-bgColor-checked, var(--color-switch-knob-checked-bg, #ffffff))", "disabledBg": "var(--controlKnob-bgColor-disabled, var(--color-switch-knob-checked-disabled-bg, #f6f8fa))", "border": "var(--controlKnob-borderColor-checked, var(--color-switch-knob-checked-border, #0969da))" } }, "segmentedControl": { "bg": "var(--controlTrack-bgColor-rest, var(--color-segmented-control-bg, #eaeef2))", "button": { "bg": "var(--controlKnob-bgColor-rest, var(--color-segmented-control-button-bg, #ffffff))", "hover": { "bg": "var(--controlTrack-bgColor-hover, var(--color-segmented-control-button-hover-bg, rgba(175,184,193,0.2)))" }, "active": { "bg": "var(--controlTrack-bgColor-active, var(--color-segmented-control-button-hover-active-bg, rgba(175,184,193,0.4)))" }, "selected": { "border": "var(--controlKnob-borderColor-rest, var(--color-segmented-control-button-hover-active-selected-border, #8c959f))" } } }, "treeViewItem": { "chevron": { "hoverBg": "var(--control-transparent-bgColor-hover, var(--color-tree-view-item-chevron-hover-bg, rgba(208,215,222,0.32)))" }, "directory": { "fill": "var(--treeViewItem-leadingVisual-iconColor-rest, var(--color-tree-view-item-chevron-directory-fill, #54aeff))" } }, "fg": { "default": "var(--fgColor-default, var(--color-fg-default, #24292f))", "muted": "var(--fgColor-muted, var(--color-fg-muted, #57606a))", "subtle": "var(--fgColor-muted, var(--color-fg-subtle, #6e7781))", "onEmphasis": "var(--fgColor-onEmphasis, var(--color-fg-on-emphasis, #ffffff))" }, "canvas": { "default": "var(--bgColor-default, var(--color-canvas-default, #ffffff))", "overlay": "var(--overlay-bgColor, var(--color-canvas-overlay, #ffffff))", "inset": "var(--bgColor-inset, var(--color-canvas-inset, #f6f8fa))", "subtle": "var(--bgColor-muted, var(--color-canvas-subtle, #f6f8fa))" }, "border": { "default": "var(--borderColor-default, var(--color-border-default, #d0d7de))", "muted": "var(--borderColor-muted, var(--color-border-muted, hsla(210,18%,87%,1)))", "subtle": "var(--borderColor-muted, var(--color-border-subtle, rgba(27,31,36,0.15)))" }, "neutral": { "emphasisPlus": "var(--bgColor-emphasis, var(--color-neutral-emphasis-plus, #24292f))", "emphasis": "var(--bgColor-neutral-emphasis, var(--color-neutral-emphasis, #6e7781))", "muted": "var(--bgColor-neutral-muted, var(--color-neutral-muted, rgba(175,184,193,0.2)))", "subtle": "var(--bgColor-neutral-muted, var(--color-neutral-subtle, rgba(234,238,242,0.5)))" }, "accent": { "fg": "var(--fgColor-accent, var(--color-accent-fg, #0969da))", "emphasis": "var(--bgColor-accent-emphasis, var(--color-accent-emphasis, #0969da))", "muted": "var(--borderColor-accent-muted, var(--color-accent-muted, rgba(84,174,255,0.4)))", "subtle": "var(--bgColor-accent-muted, var(--color-accent-subtle, #ddf4ff))" }, "success": { "fg": "var(--fgColor-success, var(--color-success-fg, #0969da))", "emphasis": "var(--bgColor-success-emphasis, var(--color-success-emphasis, #0969da))", "muted": "var(--borderColor-success-muted, var(--color-success-muted, rgba(84,174,255,0.4)))", "subtle": "var(--bgColor-success-muted, var(--color-success-subtle, #ddf4ff))" }, "attention": { "fg": "var(--fgColor-attention, var(--color-attention-fg, #9a6700))", "emphasis": "var(--bgColor-attention-emphasis, var(--color-attention-emphasis, #9a6700))", "muted": "var(--borderColor-attention-muted, var(--color-attention-muted, rgba(212,167,44,0.4)))", "subtle": "var(--bgColor-attention-muted, var(--color-attention-subtle, #fff8c5))" }, "severe": { "fg": "var(--fgColor-severe, var(--color-severe-fg, #b35900))", "emphasis": "var(--bgColor-severe-emphasis, var(--color-severe-emphasis, #b35900))", "muted": "var(--borderColor-severe-muted, var(--color-severe-muted, rgba(247,153,57,0.4)))", "subtle": "var(--bgColor-severe-muted, var(--color-severe-subtle, #fff5e8))" }, "danger": { "fg": "var(--fgColor-danger, var(--color-danger-fg, #b35900))", "emphasis": "var(--borderColor-danger-emphasis, var(--color-danger-emphasis, #b35900))", "muted": "var(--borderColor-danger-muted, var(--color-danger-muted, rgba(247,153,57,0.4)))", "subtle": "var(--bgColor-danger-muted, var(--color-danger-subtle, #fff5e8))" }, "open": { "fg": "var(--fgColor-open, var(--color-open-fg, #b35900))", "emphasis": "var(--bgColor-open-emphasis, var(--color-open-emphasis, #dd7815))", "muted": "var(--borderColor-open-muted, var(--color-open-muted, rgba(247,153,57,0.4)))", "subtle": "var(--bgColor-open-muted, var(--color-open-subtle, #fff5e8))" }, "closed": { "fg": "var(--fgColor-closed, var(--color-closed-fg, #6e7781))", "emphasis": "var(--bgColor-closed-emphasis, var(--color-closed-emphasis, #6e7781))", "muted": "var(--borderColor-closed-muted, var(--color-closed-muted, rgba(175,184,193,0.4)))", "subtle": "var(--bgColor-closed-muted, var(--color-closed-subtle, #f6f8fa))" }, "done": { "fg": "var(--fgColor-done, var(--color-done-fg, #8250df))", "emphasis": "var(--bgColor-done-emphasis, var(--color-done-emphasis, #8250df))", "muted": "var(--borderColor-done-muted, var(--color-done-muted, rgba(194,151,255,0.4)))", "subtle": "var(--bgColor-done-muted, var(--color-done-subtle, #fbefff))" }, "sponsors": { "fg": "var(--fgColor-sponsors, var(--color-sponsors-fg, #bf3989))", "emphasis": "var(--bgColor-sponsors-emphasis, var(--color-sponsors-emphasis, #bf3989))", "muted": "var(--borderColor-sponsors-muted, var(--color-sponsors-muted, rgba(255,128,200,0.4)))", "subtle": "var(--bgColor-sponsors-muted, var(--color-sponsors-subtle, #ffeff7))" }, "primer": { "fg": { "disabled": "var(--fgColor-disabled, var(--color-primer-fg-disabled, #8c959f))" }, "canvas": { "backdrop": "var(--overlay-backdrop-bgColor, var(--color-primer-fg-canvas-backdrop, rgba(27,31,36,0.5)))", "sticky": "var(--color-primer-canvas-sticky, rgba(255,255,255,0.95))" }, "border": { "active": "var(--underlineNav-borderColor-active, var(--color-primer-border-active, #fd8c73))", "contrast": "var(--borderColor-muted, var(--color-primer-border-contrast, rgba(27,31,36,0.1)))" } } }, "shadows": { "mktg": { "btn": { "shadow": { "outline": "var(--color-mktg-btn-shadow-outline, rgb(0 0 0 / 15%) 0 0 0 1px inset))", "focus": "var(--color-mktg-btn-shadow-focus, rgb(0 0 0 / 15%) 0 0 0 4px))", "hover": "var(--color-mktg-btn-shadow-hover, 0 3px 2px rgba(0, 0, 0, 0.07), 0 7px 5px rgba(0, 0, 0, 0.04), 0 12px 10px rgba(0, 0, 0, 0.03), 0 22px 18px rgba(0, 0, 0, 0.03), 0 42px 33px rgba(0, 0, 0, 0.02), 0 100px 80px rgba(0, 0, 0, 0.02)))", "hoverMuted": "var(--color-mktg-btn-shadow-hover-muted, rgb(0 0 0 / 70%) 0 0 0 2px inset))" } } }, "avatar": { "childShadow": "var(--avatar-shadow, var(--color-avatar-child-shadow, 0 0 0 2px rgba(255,255,255,0.8)))" }, "overlay": { "shadow": "var(--shadow-floating-small, var(--color-overlay-shadow, 0 1px 3px rgba(27,31,36,0.12), 0 8px 24px rgba(66,74,83,0.12)))" }, "btn": { "shadow": "var(--button-default-shadow-resting, var(--color-btn-shadow, 0 1px 0 rgba(27,31,36,0.04)))", "insetShadow": "var(--button-default-shadow-inset, var(--color-btn-inset-shadow, inset 0 1px 0 rgba(255,255,255,0.25)))", "primary": { "shadow": "var(--shadow-resting-small, var(--color-btn-primary-shadow, 0 1px 0 rgba(27,31,36,0.1)))", "insetShadow": "var(--shadow-highlight, var(--color-btn-primary-inset-shadow, inset 0 1px 0 rgba(255,255,255,0.03)))", "selectedShadow": "var(--button-primary-shadow-selected, var(--color-btn-primary-selected-shadow, inset 0 1px 0 rgba(0,33,85,0.2)))" }, "outline": { "hoverShadow": "var(--shadow-resting-small, var(--color-btn-outline-hover-shadow, 0 1px 0 rgba(27,31,36,0.1)))", "hoverInsetShadow": "var(--shadow-highlight, var(--color-btn-outline-hover-inset-shadow, inset 0 1px 0 rgba(255,255,255,0.03)))", "selectedShadow": "var(--button-outline-shadow-selected, var(--color-btn-outline-selected-shadow, inset 0 1px 0 rgba(0,33,85,0.2)))" }, "danger": { "hoverShadow": "var(--shadow-resting-small, var(--color-btn-danger-hover-shadow, 0 1px 0 rgba(27,31,36,0.1)))", "hoverInsetShadow": "var(--shadow-highlight, var(--color-btn-danger-hover-inset-shadow, inset 0 1px 0 rgba(255,255,255,0.03)))", "selectedShadow": "var(--button-danger-shadow-selected, var(--color-btn-danger-selected-shadow, inset 0 1px 0 rgba(65,32,0,0.2)))" } }, "shadow": { "small": "var(--shadow-resting-small, var(--color-shadow-small, 0 1px 0 rgba(27,31,36,0.04)))", "medium": "var(--shadow-resting-medium, var(--color-shadow-medium, 0 3px 6px rgba(140,149,159,0.15)))", "large": "var(--shadow-floating-large, var(--color-shadow-large, 0 8px 24px rgba(140,149,159,0.2)))", "extraLarge": "var(--shadow-floating-xlarge, var(--color-shadow-extra-large, 0 12px 28px rgba(140,149,159,0.3)))" }, "primer": { "shadow": { "highlight": "var(--shadow-highlight, var(--color-primer-shadow-highlight, inset 0 1px 0 rgba(255,255,255,0.25)))", "inset": "var(--shadow-inset, var(--color-primer-shadow-inset, inset 0 1px 0 rgba(208,215,222,0.2)))" } } } }, "light_tritanopia": { "colors": { "canvasDefaultTransparent": "var(--bgColor-transparent, var(--color-canvas-default-transparent, rgba(255,255,255,0)))", "pageHeaderBg": "var(--page-header-bgColor, var(--color-page-header-bg, #f6f8fa))", "marketingIcon": { "primary": "var(--color-marketing-icon-primary, #218bff)", "secondary": "var(--color-marketing-icon-secondary, #54aeff)" }, "diffBlob": { "addition": { "numText": "var(--diffBlob-addition-fgColor-num, var(--color-diff-blob-addition-num-text, #24292f))", "fg": "var(--diffBlob-addition-fgColor-text, var(--color-diff-blob-addition-fg, #24292f))", "numBg": "var(--diffBlob-addition-bgColor-num, var(--color-diff-blob-addition-num-bg, rgba(84,174,255,0.4)))", "lineBg": "var(--diffBlob-addition-bgColor-line, var(--color-diff-blob-addition-line-bg, rgba(221,244,255,0.5)))", "wordBg": "var(--diffBlob-addition-bgColor-word, var(--color-diff-blob-addition-word-bg, rgba(84,174,255,0.4)))" }, "deletion": { "numText": "var(--diffBlob-deletion-fgColor-num, var(--color-diff-blob-deletion-num-text, #24292f))", "fg": "var(--diffBlob-deletion-fgColor-text, var(--color-diff-blob-deletion-fg, #24292f))", "numBg": "var(--diffBlob-deletion-bgColor-num, var(--color-diff-blob-deletion-num-bg, rgba(255,129,130,0.4)))", "lineBg": "var(--diffBlob-deletion-bgColor-line, var(--color-diff-blob-deletion-line-bg, rgba(255,235,233,0.5)))", "wordBg": "var(--diffBlob-deletion-bgColor-word, var(--color-diff-blob-deletion-word-bg, rgba(255,171,168,0.5)))" }, "hunk": { "numBg": "var(--diffBlob-hunk-bgColor-num, var(--color-diff-blob-hunk-num-bg, rgba(84,174,255,0.4)))" }, "expander": { "icon": "var(--diffBlob-expander-iconColor, var(--color-diff-blob-expander-icon, #57606a))" }, "selectedLineHighlightMixBlendMode": "var(--color-diff-blob-selected-line-highlight-mix-blend-mode, multiply)" }, "diffstat": { "deletionBorder": "var(--color-diffstat-deletion-border, rgba(27,31,36,0.15))", "additionBorder": "var(--color-diffstat-addition-border, rgba(27,31,36,0.15))", "additionBg": "var(undefined, var(--color-diffstat-addition-bg, #0969da))" }, "searchKeyword": { "hl": "var(--highlight-neutral-bgColor, var(--color-search-keyword-hl, #fff8c5))" }, "prettylights": { "syntax": { "comment": "var(--color-prettylights-syntax-comment, #57606a)", "constant": "var(--color-prettylights-syntax-constant, #0550ae)", "entity": "var(--color-prettylights-syntax-entity, #6639ba)", "storageModifierImport": "var(--color-prettylights-syntax-storage-modifier-import, #24292f)", "entityTag": "var(--color-prettylights-syntax-entity-tag, #0550ae)", "keyword": "var(--color-prettylights-syntax-keyword, #cf222e)", "string": "var(--color-prettylights-syntax-string, #0a3069)", "variable": "var(--color-prettylights-syntax-variable, #a40e26)", "brackethighlighterUnmatched": "var(--color-prettylights-syntax-brackethighlighter-unmatched, #82071e)", "invalidIllegalText": "var(--color-prettylights-syntax-invalid-illegal-text, #f6f8fa)", "invalidIllegalBg": "var(--color-prettylights-syntax-invalid-illegal-bg, #82071e)", "carriageReturnText": "var(--color-prettylights-syntax-carriage-return-text, #f6f8fa)", "carriageReturnBg": "var(--color-prettylights-syntax-carriage-return-bg, #cf222e)", "stringRegexp": "var(--color-prettylights-syntax-string-regexp, #0550ae)", "markupList": "var(--color-prettylights-syntax-markup-list, #3b2300)", "markupHeading": "var(--color-prettylights-syntax-markup-heading, #0550ae)", "markupItalic": "var(--color-prettylights-syntax-markup-italic, #24292f)", "markupBold": "var(--color-prettylights-syntax-markup-bold, #24292f)", "markupDeletedText": "var(--color-prettylights-syntax-markup-deleted-text, #82071e)", "markupDeletedBg": "var(--color-prettylights-syntax-markup-deleted-bg, #ffebe9)", "markupInsertedText": "var(--color-prettylights-syntax-markup-inserted-text, #0550ae)", "markupInsertedBg": "var(--color-prettylights-syntax-markup-inserted-bg, #ddf4ff)", "markupChangedText": "var(--color-prettylights-syntax-markup-changed-text, #a40e26)", "markupChangedBg": "var(--color-prettylights-syntax-markup-changed-bg, #ffcecb)", "markupIgnoredText": "var(--color-prettylights-syntax-markup-ignored-text, #eaeef2)", "markupIgnoredBg": "var(--color-prettylights-syntax-markup-ignored-bg, #0550ae)", "metaDiffRange": "var(--color-prettylights-syntax-meta-diff-range, #8250df)", "brackethighlighterAngle": "var(--color-prettylights-syntax-brackethighlighter-angle, #57606a)", "sublimelinterGutterMark": "var(--color-prettylights-syntax-sublimelinter-gutter-mark, #8c959f)", "constantOtherReferenceLink": "var(--color-prettylights-syntax-constant-other-reference-link, #0a3069)" } }, "codemirror": { "text": "var(--codeMirror-fgColor, var(--color-codemirror-text, #24292f))", "bg": "var(--codeMirror-bgColor, var(--color-codemirror-bg, #ffffff))", "guttersBg": "var(--codeMirror-gutters-bgColor, var(--color-codemirror-gutters-bg, #ffffff))", "guttermarkerText": "var(--codeMirror-gutterMarker-fgColor-default, var(--color-codemirror-guttermarker-text, #ffffff))", "guttermarkerSubtleText": "var(--codeMirror-gutterMarker-fgColor-muted, var(--color-codemirror-guttermarker-subtle-text, #6e7781))", "linenumberText": "var(--codeMirror-lineNumber-fgColor, var(--color-codemirror-linenumber-text, #57606a))", "cursor": "var(--codeMirror-cursor-fgColor, var(--color-codemirror-cursor, #24292f))", "selectionBg": "var(--codeMirror-selection-bgColor, var(--color-codemirror-selection-bg, rgba(84,174,255,0.4)))", "activelineBg": "var(--codeMirror-activeline-bgColor, var(--color-codemirror-activeline-bg, rgba(234,238,242,0.5)))", "matchingbracketText": "var(--codeMirror-matchingBracket-fgColor, var(--color-codemirror-matchingbracket-text, #24292f))", "linesBg": "var(--codeMirror-lines-bgColor, var(--color-codemirror-lines-bg, #ffffff))", "syntax": { "comment": "var(--codeMirror-syntax-fgColor-comment, var(--color-codemirror-syntax-comment, #24292f))", "constant": "var(--codeMirror-syntax-fgColor-constant, var(--color-codemirror-syntax-constant, #0550ae))", "entity": "var(--codeMirror-syntax-fgColor-entity, var(--color-codemirror-syntax-entity, #8250df))", "keyword": "var(--codeMirror-syntax-fgColor-keyword, var(--color-codemirror-syntax-keyword, #cf222e))", "storage": "var(--codeMirror-syntax-fgColor-storage, var(--color-codemirror-syntax-storage, #cf222e))", "string": "var(--codeMirror-syntax-fgColor-string, var(--color-codemirror-syntax-string, #0a3069))", "support": "var(--codeMirror-syntax-fgColor-support, var(--color-codemirror-syntax-support, #0550ae))", "variable": "var(--codeMirror-syntax-fgColor-variable, var(--color-codemirror-syntax-variable, #a40e26))" } }, "checks": { "bg": "var(--color-checks-bg, #24292f)", "runBorderWidth": "var(--color-checks-run-border-width, 0px)", "containerBorderWidth": "var(--color-checks-container-border-width, 0px)", "textPrimary": "var(--color-checks-text-primary, #f6f8fa)", "textSecondary": "var(--color-checks-text-secondary, #8c959f)", "textLink": "var(--color-checks-text-link, #54aeff)", "btnIcon": "var(--color-checks-btn-icon, #afb8c1)", "btnHoverIcon": "var(--color-checks-btn-hover-icon, #f6f8fa)", "btnHoverBg": "var(--color-checks-btn-hover-bg, rgba(255,255,255,0.125))", "inputText": "var(--color-checks-input-text, #eaeef2)", "inputPlaceholderText": "var(--color-checks-input-placeholder-text, #8c959f)", "inputFocusText": "var(--color-checks-input-focus-text, #8c959f)", "inputBg": "var(--color-checks-input-bg, #32383f)", "inputShadow": "var(--color-checks-input-shadow, none)", "donutError": "var(--color-checks-donut-error, #fa4549)", "donutPending": "var(--color-checks-donut-pending, #bf8700)", "donutSuccess": "var(--color-checks-donut-success, #0969da)", "donutNeutral": "var(--color-checks-donut-neutral, #afb8c1)", "dropdownText": "var(--color-checks-dropdown-text, #afb8c1)", "dropdownBg": "var(--color-checks-dropdown-bg, #32383f)", "dropdownBorder": "var(--color-checks-dropdown-border, #424a53)", "dropdownShadow": "var(--color-checks-dropdown-shadow, rgba(27,31,36,0.3))", "dropdownHoverText": "var(--color-checks-dropdown-hover-text, #f6f8fa)", "dropdownHoverBg": "var(--color-checks-dropdown-hover-bg, #424a53)", "dropdownBtnHoverText": "var(--color-checks-dropdown-btn-hover-text, #f6f8fa)", "dropdownBtnHoverBg": "var(--color-checks-dropdown-btn-hover-bg, #32383f)", "scrollbarThumbBg": "var(--color-checks-scrollbar-thumb-bg, #57606a)", "headerLabelText": "var(--color-checks-header-label-text, #d0d7de)", "headerLabelOpenText": "var(--color-checks-header-label-open-text, #f6f8fa)", "headerBorder": "var(--color-checks-header-border, #32383f)", "headerIcon": "var(--color-checks-header-icon, #8c959f)", "lineText": "var(--color-checks-line-text, #d0d7de)", "lineNumText": "var(--color-checks-line-num-text, rgba(140,149,159,0.75))", "lineTimestampText": "var(--color-checks-line-timestamp-text, #8c959f)", "lineHoverBg": "var(--color-checks-line-hover-bg, #32383f)", "lineSelectedBg": "var(--color-checks-line-selected-bg, rgba(33,139,255,0.15))", "lineSelectedNumText": "var(--color-checks-line-selected-num-text, #54aeff)", "lineDtFmText": "var(--color-checks-line-dt-fm-text, #24292f)", "lineDtFmBg": "var(--color-checks-line-dt-fm-bg, #9a6700)", "gateBg": "var(--color-checks-gate-bg, rgba(125,78,0,0.15))", "gateText": "var(--color-checks-gate-text, #d0d7de)", "gateWaitingText": "var(--color-checks-gate-waiting-text, #d4a72c)", "stepHeaderOpenBg": "var(--color-checks-step-header-open-bg, #32383f)", "stepErrorText": "var(--color-checks-step-error-text, #ff8182)", "stepWarningText": "var(--color-checks-step-warning-text, #d4a72c)", "loglineText": "var(--color-checks-logline-text, #8c959f)", "loglineNumText": "var(--color-checks-logline-num-text, rgba(140,149,159,0.75))", "loglineDebugText": "var(--color-checks-logline-debug-text, #c297ff)", "loglineErrorText": "var(--color-checks-logline-error-text, #d0d7de)", "loglineErrorNumText": "var(--color-checks-logline-error-num-text, #ff8182)", "loglineErrorBg": "var(--color-checks-logline-error-bg, rgba(164,14,38,0.15))", "loglineWarningText": "var(--color-checks-logline-warning-text, #d0d7de)", "loglineWarningNumText": "var(--color-checks-logline-warning-num-text, #d4a72c)", "loglineWarningBg": "var(--color-checks-logline-warning-bg, rgba(125,78,0,0.15))", "loglineCommandText": "var(--color-checks-logline-command-text, #54aeff)", "loglineSectionText": "var(--color-checks-logline-section-text, #54aeff)", "ansi": { "black": "var(--color-checks-ansi-black, #24292f)", "blackBright": "var(--color-checks-ansi-black-bright, #32383f)", "white": "var(--color-checks-ansi-white, #d0d7de)", "whiteBright": "var(--color-checks-ansi-white-bright, #d0d7de)", "gray": "var(--color-checks-ansi-gray, #8c959f)", "red": "var(--color-checks-ansi-red, #ff8182)", "redBright": "var(--color-checks-ansi-red-bright, #ffaba8)", "green": "var(--color-checks-ansi-green, #54aeff)", "greenBright": "var(--color-checks-ansi-green-bright, #80ccff)", "yellow": "var(--color-checks-ansi-yellow, #d4a72c)", "yellowBright": "var(--color-checks-ansi-yellow-bright, #eac54f)", "blue": "var(--color-checks-ansi-blue, #54aeff)", "blueBright": "var(--color-checks-ansi-blue-bright, #80ccff)", "magenta": "var(--color-checks-ansi-magenta, #c297ff)", "magentaBright": "var(--color-checks-ansi-magenta-bright, #d8b9ff)", "cyan": "var(--color-checks-ansi-cyan, #76e3ea)", "cyanBright": "var(--color-checks-ansi-cyan-bright, #b3f0ff)" } }, "project": { "headerBg": "var(--color-project-header-bg, #24292f)", "sidebarBg": "var(--color-project-sidebar-bg, #ffffff)", "gradientIn": "var(--color-project-gradient-in, #ffffff)", "gradientOut": "var(--color-project-gradient-out, rgba(255,255,255,0))" }, "mktg": { "btn": { "bg": "var(--color-mktg-btn-bg, #1b1f23))" } }, "control": { "borderColor": { "emphasis": "var(--control-borderColor-emphasis, var(--color-control-border-color-emphasis, #858F99))" } }, "avatar": { "bg": "var(--avatar-bgColor, var(--color-avatar-bg, #ffffff))", "border": "var(--avatar-borderColor, var(--color-avatar-border, rgba(27,31,36,0.15)))", "stackFade": "var(--avatarStack-fade-bgColor-default, var(--color-avatar-stack-fade, #afb8c1))", "stackFadeMore": "var(--avatarStack-fade-bgColor-muted, var(--color-avatar-stack-fade-more, #d0d7de))" }, "topicTag": { "border": "var(--topicTag-borderColor, var(--color-topic-tag-border, transparent))" }, "counter": { "border": "var(--counter-borderColor, var(--color-counter-border, transparent))" }, "selectMenu": { "backdropBorder": "var(--selectMenu-borderColor, var(--color-select-menu-backdrop-border, transparent))", "tapHighlight": "var(--control-bgColor-active, var(--color-select-menu-tap-highlight, rgba(175,184,193,0.5)))", "tapFocusBg": "var(--selectMenu-bgColor-active, var(--color-select-menu-tap-focus-bg, #b6e3ff))" }, "overlay": { "backdrop": "var(--overlay-backdrop-bgColor, var(--color-overlay-backdrop, rgba(140,149,159,0.2)))" }, "header": { "text": "var(--header-fgColor-default, var(--color-header-text, rgba(255,255,255,0.7)))", "bg": "var(--header-bgColor, var(--color-header-bg, #24292f))", "divider": "var(--header-borderColor-divider, var(--color-header-divider, #57606a))", "logo": "var(--header-fgColor-logo, var(--color-header-logo, #ffffff))" }, "headerSearch": { "bg": "var(--headerSearch-bgColor, var(--color-header-search-bg, #24292f))", "border": "var(--headerSearch-borderColor, var(--color-header-search-border, #57606a))" }, "sidenav": { "selectedBg": "var(--sideNav-bgColor-selected, var(--color-sidenav-selected-bg, #ffffff))" }, "menu": { "bgActive": "var(--menu-bgColor-active, var(--color-menu-bg-active, transparent))" }, "input": { "disabledBg": "var(--control-bgColor-disabled, var(--color-input-disabled-bg, rgba(175,184,193,0.2)))" }, "timeline": { "badgeBg": "var(--timelineBadge-bgColor, var(--color-timeline-badge-bg, #eaeef2))" }, "ansi": { "black": "var(--color-ansi-black, #24292f)", "blackBright": "var(--color-ansi-black-bright, #57606a)", "white": "var(--color-ansi-white, #6e7781)", "whiteBright": "var(--color-ansi-white-bright, #8c959f)", "gray": "var(--color-ansi-gray, #6e7781)", "red": "var(--color-ansi-red, #cf222e)", "redBright": "var(--color-ansi-red-bright, #a40e26)", "green": "var(--color-ansi-green, #0550ae)", "greenBright": "var(--color-ansi-green-bright, #0969da)", "yellow": "var(--color-ansi-yellow, #4d2d00)", "yellowBright": "var(--color-ansi-yellow-bright, #633c01)", "blue": "var(--color-ansi-blue, #0969da)", "blueBright": "var(--color-ansi-blue-bright, #218bff)", "magenta": "var(--color-ansi-magenta, #8250df)", "magentaBright": "var(--color-ansi-magenta-bright, #a475f9)", "cyan": "var(--color-ansi-cyan, #1b7c83)", "cyanBright": "var(--color-ansi-cyan-bright, #3192aa)" }, "btn": { "text": "var(--button-default-fgColor-rest, var(--color-btn-text, #24292f))", "bg": "var(--button-default-bgColor-rest, var(--color-btn-bg, #f6f8fa))", "border": "var(--button-default-borderColor-rest, var(--color-btn-border, rgba(27,31,36,0.15)))", "hoverBg": "var(--button-default-bgColor-hover, var(--color-btn-hover-bg, #f3f4f6))", "hoverBorder": "var(--button-default-borderColor-hover, var(--color-btn-hover-border, rgba(27,31,36,0.15)))", "activeBg": "var(--button-default-bgColor-active, var(--color-btn-active-bg, hsla(220,14%,93%,1)))", "activeBorder": "var(--button-default-borderColor-active, var(--color-btn-active-border, rgba(27,31,36,0.15)))", "selectedBg": "var(--button-default-bgColor-selected, var(--color-btn-selected-bg, hsla(220,14%,94%,1)))", "counterBg": "var(--buttonCounter-default-bgColor-rest, var(--color-btn-counter-bg, rgba(27,31,36,0.08)))", "primary": { "text": "var(--button-primary-fgColor-rest, var(--color-btn-primary-text, #ffffff))", "bg": "var(--button-primary-bgColor-rest, var(--color-btn-primary-bg, #0969da))", "border": "var(--button-primary-borderColor-rest, var(--color-btn-primary-border, rgba(27,31,36,0.15)))", "hoverBg": "var(--button-primary-bgColor-hover, var(--color-btn-primary-hover-bg, #0969da))", "hoverBorder": "var(--button-primary-borderColor-hover, var(--color-btn-primary-hover-border, rgba(27,31,36,0.15)))", "selectedBg": "var(--button-primary-bgColor-active, var(--color-btn-primary-selected-bg, hsla(212,92%,43%,1)))", "disabledText": "var(--button-primary-fgColor-disabled, var(--color-btn-primary-disabled-text, rgba(255,255,255,0.8)))", "disabledBg": "var(--button-primary-bgColor-disabled, var(--color-btn-primary-disabled-bg, #80ccff))", "disabledBorder": "var(--button-primary-borderColor-disabled, var(--color-btn-primary-disabled-border, rgba(27,31,36,0.15)))", "icon": "var(--button-primary-iconColor-rest, var(--color-btn-primary-icon, rgba(255,255,255,0.8)))", "counterBg": "var(--buttonCounter-primary-bgColor-rest, var(--color-btn-primary-counter-bg, rgba(0,33,85,0.2)))" }, "outline": { "text": "var(--button-outline-fgColor-rest, var(--color-btn-outline-text, #0969da))", "hoverText": "var(--button-outline-fgColor-hover, var(--color-btn-outline-hover-text, #ffffff))", "hoverBg": "var(--button-outline-bgColor-hover, var(--color-btn-outline-hover-bg, #0969da))", "hoverBorder": "var(--button-outline-borderColor-hover, var(--color-btn-outline-hover-border, rgba(27,31,36,0.15)))", "hoverCounterBg": "var(--buttonCounter-outline-bgColor-hover, var(--color-btn-outline-hover-counter-bg, rgba(255,255,255,0.2)))", "selectedText": "var(--button-outline-fgColor-active, var(--color-btn-outline-selected-text, #ffffff))", "selectedBg": "var(--button-outline-bgColor-active, var(--color-btn-outline-selected-bg, hsla(212,92%,42%,1)))", "selectedBorder": "var(--button-outline-borderColor-active, var(--color-btn-outline-selected-border, rgba(27,31,36,0.15)))", "disabledText": "var(--button-outline-fgColor-disabled, var(--color-btn-outline-disabled-text, rgba(9,105,218,0.5)))", "disabledBg": "var(--button-outline-bgColor-disabled, var(--color-btn-outline-disabled-bg, #f6f8fa))", "disabledCounterBg": "var(--buttonCounter-outline-bgColor-disabled, var(--color-btn-outline-disabled-counter-bg, rgba(9,105,218,0.05)))", "counterBg": "var(--buttonCounter-outline-bgColor-rest, var(--color-btn-outline-counter-bg, #0969da1a))", "counterFg": "var(--buttonCounter-outline-fgColor-rest, var(--color-btn-outline-counter-fg, #0550ae))", "hoverCounterFg": "var(--buttonCounter-outline-fgColor-hover, var(--color-btn-outline-hover-counter-fg, #ffffff))", "disabledCounterFg": "var(--buttonCounter-outline-fgColor-disabled, var(--color-btn-outline-disabled-counter-fg, rgba(9,105,218,0.5)))" }, "danger": { "text": "var(--button-danger-fgColor-rest, var(--color-btn-danger-text, #cf222e))", "hoverText": "var(--button-danger-fgColor-hover, var(--color-btn-danger-hover-text, #ffffff))", "hoverBg": "var(--button-danger-bgColor-hover, var(--color-btn-danger-hover-bg, #a40e26))", "hoverBorder": "var(--button-danger-borderColor-hover, var(--color-btn-danger-hover-border, rgba(27,31,36,0.15)))", "hoverCounterBg": "var(--buttonCounter-danger-bgColor-hover, var(--color-btn-danger-hover-counter-bg, rgba(255,255,255,0.2)))", "selectedText": "var(--button-danger-fgColor-active, var(--color-btn-danger-selected-text, #ffffff))", "selectedBg": "var(--button-danger-bgColor-active, var(--color-btn-danger-selected-bg, hsla(356,72%,44%,1)))", "selectedBorder": "var(--button-danger-borderColor-active, var(--color-btn-danger-selected-border, rgba(27,31,36,0.15)))", "disabledText": "var(--button-danger-fgColor-disabled, var(--color-btn-danger-disabled-text, rgba(207,34,46,0.5)))", "disabledBg": "var(--button-danger-bgColor-disabled, var(--color-btn-danger-disabled-bg, #f6f8fa))", "disabledCounterBg": "var(--buttonCounter-danger-bgColor-disabled, var(--color-btn-danger-disabled-counter-bg, rgba(207,34,46,0.05)))", "counterBg": "var(--buttonCounter-danger-bgColor-rest, var(--color-btn-danger-counter-bg, rgba(207,34,46,0.1)))", "icon": "var(--button-danger-iconColor-rest, var(--color-btn-danger-icon, #cf222e))", "hoverIcon": "var(--button-danger-iconColor-hover, var(--color-btn-danger-hover-icon, #ffffff))", "counterFg": "var(--buttonCounter-danger-fgColor-rest, var(--color-btn-danger-counter-fg, #a40e26))", "hoverCounterFg": "var(--buttonCounter-danger-fgColor-hover, var(--color-btn-danger-hover-counter-fg, #ffffff))", "disabledCounterFg": "var(--buttonCounter-danger-fgColor-disabled, var(--color-btn-danger-disabled-counter-fg, rgba(207,34,46,0.5)))" }, "inactive": { "bg": "var(--button-inactive-bgColor-rest, var(--color-btn-inactive-bg, #eaeef2))", "text": "var(--button-inactive-fgColor-rest, var(--color-btn-inactive-text, #57606a))" } }, "underlinenav": { "icon": "var(--underlineNav-iconColor-rest, var(--color-underlinenav-icon, #6e7781))", "borderHover": "var(--underlineNav-borderColor-hover, var(--color-underlinenav-border-hover, rgba(175,184,193,0.2)))" }, "actionListItem": { "inlineDivider": "var(--borderColor-muted, var(--color-action-list-item-inline-divider, rgba(208,215,222,0.48)))", "default": { "hoverBg": "var(--control-transparent-bgColor-hover, var(--color-action-list-item-default-hover-bg, rgba(208,215,222,0.32)))", "hoverBorder": "var(--control-transparent-borderColor-hover, var(--color-action-list-item-default-hover-border, transparent))", "activeBg": "var(--control-transparent-bgColor-active, var(--color-action-list-item-default-active-bg, rgba(208,215,222,0.48)))", "activeBorder": "var(--control-transparent-borderColor-active, var(--color-action-list-item-default-active-border, transparent))", "selectedBg": "var(--control-transparent-bgColor-selected, var(--color-action-list-item-default-selected-bg, rgba(208,215,222,0.24)))" }, "danger": { "hoverBg": "var(--control-danger-bgColor-hover, var(--color-action-list-item-default-danger-hover-bg, rgba(255,235,233,0.64)))", "activeBg": "var(--control-danger-bgColor-active, var(--color-action-list-item-default-danger-active-bg, #ffebe9))", "hoverText": "var(--control-danger-fgColor-hover, var(--color-action-list-item-default-danger-hover-text, #cf222e))" } }, "switchTrack": { "bg": "var(--controlTrack-bgColor-rest, var(--color-switch-track-bg, #eaeef2))", "hoverBg": "var(--controlTrack-bgColor-hover, var(--color-switch-track-hover-bg, hsla(210,24%,90%,1)))", "activeBg": "var(--controlTrack-bgColor-active, var(--color-switch-track-active-bg, hsla(210,24%,88%,1)))", "disabledBg": "var(--controlTrack-bgColor-disabled, var(--color-switch-track-disabled-bg, #8c959f))", "fg": "var(--controlTrack-fgColor-rest, var(--color-switch-track-fg, #57606a))", "disabledFg": "var(--controlTrack-fgColor-disabled, var(--color-switch-track-disabled-fg, #ffffff))", "border": "var(--controlTrack-borderColor-rest, var(--color-switch-track-border, transparent))", "checked": { "bg": "var(--control-checked-bgColor-rest, var(--color-switch-track-checked-bg, #0969da))", "hoverBg": "var(--control-checked-bgColor-hover, var(--color-switch-track-checked-hover-bg, #0860CA))", "activeBg": "var(--control-checked-bgColor-active, var(--color-switch-track-checked-active-bg, #0757BA))", "fg": "var(--control-checked-fgColor-rest, var(--color-switch-track-checked-fg, #ffffff))", "disabledFg": "var(--control-checked-fgColor-disabled, var(--color-switch-track-checked-disabled-fg, #ffffff))", "border": "var(--borderColor-transparent, var(--color-switch-track-checked-border, transparent))" } }, "switchKnob": { "bg": "var(--controlKnob-bgColor-rest, var(--color-switch-knob-bg, #ffffff))", "disabledBg": "var(--controlKnob-bgColor-disabled, var(--color-switch-knob-disabled-bg, #f6f8fa))", "border": "var(--controlKnob-borderColor-rest, var(--color-switch-knob-border, #858F99))", "checked": { "bg": "var(--controlKnob-bgColor-checked, var(--color-switch-knob-checked-bg, #ffffff))", "disabledBg": "var(--controlKnob-bgColor-disabled, var(--color-switch-knob-checked-disabled-bg, #f6f8fa))", "border": "var(--controlKnob-borderColor-checked, var(--color-switch-knob-checked-border, #0969da))" } }, "segmentedControl": { "bg": "var(--controlTrack-bgColor-rest, var(--color-segmented-control-bg, #eaeef2))", "button": { "bg": "var(--controlKnob-bgColor-rest, var(--color-segmented-control-button-bg, #ffffff))", "hover": { "bg": "var(--controlTrack-bgColor-hover, var(--color-segmented-control-button-hover-bg, rgba(175,184,193,0.2)))" }, "active": { "bg": "var(--controlTrack-bgColor-active, var(--color-segmented-control-button-hover-active-bg, rgba(175,184,193,0.4)))" }, "selected": { "border": "var(--controlKnob-borderColor-rest, var(--color-segmented-control-button-hover-active-selected-border, #8c959f))" } } }, "treeViewItem": { "chevron": { "hoverBg": "var(--control-transparent-bgColor-hover, var(--color-tree-view-item-chevron-hover-bg, rgba(208,215,222,0.32)))" }, "directory": { "fill": "var(--treeViewItem-leadingVisual-iconColor-rest, var(--color-tree-view-item-chevron-directory-fill, #54aeff))" } }, "fg": { "default": "var(--fgColor-default, var(--color-fg-default, #24292f))", "muted": "var(--fgColor-muted, var(--color-fg-muted, #57606a))", "subtle": "var(--fgColor-muted, var(--color-fg-subtle, #6e7781))", "onEmphasis": "var(--fgColor-onEmphasis, var(--color-fg-on-emphasis, #ffffff))" }, "canvas": { "default": "var(--bgColor-default, var(--color-canvas-default, #ffffff))", "overlay": "var(--overlay-bgColor, var(--color-canvas-overlay, #ffffff))", "inset": "var(--bgColor-inset, var(--color-canvas-inset, #f6f8fa))", "subtle": "var(--bgColor-muted, var(--color-canvas-subtle, #f6f8fa))" }, "border": { "default": "var(--borderColor-default, var(--color-border-default, #d0d7de))", "muted": "var(--borderColor-muted, var(--color-border-muted, hsla(210,18%,87%,1)))", "subtle": "var(--borderColor-muted, var(--color-border-subtle, rgba(27,31,36,0.15)))" }, "neutral": { "emphasisPlus": "var(--bgColor-emphasis, var(--color-neutral-emphasis-plus, #24292f))", "emphasis": "var(--bgColor-neutral-emphasis, var(--color-neutral-emphasis, #6e7781))", "muted": "var(--bgColor-neutral-muted, var(--color-neutral-muted, rgba(175,184,193,0.2)))", "subtle": "var(--bgColor-neutral-muted, var(--color-neutral-subtle, rgba(234,238,242,0.5)))" }, "accent": { "fg": "var(--fgColor-accent, var(--color-accent-fg, #0969da))", "emphasis": "var(--bgColor-accent-emphasis, var(--color-accent-emphasis, #0969da))", "muted": "var(--borderColor-accent-muted, var(--color-accent-muted, rgba(84,174,255,0.4)))", "subtle": "var(--bgColor-accent-muted, var(--color-accent-subtle, #ddf4ff))" }, "success": { "fg": "var(--fgColor-success, var(--color-success-fg, #0969da))", "emphasis": "var(--bgColor-success-emphasis, var(--color-success-emphasis, #0969da))", "muted": "var(--borderColor-success-muted, var(--color-success-muted, rgba(84,174,255,0.4)))", "subtle": "var(--bgColor-success-muted, var(--color-success-subtle, #ddf4ff))" }, "attention": { "fg": "var(--fgColor-attention, var(--color-attention-fg, #9a6700))", "emphasis": "var(--bgColor-attention-emphasis, var(--color-attention-emphasis, #9a6700))", "muted": "var(--borderColor-attention-muted, var(--color-attention-muted, rgba(212,167,44,0.4)))", "subtle": "var(--bgColor-attention-muted, var(--color-attention-subtle, #fff8c5))" }, "severe": { "fg": "var(--fgColor-severe, var(--color-severe-fg, #cf222e))", "emphasis": "var(--bgColor-severe-emphasis, var(--color-severe-emphasis, #cf222e))", "muted": "var(--borderColor-severe-muted, var(--color-severe-muted, rgba(255,129,130,0.4)))", "subtle": "var(--bgColor-severe-muted, var(--color-severe-subtle, #ffebe9))" }, "danger": { "fg": "var(--fgColor-danger, var(--color-danger-fg, #cf222e))", "emphasis": "var(--borderColor-danger-emphasis, var(--color-danger-emphasis, #cf222e))", "muted": "var(--borderColor-danger-muted, var(--color-danger-muted, rgba(255,129,130,0.4)))", "subtle": "var(--bgColor-danger-muted, var(--color-danger-subtle, #ffebe9))" }, "open": { "fg": "var(--fgColor-open, var(--color-open-fg, #cf222e))", "emphasis": "var(--bgColor-open-emphasis, var(--color-open-emphasis, #fa4549))", "muted": "var(--borderColor-open-muted, var(--color-open-muted, rgba(255,129,130,0.4)))", "subtle": "var(--bgColor-open-muted, var(--color-open-subtle, #ffebe9))" }, "closed": { "fg": "var(--fgColor-closed, var(--color-closed-fg, #6e7781))", "emphasis": "var(--bgColor-closed-emphasis, var(--color-closed-emphasis, #6e7781))", "muted": "var(--borderColor-closed-muted, var(--color-closed-muted, rgba(175,184,193,0.4)))", "subtle": "var(--bgColor-closed-muted, var(--color-closed-subtle, #f6f8fa))" }, "done": { "fg": "var(--fgColor-done, var(--color-done-fg, #8250df))", "emphasis": "var(--bgColor-done-emphasis, var(--color-done-emphasis, #8250df))", "muted": "var(--borderColor-done-muted, var(--color-done-muted, rgba(194,151,255,0.4)))", "subtle": "var(--bgColor-done-muted, var(--color-done-subtle, #fbefff))" }, "sponsors": { "fg": "var(--fgColor-sponsors, var(--color-sponsors-fg, #bf3989))", "emphasis": "var(--bgColor-sponsors-emphasis, var(--color-sponsors-emphasis, #bf3989))", "muted": "var(--borderColor-sponsors-muted, var(--color-sponsors-muted, rgba(255,128,200,0.4)))", "subtle": "var(--bgColor-sponsors-muted, var(--color-sponsors-subtle, #ffeff7))" }, "primer": { "fg": { "disabled": "var(--fgColor-disabled, var(--color-primer-fg-disabled, #8c959f))" }, "canvas": { "backdrop": "var(--overlay-backdrop-bgColor, var(--color-primer-fg-canvas-backdrop, rgba(27,31,36,0.5)))", "sticky": "var(--color-primer-canvas-sticky, rgba(255,255,255,0.95))" }, "border": { "active": "var(--underlineNav-borderColor-active, var(--color-primer-border-active, #fd8c73))", "contrast": "var(--borderColor-muted, var(--color-primer-border-contrast, rgba(27,31,36,0.1)))" } } }, "shadows": { "mktg": { "btn": { "shadow": { "outline": "var(--color-mktg-btn-shadow-outline, rgb(0 0 0 / 15%) 0 0 0 1px inset))", "focus": "var(--color-mktg-btn-shadow-focus, rgb(0 0 0 / 15%) 0 0 0 4px))", "hover": "var(--color-mktg-btn-shadow-hover, 0 3px 2px rgba(0, 0, 0, 0.07), 0 7px 5px rgba(0, 0, 0, 0.04), 0 12px 10px rgba(0, 0, 0, 0.03), 0 22px 18px rgba(0, 0, 0, 0.03), 0 42px 33px rgba(0, 0, 0, 0.02), 0 100px 80px rgba(0, 0, 0, 0.02)))", "hoverMuted": "var(--color-mktg-btn-shadow-hover-muted, rgb(0 0 0 / 70%) 0 0 0 2px inset))" } } }, "avatar": { "childShadow": "var(--avatar-shadow, var(--color-avatar-child-shadow, 0 0 0 2px rgba(255,255,255,0.8)))" }, "overlay": { "shadow": "var(--shadow-floating-small, var(--color-overlay-shadow, 0 1px 3px rgba(27,31,36,0.12), 0 8px 24px rgba(66,74,83,0.12)))" }, "btn": { "shadow": "var(--button-default-shadow-resting, var(--color-btn-shadow, 0 1px 0 rgba(27,31,36,0.04)))", "insetShadow": "var(--button-default-shadow-inset, var(--color-btn-inset-shadow, inset 0 1px 0 rgba(255,255,255,0.25)))", "primary": { "shadow": "var(--shadow-resting-small, var(--color-btn-primary-shadow, 0 1px 0 rgba(27,31,36,0.1)))", "insetShadow": "var(--shadow-highlight, var(--color-btn-primary-inset-shadow, inset 0 1px 0 rgba(255,255,255,0.03)))", "selectedShadow": "var(--button-primary-shadow-selected, var(--color-btn-primary-selected-shadow, inset 0 1px 0 rgba(0,33,85,0.2)))" }, "outline": { "hoverShadow": "var(--shadow-resting-small, var(--color-btn-outline-hover-shadow, 0 1px 0 rgba(27,31,36,0.1)))", "hoverInsetShadow": "var(--shadow-highlight, var(--color-btn-outline-hover-inset-shadow, inset 0 1px 0 rgba(255,255,255,0.03)))", "selectedShadow": "var(--button-outline-shadow-selected, var(--color-btn-outline-selected-shadow, inset 0 1px 0 rgba(0,33,85,0.2)))" }, "danger": { "hoverShadow": "var(--shadow-resting-small, var(--color-btn-danger-hover-shadow, 0 1px 0 rgba(27,31,36,0.1)))", "hoverInsetShadow": "var(--shadow-highlight, var(--color-btn-danger-hover-inset-shadow, inset 0 1px 0 rgba(255,255,255,0.03)))", "selectedShadow": "var(--button-danger-shadow-selected, var(--color-btn-danger-selected-shadow, inset 0 1px 0 rgba(76,0,20,0.2)))" } }, "shadow": { "small": "var(--shadow-resting-small, var(--color-shadow-small, 0 1px 0 rgba(27,31,36,0.04)))", "medium": "var(--shadow-resting-medium, var(--color-shadow-medium, 0 3px 6px rgba(140,149,159,0.15)))", "large": "var(--shadow-floating-large, var(--color-shadow-large, 0 8px 24px rgba(140,149,159,0.2)))", "extraLarge": "var(--shadow-floating-xlarge, var(--color-shadow-extra-large, 0 12px 28px rgba(140,149,159,0.3)))" }, "primer": { "shadow": { "highlight": "var(--shadow-highlight, var(--color-primer-shadow-highlight, inset 0 1px 0 rgba(255,255,255,0.25)))", "inset": "var(--shadow-inset, var(--color-primer-shadow-inset, inset 0 1px 0 rgba(208,215,222,0.2)))" } } } }, "dark": { "colors": { "canvasDefaultTransparent": "var(--bgColor-transparent, var(--color-canvas-default-transparent, rgba(13,17,23,0)))", "pageHeaderBg": "var(--page-header-bgColor, var(--color-page-header-bg, #0d1117))", "marketingIcon": { "primary": "var(--color-marketing-icon-primary, #79c0ff)", "secondary": "var(--color-marketing-icon-secondary, #1f6feb)" }, "diffBlob": { "addition": { "numText": "var(--diffBlob-addition-fgColor-num, var(--color-diff-blob-addition-num-text, #e6edf3))", "fg": "var(--diffBlob-addition-fgColor-text, var(--color-diff-blob-addition-fg, #e6edf3))", "numBg": "var(--diffBlob-addition-bgColor-num, var(--color-diff-blob-addition-num-bg, rgba(63,185,80,0.3)))", "lineBg": "var(--diffBlob-addition-bgColor-line, var(--color-diff-blob-addition-line-bg, rgba(46,160,67,0.15)))", "wordBg": "var(--diffBlob-addition-bgColor-word, var(--color-diff-blob-addition-word-bg, rgba(46,160,67,0.4)))" }, "deletion": { "numText": "var(--diffBlob-deletion-fgColor-num, var(--color-diff-blob-deletion-num-text, #e6edf3))", "fg": "var(--diffBlob-deletion-fgColor-text, var(--color-diff-blob-deletion-fg, #e6edf3))", "numBg": "var(--diffBlob-deletion-bgColor-num, var(--color-diff-blob-deletion-num-bg, rgba(248,81,73,0.3)))", "lineBg": "var(--diffBlob-deletion-bgColor-line, var(--color-diff-blob-deletion-line-bg, rgba(248,81,73,0.1)))", "wordBg": "var(--diffBlob-deletion-bgColor-word, var(--color-diff-blob-deletion-word-bg, rgba(248,81,73,0.4)))" }, "hunk": { "numBg": "var(--diffBlob-hunk-bgColor-num, var(--color-diff-blob-hunk-num-bg, rgba(56,139,253,0.4)))" }, "expander": { "icon": "var(--diffBlob-expander-iconColor, var(--color-diff-blob-expander-icon, #848d97))" }, "selectedLineHighlightMixBlendMode": "var(--color-diff-blob-selected-line-highlight-mix-blend-mode, screen)" }, "diffstat": { "deletionBorder": "var(--color-diffstat-deletion-border, rgba(240,246,252,0.1))", "additionBorder": "var(--color-diffstat-addition-border, rgba(240,246,252,0.1))", "additionBg": "var(--diffStat-addition-bgColor, var(--color-diffstat-addition-bg, #3fb950))" }, "searchKeyword": { "hl": "var(--highlight-neutral-bgColor, var(--color-search-keyword-hl, rgba(210,153,34,0.4)))" }, "prettylights": { "syntax": { "comment": "var(--color-prettylights-syntax-comment, #8b949e)", "constant": "var(--color-prettylights-syntax-constant, #79c0ff)", "entity": "var(--color-prettylights-syntax-entity, #d2a8ff)", "storageModifierImport": "var(--color-prettylights-syntax-storage-modifier-import, #c9d1d9)", "entityTag": "var(--color-prettylights-syntax-entity-tag, #7ee787)", "keyword": "var(--color-prettylights-syntax-keyword, #ff7b72)", "string": "var(--color-prettylights-syntax-string, #a5d6ff)", "variable": "var(--color-prettylights-syntax-variable, #ffa657)", "brackethighlighterUnmatched": "var(--color-prettylights-syntax-brackethighlighter-unmatched, #f85149)", "invalidIllegalText": "var(--color-prettylights-syntax-invalid-illegal-text, #f0f6fc)", "invalidIllegalBg": "var(--color-prettylights-syntax-invalid-illegal-bg, #8e1519)", "carriageReturnText": "var(--color-prettylights-syntax-carriage-return-text, #f0f6fc)", "carriageReturnBg": "var(--color-prettylights-syntax-carriage-return-bg, #b62324)", "stringRegexp": "var(--color-prettylights-syntax-string-regexp, #7ee787)", "markupList": "var(--color-prettylights-syntax-markup-list, #f2cc60)", "markupHeading": "var(--color-prettylights-syntax-markup-heading, #1f6feb)", "markupItalic": "var(--color-prettylights-syntax-markup-italic, #c9d1d9)", "markupBold": "var(--color-prettylights-syntax-markup-bold, #c9d1d9)", "markupDeletedText": "var(--color-prettylights-syntax-markup-deleted-text, #ffdcd7)", "markupDeletedBg": "var(--color-prettylights-syntax-markup-deleted-bg, #67060c)", "markupInsertedText": "var(--color-prettylights-syntax-markup-inserted-text, #aff5b4)", "markupInsertedBg": "var(--color-prettylights-syntax-markup-inserted-bg, #033a16)", "markupChangedText": "var(--color-prettylights-syntax-markup-changed-text, #ffdfb6)", "markupChangedBg": "var(--color-prettylights-syntax-markup-changed-bg, #5a1e02)", "markupIgnoredText": "var(--color-prettylights-syntax-markup-ignored-text, #c9d1d9)", "markupIgnoredBg": "var(--color-prettylights-syntax-markup-ignored-bg, #1158c7)", "metaDiffRange": "var(--color-prettylights-syntax-meta-diff-range, #d2a8ff)", "brackethighlighterAngle": "var(--color-prettylights-syntax-brackethighlighter-angle, #8b949e)", "sublimelinterGutterMark": "var(--color-prettylights-syntax-sublimelinter-gutter-mark, #484f58)", "constantOtherReferenceLink": "var(--color-prettylights-syntax-constant-other-reference-link, #a5d6ff)" } }, "codemirror": { "text": "var(--codeMirror-fgColor, var(--color-codemirror-text, #e6edf3))", "bg": "var(--codeMirror-bgColor, var(--color-codemirror-bg, #0d1117))", "guttersBg": "var(--codeMirror-gutters-bgColor, var(--color-codemirror-gutters-bg, #0d1117))", "guttermarkerText": "var(--codeMirror-gutterMarker-fgColor-default, var(--color-codemirror-guttermarker-text, #0d1117))", "guttermarkerSubtleText": "var(--codeMirror-gutterMarker-fgColor-muted, var(--color-codemirror-guttermarker-subtle-text, #6e7681))", "linenumberText": "var(--codeMirror-lineNumber-fgColor, var(--color-codemirror-linenumber-text, #848d97))", "cursor": "var(--codeMirror-cursor-fgColor, var(--color-codemirror-cursor, #e6edf3))", "selectionBg": "var(--codeMirror-selection-bgColor, var(--color-codemirror-selection-bg, rgba(56,139,253,0.4)))", "activelineBg": "var(--codeMirror-activeline-bgColor, var(--color-codemirror-activeline-bg, rgba(110,118,129,0.1)))", "matchingbracketText": "var(--codeMirror-matchingBracket-fgColor, var(--color-codemirror-matchingbracket-text, #e6edf3))", "linesBg": "var(--codeMirror-lines-bgColor, var(--color-codemirror-lines-bg, #0d1117))", "syntax": { "comment": "var(--codeMirror-syntax-fgColor-comment, var(--color-codemirror-syntax-comment, #8b949e))", "constant": "var(--codeMirror-syntax-fgColor-constant, var(--color-codemirror-syntax-constant, #79c0ff))", "entity": "var(--codeMirror-syntax-fgColor-entity, var(--color-codemirror-syntax-entity, #d2a8ff))", "keyword": "var(--codeMirror-syntax-fgColor-keyword, var(--color-codemirror-syntax-keyword, #ff7b72))", "storage": "var(--codeMirror-syntax-fgColor-storage, var(--color-codemirror-syntax-storage, #ff7b72))", "string": "var(--codeMirror-syntax-fgColor-string, var(--color-codemirror-syntax-string, #a5d6ff))", "support": "var(--codeMirror-syntax-fgColor-support, var(--color-codemirror-syntax-support, #79c0ff))", "variable": "var(--codeMirror-syntax-fgColor-variable, var(--color-codemirror-syntax-variable, #ffa657))" } }, "checks": { "bg": "var(--color-checks-bg, #010409)", "runBorderWidth": "var(--color-checks-run-border-width, 1px)", "containerBorderWidth": "var(--color-checks-container-border-width, 1px)", "textPrimary": "var(--color-checks-text-primary, #e6edf3)", "textSecondary": "var(--color-checks-text-secondary, #848d97)", "textLink": "var(--color-checks-text-link, #2f81f7)", "btnIcon": "var(--color-checks-btn-icon, #848d97)", "btnHoverIcon": "var(--color-checks-btn-hover-icon, #e6edf3)", "btnHoverBg": "var(--color-checks-btn-hover-bg, rgba(110,118,129,0.1))", "inputText": "var(--color-checks-input-text, #848d97)", "inputPlaceholderText": "var(--color-checks-input-placeholder-text, #6e7681)", "inputFocusText": "var(--color-checks-input-focus-text, #e6edf3)", "inputBg": "var(--color-checks-input-bg, #161b22)", "donutError": "var(--color-checks-donut-error, #f85149)", "donutPending": "var(--color-checks-donut-pending, #d29922)", "donutSuccess": "var(--color-checks-donut-success, #2ea043)", "donutNeutral": "var(--color-checks-donut-neutral, #8b949e)", "dropdownText": "var(--color-checks-dropdown-text, #e6edf3)", "dropdownBg": "var(--color-checks-dropdown-bg, #161b22)", "dropdownBorder": "var(--color-checks-dropdown-border, #30363d)", "dropdownShadow": "var(--color-checks-dropdown-shadow, rgba(1,4,9,0.3))", "dropdownHoverText": "var(--color-checks-dropdown-hover-text, #e6edf3)", "dropdownHoverBg": "var(--color-checks-dropdown-hover-bg, rgba(110,118,129,0.1))", "dropdownBtnHoverText": "var(--color-checks-dropdown-btn-hover-text, #e6edf3)", "dropdownBtnHoverBg": "var(--color-checks-dropdown-btn-hover-bg, rgba(110,118,129,0.1))", "scrollbarThumbBg": "var(--color-checks-scrollbar-thumb-bg, rgba(110,118,129,0.4))", "headerLabelText": "var(--color-checks-header-label-text, #848d97)", "headerLabelOpenText": "var(--color-checks-header-label-open-text, #e6edf3)", "headerBorder": "var(--color-checks-header-border, #21262d)", "headerIcon": "var(--color-checks-header-icon, #848d97)", "lineText": "var(--color-checks-line-text, #848d97)", "lineNumText": "var(--color-checks-line-num-text, #6e7681)", "lineTimestampText": "var(--color-checks-line-timestamp-text, #6e7681)", "lineHoverBg": "var(--color-checks-line-hover-bg, rgba(110,118,129,0.1))", "lineSelectedBg": "var(--color-checks-line-selected-bg, rgba(56,139,253,0.1))", "lineSelectedNumText": "var(--color-checks-line-selected-num-text, #2f81f7)", "lineDtFmText": "var(--color-checks-line-dt-fm-text, #ffffff)", "lineDtFmBg": "var(--color-checks-line-dt-fm-bg, #9e6a03)", "gateBg": "var(--color-checks-gate-bg, rgba(187,128,9,0.15))", "gateText": "var(--color-checks-gate-text, #848d97)", "gateWaitingText": "var(--color-checks-gate-waiting-text, #d29922)", "stepHeaderOpenBg": "var(--color-checks-step-header-open-bg, #161b22)", "stepErrorText": "var(--color-checks-step-error-text, #f85149)", "stepWarningText": "var(--color-checks-step-warning-text, #d29922)", "loglineText": "var(--color-checks-logline-text, #848d97)", "loglineNumText": "var(--color-checks-logline-num-text, #6e7681)", "loglineDebugText": "var(--color-checks-logline-debug-text, #a371f7)", "loglineErrorText": "var(--color-checks-logline-error-text, #848d97)", "loglineErrorNumText": "var(--color-checks-logline-error-num-text, #6e7681)", "loglineErrorBg": "var(--color-checks-logline-error-bg, rgba(248,81,73,0.1))", "loglineWarningText": "var(--color-checks-logline-warning-text, #848d97)", "loglineWarningNumText": "var(--color-checks-logline-warning-num-text, #d29922)", "loglineWarningBg": "var(--color-checks-logline-warning-bg, rgba(187,128,9,0.15))", "loglineCommandText": "var(--color-checks-logline-command-text, #2f81f7)", "loglineSectionText": "var(--color-checks-logline-section-text, #3fb950)", "ansi": { "black": "var(--color-checks-ansi-black, #0d1117)", "blackBright": "var(--color-checks-ansi-black-bright, #161b22)", "white": "var(--color-checks-ansi-white, #b1bac4))", "whiteBright": "var(--color-checks-ansi-white-bright, #b1bac4)", "gray": "var(--color-checks-ansi-gray, #6e7681)", "red": "var(--color-checks-ansi-red, #ff7b72)", "redBright": "var(--color-checks-ansi-red-bright, #ffa198)", "green": "var(--color-checks-ansi-green, #3fb950)", "greenBright": "var(--color-checks-ansi-green-bright, #56d364)", "yellow": "var(--color-checks-ansi-yellow, #d29922)", "yellowBright": "var(--color-checks-ansi-yellow-bright, #e3b341)", "blue": "var(--color-checks-ansi-blue, #58a6ff)", "blueBright": "var(--color-checks-ansi-blue-bright, #79c0ff)", "magenta": "var(--color-checks-ansi-magenta, #bc8cff)", "magentaBright": "var(--color-checks-ansi-magenta-bright, #d2a8ff)", "cyan": "var(--color-checks-ansi-cyan, #76e3ea)", "cyanBright": "var(--color-checks-ansi-cyan-bright, #b3f0ff)" } }, "project": { "headerBg": "var(--color-project-header-bg, #0d1117)", "sidebarBg": "var(--color-project-sidebar-bg, #161b22)", "gradientIn": "var(--color-project-gradient-in, #161b22)", "gradientOut": "var(--color-project-gradient-out, rgba(22,27,34,0))" }, "mktg": { "btn": { "bg": "var(--color-mktg-btn-bg, #f6f8fa))" } }, "control": { "borderColor": { "emphasis": "var(--control-borderColor-emphasis, var(--color-control-border-color-emphasis, #606771))" } }, "avatar": { "bg": "var(--avatar-bgColor, var(--color-avatar-bg, rgba(255,255,255,0.1)))", "border": "var(--avatar-borderColor, var(--color-avatar-border, rgba(240,246,252,0.1)))", "stackFade": "var(--avatarStack-fade-bgColor-default, var(--color-avatar-stack-fade, #30363d))", "stackFadeMore": "var(--avatarStack-fade-bgColor-muted, var(--color-avatar-stack-fade-more, #21262d))" }, "topicTag": { "border": "var(--topicTag-borderColor, var(--color-topic-tag-border, transparent))" }, "counter": { "border": "var(--counter-borderColor, var(--color-counter-border, transparent))" }, "selectMenu": { "backdropBorder": "var(--selectMenu-borderColor, var(--color-select-menu-backdrop-border, #484f58))", "tapHighlight": "var(--control-bgColor-active, var(--color-select-menu-tap-highlight, rgba(48,54,61,0.5)))", "tapFocusBg": "var(--selectMenu-bgColor-active, var(--color-select-menu-tap-focus-bg, #0c2d6b))" }, "overlay": { "backdrop": "var(--overlay-backdrop-bgColor, var(--color-overlay-backdrop, rgba(22,27,34,0.4)))" }, "header": { "text": "var(--header-fgColor-default, var(--color-header-text, rgba(255,255,255,0.7)))", "bg": "var(--header-bgColor, var(--color-header-bg, #161b22))", "divider": "var(--header-borderColor-divider, var(--color-header-divider, #8b949e))", "logo": "var(--header-fgColor-logo, var(--color-header-logo, #f0f6fc))" }, "headerSearch": { "bg": "var(--headerSearch-bgColor, var(--color-header-search-bg, #0d1117))", "border": "var(--headerSearch-borderColor, var(--color-header-search-border, #30363d))" }, "sidenav": { "selectedBg": "var(--sideNav-bgColor-selected, var(--color-sidenav-selected-bg, #21262d))" }, "menu": { "bgActive": "var(--menu-bgColor-active, var(--color-menu-bg-active, #161b22))" }, "input": { "disabledBg": "var(--control-bgColor-disabled, var(--color-input-disabled-bg, rgba(110,118,129,0)))" }, "timeline": { "badgeBg": "var(--timelineBadge-bgColor, var(--color-timeline-badge-bg, #21262d))" }, "ansi": { "black": "var(--color-ansi-black, #484f58)", "blackBright": "var(--color-ansi-black-bright, #6e7681)", "white": "var(--color-ansi-white, #b1bac4)", "whiteBright": "var(--color-ansi-white-bright, #ffffff)", "gray": "var(--color-ansi-gray, #6e7681)", "red": "var(--color-ansi-red, #ff7b72)", "redBright": "var(--color-ansi-red-bright, #ffa198)", "green": "var(--color-ansi-green, #3fb950)", "greenBright": "var(--color-ansi-green-bright, #56d364)", "yellow": "var(--color-ansi-yellow, #d29922)", "yellowBright": "var(--color-ansi-yellow-bright, #e3b341)", "blue": "var(--color-ansi-blue, #58a6ff)", "blueBright": "var(--color-ansi-blue-bright, #79c0ff)", "magenta": "var(--color-ansi-magenta, #bc8cff)", "magentaBright": "var(--color-ansi-magenta-bright, #d2a8ff)", "cyan": "var(--color-ansi-cyan, #39c5cf)", "cyanBright": "var(--color-ansi-cyan-bright, #56d4dd)" }, "btn": { "text": "var(--button-default-fgColor-rest, var(--color-btn-text, #c9d1d9))", "bg": "var(--button-default-bgColor-rest, var(--color-btn-bg, #21262d))", "border": "var(--button-default-borderColor-rest, var(--color-btn-border, rgba(240,246,252,0.1)))", "hoverBg": "var(--button-default-bgColor-hover, var(--color-btn-hover-bg, #30363d))", "hoverBorder": "var(--button-default-borderColor-hover, var(--color-btn-hover-border, #8b949e))", "activeBg": "var(--button-default-bgColor-active, var(--color-btn-active-bg, hsla(212,12%,18%,1)))", "activeBorder": "var(--button-default-borderColor-active, var(--color-btn-active-border, #6e7681))", "selectedBg": "var(--button-default-bgColor-selected, var(--color-btn-selected-bg, #161b22))", "counterBg": "var(--buttonCounter-default-bgColor-rest, var(--color-btn-counter-bg, #30363d))", "primary": { "text": "var(--button-primary-fgColor-rest, var(--color-btn-primary-text, #ffffff))", "bg": "var(--button-primary-bgColor-rest, var(--color-btn-primary-bg, #238636))", "border": "var(--button-primary-borderColor-rest, var(--color-btn-primary-border, rgba(240,246,252,0.1)))", "hoverBg": "var(--button-primary-bgColor-hover, var(--color-btn-primary-hover-bg, #2ea043))", "hoverBorder": "var(--button-primary-borderColor-hover, var(--color-btn-primary-hover-border, rgba(240,246,252,0.1)))", "selectedBg": "var(--button-primary-bgColor-active, var(--color-btn-primary-selected-bg, #238636))", "disabledText": "var(--button-primary-fgColor-disabled, var(--color-btn-primary-disabled-text, rgba(255,255,255,0.5)))", "disabledBg": "var(--button-primary-bgColor-disabled, var(--color-btn-primary-disabled-bg, rgba(35,134,54,0.6)))", "disabledBorder": "var(--button-primary-borderColor-disabled, var(--color-btn-primary-disabled-border, rgba(240,246,252,0.1)))", "icon": "var(--button-primary-iconColor-rest, var(--color-btn-primary-icon, #ffffff))", "counterBg": "var(--buttonCounter-primary-bgColor-rest, var(--color-btn-primary-counter-bg, rgba(4,38,15,0.2)))" }, "outline": { "text": "var(--button-outline-fgColor-rest, var(--color-btn-outline-text, #388bfd))", "hoverText": "var(--button-outline-fgColor-hover, var(--color-btn-outline-hover-text, #58a6ff))", "hoverBg": "var(--button-outline-bgColor-hover, var(--color-btn-outline-hover-bg, #30363d))", "hoverBorder": "var(--button-outline-borderColor-hover, var(--color-btn-outline-hover-border, rgba(240,246,252,0.1)))", "hoverCounterBg": "var(--buttonCounter-outline-bgColor-hover, var(--color-btn-outline-hover-counter-bg, rgba(5,29,77,0.2)))", "selectedText": "var(--button-outline-fgColor-active, var(--color-btn-outline-selected-text, #ffffff))", "selectedBg": "var(--button-outline-bgColor-active, var(--color-btn-outline-selected-bg, #0d419d))", "selectedBorder": "var(--button-outline-borderColor-active, var(--color-btn-outline-selected-border, rgba(240,246,252,0.1)))", "disabledText": "var(--button-outline-fgColor-disabled, var(--color-btn-outline-disabled-text, rgba(88,166,255,0.5)))", "disabledBg": "var(--button-outline-bgColor-disabled, var(--color-btn-outline-disabled-bg, #0d1117))", "disabledCounterBg": "var(--buttonCounter-outline-bgColor-disabled, var(--color-btn-outline-disabled-counter-bg, rgba(31,111,235,0.05)))", "counterBg": "var(--buttonCounter-outline-bgColor-rest, var(--color-btn-outline-counter-bg, rgba(5,29,77,0.2)))", "hoverCounterFg": "var(--buttonCounter-outline-fgColor-hover, var(--color-btn-outline-hover-counter-fg, #58a6ff))", "disabledCounterFg": "var(--buttonCounter-outline-fgColor-disabled, var(--color-btn-outline-disabled-counter-fg, rgba(47,129,247,0.5)))", "counterFg": "var(--buttonCounter-outline-fgColor-rest, var(--color-btn-outline-counter-fg, #388bfd))" }, "danger": { "text": "var(--button-danger-fgColor-rest, var(--color-btn-danger-text, #f85149))", "hoverText": "var(--button-danger-fgColor-hover, var(--color-btn-danger-hover-text, #ffffff))", "hoverBg": "var(--button-danger-bgColor-hover, var(--color-btn-danger-hover-bg, #da3633))", "hoverBorder": "var(--button-danger-borderColor-hover, var(--color-btn-danger-hover-border, #f85149))", "hoverIcon": "var(--button-danger-iconColor-hover, var(--color-btn-danger-hover-icon, #ffffff))", "hoverCounterBg": "var(--buttonCounter-danger-bgColor-hover, var(--color-btn-danger-hover-counter-bg, rgba(255,255,255,0.2)))", "selectedText": "var(--button-danger-fgColor-active, var(--color-btn-danger-selected-text, #ffffff))", "selectedBg": "var(--button-danger-bgColor-active, var(--color-btn-danger-selected-bg, #b62324))", "selectedBorder": "var(--button-danger-borderColor-active, var(--color-btn-danger-selected-border, #ff7b72))", "disabledText": "var(--button-danger-fgColor-disabled, var(--color-btn-danger-disabled-text, rgba(248,81,73,0.5)))", "disabledBg": "var(--button-danger-bgColor-disabled, var(--color-btn-danger-disabled-bg, #0d1117))", "disabledCounterBg": "var(--buttonCounter-danger-bgColor-disabled, var(--color-btn-danger-disabled-counter-bg, rgba(218,54,51,0.05)))", "counterBg": "var(--buttonCounter-danger-bgColor-rest, var(--color-btn-danger-counter-bg, rgba(73,2,2,0.2)))", "icon": "var(--button-danger-iconColor-rest, var(--color-btn-danger-icon, #f85149))", "counterFg": "var(--buttonCounter-danger-fgColor-rest, var(--color-btn-danger-counter-fg, #f85149))", "disabledCounterFg": "var(--buttonCounter-danger-fgColor-disabled, var(--color-btn-danger-disabled-counter-fg, rgba(248,81,73,0.5)))", "hoverCounterFg": "var(--buttonCounter-danger-fgColor-hover, var(--color-btn-danger-hover-counter-fg, #ffffff))" }, "inactive": { "bg": "var(--button-inactive-bgColor-rest, var(--color-btn-inactive-bg, #21262d))", "text": "var(--button-inactive-fgColor-rest, var(--color-btn-inactive-text, #8b949e))" } }, "underlinenav": { "icon": "var(--underlineNav-iconColor-rest, var(--color-underlinenav-icon, #6e7681))", "borderHover": "var(--underlineNav-borderColor-hover, var(--color-underlinenav-border-hover, rgba(110,118,129,0.4)))" }, "actionListItem": { "inlineDivider": "var(--borderColor-muted, var(--color-action-list-item-inline-divider, rgba(48,54,61,0.48)))", "default": { "hoverBg": "var(--control-transparent-bgColor-hover, var(--color-action-list-item-default-hover-bg, rgba(177,186,196,0.12)))", "hoverBorder": "var(--control-transparent-borderColor-hover, var(--color-action-list-item-default-hover-border, transparent))", "activeBg": "var(--control-transparent-bgColor-active, var(--color-action-list-item-default-active-bg, rgba(177,186,196,0.2)))", "activeBorder": "var(--control-transparent-borderColor-active, var(--color-action-list-item-default-active-border, transparent))", "selectedBg": "var(--control-transparent-bgColor-selected, var(--color-action-list-item-default-selected-bg, rgba(177,186,196,0.08)))" }, "danger": { "hoverBg": "var(--control-danger-bgColor-hover, var(--color-action-list-item-danger-hover-bg, rgba(248,81,73,0.16)))", "activeBg": "var(--control-danger-bgColor-active, var(--color-action-list-item-danger-active-bg, rgba(248,81,73,0.24)))", "hoverText": "var(--control-danger-fgColor-hover, var(--color-action-list-item-danger-hover-text, #ff7b72))" } }, "switchTrack": { "bg": "var(--controlTrack-bgColor-rest, var(--color-switch-track-bg, rgba(110,118,129,0.1)))", "hoverBg": "var(--controlTrack-bgColor-hover, var(--color-switch-track-hover-bg, hsla(215,8%,72%,0.1)))", "activeBg": "var(--controlTrack-bgColor-active, var(--color-switch-track-active-bg, rgba(110,118,129,0.4)))", "disabledBg": "var(--controlTrack-bgColor-disabled, var(--color-switch-track-disabled-bg, #21262d))", "fg": "var(--controlTrack-fgColor-rest, var(--color-switch-track-fg, #848d97))", "disabledFg": "var(--controlTrack-fgColor-disabled, var(--color-switch-track-disabled-fg, #010409))", "border": "var(--controlTrack-borderColor-rest, var(--color-switch-track-border, transparent))", "checked": { "bg": "var(--control-checked-bgColor-rest, var(--color-switch-track-checked-bg, rgba(31,111,235,0.35)))", "hoverBg": "var(--control-checked-bgColor-hover, var(--color-switch-track-checked-hover-bg, rgba(31,111,235,0.5)))", "activeBg": "var(--control-checked-bgColor-active, var(--color-switch-track-checked-active-bg, rgba(31,111,235,0.65)))", "fg": "var(--control-checked-fgColor-rest, var(--color-switch-track-checked-fg, #ffffff))", "disabledFg": "var(--control-checked-fgColor-disabled, var(--color-switch-track-checked-disabled-fg, #010409))", "border": "var(--borderColor-transparent, var(--color-switch-track-checked-border, transparent))" } }, "switchKnob": { "bg": "var(--controlKnob-bgColor-rest, var(--color-switch-knob-bg, #0d1117))", "border": "var(--controlKnob-borderColor-rest, var(--color-switch-knob-border, #606771))", "disabledBg": "var(--controlKnob-bgColor-disabled, var(--color-switch-knob-disabled-bg, #161b22))", "checked": { "bg": "var(--controlKnob-bgColor-checked, var(--color-switch-knob-checked-bg, #0d1117))", "disabledBg": "var(--controlKnob-bgColor-disabled, var(--color-switch-knob-checked-disabled-bg, #161b22))", "border": "var(--controlKnob-borderColor-checked, var(--color-switch-knob-checked-border, rgba(31,111,235,0.35)))" } }, "segmentedControl": { "bg": "var(--controlTrack-bgColor-rest, var(--color-segmented-control-bg, rgba(110,118,129,0.1)))", "button": { "bg": "var(--controlKnob-bgColor-rest, var(--color-segmented-control-button-bg, #0d1117))", "hover": { "bg": "var(--controlTrack-bgColor-hover, var(--color-segmented-control-button-hover-bg, #30363d))" }, "active": { "bg": "var(--controlTrack-bgColor-active, var(--color-segmented-control-button-active-bg, #21262d))" }, "selected": { "border": "var(--controlKnob-borderColor-rest, var(--color-segmented-control-button-selected-border, #6e7681))" } } }, "treeViewItem": { "chevron": { "hoverBg": "var(--control-transparent-bgColor-hover, var(--color-tree-view-item-chevron-hover-bg, rgba(177,186,196,0.12)))" }, "directory": { "fill": "var(--treeViewItem-leadingVisual-iconColor-rest, var(--color-tree-view-item-directory-fill, #848d97))" } }, "fg": { "default": "var(--fgColor-default, var(--color-fg-default, #e6edf3))", "muted": "var(--fgColor-muted, var(--color-fg-muted, #848d97))", "subtle": "var(--fgColor-muted, var(--color-fg-subtle, #6e7681))", "onEmphasis": "var(--fgColor-onEmphasis, var(--color-fg-on-emphasis, #ffffff))" }, "canvas": { "default": "var(--bgColor-default, var(--color-canvas-default, #0d1117))", "overlay": "var(--overlay-bgColor, var(--color-canvas-overlay, #161b22))", "inset": "var(--bgColor-inset, var(--color-canvas-inset, #010409))", "subtle": "var(--bgColor-muted, var(--color-canvas-subtle, #161b22))" }, "border": { "default": "var(--borderColor-default, var(--color-border-default, #30363d))", "muted": "var(--borderColor-muted, var(--color-border-muted, #21262d))", "subtle": "var(--borderColor-muted, var(--color-border-subtle, rgba(240,246,252,0.1)))" }, "neutral": { "emphasisPlus": "var(--bgColor-emphasis, var(--color-neutral-emphasis-plus, #6e7681))", "emphasis": "var(--bgColor-neutral-emphasis, var(--color-neutral-emphasis, #6e7681))", "muted": "var(--bgColor-neutral-muted, var(--color-neutral-muted, rgba(110,118,129,0.4)))", "subtle": "var(--bgColor-neutral-muted, var(--color-neutral-subtle, rgba(110,118,129,0.1)))" }, "accent": { "fg": "var(--fgColor-accent, var(--color-accent-fg, #2f81f7))", "emphasis": "var(--bgColor-accent-emphasis, var(--color-accent-emphasis, #1f6feb))", "muted": "var(--borderColor-accent-muted, var(--color-accent-muted, rgba(56,139,253,0.4)))", "subtle": "var(--bgColor-accent-muted, var(--color-accent-subtle, rgba(56,139,253,0.1)))" }, "success": { "fg": "var(--fgColor-success, var(--color-success-fg, #3fb950))", "emphasis": "var(--bgColor-success-emphasis, var(--color-success-emphasis, #238636))", "muted": "var(--borderColor-success-muted, var(--color-success-muted, rgba(46,160,67,0.4)))", "subtle": "var(--bgColor-success-muted, var(--color-success-subtle, rgba(46,160,67,0.15)))" }, "attention": { "fg": "var(--fgColor-attention, var(--color-attention-fg, #d29922))", "emphasis": "var(--bgColor-attention-emphasis, var(--color-attention-emphasis, #9e6a03))", "muted": "var(--borderColor-attention-muted, var(--color-attention-muted, rgba(187,128,9,0.4)))", "subtle": "var(--bgColor-attention-muted, var(--color-attention-subtle, rgba(187,128,9,0.15)))" }, "severe": { "fg": "var(--fgColor-severe, var(--color-severe-fg, #db6d28))", "emphasis": "var(--bgColor-severe-emphasis, var(--color-severe-emphasis, #bd561d))", "muted": "var(--borderColor-severe-muted, var(--color-severe-muted, rgba(219,109,40,0.4)))", "subtle": "var(--bgColor-severe-muted, var(--color-severe-subtle, rgba(219,109,40,0.1)))" }, "danger": { "fg": "var(--fgColor-danger, var(--color-danger-fg, #f85149))", "emphasis": "var(--borderColor-danger-emphasis, var(--color-danger-emphasis, #da3633))", "muted": "var(--borderColor-danger-muted, var(--color-danger-muted, rgba(248,81,73,0.4)))", "subtle": "var(--bgColor-danger-muted, var(--color-danger-subtle, rgba(248,81,73,0.1)))" }, "open": { "fg": "var(--fgColor-open, var(--color-open-fg, #3fb950))", "emphasis": "var(--bgColor-open-emphasis, var(--color-open-emphasis, #238636))", "muted": "var(--borderColor-open-muted, var(--color-open-muted, rgba(46,160,67,0.4)))", "subtle": "var(--bgColor-open-muted, var(--color-open-subtle, rgba(46,160,67,0.15)))" }, "closed": { "fg": "var(--fgColor-closed, var(--color-closed-fg, #f85149))", "emphasis": "var(--bgColor-closed-emphasis, var(--color-closed-emphasis, #da3633))", "muted": "var(--borderColor-closed-muted, var(--color-closed-muted, rgba(248,81,73,0.4)))", "subtle": "var(--bgColor-closed-muted, var(--color-closed-subtle, rgba(248,81,73,0.15)))" }, "done": { "fg": "var(--fgColor-done, var(--color-done-fg, #a371f7))", "emphasis": "var(--bgColor-done-emphasis, var(--color-done-emphasis, #8957e5))", "muted": "var(--borderColor-done-muted, var(--color-done-muted, rgba(163,113,247,0.4)))", "subtle": "var(--bgColor-done-muted, var(--color-done-subtle, rgba(163,113,247,0.1)))" }, "sponsors": { "fg": "var(--fgColor-sponsors, var(--color-sponsors-fg, #db61a2))", "emphasis": "var(--bgColor-sponsors-emphasis, var(--color-sponsors-emphasis, #bf4b8a))", "muted": "var(--borderColor-sponsors-muted, var(--color-sponsors-muted, rgba(219,97,162,0.4)))", "subtle": "var(--bgColor-sponsors-muted, var(--color-sponsors-subtle, rgba(219,97,162,0.1)))" }, "primer": { "fg": { "disabled": "var(--fgColor-disabled, var(--color-primer-fg-disabled, #484f58))" }, "canvas": { "backdrop": "var(--overlay-backdrop-bgColor, var(--color-primer-canvas-backdrop, rgba(1,4,9,0.8)))", "sticky": "var(--color-primer-canvas-sticky, rgba(13,17,23,0.95))" }, "border": { "active": "var(--underlineNav-borderColor-active, var(--color-primer-border-active, #f78166))", "contrast": "var(--borderColor-muted, var(--color-primer-border-contrast, rgba(255,255,255,0.2)))" } } }, "shadows": { "checks": { "inputShadow": "var(--color-checks-input-shadow, 0 0 0 1px #30363d)" }, "mktg": { "btn": { "shadow": { "outline": "var(--color-mktg-btn-shadow-outline, rgb(255 255 255 / 25%) 0 0 0 1px inset))", "focus": "var(--color-mktg-btn-shadow-focus, rgb(255 255 255 / 25%) 0 0 0 4px))", "hover": "var(--color-mktg-btn-shadow-hover, 0 4px 7px rgba(0, 0, 0, 0.15), 0 100px 80px rgba(255, 255, 255, 0.02), 0 42px 33px rgba(255, 255, 255, 0.024), 0 22px 18px rgba(255, 255, 255, 0.028), 0 12px 10px rgba(255, 255, 255, 0.034), 0 7px 5px rgba(255, 255, 255, 0.04), 0 3px 2px rgba(255, 255, 255, 0.07)))", "hoverMuted": "var(--color-mktg-btn-shadow-hover-muted, rgb(255 255 255) 0 0 0 2px inset))" } } }, "avatar": { "childShadow": "var(--avatar-shadow, var(--color-avatar-child-shadow, 0 0 0 2px #0d1117))" }, "overlay": { "shadow": "var(--shadow-floating-small, var(--color-overlay-shadow, 0 0 0 1px #30363d, 0 16px 32px rgba(1,4,9,0.85)))" }, "btn": { "shadow": "var(--button-default-shadow-resting, var(--color-btn-shadow, 0 0 transparent))", "insetShadow": "var(--button-default-shadow-inset, var(--color-btn-inset-shadow, 0 0 transparent))", "primary": { "shadow": "var(--shadow-resting-small, var(--color-btn-primary-shadow, 0 0 transparent))", "insetShadow": "var(--shadow-highlight, var(--color-btn-primary-inset-shadow, 0 0 transparent))", "selectedShadow": "var(--button-primary-shadow-selected, var(--color-btn-primary-selected-shadow, 0 0 transparent))" }, "outline": { "hoverShadow": "var(--shadow-resting-small, var(--color-btn-outline-hover-shadow, 0 1px 0 rgba(1,4,9,0.1)))", "hoverInsetShadow": "var(--shadow-highlight, var(--color-btn-outline-hover-inset-shadow, inset 0 1px 0 rgba(255,255,255,0.03)))", "selectedShadow": "var(--button-outline-shadow-selected, var(--color-btn-outline-selected-shadow, 0 0 transparent))" }, "danger": { "hoverShadow": "var(--shadow-resting-small, var(--color-btn-danger-hover-shadow, 0 0 transparent))", "hoverInsetShadow": "var(--shadow-highlight, var(--color-btn-danger-hover-inset-shadow, 0 0 transparent))", "selectedShadow": "var(--button-danger-shadow-selected, var(--color-btn-danger-selected-shadow, 0 0 transparent))" } }, "shadow": { "small": "var(--shadow-resting-small, var(--color-shadow-small, 0 0 transparent))", "medium": "var(--shadow-resting-medium, var(--color-shadow-medium, 0 3px 6px #010409))", "large": "var(--shadow-floating-large, var(--color-shadow-large, 0 8px 24px #010409))", "extraLarge": "var(--shadow-floating-xlarge, var(--color-shadow-extra-large, 0 12px 48px #010409))" }, "primer": { "shadow": { "highlight": "var(--shadow-highlight, var(--color-primer-shadow-highlight, 0 0 transparent))", "inset": "var(--shadow-inset, var(--color-primer-shadow-inset, 0 0 transparent))" } } } }, "dark_dimmed": { "colors": { "canvasDefaultTransparent": "var(--bgColor-transparent, var(--color-canvas-default-transparent, rgba(34,39,46,0)))", "pageHeaderBg": "var(--page-header-bgColor, var(--color-page-header-bg, #22272e))", "marketingIcon": { "primary": "var(--color-marketing-icon-primary, #6cb6ff)", "secondary": "var(--color-marketing-icon-secondary, #316dca)" }, "diffBlob": { "addition": { "numText": "var(--diffBlob-addition-fgColor-num, var(--color-diff-blob-addition-num-text, #adbac7))", "fg": "var(--diffBlob-addition-fgColor-text, var(--color-diff-blob-addition-fg, #adbac7))", "numBg": "var(--diffBlob-addition-bgColor-num, var(--color-diff-blob-addition-num-bg, rgba(87,171,90,0.3)))", "lineBg": "var(--diffBlob-addition-bgColor-line, var(--color-diff-blob-addition-line-bg, rgba(70,149,74,0.15)))", "wordBg": "var(--diffBlob-addition-bgColor-word, var(--color-diff-blob-addition-word-bg, rgba(70,149,74,0.4)))" }, "deletion": { "numText": "var(--diffBlob-deletion-fgColor-num, var(--color-diff-blob-deletion-num-text, #adbac7))", "fg": "var(--diffBlob-deletion-fgColor-text, var(--color-diff-blob-deletion-fg, #adbac7))", "numBg": "var(--diffBlob-deletion-bgColor-num, var(--color-diff-blob-deletion-num-bg, rgba(229,83,75,0.3)))", "lineBg": "var(--diffBlob-deletion-bgColor-line, var(--color-diff-blob-deletion-line-bg, rgba(229,83,75,0.1)))", "wordBg": "var(--diffBlob-deletion-bgColor-word, var(--color-diff-blob-deletion-word-bg, rgba(229,83,75,0.4)))" }, "hunk": { "numBg": "var(--diffBlob-hunk-bgColor-num, var(--color-diff-blob-hunk-num-bg, rgba(65,132,228,0.4)))" }, "expander": { "icon": "#adbac7" }, "selectedLineHighlightMixBlendMode": "var(--color-diff-blob-selected-line-highlight-mix-blend-mode, screen)" }, "diffstat": { "deletionBorder": "var(--color-diffstat-deletion-border, rgba(205,217,229,0.1))", "additionBorder": "var(--color-diffstat-addition-border, rgba(205,217,229,0.1))", "additionBg": "var(--diffStat-addition-bgColor, var(--color-diffstat-addition-bg, #57ab5a))" }, "searchKeyword": { "hl": "var(--highlight-neutral-bgColor, var(--color-search-keyword-hl, rgba(198,144,38,0.4)))" }, "prettylights": { "syntax": { "comment": "var(--color-prettylights-syntax-comment, #768390)", "constant": "var(--color-prettylights-syntax-constant, #6cb6ff)", "entity": "var(--color-prettylights-syntax-entity, #dcbdfb)", "storageModifierImport": "var(--color-prettylights-syntax-storage-modifier-import, #adbac7)", "entityTag": "var(--color-prettylights-syntax-entity-tag, #8ddb8c)", "keyword": "var(--color-prettylights-syntax-keyword, #f47067)", "string": "var(--color-prettylights-syntax-string, #96d0ff)", "variable": "var(--color-prettylights-syntax-variable, #f69d50)", "brackethighlighterUnmatched": "var(--color-prettylights-syntax-brackethighlighter-unmatched, #e5534b)", "invalidIllegalText": "var(--color-prettylights-syntax-invalid-illegal-text, #cdd9e5)", "invalidIllegalBg": "var(--color-prettylights-syntax-invalid-illegal-bg, #922323)", "carriageReturnText": "var(--color-prettylights-syntax-carriage-return-text, #cdd9e5)", "carriageReturnBg": "var(--color-prettylights-syntax-carriage-return-bg, #ad2e2c)", "stringRegexp": "var(--color-prettylights-syntax-string-regexp, #8ddb8c)", "markupList": "var(--color-prettylights-syntax-markup-list, #eac55f)", "markupHeading": "var(--color-prettylights-syntax-markup-heading, #316dca)", "markupItalic": "var(--color-prettylights-syntax-markup-italic, #adbac7)", "markupBold": "var(--color-prettylights-syntax-markup-bold, #adbac7)", "markupDeletedText": "var(--color-prettylights-syntax-markup-deleted-text, #ffd8d3)", "markupDeletedBg": "var(--color-prettylights-syntax-markup-deleted-bg, #78191b)", "markupInsertedText": "var(--color-prettylights-syntax-markup-inserted-text, #b4f1b4)", "markupInsertedBg": "var(--color-prettylights-syntax-markup-inserted-bg, #1b4721)", "markupChangedText": "var(--color-prettylights-syntax-markup-changed-text, #ffddb0)", "markupChangedBg": "var(--color-prettylights-syntax-markup-changed-bg, #682d0f)", "markupIgnoredText": "var(--color-prettylights-syntax-markup-ignored-text, #adbac7)", "markupIgnoredBg": "var(--color-prettylights-syntax-markup-ignored-bg, #255ab2)", "metaDiffRange": "var(--color-prettylights-syntax-meta-diff-range, #dcbdfb)", "brackethighlighterAngle": "var(--color-prettylights-syntax-brackethighlighter-angle, #768390)", "sublimelinterGutterMark": "var(--color-prettylights-syntax-sublimelinter-gutter-mark, #545d68)", "constantOtherReferenceLink": "var(--color-prettylights-syntax-constant-other-reference-link, #96d0ff)" } }, "codemirror": { "text": "var(--codeMirror-fgColor, var(--color-codemirror-text, #adbac7))", "bg": "var(--codeMirror-bgColor, var(--color-codemirror-bg, #22272e))", "guttersBg": "var(--codeMirror-gutters-bgColor, var(--color-codemirror-gutters-bg, #22272e))", "guttermarkerText": "var(--codeMirror-gutterMarker-fgColor-default, var(--color-codemirror-guttermarker-text, #22272e))", "guttermarkerSubtleText": "var(--codeMirror-gutterMarker-fgColor-muted, var(--color-codemirror-guttermarker-subtle-text, #636e7b))", "linenumberText": "var(--codeMirror-lineNumber-fgColor, var(--color-codemirror-linenumber-text, #768390))", "cursor": "var(--codeMirror-cursor-fgColor, var(--color-codemirror-cursor, #adbac7))", "selectionBg": "var(--codeMirror-selection-bgColor, var(--color-codemirror-selection-bg, rgba(65,132,228,0.4)))", "activelineBg": "var(--codeMirror-activeline-bgColor, var(--color-codemirror-activeline-bg, rgba(99,110,123,0.1)))", "matchingbracketText": "var(--codeMirror-matchingBracket-fgColor, var(--color-codemirror-matchingbracket-text, #adbac7))", "linesBg": "var(--codeMirror-lines-bgColor, var(--color-codemirror-lines-bg, #22272e))", "syntax": { "comment": "var(--codeMirror-syntax-fgColor-comment, var(--color-codemirror-syntax-comment, #768390))", "constant": "var(--codeMirror-syntax-fgColor-constant, var(--color-codemirror-syntax-constant, #6cb6ff))", "entity": "var(--codeMirror-syntax-fgColor-entity, var(--color-codemirror-syntax-entity, #dcbdfb))", "keyword": "var(--codeMirror-syntax-fgColor-keyword, var(--color-codemirror-syntax-keyword, #f47067))", "storage": "var(--codeMirror-syntax-fgColor-storage, var(--color-codemirror-syntax-storage, #f47067))", "string": "var(--codeMirror-syntax-fgColor-string, var(--color-codemirror-syntax-string, #96d0ff))", "support": "var(--codeMirror-syntax-fgColor-support, var(--color-codemirror-syntax-support, #6cb6ff))", "variable": "var(--codeMirror-syntax-fgColor-variable, var(--color-codemirror-syntax-variable, #f69d50))" } }, "checks": { "bg": "var(--color-checks-bg, #1c2128)", "runBorderWidth": "var(--color-checks-run-border-width, 1px)", "containerBorderWidth": "var(--color-checks-container-border-width, 1px)", "textPrimary": "var(--color-checks-text-primary, #adbac7)", "textSecondary": "var(--color-checks-text-secondary, #768390)", "textLink": "var(--color-checks-text-link, #539bf5)", "btnIcon": "var(--color-checks-btn-icon, #768390)", "btnHoverIcon": "var(--color-checks-btn-hover-icon, #adbac7)", "btnHoverBg": "var(--color-checks-btn-hover-bg, rgba(99,110,123,0.1))", "inputText": "var(--color-checks-input-text, #768390)", "inputPlaceholderText": "var(--color-checks-input-placeholder-text, #636e7b)", "inputFocusText": "var(--color-checks-input-focus-text, #adbac7)", "inputBg": "var(--color-checks-input-bg, #2d333b)", "donutError": "var(--color-checks-donut-error, #e5534b)", "donutPending": "var(--color-checks-donut-pending, #c69026)", "donutSuccess": "var(--color-checks-donut-success, #46954a)", "donutNeutral": "var(--color-checks-donut-neutral, #768390)", "dropdownText": "var(--color-checks-dropdown-text, #adbac7)", "dropdownBg": "var(--color-checks-dropdown-bg, #2d333b)", "dropdownBorder": "var(--color-checks-dropdown-border, #444c56)", "dropdownShadow": "var(--color-checks-dropdown-shadow, rgba(28,33,40,0.3))", "dropdownHoverText": "var(--color-checks-dropdown-hover-text, #adbac7)", "dropdownHoverBg": "var(--color-checks-dropdown-hover-bg, rgba(99,110,123,0.1))", "dropdownBtnHoverText": "var(--color-checks-dropdown-btn-hover-text, #adbac7)", "dropdownBtnHoverBg": "var(--color-checks-dropdown-btn-hover-bg, rgba(99,110,123,0.1))", "scrollbarThumbBg": "var(--color-checks-scrollbar-thumb-bg, rgba(99,110,123,0.4))", "headerLabelText": "var(--color-checks-header-label-text, #768390)", "headerLabelOpenText": "var(--color-checks-header-label-open-text, #adbac7)", "headerBorder": "var(--color-checks-header-border, #373e47)", "headerIcon": "var(--color-checks-header-icon, #768390)", "lineText": "var(--color-checks-line-text, #768390)", "lineNumText": "var(--color-checks-line-num-text, #636e7b)", "lineTimestampText": "var(--color-checks-line-timestamp-text, #636e7b)", "lineHoverBg": "var(--color-checks-line-hover-bg, rgba(99,110,123,0.1))", "lineSelectedBg": "var(--color-checks-line-selected-bg, rgba(65,132,228,0.1))", "lineSelectedNumText": "var(--color-checks-line-selected-num-text, #539bf5)", "lineDtFmText": "var(--color-checks-line-dt-fm-text, #cdd9e5)", "lineDtFmBg": "var(--color-checks-line-dt-fm-bg, #966600)", "gateBg": "var(--color-checks-gate-bg, rgba(174,124,20,0.15))", "gateText": "var(--color-checks-gate-text, #768390)", "gateWaitingText": "var(--color-checks-gate-waiting-text, #c69026)", "stepHeaderOpenBg": "var(--color-checks-step-header-open-bg, #2d333b)", "stepErrorText": "var(--color-checks-step-error-text, #e5534b)", "stepWarningText": "var(--color-checks-step-warning-text, #c69026)", "loglineText": "var(--color-checks-logline-text, #768390)", "loglineNumText": "var(--color-checks-logline-num-text, #636e7b)", "loglineDebugText": "var(--color-checks-logline-debug-text, #986ee2)", "loglineErrorText": "var(--color-checks-logline-error-text, #768390)", "loglineErrorNumText": "var(--color-checks-logline-error-num-text, #636e7b)", "loglineErrorBg": "var(--color-checks-logline-error-bg, rgba(229,83,75,0.1))", "loglineWarningText": "var(--color-checks-logline-warning-text, #768390)", "loglineWarningNumText": "var(--color-checks-logline-warning-num-text, #c69026)", "loglineWarningBg": "var(--color-checks-logline-warning-bg, rgba(174,124,20,0.15))", "loglineCommandText": "var(--color-checks-logline-command-text, #539bf5)", "loglineSectionText": "var(--color-checks-logline-section-text, #57ab5a)", "ansi": { "black": "var(--color-checks-ansi-black, #22272e)", "blackBright": "var(--color-checks-ansi-black-bright, #2d333b)", "white": "var(--color-checks-ansi-white, #909dab))", "whiteBright": "var(--color-checks-ansi-white-bright, #909dab)", "gray": "var(--color-checks-ansi-gray, #636e7b)", "red": "var(--color-checks-ansi-red, #f47067)", "redBright": "var(--color-checks-ansi-red-bright, #ff938a)", "green": "var(--color-checks-ansi-green, #57ab5a)", "greenBright": "var(--color-checks-ansi-green-bright, #6bc46d)", "yellow": "var(--color-checks-ansi-yellow, #c69026)", "yellowBright": "var(--color-checks-ansi-yellow-bright, #daaa3f)", "blue": "var(--color-checks-ansi-blue, #539bf5)", "blueBright": "var(--color-checks-ansi-blue-bright, #6cb6ff)", "magenta": "var(--color-checks-ansi-magenta, #b083f0)", "magentaBright": "var(--color-checks-ansi-magenta-bright, #dcbdfb)", "cyan": "var(--color-checks-ansi-cyan, #76e3ea)", "cyanBright": "var(--color-checks-ansi-cyan-bright, #b3f0ff)" } }, "project": { "headerBg": "var(--color-project-header-bg, #22272e)", "sidebarBg": "var(--color-project-sidebar-bg, #2d333b)", "gradientIn": "var(--color-project-gradient-in, #2d333b)", "gradientOut": "var(--color-project-gradient-out, rgba(45,51,59,0))" }, "mktg": { "btn": { "bg": "var(--color-mktg-btn-bg, #f6f8fa))" } }, "control": { "borderColor": { "emphasis": "var(--control-borderColor-emphasis, var(--color-control-border-color-emphasis, #606771))" } }, "avatar": { "bg": "var(--avatar-bgColor, var(--color-avatar-bg, rgba(205,217,229,0.1)))", "border": "var(--avatar-borderColor, var(--color-avatar-border, rgba(205,217,229,0.1)))", "stackFade": "var(--avatarStack-fade-bgColor-default, var(--color-avatar-stack-fade, #444c56))", "stackFadeMore": "var(--avatarStack-fade-bgColor-muted, var(--color-avatar-stack-fade-more, #373e47))" }, "topicTag": { "border": "var(--topicTag-borderColor, var(--color-topic-tag-border, transparent))" }, "counter": { "border": "var(--counter-borderColor, var(--color-counter-border, transparent))" }, "selectMenu": { "backdropBorder": "var(--selectMenu-borderColor, var(--color-select-menu-backdrop-border, #545d68))", "tapHighlight": "var(--control-bgColor-active, var(--color-select-menu-tap-highlight, rgba(68,76,86,0.5)))", "tapFocusBg": "var(--selectMenu-bgColor-active, var(--color-select-menu-tap-focus-bg, #143d79))" }, "overlay": { "backdrop": "var(--overlay-backdrop-bgColor, var(--color-overlay-backdrop, rgba(45,51,59,0.4)))" }, "header": { "text": "var(--header-fgColor-default, var(--color-header-text, rgba(205,217,229,0.7)))", "bg": "var(--header-bgColor, var(--color-header-bg, #2d333b))", "divider": "var(--header-borderColor-divider, var(--color-header-divider, #768390))", "logo": "var(--header-fgColor-logo, var(--color-header-logo, #cdd9e5))" }, "headerSearch": { "bg": "var(--headerSearch-bgColor, var(--color-header-search-bg, #22272e))", "border": "var(--headerSearch-borderColor, var(--color-header-search-border, #444c56))" }, "sidenav": { "selectedBg": "var(--sideNav-bgColor-selected, var(--color-sidenav-selected-bg, #373e47))" }, "menu": { "bgActive": "var(--menu-bgColor-active, var(--color-menu-bg-active, #2d333b))" }, "input": { "disabledBg": "var(--control-bgColor-disabled, var(--color-input-disabled-bg, rgba(99,110,123,0)))" }, "timeline": { "badgeBg": "var(--timelineBadge-bgColor, var(--color-timeline-badge-bg, #373e47))" }, "ansi": { "black": "var(--color-ansi-black, #545d68)", "blackBright": "var(--color-ansi-black-bright, #636e7b)", "white": "var(--color-ansi-white, #909dab)", "whiteBright": "var(--color-ansi-white-bright, #cdd9e5)", "gray": "var(--color-ansi-gray, #636e7b)", "red": "var(--color-ansi-red, #f47067)", "redBright": "var(--color-ansi-red-bright, #ff938a)", "green": "var(--color-ansi-green, #57ab5a)", "greenBright": "var(--color-ansi-green-bright, #6bc46d)", "yellow": "var(--color-ansi-yellow, #c69026)", "yellowBright": "var(--color-ansi-yellow-bright, #daaa3f)", "blue": "var(--color-ansi-blue, #539bf5)", "blueBright": "var(--color-ansi-blue-bright, #6cb6ff)", "magenta": "var(--color-ansi-magenta, #b083f0)", "magentaBright": "var(--color-ansi-magenta-bright, #dcbdfb)", "cyan": "var(--color-ansi-cyan, #39c5cf)", "cyanBright": "var(--color-ansi-cyan-bright, #56d4dd)" }, "btn": { "text": "var(--button-default-fgColor-rest, var(--color-btn-text, #adbac7))", "bg": "var(--button-default-bgColor-rest, var(--color-btn-bg, #373e47))", "border": "var(--button-default-borderColor-rest, var(--color-btn-border, rgba(205,217,229,0.1)))", "hoverBg": "var(--button-default-bgColor-hover, var(--color-btn-hover-bg, #444c56))", "hoverBorder": "var(--button-default-borderColor-hover, var(--color-btn-hover-border, #768390))", "activeBg": "var(--button-default-bgColor-active, var(--color-btn-active-bg, hsla(213,12%,27%,1)))", "activeBorder": "var(--button-default-borderColor-active, var(--color-btn-active-border, #636e7b))", "selectedBg": "var(--button-default-bgColor-selected, var(--color-btn-selected-bg, #2d333b))", "counterBg": "var(--buttonCounter-default-bgColor-rest, var(--color-btn-counter-bg, #444c56))", "primary": { "text": "var(--button-primary-fgColor-rest, var(--color-btn-primary-text, #ffffff))", "bg": "var(--button-primary-bgColor-rest, var(--color-btn-primary-bg, #347d39))", "border": "var(--button-primary-borderColor-rest, var(--color-btn-primary-border, rgba(205,217,229,0.1)))", "hoverBg": "var(--button-primary-bgColor-hover, var(--color-btn-primary-hover-bg, #46954a))", "hoverBorder": "var(--button-primary-borderColor-hover, var(--color-btn-primary-hover-border, rgba(205,217,229,0.1)))", "selectedBg": "var(--button-primary-bgColor-active, var(--color-btn-primary-selected-bg, #347d39))", "disabledText": "var(--button-primary-fgColor-disabled, var(--color-btn-primary-disabled-text, rgba(205,217,229,0.5)))", "disabledBg": "var(--button-primary-bgColor-disabled, var(--color-btn-primary-disabled-bg, rgba(52,125,57,0.6)))", "disabledBorder": "var(--button-primary-borderColor-disabled, var(--color-btn-primary-disabled-border, rgba(205,217,229,0.1)))", "icon": "var(--button-primary-iconColor-rest, var(--color-btn-primary-icon, #cdd9e5))", "counterBg": "var(--buttonCounter-primary-bgColor-rest, var(--color-btn-primary-counter-bg, rgba(17,52,23,0.2)))" }, "outline": { "text": "var(--button-outline-fgColor-rest, var(--color-btn-outline-text, #4184e4))", "hoverText": "var(--button-outline-fgColor-hover, var(--color-btn-outline-hover-text, #539bf5))", "hoverBg": "var(--button-outline-bgColor-hover, var(--color-btn-outline-hover-bg, #444c56))", "hoverBorder": "var(--button-outline-borderColor-hover, var(--color-btn-outline-hover-border, rgba(205,217,229,0.1)))", "hoverCounterBg": "var(--buttonCounter-outline-bgColor-hover, var(--color-btn-outline-hover-counter-bg, rgba(15,45,92,0.2)))", "selectedText": "var(--button-outline-fgColor-active, var(--color-btn-outline-selected-text, #cdd9e5))", "selectedBg": "var(--button-outline-bgColor-active, var(--color-btn-outline-selected-bg, #1b4b91))", "selectedBorder": "var(--button-outline-borderColor-active, var(--color-btn-outline-selected-border, rgba(205,217,229,0.1)))", "disabledText": "var(--button-outline-fgColor-disabled, var(--color-btn-outline-disabled-text, rgba(83,155,245,0.5)))", "disabledBg": "var(--button-outline-bgColor-disabled, var(--color-btn-outline-disabled-bg, #22272e))", "disabledCounterBg": "var(--buttonCounter-outline-bgColor-disabled, var(--color-btn-outline-disabled-counter-bg, rgba(49,109,202,0.05)))", "counterBg": "var(--buttonCounter-outline-bgColor-rest, var(--color-btn-outline-counter-bg, rgba(15,45,92,0.2)))", "hoverCounterFg": "var(--buttonCounter-outline-fgColor-hover, var(--color-btn-outline-hover-counter-fg, #539bf5))", "disabledCounterFg": "var(--buttonCounter-outline-fgColor-disabled, var(--color-btn-outline-disabled-counter-fg, rgba(83,155,245,0.5)))", "counterFg": "var(--buttonCounter-outline-fgColor-rest, var(--color-btn-outline-counter-fg, #4184e4))" }, "danger": { "text": "var(--button-danger-fgColor-rest, var(--color-btn-danger-text, #e5534b))", "hoverText": "var(--button-danger-fgColor-hover, var(--color-btn-danger-hover-text, #cdd9e5))", "hoverBg": "var(--button-danger-bgColor-hover, var(--color-btn-danger-hover-bg, #c93c37))", "hoverBorder": "var(--button-danger-borderColor-hover, var(--color-btn-danger-hover-border, #e5534b))", "hoverIcon": "var(--button-danger-iconColor-hover, var(--color-btn-danger-hover-icon, #cdd9e5))", "hoverCounterBg": "var(--buttonCounter-danger-bgColor-hover, var(--color-btn-danger-hover-counter-bg, rgba(255,255,255,0.2)))", "selectedText": "var(--button-danger-fgColor-active, var(--color-btn-danger-selected-text, #ffffff))", "selectedBg": "var(--button-danger-bgColor-active, var(--color-btn-danger-selected-bg, #ad2e2c))", "selectedBorder": "var(--button-danger-borderColor-active, var(--color-btn-danger-selected-border, #f47067))", "disabledText": "var(--button-danger-fgColor-disabled, var(--color-btn-danger-disabled-text, rgba(229,83,75,0.5)))", "disabledBg": "var(--button-danger-bgColor-disabled, var(--color-btn-danger-disabled-bg, #22272e))", "disabledCounterBg": "var(--buttonCounter-danger-bgColor-disabled, var(--color-btn-danger-disabled-counter-bg, rgba(201,60,55,0.05)))", "counterBg": "var(--buttonCounter-danger-bgColor-rest, var(--color-btn-danger-counter-bg, rgba(93,15,18,0.2)))", "icon": "var(--button-danger-iconColor-rest, var(--color-btn-danger-icon, #e5534b))", "counterFg": "var(--buttonCounter-danger-fgColor-rest, var(--color-btn-danger-counter-fg, #e5534b))", "disabledCounterFg": "var(--buttonCounter-danger-fgColor-disabled, var(--color-btn-danger-disabled-counter-fg, rgba(229,83,75,0.5)))", "hoverCounterFg": "var(--buttonCounter-danger-fgColor-hover, var(--color-btn-danger-hover-counter-fg, #cdd9e5))" }, "inactive": { "bg": "var(--button-inactive-bgColor-rest, var(--color-btn-inactive-bg, #373e47))", "text": "var(--button-inactive-fgColor-rest, var(--color-btn-inactive-text, #768390))" } }, "underlinenav": { "icon": "var(--underlineNav-iconColor-rest, var(--color-underlinenav-icon, #636e7b))", "borderHover": "var(--underlineNav-borderColor-hover, var(--color-underlinenav-border-hover, rgba(99,110,123,0.4)))" }, "actionListItem": { "inlineDivider": "var(--borderColor-muted, var(--color-action-list-item-inline-divider, rgba(68,76,86,0.48)))", "default": { "hoverBg": "var(--control-transparent-bgColor-hover, var(--color-action-list-item-default-hover-bg, rgba(144,157,171,0.12)))", "hoverBorder": "var(--control-transparent-borderColor-hover, var(--color-action-list-item-default-hover-border, transparent))", "activeBg": "var(--control-transparent-bgColor-active, var(--color-action-list-item-default-active-bg, rgba(144,157,171,0.2)))", "activeBorder": "var(--control-transparent-borderColor-active, var(--color-action-list-item-default-active-border, transparent))", "selectedBg": "var(--control-transparent-bgColor-selected, var(--color-action-list-item-default-selected-bg, rgba(144,157,171,0.08)))" }, "danger": { "hoverBg": "var(--control-danger-bgColor-hover, var(--color-action-list-item-danger-hover-bg, rgba(229,83,75,0.16)))", "activeBg": "var(--control-danger-bgColor-active, var(--color-action-list-item-danger-active-bg, rgba(229,83,75,0.24)))", "hoverText": "var(--control-danger-fgColor-hover, var(--color-action-list-item-danger-hover-text, #f47067))" } }, "switchTrack": { "bg": "var(--controlTrack-bgColor-rest, var(--color-switch-track-bg, rgba(99,110,123,0.1)))", "hoverBg": "var(--controlTrack-bgColor-hover, var(--color-switch-track-hover-bg, hsla(213,11%,69%,0.1)))", "activeBg": "var(--controlTrack-bgColor-active, var(--color-switch-track-active-bg, rgba(99,110,123,0.4)))", "disabledBg": "var(--controlTrack-bgColor-disabled, var(--color-switch-track-disabled-bg, #373e47))", "fg": "var(--controlTrack-fgColor-rest, var(--color-switch-track-fg, #768390))", "disabledFg": "var(--controlTrack-fgColor-disabled, var(--color-switch-track-disabled-fg, #1c2128))", "border": "var(--controlTrack-borderColor-rest, var(--color-switch-track-border, transparent))", "checked": { "bg": "var(--control-checked-bgColor-rest, var(--color-switch-track-checked-bg, rgba(49,109,202,0.35)))", "hoverBg": "var(--control-checked-bgColor-hover, var(--color-switch-track-checked-hover-bg, rgba(49,109,202,0.5)))", "activeBg": "var(--control-checked-bgColor-active, var(--color-switch-track-checked-active-bg, rgba(49,109,202,0.65)))", "fg": "var(--control-checked-fgColor-rest, var(--color-switch-track-checked-fg, #cdd9e5))", "disabledFg": "var(--control-checked-fgColor-disabled, var(--color-switch-track-checked-disabled-fg, #1c2128))", "border": "var(--borderColor-transparent, var(--color-switch-track-checked-border, transparent))" } }, "switchKnob": { "bg": "var(--controlKnob-bgColor-rest, var(--color-switch-knob-bg, #22272e))", "border": "var(--controlKnob-borderColor-rest, var(--color-switch-knob-border, #606771))", "disabledBg": "var(--controlKnob-bgColor-disabled, var(--color-switch-knob-disabled-bg, #2d333b))", "checked": { "bg": "var(--controlKnob-bgColor-checked, var(--color-switch-knob-checked-bg, #22272e))", "disabledBg": "var(--controlKnob-bgColor-disabled, var(--color-switch-knob-checked-disabled-bg, #2d333b))", "border": "var(--controlKnob-borderColor-checked, var(--color-switch-knob-checked-border, rgba(49,109,202,0.35)))" } }, "segmentedControl": { "bg": "var(--controlTrack-bgColor-rest, var(--color-segmented-control-bg, rgba(99,110,123,0.1)))", "button": { "bg": "var(--controlKnob-bgColor-rest, var(--color-segmented-control-button-bg, #22272e))", "hover": { "bg": "var(--controlTrack-bgColor-hover, var(--color-segmented-control-button-hover-bg, #444c56))" }, "active": { "bg": "var(--controlTrack-bgColor-active, var(--color-segmented-control-button-active-bg, #373e47))" }, "selected": { "border": "var(--controlKnob-borderColor-rest, var(--color-segmented-control-button-selected-border, #636e7b))" } } }, "treeViewItem": { "chevron": { "hoverBg": "var(--control-transparent-bgColor-hover, var(--color-tree-view-item-chevron-hover-bg, rgba(144,157,171,0.12)))" }, "directory": { "fill": "var(--treeViewItem-leadingVisual-iconColor-rest, var(--color-tree-view-item-directory-fill, #768390))" } }, "fg": { "default": "var(--fgColor-default, var(--color-fg-default, #adbac7))", "muted": "var(--fgColor-muted, var(--color-fg-muted, #768390))", "subtle": "var(--fgColor-muted, var(--color-fg-subtle, #636e7b))", "onEmphasis": "var(--fgColor-onEmphasis, var(--color-fg-on-emphasis, #cdd9e5))" }, "canvas": { "default": "var(--bgColor-default, var(--color-canvas-default, #22272e))", "overlay": "var(--overlay-bgColor, var(--color-canvas-overlay, #2d333b))", "inset": "var(--bgColor-inset, var(--color-canvas-inset, #1c2128))", "subtle": "var(--bgColor-muted, var(--color-canvas-subtle, #2d333b))" }, "border": { "default": "var(--borderColor-default, var(--color-border-default, #444c56))", "muted": "var(--borderColor-muted, var(--color-border-muted, #373e47))", "subtle": "var(--borderColor-muted, var(--color-border-subtle, rgba(205,217,229,0.1)))" }, "neutral": { "emphasisPlus": "var(--bgColor-emphasis, var(--color-neutral-emphasis-plus, #636e7b))", "emphasis": "var(--bgColor-neutral-emphasis, var(--color-neutral-emphasis, #636e7b))", "muted": "var(--bgColor-neutral-muted, var(--color-neutral-muted, rgba(99,110,123,0.4)))", "subtle": "var(--bgColor-neutral-muted, var(--color-neutral-subtle, rgba(99,110,123,0.1)))" }, "accent": { "fg": "var(--fgColor-accent, var(--color-accent-fg, #539bf5))", "emphasis": "var(--bgColor-accent-emphasis, var(--color-accent-emphasis, #316dca))", "muted": "var(--borderColor-accent-muted, var(--color-accent-muted, rgba(65,132,228,0.4)))", "subtle": "var(--bgColor-accent-muted, var(--color-accent-subtle, rgba(65,132,228,0.1)))" }, "success": { "fg": "var(--fgColor-success, var(--color-success-fg, #57ab5a))", "emphasis": "var(--bgColor-success-emphasis, var(--color-success-emphasis, #347d39))", "muted": "var(--borderColor-success-muted, var(--color-success-muted, rgba(70,149,74,0.4)))", "subtle": "var(--bgColor-success-muted, var(--color-success-subtle, rgba(70,149,74,0.15)))" }, "attention": { "fg": "var(--fgColor-attention, var(--color-attention-fg, #c69026))", "emphasis": "var(--bgColor-attention-emphasis, var(--color-attention-emphasis, #966600))", "muted": "var(--borderColor-attention-muted, var(--color-attention-muted, rgba(174,124,20,0.4)))", "subtle": "var(--bgColor-attention-muted, var(--color-attention-subtle, rgba(174,124,20,0.15)))" }, "severe": { "fg": "var(--fgColor-severe, var(--color-severe-fg, #cc6b2c))", "emphasis": "var(--bgColor-severe-emphasis, var(--color-severe-emphasis, #ae5622))", "muted": "var(--borderColor-severe-muted, var(--color-severe-muted, rgba(204,107,44,0.4)))", "subtle": "var(--bgColor-severe-muted, var(--color-severe-subtle, rgba(204,107,44,0.1)))" }, "danger": { "fg": "var(--fgColor-danger, var(--color-danger-fg, #e5534b))", "emphasis": "var(--borderColor-danger-emphasis, var(--color-danger-emphasis, #c93c37))", "muted": "var(--borderColor-danger-muted, var(--color-danger-muted, rgba(229,83,75,0.4)))", "subtle": "var(--bgColor-danger-muted, var(--color-danger-subtle, rgba(229,83,75,0.1)))" }, "open": { "fg": "var(--fgColor-open, var(--color-open-fg, #57ab5a))", "emphasis": "var(--bgColor-open-emphasis, var(--color-open-emphasis, #347d39))", "muted": "var(--borderColor-open-muted, var(--color-open-muted, rgba(70,149,74,0.4)))", "subtle": "var(--bgColor-open-muted, var(--color-open-subtle, rgba(70,149,74,0.15)))" }, "closed": { "fg": "var(--fgColor-closed, var(--color-closed-fg, #e5534b))", "emphasis": "var(--bgColor-closed-emphasis, var(--color-closed-emphasis, #c93c37))", "muted": "var(--borderColor-closed-muted, var(--color-closed-muted, rgba(229,83,75,0.4)))", "subtle": "var(--bgColor-closed-muted, var(--color-closed-subtle, rgba(229,83,75,0.15)))" }, "done": { "fg": "var(--fgColor-done, var(--color-done-fg, #986ee2))", "emphasis": "var(--bgColor-done-emphasis, var(--color-done-emphasis, #8256d0))", "muted": "var(--borderColor-done-muted, var(--color-done-muted, rgba(152,110,226,0.4)))", "subtle": "var(--bgColor-done-muted, var(--color-done-subtle, rgba(152,110,226,0.1)))" }, "sponsors": { "fg": "var(--fgColor-sponsors, var(--color-sponsors-fg, #c96198))", "emphasis": "var(--bgColor-sponsors-emphasis, var(--color-sponsors-emphasis, #ae4c82))", "muted": "var(--borderColor-sponsors-muted, var(--color-sponsors-muted, rgba(201,97,152,0.4)))", "subtle": "var(--bgColor-sponsors-muted, var(--color-sponsors-subtle, rgba(201,97,152,0.1)))" }, "primer": { "fg": { "disabled": "var(--fgColor-disabled, var(--color-primer-fg-disabled, #545d68))" }, "canvas": { "backdrop": "var(--overlay-backdrop-bgColor, var(--color-primer-canvas-backdrop, rgba(28,33,40,0.8)))", "sticky": "var(--color-primer-canvas-sticky, rgba(34,39,46,0.95))" }, "border": { "active": "var(--underlineNav-borderColor-active, var(--color-primer-border-active, #ec775c))", "contrast": "var(--borderColor-muted, var(--color-primer-border-contrast, rgba(205,217,229,0.2)))" } } }, "shadows": { "checks": { "inputShadow": "var(--color-checks-input-shadow, 0 0 0 1px #444c56)" }, "mktg": { "btn": { "shadow": { "outline": "var(--color-mktg-btn-shadow-outline, rgb(255 255 255 / 25%) 0 0 0 1px inset))", "focus": "var(--color-mktg-btn-shadow-focus, rgb(255 255 255 / 25%) 0 0 0 4px))", "hover": "var(--color-mktg-btn-shadow-hover, 0 4px 7px rgba(0, 0, 0, 0.15), 0 100px 80px rgba(255, 255, 255, 0.02), 0 42px 33px rgba(255, 255, 255, 0.024), 0 22px 18px rgba(255, 255, 255, 0.028), 0 12px 10px rgba(255, 255, 255, 0.034), 0 7px 5px rgba(255, 255, 255, 0.04), 0 3px 2px rgba(255, 255, 255, 0.07)))", "hoverMuted": "var(--color-mktg-btn-shadow-hover-muted, rgb(255 255 255) 0 0 0 2px inset))" } } }, "avatar": { "childShadow": "var(--avatar-shadow, var(--color-avatar-child-shadow, 0 0 0 2px #22272e))" }, "overlay": { "shadow": "var(--shadow-floating-small, var(--color-overlay-shadow, 0 0 0 1px #444c56, 0 16px 32px rgba(28,33,40,0.85)))" }, "btn": { "shadow": "var(--button-default-shadow-resting, var(--color-btn-shadow, 0 0 transparent))", "insetShadow": "var(--button-default-shadow-inset, var(--color-btn-inset-shadow, 0 0 transparent))", "primary": { "shadow": "var(--shadow-resting-small, var(--color-btn-primary-shadow, 0 0 transparent))", "insetShadow": "var(--shadow-highlight, var(--color-btn-primary-inset-shadow, 0 0 transparent))", "selectedShadow": "var(--button-primary-shadow-selected, var(--color-btn-primary-selected-shadow, 0 0 transparent))" }, "outline": { "hoverShadow": "var(--shadow-resting-small, var(--color-btn-outline-hover-shadow, 0 1px 0 rgba(28,33,40,0.1)))// HI_KATIE: no matches", "hoverInsetShadow": "var(--shadow-highlight, var(--color-btn-outline-hover-inset-shadow, inset 0 1px 0 rgba(205,217,229,0.03)))// HI_KATIE: no matches", "selectedShadow": "var(--button-outline-shadow-selected, var(--color-btn-outline-selected-shadow, 0 0 transparent))" }, "danger": { "hoverShadow": "var(--shadow-resting-small, var(--color-btn-danger-hover-shadow, 0 0 transparent))", "hoverInsetShadow": "var(--shadow-highlight, var(--color-btn-danger-hover-inset-shadow, 0 0 transparent))", "selectedShadow": "var(--button-danger-shadow-selected, var(--color-btn-danger-selected-shadow, 0 0 transparent))" } }, "shadow": { "small": "var(--shadow-resting-small, var(--color-shadow-small, 0 0 transparent))", "medium": "var(--shadow-resting-medium, var(--color-shadow-medium, 0 3px 6px #1c2128))", "large": "var(--shadow-floating-large, var(--color-shadow-large, 0 8px 24px #1c2128))", "extraLarge": "var(--shadow-floating-xlarge, var(--color-shadow-extra-large, 0 12px 48px #1c2128))" }, "primer": { "shadow": { "highlight": "var(--shadow-highlight, var(--color-primer-shadow-highlight, 0 0 transparent))", "inset": "var(--shadow-inset, var(--color-primer-shadow-inset, 0 0 transparent))" } } } }, "dark_high_contrast": { "colors": { "canvasDefaultTransparent": "var(--bgColor-transparent, var(--color-canvas-default-transparent, rgba(10,12,16,0)))", "pageHeaderBg": "var(--page-header-bgColor, var(--color-page-header-bg, #0a0c10))", "marketingIcon": { "primary": "var(--color-marketing-icon-primary, #91cbff)", "secondary": "var(--color-marketing-icon-secondary, #409eff)" }, "diffBlob": { "addition": { "numText": "var(--diffBlob-addition-fgColor-num, var(--color-diff-blob-addition-num-text, #f0f3f6))", "fg": "var(--diffBlob-addition-fgColor-text, var(--color-diff-blob-addition-fg, #0a0c10))", "numBg": "var(--diffBlob-addition-bgColor-num, var(--color-diff-blob-addition-num-bg, rgba(38,205,77,0.3)))", "lineBg": "var(--diffBlob-addition-bgColor-line, var(--color-diff-blob-addition-line-bg, rgba(9,180,58,0.15)))", "wordBg": "var(--diffBlob-addition-bgColor-word, var(--color-diff-blob-addition-word-bg, #09b43a))" }, "deletion": { "numText": "var(--diffBlob-deletion-fgColor-num, var(--color-diff-blob-deletion-num-text, #f0f3f6))", "fg": "var(--diffBlob-deletion-fgColor-text, var(--color-diff-blob-deletion-fg, #0a0c10))", "numBg": "var(--diffBlob-deletion-bgColor-num, var(--color-diff-blob-deletion-num-bg, rgba(255,106,105,0.3)))", "lineBg": "var(--diffBlob-deletion-bgColor-line, var(--color-diff-blob-deletion-line-bg, rgba(255,106,105,0.1)))", "wordBg": "var(--diffBlob-deletion-bgColor-word, var(--color-diff-blob-deletion-word-bg, #ff6a69))" }, "hunk": { "numBg": "var(--diffBlob-hunk-bgColor-num, var(--color-diff-blob-hunk-num-bg, rgba(64,158,255,0.4)))" }, "expander": { "icon": "var(--diffBlob-expander-iconColor, var(--color-diff-blob-expander-icon, #f0f3f6))" }, "selectedLineHighlightMixBlendMode": "var(--color-diff-blob-selected-line-highlight-mix-blend-mode, screen)" }, "diffstat": { "deletionBorder": "var(--color-diffstat-deletion-border, #ffb1af)", "additionBorder": "var(--color-diffstat-addition-border, #4ae168)", "additionBg": "var(--diffStat-addition-bgColor, var(--color-diffstat-addition-bg, #26cd4d))" }, "searchKeyword": { "hl": "var(--highlight-neutral-bgColor, var(--color-search-keyword-hl, rgba(240,183,47,0.4)))" }, "prettylights": { "syntax": { "comment": "var(--color-prettylights-syntax-comment, #bdc4cc)", "constant": "var(--color-prettylights-syntax-constant, #91cbff)", "entity": "var(--color-prettylights-syntax-entity, #dbb7ff)", "storageModifierImport": "var(--color-prettylights-syntax-storage-modifier-import, #f0f3f6)", "entityTag": "var(--color-prettylights-syntax-entity-tag, #72f088)", "keyword": "var(--color-prettylights-syntax-keyword, #ff9492)", "string": "var(--color-prettylights-syntax-string, #addcff)", "variable": "var(--color-prettylights-syntax-variable, #ffb757)", "brackethighlighterUnmatched": "var(--color-prettylights-syntax-brackethighlighter-unmatched, #ff6a69)", "invalidIllegalText": "var(--color-prettylights-syntax-invalid-illegal-text, #ffffff)", "invalidIllegalBg": "var(--color-prettylights-syntax-invalid-illegal-bg, #e82a2f)", "carriageReturnText": "var(--color-prettylights-syntax-carriage-return-text, #ffffff)", "carriageReturnBg": "var(--color-prettylights-syntax-carriage-return-bg, #ff4445)", "stringRegexp": "var(--color-prettylights-syntax-string-regexp, #72f088)", "markupList": "var(--color-prettylights-syntax-markup-list, #fbd669)", "markupHeading": "var(--color-prettylights-syntax-markup-heading, #409eff)", "markupItalic": "var(--color-prettylights-syntax-markup-italic, #f0f3f6)", "markupBold": "var(--color-prettylights-syntax-markup-bold, #f0f3f6)", "markupDeletedText": "var(--color-prettylights-syntax-markup-deleted-text, #ffdedb)", "markupDeletedBg": "var(--color-prettylights-syntax-markup-deleted-bg, #cc1421)", "markupInsertedText": "var(--color-prettylights-syntax-markup-inserted-text, #acf7b6)", "markupInsertedBg": "var(--color-prettylights-syntax-markup-inserted-bg, #007728)", "markupChangedText": "var(--color-prettylights-syntax-markup-changed-text, #ffe1b4)", "markupChangedBg": "var(--color-prettylights-syntax-markup-changed-bg, #a74c00)", "markupIgnoredText": "var(--color-prettylights-syntax-markup-ignored-text, #f0f3f6)", "markupIgnoredBg": "var(--color-prettylights-syntax-markup-ignored-bg, #318bf8)", "metaDiffRange": "var(--color-prettylights-syntax-meta-diff-range, #dbb7ff)", "brackethighlighterAngle": "var(--color-prettylights-syntax-brackethighlighter-angle, #bdc4cc)", "sublimelinterGutterMark": "var(--color-prettylights-syntax-sublimelinter-gutter-mark, #7a828e)", "constantOtherReferenceLink": "var(--color-prettylights-syntax-constant-other-reference-link, #addcff)" } }, "codemirror": { "text": "var(--codeMirror-fgColor, var(--color-codemirror-text, #f0f3f6))", "bg": "var(--codeMirror-bgColor, var(--color-codemirror-bg, #0a0c10))", "guttersBg": "var(--codeMirror-gutters-bgColor, var(--color-codemirror-gutters-bg, #0a0c10))", "guttermarkerText": "var(--codeMirror-gutterMarker-fgColor-default, var(--color-codemirror-guttermarker-text, #0a0c10))", "guttermarkerSubtleText": "var(--codeMirror-gutterMarker-fgColor-muted, var(--color-codemirror-guttermarker-subtle-text, #9ea7b3))", "linenumberText": "var(--codeMirror-lineNumber-fgColor, var(--color-codemirror-linenumber-text, #f0f3f6))", "cursor": "var(--codeMirror-cursor-fgColor, var(--color-codemirror-cursor, #f0f3f6))", "selectionBg": "var(--codeMirror-selection-bgColor, var(--color-codemirror-selection-bg, rgba(64,158,255,0.4)))", "activelineBg": "var(--codeMirror-activeline-bgColor, var(--color-codemirror-activeline-bg, rgba(158,167,179,0.1)))", "matchingbracketText": "var(--codeMirror-matchingBracket-fgColor, var(--color-codemirror-matchingbracket-text, #f0f3f6))", "linesBg": "var(--codeMirror-lines-bgColor, var(--color-codemirror-lines-bg, #0a0c10))", "syntax": { "comment": "var(--codeMirror-syntax-fgColor-comment, var(--color-codemirror-syntax-comment, #bdc4cc))", "constant": "var(--codeMirror-syntax-fgColor-constant, var(--color-codemirror-syntax-constant, #91cbff))", "entity": "var(--codeMirror-syntax-fgColor-entity, var(--color-codemirror-syntax-entity, #dbb7ff))", "keyword": "var(--codeMirror-syntax-fgColor-keyword, var(--color-codemirror-syntax-keyword, #ff9492))", "storage": "var(--codeMirror-syntax-fgColor-storage, var(--color-codemirror-syntax-storage, #ff9492))", "string": "var(--codeMirror-syntax-fgColor-string, var(--color-codemirror-syntax-string, #addcff))", "support": "var(--codeMirror-syntax-fgColor-support, var(--color-codemirror-syntax-support, #91cbff))", "variable": "var(--codeMirror-syntax-fgColor-variable, var(--color-codemirror-syntax-variable, #ffb757))" } }, "checks": { "bg": "var(--color-checks-bg, #010409)", "runBorderWidth": "var(--color-checks-run-border-width, 1px)", "containerBorderWidth": "var(--color-checks-container-border-width, 1px)", "textPrimary": "var(--color-checks-text-primary, #f0f3f6)", "textSecondary": "var(--color-checks-text-secondary, #f0f3f6)", "textLink": "var(--color-checks-text-link, #71b7ff)", "btnIcon": "var(--color-checks-btn-icon, #f0f3f6)", "btnHoverIcon": "var(--color-checks-btn-hover-icon, #f0f3f6)", "btnHoverBg": "var(--color-checks-btn-hover-bg, rgba(158,167,179,0.1))", "inputText": "var(--color-checks-input-text, #f0f3f6)", "inputPlaceholderText": "var(--color-checks-input-placeholder-text, #9ea7b3)", "inputFocusText": "var(--color-checks-input-focus-text, #f0f3f6)", "inputBg": "var(--color-checks-input-bg, #272b33)", "donutError": "var(--color-checks-donut-error, #ff6a69)", "donutPending": "var(--color-checks-donut-pending, #f0b72f)", "donutSuccess": "var(--color-checks-donut-success, #09b43a)", "donutNeutral": "var(--color-checks-donut-neutral, #bdc4cc)", "dropdownText": "var(--color-checks-dropdown-text, #f0f3f6)", "dropdownBg": "var(--color-checks-dropdown-bg, #272b33)", "dropdownBorder": "var(--color-checks-dropdown-border, #7a828e)", "dropdownShadow": "var(--color-checks-dropdown-shadow, rgba(1,4,9,0.3))", "dropdownHoverText": "var(--color-checks-dropdown-hover-text, #f0f3f6)", "dropdownHoverBg": "var(--color-checks-dropdown-hover-bg, rgba(158,167,179,0.1))", "dropdownBtnHoverText": "var(--color-checks-dropdown-btn-hover-text, #f0f3f6)", "dropdownBtnHoverBg": "var(--color-checks-dropdown-btn-hover-bg, rgba(158,167,179,0.1))", "scrollbarThumbBg": "var(--color-checks-scrollbar-thumb-bg, rgba(158,167,179,0.4))", "headerLabelText": "var(--color-checks-header-label-text, #f0f3f6)", "headerLabelOpenText": "var(--color-checks-header-label-open-text, #f0f3f6)", "headerBorder": "var(--color-checks-header-border, #7a828e)", "headerIcon": "var(--color-checks-header-icon, #f0f3f6)", "lineText": "var(--color-checks-line-text, #f0f3f6)", "lineNumText": "var(--color-checks-line-num-text, #9ea7b3)", "lineTimestampText": "var(--color-checks-line-timestamp-text, #9ea7b3)", "lineHoverBg": "var(--color-checks-line-hover-bg, rgba(158,167,179,0.1))", "lineSelectedBg": "var(--color-checks-line-selected-bg, rgba(64,158,255,0.1))", "lineSelectedNumText": "var(--color-checks-line-selected-num-text, #71b7ff)", "lineDtFmText": "var(--color-checks-line-dt-fm-text, #0a0c10)", "lineDtFmBg": "var(--color-checks-line-dt-fm-bg, #e09b13)", "gateBg": "var(--color-checks-gate-bg, rgba(224,155,19,0.15))", "gateText": "var(--color-checks-gate-text, #f0f3f6)", "gateWaitingText": "var(--color-checks-gate-waiting-text, #f0b72f)", "stepHeaderOpenBg": "var(--color-checks-step-header-open-bg, #272b33)", "stepErrorText": "var(--color-checks-step-error-text, #ff6a69)", "stepWarningText": "var(--color-checks-step-warning-text, #f0b72f)", "loglineText": "var(--color-checks-logline-text, #f0f3f6)", "loglineNumText": "var(--color-checks-logline-num-text, #9ea7b3)", "loglineDebugText": "var(--color-checks-logline-debug-text, #b780ff)", "loglineErrorText": "var(--color-checks-logline-error-text, #f0f3f6)", "loglineErrorNumText": "var(--color-checks-logline-error-num-text, #9ea7b3)", "loglineErrorBg": "var(--color-checks-logline-error-bg, rgba(255,106,105,0.1))", "loglineWarningText": "var(--color-checks-logline-warning-text, #f0f3f6)", "loglineWarningNumText": "var(--color-checks-logline-warning-num-text, #f0b72f)", "loglineWarningBg": "var(--color-checks-logline-warning-bg, rgba(224,155,19,0.15))", "loglineCommandText": "var(--color-checks-logline-command-text, #71b7ff)", "loglineSectionText": "var(--color-checks-logline-section-text, #26cd4d)", "ansi": { "black": "var(--color-checks-ansi-black, #0a0c10)", "blackBright": "var(--color-checks-ansi-black-bright, #272b33)", "white": "var(--color-checks-ansi-white, #d9dee3))", "whiteBright": "var(--color-checks-ansi-white-bright, #d9dee3)", "gray": "var(--color-checks-ansi-gray, #9ea7b3)", "red": "var(--color-checks-ansi-red, #ff9492)", "redBright": "var(--color-checks-ansi-red-bright, #ffb1af)", "green": "var(--color-checks-ansi-green, #26cd4d)", "greenBright": "var(--color-checks-ansi-green-bright, #4ae168)", "yellow": "var(--color-checks-ansi-yellow, #f0b72f)", "yellowBright": "var(--color-checks-ansi-yellow-bright, #f7c843)", "blue": "var(--color-checks-ansi-blue, #71b7ff)", "blueBright": "var(--color-checks-ansi-blue-bright, #91cbff)", "magenta": "var(--color-checks-ansi-magenta, #cb9eff)", "magentaBright": "var(--color-checks-ansi-magenta-bright, #dbb7ff)", "cyan": "var(--color-checks-ansi-cyan, #76e3ea)", "cyanBright": "var(--color-checks-ansi-cyan-bright, #b3f0ff)" } }, "project": { "headerBg": "var(--color-project-header-bg, #0a0c10)", "sidebarBg": "var(--color-project-sidebar-bg, #272b33)", "gradientIn": "var(--color-project-gradient-in, #272b33)", "gradientOut": "var(--color-project-gradient-out, rgba(39,43,51,0))" }, "mktg": { "btn": { "bg": "var(--color-mktg-btn-bg, #f6f8fa))" } }, "control": { "borderColor": { "emphasis": "var(--control-borderColor-emphasis, var(--color-control-border-color-emphasis, #9ea7b3))" } }, "avatar": { "bg": "var(--avatar-bgColor, var(--color-avatar-bg, rgba(255,255,255,0.1)))", "border": "var(--avatar-borderColor, var(--color-avatar-border, rgba(255,255,255,0.9)))", "stackFade": "var(--avatarStack-fade-bgColor-default, var(--color-avatar-stack-fade, #525964))", "stackFadeMore": "var(--avatarStack-fade-bgColor-muted, var(--color-avatar-stack-fade-more, #272b33))" }, "topicTag": { "border": "var(--topicTag-borderColor, var(--color-topic-tag-border, #409eff))" }, "counter": { "border": "var(--counter-borderColor, var(--color-counter-border, transparent))" }, "selectMenu": { "backdropBorder": "var(--selectMenu-borderColor, var(--color-select-menu-backdrop-border, #7a828e))", "tapHighlight": "var(--control-bgColor-active, var(--color-select-menu-tap-highlight, rgba(82,89,100,0.5)))", "tapFocusBg": "var(--selectMenu-bgColor-active, var(--color-select-menu-tap-focus-bg, #1e60d5))" }, "overlay": { "backdrop": "var(--overlay-backdrop-bgColor, var(--color-overlay-backdrop, rgba(39,43,51,0.4)))" }, "header": { "text": "var(--header-fgColor-default, var(--color-header-text, rgba(255,255,255,0.7)))", "bg": "var(--header-bgColor, var(--color-header-bg, #272b33))", "divider": "var(--header-borderColor-divider, var(--color-header-divider, #bdc4cc))", "logo": "var(--header-fgColor-logo, var(--color-header-logo, #ffffff))" }, "headerSearch": { "bg": "var(--headerSearch-bgColor, var(--color-header-search-bg, #0a0c10))", "border": "var(--headerSearch-borderColor, var(--color-header-search-border, #525964))" }, "sidenav": { "selectedBg": "var(--sideNav-bgColor-selected, var(--color-sidenav-selected-bg, #272b33))" }, "menu": { "bgActive": "var(--menu-bgColor-active, var(--color-menu-bg-active, #272b33))" }, "input": { "disabledBg": "var(--control-bgColor-disabled, var(--color-input-disabled-bg, rgba(158,167,179,0)))" }, "timeline": { "badgeBg": "var(--timelineBadge-bgColor, var(--color-timeline-badge-bg, #272b33))" }, "ansi": { "black": "var(--color-ansi-black, #7a828e)", "blackBright": "var(--color-ansi-black-bright, #9ea7b3)", "white": "var(--color-ansi-white, #d9dee3)", "whiteBright": "var(--color-ansi-white-bright, #ffffff)", "gray": "var(--color-ansi-gray, #9ea7b3)", "red": "var(--color-ansi-red, #ff9492)", "redBright": "var(--color-ansi-red-bright, #ffb1af)", "green": "var(--color-ansi-green, #26cd4d)", "greenBright": "var(--color-ansi-green-bright, #4ae168)", "yellow": "var(--color-ansi-yellow, #f0b72f)", "yellowBright": "var(--color-ansi-yellow-bright, #f7c843)", "blue": "var(--color-ansi-blue, #71b7ff)", "blueBright": "var(--color-ansi-blue-bright, #91cbff)", "magenta": "var(--color-ansi-magenta, #cb9eff)", "magentaBright": "var(--color-ansi-magenta-bright, #dbb7ff)", "cyan": "var(--color-ansi-cyan, #39c5cf)", "cyanBright": "var(--color-ansi-cyan-bright, #56d4dd)" }, "btn": { "text": "var(--button-default-fgColor-rest, var(--color-btn-text, #f0f3f6))", "bg": "var(--button-default-bgColor-rest, var(--color-btn-bg, #272b33))", "border": "var(--button-default-borderColor-rest, var(--color-btn-border, #7a828e))", "hoverBg": "var(--button-default-bgColor-hover, var(--color-btn-hover-bg, #525964))", "hoverBorder": "var(--button-default-borderColor-hover, var(--color-btn-hover-border, #bdc4cc))", "activeBg": "var(--button-default-bgColor-active, var(--color-btn-active-bg, hsla(217,10%,33%,1)))", "activeBorder": "var(--button-default-borderColor-active, var(--color-btn-active-border, #9ea7b3))", "selectedBg": "var(--button-default-bgColor-selected, var(--color-btn-selected-bg, rgba(82,89,100,0.9)))", "counterBg": "var(--buttonCounter-default-bgColor-rest, var(--color-btn-counter-bg, #525964))", "primary": { "text": "var(--button-primary-fgColor-rest, var(--color-btn-primary-text, #0a0c10))", "bg": "var(--button-primary-bgColor-rest, var(--color-btn-primary-bg, #09b43a))", "border": "var(--button-primary-borderColor-rest, var(--color-btn-primary-border, #4ae168))", "hoverBg": "var(--button-primary-bgColor-hover, var(--color-btn-primary-hover-bg, #26cd4d))", "hoverBorder": "var(--button-primary-borderColor-hover, var(--color-btn-primary-hover-border, #4ae168))", "selectedBg": "var(--button-primary-bgColor-active, var(--color-btn-primary-selected-bg, #09b43a))", "disabledText": "var(--button-primary-fgColor-disabled, var(--color-btn-primary-disabled-text, rgba(10,12,16,0.5)))", "disabledBg": "var(--button-primary-bgColor-disabled, var(--color-btn-primary-disabled-bg, rgba(9,180,58,0.6)))", "disabledBorder": "var(--button-primary-borderColor-disabled, var(--color-btn-primary-disabled-border, rgba(74,225,104,0.4)))", "icon": "var(--button-primary-iconColor-rest, var(--color-btn-primary-icon, #0a0c10))", "counterBg": "var(--buttonCounter-primary-bgColor-rest, var(--color-btn-primary-counter-bg, rgba(1,4,9,0.15)))" }, "outline": { "text": "var(--button-outline-fgColor-rest, var(--color-btn-outline-text, #409eff))", "hoverText": "var(--button-outline-fgColor-hover, var(--color-btn-outline-hover-text, #71b7ff))", "hoverBg": "var(--button-outline-bgColor-hover, var(--color-btn-outline-hover-bg, #525964))", "hoverBorder": "var(--button-outline-borderColor-hover, var(--color-btn-outline-hover-border, #7a828e))", "hoverCounterBg": "var(--buttonCounter-outline-bgColor-hover, var(--color-btn-outline-hover-counter-bg, rgba(25,79,177,0.2)))", "selectedText": "var(--button-outline-fgColor-active, var(--color-btn-outline-selected-text, #ffffff))", "selectedBg": "var(--button-outline-bgColor-active, var(--color-btn-outline-selected-bg, #2672f3))", "selectedBorder": "var(--button-outline-borderColor-active, var(--color-btn-outline-selected-border, #7a828e))", "disabledText": "var(--button-outline-fgColor-disabled, var(--color-btn-outline-disabled-text, rgba(113,183,255,0.5)))", "disabledBg": "var(--button-outline-bgColor-disabled, var(--color-btn-outline-disabled-bg, #0a0c10))", "disabledCounterBg": "var(--buttonCounter-outline-bgColor-disabled, var(--color-btn-outline-disabled-counter-bg, rgba(64,158,255,0.05)))", "counterBg": "var(--buttonCounter-outline-bgColor-rest, var(--color-btn-outline-counter-bg, rgba(25,79,177,0.2)))", "hoverCounterFg": "var(--buttonCounter-outline-fgColor-hover, var(--color-btn-outline-hover-counter-fg, #71b7ff))", "disabledCounterFg": "var(--buttonCounter-outline-fgColor-disabled, var(--color-btn-outline-disabled-counter-fg, rgba(113,183,255,0.5)))", "counterFg": "var(--buttonCounter-outline-fgColor-rest, var(--color-btn-outline-counter-fg, #409eff))" }, "danger": { "text": "var(--button-danger-fgColor-rest, var(--color-btn-danger-text, #ff6a69))", "hoverText": "var(--button-danger-fgColor-hover, var(--color-btn-danger-hover-text, #0a0c10))", "hoverBg": "var(--button-danger-bgColor-hover, var(--color-btn-danger-hover-bg, #ff6a69))", "hoverBorder": "var(--button-danger-borderColor-hover, var(--color-btn-danger-hover-border, #ff6a69))", "hoverIcon": "var(--button-danger-iconColor-hover, var(--color-btn-danger-hover-icon, #0a0c10))", "hoverCounterBg": "var(--buttonCounter-danger-bgColor-hover, var(--color-btn-danger-hover-counter-bg, rgba(1,4,9,0.15)))", "selectedText": "var(--button-danger-fgColor-active, var(--color-btn-danger-selected-text, #ffffff))", "selectedBg": "var(--button-danger-bgColor-active, var(--color-btn-danger-selected-bg, #ff4445))", "selectedBorder": "var(--button-danger-borderColor-active, var(--color-btn-danger-selected-border, #ff9492))", "disabledText": "var(--button-danger-fgColor-disabled, var(--color-btn-danger-disabled-text, rgba(255,106,105,0.5)))", "disabledBg": "var(--button-danger-bgColor-disabled, var(--color-btn-danger-disabled-bg, #0a0c10))", "disabledCounterBg": "var(--buttonCounter-danger-bgColor-disabled, var(--color-btn-danger-disabled-counter-bg, rgba(255,106,105,0.05)))", "counterBg": "var(--buttonCounter-danger-bgColor-rest, var(--color-btn-danger-counter-bg, rgba(1,4,9,0.15)))", "icon": "var(--button-danger-iconColor-rest, var(--color-btn-danger-icon, #ff6a69))", "counterFg": "var(--buttonCounter-danger-fgColor-rest, var(--color-btn-danger-counter-fg, #ff6a69))", "disabledCounterFg": "var(--buttonCounter-danger-fgColor-disabled, var(--color-btn-danger-disabled-counter-fg, rgba(255,106,105,0.5)))", "hoverCounterFg": "var(--buttonCounter-danger-fgColor-hover, var(--color-btn-danger-hover-counter-fg, #ffffff))" }, "inactive": { "bg": "var(--button-inactive-bgColor-rest, var(--color-btn-inactive-bg, #272b33))", "text": "var(--button-inactive-fgColor-rest, var(--color-btn-inactive-text, #bdc4cc))" } }, "underlinenav": { "icon": "var(--underlineNav-iconColor-rest, var(--color-underlinenav-icon, #f0f3f6))", "borderHover": "var(--underlineNav-borderColor-hover, var(--color-underlinenav-border-hover, #bdc4cc))" }, "actionListItem": { "inlineDivider": "var(--borderColor-muted, var(--color-action-list-item-inline-divider, #7a828e))", "default": { "hoverBg": "var(--control-transparent-bgColor-hover, var(--color-action-list-item-default-hover-bg, #272b33))", "hoverBorder": "var(--control-transparent-borderColor-hover, var(--color-action-list-item-default-hover-border, #7a828e))", "activeBg": "var(--control-transparent-bgColor-active, var(--color-action-list-item-default-active-bg, #525964))", "activeBorder": "var(--control-transparent-borderColor-active, var(--color-action-list-item-default-active-border, #9ea7b3))", "selectedBg": "var(--control-transparent-bgColor-selected, var(--color-action-list-item-default-selected-bg, #525964))" }, "danger": { "hoverBg": "var(--control-danger-bgColor-hover, var(--color-action-list-item-danger-hover-bg, #ff6a69))", "activeBg": "var(--control-danger-bgColor-active, var(--color-action-list-item-danger-active-bg, #ff4445))", "hoverText": "var(--control-danger-fgColor-hover, var(--color-action-list-item-danger-hover-text, #0a0c10))" } }, "switchTrack": { "bg": "var(--controlTrack-bgColor-rest, var(--color-switch-track-bg, #9ea7b3))", "hoverBg": "var(--controlTrack-bgColor-hover, var(--color-switch-track-hover-bg, hsla(214,12%,61%,1)))", "activeBg": "var(--controlTrack-bgColor-active, var(--color-switch-track-active-bg, hsla(214,12%,58%,1)))", "disabledBg": "var(--controlTrack-bgColor-disabled, var(--color-switch-track-disabled-bg, #272b33))", "fg": "var(--controlTrack-fgColor-rest, var(--color-switch-track-fg, #0a0c10))", "disabledFg": "var(--controlTrack-fgColor-disabled, var(--color-switch-track-disabled-fg, #010409))", "border": "var(--controlTrack-borderColor-rest, var(--color-switch-track-border, transparent))", "checked": { "bg": "var(--control-checked-bgColor-rest, var(--color-switch-track-checked-bg, #409eff))", "hoverBg": "var(--control-checked-bgColor-hover, var(--color-switch-track-checked-hover-bg, rgba(64,158,255,0.5)))", "activeBg": "var(--control-checked-bgColor-active, var(--color-switch-track-checked-active-bg, rgba(64,158,255,0.65)))", "fg": "var(--control-checked-fgColor-rest, var(--color-switch-track-checked-fg, #0a0c10))", "disabledFg": "var(--control-checked-fgColor-disabled, var(--color-switch-track-checked-disabled-fg, #010409))", "border": "var(--borderColor-transparent, var(--color-switch-track-checked-border, transparent))" } }, "switchKnob": { "bg": "var(--controlKnob-bgColor-rest, var(--color-switch-knob-bg, #0a0c10))", "border": "var(--controlKnob-borderColor-rest, var(--color-switch-knob-border, #9ea7b3))", "disabledBg": "var(--controlKnob-bgColor-disabled, var(--color-switch-knob-disabled-bg, #272b33))", "checked": { "bg": "var(--controlKnob-bgColor-checked, var(--color-switch-knob-checked-bg, #0a0c10))", "disabledBg": "var(--controlKnob-bgColor-disabled, var(--color-switch-knob-checked-disabled-bg, #272b33))", "border": "var(--controlKnob-borderColor-checked, var(--color-switch-knob-checked-border, #409eff))" } }, "segmentedControl": { "bg": "var(--controlTrack-bgColor-rest, var(--color-segmented-control-bg, rgba(158,167,179,0.1)))", "button": { "bg": "var(--controlKnob-bgColor-rest, var(--color-segmented-control-button-bg, #0a0c10))", "hover": { "bg": "var(--controlTrack-bgColor-hover, var(--color-segmented-control-button-hover-bg, #525964))" }, "active": { "bg": "var(--controlTrack-bgColor-active, var(--color-segmented-control-button-active-bg, #272b33))" }, "selected": { "border": "var(--controlKnob-borderColor-rest, var(--color-segmented-control-button-selected-border, #9ea7b3))" } } }, "treeViewItem": { "chevron": { "hoverBg": "var(--control-transparent-bgColor-hover, var(--color-tree-view-item-chevron-hover-bg, #525964))" }, "directory": { "fill": "var(--treeViewItem-leadingVisual-iconColor-rest, var(--color-tree-view-item-directory-fill, #f0f3f6))" } }, "fg": { "default": "var(--fgColor-default, var(--color-fg-default, #f0f3f6))", "muted": "var(--fgColor-muted, var(--color-fg-muted, #f0f3f6))", "subtle": "var(--fgColor-muted, var(--color-fg-subtle, #9ea7b3))", "onEmphasis": "var(--fgColor-onEmphasis, var(--color-fg-on-emphasis, #0a0c10))" }, "canvas": { "default": "var(--bgColor-default, var(--color-canvas-default, #0a0c10))", "overlay": "var(--overlay-bgColor, var(--color-canvas-overlay, #272b33))", "inset": "var(--bgColor-inset, var(--color-canvas-inset, #010409))", "subtle": "var(--bgColor-muted, var(--color-canvas-subtle, #272b33))" }, "border": { "default": "var(--borderColor-default, var(--color-border-default, #7a828e))", "muted": "var(--borderColor-muted, var(--color-border-muted, #7a828e))", "subtle": "var(--borderColor-muted, var(--color-border-subtle, #7a828e))" }, "neutral": { "emphasisPlus": "var(--bgColor-emphasis, var(--color-neutral-emphasis-plus, #ffffff))", "emphasis": "var(--bgColor-neutral-emphasis, var(--color-neutral-emphasis, #9ea7b3))", "muted": "var(--bgColor-neutral-muted, var(--color-neutral-muted, rgba(158,167,179,0.4)))", "subtle": "var(--bgColor-neutral-muted, var(--color-neutral-subtle, rgba(158,167,179,0.1)))" }, "accent": { "fg": "var(--fgColor-accent, var(--color-accent-fg, #71b7ff))", "emphasis": "var(--bgColor-accent-emphasis, var(--color-accent-emphasis, #409eff))", "muted": "var(--borderColor-accent-muted, var(--color-accent-muted, #409eff))", "subtle": "var(--bgColor-accent-muted, var(--color-accent-subtle, rgba(64,158,255,0.1)))" }, "success": { "fg": "var(--fgColor-success, var(--color-success-fg, #26cd4d))", "emphasis": "var(--bgColor-success-emphasis, var(--color-success-emphasis, #09b43a))", "muted": "var(--borderColor-success-muted, var(--color-success-muted, #09b43a))", "subtle": "var(--bgColor-success-muted, var(--color-success-subtle, rgba(9,180,58,0.15)))" }, "attention": { "fg": "var(--fgColor-attention, var(--color-attention-fg, #f0b72f))", "emphasis": "var(--bgColor-attention-emphasis, var(--color-attention-emphasis, #e09b13))", "muted": "var(--borderColor-attention-muted, var(--color-attention-muted, #e09b13))", "subtle": "var(--bgColor-attention-muted, var(--color-attention-subtle, rgba(224,155,19,0.15)))" }, "severe": { "fg": "var(--fgColor-severe, var(--color-severe-fg, #e7811d))", "emphasis": "var(--bgColor-severe-emphasis, var(--color-severe-emphasis, #e7811d))", "muted": "var(--borderColor-severe-muted, var(--color-severe-muted, #e7811d))", "subtle": "var(--bgColor-severe-muted, var(--color-severe-subtle, rgba(231,129,29,0.1)))" }, "danger": { "fg": "var(--fgColor-danger, var(--color-danger-fg, #ff6a69))", "emphasis": "var(--borderColor-danger-emphasis, var(--color-danger-emphasis, #ff6a69))", "muted": "var(--borderColor-danger-muted, var(--color-danger-muted, #ff6a69))", "subtle": "var(--bgColor-danger-muted, var(--color-danger-subtle, rgba(255,106,105,0.1)))" }, "open": { "fg": "var(--fgColor-open, var(--color-open-fg, #26cd4d))", "emphasis": "var(--bgColor-open-emphasis, var(--color-open-emphasis, #09b43a))", "muted": "var(--borderColor-open-muted, var(--color-open-muted, rgba(9,180,58,0.4)))", "subtle": "var(--bgColor-open-muted, var(--color-open-subtle, rgba(9,180,58,0.15)))" }, "closed": { "fg": "var(--fgColor-closed, var(--color-closed-fg, #ff6a69))", "emphasis": "var(--bgColor-closed-emphasis, var(--color-closed-emphasis, #ff6a69))", "muted": "var(--borderColor-closed-muted, var(--color-closed-muted, rgba(255,106,105,0.4)))", "subtle": "var(--bgColor-closed-muted, var(--color-closed-subtle, rgba(255,106,105,0.15)))" }, "done": { "fg": "var(--fgColor-done, var(--color-done-fg, #b780ff))", "emphasis": "var(--bgColor-done-emphasis, var(--color-done-emphasis, #b87fff))", "muted": "var(--borderColor-done-muted, var(--color-done-muted, #b780ff))", "subtle": "var(--bgColor-done-muted, var(--color-done-subtle, rgba(183,128,255,0.1)))" }, "sponsors": { "fg": "var(--fgColor-sponsors, var(--color-sponsors-fg, #ef6eb1))", "emphasis": "var(--bgColor-sponsors-emphasis, var(--color-sponsors-emphasis, #ef6eb1))", "muted": "var(--borderColor-sponsors-muted, var(--color-sponsors-muted, #ef6eb1))", "subtle": "var(--bgColor-sponsors-muted, var(--color-sponsors-subtle, rgba(239,110,177,0.1)))" }, "primer": { "fg": { "disabled": "var(--fgColor-disabled, var(--color-primer-fg-disabled, #7a828e))" }, "canvas": { "backdrop": "var(--overlay-backdrop-bgColor, var(--color-primer-canvas-backdrop, rgba(1,4,9,0.8)))", "sticky": "var(--color-primer-canvas-sticky, rgba(10,12,16,0.95))" }, "border": { "active": "var(--underlineNav-borderColor-active, var(--color-primer-border-active, #ff967d))", "contrast": "var(--borderColor-muted, var(--color-primer-border-contrast, rgba(255,255,255,0.2)))" } } }, "shadows": { "checks": { "inputShadow": "var(--color-checks-input-shadow, 0 0 0 1px #7a828e)" }, "mktg": { "btn": { "shadow": { "outline": "var(--color-mktg-btn-shadow-outline, rgb(255 255 255 / 25%) 0 0 0 1px inset))", "focus": "var(--color-mktg-btn-shadow-focus, rgb(255 255 255 / 25%) 0 0 0 4px))", "hover": "var(--color-mktg-btn-shadow-hover, 0 4px 7px rgba(0, 0, 0, 0.15), 0 100px 80px rgba(255, 255, 255, 0.02), 0 42px 33px rgba(255, 255, 255, 0.024), 0 22px 18px rgba(255, 255, 255, 0.028), 0 12px 10px rgba(255, 255, 255, 0.034), 0 7px 5px rgba(255, 255, 255, 0.04), 0 3px 2px rgba(255, 255, 255, 0.07)))", "hoverMuted": "var(--color-mktg-btn-shadow-hover-muted, rgb(255 255 255) 0 0 0 2px inset))" } } }, "avatar": { "childShadow": "var(--avatar-shadow, var(--color-avatar-child-shadow, 0 0 0 2px #0a0c10))" }, "overlay": { "shadow": "var(--shadow-floating-small, var(--color-overlay-shadow, 0 0 0 1px #525964, 0 16px 32px rgba(1,4,9,0.85)))" }, "btn": { "shadow": "var(--button-default-shadow-resting, var(--color-btn-shadow, 0 0 transparent))", "insetShadow": "var(--button-default-shadow-inset, var(--color-btn-inset-shadow, 0 0 transparent))", "primary": { "shadow": "var(--shadow-resting-small, var(--color-btn-primary-shadow, 0 0 transparent))", "insetShadow": "var(--shadow-highlight, var(--color-btn-primary-inset-shadow, 0 0 transparent))", "selectedShadow": "var(--button-primary-shadow-selected, var(--color-btn-primary-selected-shadow, 0 0 transparent))" }, "outline": { "hoverShadow": "var(--shadow-resting-small, var(--color-btn-outline-hover-shadow, 0 1px 0 rgba(1,4,9,0.1)))// HI_KATIE: no matches", "hoverInsetShadow": "var(--shadow-highlight, var(--color-btn-outline-hover-inset-shadow, inset 0 1px 0 rgba(255,255,255,0.03)))// HI_KATIE: no matches", "selectedShadow": "var(--button-outline-shadow-selected, var(--color-btn-outline-selected-shadow, 0 0 transparent))" }, "danger": { "hoverShadow": "var(--shadow-resting-small, var(--color-btn-danger-hover-shadow, 0 0 transparent))", "hoverInsetShadow": "var(--shadow-highlight, var(--color-btn-danger-hover-inset-shadow, 0 0 transparent))", "selectedShadow": "var(--button-danger-shadow-selected, var(--color-btn-danger-selected-shadow, 0 0 transparent))" } }, "shadow": { "small": "var(--shadow-resting-small, var(--color-shadow-small, 0 0 transparent))", "medium": "var(--shadow-resting-medium, var(--color-shadow-medium, 0 3px 6px #010409))", "large": "var(--shadow-floating-large, var(--color-shadow-large, 0 8px 24px #010409))", "extraLarge": "var(--shadow-floating-xlarge, var(--color-shadow-extra-large, 0 12px 48px #010409))" }, "primer": { "shadow": { "highlight": "var(--shadow-highlight, var(--color-primer-shadow-highlight, 0 0 transparent))", "inset": "var(--shadow-inset, var(--color-primer-shadow-inset, 0 0 transparent))" } } } }, "dark_colorblind": { "colors": { "canvasDefaultTransparent": "var(--bgColor-transparent, var(--color-canvas-default-transparent, rgba(13,17,23,0)))", "pageHeaderBg": "var(--page-header-bgColor, var(--color-page-header-bg, #0d1117))", "marketingIcon": { "primary": "var(--color-marketing-icon-primary, #79c0ff)", "secondary": "var(--color-marketing-icon-secondary, #1f6feb)" }, "diffBlob": { "addition": { "numText": "var(--diffBlob-addition-fgColor-num, var(--color-diff-blob-addition-num-text, #c9d1d9))", "fg": "var(--diffBlob-addition-fgColor-text, var(--color-diff-blob-addition-fg, #c9d1d9))", "numBg": "var(--diffBlob-addition-bgColor-num, var(--color-diff-blob-addition-num-bg, rgba(88,166,255,0.3)))", "lineBg": "var(--diffBlob-addition-bgColor-line, var(--color-diff-blob-addition-line-bg, rgba(56,139,253,0.15)))", "wordBg": "var(--diffBlob-addition-bgColor-word, var(--color-diff-blob-addition-word-bg, rgba(56,139,253,0.4)))" }, "deletion": { "numText": "var(--diffBlob-deletion-fgColor-num, var(--color-diff-blob-deletion-num-text, #c9d1d9))", "fg": "var(--diffBlob-deletion-fgColor-text, var(--color-diff-blob-deletion-fg, #c9d1d9))", "numBg": "var(--diffBlob-deletion-bgColor-num, var(--color-diff-blob-deletion-num-bg, rgba(212,118,22,0.3)))", "lineBg": "var(--diffBlob-deletion-bgColor-line, var(--color-diff-blob-deletion-line-bg, rgba(212,118,22,0.1)))", "wordBg": "var(--diffBlob-deletion-bgColor-word, var(--color-diff-blob-deletion-word-bg, rgba(212,118,22,0.4)))" }, "hunk": { "numBg": "var(--diffBlob-hunk-bgColor-num, var(--color-diff-blob-hunk-num-bg, rgba(56,139,253,0.4)))" }, "expander": { "icon": "var(--diffBlob-expander-iconColor, var(--color-diff-blob-expander-icon, #8b949e))" }, "selectedLineHighlightMixBlendMode": "var(--color-diff-blob-selected-line-highlight-mix-blend-mode, screen)" }, "diffstat": { "deletionBorder": "var(--color-diffstat-deletion-border, rgba(240,246,252,0.1))", "additionBorder": "var(--color-diffstat-addition-border, rgba(240,246,252,0.1))", "additionBg": "var(--diffStat-addition-bgColor, var(--color-diffstat-addition-bg, #58a6ff))" }, "searchKeyword": { "hl": "var(--highlight-neutral-bgColor, var(--color-search-keyword-hl, rgba(210,153,34,0.4)))" }, "prettylights": { "syntax": { "comment": "var(--color-prettylights-syntax-comment, #8b949e)", "constant": "var(--color-prettylights-syntax-constant, #79c0ff)", "entity": "var(--color-prettylights-syntax-entity, #d2a8ff)", "storageModifierImport": "var(--color-prettylights-syntax-storage-modifier-import, #c9d1d9)", "entityTag": "var(--color-prettylights-syntax-entity-tag, #a5d6ff)", "keyword": "var(--color-prettylights-syntax-keyword, #ec8e2c)", "string": "var(--color-prettylights-syntax-string, #a5d6ff)", "variable": "var(--color-prettylights-syntax-variable, #fdac54)", "brackethighlighterUnmatched": "var(--color-prettylights-syntax-brackethighlighter-unmatched, #d47616)", "invalidIllegalText": "var(--color-prettylights-syntax-invalid-illegal-text, #f0f6fc)", "invalidIllegalBg": "var(--color-prettylights-syntax-invalid-illegal-bg, #6c3906)", "carriageReturnText": "var(--color-prettylights-syntax-carriage-return-text, #f0f6fc)", "carriageReturnBg": "var(--color-prettylights-syntax-carriage-return-bg, #914d04)", "stringRegexp": "var(--color-prettylights-syntax-string-regexp, #a5d6ff)", "markupList": "var(--color-prettylights-syntax-markup-list, #f2cc60)", "markupHeading": "var(--color-prettylights-syntax-markup-heading, #1f6feb)", "markupItalic": "var(--color-prettylights-syntax-markup-italic, #c9d1d9)", "markupBold": "var(--color-prettylights-syntax-markup-bold, #c9d1d9)", "markupDeletedText": "var(--color-prettylights-syntax-markup-deleted-text, #ffe2bb)", "markupDeletedBg": "var(--color-prettylights-syntax-markup-deleted-bg, #4e2906)", "markupInsertedText": "var(--color-prettylights-syntax-markup-inserted-text, #cae8ff)", "markupInsertedBg": "var(--color-prettylights-syntax-markup-inserted-bg, #0c2d6b)", "markupChangedText": "var(--color-prettylights-syntax-markup-changed-text, #ffe2bb)", "markupChangedBg": "var(--color-prettylights-syntax-markup-changed-bg, #4e2906)", "markupIgnoredText": "var(--color-prettylights-syntax-markup-ignored-text, #c9d1d9)", "markupIgnoredBg": "var(--color-prettylights-syntax-markup-ignored-bg, #1158c7)", "metaDiffRange": "var(--color-prettylights-syntax-meta-diff-range, #d2a8ff)", "brackethighlighterAngle": "var(--color-prettylights-syntax-brackethighlighter-angle, #8b949e)", "sublimelinterGutterMark": "var(--color-prettylights-syntax-sublimelinter-gutter-mark, #484f58)", "constantOtherReferenceLink": "var(--color-prettylights-syntax-constant-other-reference-link, #a5d6ff)" } }, "codemirror": { "text": "var(--codeMirror-fgColor, var(--color-codemirror-text, #c9d1d9))", "bg": "var(--codeMirror-bgColor, var(--color-codemirror-bg, #0d1117))", "guttersBg": "var(--codeMirror-gutters-bgColor, var(--color-codemirror-gutters-bg, #0d1117))", "guttermarkerText": "var(--codeMirror-gutterMarker-fgColor-default, var(--color-codemirror-guttermarker-text, #0d1117))", "guttermarkerSubtleText": "var(--codeMirror-gutterMarker-fgColor-muted, var(--color-codemirror-guttermarker-subtle-text, #6e7681))", "linenumberText": "var(--codeMirror-lineNumber-fgColor, var(--color-codemirror-linenumber-text, #8b949e))", "cursor": "var(--codeMirror-cursor-fgColor, var(--color-codemirror-cursor, #c9d1d9))", "selectionBg": "var(--codeMirror-selection-bgColor, var(--color-codemirror-selection-bg, rgba(56,139,253,0.4)))", "activelineBg": "var(--codeMirror-activeline-bgColor, var(--color-codemirror-activeline-bg, rgba(110,118,129,0.1)))", "matchingbracketText": "var(--codeMirror-matchingBracket-fgColor, var(--color-codemirror-matchingbracket-text, #c9d1d9))", "linesBg": "var(--codeMirror-lines-bgColor, var(--color-codemirror-lines-bg, #0d1117))", "syntax": { "comment": "var(--codeMirror-syntax-fgColor-comment, var(--color-codemirror-syntax-comment, #8b949e))", "constant": "var(--codeMirror-syntax-fgColor-constant, var(--color-codemirror-syntax-constant, #79c0ff))", "entity": "var(--codeMirror-syntax-fgColor-entity, var(--color-codemirror-syntax-entity, #d2a8ff))", "keyword": "var(--codeMirror-syntax-fgColor-keyword, var(--color-codemirror-syntax-keyword, #ec8e2c))", "storage": "var(--codeMirror-syntax-fgColor-storage, var(--color-codemirror-syntax-storage, #ec8e2c))", "string": "var(--codeMirror-syntax-fgColor-string, var(--color-codemirror-syntax-string, #a5d6ff))", "support": "var(--codeMirror-syntax-fgColor-support, var(--color-codemirror-syntax-support, #79c0ff))", "variable": "var(--codeMirror-syntax-fgColor-variable, var(--color-codemirror-syntax-variable, #fdac54))" } }, "checks": { "bg": "var(--color-checks-bg, #010409)", "runBorderWidth": "var(--color-checks-run-border-width, 1px)", "containerBorderWidth": "var(--color-checks-container-border-width, 1px)", "textPrimary": "var(--color-checks-text-primary, #c9d1d9)", "textSecondary": "var(--color-checks-text-secondary, #8b949e)", "textLink": "var(--color-checks-text-link, #58a6ff)", "btnIcon": "var(--color-checks-btn-icon, #8b949e)", "btnHoverIcon": "var(--color-checks-btn-hover-icon, #c9d1d9)", "btnHoverBg": "var(--color-checks-btn-hover-bg, rgba(110,118,129,0.1))", "inputText": "var(--color-checks-input-text, #8b949e)", "inputPlaceholderText": "var(--color-checks-input-placeholder-text, #6e7681)", "inputFocusText": "var(--color-checks-input-focus-text, #c9d1d9)", "inputBg": "var(--color-checks-input-bg, #161b22)", "donutError": "var(--color-checks-donut-error, #d47616)", "donutPending": "var(--color-checks-donut-pending, #d29922)", "donutSuccess": "var(--color-checks-donut-success, #388bfd)", "donutNeutral": "var(--color-checks-donut-neutral, #8b949e)", "dropdownText": "var(--color-checks-dropdown-text, #c9d1d9)", "dropdownBg": "var(--color-checks-dropdown-bg, #161b22)", "dropdownBorder": "var(--color-checks-dropdown-border, #30363d)", "dropdownShadow": "var(--color-checks-dropdown-shadow, rgba(1,4,9,0.3))", "dropdownHoverText": "var(--color-checks-dropdown-hover-text, #c9d1d9)", "dropdownHoverBg": "var(--color-checks-dropdown-hover-bg, rgba(110,118,129,0.1))", "dropdownBtnHoverText": "var(--color-checks-dropdown-btn-hover-text, #c9d1d9)", "dropdownBtnHoverBg": "var(--color-checks-dropdown-btn-hover-bg, rgba(110,118,129,0.1))", "scrollbarThumbBg": "var(--color-checks-scrollbar-thumb-bg, rgba(110,118,129,0.4))", "headerLabelText": "var(--color-checks-header-label-text, #8b949e)", "headerLabelOpenText": "var(--color-checks-header-label-open-text, #c9d1d9)", "headerBorder": "var(--color-checks-header-border, #21262d)", "headerIcon": "var(--color-checks-header-icon, #8b949e)", "lineText": "var(--color-checks-line-text, #8b949e)", "lineNumText": "var(--color-checks-line-num-text, #6e7681)", "lineTimestampText": "var(--color-checks-line-timestamp-text, #6e7681)", "lineHoverBg": "var(--color-checks-line-hover-bg, rgba(110,118,129,0.1))", "lineSelectedBg": "var(--color-checks-line-selected-bg, rgba(56,139,253,0.1))", "lineSelectedNumText": "var(--color-checks-line-selected-num-text, #58a6ff)", "lineDtFmText": "var(--color-checks-line-dt-fm-text, #ffffff)", "lineDtFmBg": "var(--color-checks-line-dt-fm-bg, #9e6a03)", "gateBg": "var(--color-checks-gate-bg, rgba(187,128,9,0.15))", "gateText": "var(--color-checks-gate-text, #8b949e)", "gateWaitingText": "var(--color-checks-gate-waiting-text, #d29922)", "stepHeaderOpenBg": "var(--color-checks-step-header-open-bg, #161b22)", "stepErrorText": "var(--color-checks-step-error-text, #d47616)", "stepWarningText": "var(--color-checks-step-warning-text, #d29922)", "loglineText": "var(--color-checks-logline-text, #8b949e)", "loglineNumText": "var(--color-checks-logline-num-text, #6e7681)", "loglineDebugText": "var(--color-checks-logline-debug-text, #a371f7)", "loglineErrorText": "var(--color-checks-logline-error-text, #8b949e)", "loglineErrorNumText": "var(--color-checks-logline-error-num-text, #6e7681)", "loglineErrorBg": "var(--color-checks-logline-error-bg, rgba(212,118,22,0.1))", "loglineWarningText": "var(--color-checks-logline-warning-text, #8b949e)", "loglineWarningNumText": "var(--color-checks-logline-warning-num-text, #d29922)", "loglineWarningBg": "var(--color-checks-logline-warning-bg, rgba(187,128,9,0.15))", "loglineCommandText": "var(--color-checks-logline-command-text, #58a6ff)", "loglineSectionText": "var(--color-checks-logline-section-text, #58a6ff)", "ansi": { "black": "var(--color-checks-ansi-black, #0d1117)", "blackBright": "var(--color-checks-ansi-black-bright, #161b22)", "white": "var(--color-checks-ansi-white, #b1bac4))", "whiteBright": "var(--color-checks-ansi-white-bright, #b1bac4)", "gray": "var(--color-checks-ansi-gray, #6e7681)", "red": "var(--color-checks-ansi-red, #ec8e2c)", "redBright": "var(--color-checks-ansi-red-bright, #fdac54)", "green": "var(--color-checks-ansi-green, #58a6ff)", "greenBright": "var(--color-checks-ansi-green-bright, #79c0ff)", "yellow": "var(--color-checks-ansi-yellow, #d29922)", "yellowBright": "var(--color-checks-ansi-yellow-bright, #e3b341)", "blue": "var(--color-checks-ansi-blue, #58a6ff)", "blueBright": "var(--color-checks-ansi-blue-bright, #79c0ff)", "magenta": "var(--color-checks-ansi-magenta, #bc8cff)", "magentaBright": "var(--color-checks-ansi-magenta-bright, #d2a8ff)", "cyan": "var(--color-checks-ansi-cyan, #76e3ea)", "cyanBright": "var(--color-checks-ansi-cyan-bright, #b3f0ff)" } }, "project": { "headerBg": "var(--color-project-header-bg, #0d1117)", "sidebarBg": "var(--color-project-sidebar-bg, #161b22)", "gradientIn": "var(--color-project-gradient-in, #161b22)", "gradientOut": "var(--color-project-gradient-out, rgba(22,27,34,0))" }, "mktg": { "btn": { "bg": "var(--color-mktg-btn-bg, #f6f8fa))" } }, "control": { "borderColor": { "emphasis": "var(--control-borderColor-emphasis, var(--color-control-border-color-emphasis, #606771))" } }, "avatar": { "bg": "var(--avatar-bgColor, var(--color-avatar-bg, rgba(255,255,255,0.1)))", "border": "var(--avatar-borderColor, var(--color-avatar-border, rgba(240,246,252,0.1)))", "stackFade": "var(--avatarStack-fade-bgColor-default, var(--color-avatar-stack-fade, #30363d))", "stackFadeMore": "var(--avatarStack-fade-bgColor-muted, var(--color-avatar-stack-fade-more, #21262d))" }, "topicTag": { "border": "var(--topicTag-borderColor, var(--color-topic-tag-border, transparent))" }, "counter": { "border": "var(--counter-borderColor, var(--color-counter-border, transparent))" }, "selectMenu": { "backdropBorder": "var(--selectMenu-borderColor, var(--color-select-menu-backdrop-border, #484f58))", "tapHighlight": "var(--control-bgColor-active, var(--color-select-menu-tap-highlight, rgba(48,54,61,0.5)))", "tapFocusBg": "var(--selectMenu-bgColor-active, var(--color-select-menu-tap-focus-bg, #0c2d6b))" }, "overlay": { "backdrop": "var(--overlay-backdrop-bgColor, var(--color-overlay-backdrop, rgba(22,27,34,0.4)))" }, "header": { "text": "var(--header-fgColor-default, var(--color-header-text, rgba(255,255,255,0.7)))", "bg": "var(--header-bgColor, var(--color-header-bg, #161b22))", "divider": "var(--header-borderColor-divider, var(--color-header-divider, #8b949e))", "logo": "var(--header-fgColor-logo, var(--color-header-logo, #f0f6fc))" }, "headerSearch": { "bg": "var(--headerSearch-bgColor, var(--color-header-search-bg, #0d1117))", "border": "var(--headerSearch-borderColor, var(--color-header-search-border, #30363d))" }, "sidenav": { "selectedBg": "var(--sideNav-bgColor-selected, var(--color-sidenav-selected-bg, #21262d))" }, "menu": { "bgActive": "var(--menu-bgColor-active, var(--color-menu-bg-active, #161b22))" }, "input": { "disabledBg": "var(--control-bgColor-disabled, var(--color-input-disabled-bg, rgba(110,118,129,0)))" }, "timeline": { "badgeBg": "var(--timelineBadge-bgColor, var(--color-timeline-badge-bg, #21262d))" }, "ansi": { "black": "var(--color-ansi-black, #484f58)", "blackBright": "var(--color-ansi-black-bright, #6e7681)", "white": "var(--color-ansi-white, #b1bac4)", "whiteBright": "var(--color-ansi-white-bright, #ffffff)", "gray": "var(--color-ansi-gray, #6e7681)", "red": "var(--color-ansi-red, #ec8e2c)", "redBright": "var(--color-ansi-red-bright, #fdac54)", "green": "var(--color-ansi-green, #58a6ff)", "greenBright": "var(--color-ansi-green-bright, #79c0ff)", "yellow": "var(--color-ansi-yellow, #d29922)", "yellowBright": "var(--color-ansi-yellow-bright, #e3b341)", "blue": "var(--color-ansi-blue, #58a6ff)", "blueBright": "var(--color-ansi-blue-bright, #79c0ff)", "magenta": "var(--color-ansi-magenta, #bc8cff)", "magentaBright": "var(--color-ansi-magenta-bright, #d2a8ff)", "cyan": "var(--color-ansi-cyan, #39c5cf)", "cyanBright": "var(--color-ansi-cyan-bright, #56d4dd)" }, "btn": { "text": "var(--button-default-fgColor-rest, var(--color-btn-text, #c9d1d9))", "bg": "var(--button-default-bgColor-rest, var(--color-btn-bg, #21262d))", "border": "var(--button-default-borderColor-rest, var(--color-btn-border, rgba(240,246,252,0.1)))", "hoverBg": "var(--button-default-bgColor-hover, var(--color-btn-hover-bg, #30363d))", "hoverBorder": "var(--button-default-borderColor-hover, var(--color-btn-hover-border, #8b949e))", "activeBg": "var(--button-default-bgColor-active, var(--color-btn-active-bg, hsla(212,12%,18%,1)))", "activeBorder": "var(--button-default-borderColor-active, var(--color-btn-active-border, #6e7681))", "selectedBg": "var(--button-default-bgColor-selected, var(--color-btn-selected-bg, #161b22))", "counterBg": "var(--buttonCounter-default-bgColor-rest, var(--color-btn-counter-bg, #30363d))", "primary": { "text": "var(--button-primary-fgColor-rest, var(--color-btn-primary-text, #ffffff))", "bg": "var(--button-primary-bgColor-rest, var(--color-btn-primary-bg, #1f6feb))", "border": "var(--button-primary-borderColor-rest, var(--color-btn-primary-border, rgba(240,246,252,0.1)))", "hoverBg": "var(--button-primary-bgColor-hover, var(--color-btn-primary-hover-bg, #388bfd))", "hoverBorder": "var(--button-primary-borderColor-hover, var(--color-btn-primary-hover-border, rgba(240,246,252,0.1)))", "selectedBg": "var(--button-primary-bgColor-active, var(--color-btn-primary-selected-bg, #1f6feb))", "disabledText": "var(--button-primary-fgColor-disabled, var(--color-btn-primary-disabled-text, rgba(255,255,255,0.5)))", "disabledBg": "var(--button-primary-bgColor-disabled, var(--color-btn-primary-disabled-bg, rgba(31,111,235,0.6)))", "disabledBorder": "var(--button-primary-borderColor-disabled, var(--color-btn-primary-disabled-border, rgba(240,246,252,0.1)))", "icon": "var(--button-primary-iconColor-rest, var(--color-btn-primary-icon, #ffffff))", "counterBg": "var(--buttonCounter-primary-bgColor-rest, var(--color-btn-primary-counter-bg, rgba(5,29,77,0.2)))" }, "outline": { "text": "var(--button-outline-fgColor-rest, var(--color-btn-outline-text, #388bfd))", "hoverText": "var(--button-outline-fgColor-hover, var(--color-btn-outline-hover-text, #58a6ff))", "hoverBg": "var(--button-outline-bgColor-hover, var(--color-btn-outline-hover-bg, #30363d))", "hoverBorder": "var(--button-outline-borderColor-hover, var(--color-btn-outline-hover-border, rgba(240,246,252,0.1)))", "hoverCounterBg": "var(--buttonCounter-outline-bgColor-hover, var(--color-btn-outline-hover-counter-bg, rgba(5,29,77,0.2)))", "selectedText": "var(--button-outline-fgColor-active, var(--color-btn-outline-selected-text, #ffffff))", "selectedBg": "var(--button-outline-bgColor-active, var(--color-btn-outline-selected-bg, #0d419d))", "selectedBorder": "var(--button-outline-borderColor-active, var(--color-btn-outline-selected-border, rgba(240,246,252,0.1)))", "disabledText": "var(--button-outline-fgColor-disabled, var(--color-btn-outline-disabled-text, rgba(88,166,255,0.5)))", "disabledBg": "var(--button-outline-bgColor-disabled, var(--color-btn-outline-disabled-bg, #0d1117))", "disabledCounterBg": "var(--buttonCounter-outline-bgColor-disabled, var(--color-btn-outline-disabled-counter-bg, rgba(31,111,235,0.05)))", "counterBg": "var(--buttonCounter-outline-bgColor-rest, var(--color-btn-outline-counter-bg, rgba(5,29,77,0.2)))", "hoverCounterFg": "var(--buttonCounter-outline-fgColor-hover, var(--color-btn-outline-hover-counter-fg, #58a6ff))", "disabledCounterFg": "var(--buttonCounter-outline-fgColor-disabled, var(--color-btn-outline-disabled-counter-fg, rgba(88,166,255,0.5)))", "counterFg": "var(--buttonCounter-outline-fgColor-rest, var(--color-btn-outline-counter-fg, #388bfd))" }, "danger": { "text": "var(--button-danger-fgColor-rest, var(--color-btn-danger-text, #d47616))", "hoverText": "var(--button-danger-fgColor-hover, var(--color-btn-danger-hover-text, #ffffff))", "hoverBg": "var(--button-danger-bgColor-hover, var(--color-btn-danger-hover-bg, #b76100))", "hoverBorder": "var(--button-danger-borderColor-hover, var(--color-btn-danger-hover-border, #d47616))", "hoverIcon": "var(--button-danger-iconColor-hover, var(--color-btn-danger-hover-icon, #ffffff))", "hoverCounterBg": "var(--buttonCounter-danger-bgColor-hover, var(--color-btn-danger-hover-counter-bg, rgba(255,255,255,0.2)))", "selectedText": "var(--button-danger-fgColor-active, var(--color-btn-danger-selected-text, #ffffff))", "selectedBg": "var(--button-danger-bgColor-active, var(--color-btn-danger-selected-bg, #914d04))", "selectedBorder": "var(--button-danger-borderColor-active, var(--color-btn-danger-selected-border, #ec8e2c))", "disabledText": "var(--button-danger-fgColor-disabled, var(--color-btn-danger-disabled-text, rgba(212,118,22,0.5)))", "disabledBg": "var(--button-danger-bgColor-disabled, var(--color-btn-danger-disabled-bg, #0d1117))", "disabledCounterBg": "var(--buttonCounter-danger-bgColor-disabled, var(--color-btn-danger-disabled-counter-bg, rgba(183,97,0,0.05)))", "counterBg": "var(--buttonCounter-danger-bgColor-rest, var(--color-btn-danger-counter-bg, rgba(51,28,4